@forge/manifest 12.9.0-next.6 → 12.9.1-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 +28 -0
- package/out/text/errors.d.ts +2 -0
- package/out/text/errors.d.ts.map +1 -1
- package/out/text/errors.js +3 -1
- package/out/validators/modules-validators/bitbucket/index.d.ts.map +1 -1
- package/out/validators/modules-validators/bitbucket/index.js +3 -1
- package/out/validators/modules-validators/bitbucket/validateWorkspacePageProperties.d.ts +4 -0
- package/out/validators/modules-validators/bitbucket/validateWorkspacePageProperties.d.ts.map +1 -0
- package/out/validators/modules-validators/bitbucket/validateWorkspacePageProperties.js +51 -0
- package/out/validators/modules-validators/confluence/index.d.ts.map +1 -1
- package/out/validators/modules-validators/confluence/index.js +3 -4
- package/out/validators/modules-validators/constants.d.ts +3 -0
- package/out/validators/modules-validators/constants.d.ts.map +1 -0
- package/out/validators/modules-validators/constants.js +5 -0
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# @forge/manifest
|
|
2
2
|
|
|
3
|
+
## 12.9.1-next.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 814b8fe: add validation rules for bitbucket workspace page modules
|
|
8
|
+
- 55c1371: bump cheerio to ^1.2.0 to pull in a patched undici (>=7.19.0, resolving to a fixed release) and remediate CVE-2026-1525
|
|
9
|
+
NodeJS requirement bumped from 20.0.0 to >=20.18.1
|
|
10
|
+
- 1a461c3: Update manifest definitions
|
|
11
|
+
|
|
12
|
+
## 12.9.0
|
|
13
|
+
|
|
14
|
+
### Minor Changes
|
|
15
|
+
|
|
16
|
+
- 8197e66: rename shards to targets in overrides
|
|
17
|
+
- 723fab8: Added first-class rovo:mcp support to the forge-manifest package
|
|
18
|
+
- 4493006: Update validation for global:ui
|
|
19
|
+
- enforce app.compatibility
|
|
20
|
+
- remove installationTarget check
|
|
21
|
+
- 9f3add6: Forge skill path validation
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- ccdcfc3: Add `customerServiceManagement:crmImport` module type and corresponding CLI templates (UI Kit + Custom UI).
|
|
26
|
+
- 5beb8ad: Add multi-entry resource bundling support for worker runtime
|
|
27
|
+
- f1f11f0: Update manifest definitions
|
|
28
|
+
- b7b1f36: Update manifest definitions
|
|
29
|
+
- ee691bf: Update manifest definitions
|
|
30
|
+
|
|
3
31
|
## 12.9.0-next.6
|
|
4
32
|
|
|
5
33
|
### Patch Changes
|
package/out/text/errors.d.ts
CHANGED
|
@@ -59,6 +59,8 @@ export declare const errors: {
|
|
|
59
59
|
bitbucket: {
|
|
60
60
|
endpointOnlySupportSystemToken: (moduleKey: string, endpointModuleKey: string) => string;
|
|
61
61
|
endpointNeedsRoute: (moduleKey: string, endpointModuleKey: string) => string;
|
|
62
|
+
propertyOnlyAllowedForModule: (property: string, moduleType: string, allowedModuleType: string) => string;
|
|
63
|
+
singleEntryOfModuleWithProperty: (moduleType: string, property: string, moduleKeys: string[]) => string;
|
|
62
64
|
};
|
|
63
65
|
confluence: {
|
|
64
66
|
multipleProperty: (property: string, moduleKey: string, keys: string[]) => string;
|
package/out/text/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG1C,eAAO,MAAM,MAAM;8BACS,MAAM,KAAG,MAAM;+BACd,MAAM,EAAE,KAAG,MAAM;2BAIvB,MAAM;yBAEN,MAAM,GAAG,SAAS,QAAQ,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,KAAG,MAAM;;uBAO3E,MAAM,EAAE,EAAE,GAAG,SAAS,KAAG,MAAM;4BAI1B,MAAM,EAAE,KAAG,MAAM;mCACV,MAAM,SAAS,MAAM,mBAAmB,MAAM,KAAG,MAAM;mDAIvC,MAAM,KAAG,MAAM;4BAEtC,MAAM,EAAE,GAAG,SAAS,KAAG,MAAM;+CAIV,MAAM;6CACR,MAAM,gBAAgB,MAAM;qCAEpC,MAAM;2CACA,MAAM;6CACJ,MAAM;;;qCAGd,MAAM,SAAS,MAAM,KAAG,MAAM;4CAEvB,MAAM,SAAS,MAAM,KAAG,MAAM;0DAEhB,MAAM,YAAY,MAAM,mBAAmB,MAAM,EAAE,KAAG,MAAM;oDAIlE,MAAM,OAAO,MAAM,KAAG,MAAM;kDAE9B,MAAM,OAAO,MAAM,KAAG,MAAM;wCAEtC,MAAM,SAAS,MAAM,EAAE,KAAG,MAAM;0CAI9B,MAAM;2CAEL,MAAM,KAAG,MAAM;0CAEhB,MAAM,SAAS,MAAM,KAAG,MAAM;+CAEzB,MAAM,KAAG,MAAM;wCAEtB,MAAM,KAAG,MAAM;gCAEvB,MAAM,KAAG,MAAM;;;uCAIR,MAAM,KAAG,MAAM;0CACZ,MAAM,KAAG,MAAM;;;gCAGzB,MAAM,KAAG,MAAM;6BACpB,MAAM;+BACJ,MAAM;iCACF,MAAM,KAAG,MAAM;yCACP,MAAM,eAAe,MAAM,KAAG,MAAM;yCAEpC,MAAM,eAAe,MAAM,KAAG,MAAM;wCAErC,MAAM,cAAc,MAAM,KAAG,MAAM;yCAElC,MAAM,eAAe,MAAM,KAAG,MAAM;wCAErC,MAAM,aAAa,MAAM,KAAG,MAAM;oCAEtC,MAAM;6CACG,MAAM,KAAG,MAAM;0EAEc,MAAM,KAAG,MAAM;4DAE7B,MAAM,KAAG,MAAM;6DAEd,MAAM,KAAG,MAAM;;yCAGrC,MAAM,KAAG,MAAM;iCAEvB,MAAM,KAAG,MAAM;4CACJ,MAAM,gBAAgB,MAAM,KAAG,MAAM;sCAE3C,MAAM,gBAAgB,MAAM,gBAAgB,MAAM,KAAG,MAAM;;;wDAIzC,MAAM,qBAAqB,MAAM,KAAG,MAAM;4CAEtD,MAAM,qBAAqB,MAAM,KAAG,MAAM;;;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"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"}
|
package/out/text/errors.js
CHANGED
|
@@ -72,7 +72,9 @@ exports.errors = {
|
|
|
72
72
|
},
|
|
73
73
|
bitbucket: {
|
|
74
74
|
endpointOnlySupportSystemToken: (moduleKey, endpointModuleKey) => `Bitbucket module: '${moduleKey}' using remote endpoint: '${endpointModuleKey}' only supports appSystemToken. Update appUserToken to false.`,
|
|
75
|
-
endpointNeedsRoute: (moduleKey, endpointModuleKey) => `Bitbucket module: '${moduleKey}' using remote endpoint: '${endpointModuleKey}' requires 'route' parameter
|
|
75
|
+
endpointNeedsRoute: (moduleKey, endpointModuleKey) => `Bitbucket module: '${moduleKey}' using remote endpoint: '${endpointModuleKey}' requires 'route' parameter.`,
|
|
76
|
+
propertyOnlyAllowedForModule: (property, moduleType, allowedModuleType) => `Bitbucket module: '${moduleType}' does not support '${property}'. '${property}' is only allowed on '${allowedModuleType}'.`,
|
|
77
|
+
singleEntryOfModuleWithProperty: (moduleType, property, moduleKeys) => `Only one '${moduleType}' module can set '${property}' to true. Modules with '${property}' set to true: ${moduleKeys.join(', ')}.`
|
|
76
78
|
},
|
|
77
79
|
confluence: {
|
|
78
80
|
multipleProperty: (property, moduleKey, keys) => `There can be only 1 ${moduleKey} module which designates "${property}": true. Modules containing designation: ${keys.join(', ')}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/validators/modules-validators/bitbucket/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/validators/modules-validators/bitbucket/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAKjD,eAAO,MAAM,wBAAwB,YAAa,OAAO,sBAAsB,MAAM,EAAE,KAAG,eAAe,EAMxG,CAAC"}
|
|
@@ -3,10 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.validateBitbucketModules = void 0;
|
|
4
4
|
const validateBackendModuleEndpoints_1 = require("./validateBackendModuleEndpoints");
|
|
5
5
|
const validateFileViewerRegexPatterns_1 = require("./validateFileViewerRegexPatterns");
|
|
6
|
+
const validateWorkspacePageProperties_1 = require("./validateWorkspacePageProperties");
|
|
6
7
|
const validateBitbucketModules = (modules, yamlContentByLine) => {
|
|
7
8
|
return [
|
|
8
9
|
...(0, validateBackendModuleEndpoints_1.validateBackendModuleEndpoints)(modules, yamlContentByLine),
|
|
9
|
-
...(0, validateFileViewerRegexPatterns_1.validateFileViewerRegexPatterns)(modules, yamlContentByLine)
|
|
10
|
+
...(0, validateFileViewerRegexPatterns_1.validateFileViewerRegexPatterns)(modules, yamlContentByLine),
|
|
11
|
+
...(0, validateWorkspacePageProperties_1.validateWorkspacePageProperties)(modules, yamlContentByLine)
|
|
10
12
|
];
|
|
11
13
|
};
|
|
12
14
|
exports.validateBitbucketModules = validateBitbucketModules;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Modules } from '../../../schema/manifest';
|
|
2
|
+
import { ValidationError } from '../../../types';
|
|
3
|
+
export declare const validateWorkspacePageProperties: (modules: Modules, yamlContentByLine?: string[]) => ValidationError[];
|
|
4
|
+
//# sourceMappingURL=validateWorkspacePageProperties.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateWorkspacePageProperties.d.ts","sourceRoot":"","sources":["../../../../src/validators/modules-validators/bitbucket/validateWorkspacePageProperties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAkB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AA2DjE,eAAO,MAAM,+BAA+B,YAAa,OAAO,sBAAsB,MAAM,EAAE,KAAG,eAAe,EA2B/G,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateWorkspacePageProperties = void 0;
|
|
4
|
+
const text_1 = require("../../../text");
|
|
5
|
+
const types_1 = require("../../../types");
|
|
6
|
+
const utils_1 = require("../../../utils");
|
|
7
|
+
const constants_1 = require("../constants");
|
|
8
|
+
const BITBUCKET_MODULE_TYPES = Object.values(types_1.AllModuleTypes).filter((moduleType) => moduleType.startsWith('bitbucket:'));
|
|
9
|
+
const hasProperty = (module, property) => {
|
|
10
|
+
return typeof module === 'object' && module !== null && Object.prototype.hasOwnProperty.call(module, property);
|
|
11
|
+
};
|
|
12
|
+
const validateSingleAllowedProperty = (modules, moduleType, property, yamlContentByLine) => {
|
|
13
|
+
const modulesWithPropertySetToTrue = (modules[moduleType] || []).filter((module) => module[property]);
|
|
14
|
+
if (modulesWithPropertySetToTrue.length <= 1) {
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
const moduleKeys = modulesWithPropertySetToTrue.map((module) => module.key);
|
|
18
|
+
return modulesWithPropertySetToTrue.map((module) => {
|
|
19
|
+
return {
|
|
20
|
+
message: text_1.errors.modules.bitbucket.singleEntryOfModuleWithProperty(moduleType, property, moduleKeys),
|
|
21
|
+
reference: text_1.References.Modules,
|
|
22
|
+
level: 'error',
|
|
23
|
+
...(0, utils_1.findPosition)(module.key, yamlContentByLine)
|
|
24
|
+
};
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
const validatePropertyNotAllowedForModules = (modules, property, allowedModuleType, yamlContentByLine) => {
|
|
28
|
+
const validationErrors = [];
|
|
29
|
+
BITBUCKET_MODULE_TYPES.filter((moduleType) => moduleType !== allowedModuleType).forEach((moduleType) => {
|
|
30
|
+
(modules[moduleType] || [])
|
|
31
|
+
.filter((module) => hasProperty(module, property))
|
|
32
|
+
.forEach((module) => {
|
|
33
|
+
validationErrors.push({
|
|
34
|
+
message: text_1.errors.modules.bitbucket.propertyOnlyAllowedForModule(property, moduleType, allowedModuleType),
|
|
35
|
+
reference: text_1.References.Modules,
|
|
36
|
+
level: 'error',
|
|
37
|
+
...(0, utils_1.findPosition)(module.key, yamlContentByLine)
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
return validationErrors;
|
|
42
|
+
};
|
|
43
|
+
const validateWorkspacePageProperties = (modules, yamlContentByLine) => {
|
|
44
|
+
return [
|
|
45
|
+
...validateSingleAllowedProperty(modules, types_1.AllModuleTypes.BitbucketWorkspaceSettingsMenuPage, constants_1.USE_AS_CONFIG, yamlContentByLine),
|
|
46
|
+
...validateSingleAllowedProperty(modules, types_1.AllModuleTypes.BitbucketWorkspaceGlobalPage, constants_1.USE_AS_GET_STARTED, yamlContentByLine),
|
|
47
|
+
...validatePropertyNotAllowedForModules(modules, constants_1.USE_AS_CONFIG, types_1.AllModuleTypes.BitbucketWorkspaceSettingsMenuPage, yamlContentByLine),
|
|
48
|
+
...validatePropertyNotAllowedForModules(modules, constants_1.USE_AS_GET_STARTED, types_1.AllModuleTypes.BitbucketWorkspaceGlobalPage, yamlContentByLine)
|
|
49
|
+
];
|
|
50
|
+
};
|
|
51
|
+
exports.validateWorkspacePageProperties = validateWorkspacePageProperties;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/validators/modules-validators/confluence/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAkB,eAAe,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/validators/modules-validators/confluence/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAkB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAcjE,eAAO,MAAM,yBAAyB,YAAa,OAAO,sBAAsB,MAAM,EAAE,KAAG,eAAe,EAwCzG,CAAC"}
|
|
@@ -9,10 +9,9 @@ const validateCrossModulePropertyUniqueness_1 = require("./validateCrossModulePr
|
|
|
9
9
|
const validateCustomContentHierarchy_1 = require("./validateCustomContentHierarchy");
|
|
10
10
|
const validateMacroAutoConvert_1 = require("./validateMacroAutoConvert");
|
|
11
11
|
const validateFullPage_1 = require("./validateFullPage");
|
|
12
|
+
const constants_1 = require("../constants");
|
|
12
13
|
const ROUTE = 'route';
|
|
13
14
|
const ROUTE_FULL_PAGE = 'routePrefix';
|
|
14
|
-
const USE_AS_CONFIG = 'useAsConfig';
|
|
15
|
-
const USE_AS_GET_STARTED = 'useAsGetStarted';
|
|
16
15
|
const KEYBOARD_SHORTCUT_ACCELERATOR = 'keyboardShortcut.accelerator';
|
|
17
16
|
const validateConfluenceModules = (modules, yamlContentByLine) => {
|
|
18
17
|
const validationErrors = [];
|
|
@@ -27,8 +26,8 @@ const validateConfluenceModules = (modules, yamlContentByLine) => {
|
|
|
27
26
|
[types_1.AllModuleTypes.ConfluenceFullPage].forEach((moduleType) => {
|
|
28
27
|
validationErrors.push(...(0, validatePropertyUniqueness_1.validatePropertyUniqueness)(modules, moduleType, ROUTE_FULL_PAGE, yamlContentByLine));
|
|
29
28
|
});
|
|
30
|
-
validationErrors.push(...(0, validateSingleProperty_1.validateSingleProperty)(modules, types_1.AllModuleTypes.ConfluenceGlobalSettings, USE_AS_CONFIG, yamlContentByLine));
|
|
31
|
-
validationErrors.push(...(0, validateSingleProperty_1.validateSingleProperty)(modules, types_1.AllModuleTypes.ConfluenceGlobalSettings, USE_AS_GET_STARTED, yamlContentByLine));
|
|
29
|
+
validationErrors.push(...(0, validateSingleProperty_1.validateSingleProperty)(modules, types_1.AllModuleTypes.ConfluenceGlobalSettings, constants_1.USE_AS_CONFIG, yamlContentByLine));
|
|
30
|
+
validationErrors.push(...(0, validateSingleProperty_1.validateSingleProperty)(modules, types_1.AllModuleTypes.ConfluenceGlobalSettings, constants_1.USE_AS_GET_STARTED, yamlContentByLine));
|
|
32
31
|
validationErrors.push(...(0, validateCustomContentHierarchy_1.validateCustomContentHierarchy)(modules, types_1.AllModuleTypes.ConfluenceCustomContent, yamlContentByLine));
|
|
33
32
|
validationErrors.push(...(0, validateCrossModulePropertyUniqueness_1.validateCrossModulePropertyUniqueness)(modules, KEYBOARD_SHORTCUT_ACCELERATOR, yamlContentByLine), ...(0, validateKeyboardShortcuts_1.validateKeyboardShortcuts)(modules, yamlContentByLine));
|
|
34
33
|
validationErrors.push(...(0, validateMacroAutoConvert_1.validateMacroAutoConvert)(modules, yamlContentByLine));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/validators/modules-validators/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,gBAAgB,CAAC;AAC3C,eAAO,MAAM,kBAAkB,oBAAoB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forge/manifest",
|
|
3
|
-
"version": "12.9.
|
|
3
|
+
"version": "12.9.1-next.0",
|
|
4
4
|
"description": "Definitions and validations of the Forge manifest",
|
|
5
5
|
"main": "out/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"@sentry/node": "7.106.0",
|
|
29
29
|
"ajv": "^8.18.0",
|
|
30
30
|
"ajv-formats": "2.1.1",
|
|
31
|
-
"cheerio": "^1.
|
|
31
|
+
"cheerio": "^1.2.0",
|
|
32
32
|
"glob": "^13.0.0",
|
|
33
33
|
"lodash": "^4.17.21",
|
|
34
34
|
"mime-types": "^2.1.35",
|