@forge/manifest 13.5.0-next.2-experimental-6664e2b → 13.5.0-next.4

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.
package/CHANGELOG.md CHANGED
@@ -1,17 +1,20 @@
1
1
  # @forge/manifest
2
2
 
3
- ## 13.5.0-next.2-experimental-6664e2b
3
+ ## 13.5.0-next.4
4
4
 
5
5
  ### Minor Changes
6
6
 
7
- - 4ceb09f: Allow all optional contexts for global apps EAP
7
+ - 511fabb: Validate display conditions declared on the pages and sections of Jira page modules
8
+
9
+ ## 13.5.0-next.3
10
+
11
+ ### Minor Changes
12
+
13
+ - fe8d182: Add `inline-bodied` as a supported layout for Confluence macro modules.
8
14
 
9
15
  ### Patch Changes
10
16
 
11
- - 28b74f6: Remove manifest test until app host artifacts deployment
12
- - 07cdf11: Fix manifest validation
13
- - 0a75004: Update manifest definitions
14
- - 150a3c5: Update manifest definitions
17
+ - eda3a24: Update manifest definitions
15
18
 
16
19
  ## 13.5.0-next.2
17
20
 
@@ -56,6 +56,7 @@
56
56
  "title": "compatibility",
57
57
  "description": "The app compatibility configuration. If not set, app is not a cross-context or global app.",
58
58
  "additionalProperties": false,
59
+ "minProperties": 1,
59
60
  "properties": {
60
61
  "confluence": {
61
62
  "type": "object",
@@ -56,6 +56,7 @@
56
56
  "title": "compatibility",
57
57
  "description": "The app compatibility configuration. If not set, app is not a cross-context or global app.",
58
58
  "additionalProperties": false,
59
+ "minProperties": 1,
59
60
  "properties": {
60
61
  "confluence": {
61
62
  "type": "object",
@@ -2763,7 +2764,8 @@
2763
2764
  "enum": [
2764
2765
  "inline",
2765
2766
  "block",
2766
- "bodied"
2767
+ "bodied",
2768
+ "inline-bodied"
2767
2769
  ],
2768
2770
  "type": "string",
2769
2771
  "default": "block"
@@ -20026,7 +20028,8 @@
20026
20028
  "view_request",
20027
20029
  "my_requests",
20028
20030
  "approvals",
20029
- "profile"
20031
+ "profile",
20032
+ "csm_help_center"
20030
20033
  ]
20031
20034
  }
20032
20035
  },
@@ -20074,7 +20077,8 @@
20074
20077
  "view_request",
20075
20078
  "my_requests",
20076
20079
  "approvals",
20077
- "profile"
20080
+ "profile",
20081
+ "csm_help_center"
20078
20082
  ]
20079
20083
  }
20080
20084
  },
@@ -33247,7 +33251,12 @@
33247
33251
  "resource",
33248
33252
  "render",
33249
33253
  "key"
33250
- ]
33254
+ ],
33255
+ "not": {
33256
+ "required": [
33257
+ "unlicensedAccess"
33258
+ ]
33259
+ }
33251
33260
  },
33252
33261
  "minItems": 1
33253
33262
  },
@@ -33351,16 +33360,6 @@
33351
33360
  }
33352
33361
  ]
33353
33362
  },
33354
- "unlicensedAccess": {
33355
- "type": "array",
33356
- "items": {
33357
- "type": "string",
33358
- "enum": [
33359
- "unlicensed",
33360
- "anonymous"
33361
- ]
33362
- }
33363
- },
33364
33363
  "key": {
33365
33364
  "$ref": "#/definitions/ModuleKeySchema"
33366
33365
  }
@@ -33369,7 +33368,12 @@
33369
33368
  "resource",
33370
33369
  "routePrefix",
33371
33370
  "key"
33372
- ]
33371
+ ],
33372
+ "not": {
33373
+ "required": [
33374
+ "unlicensedAccess"
33375
+ ]
33376
+ }
33373
33377
  },
33374
33378
  {
33375
33379
  "type": "object",
@@ -33483,16 +33487,6 @@
33483
33487
  "minLength": 1,
33484
33488
  "maxLength": 255
33485
33489
  },
33486
- "unlicensedAccess": {
33487
- "type": "array",
33488
- "items": {
33489
- "type": "string",
33490
- "enum": [
33491
- "unlicensed",
33492
- "anonymous"
33493
- ]
33494
- }
33495
- },
33496
33490
  "key": {
33497
33491
  "$ref": "#/definitions/ModuleKeySchema"
33498
33492
  }
