@forge/lint 5.13.1-next.1 → 5.13.1-next.10

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 (23) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/out/lint/linters/permission-linter/api-call-interface.d.ts +2 -7
  3. package/out/lint/linters/permission-linter/api-call-interface.d.ts.map +1 -1
  4. package/out/lint/linters/permission-linter/api-call-interface.js +0 -1
  5. package/out/lint/linters/permission-linter/permission-linter.d.ts +1 -2
  6. package/out/lint/linters/permission-linter/permission-linter.d.ts.map +1 -1
  7. package/out/lint/linters/permission-linter/permission-linter.js +3 -9
  8. package/out/lint/linters/permission-linter/verifiers/index.d.ts +0 -1
  9. package/out/lint/linters/permission-linter/verifiers/index.d.ts.map +1 -1
  10. package/out/lint/linters/permission-linter/verifiers/index.js +0 -1
  11. package/out/lint/linters/permission-linter/visitors/index.d.ts +0 -1
  12. package/out/lint/linters/permission-linter/visitors/index.d.ts.map +1 -1
  13. package/out/lint/linters/permission-linter/visitors/index.js +0 -1
  14. package/out/lint/text/messages.d.ts +0 -4
  15. package/out/lint/text/messages.d.ts.map +1 -1
  16. package/out/lint/text/messages.js +0 -4
  17. package/package.json +5 -5
  18. package/out/lint/linters/permission-linter/verifiers/realtime-api-verifier.d.ts +0 -8
  19. package/out/lint/linters/permission-linter/verifiers/realtime-api-verifier.d.ts.map +0 -1
  20. package/out/lint/linters/permission-linter/verifiers/realtime-api-verifier.js +0 -28
  21. package/out/lint/linters/permission-linter/visitors/realtime-api-node-visitor.d.ts +0 -7
  22. package/out/lint/linters/permission-linter/visitors/realtime-api-node-visitor.d.ts.map +0 -1
  23. package/out/lint/linters/permission-linter/visitors/realtime-api-node-visitor.js +0 -35
package/CHANGELOG.md CHANGED
@@ -1,5 +1,74 @@
1
1
  # @forge/lint
2
2
 
3
+ ## 5.13.1-next.10
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [8a5024f]
8
+ - @forge/cli-shared@8.12.0-next.6
9
+
10
+ ## 5.13.1-next.9
11
+
12
+ ### Patch Changes
13
+
14
+ - bb5cb57: Add support for Node 24
15
+ - Updated dependencies [bb5cb57]
16
+ - @forge/manifest@11.3.0-next.3
17
+ - @forge/cli-shared@8.11.1-next.5
18
+
19
+ ## 5.13.1-next.8
20
+
21
+ ### Patch Changes
22
+
23
+ - Updated dependencies [a91d2de]
24
+ - @forge/csp@5.6.0-next.3
25
+
26
+ ## 5.13.1-next.7
27
+
28
+ ### Patch Changes
29
+
30
+ - Updated dependencies [8bf8249]
31
+ - @forge/cli-shared@8.11.1-next.4
32
+
33
+ ## 5.13.1-next.6
34
+
35
+ ### Patch Changes
36
+
37
+ - 61904b1: Remove Realtime scope linter
38
+
39
+ ## 5.13.1-next.5
40
+
41
+ ### Patch Changes
42
+
43
+ - Updated dependencies [f995494]
44
+ - Updated dependencies [0c3a0df]
45
+ - @forge/csp@5.6.0-next.2
46
+ - @forge/manifest@11.3.0-next.2
47
+ - @forge/cli-shared@8.11.1-next.3
48
+
49
+ ## 5.13.1-next.4
50
+
51
+ ### Patch Changes
52
+
53
+ - Updated dependencies [8b24052]
54
+ - @forge/cli-shared@8.11.1-next.2
55
+
56
+ ## 5.13.1-next.3
57
+
58
+ ### Patch Changes
59
+
60
+ - Updated dependencies [7c2186c]
61
+ - @forge/manifest@11.3.0-next.1
62
+ - @forge/cli-shared@8.11.1-next.1
63
+
64
+ ## 5.13.1-next.2
65
+
66
+ ### Patch Changes
67
+
68
+ - Updated dependencies [c7544d8]
69
+ - @forge/manifest@11.3.0-next.0
70
+ - @forge/cli-shared@8.11.1-next.0
71
+
3
72
  ## 5.13.1-next.1
