@forge/manifest 12.5.0 → 12.6.0-next.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @forge/manifest
2
2
 
3
+ ## 12.6.0-next.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 399ae7d: Enforce render:native for global:ui
8
+ Remove routePrefix from global:ui
9
+
3
10
  ## 12.5.0
4
11
 
5
12
  ### Minor Changes
@@ -5189,11 +5189,6 @@
5189
5189
  "maxLength": 255,
5190
5190
  "pattern": "^[a-z0-9\\-]+$"
5191
5191
  },
5192
- "icon": {
5193
- "type": "string",
5194
- "minLength": 1,
5195
- "maxLength": 255
5196
- },
5197
5192
  "resource": {
5198
5193
  "type": "string",
5199
5194
  "minLength": 1,
@@ -5251,6 +5246,11 @@
5251
5246
  },
5252
5247
  "key": {
5253
5248
  "$ref": "#/definitions/ModuleKeySchema"
5249
+ },
5250
+ "icon": {
5251
+ "type": "string",
5252
+ "minLength": 1,
5253
+ "maxLength": 255
5254
5254
  }
5255
5255
  },
5256
5256
  "required": [
@@ -5352,11 +5352,6 @@
5352
5352
  "maxLength": 255,
5353
5353
  "pattern": "^[a-z0-9\\-]+$"
5354
5354
  },
5355
- "icon": {
5356
- "type": "string",
5357
- "minLength": 1,
5358
- "maxLength": 255
5359
- },
5360
5355
  "unlicensedAccess": {
5361
5356
  "type": "array",
5362
5357
  "items": {
@@ -5369,6 +5364,11 @@
5369
5364
  },
5370
5365
  "key": {
5371
5366
  "$ref": "#/definitions/ModuleKeySchema"
5367
+ },
5368
+ "icon": {
5369
+ "type": "string",
5370
+ "minLength": 1,
5371
+ "maxLength": 255
5372
5372
  }
5373
5373
  },
5374
5374
  "required": [
@@ -11859,13 +11859,13 @@
11859
11859
  "maxLength": 255,
11860
11860
  "pattern": "^[a-z0-9\\-]+$"
11861
11861
  },
11862
+ "key": {
11863
+ "$ref": "#/definitions/ModuleKeySchema"
11864
+ },
11862
11865
  "icon": {
11863
11866
  "type": "string",
11864
11867
  "minLength": 1,
11865
11868
  "maxLength": 255
11866
- },
11867
- "key": {
11868
- "$ref": "#/definitions/ModuleKeySchema"
11869
11869
  }
11870
11870
  },
11871
11871
  "required": [
@@ -11972,13 +11972,13 @@
11972
11972
  "maxLength": 255,
11973
11973
  "pattern": "^[a-z0-9\\-]+$"
11974
11974
  },
11975
+ "key": {
11976
+ "$ref": "#/definitions/ModuleKeySchema"
11977
+ },
11975
11978
  "icon": {
11976
11979
  "type": "string",
11977
11980
  "minLength": 1,
11978
11981
  "maxLength": 255
11979
- },
11980
- "key": {
11981
- "$ref": "#/definitions/ModuleKeySchema"
11982
11982
  }
11983
11983
  },
11984
11984
  "required": [
@@ -29762,12 +29762,6 @@
29762
29762
  "maxLength": 300,
29763
29763
  "pattern": "^[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)*$"
29764
29764
  },
29765
- "routePrefix": {
29766
- "type": "string",
29767
- "minLength": 1,
29768
- "maxLength": 255,
29769
- "pattern": "^[a-z0-9\\-]+$"
29770
- },
29771
29765
  "icon": {
29772
29766
  "type": "string",
29773
29767
  "minLength": 1,
@@ -29820,12 +29814,19 @@
29820
29814
  },
29821
29815
  "key": {
29822
29816
  "$ref": "#/definitions/ModuleKeySchema"
29817
+ },
29818
+ "render": {
29819
+ "enum": [
29820
+ "native"
29821
+ ],
29822
+ "type": "string",
29823
+ "default": "native"
29823
29824
  }
29824
29825
  },