@@ -33502,7 +33496,12 @@
33502
33496
  "routePrefix",
33503
33497
  "render",
33504
33498
  "key"
33505
- ]
33499
+ ],
33500
+ "not": {
33501
+ "required": [
33502
+ "unlicensedAccess"
33503
+ ]
33504
+ }
33506
33505
  }
33507
33506
  ]
33508
33507
  },
@@ -12863,7 +12863,7 @@ export interface Modules {
12863
12863
  };
12864
12864
  render?: 'native' | 'default';
12865
12865
  renderRuntimeType?: 'webworker' | 'iframe';
12866
- layout?: 'inline' | 'block' | 'bodied';
12866
+ layout?: 'inline' | 'block' | 'bodied' | 'inline-bodied';
12867
12867
  emitsReadyEvent?: boolean;
12868
12868
  hidden?: boolean;
12869
12869
  key: ModuleKeySchema;
@@ -13210,7 +13210,7 @@ export interface Modules {
13210
13210
  };
13211
13211
  render?: 'native' | 'default';
13212
13212
  renderRuntimeType?: 'webworker' | 'iframe';
13213
- layout?: 'inline' | 'block' | 'bodied';
13213
+ layout?: 'inline' | 'block' | 'bodied' | 'inline-bodied';
13214
13214
  emitsReadyEvent?: boolean;
13215
13215
  hidden?: boolean;
13216
13216
  key: ModuleKeySchema;
@@ -21367,6 +21367,7 @@ export interface Modules {
21367
21367
  | 'my_requests'
21368
21368
  | 'approvals'
21369
21369
  | 'profile'
21370
+ | 'csm_help_center'
21370
21371
  )[];
21371
21372
  viewportSize?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
21372
21373
  function: string;
@@ -21385,6 +21386,7 @@ export interface Modules {
21385
21386
  | 'my_requests'
21386
21387
  | 'approvals'
21387
21388
  | 'profile'
21389
+ | 'csm_help_center'
21388
21390
  )[];
21389
21391
  viewportSize?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
21390
21392
  resolver?:
@@ -21416,6 +21418,7 @@ export interface Modules {
21416
21418
  | 'my_requests'
21417
21419
  | 'approvals'
21418
21420
  | 'profile'
21421
+ | 'csm_help_center'
21419
21422
  )[];
21420
21423
  viewportSize?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
21421
21424
  function: string;
@@ -21434,6 +21437,7 @@ export interface Modules {
21434
21437
  | 'my_requests'
21435
21438
  | 'approvals'
21436
21439
  | 'profile'
21440
+ | 'csm_help_center'
21437
21441
  )[];
21438
21442
  viewportSize?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge';
21439
21443
  resolver?:
@@ -27809,7 +27813,6 @@ export interface Modules {
27809
27813
  | {
27810
27814
  endpoint: string;
27811
27815
  };
27812
- unlicensedAccess?: ('unlicensed' | 'anonymous')[];
27813
27816
  key: ModuleKeySchema;
27814
27817
  }
27815
27818
  | {
@@ -27833,7 +27836,6 @@ export interface Modules {
27833
27836
  renderRuntimeType?: 'webworker' | 'iframe';
27834
27837
  routePrefix: string;
27835
27838
  icon?: string;
27836
- unlicensedAccess?: ('unlicensed' | 'anonymous')[];
27837
27839
  key: ModuleKeySchema;
27838
27840
  }
27839
27841
  ),
@@ -27857,7 +27859,6 @@ export interface Modules {
27857
27859
  | {
27858
27860
  endpoint: string;
27859
27861
  };
27860
- unlicensedAccess?: ('unlicensed' | 'anonymous')[];
27861
27862
  key: ModuleKeySchema;
27862
27863
  }
27863
27864
  | {
@@ -27881,7 +27882,6 @@ export interface Modules {
27881
27882
  renderRuntimeType?: 'webworker' | 'iframe';
27882
27883
  routePrefix: string;
27883
27884
  icon?: string;
27884
- unlicensedAccess?: ('unlicensed' | 'anonymous')[];
27885
27885
  key: ModuleKeySchema;
27886
27886
  }
27887
27887
  )[]