4
73
 
5
74
  ### Patch Changes
@@ -5,8 +5,7 @@ export declare enum ApiCallTypes {
5
5
  'STORAGE' = 2,
6
6
  'EXTERNAL' = 3,
7
7
  'CONTENT_PROPERTY' = 4,
8
- 'IMAGE' = 5,
9
- 'REALTIME' = 6
8
+ 'IMAGE' = 5
10
9
  }
11
10
  export declare type ProductName = 'jira' | 'confluence' | 'bitbucket';
12
11
  export interface ProductApiCall extends LintCriteriaMatch {
@@ -36,9 +35,5 @@ export interface ContentPropertyApiCall extends LintCriteriaMatch {
36
35
  context: string;
37
36
  method: string;
38
37
  }
39
- export interface RealtimeApiCall extends LintCriteriaMatch {
40
- type: ApiCallTypes.REALTIME;
41
- method: string;
42
- }
43
- export declare type ApiCall = ProductApiCall | UIHookApiCall | StorageApiCall | ExternalApiCall | ImageUrl | ContentPropertyApiCall | RealtimeApiCall;
38
+ export declare type ApiCall = ProductApiCall | UIHookApiCall | StorageApiCall | ExternalApiCall | ImageUrl | ContentPropertyApiCall;
44
39
  //# sourceMappingURL=api-call-interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-call-interface.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/permission-linter/api-call-interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,oBAAY,YAAY;IACtB,SAAS,IAAA;IACT,MAAM,IAAA;IACN,SAAS,IAAA;IACT,UAAU,IAAA;IACV,kBAAkB,IAAA;IAClB,OAAO,IAAA;IACP,UAAU,IAAA;CACX;AAED,oBAAY,WAAW,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;AAE9D,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC;IAC3B,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,QAAS,SAAQ,iBAAiB;IACjD,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,IAAI,EAAE,YAAY,CAAC,gBAAgB,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,oBAAY,OAAO,GACf,cAAc,GACd,aAAa,GACb,cAAc,GACd,eAAe,GACf,QAAQ,GACR,sBAAsB,GACtB,eAAe,CAAC"}
1
+ {"version":3,"file":"api-call-interface.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/permission-linter/api-call-interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,oBAAY,YAAY;IACtB,SAAS,IAAA;IACT,MAAM,IAAA;IACN,SAAS,IAAA;IACT,UAAU,IAAA;IACV,kBAAkB,IAAA;IAClB,OAAO,IAAA;CACR;AAED,oBAAY,WAAW,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;AAE9D,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC;IAC3B,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IACtD,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAe,SAAQ,iBAAiB;IACvD,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;IAC5B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,QAAS,SAAQ,iBAAiB;IACjD,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC;IACzB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,IAAI,EAAE,YAAY,CAAC,gBAAgB,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,oBAAY,OAAO,GACf,cAAc,GACd,aAAa,GACb,cAAc,GACd,eAAe,GACf,QAAQ,GACR,sBAAsB,CAAC"}
@@ -9,5 +9,4 @@ var ApiCallTypes;
9
9
  ApiCallTypes[ApiCallTypes["EXTERNAL"] = 3] = "EXTERNAL";
10
10
  ApiCallTypes[ApiCallTypes["CONTENT_PROPERTY"] = 4] = "CONTENT_PROPERTY";
11
11
  ApiCallTypes[ApiCallTypes["IMAGE"] = 5] = "IMAGE";
12
- ApiCallTypes[ApiCallTypes["REALTIME"] = 6] = "REALTIME";
13
12
  })(ApiCallTypes = exports.ApiCallTypes || (exports.ApiCallTypes = {}));