29825
29826
  "required": [
29826
29827
  "resource",
29827
- "routePrefix",
29828
- "key"
29828
+ "key",
29829
+ "render"
29829
29830
  ]
29830
29831
  },
29831
29832
  {
@@ -29909,17 +29910,10 @@
29909
29910
  },
29910
29911
  "render": {
29911
29912
  "enum": [
29912
- "native",
29913
- "default"
29913
+ "native"
29914
29914
  ],
29915
29915
  "type": "string",
29916
- "default": "default"
29917
- },
29918
- "routePrefix": {
29919
- "type": "string",
29920
- "minLength": 1,
29921
- "maxLength": 255,
29922
- "pattern": "^[a-z0-9\\-]+$"
29916
+ "default": "native"
29923
29917
  },
29924
29918
  "icon": {
29925
29919
  "type": "string",
@@ -29932,7 +29926,6 @@
29932
29926
  },
29933
29927
  "required": [
29934
29928
  "resource",
29935
- "routePrefix",
29936
29929
  "render",
29937
29930
  "key"
29938
29931
  ]
@@ -33143,7 +33136,7 @@
33143
33136
  "shortClassName": "customContentAPISupportBean",
33144
33137
  "type": "object",
33145
33138
  "title": "Custom Content API Support",
33146
- "description": "\n\nThis property allows you to specify the container types your custom content can appear in, and its supported child content types.\n It also allows you to enable indexing of your custom content.\n\n\n\n\n\n {\n \"bodyType\": \"storage\",\n \"supportedContainerTypes\": [\n \"space\",\n \"page\"\n ],\n \"supportedChildTypes\": [\n \"attachment\",\n \"comment\"\n ],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n <p>In the above example, you'll see we specify content type keys in the <code>supportedContainerTypes</code> and <code>supportedChildTypes</code> fields.\n There are 2 categories of content type you can reference built-in content and custom content.</p>\n\n <h3>Built-in content types example</h3>\n The following snippet shows the content type we're defining can:\n <ul>\n <li>Be contained in a <code>space</code> or a <code>page</code></li>\n <li>Have a child <code>comment</code> or a child <code>attachment</code></li>\n </ul>\n\n\n\n\n\n {\n \"bodyType\": \"storage\",\n \"supportedContainerTypes\": [\n \"space\",\n \"page\"\n ],\n \"supportedChildTypes\": [\n \"attachment\",\n \"comment\"\n ],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n\n <h3>Custom content example</h3>\n The following snippet shows the content type we're defining can:\n <ul>\n <li>Be contained in a content with type <code>type1</code> or <code>type2</code>, defined in an add-on with the key <code>my-first-addon</code></li>\n <li>Have a child of a content with type <code>type1</code> or <code>type2</code>, defined in an add-on with the key <code>my-second-addon</code></li>\n </ul>\n\n\n\n\n\n {\n \"bodyType\": \"storage\",\n \"supportedContainerTypes\": [\n \"ac:my-first-addon:type2\",\n \"ac:my-first-addon:type1\"\n ],\n \"supportedChildTypes\": [\n \"ac:my-second-addon:type1\",\n \"ac:my-second-addon:type2\"\n ],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n <h3>Raw body type custom content example</h3>\n You can define custom content to support a content body with a type of <code>raw</code>.<br>\n This is useful when you want to store, for example, stringified JSON to the content.\n\n\n\n\n\n {\n \"bodyType\": \"raw\",\n \"supportedContainerTypes\": [\n \"space\"\n ],\n \"supportedChildTypes\": [],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n Content with a raw body looks like this:\n <pre><code>\n {\n \"title\": \"My title\",\n \"space\": {\"key\": \"DS\"},\n \"type\": \"ac:add-on-key:module-key\",\n \"body\": {\n \"raw\": {\n \"value\": \"{\\\"field\\\": \\\"value\\\"}\",\n \"representation\": \"raw\"\n }\n }\n }\n </code></pre>\n\n"
33139
+ "description": "\n\nThis property allows you to specify the container types your custom content can appear in, and its supported child content types.\n It also allows you to enable indexing of your custom content.\n\n\n\n\n\n {\n \"bodyType\": \"storage\",\n \"supportedContainerTypes\": [\n \"space\",\n \"page\"\n ],\n \"supportedChildTypes\": [\n \"attachment\",\n \"comment\"\n ],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n <p>In the above example, you'll see we specify content type keys in the <code>supportedContainerTypes</code> and <code>supportedChildTypes</code> fields.\n There are 2 categories of content type you can reference \u2013 built-in content and custom content.</p>\n\n <h3>Built-in content types example</h3>\n The following snippet shows the content type we're defining can:\n <ul>\n <li>Be contained in a <code>space</code> or a <code>page</code></li>\n <li>Have a child <code>comment</code> or a child <code>attachment</code></li>\n </ul>\n\n\n\n\n\n {\n \"bodyType\": \"storage\",\n \"supportedContainerTypes\": [\n \"space\",\n \"page\"\n ],\n \"supportedChildTypes\": [\n \"attachment\",\n \"comment\"\n ],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n\n <h3>Custom content example</h3>\n The following snippet shows the content type we're defining can:\n <ul>\n <li>Be contained in a content with type <code>type1</code> or <code>type2</code>, defined in an add-on with the key <code>my-first-addon</code></li>\n <li>Have a child of a content with type <code>type1</code> or <code>type2</code>, defined in an add-on with the key <code>my-second-addon</code></li>\n </ul>\n\n\n\n\n\n {\n \"bodyType\": \"storage\",\n \"supportedContainerTypes\": [\n \"ac:my-first-addon:type2\",\n \"ac:my-first-addon:type1\"\n ],\n \"supportedChildTypes\": [\n \"ac:my-second-addon:type1\",\n \"ac:my-second-addon:type2\"\n ],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n <h3>Raw body type custom content example</h3>\n You can define custom content to support a content body with a type of <code>raw</code>.<br>\n This is useful when you want to store, for example, stringified JSON to the content.\n\n\n\n\n\n {\n \"bodyType\": \"raw\",\n \"supportedContainerTypes\": [\n \"space\"\n ],\n \"supportedChildTypes\": [],\n \"supportedSpacePermissions\": [],\n \"preventDuplicateTitle\": false,\n \"indexing\": {\n \"enabled\": true\n }\n }\n\n\n\n\n Content with a raw body looks like this:\n <pre><code>\n {\n \"title\": \"My title\",\n \"space\": {\"key\": \"DS\"},\n \"type\": \"ac:add-on-key:module-key\",\n \"body\": {\n \"raw\": {\n \"value\": \"{\\\"field\\\": \\\"value\\\"}\",\n \"representation\": \"raw\"\n }\n }\n }\n </code></pre>\n\n"
33147
33140
  },
