npm package diff
Package: @forge/manifest
Versions: 9.1.0-next.0 - 9.1.0-next.1
File: package/out/schema/manifest-schema.json
Index: package/out/schema/manifest-schema.json
===================================================================
--- package/out/schema/manifest-schema.json
+++ package/out/schema/manifest-schema.json
@@ -577,100 +577,61 @@
"type": "array",
"items": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
- "properties": {
- "function": {
- "$ref": "#/definitions/ExtensionKey",
- "description": "The key of the function that should be invoked for this webtrigger.",
- "title": "function",
- "type": "string"
- },
- "response": {
- "description": "Response options for the webtrigger module.",
- "type": "object",
- "additionalProperties": false,
+ "oneOf": [
+ {
"properties": {
- "type": {
- "description": "The type of response that the webtrigger will return. If set to 'static', the response will be the same for every invocation and will use one of the responses defined under 'outputs'. If set to 'dynamic', the response will be generated by the function that the webtrigger is invoking.",
- "type": "string",
- "enum": [
- "static",
- "dynamic"
- ]
+ "function": {
+ "$ref": "#/definitions/ExtensionKey",
+ "description": "The key of the function that should be invoked for this webtrigger.",
+ "title": "function",
+ "type": "string"
},
- "outputs": {
- "description": "An array of defined responses that the webtrigger can return.",
- "type": "array",
- "maxItems": 20,
- "items": {
- "type": "object",
- "additionalProperties": false,
- "properties": {
- "key": {
- "type": "string",
- "maxLength": 255
- },
- "statusCode": {
- "type": "integer"
- },
- "body": {
- "type": "string",
- "maxLength": 1024
- },
- "contentType": {
- "type": "string",
- "maxLength": 255
- }
- },
- "required": [
- "key",
- "statusCode"
- ]
- }
+ "response": {
+ "$ref": "#/definitions/ResponseOptions",
+ "description": "Response options for the webtrigger module.",
+ "title": "response"
+ },
+ "key": {
+ "$ref": "#/definitions/ModuleKeySchema"
}
},
"required": [
- "type"
+ "function",
+ "key"
],
- "allOf": [
- {
- "if": {
- "properties": {
- "type": {
- "const": "static"
- }
- }
- },
- "then": {
- "required": [
- "outputs"
- ]
- },
- "else": {
- "not": {
- "required": [
- "outputs"
- ]
- }
- }
- }
- ]
+ "not": {
+ "required": [
+ "unlicensedAccess"
+ ]
+ }
},
- "key": {
- "$ref": "#/definitions/ModuleKeySchema"
+ {
+ "properties": {
+ "endpoint": {
+ "$ref": "#/definitions/ExtensionKey",
+ "description": "The key of the service that should be invoked for this webtrigger."
+ },
+ "response": {
+ "$ref": "#/definitions/ResponseOptions"
+ },
+ "key": {
+ "$ref": "#/definitions/ModuleKeySchema"
+ }
+ },
+ "required": [
+ "endpoint",
+ "key"
+ ],
+ "not": {
+ "required": [
+ "unlicensedAccess"
+ ]
+ }
}
- },
- "required": [
- "function",
- "key"
],
- "type": "object",
- "not": {
- "required": [
- "unlicensedAccess"
- ]
- }
+ "type": "object"
},
"minItems": 1
},
"consumer": {
@@ -965,71 +926,69 @@
"items": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"description": "A Forge Remote endpoint definition.",
- "properties": {
- "remote": {
- "description": "key for the remotes definition",
- "maxLength": 255,
- "minLength": 1,
- "pattern": "^[a-zA-Z0-9-_]+$",
- "type": "string"
- },
- "route": {
- "type": "object",
+ "oneOf": [
+ {
"properties": {
- "path": {
- "type": "string",
- "description": "Path of the remote endpoint to invoke"
+ "remote": {
+ "description": "key for the remotes definition",
+ "maxLength": 255,
+ "minLength": 1,
+ "pattern": "^[a-zA-Z0-9-_]+$",
+ "type": "string"
+ },
+ "route": {
+ "$ref": "#/definitions/EndpointRoute"
+ },
+ "auth": {
+ "$ref": "#/definitions/EndpointAuth"
+ },
+ "key": {
+ "$ref": "#/definitions/ModuleKeySchema"
}
},
"required": [
- "path"
- ]
+ "remote",
+ "key"
+ ],
+ "not": {
+ "required": [
+ "unlicensedAccess"
+ ]
+ }
},
- "auth": {
- "type": "object",
+ {
"properties": {
- "appUserToken": {
- "type": "object",
- "required": [
- "enabled"
- ],
- "properties": {
- "enabled": {
- "type": "boolean",
- "description": "Enable sharing user token with the remote"
- }
- }
+ "service": {
+ "description": "key for the service definition",
+ "maxLength": 25,
+ "minLength": 1,
+ "pattern": "^[a-z]([a-z0-9-]{0,23}[a-z0-9])?$",
+ "type": "string"
},
- "appSystemToken": {
- "type": "object",
- "required": [
- "enabled"
- ],
- "properties": {
- "enabled": {
- "type": "boolean",
- "description": "Enable sharing app token with the remote"
- }
- }
+ "route": {
+ "$ref": "#/definitions/EndpointRoute"
+ },
+ "auth": {
+ "$ref": "#/definitions/EndpointAuth"
+ },
+ "key": {
+ "$ref": "#/definitions/ModuleKeySchema"
}
+ },
+ "required": [
+ "service",
+ "key"
+ ],
+ "not": {
+ "required": [
+ "unlicensedAccess"
+ ]
}
- },
- "key": {
- "$ref": "#/definitions/ModuleKeySchema"
}
- },
- "required": [
- "remote",
- "key"
],
- "type": "object",
- "not": {
- "required": [
- "unlicensedAccess"
- ]
- }
+ "type": "object"
},
"minItems": 1
},
"remote": {
@@ -27395,8 +27354,78 @@
"filter"
]
}
},
+ "ResponseOptions": {
+ "additionalProperties": false,
+ "properties": {
+ "type": {
+ "description": "The type of response that the webtrigger will return. If set to 'static', the response will be the same for every invocation and will use one of the responses defined under 'outputs'. If set to 'dynamic', the response will be generated by the function that the webtrigger is invoking.",
+ "type": "string",
+ "enum": [
+ "static",
+ "dynamic"
+ ]
+ },
+ "outputs": {
+ "description": "An array of defined responses that the webtrigger can return.",
+ "type": "array",
+ "maxItems": 20,
+ "items": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "key": {
+ "type": "string",
+ "maxLength": 255
+ },
+ "statusCode": {
+ "type": "integer"
+ },
+ "body": {
+ "type": "string",
+ "maxLength": 1024
+ },
+ "contentType": {
+ "type": "string",
+ "maxLength": 255
+ }
+ },
+ "required": [
+ "key",
+ "statusCode"
+ ]
+ }
+ }
+ },
+ "required": [
+ "type"
+ ],
+ "allOf": [
+ {
+ "if": {
+ "properties": {
+ "type": {
+ "const": "static"
+ }
+ }
+ },
+ "then": {
+ "required": [
+ "outputs"
+ ]
+ },
+ "else": {
+ "not": {
+ "required": [
+ "outputs"
+ ]
+ }
+ }
+ }
+ ],
+ "type": "object"
+ },
"RuntimeLayer": {
"type": "object",
"properties": {
"identifier": {
@@ -27492,8 +27521,49 @@
"required": [
"auth"
]
},
+ "EndpointRoute": {
+ "type": "object",
+ "properties": {
+ "path": {
+ "type": "string",
+ "description": "Path of the remote endpoint to invoke"
+ }
+ },
+ "required": [
+ "path"
+ ]
+ },
+ "EndpointAuth": {
+ "type": "object",
+ "properties": {
+ "appUserToken": {
+ "type": "object",
+ "required": [
+ "enabled"
+ ],
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Enable sharing user token with the remote"
+ }
+ }
+ },
+ "appSystemToken": {
+ "type": "object",
+ "required": [
+ "enabled"
+ ],
+ "properties": {
+ "enabled": {
+ "type": "boolean",
+ "description": "Enable sharing app token with the remote"
+ }
+ }
+ }
+ }
+ },
"CoreActionIOType": {
"type": "string",
"enum": [
"boolean",