@adobe/ccweb-add-on-manifest 2.4.0 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -79,7 +79,7 @@ export declare class AddOnManifest {
79
79
  get manifestVersion(): Readonly<ManifestVersion>;
80
80
  get requirements(): Readonly<AddOnManifestRequirement>;
81
81
  get icon(): Readonly<IconType | IconType[] | undefined>;
82
- get entryPoints(): Readonly<AddOnManifestEntrypoint[]>;
82
+ get entryPoints(): readonly AddOnManifestEntrypoint[];
83
83
  get authorInfo(): Readonly<AuthorInfo | undefined>;
84
84
  }
85
85
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"AddOnManifest.d.ts","sourceRoot":"","sources":["../src/AddOnManifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddOnManifest.d.ts","sourceRoot":"","sources":["../src/AddOnManifest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AddOnManifest.js","sourceRoot":"","sources":["../src/AddOnManifest.ts"],"names":[],"mappings":"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","sourcesContent":["/********************************************************************************\n * MIT License\n\n * © Copyright 2023 Adobe. All rights reserved.\n\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n ********************************************************************************/\n\nimport {\n AddOnInfo,\n AddOnLogAction,\n AddOnLogLevel,\n AuthorInfo,\n EntrypointV1,\n EntrypointV2,\n IconType,\n LocalisedStrings,\n ManifestValidationResult,\n RequirementsV1,\n RequirementsV2\n} from \"./AddOnManifestTypes.js\";\nimport { AddOnManifestValidator } from \"./AddOnManifestValidator.js\";\nimport { AddOnManifestEntrypoint } from \"./manifest-field/AddOnManifestEntrypoint.js\";\nimport { AddOnManifestRequirement } from \"./manifest-field/AddOnManifestRequirement.js\";\n\n/**\n * Specifies the metadata and configuration information for Add-Ons\n * More details on the schema and fields are present here:\n * https://wiki.corp.adobe.com/display/WXP/Add-in+Manifest+and+Structure\n */\n\n// [WXP-680] TODO: Add docs for the Manifest schema\nexport type AddOnManifestV1 = {\n readonly id: string;\n readonly name: string | LocalisedStrings;\n readonly version: string;\n readonly manifestVersion: number;\n readonly requirements: RequirementsV1;\n readonly icon: IconType | readonly IconType[];\n readonly entryPoints: readonly EntrypointV1[];\n readonly authorInfo?: AuthorInfo;\n};\n\nexport type AddOnManifestV2 = {\n readonly testId?: string;\n readonly name?: string;\n readonly version: string;\n readonly manifestVersion: number;\n readonly requirements: RequirementsV2;\n readonly entryPoints: readonly EntrypointV2[];\n};\n\nexport enum ManifestVersion {\n V1 = 1,\n V2 = 2\n}\n\ninterface AddOnManifestTypeMap {\n [ManifestVersion.V1]: AddOnManifestV1;\n [ManifestVersion.V2]: AddOnManifestV2;\n}\ntype Manifest = AddOnManifestV1 | AddOnManifestV2;\n\nexport type AddOnManifestType<T extends ManifestVersion> = AddOnManifestTypeMap[T];\n\nexport type CreateManifestResult = {\n manifestValidationResult: ManifestValidationResult;\n manifest?: AddOnManifest;\n};\n\n/**\n * Defines the getter methods for AddOn manifest fields\n */\nexport class AddOnManifest {\n private _requirement: AddOnManifestRequirement | undefined;\n private _entrypoints: AddOnManifestEntrypoint[] = [];\n private readonly _manifest: Manifest;\n\n static createManifest(\n addOnInfo: AddOnInfo,\n addOnLogger?: Map<AddOnLogLevel, AddOnLogAction>\n ): CreateManifestResult {\n // validate the manifest here and if rejected return\n const manifestValidator = new AddOnManifestValidator(addOnLogger);\n const schemaValidation = manifestValidator.validateManifestSchema(addOnInfo.manifest, addOnInfo.additionalInfo);\n let manifestValidationResult: ManifestValidationResult = { success: true };\n if (!schemaValidation.success) {\n manifestValidationResult = {\n success: false,\n errorDetails: schemaValidation.errorDetails,\n warningDetails: schemaValidation.warningDetails\n };\n return { manifestValidationResult };\n }\n\n return {\n manifestValidationResult,\n manifest: new AddOnManifest({ ...addOnInfo.manifest })\n };\n }\n\n /**\n * TODO: [WXP-1583] Updated the response type in [AddOnInfoApi.manifest] and remove the getter\n */\n get manifestProperties(): Record<string, unknown> {\n return this._manifest;\n }\n\n private constructor(manifest: ReturnType<typeof JSON.parse>) {\n const manifestVersion = manifest.manifestVersion;\n switch (manifestVersion) {\n case ManifestVersion.V1: {\n this._manifest = manifest as AddOnManifestType<ManifestVersion.V1>;\n break;\n }\n default: {\n this._manifest = manifest as AddOnManifestType<ManifestVersion.V2>;\n }\n }\n }\n\n get id(): Readonly<string> {\n switch (this._manifest.manifestVersion) {\n case ManifestVersion.V1: {\n const { id } = this._manifest as AddOnManifestType<ManifestVersion.V1>;\n return id;\n }\n default: {\n return \"\";\n }\n }\n }\n\n get name(): Readonly<string | LocalisedStrings | undefined> {\n switch (this._manifest.manifestVersion) {\n case ManifestVersion.V1: {\n const { name } = this._manifest as AddOnManifestType<ManifestVersion.V1>;\n return name;\n }\n default: {\n return undefined;\n }\n }\n }\n\n get version(): Readonly<string> {\n return this._manifest.version;\n }\n\n get manifestVersion(): Readonly<ManifestVersion> {\n return this._manifest.manifestVersion || ManifestVersion.V1;\n }\n\n get requirements(): Readonly<AddOnManifestRequirement> {\n if (!this._requirement) {\n this._requirement = new AddOnManifestRequirement(\n this._manifest.manifestVersion,\n this._manifest.requirements\n );\n }\n return this._requirement;\n }\n\n get icon(): Readonly<IconType | IconType[] | undefined> {\n switch (this._manifest.manifestVersion) {\n case ManifestVersion.V1: {\n const { icon } = this._manifest as AddOnManifestType<ManifestVersion.V1>;\n return icon;\n }\n default: {\n return undefined;\n }\n }\n }\n\n get entryPoints(): Readonly<AddOnManifestEntrypoint[]> {\n if (!this._entrypoints.length) {\n this._manifest.entryPoints.forEach(entrypoint => {\n this._entrypoints.push(new AddOnManifestEntrypoint(this._manifest.manifestVersion, entrypoint));\n });\n }\n return this._entrypoints;\n }\n\n get authorInfo(): Readonly<AuthorInfo | undefined> {\n switch (this._manifest.manifestVersion) {\n case ManifestVersion.V1: {\n const { authorInfo } = this._manifest as AddOnManifestType<ManifestVersion.V1>;\n return authorInfo;\n }\n default: {\n return undefined;\n }\n }\n }\n}\n"]}
1
+ {"version":3,"file":"AddOnManifest.js","sourceRoot":"","sources":["../src/AddOnManifest.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,11 @@ export type Permissions = {
87
87
  readonly microphone?: string;
88
88
  readonly clipboard?: string[];
89
89
  };
90
+ export type Command = {
91
+ readonly name: string;
92
+ readonly supportedMimeTypes?: string[];
93
+ readonly discoverable?: boolean;
94
+ };
90
95
  export type EntrypointV1 = {
91
96
  readonly type: string;
92
97
  readonly id: string;
@@ -104,7 +109,10 @@ export type EntrypointV2 = Omit<EntrypointV1, "label"> & {
104
109
  readonly discoverable?: boolean;
105
110
  readonly hostDomain?: string;
106
111
  };
107
- export type ManifestEntrypoint = EntrypointV1 | EntrypointV2;
112
+ export type CommandEntrypoint = EntrypointV2 & {
113
+ readonly commands: Command[];
114
+ };
115
+ export type ManifestEntrypoint = EntrypointV1 | EntrypointV2 | CommandEntrypoint;
108
116
  export type ManifestRequirements = RequirementsV1 | RequirementsV2;
109
117
  /**
110
118
  * Note: This enum expects values wrt manifest permission properties to support iframe allow permissions.
@@ -122,7 +130,11 @@ export declare enum EntrypointType {
122
130
  CONTENT_HUB = "content-hub",
123
131
  MOBILE_MEDIA_AUDIO = "mobile.media.audio",
124
132
  MOBILE_YOUR_STUFF_FILES = "mobile.your-stuff.files",
125
- MOBILE_MORE = "mobile.more"
133
+ MOBILE_MORE = "mobile.more",
134
+ SCHEDULE = "schedule",
135
+ CONTEXTUAL_REPLACE = "contextual.replace",
136
+ CONTEXTUAL_UPLOAD = "contextual.upload",
137
+ CONTEXTUAL_BULK_CREATE = "contextual.bulk-create"
126
138
  }
127
139
  export type AuthorInfo = {
128
140
  /** Author name */
@@ -1 +1 @@
1
- {"version":3,"file":"AddOnManifestTypes.d.ts","sourceRoot":"","sources":["../src/AddOnManifestTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddOnManifestTypes.d.ts","sourceRoot":"","sources":["../src/AddOnManifestTypes.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,10 @@ export var EntrypointType;
40
40
  EntrypointType["MOBILE_MEDIA_AUDIO"] = "mobile.media.audio";
41
41
  EntrypointType["MOBILE_YOUR_STUFF_FILES"] = "mobile.your-stuff.files";
42
42
  EntrypointType["MOBILE_MORE"] = "mobile.more";
43
+ EntrypointType["SCHEDULE"] = "schedule";
44
+ EntrypointType["CONTEXTUAL_REPLACE"] = "contextual.replace";
45
+ EntrypointType["CONTEXTUAL_UPLOAD"] = "contextual.upload";
46
+ EntrypointType["CONTEXTUAL_BULK_CREATE"] = "contextual.bulk-create";
43
47
  })(EntrypointType || (EntrypointType = {}));
44
48
  /**
45
49
  * Defines the Error Type other than avj libray validations for the Manifest
@@ -1 +1 @@
1
- {"version":3,"file":"AddOnManifestTypes.js","sourceRoot":"","sources":["../src/AddOnManifestTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;kFAsBkF;AAqGlF;;GAEG;AACH,MAAM,CAAN,IAAY,KAIX;AAJD,WAAY,KAAK;IACb,0BAAiB,CAAA;IACjB,kCAAyB,CAAA;IACzB,gCAAuB,CAAA;AAC3B,CAAC,EAJW,KAAK,KAAL,KAAK,QAIhB;AAED,MAAM,CAAN,IAAY,cASX;AATD,WAAY,cAAc;IACtB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;IACnB,iCAAe,CAAA;IACf,iCAAe,CAAA;IACf,6CAA2B,CAAA;IAC3B,2DAAyC,CAAA;IACzC,qEAAmD,CAAA;IACnD,6CAA2B,CAAA;AAC/B,CAAC,EATW,cAAc,KAAd,cAAc,QASzB;AA4BD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAsB;IACpD,mBAAmB,EAAE;QACjB,YAAY,EAAE,kBAAkB;QAChC,OAAO,EAAE,qCAAqC;KACjD;IACD,sBAAsB,EAAE;QACpB,YAAY,EAAE,kBAAkB;QAChC,OAAO,EAAE,0BAA0B;KACtC;IACD,eAAe,EAAE;QACb,YAAY,EAAE,cAAc;QAC5B,OAAO,EAAE,2CAA2C;KACvD;IACD,SAAS,EAAE;QACP,YAAY,EAAE,OAAO;QACrB,OAAO,EAAE,qCAAqC;KACjD;IACD,cAAc,EAAE;QACZ,YAAY,EAAE,SAAS;QACvB,OAAO,EAAE,6DAA6D;KACzE;IACD,0BAA0B,EAAE;QACxB,YAAY,EAAE,oCAAoC;QAClD,OAAO,EAAE,yDAAyD;KACrE;IACD,wBAAwB,EAAE;QACtB,YAAY,EAAE,8BAA8B;QAC5C,OAAO,EAAE,iDAAiD;KAC7D;IACD,gCAAgC,EAAE;QAC9B,YAAY,EAAE,gCAAgC;QAC9C,OAAO,EAAE,4DAA4D;KACxE;IACD,yBAAyB,EAAE;QACvB,YAAY,EAAE,8BAA8B;QAC5C,OAAO,EAAE,gFAAgF;KAC5F;IACD,iBAAiB,EAAE;QACf,YAAY,EAAE,yBAAyB;QACvC,OAAO,EAAE,kDAAkD;KAC9D;IACD,8BAA8B,EAAE;QAC5B,YAAY,EAAE,mBAAmB;QACjC,OAAO,EAAE,sEAAsE;KAClF;IACD,8BAA8B,EAAE;QAC5B,YAAY,EAAE,kCAAkC;QAChD,OAAO,EAAE,8DAA8D;KAC1E;CACJ,CAAC;AA4BF,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,4CAA2B,CAAA;IAC3B,oCAAmB,CAAA;IACnB,gCAAe,CAAA;AACnB,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAID,MAAM,UAAU,sBAAsB,CAAC,cAA8B;IACjE,OAAO,cAAc,KAAK,cAAc,CAAC,OAAO,CAAC;AACrD,CAAC","sourcesContent":["/********************************************************************************\n * MIT License\n\n * © Copyright 2023 Adobe. All rights reserved.\n\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n ********************************************************************************/\n\n/**\n * More details on the schema here and the fiels are present here:\n * https://wiki.corp.adobe.com/display/WXP/Add-in+Manifest+and+Structure\n */\n\nexport type RequirementsV1 = {\n readonly apps: string[];\n readonly experimentalApis?: boolean;\n};\n\nexport type App = {\n readonly name: string;\n readonly apiVersion: number;\n readonly supportedDeviceClass?: string[];\n};\n\nexport type TrustedPartnerApis = {\n readonly messaging?: boolean;\n readonly expressPrint?: boolean;\n readonly addOnLifecycle?: boolean;\n readonly toastNotifications?: boolean;\n readonly tiktokcml?: boolean;\n readonly formSubmission?: boolean;\n};\n\nexport type RequirementsV2 = {\n readonly apps: readonly App[];\n readonly experimentalApis?: boolean;\n readonly supportsTouch?: boolean;\n readonly renditionPreview?: boolean;\n readonly privilegedApis?: boolean;\n readonly _blessedPartnerAccess?: string;\n readonly trustedPartnerApis?: TrustedPartnerApis;\n};\n\nexport type IconType = {\n /** * icon width */\n readonly width?: number;\n /** * icon height */\n readonly height?: number;\n /** * icon file href */\n readonly href: string;\n /** * icon theme ex. [\"all\",\"light\"] */\n readonly theme?: readonly string[];\n};\n\nexport type Size = {\n readonly width: number;\n readonly height: number;\n};\n\nexport type Resizing = {\n readonly prefersConstrainedResize: boolean;\n readonly maxHeight?: number;\n readonly maxWidth?: number;\n readonly minHeight?: number;\n readonly minWidth?: number;\n};\n\nexport type LocalisedStrings = {\n readonly default: string;\n readonly [k: string]: string;\n};\n\nexport type Position = {\n readonly x: number;\n readonly y: number;\n};\n\nexport type Permissions = {\n readonly sandbox?: string[];\n readonly oauth?: string[];\n readonly camera?: string;\n readonly microphone?: string;\n readonly clipboard?: string[];\n};\n\nexport type EntrypointV1 = {\n readonly type: string;\n readonly id: string;\n readonly label: string | LocalisedStrings;\n readonly permissions?: Permissions;\n readonly defaultSize?: Size;\n readonly main: string;\n};\n\nexport type EntrypointV2 = Omit<EntrypointV1, \"label\"> & {\n /**\n * @deprecated Use `documentSandbox` instead.\n */\n readonly script?: string;\n readonly documentSandbox?: string;\n readonly discoverable?: boolean;\n readonly hostDomain?: string;\n};\n\nexport type ManifestEntrypoint = EntrypointV1 | EntrypointV2;\nexport type ManifestRequirements = RequirementsV1 | RequirementsV2;\n\n/**\n * Note: This enum expects values wrt manifest permission properties to support iframe allow permissions.\n */\nexport enum Allow {\n camera = \"camera\",\n microphone = \"microphone\",\n clipboard = \"clipboard\"\n}\n\nexport enum EntrypointType {\n WIDGET = \"widget\",\n COMMAND = \"command\",\n PANEL = \"panel\",\n SHARE = \"share\",\n CONTENT_HUB = \"content-hub\",\n MOBILE_MEDIA_AUDIO = \"mobile.media.audio\",\n MOBILE_YOUR_STUFF_FILES = \"mobile.your-stuff.files\",\n MOBILE_MORE = \"mobile.more\"\n}\n\nexport type AuthorInfo = {\n /** Author name */\n readonly name: string;\n /** Author email address */\n readonly email: string;\n /** Author profile url */\n readonly url?: string;\n};\n\n/**\n * instancePath: JSON Pointer to the location in the data instance (e.g., `\"/prop/1/subProp\"`).\n * keyword: Validation keyword.\n * params: Params property is the object with the additional information about error\n * message: Error message for the failure\n */\nexport type ManifestError = {\n instancePath?: string;\n keyword?: string;\n params?: unknown;\n message?: string;\n};\n\ntype ManifestErrorType = {\n [key: string]: ManifestError;\n};\n\n/**\n * Defines the Error Type other than avj libray validations for the Manifest\n */\nexport const OTHER_MANIFEST_ERRORS: ManifestErrorType = {\n ManifestVersionType: {\n instancePath: \"/manifestVersion\",\n message: \"Manifest version should be a number\"\n },\n InvalidManifestVersion: {\n instancePath: \"/manifestVersion\",\n message: \"Invalid manifest version\"\n },\n EmptyEntrypoint: {\n instancePath: \"/entryPoints\",\n message: \"At least one entrypoint should be defined\"\n },\n EmptyIcon: {\n instancePath: \"/icon\",\n message: \"At least one icon should be defined\"\n },\n TestIdRequired: {\n instancePath: \"/testId\",\n message: \"testId should be defined in manifest for developer workflow\"\n },\n InvalidClipboardPermission: {\n instancePath: \"/entryPoints/permissions/clipboard\",\n message: \"Clipboard read permission is not allowed for this AddOn\"\n },\n RestrictedPrivilegedApis: {\n instancePath: \"/requirements/privilegedApis\",\n message: \"Privileged apis are not allowed for this add-on\"\n },\n AdditionPropertyExperimentalApis: {\n instancePath: \"/requirements/experimentalApis\",\n message: \"Experimental apis are not supported for production add-ons\"\n },\n DocumentSandboxWithScript: {\n instancePath: \"/entryPoints/documentSandbox\",\n message: \"Manifest entrypoint should have either 'documentSandbox' or 'script', not both\"\n },\n InvalidHostDomain: {\n instancePath: \"/entryPoints/hostDomain\",\n message: \"Manifest entrypoint should have valid hostDomain\"\n },\n RestrictedContentHubEntrypoint: {\n instancePath: \"/entryPoints/type\",\n message: \"Entrypoint type 'content-hub' is allowed only for privileged add-ons\"\n },\n RestrictedFormsSandboxProperty: {\n instancePath: \"/entryPoints/permissions/sandbox\",\n message: `Sandbox property \"allow-forms\" is not allowed for this AddOn`\n }\n};\n\n/**\n * success: check if AddOn has been registered successfully or not.\n * errorDetails: contains all error logs from validation\n * warningDetails: contains all warning logs from validation\n */\nexport type ManifestValidationResult = {\n success: boolean;\n errorDetails?: ManifestError[];\n warningDetails?: ManifestError[];\n};\n\nexport interface AdditionalAddOnInfo {\n sourceId: string;\n privileged: boolean;\n isDeveloperAddOn: boolean;\n id?: string;\n name?: string;\n icon?: IconType[];\n visibility?: string;\n}\n\nexport interface AddOnInfo {\n manifest: ReturnType<typeof JSON.parse>;\n additionalInfo: AdditionalAddOnInfo;\n}\n\nexport enum AddOnLogLevel {\n information = \"information\",\n warning = \"warning\",\n error = \"error\"\n}\n\nexport type AddOnLogAction = (...args: unknown[]) => unknown;\n\nexport function isIframeEntryPointType(entryPointType: EntrypointType): boolean {\n return entryPointType !== EntrypointType.COMMAND;\n}\n"]}
1
+ {"version":3,"file":"AddOnManifestTypes.js","sourceRoot":"","sources":["../src/AddOnManifestTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;kFAsBkF;AA+GlF;;GAEG;AACH,MAAM,CAAN,IAAY,KAIX;AAJD,WAAY,KAAK;IACb,0BAAiB,CAAA;IACjB,kCAAyB,CAAA;IACzB,gCAAuB,CAAA;AAC3B,CAAC,EAJW,KAAK,KAAL,KAAK,QAIhB;AAED,MAAM,CAAN,IAAY,cAaX;AAbD,WAAY,cAAc;IACtB,mCAAiB,CAAA;IACjB,qCAAmB,CAAA;IACnB,iCAAe,CAAA;IACf,iCAAe,CAAA;IACf,6CAA2B,CAAA;IAC3B,2DAAyC,CAAA;IACzC,qEAAmD,CAAA;IACnD,6CAA2B,CAAA;IAC3B,uCAAqB,CAAA;IACrB,2DAAyC,CAAA;IACzC,yDAAuC,CAAA;IACvC,mEAAiD,CAAA;AACrD,CAAC,EAbW,cAAc,KAAd,cAAc,QAazB;AA4BD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAsB;IACpD,mBAAmB,EAAE;QACjB,YAAY,EAAE,kBAAkB;QAChC,OAAO,EAAE,qCAAqC;KACjD;IACD,sBAAsB,EAAE;QACpB,YAAY,EAAE,kBAAkB;QAChC,OAAO,EAAE,0BAA0B;KACtC;IACD,eAAe,EAAE;QACb,YAAY,EAAE,cAAc;QAC5B,OAAO,EAAE,2CAA2C;KACvD;IACD,SAAS,EAAE;QACP,YAAY,EAAE,OAAO;QACrB,OAAO,EAAE,qCAAqC;KACjD;IACD,cAAc,EAAE;QACZ,YAAY,EAAE,SAAS;QACvB,OAAO,EAAE,6DAA6D;KACzE;IACD,0BAA0B,EAAE;QACxB,YAAY,EAAE,oCAAoC;QAClD,OAAO,EAAE,yDAAyD;KACrE;IACD,wBAAwB,EAAE;QACtB,YAAY,EAAE,8BAA8B;QAC5C,OAAO,EAAE,iDAAiD;KAC7D;IACD,gCAAgC,EAAE;QAC9B,YAAY,EAAE,gCAAgC;QAC9C,OAAO,EAAE,4DAA4D;KACxE;IACD,yBAAyB,EAAE;QACvB,YAAY,EAAE,8BAA8B;QAC5C,OAAO,EAAE,gFAAgF;KAC5F;IACD,iBAAiB,EAAE;QACf,YAAY,EAAE,yBAAyB;QACvC,OAAO,EAAE,kDAAkD;KAC9D;IACD,8BAA8B,EAAE;QAC5B,YAAY,EAAE,mBAAmB;QACjC,OAAO,EAAE,sEAAsE;KAClF;IACD,8BAA8B,EAAE;QAC5B,YAAY,EAAE,kCAAkC;QAChD,OAAO,EAAE,8DAA8D;KAC1E;CACJ,CAAC;AA4BF,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,4CAA2B,CAAA;IAC3B,oCAAmB,CAAA;IACnB,gCAAe,CAAA;AACnB,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB;AAID,MAAM,UAAU,sBAAsB,CAAC,cAA8B;IACjE,OAAO,cAAc,KAAK,cAAc,CAAC,OAAO,CAAC;AACrD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AddOnManifestValidator.js","sourceRoot":"","sources":["../src/AddOnManifestValidator.ts"],"names":[],"mappings":"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","sourcesContent":["/********************************************************************************\n * MIT License\n\n * © Copyright 2023 Adobe. All rights reserved.\n\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n ********************************************************************************/\n\nimport type { ValidateFunction } from \"ajv\";\nimport { ManifestVersion } from \"./AddOnManifest.js\";\nimport {\n AddOnLogAction,\n AddOnLogLevel,\n AdditionalAddOnInfo,\n ManifestError,\n ManifestValidationResult,\n OTHER_MANIFEST_ERRORS,\n ManifestEntrypoint,\n EntrypointV2,\n EntrypointType\n} from \"./AddOnManifestTypes.js\";\nimport { developerVersionValidation, getManifestVersion, getValidationErrors } from \"./ValidationUtils.js\";\nimport { validateSchemaV1, validateSchemaV2 } from \"./generated/validateManifestSchema.mjs\";\n\n// Add schema validators to the following list ordered by version numbers\nconst validatorVersions = [validateSchemaV1, validateSchemaV2];\n\nexport class AddOnManifestValidator {\n private readonly _logError: AddOnLogAction;\n private readonly _logWarn: AddOnLogAction;\n private _manifestVersion!: number;\n\n constructor(private readonly _addOnLogger?: Map<AddOnLogLevel, AddOnLogAction>) {\n this._logError =\n this._addOnLogger?.get(AddOnLogLevel.error) ??\n (() => {\n return;\n });\n this._logWarn =\n this._addOnLogger?.get(AddOnLogLevel.warning) ??\n (() => {\n return;\n });\n }\n\n private _commonAdditionalValidations(\n manifest: ReturnType<typeof JSON.parse>,\n additionalInfo: AdditionalAddOnInfo\n ): ManifestValidationResult {\n let isValidSchema = true;\n const validationErrors: ManifestError[] = [];\n if (!manifest.entryPoints?.length) {\n this._logError(\"At least one entrypoint should be defined\");\n isValidSchema = false;\n validationErrors.push(OTHER_MANIFEST_ERRORS.EmptyEntrypoint);\n }\n\n manifest.entryPoints?.forEach((entryPoint: ManifestEntrypoint) => {\n if (entryPoint.type === EntrypointType.CONTENT_HUB && !manifest.requirements?.privilegedApis) {\n this._logError(\"Entrypoint type 'content-hub' is allowed only for privileged add-ons\");\n isValidSchema = false;\n validationErrors.push(OTHER_MANIFEST_ERRORS.RestrictedContentHubEntrypoint);\n }\n });\n\n if (!additionalInfo.privileged) {\n if (manifest.requirements?.privilegedApis) {\n this._logError(\"Privileged apis are not allowed for this add-on\");\n isValidSchema = false;\n validationErrors.push(OTHER_MANIFEST_ERRORS.RestrictedPrivilegedApis);\n }\n manifest.entryPoints?.forEach((entrypoint: ManifestEntrypoint) => {\n const canReadClipboard =\n entrypoint.permissions?.clipboard?.find(c => c === \"clipboard-read\") !== undefined;\n if (canReadClipboard) {\n this._logError(\n \"Clipboard-read permission is not allowed for the Add-on entrypoint: \",\n entrypoint.id\n );\n validationErrors.push(OTHER_MANIFEST_ERRORS.InvalidClipboardPermission);\n isValidSchema = false;\n }\n if (!manifest.requirements?.trustedPartnerApis?.formSubmission) {\n const allowsForms = entrypoint.permissions?.sandbox?.find(s => s === \"allow-forms\") !== undefined;\n if (allowsForms) {\n this._logError(\n \"allow-forms permission is not allowed for the Add-on entrypoint: \",\n entrypoint.id\n );\n validationErrors.push(OTHER_MANIFEST_ERRORS.RestrictedFormsSandboxProperty);\n isValidSchema = false;\n }\n }\n });\n }\n if (this._manifestVersion > ManifestVersion.V1) {\n const entryPointsValidation = this._isValidEntryPoint(manifest);\n if (!entryPointsValidation.success) {\n isValidSchema = false;\n validationErrors.push(...entryPointsValidation.errorDetails!);\n }\n }\n return {\n success: isValidSchema,\n errorDetails: validationErrors\n };\n }\n\n private _isValidEntryPoint(manifest: ReturnType<typeof JSON.parse>): ManifestValidationResult {\n let isValidSchema = true;\n const validationErrors: ManifestError[] = [];\n manifest.entryPoints?.forEach((entrypoint: EntrypointV2) => {\n if (entrypoint.documentSandbox && entrypoint.script) {\n this._logError(\n `Manifest entrypoint '${entrypoint.id}' should have either 'documentSandbox' or 'script', not both`\n );\n validationErrors.push(OTHER_MANIFEST_ERRORS.DocumentSandboxWithScript);\n isValidSchema = false;\n }\n if (\n entrypoint.hostDomain !== undefined &&\n !entrypoint.hostDomain.match(new RegExp(\"https://[a-zA-Z0-9-.]{3,}.[a-zA-Z]{2,}(.[a-zA-Z]{2,})?\"))\n ) {\n this._logError(`Manifest entrypoint '${entrypoint.id}' should have valid host domain`);\n validationErrors.push(OTHER_MANIFEST_ERRORS.InvalidHostDomain);\n isValidSchema = false;\n }\n });\n return {\n success: isValidSchema,\n errorDetails: validationErrors\n };\n }\n\n private _verifyAdditionalDeveloperValidations(\n manifest: ReturnType<typeof JSON.parse>,\n additionalInfo: AdditionalAddOnInfo\n ): Required<ManifestValidationResult> {\n const manifestVersion = manifest.manifestVersion || ManifestVersion.V1;\n let isValidSchema = true;\n const validationErrors: ManifestError[] = [];\n const validationWarnings: ManifestError[] = [];\n const commonValidations = this._commonAdditionalValidations(manifest, additionalInfo);\n if (!commonValidations.success) {\n isValidSchema = false;\n validationErrors.push(...commonValidations.errorDetails!);\n }\n\n switch (manifestVersion) {\n case ManifestVersion.V1: {\n if (Array.isArray(manifest?.icon) && !manifest.icon?.length) {\n this._logWarn(\"At least one icon should be defined\");\n validationWarnings.push(OTHER_MANIFEST_ERRORS.EmptyIcon);\n }\n break;\n }\n default: {\n if (!manifest.testId) {\n this._logError(\"testId should be defined in manifest for developer workflow\");\n isValidSchema = false;\n validationErrors.push(OTHER_MANIFEST_ERRORS.TestIdRequired);\n }\n }\n }\n return {\n success: isValidSchema,\n errorDetails: validationErrors,\n warningDetails: validationWarnings\n };\n }\n\n validateDeveloperSchema(\n manifest: ReturnType<typeof JSON.parse>,\n additionalInfo: AdditionalAddOnInfo\n ): ManifestValidationResult {\n const validationErrors: ManifestError[] = [];\n const validationWarnings: ManifestError[] = [];\n const schemaValidation = developerVersionValidation(manifest, this._addOnLogger);\n if (!schemaValidation.success) {\n this._logError(`Errors in Manifest.json to fix before submission: ${schemaValidation.errorDetails}`);\n validationErrors.push(...schemaValidation.errorDetails!);\n }\n const additionValidations = this._verifyAdditionalDeveloperValidations(manifest, additionalInfo);\n validationWarnings.push(...additionValidations.warningDetails);\n validationErrors.push(...additionValidations.errorDetails);\n const success = schemaValidation.success && additionValidations.success;\n return {\n success,\n warningDetails: validationWarnings.length ? validationWarnings : undefined,\n errorDetails: success ? undefined : validationErrors\n };\n }\n\n private _verifyAdditionalValidations(\n manifest: ReturnType<typeof JSON.parse>,\n additionalInfo: AdditionalAddOnInfo\n ): ManifestValidationResult {\n let isValidSchema = true;\n const validationErrors: ManifestError[] = [];\n if (manifest.requirements.experimentalApis && !additionalInfo.isDeveloperAddOn) {\n this._logError(\"Experimental apis are not supported for production add-ons\");\n validationErrors.push(OTHER_MANIFEST_ERRORS.AdditionPropertyExperimentalApis);\n isValidSchema = false;\n }\n const commonValidations = this._commonAdditionalValidations(manifest, additionalInfo);\n if (!commonValidations.success) {\n isValidSchema = false;\n validationErrors.push(...commonValidations.errorDetails!);\n }\n\n switch (this._manifestVersion) {\n case ManifestVersion.V1: {\n if (Array.isArray(manifest?.icon) && !manifest.icon?.length) {\n this._logError(\"At least one icon should be defined\");\n validationErrors.push(OTHER_MANIFEST_ERRORS.EmptyIcon);\n isValidSchema = false;\n }\n break;\n }\n }\n return {\n success: isValidSchema,\n errorDetails: validationErrors\n };\n }\n\n private _validateSchema(\n manifest: ReturnType<typeof JSON.parse>,\n additionalInfo: AdditionalAddOnInfo\n ): ManifestValidationResult {\n const schemaValidator = validatorVersions[this._manifestVersion - 1];\n let isValidSchema = true;\n let validationErrors: ManifestError[] = [];\n if (!schemaValidator(manifest)) {\n const manifestErrors = (schemaValidator as ValidateFunction).errors;\n this._logError(`Errors in Manifest.json to fix before submission: ${manifestErrors}`);\n validationErrors = getValidationErrors(manifestErrors);\n isValidSchema = false;\n }\n const additionalValidations = this._verifyAdditionalValidations(manifest, additionalInfo);\n if (!additionalValidations.success) {\n validationErrors.push(...additionalValidations.errorDetails!);\n }\n const success = isValidSchema && additionalValidations.success;\n return { success, errorDetails: success ? undefined : validationErrors };\n }\n\n validateManifestSchema(\n manifest: ReturnType<typeof JSON.parse>,\n additionalInfo: AdditionalAddOnInfo\n ): ManifestValidationResult {\n if (!manifest) {\n return { success: false };\n }\n this._manifestVersion = getManifestVersion(manifest, additionalInfo.isDeveloperAddOn);\n if (isNaN(this._manifestVersion)) {\n this._logError(\"Manifest version should be a number\");\n return { success: false, errorDetails: [OTHER_MANIFEST_ERRORS.ManifestVersionType] };\n }\n if (this._manifestVersion <= 0) {\n this._logError(`Incorrect manifest version : ${this._manifestVersion}`);\n return { success: false, errorDetails: [OTHER_MANIFEST_ERRORS.InvalidManifestVersion] };\n }\n if (additionalInfo.isDeveloperAddOn) {\n return this.validateDeveloperSchema(manifest, additionalInfo);\n }\n return this._validateSchema(manifest, additionalInfo);\n }\n}\n"]}
1
+ {"version":3,"file":"AddOnManifestValidator.js","sourceRoot":"","sources":["../src/AddOnManifestValidator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ValidationUtils.js","sourceRoot":"","sources":["../src/ValidationUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;kFAsBkF;AAGlF,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAkB,aAAa,EAA2C,MAAM,yBAAyB,CAAC;AACjH,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAErG,yEAAyE;AACzE,MAAM,0BAA0B,GAAG,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,CAAC;AAEjF,SAAS,SAAS,CACd,cAAuB,EACvB,WAA2D;IAE3D,MAAM,cAAc,GAAI,cAAmC,CAAC,MAAM,CAAC;IACnE,MAAM,QAAQ,GAAG,WAAW,EAAE,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzB,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IACD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAC7D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,0BAA0B,CACtC,QAAuC,EACvC,WAA2D;IAE3D,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,IAAI,eAAe,CAAC,EAAE,CAAC;IACvE,MAAM,eAAe,GAAG,0BAA0B,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,gBAAkD;IAClF,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE;QAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAuC,EAAE,gBAAyB;IACjG,IAAI,gBAAgB,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC,eAAe,IAAI,eAAe,CAAC,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO,QAAQ,CAAC,eAAe,CAAC;AACpC,CAAC","sourcesContent":["/********************************************************************************\n * MIT License\n\n * © Copyright 2023 Adobe. All rights reserved.\n\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n ********************************************************************************/\n\nimport type { ErrorObject, ValidateFunction } from \"ajv\";\nimport { ManifestVersion } from \"./AddOnManifest.js\";\nimport { AddOnLogAction, AddOnLogLevel, ManifestError, ManifestValidationResult } from \"./AddOnManifestTypes.js\";\nimport { validateSchemaDeveloperV1, validateSchemaV2 } from \"./generated/validateManifestSchema.mjs\";\n\n// Add schema validators to the following list ordered by version numbers\nconst developerValidatorVersions = [validateSchemaDeveloperV1, validateSchemaV2];\n\nfunction getErrors(\n validateSchema: unknown,\n addOnLogger: Map<AddOnLogLevel, AddOnLogAction> | undefined\n): ManifestValidationResult {\n const manifestErrors = (validateSchema as ValidateFunction).errors;\n const logError = addOnLogger?.get(AddOnLogLevel.error);\n if (logError !== undefined) {\n logError(manifestErrors);\n }\n const validationErrors = getValidationErrors(manifestErrors);\n return { success: false, errorDetails: validationErrors };\n}\n\nexport function developerVersionValidation(\n manifest: ReturnType<typeof JSON.parse>,\n addOnLogger: Map<AddOnLogLevel, AddOnLogAction> | undefined\n): ManifestValidationResult {\n const manifestVersion = manifest.manifestVersion || ManifestVersion.V1;\n const schemaValidator = developerValidatorVersions[manifestVersion - 1];\n if (!schemaValidator(manifest)) {\n return getErrors(schemaValidator, addOnLogger);\n }\n return { success: true };\n}\n\nexport function getValidationErrors(validationErrors: ErrorObject[] | undefined | null): ManifestError[] {\n const errors: ManifestError[] = [];\n validationErrors?.forEach(i => {\n errors.push({ instancePath: i.instancePath, keyword: i.keyword, params: i.params, message: i.message });\n });\n return errors;\n}\n\nexport function getManifestVersion(manifest: ReturnType<typeof JSON.parse>, isDeveloperAddOn: boolean): number {\n if (isDeveloperAddOn) {\n return manifest.manifestVersion ?? ManifestVersion.V1;\n }\n return manifest.manifestVersion;\n}\n"]}
1
+ {"version":3,"file":"ValidationUtils.js","sourceRoot":"","sources":["../src/ValidationUtils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;kFAsBkF;AAGlF,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAkB,aAAa,EAA2C,MAAM,yBAAyB,CAAC;AACjH,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAErG,yEAAyE;AACzE,MAAM,0BAA0B,GAAG,CAAC,yBAAyB,EAAE,gBAAgB,CAAC,CAAC;AAEjF,SAAS,SAAS,CACd,cAAuB,EACvB,WAA2D;IAE3D,MAAM,cAAc,GAAI,cAAmC,CAAC,MAAM,CAAC;IACnE,MAAM,QAAQ,GAAG,WAAW,EAAE,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzB,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;IACD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAC7D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,0BAA0B,CACtC,QAAuC,EACvC,WAA2D;IAE3D,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,IAAI,eAAe,CAAC,EAAE,CAAC;IACvE,MAAM,eAAe,GAAG,0BAA0B,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,gBAAkD;IAClF,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE;QAC1B,MAAM,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAuC,EAAE,gBAAyB;IACjG,IAAI,gBAAgB,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC,eAAe,IAAI,eAAe,CAAC,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO,QAAQ,CAAC,eAAe,CAAC;AACpC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validateManifestSchema.d.mts","sourceRoot":"","sources":["../../src/generated/validateManifestSchema.mjs"],"names":[],"mappings":"AAAs3F;;;;;YAA44gC;AAAw+E;;;;;YAA28/B;AAA8qF;;;;;YAAi11B"}
1
+ {"version":3,"file":"validateManifestSchema.d.mts","sourceRoot":"","sources":["../../src/generated/validateManifestSchema.mjs"],"names":[],"mappings":"AAAghG;;;;;YAAsihC;AAAqjF;;;;;YAAqmgC;AAA4+F;;;;;YAA2m9B"}