@@ -51,10 +51,10 @@ export declare const errors: {
51
51
  singleEntryOfModuleWithConfigureParam: (moduleType: string) => string;
52
52
  singleEntryOfModuleWithGetStartedParam: (moduleType: string) => string;
53
53
  displayConditions: {
54
- overcomplicated: (moduleKey: string) => string;
55
- invalid: (moduleKey: string) => string;
56
- propertyNotAllowed: (moduleKey: string, propertyName: string) => string;
57
- typeMismatch: (moduleKey: string, propertyName: string, errorDetails: string) => string;
54
+ overcomplicated: (moduleKey: string, location?: string) => string;
55
+ invalid: (moduleKey: string, location?: string) => string;
56
+ propertyNotAllowed: (moduleKey: string, propertyName: string, location?: string) => string;
57
+ typeMismatch: (moduleKey: string, propertyName: string, errorDetails: string, location?: string) => string;
58
58
  };
59
59
  bitbucket: {
60
60
  endpointOnlySupportSystemToken: (moduleKey: string, endpointModuleKey: string) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.References = exports.errors = void 0;
4
4
  const types_1 = require("../types");
5
5
  const utils_1 = require("../utils");
6
+ const displayConditionsLocation = (location) => (location ? `${location} of the ` : '');
6
7
  exports.errors = {
7
8
  invalidManifest: (reason) => `manifest.yml failed to parse content - ${reason}`,
8
9
  twgPreviewScopes: (scopes) => `This app requests Teamwork Graph scopes (${scopes.join(', ')}), which grant org-wide read access ` +
@@ -65,10 +66,10 @@ exports.errors = {
65
66
  singleEntryOfModuleWithConfigureParam: (moduleType) => `The ${moduleType} module can only have a single entry that includes the useAsConfig property.`,
66
67
  singleEntryOfModuleWithGetStartedParam: (moduleType) => `The ${moduleType} module can only have a single entry that includes the useAsGetStarted property.`,
67
68
  displayConditions: {
68
- overcomplicated: (moduleKey) => `Nesting of display conditions of the "${moduleKey}" module exceeds 10 levels.`,
69
- invalid: (moduleKey) => `Display conditions of the "${moduleKey}" module are invalid.`,
70
- propertyNotAllowed: (moduleKey, propertyName) => `Display conditions of the "${moduleKey}" module are invalid. "${propertyName}" property is not allowed.`,
71
- typeMismatch: (moduleKey, propertyName, errorDetails) => `Display conditions of the "${moduleKey}" module are invalid. "${propertyName}" property ${errorDetails}.`
69
+ overcomplicated: (moduleKey, location) => `Nesting of display conditions of the ${displayConditionsLocation(location)}"${moduleKey}" module exceeds 10 levels.`,
70
+ invalid: (moduleKey, location) => `Display conditions of the ${displayConditionsLocation(location)}"${moduleKey}" module are invalid.`,
71
+ propertyNotAllowed: (moduleKey, propertyName, location) => `Display conditions of the ${displayConditionsLocation(location)}"${moduleKey}" module are invalid. "${propertyName}" property is not allowed.`,
72
+ typeMismatch: (moduleKey, propertyName, errorDetails, location) => `Display conditions of the ${displayConditionsLocation(location)}"${moduleKey}" module are invalid. "${propertyName}" property ${errorDetails}.`
72
73
  },
73
74
  bitbucket: {
74
75
  endpointOnlySupportSystemToken: (moduleKey, endpointModuleKey) => `Bitbucket module: '${moduleKey}' using remote endpoint: '${endpointModuleKey}' only supports appSystemToken. Update appUserToken to false.`,
@@ -288,7 +289,7 @@ exports.errors = {
288
289
  invalidConfluenceModuleInJira: () => 'Using the module `confluence:fullPage` is invalid when the required product is Jira. Full page modules must match the required product. Use `jira:fullPage` as the module type, or change the required product to Confluence in your manifest.yml compatibility settings.',
289
290
  invalidJiraModuleInConfluence: () => 'Using the module `jira:fullPage` is invalid when the required product is Confluence. Full page modules must match the required product. Use `confluence:fullPage` as the module type, or change the required product to Jira in your manifest.yml compatibility settings.',
290
291
  invalidProduct: (product) => `Invalid product '${product}' in app.compatibility. Only 'jira' and 'confluence' are supported as compatibility products for this module.`,
291
- oneRequiredContext: () => 'Only one context (Jira, Confluence, or Compass) must have `required:true` in app.compatibility.'
292
+ oneRequiredContext: () => 'One context (Jira, Confluence, or Compass) must have `required:true` in app.compatibility.'
292
293
  }
293
294
  },
294
295
  translations: {
@@ -191,5 +191,6 @@ export type DisplayConditions = {
191
191
  'jiraServiceManagement:portalRequestCreatePropertyPanel'?: IssueView;
192
192
  };
193
193
  };
194
+ export declare const ModuleWithNestedDisplayConditions: readonly ["jira:adminPage", "jira:globalPage", "jira:projectPage", "jira:projectSettingsPage"];
194
195
  export {};
195
196
  //# sourceMappingURL=display-condition-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"display-condition-types.d.ts","sourceRoot":"","sources":["../../src/types/display-condition-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"display-condition-types.d.ts","sourceRoot":"","sources":["../../src/types/display-condition-types.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ModuleWithNestedDisplayConditions = void 0;
3
4
  var EntityType;
4
5
  (function (EntityType) {
5
6
  EntityType["Space"] = "space";
@@ -26,3 +27,9 @@ var ConfluenceContentPermission;
26
27
  ConfluenceContentPermission["Export"] = "EXPORT";
27
28
  ConfluenceContentPermission["Administer"] = "ADMINISTER";
28
29
  })(ConfluenceContentPermission || (ConfluenceContentPermission = {}));
30
+ exports.ModuleWithNestedDisplayConditions = [
31
+ 'jira:adminPage',
32
+ 'jira:globalPage',
33
+ 'jira:projectPage',
34
+ 'jira:projectSettingsPage'
35
+ ];
@@ -18,7 +18,7 @@ class CompatibilityValidator {
18
18
  const compatibility = app?.compatibility || {};
19
19
  const hasCompatibilityKeys = Object.keys(compatibility).length > 0;
20
20
  const requiredContexts = Object.keys(compatibility).filter((key) => compatibility[key]?.required === true);
21
- if (hasCompatibilityKeys && requiredContexts.length > 1) {
21
+ if (hasCompatibilityKeys && requiredContexts.length !== 1) {
22
22
  validationErrors.push({
23
23
  message: text_1.errors.app.compatibility.oneRequiredContext(),
24
24
  reference: text_2.References.SchemaError,
@@ -7,8 +7,10 @@ export declare class DisplayConditionsValidator<T> implements ValidatorInterface
7
7
  private readonly moduleSchemas;
8
8
  private readonly supportedOperations;
9
9
  constructor(schema: object);
10
- flattenDisplayConditions(moduleKey: string, displayConditions: any, nesting?: number): any;
10
+ flattenDisplayConditions(moduleKey: string, displayConditions: any, nesting?: number, location?: string): any;
11
11
  toValidationError(message: string): ValidationError;
12
+ private collectNestedDisplayConditionsTargets;
13
+ private validateDisplayConditions;
12
14
  validate(manifest: ManifestObject<ManifestSchema> | undefined): Promise<ManifestValidationResult<ManifestSchema>>;
13
15
  }
14
16
  //# sourceMappingURL=display-conditions-validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"display-conditions-validator.d.ts","sourceRoot":"","sources":["../../src/validators/display-conditions-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,cAAc,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAErG,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKpD,qBAAa,0BAA0B,CAAC,CAAC,CACvC,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IAM7E,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA2B;gBAElC,MAAM,EAAE,MAAM;IAoE3C,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,OAAO,SAAI,GAAG,GAAG;IA2BrF,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe;IAU7C,QAAQ,CACZ,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GACnD,OAAO,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;CAiGrD"}
1
+ {"version":3,"file":"display-conditions-validator.d.ts","sourceRoot":"","sources":["../../src/validators/display-conditions-validator.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,cAAc,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGrG,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAiBpD,qBAAa,0BAA0B,CAAC,CAAC,CACvC,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IAM7E,OAAO,CAAC,QAAQ,CAAC,MAAM;IAJnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA2B;gBAElC,MAAM,EAAE,MAAM;IAoE3C,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,OAAO,SAAI,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,GAAG;IA2BxG,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe;IAanD,OAAO,CAAC,qCAAqC;IA0C7C,OAAO,CAAC,yBAAyB;IAuD3B,QAAQ,CACZ,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GACnD,OAAO,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;CA4ErD"}
@@ -3,9 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DisplayConditionsValidator = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const ajv_1 = tslib_1.__importDefault(require("ajv"));
6
+ const display_condition_types_1 = require("../types/display-condition-types");
6
7
  const text_1 = require("../text");
7
8
  const isPlainObject = (obj) => Object.prototype.toString.call(obj) === '[object Object]';
8
9
  const errors = text_1.errors.modules.displayConditions;
10
+ const pageLocation = (page, index) => typeof page?.route === 'string' ? `page "${page.route}"` : `page[${index}]`;
11
+ const sectionLocation = (section, index) => typeof section?.header === 'string' ? `section "${section.header}"` : `section[${index}]`;
9
12
  class DisplayConditionsValidator {
10
13
  schema;
11
14
  validateSchema;
@@ -19,9 +22,9 @@ class DisplayConditionsValidator {
19
22
  this.moduleSchemas = properties.modules?.properties;
20
23
  this.supportedOperations = properties.operations?.items?.enum;
21
24
  }
22
- flattenDisplayConditions(moduleKey, displayConditions, nesting = 0) {
25
+ flattenDisplayConditions(moduleKey, displayConditions, nesting = 0, location) {
23
26
  if (nesting >= 10) {
24
- throw Error(errors.overcomplicated(moduleKey));
27
+ throw Error(errors.overcomplicated(moduleKey, location));
25
28
  }
26
29
  if (Array.isArray(displayConditions)) {
27
30
  return [displayConditions];
@@ -31,7 +34,7 @@ class DisplayConditionsValidator {
31
34
  const keys = Object.keys(displayConditions);
32
35
  for (let i = 0; i < keys.length; i += 1) {
33
36
  if (this.supportedOperations.includes(keys[i])) {
34
- result.push(...this.flattenDisplayConditions(moduleKey, displayConditions[keys[i]], nesting + 1));
37
+ result.push(...this.flattenDisplayConditions(moduleKey, displayConditions[keys[i]], nesting + 1, location));
35
38
  }
36
39
  else {
37
40
  obj[keys[i]] = displayConditions[keys[i]];
@@ -48,6 +51,78 @@ class DisplayConditionsValidator {
48
51
  column: 0
49
52
  };
50
53
  }
54
+ collectNestedDisplayConditionsTargets(module) {
55
+ const targets = [];
56
+ const addPages = (pages, sectionLocationLabel) => {
57
+ if (!Array.isArray(pages)) {
58
+ return;
59
+ }
60
+ pages.forEach((page, index) => {
61
+ if (!page?.displayConditions) {
62
+ return;
63
+ }
64
+ const location = pageLocation(page, index);
65
+ targets.push({
66
+ location: sectionLocationLabel ? `${location} in ${sectionLocationLabel}` : location,
67
+ displayConditions: page.displayConditions
68
+ });
69
+ });
70
+ };
71
+ addPages(module.pages);
72
+ if (Array.isArray(module.sections)) {
73
+ module.sections.forEach((section, index) => {
74
+ const location = sectionLocation(section, index);
75
+ if (section?.displayConditions) {
76
+ targets.push({ location, displayConditions: section.displayConditions });
77
+ }
78
+ addPages(section?.pages, location);
79
+ });
80
+ }
81
+ return targets;
82
+ }
83
+ validateDisplayConditions(moduleType, moduleKey, displayConditions, reportError, location) {
84
+ if (!displayConditions) {
85
+ return;
86
+ }
87
+ if (!isPlainObject(displayConditions)) {
88
+ reportError('n/a', errors.invalid(moduleKey, location));
89
+ return;
90
+ }
91
+ let flattened = [];
92
+ try {
93
+ flattened = this.flattenDisplayConditions(moduleKey, displayConditions, 0, location);
94
+ }
95
+ catch (e) {
96
+ reportError('n/a', e.message);
97
+ return;
98
+ }
99
+ flattened.forEach((result) => {
100
+ void this.validateSchema({ modules: { [moduleType]: result } });
101
+ this.validateSchema.errors?.forEach((error) => {
102
+ const { keyword, instancePath, params, message } = error;
103
+ const split = instancePath.split('/');
104
+ const path = String(split.pop());
105
+ if (keyword === 'type' && message) {
106
+ if (path === String(Number(path))) {
107
+ reportError(instancePath, errors.typeMismatch(moduleKey, `${split.pop()}[${path}]`, message, location));
108
+ }
109
+ else {
110
+ reportError(instancePath, errors.typeMismatch(moduleKey, path, message, location));
111
+ }
112
+ }
113
+ else if (keyword === 'enum' && params) {
114
+ const details = `${path}; ${text_1.errors.schema.enumValues(params.allowedValues)}`;
115
+ reportError(instancePath, location ? `${errors.invalid(moduleKey, location)} ${details}` : details);
116
+ }
117
+ else if (keyword === 'additionalProperties' && params) {
118
+ reportError(instancePath, errors.propertyNotAllowed(moduleKey, String(params.additionalProperty), location));
119
+ }
120
+ else {
121
+ reportError(instancePath, errors.invalid(moduleKey, location));
122
+ }
123
+ });
124
+ });
125
+ }
51
126
  async validate(manifest) {
52
127
  if (!manifest ||
53
128
  !manifest.typedContent ||
@@ -65,53 +140,30 @@ class DisplayConditionsValidator {
65
140
  };
66
141
  }
67
142
  const validationErrors = new Map();
68
- const reportError = (moduleKey, instancePath, message) => {
69
- const key = `${moduleKey}__${instancePath}`;
70
- if (!validationErrors.has(key)) {
71
- validationErrors.set(key, this.toValidationError(message));
143
+ Object.keys(this.moduleSchemas).forEach((moduleType) => {
144
+ modules[moduleType]?.forEach((module) => {
145
+ const reportError = (errorKey, message) => {
146
+ const key = `${module.key}__${errorKey}`;
147
+ if (!validationErrors.has(key)) {
148
+ validationErrors.set(key, this.toValidationError(message));
149
+ }
150
+ };
151
+ this.validateDisplayConditions(moduleType, module.key, module.displayConditions, reportError);
152
+ });
153
+ });
154
+ Object.keys(this.moduleSchemas).forEach((moduleType) => {
155
+ if (!display_condition_types_1.ModuleWithNestedDisplayConditions.includes(moduleType)) {
156
+ return;
72
157
  }
73
- };
74
- Object.keys(this.moduleSchemas).forEach((m) => {
75
- modules[m]?.forEach((module) => {
76
- if (!module.displayConditions) {
77
- return;
78
- }
79
- if (!isPlainObject(module.displayConditions)) {
80
- reportError(module.key, 'n/a', errors.invalid(module.key));
81
- return;
82
- }
83
- let displayConditions = [];
84
- try {
85
- displayConditions = this.flattenDisplayConditions(module.key, module.displayConditions);
86
- }
87
- catch (e) {
88
- reportError(module.key, 'n/a', e.message);
89
- return;
90
- }
91
- displayConditions.forEach((result) => {
92
- void this.validateSchema({ modules: { [m]: result } });
93
- this.validateSchema.errors?.forEach((error) => {
94
- const { keyword, instancePath, params, message } = error;
95
- const split = instancePath.split('/');
96
- const path = String(split.pop());
97
- if (keyword === 'type' && message) {
98
- if (path === String(Number(path))) {
99
- reportError(module.key, instancePath, errors.typeMismatch(module.key, `${split.pop()}[${path}]`, message));
100
- }
101
- else {
102
- reportError(module.key, instancePath, errors.typeMismatch(module.key, path, message));
103
- }
104
- }
105
- else if (keyword === 'enum' && params) {
106
- reportError(module.key, instancePath, `${path}; ${text_1.errors.schema.enumValues(params.allowedValues)}`);
107
- }
108
- else if (keyword === 'additionalProperties' && params) {
109
- reportError(module.key, instancePath, errors.propertyNotAllowed(module.key, String(params.additionalProperty)));
110
- }
111
- else {
112
- reportError(module.key, instancePath, errors.invalid(module.key));
158
+ modules[moduleType]?.forEach((module) => {
159
+ this.collectNestedDisplayConditionsTargets(module).forEach((target) => {
160
+ const reportError = (errorKey, message) => {
161
+ const key = `${module.key}__${target.location}__${errorKey}`;
162
+ if (!validationErrors.has(key)) {
163
+ validationErrors.set(key, this.toValidationError(message));
113
164
  }
114
- });
165
+ };
166
+ this.validateDisplayConditions(moduleType, module.key, target.displayConditions, reportError, target.location);
115
167
  });
116
168
  });
117
169
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/manifest",
3
- "version": "13.5.0-next.2-experimental-6664e2b",
3
+ "version": "13.5.0-next.4",
4
4
  "description": "Definitions and validations of the Forge manifest",
5
5
  "main": "out/index.js",
6
6
  "scripts": {