@@ -1,7 +1,7 @@
1
1
  import type { ManifestSchema as Manifest } from '@forge/manifest';
2
2
  import BaseLinter from '../../base-linter';
3
3
  import { LintFixState, LintLogger, LintResultRule } from '../../linter-interface';
4
- import { ApiCall, ExternalApiCall, ImageUrl, ProductApiCall, StorageApiCall, UIHookApiCall, RealtimeApiCall } from './api-call-interface';
4
+ import { ApiCall, ExternalApiCall, ImageUrl, ProductApiCall, StorageApiCall, UIHookApiCall } from './api-call-interface';
5
5
  import { PathMethods } from './verifiers';
6
6
  interface SwaggerFormat {
7
7
  paths: {
@@ -20,7 +20,6 @@ interface PermissionLintCriteriaMatches {
20
20
  uiHook: UIHookApiCall[];
21
21
  external: ExternalApiCall[];
22
22
  image: ImageUrl[];
23
- realtime: RealtimeApiCall[];
24
23
  }
25
24
  export declare class PermissionLinter extends BaseLinter<ApiCall, PermissionLintCriteriaMatches, ApiCall[]> {
26
25
  private manifest;
@@ -1 +1 @@
1
- {"version":3,"file":"permission-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/permission-linter/permission-linter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,IAAI,QAAQ,EAAe,MAAM,iBAAiB,CAAC;AAE/E,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EACL,OAAO,EAEP,eAAe,EACf,QAAQ,EACR,cAAc,EACd,cAAc,EACd,aAAa,EACb,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAML,WAAW,EAIZ,MAAM,aAAa,CAAC;AAarB,UAAU,aAAa;IACrB,KAAK,EAAE;QACL,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;KAC7B,CAAC;CACH;AAED,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAKhD,eAAO,MAAM,sBAAsB,WACzB,cAAc,EAAE,YACd,cAAc,EAAE,mBAEtB,mBAAmB,GACnB,gCAAgC,GAChC,+BAA+B,GAC/B,iCAAiC,UAC7B,YAAY,KACnB,IAAI,MAAM,CAkBZ,CAAC;AAEF,eAAO,MAAM,2BAA2B,aAAc,cAAc,EAAE,UAAU,YAAY,KAAG,OAI9F,CAAC;AAoCF,eAAO,MAAM,qBAAqB,WACxB,cAAc,EAAE,YACd,cAAc,EAAE,SACnB,YAAY,KAClB,QAAQ,YAAY,CAyEtB,CAAC;AAEF,UAAU,6BAA6B;IACrC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC;IACzB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,QAAQ,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,qBAAa,gBAAiB,SAAQ,UAAU,CAAC,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,CAAC;IAe/F,OAAO,CAAC,QAAQ;IAdlB,MAAM,CAAC,cAAc,SAAgC;IACrD,MAAM,CAAC,aAAa,SAA+B;IACnD,MAAM,CAAC,aAAa,SAA+B;IACnD,MAAM,CAAC,oBAAoB,SAAsC;IACjE,MAAM,CAAC,uBAAuB,SAAyC;IACvE,MAAM,CAAC,mBAAmB,SAAqC;IAE/D,OAAO,CAAC,IAAI,CAAC,CAA0B;IACvC,OAAO,CAAC,UAAU,CAAC,CAA0B;IAC7C,OAAO,CAAC,SAAS,CAAC,CAA0B;IAC5C,OAAO,CAAC,KAAK,CAAC,CAAa;gBAGzB,WAAW,EAAE,MAAM,EACX,QAAQ,EAAE,QAAQ,EAC1B,MAAM,EAAE,UAAU;IAKP,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA6FvC,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAejD,SAAS,CAAC,QAAQ,IACd,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAyB3D,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAWtE,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAKrE,OAAO,CAAC,YAAY;CAarB"}
1
+ {"version":3,"file":"permission-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/permission-linter/permission-linter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,IAAI,QAAQ,EAAe,MAAM,iBAAiB,CAAC;AAE/E,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EACL,OAAO,EAEP,eAAe,EACf,QAAQ,EACR,cAAc,EACd,cAAc,EACd,aAAa,EACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAML,WAAW,EAGZ,MAAM,aAAa,CAAC;AAYrB,UAAU,aAAa;IACrB,KAAK,EAAE;QACL,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;KAC7B,CAAC;CACH;AAED,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAKhD,eAAO,MAAM,sBAAsB,WACzB,cAAc,EAAE,YACd,cAAc,EAAE,mBAEtB,mBAAmB,GACnB,gCAAgC,GAChC,+BAA+B,GAC/B,iCAAiC,UAC7B,YAAY,KACnB,IAAI,MAAM,CAkBZ,CAAC;AAEF,eAAO,MAAM,2BAA2B,aAAc,cAAc,EAAE,UAAU,YAAY,KAAG,OAI9F,CAAC;AAoCF,eAAO,MAAM,qBAAqB,WACxB,cAAc,EAAE,YACd,cAAc,EAAE,SACnB,YAAY,KAClB,QAAQ,YAAY,CAyEtB,CAAC;AAEF,UAAU,6BAA6B;IACrC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE,CAAC;IACzB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,qBAAa,gBAAiB,SAAQ,UAAU,CAAC,OAAO,EAAE,6BAA6B,EAAE,OAAO,EAAE,CAAC;IAe/F,OAAO,CAAC,QAAQ;IAdlB,MAAM,CAAC,cAAc,SAAgC;IACrD,MAAM,CAAC,aAAa,SAA+B;IACnD,MAAM,CAAC,aAAa,SAA+B;IACnD,MAAM,CAAC,oBAAoB,SAAsC;IACjE,MAAM,CAAC,uBAAuB,SAAyC;IACvE,MAAM,CAAC,mBAAmB,SAAqC;IAE/D,OAAO,CAAC,IAAI,CAAC,CAA0B;IACvC,OAAO,CAAC,UAAU,CAAC,CAA0B;IAC7C,OAAO,CAAC,SAAS,CAAC,CAA0B;IAC5C,OAAO,CAAC,KAAK,CAAC,CAAa;gBAGzB,WAAW,EAAE,MAAM,EACX,QAAQ,EAAE,QAAQ,EAC1B,MAAM,EAAE,UAAU;IAKP,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA2FvC,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAcjD,SAAS,CAAC,QAAQ,IACd,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAsB3D,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAWtE,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAKrE,OAAO,CAAC,YAAY;CAarB"}
@@ -190,8 +190,7 @@ class PermissionLinter extends base_linter_1.default {
190
190
  new visitors_1.UIHookNodeVisitor(),
191
191
  new visitors_1.StorageAPINodeVisitor(),
192
192
  new visitors_1.ExternalApiCallVisitor(),
193
- new visitors_1.ImageUrlVisitor(),
194
- new visitors_1.RealtimeApiNodeVisitor()
193
+ new visitors_1.ImageUrlVisitor()
195
194
  ];
196
195
  const humanReadableEnvironment = (0, cli_shared_1.environmentToOption)(this.environment);
197
196
  this.verifiers = {
@@ -201,8 +200,7 @@ class PermissionLinter extends base_linter_1.default {
201
200
  storage: new verifiers_1.StorageAPIVerifier(humanReadableEnvironment, this.manifest),
202
201
  uiHook: new verifiers_1.UIHookVerifier(humanReadableEnvironment, this.manifest),
203
202
  external: new verifiers_1.ExternalFetchVerifier(humanReadableEnvironment, this.manifest),
204
- image: new verifiers_1.ImageUrlVerifier(humanReadableEnvironment, this.manifest),
205
- realtime: new verifiers_1.RealtimeAPIVerifier(humanReadableEnvironment, this.manifest)
203
+ image: new verifiers_1.ImageUrlVerifier(humanReadableEnvironment, this.manifest)
206
204
  };
207
205
  }
208
206
  setupMatchesMap(filepath) {
@@ -215,8 +213,7 @@ class PermissionLinter extends base_linter_1.default {
215
213
  uiHook: [],
216
214
  storage: [],
217
215
  external: [],
218
- image: [],
219
- realtime: []
216
+ image: []
220
217
  });
221
218
  }
222
219
  getFixer() {
@@ -240,9 +237,6 @@ class PermissionLinter extends base_linter_1.default {
240
237
  case api_call_interface_1.ApiCallTypes.IMAGE:
241
238
  criteriaMatches.image.push(apiCall);
242
239
  break;
243
- case api_call_interface_1.ApiCallTypes.REALTIME:
244
- criteriaMatches.realtime.push(apiCall);
245
- break;
246
240
  }
247
241
  }
248
242
  async getProductPaths(cacheKey, url) {
@@ -1,7 +1,6 @@
1
1
  export * from './external-fetch-verifier';
2
2
  export * from './image-url-verifier';
3
3
  export * from './product-verifier';
4
- export * from './realtime-api-verifier';
5
4
  export * from './storage-api-verifier';
6
5
  export * from './ui-hook-verifier';
7
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lint/linters/permission-linter/verifiers/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lint/linters/permission-linter/verifiers/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC"}
@@ -4,6 +4,5 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./external-fetch-verifier"), exports);
5
5
  tslib_1.__exportStar(require("./image-url-verifier"), exports);
6
6
  tslib_1.__exportStar(require("./product-verifier"), exports);
7
- tslib_1.__exportStar(require("./realtime-api-verifier"), exports);
8
7
  tslib_1.__exportStar(require("./storage-api-verifier"), exports);
9
8
  tslib_1.__exportStar(require("./ui-hook-verifier"), exports);
@@ -1,7 +1,6 @@
1
1
  export * from './external-fetch-call-visitor';
2
2
  export * from './image-url-visitor';
3
3
  export * from './product-node-visitor';
4
- export * from './realtime-api-node-visitor';
5
4
  export * from './storage-api-node-visitor';
6
5
  export * from './ui-hook-node-visitor';
7
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lint/linters/permission-linter/visitors/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lint/linters/permission-linter/visitors/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC"}
@@ -4,6 +4,5 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./external-fetch-call-visitor"), exports);
5
5
  tslib_1.__exportStar(require("./image-url-visitor"), exports);
6
6
  tslib_1.__exportStar(require("./product-node-visitor"), exports);
7
- tslib_1.__exportStar(require("./realtime-api-node-visitor"), exports);
8
7
  tslib_1.__exportStar(require("./storage-api-node-visitor"), exports);
9
8
  tslib_1.__exportStar(require("./ui-hook-node-visitor"), exports);
@@ -59,10 +59,6 @@ export declare const messages: {
59
59
  reference: string;
60
60
  };
61
61
  };
62
- realtime: {
63
- message: (scope: string) => string;
64
- reference: string;
65
- };
66
62
  };
67
63
  };
