@forge/manifest 9.5.0-next.2 → 9.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.
Files changed (37) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/out/builder/processor-builder.d.ts +4 -1
  3. package/out/builder/processor-builder.d.ts.map +1 -1
  4. package/out/builder/processor-builder.js +16 -4
  5. package/out/processor/basic-validation-processor.d.ts +2 -1
  6. package/out/processor/basic-validation-processor.d.ts.map +1 -1
  7. package/out/processor/basic-validation-processor.js +4 -2
  8. package/out/processor/deprecated-egress-permissions-validation-processor.d.ts +6 -0
  9. package/out/processor/deprecated-egress-permissions-validation-processor.d.ts.map +1 -0
  10. package/out/processor/deprecated-egress-permissions-validation-processor.js +18 -0
  11. package/out/processor/full-validation-processor.d.ts +2 -1
  12. package/out/processor/full-validation-processor.d.ts.map +1 -1
  13. package/out/processor/full-validation-processor.js +4 -2
  14. package/out/schema/manifest-schema.json +126 -0
  15. package/out/schema/manifest.d.ts +215 -0
  16. package/out/scopes/shipyard-scopes.json +3 -0
  17. package/out/text/errors.d.ts +6 -0
  18. package/out/text/errors.d.ts.map +1 -1
  19. package/out/text/errors.js +11 -0
  20. package/out/types/index.d.ts +1 -0
  21. package/out/types/index.d.ts.map +1 -1
  22. package/out/types/index.js +1 -0
  23. package/out/types/lint-options.d.ts +4 -0
  24. package/out/types/lint-options.d.ts.map +1 -0
  25. package/out/types/lint-options.js +2 -0
  26. package/out/types/module-types.d.ts +2 -1
  27. package/out/types/module-types.d.ts.map +1 -1
  28. package/out/types/module-types.js +1 -0
  29. package/out/types/validation-types.d.ts +2 -1
  30. package/out/types/validation-types.d.ts.map +1 -1
  31. package/out/types/validation-types.js +1 -0
  32. package/out/validators/permissions-validator.d.ts.map +1 -1
  33. package/out/validators/permissions-validator.js +27 -0
  34. package/out/validators/runtime-version-validator.d.ts +13 -0
  35. package/out/validators/runtime-version-validator.d.ts.map +1 -0
  36. package/out/validators/runtime-version-validator.js +36 -0
  37. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @forge/manifest
2
2
 
3
+ ## 9.5.0-next.4
4
+
5
+ ### Minor Changes
6
+
7
+ - 64befbb: Refactor runtime version manifest check into a linter
8
+
9
+ ## 9.5.0-next.3
10
+
11
+ ### Minor Changes
12
+
13
+ - 0c92352: Added graph:smartLink module
14
+
15
+ ### Patch Changes
16
+
17
+ - 18eab48: Update manifest definitions
18
+
3
19
  ## 9.5.0-next.2
4
20
 
5
21
  ### Minor Changes
@@ -1,4 +1,4 @@
1
- import { ValidationTypes } from '../types';
1
+ import { ValidationTypes, LintOptions } from '../types';
2
2
  import { ManifestSchema } from '../schema/manifest';
3
3
  import { BasicManifestSchema } from '../schema/basic-manifest';
4
4
  import { ProcessorInterface } from '../processor';
@@ -6,10 +6,13 @@ import { BuilderInterface } from './builder-interface';
6
6
  export declare class ProcessorBuilder implements BuilderInterface<ProcessorInterface<ManifestSchema | BasicManifestSchema>> {
7
7
  private static cache;
8
8
  private validationType;
9
+ private lintOptions;
9
10
  private constructor();
10
11
  static instance(): ProcessorBuilder;
11
12
  withValidation(type: ValidationTypes): ProcessorBuilder;
13
+ withOptions(options: LintOptions): ProcessorBuilder;
12
14
  private buildInternal;
15
+ private createCacheKey;
13
16
  build(): ProcessorInterface<ManifestSchema | BasicManifestSchema>;
14
17
  }
15
18
  //# sourceMappingURL=processor-builder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"processor-builder.d.ts","sourceRoot":"","sources":["../../src/builder/processor-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAGL,kBAAkB,EAEnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAIvD,qBAAa,gBAAiB,YAAW,gBAAgB,CAAC,kBAAkB,CAAC,cAAc,GAAG,mBAAmB,CAAC,CAAC;IACjH,OAAO,CAAC,MAAM,CAAC,KAAK,CAA6F;IAEjH,OAAO,CAAC,cAAc,CAAkB;IAExC,OAAO;IAIP,MAAM,CAAC,QAAQ,IAAI,gBAAgB;IAInC,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,gBAAgB;IAKvD,OAAO,CAAC,aAAa;IAiBrB,KAAK,IAAI,kBAAkB,CAAC,cAAc,GAAG,mBAAmB,CAAC;CAUlE"}