33148
33141
  "indexing": {
33149
33142
  "properties": {
@@ -13935,7 +13935,6 @@ export interface Modules {
13935
13935
  | string;
13936
13936
  title__i18n?: string;
13937
13937
  routePrefix: string;
13938
- icon?: string;
13939
13938
  resource: string;
13940
13939
  resourceUploadId?: string;
13941
13940
  resolver?:
@@ -13947,6 +13946,7 @@ export interface Modules {
13947
13946
  };
13948
13947
  unlicensedAccess?: ('unlicensed' | 'anonymous')[];
13949
13948
  key: ModuleKeySchema;
13949
+ icon?: string;
13950
13950
  }
13951
13951
  | {
13952
13952
  title?:
@@ -13966,9 +13966,9 @@ export interface Modules {
13966
13966
  resourceUploadId?: string;
13967
13967
  render: 'native' | 'default';
13968
13968
  routePrefix: string;
13969
- icon?: string;
13970
13969
  unlicensedAccess?: ('unlicensed' | 'anonymous')[];
13971
13970
  key: ModuleKeySchema;
13971
+ icon?: string;
13972
13972
  }
13973
13973
  ),
13974
13974
  ...(
@@ -13980,7 +13980,6 @@ export interface Modules {
13980
13980
  | string;
13981
13981
  title__i18n?: string;
13982
13982
  routePrefix: string;
13983
- icon?: string;
13984
13983
  resource: string;
13985
13984
  resourceUploadId?: string;
13986
13985
  resolver?:
@@ -13992,6 +13991,7 @@ export interface Modules {
13992
13991
  };
13993
13992
  unlicensedAccess?: ('unlicensed' | 'anonymous')[];
13994
13993
  key: ModuleKeySchema;
13994
+ icon?: string;
13995
13995
  }
13996
13996
  | {
13997
13997
  title?:
@@ -14011,9 +14011,9 @@ export interface Modules {
14011
14011
  resourceUploadId?: string;
14012
14012
  render: 'native' | 'default';
14013
14013
  routePrefix: string;
14014
- icon?: string;
14015
14014
  unlicensedAccess?: ('unlicensed' | 'anonymous')[];
14016
14015
  key: ModuleKeySchema;
14016
+ icon?: string;
14017
14017
  }
14018
14018
  )[]
14019
14019
  ];
@@ -17024,8 +17024,8 @@ export interface Modules {
17024
17024
  };
17025
17025
  title__i18n?: string;
17026
17026
  routePrefix: string;
17027
- icon?: string;
17028
17027
  key: ModuleKeySchema;
17028
+ icon?: string;
17029
17029
  }
17030
17030
  | {
17031
17031
  resource: string;
@@ -17045,8 +17045,8 @@ export interface Modules {
17045
17045
  };
17046
17046
  title__i18n?: string;
17047
17047
  routePrefix: string;
17048
- icon?: string;
17049
17048
  key: ModuleKeySchema;
17049
+ icon?: string;
17050
17050
  }
17051
17051
  ),