68
64
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/lint/text/messages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;2BAGA,MAAM;;;;2BAKN,MAAM;2BAER,MAAM;;;;2BAKJ,MAAM;;;;iCAKA,MAAM;;;;iCAKN,MAAM;;;;8BAKT,MAAM,OAAO,MAAM;;;;+BAKlB,MAAM,UAAU,MAAM,QAAQ,MAAM,GAAG,SAAS,SAAS,MAAM;;;;6BAKjE,MAAM;;;;+BAIJ,MAAM,QAAQ,MAAM,SAAS,MAAM;;;;8BAKpC,MAAM;;;;8BAIN,MAAM;;;;8BAIN,MAAM;;;;;;;;;oCASF,MAAM;;;;;6BAOX,MAAM;;;;CAI5B,CAAC"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/lint/text/messages.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;2BAGA,MAAM;;;;2BAKN,MAAM;2BAER,MAAM;;;;2BAKJ,MAAM;;;;iCAKA,MAAM;;;;iCAKN,MAAM;;;;8BAKT,MAAM,OAAO,MAAM;;;;+BAKlB,MAAM,UAAU,MAAM,QAAQ,MAAM,GAAG,SAAS,SAAS,MAAM;;;;6BAKjE,MAAM;;;;+BAIJ,MAAM,QAAQ,MAAM,SAAS,MAAM;;;;8BAKpC,MAAM;;;;8BAIN,MAAM;;;;8BAIN,MAAM;;;;;;;;;oCASF,MAAM;;;;;CAOjC,CAAC"}
@@ -63,10 +63,6 @@ exports.messages = {
63
63
  },