1
+ {"version":3,"file":"processor-builder.d.ts","sourceRoot":"","sources":["../../src/builder/processor-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAGL,kBAAkB,EAEnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKvD,qBAAa,gBAAiB,YAAW,gBAAgB,CAAC,kBAAkB,CAAC,cAAc,GAAG,mBAAmB,CAAC,CAAC;IACjH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAoF;IAExG,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,WAAW,CAAmB;IAEtC,OAAO;IAIP,MAAM,CAAC,QAAQ,IAAI,gBAAgB;IAInC,cAAc,CAAC,IAAI,EAAE,eAAe,GAAG,gBAAgB;IAKvD,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,gBAAgB;IAKnD,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,cAAc;IAItB,KAAK,IAAI,kBAAkB,CAAC,cAAc,GAAG,mBAAmB,CAAC;CAWlE"}
@@ -5,9 +5,11 @@ const types_1 = require("../types");
5
5
  const processor_1 = require("../processor");
6
6
  const deprecated_csp_method_validation_processor_1 = require("../processor/deprecated-csp-method-validation-processor");
7
7
  const remote_compute_validation_processor_1 = require("../processor/remote-compute-validation-processor");
8
+ const deprecated_egress_permissions_validation_processor_1 = require("../processor/deprecated-egress-permissions-validation-processor");
8
9
  class ProcessorBuilder {
9
10
  static cache = new Map();
10
11
  validationType;
12
+ lintOptions = {};
11
13
  constructor() {
12
14
  this.validationType = types_1.ValidationTypes.FULL;
13
15
  }
@@ -18,29 +20,39 @@ class ProcessorBuilder {
18
20
  this.validationType = type;
19
21
  return this;
20
22
  }
23
+ withOptions(options) {
24
+ this.lintOptions = options;
25
+ return this;
26
+ }
21
27
  buildInternal() {
22
28
  switch (this.validationType) {
23
29
  case types_1.ValidationTypes.BASIC:
24
- return new processor_1.BasicValidationProcessor();
30
+ return new processor_1.BasicValidationProcessor(this.lintOptions);
25
31
  case types_1.ValidationTypes.FULL:
26
- return new processor_1.FullValidationProcessor();
32
+ return new processor_1.FullValidationProcessor(this.lintOptions);
27
33
  case types_1.ValidationTypes.FORGE_REMOTE_COMPUTE:
28
34
  return new remote_compute_validation_processor_1.RemoteComputeValidationProcessor();
29
35
  case types_1.ValidationTypes.PRODUCT_TRIGGER:
30
36
  return new processor_1.ProductTriggerValidationProcessor();
31
37
  case types_1.ValidationTypes.DEPRECATED_CSP_METHOD:
32
38
  return new deprecated_csp_method_validation_processor_1.DeprecatedCspMethodValidationProcessor();
39
+ case types_1.ValidationTypes.DEPRECATED_EGRESS_PERMISSIONS:
40
+ return new deprecated_egress_permissions_validation_processor_1.DeprecatedEgressPermissionsValidationProcessor();
33
41
  default:
34
42
  throw new Error('Unsupported validation type');
35
43
  }
36
44
  }
45
+ createCacheKey() {
46
+ return `${this.validationType}-${JSON.stringify(this.lintOptions)}`;
47
+ }
37
48
  build() {
38
- const cached = ProcessorBuilder.cache.get(this.validationType);
49
+ const cacheKey = this.createCacheKey();
50
+ const cached = ProcessorBuilder.cache.get(cacheKey);
39
51
  if (cached) {
40
52
  return cached;
41
53
  }
42
54
  const processor = this.buildInternal();
43
- ProcessorBuilder.cache.set(this.validationType, processor);
55
+ ProcessorBuilder.cache.set(cacheKey, processor);
44
56
  return processor;
45
57
  }
46
58
  }
@@ -1,6 +1,7 @@
1
1
  import { AbstractValidationProcessor } from './abstract-validation-processor';
2
2
  import { BasicManifestSchema } from '../schema/basic-manifest';
3
+ import { LintOptions } from '../types';
3
4
  export declare class BasicValidationProcessor extends AbstractValidationProcessor<BasicManifestSchema> {
4
- constructor();
5
+ constructor(lintOptions: LintOptions);
5
6
  }
6
7
  //# sourceMappingURL=basic-validation-processor.d.ts.map
@@ -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;AAG/D,qBAAa,wBAAyB,SAAQ,2BAA2B,CAAC,mBAAmB,CAAC;;CAU7F"}
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;AAG/D,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,qBAAa,wBAAyB,SAAQ,2BAA2B,CAAC,mBAAmB,CAAC;gBAChF,WAAW,EAAE,WAAW;CAUrC"}
@@ -6,14 +6,16 @@ const validators_1 = require("../validators");
6
6
  const BASIC_SCHEMA = tslib_1.__importStar(require("../schema/basic-manifest-schema.json"));
7
7
  const abstract_validation_processor_1 = require("./abstract-validation-processor");
8
8
  const jql_function_validator_1 = require("../validators/jql-function-validator");
9
+ const runtime_version_validator_1 = require("../validators/runtime-version-validator");
9
10
  class BasicValidationProcessor extends abstract_validation_processor_1.AbstractValidationProcessor {
10
- constructor() {
11
+ constructor(lintOptions) {
11
12
  super([
12
13
  new validators_1.FileValidator(),
13
14
  new validators_1.YamlValidator(),
14
15
  new validators_1.SchemaValidator(BASIC_SCHEMA),
15
16
  new validators_1.EntityPropertyValidator(),
16
- new jql_function_validator_1.JqlFunctionValidator()
17
+ new jql_function_validator_1.JqlFunctionValidator(),
18
+ new runtime_version_validator_1.RuntimeVersionValidator(lintOptions)
17
19
  ]);
18
20
  }
19
21
  }
@@ -0,0 +1,6 @@
1
+ import { AbstractValidationProcessor } from './abstract-validation-processor';
2
+ import { ManifestSchema } from '../schema/manifest';
3
+ export declare class DeprecatedEgressPermissionsValidationProcessor extends AbstractValidationProcessor<ManifestSchema> {
4
+ constructor();
5
+ }
6
+ //# sourceMappingURL=deprecated-egress-permissions-validation-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deprecated-egress-permissions-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/deprecated-egress-permissions-validation-processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGpD,qBAAa,8CAA+C,SAAQ,2BAA2B,CAAC,cAAc,CAAC;;CAS9G"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeprecatedEgressPermissionsValidationProcessor = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const validators_1 = require("../validators");
6
+ const abstract_validation_processor_1 = require("./abstract-validation-processor");
7
+ const FULL_SCHEMA = tslib_1.__importStar(require("../schema/manifest-schema.json"));
8
+ class DeprecatedEgressPermissionsValidationProcessor extends abstract_validation_processor_1.AbstractValidationProcessor {
9
+ constructor() {
10
+ super([
11
+ new validators_1.FileValidator(),
12
+ new validators_1.YamlValidator(),
13
+ new validators_1.SchemaValidator(FULL_SCHEMA),
14
+ new validators_1.PermissionsValidator()
15
+ ]);
16
+ }
17
+ }
18
+ exports.DeprecatedEgressPermissionsValidationProcessor = DeprecatedEgressPermissionsValidationProcessor;
@@ -1,6 +1,7 @@
1
1
  import { AbstractValidationProcessor } from './abstract-validation-processor';
2
2
  import { ManifestSchema } from '../schema/manifest';
3
+ import { LintOptions } from '../types';
3
4
  export declare class FullValidationProcessor extends AbstractValidationProcessor<ManifestSchema> {
4
- constructor();
5
+ constructor(lintOptions: LintOptions);
5
6
  }
6
7
  //# sourceMappingURL=full-validation-processor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"full-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/full-validation-processor.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAOpD,qBAAa,uBAAwB,SAAQ,2BAA2B,CAAC,cAAc,CAAC;;CA0BvF"}
1
+ {"version":3,"file":"full-validation-processor.d.ts","sourceRoot":"","sources":["../../src/processor/full-validation-processor.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQpD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,qBAAa,uBAAwB,SAAQ,2BAA2B,CAAC,cAAc,CAAC;gBAC1E,WAAW,EAAE,WAAW;CA0BrC"}
@@ -12,8 +12,9 @@ const app_features_validator_1 = require("../validators/app-features-validator")
12
12
  const data_classification_validator_1 = require("../validators/data-classification-validator");
13
13
  const remote_regions_validator_1 = require("../validators/remote-regions-validator");
14
14
  const remote_auth_scopes_validator_1 = require("../validators/remote-auth-scopes-validator");
15
+ const runtime_version_validator_1 = require("../validators/runtime-version-validator");
15
16
  class FullValidationProcessor extends abstract_validation_processor_1.AbstractValidationProcessor {
16
- constructor() {
17
+ constructor(lintOptions) {
17
18
  super([
18
19
  new validators_1.FileValidator(),
19
20
  new validators_1.YamlValidator(),
@@ -35,7 +36,8 @@ class FullValidationProcessor extends abstract_validation_processor_1.AbstractVa
35
36
  new data_classification_validator_1.DataClassificationValidator(),
36
37
  new validators_1.TranslationsValidator(),
37
38
  new remote_regions_validator_1.RemoteRegionsValidator(),
38
- new remote_auth_scopes_validator_1.RemoteAuthScopesValidator()
39
+ new remote_auth_scopes_validator_1.RemoteAuthScopesValidator(),
40
+ new runtime_version_validator_1.RuntimeVersionValidator(lintOptions)
39
41
  ]);
40
42
  }
41
43
  }
@@ -5050,6 +5050,66 @@
5050
5050
  },
5051
5051
  "minItems": 1
5052
5052
  },
5053
+ "confluence:contentProperty": {
5054
+ "type": "array",
5055
+ "items": {
5056
+ "type": "object",
5057
+ "properties": {
5058
+ "propertyKey": {
5059
+ "minLength": 1,
5060
+ "maxLength": 255,
5061
+ "type": "string"
5062
+ },
5063
+ "values": {
5064
+ "type": "array",
5065
+ "items": {
5066
+ "type": "object",
5067
+ "properties": {
5068
+ "path": {
5069
+ "minLength": 1,
5070
+ "maxLength": 255,
5071
+ "type": "string"
5072
+ },
5073
+ "type": {
5074
+ "type": "string",
5075
+ "enum": [
5076
+ "number",
5077
+ "string",
5078
+ "text",
5079
+ "user",
5080
+ "date"
5081
+ ]
5082
+ },
5083
+ "searchAlias": {
5084
+ "minLength": 1,
5085
+ "maxLength": 255,
5086
+ "pattern": "^[a-zA-Z0-9-_]+$",
5087
+ "type": "string"
5088
+ }
5089
+ },
5090
+ "required": [
5091
+ "path",
5092
+ "type"
5093
+ ]
5094
+ }
5095
+ },
5096
+ "key": {
5097
+ "$ref": "#/definitions/ModuleKeySchema"
5098
+ }
5099
+ },
5100
+ "required": [
5101
+ "propertyKey",
5102
+ "values",
5103
+ "key"
5104
+ ],
5105
+ "not": {
5106
+ "required": [
5107
+ "unlicensedAccess"
5108
+ ]
5109
+ }
5110
+ },
5111
+ "minItems": 1
5112
+ },
5053
5113
  "confluence:pageBanner": {
5054
5114
  "type": "array",
5055
5115
  "items": {
@@ -26595,6 +26655,72 @@
26595
26655
  },
26596
26656
  "minItems": 1
26597
26657
  },
26658
+ "graph:smartLink": {
26659
+ "type": "array",
26660
+ "items": {
26661
+ "type": "object",
26662
+ "properties": {
26663
+ "name": {
26664
+ "type": "string",
26665
+ "description": "The name to display as App in Smart Link."
26666
+ },
26667
+ "icon": {
26668
+ "type": "string",
26669
+ "description": "icon to use for Smart Links"
26670
+ },
26671
+ "function": {
26672
+ "type": "string",
26673
+ "minLength": 1,
26674
+ "maxLength": 255,
26675
+ "description": "The key of the function that should be invoked for resolving URL to Smart Link.",
26676
+ "pattern": "^[a-zA-Z0-9-._]+$"
26677
+ },
26678
+ "domains": {
26679
+ "type": "array",
26680
+ "items": {
26681
+ "type": "string"
26682
+ },
26683
+ "minItems": 1,
26684
+ "maxItems": 10,
26685
+ "description": "The domains that this object provider should match.",
26686
+ "title": "domains"
26687
+ },
26688
+ "subdomains": {
26689
+ "type": "boolean",
26690
+ "title": "subdomain",
26691
+ "description": "Should sub-domains be allowed."
26692
+ },
26693
+ "patterns": {
26694
+ "type": "array",
26695
+ "items": {
26696
+ "type": "string"
26697
+ },
26698
+ "minItems": 1,
26699
+ "maxItems": 20,
26700
+ "description": "Patterns used for matching URLs that are resolvable to entities.",
26701
+ "title": "patterns"
26702
+ },
26703
+ "key": {
26704
+ "$ref": "#/definitions/ModuleKeySchema"
26705
+ }
26706
+ },
26707
+ "required": [
26708
+ "name",
26709
+ "icon",
26710
+ "function",
26711
+ "domains",
26712
+ "patterns",
26713
+ "key"
26714
+ ],
26715
+ "additionalProperties": false,
26716
+ "not": {
26717
+ "required": [
26718
+ "unlicensedAccess"
26719
+ ]
26720
+ }
26721
+ },
26722
+ "minItems": 1
26723
+ },
26598
26724
  "graph:connector": {
26599
26725
  "type": "array",
26600
26726
  "items": {
@@ -523,6 +523,159 @@ export type ActionExtensionKey = string;
523
523
  * The key for an action extension in your descriptor / manifest.
524
524
  */
525
525
  export type ActionExtensionKey1 = string;
526
+ /**
527
+ * The domains that this object provider should match.
528
+ */
529
+ export type Domains =
530
+ | [string]
531
+ | [string, string]
532
+ | [string, string, string]
533
+ | [string, string, string, string]
534
+ | [string, string, string, string, string]
535
+ | [string, string, string, string, string, string]
536
+ | [string, string, string, string, string, string, string]
537
+ | [string, string, string, string, string, string, string, string]
538
+ | [string, string, string, string, string, string, string, string, string]
539
+ | [string, string, string, string, string, string, string, string, string, string];
540
+ /**
541
+ * Should sub-domains be allowed.
542
+ */
543
+ export type Subdomain = boolean;
544
+ /**
545
+ * Patterns used for matching URLs that are resolvable to entities.
546
+ */
547
+ export type Patterns =
548
+ | [string]
549
+ | [string, string]
550
+ | [string, string, string]
551
+ | [string, string, string, string]
552
+ | [string, string, string, string, string]
553
+ | [string, string, string, string, string, string]
554
+ | [string, string, string, string, string, string, string]
555
+ | [string, string, string, string, string, string, string, string]
556
+ | [string, string, string, string, string, string, string, string, string]
557
+ | [string, string, string, string, string, string, string, string, string, string]
558
+ | [string, string, string, string, string, string, string, string, string, string, string]
559
+ | [string, string, string, string, string, string, string, string, string, string, string, string]
560
+ | [string, string, string, string, string, string, string, string, string, string, string, string, string]
561
+ | [string, string, string, string, string, string, string, string, string, string, string, string, string, string]
562
+ | [
563
+ string,
564
+ string,
565
+ string,
566
+ string,
567
+ string,
568
+ string,
569
+ string,
570
+ string,
571
+ string,
572
+ string,
573
+ string,
574
+ string,
575
+ string,
576
+ string,
577
+ string
578
+ ]
579
+ | [
580
+ string,
581
+ string,
582
+ string,
583
+ string,
584
+ string,
585
+ string,
586
+ string,
587
+ string,
588
+ string,
589
+ string,
590
+ string,
591
+ string,
592
+ string,
593
+ string,
594
+ string,
595
+ string
596
+ ]
597
+ | [
598
+ string,
599
+ string,
600
+ string,
601
+ string,
602
+ string,
603
+ string,
604
+ string,
605
+ string,
606
+ string,
607
+ string,
608
+ string,
609
+ string,
610
+ string,
611
+ string,
612
+ string,
613
+ string,
614
+ string
615
+ ]
616
+ | [
617
+ string,
618
+ string,
619
+ string,
620
+ string,
621
+ string,
622
+ string,
623
+ string,
624
+ string,
625
+ string,
626
+ string,
627
+ string,
628
+ string,
629
+ string,
630
+ string,
631
+ string,
632
+ string,
633
+ string,
634
+ string
635
+ ]
636
+ | [
637
+ string,
638
+ string,
639
+ string,
640
+ string,
641
+ string,
642
+ string,
643
+ string,
644
+ string,
645
+ string,
646
+ string,
647
+ string,
648
+ string,
649
+ string,
650
+ string,
651
+ string,
652
+ string,
653
+ string,
654
+ string,
655
+ string
656
+ ]
657
+ | [
658
+ string,
659
+ string,
660
+ string,
661
+ string,
662
+ string,
663
+ string,
664
+ string,
665
+ string,
666
+ string,
667
+ string,
668
+ string,
669
+ string,
670
+ string,
671
+ string,
672
+ string,
673
+ string,
674
+ string,
675
+ string,
676
+ string,
677
+ string
678
+ ];
526
679
  /**
527
680
  * The key for an extension in CaaS. That means that this is a reference to another extension in your descriptor / manifest.
528
681
  */
@@ -13401,6 +13554,30 @@ export interface Modules {
13401
13554
  }
13402
13555
  )[]
13403
13556
  ];
13557
+ 'confluence:contentProperty'?: [
13558
+ {
13559
+ propertyKey: string;
13560
+ values: {
13561
+ path: string;
13562
+ type: 'number' | 'string' | 'text' | 'user' | 'date';
13563
+ searchAlias?: string;
13564
+ [k: string]: unknown;
13565
+ }[];
13566
+ key: ModuleKeySchema;
13567
+ [k: string]: unknown;
13568
+ },
13569
+ ...{
13570
+ propertyKey: string;
13571
+ values: {
13572
+ path: string;
13573
+ type: 'number' | 'string' | 'text' | 'user' | 'date';
13574
+ searchAlias?: string;
13575
+ [k: string]: unknown;
13576
+ }[];
13577
+ key: ModuleKeySchema;
13578
+ [k: string]: unknown;
13579
+ }[]
13580
+ ];
13404
13581
  'confluence:pageBanner'?: [
13405
13582
  (
13406
13583
  | {
@@ -22417,6 +22594,44 @@ export interface Modules {
22417
22594
  key: ModuleKeySchema;
22418
22595
  }[]
22419
22596
  ];
22597
+ 'graph:smartLink'?: [
22598
+ {
22599
+ /**
22600
+ * The name to display as App in Smart Link.
22601
+ */
22602
+ name: string;
22603
+ /**
22604
+ * icon to use for Smart Links
22605
+ */
22606
+ icon: string;
22607
+ /**
22608
+ * The key of the function that should be invoked for resolving URL to Smart Link.
22609
+ */
22610
+ function: string;
22611
+ domains: Domains;
22612
+ subdomains?: Subdomain;
22613
+ patterns: Patterns;
22614
+ key: ModuleKeySchema;
22615
+ },
22616
+ ...{
22617
+ /**
22618
+ * The name to display as App in Smart Link.
22619
+ */
22620
+ name: string;
22621
+ /**
22622
+ * icon to use for Smart Links
22623
+ */
22624
+ icon: string;
22625
+ /**
22626
+ * The key of the function that should be invoked for resolving URL to Smart Link.
22627
+ */
22628
+ function: string;
22629
+ domains: Domains;
22630
+ subdomains?: Subdomain;
22631
+ patterns: Patterns;
22632
+ key: ModuleKeySchema;
22633
+ }[]
22634
+ ];
22420
22635
  'graph:connector'?: [
22421
22636
  {
22422
22637
  /**
@@ -40,6 +40,7 @@
40
40
  "delete:deployment-info:jira",
41
41
  "delete:design:jira",
42
42
  "delete:dev-info:jira",
43
+ "delete:devops-component-info:jira",
43
44
  "delete:document-info:jira",
44
45
  "delete:embed:confluence",
45
46
  "delete:entitlement:jira-service-management",
@@ -188,6 +189,7 @@
188
189
  "read:deployment:jira-software",
189
190
  "read:design:jira",
190
191
  "read:dev-info:jira",
192
+ "read:devops-component-info:jira",
191
193
  "read:document-info:jira",
192
194
  "read:email-address:confluence",
193
195
  "read:email-address:jira",
@@ -412,6 +414,7 @@
412
414
  "write:deployment:jira-software",
413
415
  "write:design:jira",
414
416
  "write:dev-info:jira",
417
+ "write:devops-component-info:jira",
415
418
  "write:document-info:jira",
416
419
  "write:embed:confluence",
417
420
  "write:entitlement:jira-service-management",
@@ -22,6 +22,7 @@ export declare const errors: {
22
22
  missingEndpointPermissionFromScope: (scope: string, key: string) => string;
23
23
  missingRemotePermissionFromScope: (scope: string, key: string) => string;
24
24
  deprecatedPermission: (element: string, value: string[]) => string;
25
+ deprecatedEgressPermission: (key: string) => string;
25
26
  globalUrlNotRecommended: (element: string) => string;
26
27
  imageUrlNotRecommended: (element: string, value: string) => string;
27
28
  fontAndStylesNotRecommended: (element: string) => string;
@@ -194,6 +195,11 @@ export declare const errors: {
194
195
  internalI18nPropertyKeyFound: (propertyKey: string, moduleKey: string) => string;
195
196
  i18nValueValidationError: (keyName: string, languageLocaleCode: ForgeSupportedLocaleCode, errorMsg: string) => string;
196
197
  };
198
+ deprecation: {
199
+ runtime: {
200
+ message: (runtimeName: string) => string;
201
+ };
202
+ };
197
203
  };
198
204
  export declare enum References {
199
205
  MissingManifest = "manifest-file-required",
@@ -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":"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;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,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;oDAEtB,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;gCAE9B,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;oCAEzC,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;;;yCAI7C,MAAM,aAAa,MAAM,QAAQ,MAAM,EAAE,KAAG,MAAM;2CAIhD,MAAM,aAAa,MAAM,QAAQ,MAAM,EAAE,KAAG,MAAM;sDAEvC,MAAM,QAAQ,MAAM,EAAE,KAAG,MAAM;8DAEvB,MAAM,aAAa,MAAM,cAAc,MAAM,KAAG,MAAM;6EAEvC,MAAM,qBAAqB,MAAM,KAAG,MAAM;yEAE9C,MAAM,qBAAqB,MAAM,KAAG,MAAM;;wCAG/E,MAAM;sDACU,MAAM,KAAG,MAAM;iDAEpB,MAAM,KAAG,MAAM;2DAEL,MAAM,KAAG,MAAM;0CAEhC,MAAM,OAAO,MAAM,KAAG,MAAM;yDAEb,MAAM,KAAG,MAAM;uEAED,MAAM,KAAG,MAAM;;;sDAIhC,MAAM,WAAW,MAAM,SAAS,MAAM,KAAG,MAAM;6CAExD,MAAM,KAAG,MAAM;;;;mCAKvB,MAAM,KAAG,MAAM;mCAEf,MAAM,KAAG,MAAM;;;qCAIb,MAAM,KAAG,MAAM;;;0CAIV,MAAM,KAAG,MAAM;;;4CAIb,MAAM,EAAE,KAAG,MAAM;;;wCAIrB,cAAc,OAAO,MAAM,UAAU,MAAM,EAAE,KAAG,MAAM;;;mCAI3D,MAAM,EAAE,KAAG,MAAM;;;4DAIQ,MAAM,KAAG,MAAM;qCAEtC,MAAM,KAAG,MAAM;2CAET,MAAM,KAAG,MAAM;;;oCAGtB,MAAM,KAAG,MAAM;;oCAEjB,MAAM,SAAS,MAAM,KAAG,MAAM;qCAI7B,MAAM,YAAY,MAAM,KAAG,MAAM;;;;;iCAQrC,MAAM,KAAG,MAAM;;;;8DAKc,MAAM;8DAEJ,MAAM,qBAAqB,MAAM,KAAG,MAAM;kDAEtD,MAAM,qBAAqB,MAAM,KAAG,MAAM;;;wDAIpC,MAAM,KAAG,MAAM;yCAE9B,MAAM,KAAG,MAAM;;;oDAGJ,MAAM,aAAa,MAAM,KAAG,MAAM;0CAE5C,MAAM,KAAG,MAAM;;;yCAIhB,MAAM,KAAG,MAAM;;;kCAItB,MAAM,KAAG,MAAM;qCAEd,MAAM;iCACV,MAAM;;;;kCAID,MAAM,OAAO,MAAM,KAAG,MAAM;iCAE7B,MAAM,KAAG,MAAM;iCACf,MAAM,OAAO,MAAM,KAAG,MAAM;oCAEzB,MAAM,OAAO,MAAM,KAAG,MAAM;gDAEhB,MAAM,KAAG,MAAM;uCAExB,MAAM,KAAG,MAAM;+BACvB,MAAM,OAAO,MAAM,KAAG,MAAM;;;;;;;;kCASzB,MAAM,UAAU,MAAM,KAAG,MAAM;gCAEjC,MAAM,KAAG,MAAM;2CAEJ,MAAM,eAAe,MAAM,KAAG,MAAM;kCAE7C,MAAM,UAAU,MAAM,KAAG,MAAM;;;uCAI5B,MAAM;uCAEJ,MAAM,KAAG,MAAM;qCAEnB,MAAM;;6CAGA,MAAM;;;mDAIE,MAAM,KAAG,MAAM;iDAEnB,MAAM;;;;4CAKX,MAAM,SAAS,MAAM,KAAG,MAAM;4CAE9B,MAAM,KAAG,MAAM;4CACf,MAAM,SAAS,MAAM,KAAG,MAAM;+CAE3B,MAAM,aAAa,MAAM,SAAS,MAAM,KAAG,MAAM;yCAEvD,MAAM,SAAS,MAAM,KAAG,MAAM;4CAE3B,MAAM,SAAS,MAAM,KAAG,MAAM;gDAE1B,MAAM,aAAa,MAAM,KAAG,MAAM;4CAEtC,MAAM,SAAS,MAAM,KAAG,MAAM;;;2CAI7B,MAAM;;;gCAInB,MAAM;;;;;0DAKwB,wBAAwB,KAAG,MAAM;sDAErC,wBAAwB,KAAG,MAAM;kDAErC,wBAAwB,QAAQ,MAAM,KAAG,MAAM;mDAE9C,wBAAwB,KAAG,MAAM;mCAEjD,MAAM,KAAG,MAAM;;oDAEE,MAAM,aAAa,MAAM,KAAG,MAAM;4CAE1C,MAAM,sBAAsB,wBAAwB,YAAY,MAAM;;;;mCAKjF,MAAM;;;CAQlC,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,SAAS,4BAA4B;IACrC,SAAS,4BAA4B;IACrC,UAAU,wBAAwB;IAClC,GAAG,8BAA8B;IACjC,eAAe,0BAA0B;CAC1C"}
@@ -34,6 +34,7 @@ exports.errors = {
34
34
  missingEndpointPermissionFromScope: (scope, key) => `Endpoint module: '${key}' requires '${scope}' scope.`,
35
35
  missingRemotePermissionFromScope: (scope, key) => `Remote: '${key}' requires '${scope}' scope.`,
36
36
  deprecatedPermission: (element, value) => `There are deprecated scopes '${element}' in the manifest.yml file: '${value.join(', ')}'. You need to update this app to use new scopes and remove the deprecated scopes. Learn more at: https://go.atlassian.com/forge-permissions.`,
37
+ deprecatedEgressPermission: (key) => `There are deprecated egress permission entries for '${key}' in the manifest.yml file`,
37
38
  globalUrlNotRecommended: (element) => `Global URL usage detected for '${element}' permission in the manifest.yml file. We recommend using a more specific URL.`,
38
39
  imageUrlNotRecommended: (element, value) => `Unnecessary URL detected for '${element}' permission in the manifest.yml file. Your app should not need the URL '${value}' to work properly.`,
39
40
  fontAndStylesNotRecommended: (element) => `Unnecessary usage of '${element}' permission in the manifest.yml file. You can avoid using this permission by packaging the fonts and styles with your app code.`,
@@ -205,6 +206,16 @@ exports.errors = {
205
206
  missingTranslationsPropertyError: 'i18n key(s) found but translations property is missing in manifest file',
206
207
  internalI18nPropertyKeyFound: (propertyKey, moduleKey) => `Unexpected property key '${propertyKey}' found in '${moduleKey}' module`,
207
208
  i18nValueValidationError: (keyName, languageLocaleCode, errorMsg) => `i18n value for key '${keyName}' for locale '${languageLocaleCode}' ${errorMsg}`
209
+ },
210
+ deprecation: {
211
+ runtime: {
212
+ message: (runtimeName) => {
213
+ const changelogUrl = 'https://go.atlassian.com/forge-changelog';
214
+ return runtimeName === 'sandbox'
215
+ ? `The sandbox runtime is deprecated and will be removed in the future ${changelogUrl}/#CHANGE-789.`
216
+ : `The ${runtimeName} runtime is deprecated and will be removed in the future. Check ${changelogUrl} for more information on ${runtimeName} deprecation and removal dates.`;
217
+ }
218
+ }
208
219
  }
209
220
  };
210
221
  var References;
@@ -3,4 +3,5 @@ export * from './module-types';
3
3
  export * from './constants';
4
4
  export * from './validation-types';
5
5
  export * from './core-endpoint-types';
6
+ export * from './lint-options';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC"}
@@ -6,3 +6,4 @@ tslib_1.__exportStar(require("./module-types"), exports);
6
6
  tslib_1.__exportStar(require("./constants"), exports);
7
7
  tslib_1.__exportStar(require("./validation-types"), exports);
8
8
  tslib_1.__exportStar(require("./core-endpoint-types"), exports);
9
+ tslib_1.__exportStar(require("./lint-options"), exports);
@@ -0,0 +1,4 @@
1
+ export interface LintOptions {
2
+ deprecatedRuntimes?: string[];
3
+ }
4
+ //# sourceMappingURL=lint-options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lint-options.d.ts","sourceRoot":"","sources":["../../src/types/lint-options.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -175,7 +175,8 @@ export declare enum AllModuleTypes {
175
175
  RovoAgent = "rovo:agent",
176
176
  CoreAction = "core:action",
177
177
  GraphEntityProvider = "graph:entityProvider",
178
- GraphConnector = "graph:connector"
178
+ GraphConnector = "graph:connector",
179
+ SmartLinks = "graph:smartLink"
179
180
  }
180
181
  export declare const SUPPORTED_MODULES: AllModuleTypes[];
181
182
  export declare const SUPPORTED_PRODUCTS_ONLY: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"module-types.d.ts","sourceRoot":"","sources":["../../src/types/module-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module-types.d.ts","sourceRoot":"","sources":["../../src/types/module-types.ts"],"names":[],"mappings":"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"}
@@ -180,6 +180,7 @@ var AllModuleTypes;
180
180
  AllModuleTypes["CoreAction"] = "core:action";
181
181
  AllModuleTypes["GraphEntityProvider"] = "graph:entityProvider";
182
182
  AllModuleTypes["GraphConnector"] = "graph:connector";
183
+ AllModuleTypes["SmartLinks"] = "graph:smartLink";
183
184
  })(AllModuleTypes = exports.AllModuleTypes || (exports.AllModuleTypes = {}));
184
185
  exports.SUPPORTED_MODULES = Object.values(AllModuleTypes);
185
186
  exports.SUPPORTED_PRODUCTS_ONLY = [...new Set(exports.SUPPORTED_MODULES.map((module) => module.split(':')[0]))];
@@ -3,6 +3,7 @@ export declare enum ValidationTypes {
3
3
  FULL = "full",
4
4
  PRODUCT_TRIGGER = "product-trigger",
5
5
  DEPRECATED_CSP_METHOD = "deprecated-csp-method",
6
- FORGE_REMOTE_COMPUTE = "forge-remote-compute"
6
+ FORGE_REMOTE_COMPUTE = "forge-remote-compute",
7
+ DEPRECATED_EGRESS_PERMISSIONS = "deprecated-egress-permissions"
7
8
  }
8
9
  //# sourceMappingURL=validation-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validation-types.d.ts","sourceRoot":"","sources":["../../src/types/validation-types.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,eAAe,oBAAoB;IACnC,qBAAqB,0BAA0B;IAC/C,oBAAoB,yBAAyB;CAC9C"}
1
+ {"version":3,"file":"validation-types.d.ts","sourceRoot":"","sources":["../../src/types/validation-types.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,eAAe,oBAAoB;IACnC,qBAAqB,0BAA0B;IAC/C,oBAAoB,yBAAyB;IAC7C,6BAA6B,kCAAkC;CAChE"}
@@ -8,4 +8,5 @@ var ValidationTypes;
8
8
  ValidationTypes["PRODUCT_TRIGGER"] = "product-trigger";
9
9
  ValidationTypes["DEPRECATED_CSP_METHOD"] = "deprecated-csp-method";
10
10
  ValidationTypes["FORGE_REMOTE_COMPUTE"] = "forge-remote-compute";
11
+ ValidationTypes["DEPRECATED_EGRESS_PERMISSIONS"] = "deprecated-egress-permissions";
11
12
  })(ValidationTypes = exports.ValidationTypes || (exports.ValidationTypes = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"permissions-validator.d.ts","sourceRoot":"","sources":["../../src/validators/permissions-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAU,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAO3D,qBAAa,oBACX,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IAEzF,OAAO,CAAC,UAAU;IA+BlB,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,8BAA8B;IA6ChC,QAAQ,CACZ,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GACnD,OAAO,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;CAiIrD"}
1
+ {"version":3,"file":"permissions-validator.d.ts","sourceRoot":"","sources":["../../src/validators/permissions-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAU,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAO3D,qBAAa,oBACX,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IAEzF,OAAO,CAAC,UAAU;IA+BlB,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,mBAAmB;IAgB3B,OAAO,CAAC,8BAA8B;IA6ChC,QAAQ,CACZ,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GACnD,OAAO,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;CA+JrD"}
@@ -160,6 +160,33 @@ class PermissionsValidator {
160
160
  }
161
161
  ];
162
162
  mapping.forEach((item) => this.validateExternalPermissionURLs(errors, item.element, item.perms, manifest));
163
+ const { fetch: originalFetch, ...restOfExternalPermissions } = manifest.typedContent.permissions.external || {};
164
+ Object.entries(originalFetch || {}).forEach(([key, values]) => {
165
+ if (values.some((value) => typeof value === 'string')) {
166
+ errors.push({
167
+ message: text_1.errors.permissions.deprecatedEgressPermission(`fetch.${key}`),
168
+ reference: text_1.References.Permissions,
169
+ level: 'warning',
170
+ metadata: {
171
+ hasDeprecatedEgressPermissions: true
172
+ },
173
+ ...(0, utils_1.findPosition)(key, manifest.yamlContentByLine)
174
+ });
175
+ }
176
+ });
177
+ Object.entries(restOfExternalPermissions || {}).forEach(([key, values]) => {
178
+ if (values.some((value) => typeof value === 'string')) {
179
+ errors.push({
180
+ message: text_1.errors.permissions.deprecatedEgressPermission(key),
181
+ reference: text_1.References.Permissions,
182
+ level: 'warning',
183
+ metadata: {
184
+ hasDeprecatedEgressPermissions: true
185
+ },
186
+ ...(0, utils_1.findPosition)(key, manifest.yamlContentByLine)
187
+ });
188
+ }
189
+ });
163
190
  const remoteMap = manifest.typedContent.remotes?.reduce((prev, item) => {
164
191
  const baseUrl = typeof item.baseUrl === 'string' ? item.baseUrl : item.baseUrl.default;
165
192
  return prev.set(item.key, baseUrl);
@@ -0,0 +1,13 @@
1
+ import { ValidatorInterface } from './validator-interface';
2
+ import { ManifestObject, ManifestValidationResult, LintOptions } from '../types';
3
+ import { ManifestSchema } from '../schema/manifest';
4
+ declare type ManifestApp = {
5
+ app: ManifestSchema['app'];
6
+ };
7
+ export declare class RuntimeVersionValidator implements ValidatorInterface<ManifestObject<ManifestApp> | undefined, ManifestApp> {
8
+ private readonly lintOptions;
9
+ constructor(lintOptions: LintOptions);
10
+ validate(manifest: ManifestObject<ManifestApp> | undefined): Promise<ManifestValidationResult<ManifestApp>>;
11
+ }
12
+ export {};
13
+ //# sourceMappingURL=runtime-version-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-version-validator.d.ts","sourceRoot":"","sources":["../../src/validators/runtime-version-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIpD,aAAK,WAAW,GAAG;IAAE,GAAG,EAAE,cAAc,CAAC,KAAK,CAAC,CAAA;CAAE,CAAC;AAElD,qBAAa,uBACX,YAAW,kBAAkB,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,EAAE,WAAW,CAAC;IAEnF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;gBAE9B,WAAW,EAAE,WAAW;IAI9B,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,SAAS,GAAG,OAAO,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC;CA0BlH"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RuntimeVersionValidator = void 0;
4
+ const text_1 = require("../text");
5
+ const utils_1 = require("../utils");
6
+ class RuntimeVersionValidator {
7
+ lintOptions;
8
+ constructor(lintOptions) {
9
+ this.lintOptions = lintOptions;
10
+ }
11
+ async validate(manifest) {
12
+ if (manifest?.typedContent) {
13
+ const runtimeName = manifest.typedContent.app.runtime.name;
14
+ const deprecatedRuntimes = this.lintOptions.deprecatedRuntimes ?? [];
15
+ if (deprecatedRuntimes.includes(runtimeName)) {
16
+ return {
17
+ success: true,
18
+ manifestObject: manifest,
19
+ errors: [
20
+ {
21
+ message: text_1.errors.deprecation.runtime.message(runtimeName),
22
+ reference: text_1.References.Deprecated,
23
+ level: 'warning',
24
+ ...(0, utils_1.findPosition)(runtimeName, manifest?.yamlContentByLine)
25
+ }
26
+ ]
27
+ };
28
+ }
29
+ }
30
+ return {
31
+ success: true,
32
+ manifestObject: manifest
33
+ };
34
+ }
35
+ }
36
+ exports.RuntimeVersionValidator = RuntimeVersionValidator;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/manifest",
3
- "version": "9.5.0-next.2",
3
+ "version": "9.5.0-next.4",
4
4
  "description": "Definitions and validations of the Forge manifest",
5
5
  "main": "out/index.js",
6
6
  "scripts": {