17052
17052
  ...(
@@ -17067,8 +17067,8 @@ export interface Modules {
17067
17067
  };
17068
17068
  title__i18n?: string;
17069
17069
  routePrefix: string;
17070
- icon?: string;
17071
17070
  key: ModuleKeySchema;
17071
+ icon?: string;
17072
17072
  }
17073
17073
  | {
17074
17074
  resource: string;
@@ -17088,8 +17088,8 @@ export interface Modules {
17088
17088
  };
17089
17089
  title__i18n?: string;
17090
17090
  routePrefix: string;
17091
- icon?: string;
17092
17091
  key: ModuleKeySchema;
17092
+ icon?: string;
17093
17093
  }
17094
17094
  )[]
17095
17095
  ];
@@ -24990,7 +24990,6 @@ export interface Modules {
24990
24990
  }
24991
24991
  | string;
24992
24992
  title__i18n?: string;
24993
- routePrefix: string;
24994
24993
  icon?: string;
24995
24994
  resource: string;
24996
24995
  resourceUploadId?: string;
@@ -25002,6 +25001,7 @@ export interface Modules {
25002
25001
  endpoint: string;
25003
25002
  };
25004
25003
  key: ModuleKeySchema;
25004
+ render: 'native';
25005
25005
  }
25006
25006
  | {
25007
25007
  title?:
@@ -25019,8 +25019,7 @@ export interface Modules {
25019
25019
  };
25020
25020
  resource: string;
25021
25021
  resourceUploadId?: string;
25022
- render: 'native' | 'default';
25023
- routePrefix: string;
25022
+ render: 'native';
25024
25023
  icon?: string;
25025
25024
  key: ModuleKeySchema;
25026
25025
  }
@@ -25033,7 +25032,6 @@ export interface Modules {
25033
25032
  }
25034
25033
  | string;
25035
25034
  title__i18n?: string;
25036
- routePrefix: string;
25037
25035
  icon?: string;
25038
25036
  resource: string;
25039
25037
  resourceUploadId?: string;
@@ -25045,6 +25043,7 @@ export interface Modules {
25045
25043
  endpoint: string;
25046
25044
  };
25047
25045
  key: ModuleKeySchema;
25046
+ render: 'native';
25048
25047
  }
25049
25048
  | {
25050
25049
  title?:
@@ -25062,8 +25061,7 @@ export interface Modules {
25062
25061
  };
25063
25062
  resource: string;
25064
25063
  resourceUploadId?: string;
25065
- render: 'native' | 'default';
25066
- routePrefix: string;
25064
+ render: 'native';
25067
25065
  icon?: string;
25068
25066
  key: ModuleKeySchema;
25069
25067
  }