64
64
  reference: 'valid-frame-component-resource-attribute-required'
65
65
  }
66
- },
67
- realtime: {
68
- message: (scope) => `Using the Forge Realtime subscribeGlobal method requires the "${scope}" scope`,
69
- reference: 'permission-scope-required'
70
66
  }
71
67
  }
72
68
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/lint",
3
- "version": "5.13.1-next.1",
3
+ "version": "5.13.1-next.10",
4
4
  "description": "Linting for forge apps",
5
5
  "main": "out/index.js",
6
6
  "license": "SEE LICENSE IN LICENSE.txt",
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "devDependencies": {
13
13
  "@atlassian/xen-test-util": "^4.2.0",
14
- "@forge/api": "^6.4.0",
14
+ "@forge/api": "^6.4.1-next.1",
15
15
  "@types/array.prototype.flatmap": "^1.2.6",
16
16
  "@types/cross-spawn": "^6.0.6",
17
17
  "@types/eslint": "8.56.12",
@@ -19,10 +19,10 @@
19
19
  "eslint-plugin-import": "^2.29.1"
20
20
  },
21
21
  "dependencies": {
22
- "@forge/cli-shared": "8.11.0",
23
- "@forge/csp": "5.6.0-next.1",
22
+ "@forge/cli-shared": "8.12.0-next.6",
23
+ "@forge/csp": "5.6.0-next.3",
24
24
  "@forge/egress": "2.3.0",
25
- "@forge/manifest": "11.2.0",
25
+ "@forge/manifest": "11.3.0-next.3",
26
26
  "@typescript-eslint/typescript-estree": "^5.62.0",
27
27
  "array.prototype.flatmap": "^1.3.3",
28
28
  "@atlassian/atlassian-openapi": "^1.0.6",
@@ -1,8 +0,0 @@
1
- import { LintClass, LintResultRule } from '../../../linter-interface';
2
- import { BaseLintIssueVerifier, LintIssueVerifier } from '../../verifier-interface';
3
- import { ApiCall, RealtimeApiCall } from '../api-call-interface';
4
- export declare class RealtimeAPIVerifier extends BaseLintIssueVerifier implements LintIssueVerifier<ApiCall[]> {
5
- protected getLintClass(): LintClass;
6
- process(apiCalls: RealtimeApiCall[]): Promise<LintResultRule[]>;
7
- }
8
- //# sourceMappingURL=realtime-api-verifier.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"realtime-api-verifier.d.ts","sourceRoot":"","sources":["../../../../../src/lint/linters/permission-linter/verifiers/realtime-api-verifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGtE,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACpF,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAIjE,qBAAa,mBAAoB,SAAQ,qBAAsB,YAAW,iBAAiB,CAAC,OAAO,EAAE,CAAC;IACpG,SAAS,CAAC,YAAY,IAAI,SAAS;IAItB,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;CAe7E"}
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RealtimeAPIVerifier = void 0;
4
- const linter_interface_1 = require("../../../linter-interface");
5
- const text_1 = require("../../../text");
6
- const utils_1 = require("../../utils");
7
- const verifier_interface_1 = require("../../verifier-interface");
8
- const SUBSCRIBE_GLOBAL_PERMISSION = 'read:app-global-channel:realtime';
9
- class RealtimeAPIVerifier extends verifier_interface_1.BaseLintIssueVerifier {
10
- getLintClass() {
11
- return linter_interface_1.LintClass.Error;
12
- }
13
- async process(apiCalls) {
14
- if ((0, utils_1.getAllScopeKeys)(this.manifest.permissions?.scopes ?? []).includes(SUBSCRIBE_GLOBAL_PERMISSION)) {
15
- return [];
16
- }
17
- return apiCalls.map((apiCall) => ({
18
- class: this.getLintClass(),
19
- message: text_1.messages.verifiers.realtime.message(SUBSCRIBE_GLOBAL_PERMISSION),
20
- reference: text_1.messages.verifiers.realtime.reference,
21
- ...apiCall,
22
- metadata: {
23
- missingPermission: SUBSCRIBE_GLOBAL_PERMISSION
24
- }
25
- }));
26
- }
27
- }
28
- exports.RealtimeAPIVerifier = RealtimeAPIVerifier;
@@ -1,7 +0,0 @@
1
- import { TSESTree } from '@typescript-eslint/typescript-estree';
2
- import { NodeVisitor } from '../../node-visitor-interface';
3
- import { ApiCall } from '../api-call-interface';
4
- export declare class RealtimeApiNodeVisitor implements NodeVisitor<ApiCall> {
5
- visit(node: TSESTree.Node, _parent: TSESTree.Node | undefined, callback: (apiCall: ApiCall) => void): void;
6
- }
7
- //# sourceMappingURL=realtime-api-node-visitor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"realtime-api-node-visitor.d.ts","sourceRoot":"","sources":["../../../../../src/lint/linters/permission-linter/visitors/realtime-api-node-visitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAiC,MAAM,uBAAuB,CAAC;AAI/E,qBAAa,sBAAuB,YAAW,WAAW,CAAC,OAAO,CAAC;IAC1D,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;CA4ClH"}
@@ -1,35 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RealtimeApiNodeVisitor = void 0;
4
- const typescript_estree_1 = require("@typescript-eslint/typescript-estree");
5
- const api_call_interface_1 = require("../api-call-interface");
6
- const SUBSCRIBE_GLOBAL_REGEX = /^subscribeGlobal$/;
7
- class RealtimeApiNodeVisitor {
8
- visit(node, _parent, callback) {
9
- switch (node.type) {
10
- case typescript_estree_1.AST_NODE_TYPES.CallExpression:
11
- if (node.callee.type === typescript_estree_1.AST_NODE_TYPES.Identifier && node.callee.name.match(SUBSCRIBE_GLOBAL_REGEX)) {
12
- const subscribeGlobalCall = {
13
- type: api_call_interface_1.ApiCallTypes.REALTIME,
14
- method: node.callee.name,
15
- ...node.callee.loc.start
16
- };
17
- callback(subscribeGlobalCall);
18
- }
19
- break;
20
- case typescript_estree_1.AST_NODE_TYPES.MemberExpression:
21
- if (node.property.type === typescript_estree_1.AST_NODE_TYPES.Identifier &&
22
- node.property.name.match(SUBSCRIBE_GLOBAL_REGEX) &&
23
- _parent?.type === typescript_estree_1.AST_NODE_TYPES.CallExpression) {
24
- const subscribeGlobalCall = {
25
- type: api_call_interface_1.ApiCallTypes.REALTIME,
26
- method: node.property.name,
27
- ...node.property.loc.start
28
- };
29
- callback(subscribeGlobalCall);
30
- }
31
- break;
32
- }
33
- }
34
- }
35
- exports.RealtimeApiNodeVisitor = RealtimeApiNodeVisitor;