@forge/manifest 3.4.0-next.4 → 3.4.0-next.5
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 +6 -0
- package/out/processor/basic-validation-processor.d.ts.map +1 -1
- package/out/processor/basic-validation-processor.js +2 -1
- package/out/processor/full-validation-processor.d.ts.map +1 -1
- package/out/processor/full-validation-processor.js +2 -1
- package/out/schema/manifest-schema.json +66 -0
- package/out/schema/manifest.d.ts +26 -0
- package/out/text/errors.d.ts +3 -0
- package/out/text/errors.d.ts.map +1 -1
- package/out/text/errors.js +3 -0
- package/out/types/module-types.d.ts +1 -0
- package/out/types/module-types.d.ts.map +1 -1
- package/out/types/module-types.js +1 -0
- package/out/validators/entity-property-validator.d.ts +6 -0
- package/out/validators/entity-property-validator.d.ts.map +1 -0
- package/out/validators/entity-property-validator.js +35 -0
- package/out/validators/index.d.ts +1 -0
- package/out/validators/index.d.ts.map +1 -1
- package/out/validators/index.js +1 -0
- package/out/validators/modules-validator.d.ts.map +1 -1
- package/out/validators/modules-validator.js +1 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/basic-validation-processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,qBAAa,wBAAyB,SAAQ,2BAA2B,CAAC,mBAAmB,CAAC;;
|
|
1
|
+
{"version":3,"file":"basic-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/basic-validation-processor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,qBAAa,wBAAyB,SAAQ,2BAA2B,CAAC,mBAAmB,CAAC;;CAS7F"}
|
|
@@ -10,7 +10,8 @@ class BasicValidationProcessor extends abstract_validation_processor_1.AbstractV
|
|
|
10
10
|
super([
|
|
11
11
|
new validators_1.FileValidator(),
|
|
12
12
|
new validators_1.YamlValidator(),
|
|
13
|
-
new validators_1.SchemaValidator(BASIC_SCHEMA)
|
|
13
|
+
new validators_1.SchemaValidator(BASIC_SCHEMA),
|
|
14
|
+
new validators_1.EntityPropertyValidator()
|
|
14
15
|
]);
|
|
15
16
|
}
|
|
16
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"full-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/full-validation-processor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"full-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/full-validation-processor.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGpD,qBAAa,uBAAwB,SAAQ,2BAA2B,CAAC,cAAc,CAAC;;CAkBvF"}
|
|
@@ -21,7 +21,8 @@ class FullValidationProcessor extends abstract_validation_processor_1.AbstractVa
|
|
|
21
21
|
new validators_1.PermissionsValidator(),
|
|
22
22
|
new deprecated_permissions_validator_1.DeprecatedPermissionsValidator(),
|
|
23
23
|
new validators_1.DisplayConditionsValidator(DISPLAY_CONDITIONS_SCHEMA),
|
|
24
|
-
new validators_1.ProvidersValidator()
|
|
24
|
+
new validators_1.ProvidersValidator(),
|
|
25
|
+
new validators_1.EntityPropertyValidator()
|
|
25
26
|
]);
|
|
26
27
|
}
|
|
27
28
|
}
|
|
@@ -1361,6 +1361,72 @@
|
|
|
1361
1361
|
},
|
|
1362
1362
|
"minItems": 1
|
|
1363
1363
|
},
|
|
1364
|
+
"jira:entityProperty": {
|
|
1365
|
+
"type": "array",
|
|
1366
|
+
"items": {
|
|
1367
|
+
"type": "object",
|
|
1368
|
+
"properties": {
|
|
1369
|
+
"propertyKey": {
|
|
1370
|
+
"minLength": 1,
|
|
1371
|
+
"maxLength": 255,
|
|
1372
|
+
"pattern": "^[a-zA-Z0-9-_]+$",
|
|
1373
|
+
"type": "string"
|
|
1374
|
+
},
|
|
1375
|
+
"entityType": {
|
|
1376
|
+
"default": "issue",
|
|
1377
|
+
"enum": [
|
|
1378
|
+
"issue",
|
|
1379
|
+
"project",
|
|
1380
|
+
"user"
|
|
1381
|
+
],
|
|
1382
|
+
"type": "string"
|
|
1383
|
+
},
|
|
1384
|
+
"values": {
|
|
1385
|
+
"type": "array",
|
|
1386
|
+
"items": {
|
|
1387
|
+
"type": "object",
|
|
1388
|
+
"properties": {
|
|
1389
|
+
"path": {
|
|
1390
|
+
"minLength": 1,
|
|
1391
|
+
"maxLength": 255,
|
|
1392
|
+
"pattern": "^[a-zA-Z0-9-_]+$",
|
|
1393
|
+
"type": "string"
|
|
1394
|
+
},
|
|
1395
|
+
"type": {
|
|
1396
|
+
"enum": [
|
|
1397
|
+
"date",
|
|
1398
|
+
"number",
|
|
1399
|
+
"string",
|
|
1400
|
+
"text",
|
|
1401
|
+
"user"
|
|
1402
|
+
],
|
|
1403
|
+
"type": "string"
|
|
1404
|
+
},
|
|
1405
|
+
"searchAlias": {
|
|
1406
|
+
"minLength": 1,
|
|
1407
|
+
"maxLength": 255,
|
|
1408
|
+
"pattern": "^[a-zA-Z0-9-_]+$",
|
|
1409
|
+
"type": "string"
|
|
1410
|
+
}
|
|
1411
|
+
},
|
|
1412
|
+
"required": [
|
|
1413
|
+
"path",
|
|
1414
|
+
"type"
|
|
1415
|
+
]
|
|
1416
|
+
}
|
|
1417
|
+
},
|
|
1418
|
+
"key": {
|
|
1419
|
+
"$ref": "#/definitions/ModuleKeySchema"
|
|
1420
|
+
}
|
|
1421
|
+
},
|
|
1422
|
+
"required": [
|
|
1423
|
+
"propertyKey",
|
|
1424
|
+
"values",
|
|
1425
|
+
"key"
|
|
1426
|
+
]
|
|
1427
|
+
},
|
|
1428
|
+
"minItems": 1
|
|
1429
|
+
},
|
|
1364
1430
|
"jira:customField": {
|
|
1365
1431
|
"type": "array",
|
|
1366
1432
|
"items": {
|
package/out/schema/manifest.d.ts
CHANGED
|
@@ -803,6 +803,32 @@ export interface Modules {
|
|
|
803
803
|
[k: string]: unknown;
|
|
804
804
|
}[]
|
|
805
805
|
];
|
|
806
|
+
'jira:entityProperty'?: [
|
|
807
|
+
{
|
|
808
|
+
propertyKey: string;
|
|
809
|
+
entityType?: 'issue' | 'project' | 'user';
|
|
810
|
+
values: {
|
|
811
|
+
path: string;
|
|
812
|
+
type: 'date' | 'number' | 'string' | 'text' | 'user';
|
|
813
|
+
searchAlias?: string;
|
|
814
|
+
[k: string]: unknown;
|
|
815
|
+
}[];
|
|
816
|
+
key: ModuleKeySchema;
|
|
817
|
+
[k: string]: unknown;
|
|
818
|
+
},
|
|
819
|
+
...{
|
|
820
|
+
propertyKey: string;
|
|
821
|
+
entityType?: 'issue' | 'project' | 'user';
|
|
822
|
+
values: {
|
|
823
|
+
path: string;
|
|
824
|
+
type: 'date' | 'number' | 'string' | 'text' | 'user';
|
|
825
|
+
searchAlias?: string;
|
|
826
|
+
[k: string]: unknown;
|
|
827
|
+
}[];
|
|
828
|
+
key: ModuleKeySchema;
|
|
829
|
+
[k: string]: unknown;
|
|
830
|
+
}[]
|
|
831
|
+
];
|
|
806
832
|
'jira:customField'?: [
|
|
807
833
|
(
|
|
808
834
|
| {
|
package/out/text/errors.d.ts
CHANGED
|
@@ -36,6 +36,9 @@ export declare const errors: {
|
|
|
36
36
|
missingProperty: (key: string) => string;
|
|
37
37
|
invalidProperty: (key: string) => string;
|
|
38
38
|
};
|
|
39
|
+
jiraEntityProperty: {
|
|
40
|
+
maxExtractionsPerApp: (limit: number) => string;
|
|
41
|
+
};
|
|
39
42
|
fullPage: {
|
|
40
43
|
children: (moduleType: string) => string;
|
|
41
44
|
};
|
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":"AAGA,eAAO,MAAM,MAAM;8BACS,MAAM,KAAG,MAAM;2BACpB,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,0CAA4B,MAAM;mDAIvC,MAAM,KAAG,MAAM;;;qCAI7B,MAAM,SAAS,MAAM,KAAG,MAAM;4CAEvB,MAAM,SAAS,MAAM,KAAG,MAAM;wCAElC,MAAM,SAAS,MAAM,EAAE,KAAG,MAAM;;;uCAMjC,MAAM,KAAG,MAAM;oCACpB,MAAM;iCAEP,MAAM,KAAG,MAAM;4CACJ,MAAM,KAAG,MAAM;;;gCAG3B,MAAM,KAAG,MAAM;6BACpB,MAAM;+BACJ,MAAM;iCACF,MAAM,KAAG,MAAM;yCACP,MAAM,eAAe,MAAM,KAAG,MAAM;yCAEpC,MAAM,eAAe,MAAM,KAAG,MAAM;;yCAGtC,MAAM,KAAG,MAAM;iCAEvB,MAAM,KAAG,MAAM;4CACJ,MAAM,gBAAgB,MAAM,KAAG,MAAM;sCAE3C,MAAM,gBAAgB,MAAM,gBAAgB,MAAM,KAAG,MAAM;;;mCAI9D,MAAM,KAAG,MAAM;mCAEf,MAAM,KAAG,MAAM;;;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;8BACS,MAAM,KAAG,MAAM;2BACpB,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,0CAA4B,MAAM;mDAIvC,MAAM,KAAG,MAAM;;;qCAI7B,MAAM,SAAS,MAAM,KAAG,MAAM;4CAEvB,MAAM,SAAS,MAAM,KAAG,MAAM;wCAElC,MAAM,SAAS,MAAM,EAAE,KAAG,MAAM;;;uCAMjC,MAAM,KAAG,MAAM;oCACpB,MAAM;iCAEP,MAAM,KAAG,MAAM;4CACJ,MAAM,KAAG,MAAM;;;gCAG3B,MAAM,KAAG,MAAM;6BACpB,MAAM;+BACJ,MAAM;iCACF,MAAM,KAAG,MAAM;yCACP,MAAM,eAAe,MAAM,KAAG,MAAM;yCAEpC,MAAM,eAAe,MAAM,KAAG,MAAM;;yCAGtC,MAAM,KAAG,MAAM;iCAEvB,MAAM,KAAG,MAAM;4CACJ,MAAM,gBAAgB,MAAM,KAAG,MAAM;sCAE3C,MAAM,gBAAgB,MAAM,gBAAgB,MAAM,KAAG,MAAM;;;mCAI9D,MAAM,KAAG,MAAM;mCAEf,MAAM,KAAG,MAAM;;;0CAIR,MAAM,KAAG,MAAM;;;mCAItB,MAAM,KAAG,MAAM;;;mCAIf,MAAM,EAAE,KAAG,MAAM;;;qCAIf,MAAM,KAAG,MAAM;2CAET,MAAM,KAAG,MAAM;;;oCAGtB,MAAM,KAAG,MAAM;;oCAEjB,MAAM,SAAS,MAAM,KAAG,MAAM;qCAI7B,MAAM,YAAY,MAAM,KAAG,MAAM;;;;;mCAQ/B,MAAM,OAAO,MAAM,KAAG,MAAM;iCAE9B,MAAM,OAAO,MAAM,KAAG,MAAM;oCAEzB,MAAM,OAAO,MAAM,KAAG,MAAM;gDAEhB,MAAM,KAAG,MAAM;uCAExB,MAAM,KAAG,MAAM;;;;;;;;kCAQpB,MAAM,UAAU,MAAM,KAAG,MAAM;gCAEjC,MAAM,KAAG,MAAM;2CAEJ,MAAM,eAAe,MAAM,KAAG,MAAM;;;uCAI1C,MAAM;uCAEJ,MAAM,KAAG,MAAM;qCAEnB,MAAM;;CAGpC,CAAC;AAEF,oBAAY,UAAU;IACpB,eAAe,2BAA2B;IAC1C,eAAe,wBAAwB;IACvC,WAAW,4BAA4B;IACvC,WAAW,+BAA+B;IAC1C,aAAa,8BAA8B;IAC3C,OAAO,0BAA0B;IACjC,cAAc,kCAAkC;IAChD,mBAAmB,0BAA0B;IAC7C,SAAS,4BAA4B;IACrC,SAAS,4BAA4B;IACrC,UAAU,wBAAwB;IAClC,GAAG,8BAA8B;CAClC"}
|
package/out/text/errors.js
CHANGED
|
@@ -48,6 +48,9 @@ exports.errors = {
|
|
|
48
48
|
missingProperty: (key) => `${types_1.AllModuleTypes.JiraWorkflowValidator} module '${key}' must have either a function or expression.`,
|
|
49
49
|
invalidProperty: (key) => `${types_1.AllModuleTypes.JiraWorkflowValidator} module '${key}' can only have either a function or expression`
|
|
50
50
|
},
|
|
51
|
+
jiraEntityProperty: {
|
|
52
|
+
maxExtractionsPerApp: (limit) => `All ${types_1.AllModuleTypes.JiraEntityProperty} modules combined cannot declare more than ${limit} values.`
|
|
53
|
+
},
|
|
51
54
|
fullPage: {
|
|
52
55
|
children: (moduleType) => `Only a single entry of the ${moduleType} module can be defined in the manifest`
|
|
53
56
|
},
|
|
@@ -13,6 +13,7 @@ export declare enum AllModuleTypes {
|
|
|
13
13
|
ConfluenceHomepageFeed = "confluence:homepageFeed",
|
|
14
14
|
ConfluenceSpacePage = "confluence:spacePage",
|
|
15
15
|
ConfluenceSpaceSettings = "confluence:spaceSettings",
|
|
16
|
+
JiraEntityProperty = "jira:entityProperty",
|
|
16
17
|
JiraWorkflowValidator = "jira:workflowValidator",
|
|
17
18
|
JiraCustomField = "jira:customField",
|
|
18
19
|
JiraCustomFieldType = "jira:customFieldType",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-types.d.ts","sourceRoot":"","sources":["../../src/types/module-types.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,YAAY,kBAAkB;IAC9B,WAAW,iBAAiB;IAC5B,cAAc,oBAAoB;IAClC,YAAY,kBAAkB;IAC9B,oBAAoB,0BAA0B;IAC9C,QAAQ,cAAc;IACtB,uBAAuB,6BAA6B;IACpD,2BAA2B,iCAAiC;IAC5D,qBAAqB,2BAA2B;IAChD,wBAAwB,8BAA8B;IACtD,oBAAoB,0BAA0B;IAC9C,sBAAsB,4BAA4B;IAClD,mBAAmB,yBAAyB;IAC5C,uBAAuB,6BAA6B;IACpD,qBAAqB,2BAA2B;IAChD,eAAe,qBAAqB;IACpC,mBAAmB,yBAAyB;IAC5C,eAAe,qBAAqB;IACpC,iBAAiB,uBAAuB;IACxC,eAAe,qBAAqB;IACpC,cAAc,oBAAoB;IAClC,aAAa,mBAAmB;IAChC,eAAe,qBAAqB;IACpC,uBAAuB,6BAA6B;IACpD,cAAc,oBAAoB;IAClC,mBAAmB,yBAAyB;IAC5C,gBAAgB,sBAAsB;IACtC,oBAAoB,0BAA0B;IAC9C,iBAAiB,uBAAuB;IACxC,eAAe,qBAAqB;IAEpC,8BAA8B,oCAAoC;IAClE,wCAAwC,8CAA8C;IACtF,6CAA6C,mDAAmD;IAChG,sCAAsC,4CAA4C;IAClF,iCAAiC,uCAAuC;IACxE,oCAAoC,0CAA0C;IAC9E,iCAAiC,uCAAuC;IACxE,uCAAuC,6CAA6C;IAEpF,qBAAqB,4BAA4B;IACjD,gCAAgC,uCAAuC;IACvE,uBAAuB,8BAA8B;IACrD,6BAA6B,oCAAoC;IACjE,gCAAgC,uCAAuC;IACvE,0BAA0B,iCAAiC;IAC3D,2BAA2B,kCAAkC;IAC7D,oCAAoC,2CAA2C;IAC/E,+BAA+B,sCAAsC;IACrE,iCAAiC,wCAAwC;IACzE,oCAAoC,2CAA2C;IAC/E,4BAA4B,mCAAmC;IAC/D,mBAAmB,0BAA0B;IAC7C,oBAAoB,2BAA2B;IAC/C,2BAA2B,kCAAkC;IAC7D,2BAA2B,kCAAkC;IAC7D,8BAA8B,qCAAqC;IACnE,4CAA4C,mDAAmD;IAC/F,iCAAiC,wCAAwC;IACzE,mCAAmC,0CAA0C;IAC7E,8BAA8B,qCAAqC;IACnE,wBAAwB,+BAA+B;IACvD,qCAAqC,4CAA4C;IACjF,6BAA6B,oCAAoC;IACjE,kCAAkC,yCAAyC;IAC3E,gCAAgC,uCAAuC;IACvE,+BAA+B,sCAAsC;IACrE,oCAAoC,2CAA2C;IAC/E,yBAAyB,gCAAgC;IACzD,0BAA0B,iCAAiC;IAC3D,4BAA4B,mCAAmC;IAC/D,yBAAyB,gCAAgC;IACzD,wBAAwB,+BAA+B;IACvD,kBAAkB,yBAAyB;IAC3C,gCAAgC,uCAAuC;IACvE,qCAAqC,4CAA4C;IACjF,8BAA8B,qCAAqC;IACnE,+BAA+B,sCAAsC;IACrE,sCAAsC,6CAA6C;IACnF,4BAA4B,mCAAmC;IAC/D,6BAA6B,oCAAoC;IACjE,yBAAyB,gCAAgC;IACzD,2BAA2B,kCAAkC;IAC7D,iCAAiC,wCAAwC;IACzE,sBAAsB,6BAA6B;IACnD,iCAAiC,wCAAwC;IACzE,oCAAoC,2CAA2C;IAC/E,iCAAiC,wCAAwC;IACzE,0BAA0B,iCAAiC;IAC3D,oBAAoB,2BAA2B;IAC/C,sBAAsB,6BAA6B;IACnD,mBAAmB,0BAA0B;IAC7C,0BAA0B,iCAAiC;CAC5D;AAED,eAAO,MAAM,iBAAiB,kBAAgC,CAAC;AAE/D,eAAO,MAAM,uBAAuB,UAAwE,CAAC"}
|
|
1
|
+
{"version":3,"file":"module-types.d.ts","sourceRoot":"","sources":["../../src/types/module-types.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,YAAY,kBAAkB;IAC9B,WAAW,iBAAiB;IAC5B,cAAc,oBAAoB;IAClC,YAAY,kBAAkB;IAC9B,oBAAoB,0BAA0B;IAC9C,QAAQ,cAAc;IACtB,uBAAuB,6BAA6B;IACpD,2BAA2B,iCAAiC;IAC5D,qBAAqB,2BAA2B;IAChD,wBAAwB,8BAA8B;IACtD,oBAAoB,0BAA0B;IAC9C,sBAAsB,4BAA4B;IAClD,mBAAmB,yBAAyB;IAC5C,uBAAuB,6BAA6B;IACpD,kBAAkB,wBAAwB;IAC1C,qBAAqB,2BAA2B;IAChD,eAAe,qBAAqB;IACpC,mBAAmB,yBAAyB;IAC5C,eAAe,qBAAqB;IACpC,iBAAiB,uBAAuB;IACxC,eAAe,qBAAqB;IACpC,cAAc,oBAAoB;IAClC,aAAa,mBAAmB;IAChC,eAAe,qBAAqB;IACpC,uBAAuB,6BAA6B;IACpD,cAAc,oBAAoB;IAClC,mBAAmB,yBAAyB;IAC5C,gBAAgB,sBAAsB;IACtC,oBAAoB,0BAA0B;IAC9C,iBAAiB,uBAAuB;IACxC,eAAe,qBAAqB;IAEpC,8BAA8B,oCAAoC;IAClE,wCAAwC,8CAA8C;IACtF,6CAA6C,mDAAmD;IAChG,sCAAsC,4CAA4C;IAClF,iCAAiC,uCAAuC;IACxE,oCAAoC,0CAA0C;IAC9E,iCAAiC,uCAAuC;IACxE,uCAAuC,6CAA6C;IAEpF,qBAAqB,4BAA4B;IACjD,gCAAgC,uCAAuC;IACvE,uBAAuB,8BAA8B;IACrD,6BAA6B,oCAAoC;IACjE,gCAAgC,uCAAuC;IACvE,0BAA0B,iCAAiC;IAC3D,2BAA2B,kCAAkC;IAC7D,oCAAoC,2CAA2C;IAC/E,+BAA+B,sCAAsC;IACrE,iCAAiC,wCAAwC;IACzE,oCAAoC,2CAA2C;IAC/E,4BAA4B,mCAAmC;IAC/D,mBAAmB,0BAA0B;IAC7C,oBAAoB,2BAA2B;IAC/C,2BAA2B,kCAAkC;IAC7D,2BAA2B,kCAAkC;IAC7D,8BAA8B,qCAAqC;IACnE,4CAA4C,mDAAmD;IAC/F,iCAAiC,wCAAwC;IACzE,mCAAmC,0CAA0C;IAC7E,8BAA8B,qCAAqC;IACnE,wBAAwB,+BAA+B;IACvD,qCAAqC,4CAA4C;IACjF,6BAA6B,oCAAoC;IACjE,kCAAkC,yCAAyC;IAC3E,gCAAgC,uCAAuC;IACvE,+BAA+B,sCAAsC;IACrE,oCAAoC,2CAA2C;IAC/E,yBAAyB,gCAAgC;IACzD,0BAA0B,iCAAiC;IAC3D,4BAA4B,mCAAmC;IAC/D,yBAAyB,gCAAgC;IACzD,wBAAwB,+BAA+B;IACvD,kBAAkB,yBAAyB;IAC3C,gCAAgC,uCAAuC;IACvE,qCAAqC,4CAA4C;IACjF,8BAA8B,qCAAqC;IACnE,+BAA+B,sCAAsC;IACrE,sCAAsC,6CAA6C;IACnF,4BAA4B,mCAAmC;IAC/D,6BAA6B,oCAAoC;IACjE,yBAAyB,gCAAgC;IACzD,2BAA2B,kCAAkC;IAC7D,iCAAiC,wCAAwC;IACzE,sBAAsB,6BAA6B;IACnD,iCAAiC,wCAAwC;IACzE,oCAAoC,2CAA2C;IAC/E,iCAAiC,wCAAwC;IACzE,0BAA0B,iCAAiC;IAC3D,oBAAoB,2BAA2B;IAC/C,sBAAsB,6BAA6B;IACnD,mBAAmB,0BAA0B;IAC7C,0BAA0B,iCAAiC;CAC5D;AAED,eAAO,MAAM,iBAAiB,kBAAgC,CAAC;AAE/D,eAAO,MAAM,uBAAuB,UAAwE,CAAC"}
|
|
@@ -17,6 +17,7 @@ var AllModuleTypes;
|
|
|
17
17
|
AllModuleTypes["ConfluenceHomepageFeed"] = "confluence:homepageFeed";
|
|
18
18
|
AllModuleTypes["ConfluenceSpacePage"] = "confluence:spacePage";
|
|
19
19
|
AllModuleTypes["ConfluenceSpaceSettings"] = "confluence:spaceSettings";
|
|
20
|
+
AllModuleTypes["JiraEntityProperty"] = "jira:entityProperty";
|
|
20
21
|
AllModuleTypes["JiraWorkflowValidator"] = "jira:workflowValidator";
|
|
21
22
|
AllModuleTypes["JiraCustomField"] = "jira:customField";
|
|
22
23
|
AllModuleTypes["JiraCustomFieldType"] = "jira:customFieldType";
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ValidatorInterface } from './validator-interface';
|
|
2
|
+
import { ManifestObject, ManifestValidationResult } from '../types';
|
|
3
|
+
export declare class EntityPropertyValidator<T> implements ValidatorInterface<ManifestObject<T> | undefined, T> {
|
|
4
|
+
validate(manifest: ManifestObject<T> | undefined): ManifestValidationResult<T>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=entity-property-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entity-property-validator.d.ts","sourceRoot":"","sources":["../../src/validators/entity-property-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAkB,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AASrG,qBAAa,uBAAuB,CAAC,CAAC,CAAE,YAAW,kBAAkB,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;IACrG,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,wBAAwB,CAAC,CAAC,CAAC;CAoC/E"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EntityPropertyValidator = void 0;
|
|
4
|
+
const types_1 = require("../types");
|
|
5
|
+
const text_1 = require("../text");
|
|
6
|
+
const utils_1 = require("../utils");
|
|
7
|
+
const isManifestWithModules = (manifest) => {
|
|
8
|
+
var _a;
|
|
9
|
+
return !!((_a = manifest === null || manifest === void 0 ? void 0 : manifest.typedContent) === null || _a === void 0 ? void 0 : _a['modules']);
|
|
10
|
+
};
|
|
11
|
+
class EntityPropertyValidator {
|
|
12
|
+
validate(manifest) {
|
|
13
|
+
var _a;
|
|
14
|
+
if (!(manifest === null || manifest === void 0 ? void 0 : manifest.typedContent)) {
|
|
15
|
+
return {
|
|
16
|
+
success: false,
|
|
17
|
+
manifestObject: manifest
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
const validationErrors = [];
|
|
21
|
+
if (isManifestWithModules(manifest)) {
|
|
22
|
+
const { yamlContentByLine, typedContent: { modules } } = manifest;
|
|
23
|
+
const appValuesLength = ((_a = modules[types_1.AllModuleTypes.JiraEntityProperty]) === null || _a === void 0 ? void 0 : _a.reduce((acc, module) => acc + module.values.length, 0)) || 0;
|
|
24
|
+
if (appValuesLength > 30) {
|
|
25
|
+
validationErrors.push(Object.assign({ message: text_1.errors.modules.jiraEntityProperty.maxExtractionsPerApp(30), reference: text_1.References.Modules, level: 'error' }, utils_1.findPosition('app', yamlContentByLine)));
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return {
|
|
29
|
+
success: validationErrors.length === 0,
|
|
30
|
+
manifestObject: manifest,
|
|
31
|
+
errors: validationErrors
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.EntityPropertyValidator = EntityPropertyValidator;
|
|
@@ -11,4 +11,5 @@ export * from './providers-validator';
|
|
|
11
11
|
export * from './permissions-validator';
|
|
12
12
|
export * from './connect-remote-validator';
|
|
13
13
|
export * from './connect-authentication-validator';
|
|
14
|
+
export * from './entity-property-validator';
|
|
14
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oCAAoC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC;AACxC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC"}
|
package/out/validators/index.js
CHANGED
|
@@ -14,3 +14,4 @@ tslib_1.__exportStar(require("./providers-validator"), exports);
|
|
|
14
14
|
tslib_1.__exportStar(require("./permissions-validator"), exports);
|
|
15
15
|
tslib_1.__exportStar(require("./connect-remote-validator"), exports);
|
|
16
16
|
tslib_1.__exportStar(require("./connect-authentication-validator"), exports);
|
|
17
|
+
tslib_1.__exportStar(require("./entity-property-validator"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules-validator.d.ts","sourceRoot":"","sources":["../../src/validators/modules-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,cAAc,EAAE,wBAAwB,EAAsC,MAAM,UAAU,CAAC;AAGxH,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"modules-validator.d.ts","sourceRoot":"","sources":["../../src/validators/modules-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,cAAc,EAAE,wBAAwB,EAAsC,MAAM,UAAU,CAAC;AAGxH,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAI3D,qBAAa,gBACX,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IACzF,OAAO,CAAC,oBAAoB,CAA0C;IAEtE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GAAG,wBAAwB,CAAC,cAAc,CAAC;CA2NzG"}
|
|
@@ -6,7 +6,6 @@ const utils_1 = require("../utils");
|
|
|
6
6
|
const text_1 = require("../text");
|
|
7
7
|
const fs_1 = require("fs");
|
|
8
8
|
const path_1 = require("path");
|
|
9
|
-
const utils_2 = require("../utils");
|
|
10
9
|
class ModulesValidator {
|
|
11
10
|
constructor() {
|
|
12
11
|
this.functionHandlerRegex = /^([a-zA-Z0-9-_]+)\.([a-zA-Z0-9-_]+)$/;
|
|
@@ -49,7 +48,7 @@ class ModulesValidator {
|
|
|
49
48
|
validModules.forEach((moduleKey) => {
|
|
50
49
|
var _a;
|
|
51
50
|
(_a = modules[moduleKey]) === null || _a === void 0 ? void 0 : _a.forEach((module) => {
|
|
52
|
-
|
|
51
|
+
utils_1.findInvalidFunctionReferences(module, _function).forEach((functionKey) => {
|
|
53
52
|
validationErrors.push(Object.assign({ message: text_1.errors.modules.wrongFunctionReference(moduleKey, functionKey), reference: text_1.References.Modules, level: 'error' }, utils_1.findPosition(moduleKey, yamlContentByLine)));
|
|
54
53
|
});
|
|
55
54
|
});
|