@@ -170,8 +170,8 @@ export declare const errors: {
170
170
  missingRemote: () => string;
171
171
  };
172
172
  globalUi: {
173
- invalidRouteRegex: (pattern: string, keyName: string, index: number) => string;
174
173
  invalidIcon: (icon: string, keyName: string, index: number) => string;
174
+ renderMustBeNative: (keyName: string, index: number) => string;
175
175
  };
176
176
  };
177
177
  resources: {
@@ -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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"}
@@ -184,8 +184,8 @@ exports.errors = {
184
184
  missingRemote: () => `Missing remote in migration:dataResidency.`
185
185
  },
186
186
  globalUi: {
187
- invalidRouteRegex: (pattern, keyName, index) => `The routePrefix '${pattern}' at index '${index}' for key '${keyName}' needs to be in a valid URL route between 1-255 characters and contain only URL safe characters such as: a-z, 0-9 and '\' and '-'.`,
188
- invalidIcon: (icon, keyName, index) => `The icon '${icon}' at index '${index}' for key '${keyName}' needs to be a defined resource of file type svg.`
187
+ invalidIcon: (icon, keyName, index) => `The icon '${icon}' at index '${index}' for key '${keyName}' needs to be a defined resource of file type svg.`,
188
+ renderMustBeNative: (keyName, index) => `The render property at index '${index}' for key '${keyName}' must be set to 'native' for global:ui modules.`
189
189
  }
190
190
  },
191
191
  resources: {
@@ -1 +1 @@
1
- {"version":3,"file":"validate-global-ui.d.ts","sourceRoot":"","sources":["../../../../src/validators/modules-validators/global/validate-global-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAkB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AA0BjE,eAAO,MAAM,gBAAgB,YAAa,OAAO,sBAAsB,MAAM,EAAE,KAAG,eAAe,EA2ChG,CAAC"}
1
+ {"version":3,"file":"validate-global-ui.d.ts","sourceRoot":"","sources":["../../../../src/validators/modules-validators/global/validate-global-ui.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAkB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AA0BjE,eAAO,MAAM,gBAAgB,YAAa,OAAO,sBAAsB,MAAM,EAAE,KAAG,eAAe,EA6ChG,CAAC"}
@@ -20,19 +20,22 @@ const validateGlobalUi = (modules, yamlContentByLine) => {
20
20
  return validationErrors;
21
21
  }
22
22
  globalUiModules.forEach((module, index) => {
23
- validationErrors.push(...(0, validateGlobalModules_1.validateRoute)(module.key, module.routePrefix, index, errorMessages).map((error) => ({
24
- message: error.message,
25
- reference: text_1.References.Modules,
26
- level: 'error',
27
- ...(0, utils_1.findPosition)(error.moduleKey, yamlContentByLine)
28
- })), ...(module.icon
29
- ? (0, validateGlobalModules_1.validateIcon)(module.key, module.icon, index, errorMessages).map((error) => ({
23
+ if (module.render !== 'native') {
24
+ validationErrors.push({
25
+ message: errorMessages.renderMustBeNative(module.key, index),
26
+ reference: text_1.References.Modules,
27
+ level: 'error',
28
+ ...(0, utils_1.findPosition)(module.key, yamlContentByLine)
29
+ });
30
+ }
31
+ if (module.icon) {
32
+ validationErrors.push(...(0, validateGlobalModules_1.validateIcon)(module.key, module.icon, index, errorMessages).map((error) => ({
30
33
  message: error.message,
31
34
  reference: text_1.References.Modules,
32
35
  level: 'error',
33
36
  ...(0, utils_1.findPosition)(error.moduleKey, yamlContentByLine)
34
- }))
35
- : []));
37
+ })));
38
+ }
36
39
  });
37
40
  return validationErrors;
38
41
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/manifest",
3
- "version": "12.5.0",
3
+ "version": "12.6.0-next.0",
4
4
  "description": "Definitions and validations of the Forge manifest",
5
5
  "main": "out/index.js",
6
6
  "scripts": {