@forge/lint 5.9.0-next.14 → 5.9.0-next.3
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 +0 -102
- package/out/lint/lint.d.ts +2 -3
- package/out/lint/lint.d.ts.map +1 -1
- package/out/lint/lint.js +7 -9
- package/out/lint/linters/manifest-linter/abstract-manifest-linter.d.ts +1 -4
- package/out/lint/linters/manifest-linter/abstract-manifest-linter.d.ts.map +1 -1
- package/out/lint/linters/manifest-linter/abstract-manifest-linter.js +3 -14
- package/out/lint/linters/manifest-linter/basic-manifest-linter.d.ts +1 -2
- package/out/lint/linters/manifest-linter/basic-manifest-linter.d.ts.map +1 -1
- package/out/lint/linters/manifest-linter/basic-manifest-linter.js +2 -2
- package/out/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.d.ts +1 -2
- package/out/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.d.ts.map +1 -1
- package/out/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.js +2 -2
- package/out/lint/linters/manifest-linter/full-manifest-linter.d.ts +1 -2
- package/out/lint/linters/manifest-linter/full-manifest-linter.d.ts.map +1 -1
- package/out/lint/linters/manifest-linter/full-manifest-linter.js +2 -2
- package/out/lint/linters/manifest-linter/permissions-manifest-linter.d.ts +1 -2
- package/out/lint/linters/manifest-linter/permissions-manifest-linter.d.ts.map +1 -1
- package/out/lint/linters/manifest-linter/permissions-manifest-linter.js +2 -2
- package/out/lint/linters/manifest-linter/remote-compute-manifest-linter.d.ts +1 -2
- package/out/lint/linters/manifest-linter/remote-compute-manifest-linter.d.ts.map +1 -1
- package/out/lint/linters/manifest-linter/remote-compute-manifest-linter.js +2 -2
- package/out/lint/linters/permission-linter/permission-linter.d.ts.map +1 -1
- package/out/lint/linters/permission-linter/permission-linter.js +12 -38
- package/package.json +6 -6
- package/out/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.d.ts +0 -10
- package/out/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.d.ts.map +0 -1
- package/out/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.js +0 -18
package/CHANGELOG.md
CHANGED
|
@@ -1,107 +1,5 @@
|
|
|
1
1
|
# @forge/lint
|
|
2
2
|
|
|
3
|
-
## 5.9.0-next.14
|
|
4
|
-
|
|
5
|
-
### Patch Changes
|
|
6
|
-
|
|
7
|
-
- Updated dependencies [ba634d9]
|
|
8
|
-
- @forge/cli-shared@8.0.0-next.14
|
|
9
|
-
- @forge/manifest@10.0.0-next.12
|
|
10
|
-
|
|
11
|
-
## 5.9.0-next.13
|
|
12
|
-
|
|
13
|
-
### Patch Changes
|
|
14
|
-
|
|
15
|
-
- Updated dependencies [1992aaf]
|
|
16
|
-
- Updated dependencies [c2e09b9]
|
|
17
|
-
- @forge/manifest@10.0.0-next.11
|
|
18
|
-
- @forge/cli-shared@8.0.0-next.13
|
|
19
|
-
|
|
20
|
-
## 5.9.0-next.12
|
|
21
|
-
|
|
22
|
-
### Patch Changes
|
|
23
|
-
|
|
24
|
-
- Updated dependencies [d33186c]
|
|
25
|
-
- @forge/cli-shared@8.0.0-next.12
|
|
26
|
-
|
|
27
|
-
## 5.9.0-next.11
|
|
28
|
-
|
|
29
|
-
### Patch Changes
|
|
30
|
-
|
|
31
|
-
- Updated dependencies [e6cd96a]
|
|
32
|
-
- @forge/manifest@10.0.0-next.10
|
|
33
|
-
- @forge/cli-shared@8.0.0-next.11
|
|
34
|
-
|
|
35
|
-
## 5.9.0-next.10
|
|
36
|
-
|
|
37
|
-
### Patch Changes
|
|
38
|
-
|
|
39
|
-
- Updated dependencies [33c5750]
|
|
40
|
-
- @forge/manifest@10.0.0-next.9
|
|
41
|
-
- @forge/cli-shared@8.0.0-next.10
|
|
42
|
-
|
|
43
|
-
## 5.9.0-next.9
|
|
44
|
-
|
|
45
|
-
### Patch Changes
|
|
46
|
-
|
|
47
|
-
- Updated dependencies [37eba69]
|
|
48
|
-
- @forge/manifest@10.0.0-next.8
|
|
49
|
-
- @forge/cli-shared@8.0.0-next.9
|
|
50
|
-
|
|
51
|
-
## 5.9.0-next.8
|
|
52
|
-
|
|
53
|
-
### Patch Changes
|
|
54
|
-
|
|
55
|
-
- Updated dependencies [8f2a3c9]
|
|
56
|
-
- @forge/cli-shared@8.0.0-next.8
|
|
57
|
-
- @forge/manifest@10.0.0-next.7
|
|
58
|
-
- @forge/egress@2.0.0-next.0
|
|
59
|
-
- @forge/csp@4.0.0-next.0
|
|
60
|
-
|
|
61
|
-
## 5.9.0-next.7
|
|
62
|
-
|
|
63
|
-
### Patch Changes
|
|
64
|
-
|
|
65
|
-
- Updated dependencies [a7bd152]
|
|
66
|
-
- Updated dependencies [8a548ce]
|
|
67
|
-
- @forge/manifest@9.5.0-next.6
|
|
68
|
-
- @forge/cli-shared@7.1.0-next.7
|
|
69
|
-
|
|
70
|
-
## 5.9.0-next.6
|
|
71
|
-
|
|
72
|
-
### Minor Changes
|
|
73
|
-
|
|
74
|
-
- 9f050ff: Removed support for Sandbox Runtime and Sanpshots
|
|
75
|
-
|
|
76
|
-
### Patch Changes
|
|
77
|
-
|
|
78
|
-
- Updated dependencies [9f050ff]
|
|
79
|
-
- @forge/cli-shared@7.1.0-next.6
|
|
80
|
-
- @forge/manifest@9.5.0-next.5
|
|
81
|
-
|
|
82
|
-
## 5.9.0-next.5
|
|
83
|
-
|
|
84
|
-
### Minor Changes
|
|
85
|
-
|
|
86
|
-
- 64befbb: Refactor runtime version manifest check into a linter
|
|
87
|
-
|
|
88
|
-
### Patch Changes
|
|
89
|
-
|
|
90
|
-
- dd7cad7: Fix deprecated egress manifest linter
|
|
91
|
-
- Updated dependencies [75b7732]
|
|
92
|
-
- Updated dependencies [64befbb]
|
|
93
|
-
- @forge/cli-shared@7.1.0-next.5
|
|
94
|
-
- @forge/manifest@9.5.0-next.4
|
|
95
|
-
|
|
96
|
-
## 5.9.0-next.4
|
|
97
|
-
|
|
98
|
-
### Patch Changes
|
|
99
|
-
|
|
100
|
-
- Updated dependencies [0c92352]
|
|
101
|
-
- Updated dependencies [18eab48]
|
|
102
|
-
- @forge/manifest@9.5.0-next.3
|
|
103
|
-
- @forge/cli-shared@7.1.0-next.4
|
|
104
|
-
|
|
105
3
|
## 5.9.0-next.3
|
|
106
4
|
|
|
107
5
|
### Minor Changes
|
package/out/lint/lint.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
2
1
|
import { ManifestSchema as Manifest } from '@forge/manifest';
|
|
3
2
|
import fs from 'fs';
|
|
4
3
|
import { tsParser } from '../parse';
|
|
@@ -10,6 +9,6 @@ export interface ProblemCount {
|
|
|
10
9
|
export declare const reportLintResults: (logger: LintLogger, lintResults: LintResult[], showSummary?: boolean) => void;
|
|
11
10
|
export declare const problemCount: (lintResults: LintResult[]) => ProblemCount;
|
|
12
11
|
export declare const parseSourceFile: (filepath: string, parser: typeof tsParser, readFilePromise?: typeof fs.readFile.__promisify__) => Promise<LintInput>;
|
|
13
|
-
export declare const lint: (filesToLint: string[], manifest: Manifest, environment: string, logger: LintLogger,
|
|
14
|
-
export declare const litelint: (logger: LintLogger,
|
|
12
|
+
export declare const lint: (filesToLint: string[], manifest: Manifest, environment: string, logger: LintLogger, parseFunction?: (filepath: string, parser: typeof tsParser, readFilePromise?: typeof fs.readFile.__promisify__) => Promise<LintInput>, linters?: LinterInterface[]) => Promise<LintResult[]>;
|
|
13
|
+
export declare const litelint: (logger: LintLogger, linter?: LinterInterface) => Promise<LintResult[]>;
|
|
15
14
|
//# sourceMappingURL=lint.d.ts.map
|
package/out/lint/lint.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,cAAc,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,MAAM,IAAI,CAAC;AAIpB,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAkB,MAAM,oBAAoB,CAAC;AAaxG,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,iBAAiB,WAAY,UAAU,eAAe,UAAU,EAAE,4BAAuB,IA+CrG,CAAC;AAEF,eAAO,MAAM,YAAY,gBAAiB,UAAU,EAAE,KAAG,YAQxD,CAAC;AAEF,eAAO,MAAM,eAAe,aAChB,MAAM,UACR,eAAe,oBACN,OAAO,GAAG,QAAQ,CAAC,aAAa,KAChD,QAAQ,SAAS,CAOnB,CAAC;AAEF,eAAO,MAAM,IAAI,gBACF,MAAM,EAAE,YACX,QAAQ,eACL,MAAM,UACX,UAAU,6BAhBR,MAAM,UACR,eAAe,oBACN,OAAO,GAAG,QAAQ,CAAC,aAAa,KAChD,QAAQ,SAAS,CAAC,YAeV,eAAe,EAAE,KAYzB,QAAQ,UAAU,EAAE,CAyCtB,CAAC;AAwBF,eAAO,MAAM,QAAQ,WACX,UAAU,WACV,eAAe,KACtB,QAAQ,UAAU,EAAE,CAGtB,CAAC"}
|
package/out/lint/lint.js
CHANGED
|
@@ -18,7 +18,6 @@ const remote_compute_manifest_linter_1 = require("./linters/manifest-linter/remo
|
|
|
18
18
|
const invoke_remote_linter_1 = require("./linters/remote-linter/invoke-remote-linter");
|
|
19
19
|
const storage_module_linter_1 = require("./linters/storage-module-linter/storage-module-linter");
|
|
20
20
|
const frame_component_linter_1 = require("./linters/frame-component-linter/frame-component-linter");
|
|
21
|
-
const deprecated_egress_permissions_manifest_linter_1 = require("./linters/manifest-linter/deprecated-egress-permissions-manifest-linter");
|
|
22
21
|
const reportLintResults = (logger, lintResults, showSummary = true) => {
|
|
23
22
|
let numErrors = 0, numWarnings = 0;
|
|
24
23
|
let noProblemsFound = true;
|
|
@@ -80,18 +79,17 @@ const parseSourceFile = async (filepath, parser, readFilePromise = (0, util_1.pr
|
|
|
80
79
|
};
|
|
81
80
|
};
|
|
82
81
|
exports.parseSourceFile = parseSourceFile;
|
|
83
|
-
const lint = async (filesToLint, manifest, environment, logger,
|
|
82
|
+
const lint = async (filesToLint, manifest, environment, logger, parseFunction = exports.parseSourceFile, linters = [
|
|
84
83
|
new permission_linter_1.PermissionLinter(environment, manifest, logger),
|
|
85
|
-
new permissions_manifest_linter_1.PermissionsManifestLinter(logger
|
|
86
|
-
new deprecated_csp_permissions_manifest_linter_1.DeprecatedCspPermissionsManifestLinter(logger
|
|
87
|
-
new remote_compute_manifest_linter_1.RemoteComputeManifestLinter(logger
|
|
88
|
-
new full_manifest_linter_1.FullManifestLinter(logger
|
|
84
|
+
new permissions_manifest_linter_1.PermissionsManifestLinter(logger),
|
|
85
|
+
new deprecated_csp_permissions_manifest_linter_1.DeprecatedCspPermissionsManifestLinter(logger),
|
|
86
|
+
new remote_compute_manifest_linter_1.RemoteComputeManifestLinter(logger),
|
|
87
|
+
new full_manifest_linter_1.FullManifestLinter(logger),
|
|
89
88
|
new handler_linter_1.HandlerLinter(environment, manifest, logger),
|
|
90
89
|
new dynamic_properties_permissions_linter_1.DynamicPropertiesPermissionsLinter(environment, manifest, logger),
|
|
91
90
|
new invoke_remote_linter_1.InvokeRemoteLinter(environment, manifest, logger),
|
|
92
91
|
new storage_module_linter_1.StorageModulesLinter(environment, manifest, logger),
|
|
93
|
-
new frame_component_linter_1.FrameComponentLinter(environment, manifest, logger)
|
|
94
|
-
new deprecated_egress_permissions_manifest_linter_1.DeprecatedEgressPermissionsManifestLinter(logger, statsigService)
|
|
92
|
+
new frame_component_linter_1.FrameComponentLinter(environment, manifest, logger)
|
|
95
93
|
]) => {
|
|
96
94
|
const { include, exclude } = await (0, cli_shared_1.listTSConfigIncludeExclude)(new cli_shared_1.FileSystemReader());
|
|
97
95
|
const tsInclude = new Set(include);
|
|
@@ -139,7 +137,7 @@ function formatCompileErrorMessage(error) {
|
|
|
139
137
|
}
|
|
140
138
|
return errorMessage;
|
|
141
139
|
}
|
|
142
|
-
const litelint = async (logger,
|
|
140
|
+
const litelint = async (logger, linter = new basic_manifest_linter_1.BasicManifestLinter(logger)) => {
|
|
143
141
|
await linter.bootstrap();
|
|
144
142
|
return linter.batchExecute();
|
|
145
143
|
};
|
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
import { ValidationTypes, ManifestValidationResult, ProcessorInterface, SchemaValidationError } from '@forge/manifest';
|
|
2
2
|
import { LintResult, LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
|
|
3
3
|
import { AbstractLinter } from '../../abstract-linter';
|
|
4
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
5
4
|
export declare class AbstractManifestLinter extends AbstractLinter {
|
|
6
5
|
private readonly type;
|
|
7
6
|
private processor;
|
|
8
|
-
|
|
9
|
-
constructor(type: ValidationTypes, logger: LintLogger, statsigService: StatsigService);
|
|
7
|
+
constructor(type: ValidationTypes, logger: LintLogger);
|
|
10
8
|
private mapManifestResponse;
|
|
11
9
|
getProcessor(): ProcessorInterface<any> | undefined;
|
|
12
10
|
batchExecuteImpl(): Promise<LintResult[]>;
|
|
13
11
|
bootstrap(): Promise<void>;
|
|
14
|
-
private getOptions;
|
|
15
12
|
protected getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
|
|
16
13
|
protected getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
|
|
17
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/abstract-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAGf,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"abstract-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/abstract-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAGf,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EACtB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAa,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,qBAAa,sBAAuB,SAAQ,cAAc;IAItD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHvB,OAAO,CAAC,SAAS,CAAsC;gBAGpC,IAAI,EAAE,eAAe,EACtC,MAAM,EAAE,UAAU;IAKpB,OAAO,CAAC,mBAAmB;IAmB3B,YAAY,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,SAAS;IAI7C,gBAAgB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAU/C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1B,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,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAG9F"}
|
|
@@ -7,11 +7,9 @@ const abstract_linter_1 = require("../../abstract-linter");
|
|
|
7
7
|
class AbstractManifestLinter extends abstract_linter_1.AbstractLinter {
|
|
8
8
|
type;
|
|
9
9
|
processor;
|
|
10
|
-
|
|
11
|
-
constructor(type, logger, statsigService) {
|
|
10
|
+
constructor(type, logger) {
|
|
12
11
|
super(logger);
|
|
13
12
|
this.type = type;
|
|
14
|
-
this.statsigService = statsigService;
|
|
15
13
|
}
|
|
16
14
|
mapManifestResponse(results, fixer) {
|
|
17
15
|
const manifestLintResults = new linter_interface_1.LintResult(manifest_1.MANIFEST_FILE, fixer);
|
|
@@ -37,19 +35,10 @@ class AbstractManifestLinter extends abstract_linter_1.AbstractLinter {
|
|
|
37
35
|
const results = await this.processor.process();
|
|
38
36
|
return [this.mapManifestResponse(results, this.getFixer())];
|
|
39
37
|
}
|
|
40
|
-
|
|
41
|
-
this.processor = manifest_1.ProcessorBuilder.instance()
|
|
42
|
-
.withValidation(this.type)
|
|
43
|
-
.withOptions(await this.getOptions())
|
|
44
|
-
.build();
|
|
38
|
+
bootstrap() {
|
|
39
|
+
this.processor = manifest_1.ProcessorBuilder.instance().withValidation(this.type).build();
|
|
45
40
|
return Promise.resolve();
|
|
46
41
|
}
|
|
47
|
-
async getOptions() {
|
|
48
|
-
const options = {
|
|
49
|
-
deprecatedRuntimes: await this.statsigService.getDeprecatedRuntimes()
|
|
50
|
-
};
|
|
51
|
-
return options;
|
|
52
|
-
}
|
|
53
42
|
getFixer() {
|
|
54
43
|
return undefined;
|
|
55
44
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { AbstractManifestLinter } from './abstract-manifest-linter';
|
|
2
2
|
import { LintLogger } from '../../linter-interface';
|
|
3
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
4
3
|
export declare class BasicManifestLinter extends AbstractManifestLinter {
|
|
5
|
-
constructor(logger: LintLogger
|
|
4
|
+
constructor(logger: LintLogger);
|
|
6
5
|
}
|
|
7
6
|
//# sourceMappingURL=basic-manifest-linter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basic-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/basic-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"basic-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/basic-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,qBAAa,mBAAoB,SAAQ,sBAAsB;gBACjD,MAAM,EAAE,UAAU;CAG/B"}
|
|
@@ -4,8 +4,8 @@ exports.BasicManifestLinter = void 0;
|
|
|
4
4
|
const manifest_1 = require("@forge/manifest");
|
|
5
5
|
const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
|
|
6
6
|
class BasicManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
|
|
7
|
-
constructor(logger
|
|
8
|
-
super(manifest_1.ValidationTypes.BASIC, logger
|
|
7
|
+
constructor(logger) {
|
|
8
|
+
super(manifest_1.ValidationTypes.BASIC, logger);
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
exports.BasicManifestLinter = BasicManifestLinter;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
|
|
2
2
|
import { AbstractManifestLinter } from './abstract-manifest-linter';
|
|
3
3
|
import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
|
|
4
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
5
4
|
export declare class DeprecatedCspPermissionsManifestLinter extends AbstractManifestLinter {
|
|
6
|
-
constructor(logger: LintLogger
|
|
5
|
+
constructor(logger: LintLogger);
|
|
7
6
|
getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
|
|
8
7
|
getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
|
|
9
8
|
}
|
package/out/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deprecated-csp-permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"deprecated-csp-permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/deprecated-csp-permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGlF,qBAAa,sCAAuC,SAAQ,sBAAsB;gBACpE,MAAM,EAAE,UAAU;IAI9B,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
|
|
@@ -5,8 +5,8 @@ const manifest_1 = require("@forge/manifest");
|
|
|
5
5
|
const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
|
|
6
6
|
const permission_linter_1 = require("../permission-linter/permission-linter");
|
|
7
7
|
class DeprecatedCspPermissionsManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
|
|
8
|
-
constructor(logger
|
|
9
|
-
super(manifest_1.ValidationTypes.DEPRECATED_CSP_METHOD, logger
|
|
8
|
+
constructor(logger) {
|
|
9
|
+
super(manifest_1.ValidationTypes.DEPRECATED_CSP_METHOD, logger);
|
|
10
10
|
}
|
|
11
11
|
getFixer() {
|
|
12
12
|
return permission_linter_1.fixMissingPermissions;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { AbstractManifestLinter } from './abstract-manifest-linter';
|
|
2
2
|
import { LintLogger } from '../../linter-interface';
|
|
3
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
4
3
|
export declare class FullManifestLinter extends AbstractManifestLinter {
|
|
5
|
-
constructor(logger: LintLogger
|
|
4
|
+
constructor(logger: LintLogger);
|
|
6
5
|
}
|
|
7
6
|
//# sourceMappingURL=full-manifest-linter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"full-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/full-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"full-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/full-manifest-linter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,qBAAa,kBAAmB,SAAQ,sBAAsB;gBAChD,MAAM,EAAE,UAAU;CAG/B"}
|
|
@@ -4,8 +4,8 @@ exports.FullManifestLinter = void 0;
|
|
|
4
4
|
const manifest_1 = require("@forge/manifest");
|
|
5
5
|
const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
|
|
6
6
|
class FullManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
|
|
7
|
-
constructor(logger
|
|
8
|
-
super(manifest_1.ValidationTypes.FULL, logger
|
|
7
|
+
constructor(logger) {
|
|
8
|
+
super(manifest_1.ValidationTypes.FULL, logger);
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
11
|
exports.FullManifestLinter = FullManifestLinter;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
|
|
2
2
|
import { AbstractManifestLinter } from './abstract-manifest-linter';
|
|
3
3
|
import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
|
|
4
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
5
4
|
export declare class PermissionsManifestLinter extends AbstractManifestLinter {
|
|
6
|
-
constructor(logger: LintLogger
|
|
5
|
+
constructor(logger: LintLogger);
|
|
7
6
|
getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
|
|
8
7
|
getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
|
|
9
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGlF,qBAAa,yBAA0B,SAAQ,sBAAsB;gBACvD,MAAM,EAAE,UAAU;IAI9B,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
|
|
@@ -5,8 +5,8 @@ const manifest_1 = require("@forge/manifest");
|
|
|
5
5
|
const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
|
|
6
6
|
const permission_linter_1 = require("../permission-linter/permission-linter");
|
|
7
7
|
class PermissionsManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
|
|
8
|
-
constructor(logger
|
|
9
|
-
super(manifest_1.ValidationTypes.PRODUCT_TRIGGER, logger
|
|
8
|
+
constructor(logger) {
|
|
9
|
+
super(manifest_1.ValidationTypes.PRODUCT_TRIGGER, logger);
|
|
10
10
|
}
|
|
11
11
|
getFixer() {
|
|
12
12
|
return permission_linter_1.fixMissingPermissions;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
|
|
2
2
|
import { AbstractManifestLinter } from './abstract-manifest-linter';
|
|
3
3
|
import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
|
|
4
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
5
4
|
export declare class RemoteComputeManifestLinter extends AbstractManifestLinter {
|
|
6
|
-
constructor(logger: LintLogger
|
|
5
|
+
constructor(logger: LintLogger);
|
|
7
6
|
getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
|
|
8
7
|
getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
|
|
9
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-compute-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/remote-compute-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"remote-compute-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/remote-compute-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGlF,qBAAa,2BAA4B,SAAQ,sBAAsB;gBACzD,MAAM,EAAE,UAAU;IAI9B,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
|
|
@@ -5,8 +5,8 @@ const manifest_1 = require("@forge/manifest");
|
|
|
5
5
|
const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
|
|
6
6
|
const permission_linter_1 = require("../permission-linter/permission-linter");
|
|
7
7
|
class RemoteComputeManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
|
|
8
|
-
constructor(logger
|
|
9
|
-
super(manifest_1.ValidationTypes.FORGE_REMOTE_COMPUTE, logger
|
|
8
|
+
constructor(logger) {
|
|
9
|
+
super(manifest_1.ValidationTypes.FORGE_REMOTE_COMPUTE, logger);
|
|
10
10
|
}
|
|
11
11
|
getFixer() {
|
|
12
12
|
return permission_linter_1.fixMissingPermissions;
|
|
@@ -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,EACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAML,WAAW,EAGZ,MAAM,aAAa,CAAC;
|
|
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;AAWrB,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,qBAAqB,WACxB,cAAc,EAAE,YACd,cAAc,EAAE,SACnB,YAAY,KAClB,QAAQ,YAAY,CAkEtB,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"}
|
|
@@ -37,20 +37,27 @@ const fixMissingPermissions = async (errors, warnings, state) => {
|
|
|
37
37
|
const missingExternalFetchBackend = (0, exports.findMissingPermissions)(errors, warnings, 'missingExternalFetchPermission', state);
|
|
38
38
|
const missingContentStyle = (0, exports.findMissingPermissions)(errors, warnings, 'missingContentStylePermission', state);
|
|
39
39
|
const missingExternalImage = (0, exports.findMissingPermissions)(errors, warnings, 'missingExternalImagesPermission', state);
|
|
40
|
-
const hasDeprecatedEgressPermissions = errors.some((error) => error.metadata?.hasDeprecatedEgressPermissions) ||
|
|
41
|
-
missingExternalImage.size > 0 ||
|
|
42
|
-
missingExternalFetchBackend.size > 0;
|
|
43
40
|
const currentPermissions = (await state.configFile.readConfig())?.permissions ?? {};
|
|
41
|
+
const currentRemotes = (await state.configFile.readConfig())?.remotes ?? [];
|
|
44
42
|
const currentScopes = (0, utils_1.getAllScopeKeys)(currentPermissions?.scopes ?? []);
|
|
45
43
|
currentScopes.forEach((scope) => missingScopes.add(scope));
|
|
46
44
|
const currentExternalFetchBackend = currentPermissions?.external?.fetch?.backend ?? [];
|
|
47
|
-
currentExternalFetchBackend
|
|
45
|
+
currentExternalFetchBackend
|
|
46
|
+
.map((item) => {
|
|
47
|
+
if (typeof item === 'string')
|
|
48
|
+
return item;
|
|
49
|
+
if ('address' in item)
|
|
50
|
+
return item.address;
|
|
51
|
+
return currentRemotes.find((remote) => remote.key == item.remote)?.baseUrl;
|
|
52
|
+
})
|
|
53
|
+
.filter((item) => typeof item === 'string')
|
|
54
|
+
.forEach((scope) => missingExternalFetchBackend.add(scope));
|
|
48
55
|
const arrayMissingExternalFetchBackend = [...missingExternalFetchBackend];
|
|
49
56
|
const currentContentStyles = currentPermissions?.content?.styles ?? [];
|
|
50
57
|
currentContentStyles.forEach((scope) => missingContentStyle.add(scope));
|
|
51
58
|
const arrayMissingContentStyles = [...missingContentStyle];
|
|
52
59
|
const currentExternalImages = currentPermissions?.external?.images ?? [];
|
|
53
|
-
currentExternalImages.forEach((scope) => missingExternalImage.add(scope));
|
|
60
|
+
currentExternalImages.forEach((scope) => missingExternalImage.add(typeof scope === 'string' ? scope : scope.address));
|
|
54
61
|
const arrayMissingExternalImages = [...missingExternalImage];
|
|
55
62
|
const config = {
|
|
56
63
|
...currentPermissions,
|
|
@@ -77,39 +84,6 @@ const fixMissingPermissions = async (errors, warnings, state) => {
|
|
|
77
84
|
styles: arrayMissingContentStyles
|
|
78
85
|
};
|
|
79
86
|
}
|
|
80
|
-
if (hasDeprecatedEgressPermissions) {
|
|
81
|
-
const { fetch: originalFetch, ...restExternal } = config.external ?? {};
|
|
82
|
-
Object.entries(originalFetch || {}).forEach(([key, values]) => {
|
|
83
|
-
const valuesToOverride = [];
|
|
84
|
-
values.forEach((egressValue) => {
|
|
85
|
-
if (typeof egressValue === 'string') {
|
|
86
|
-
valuesToOverride.push({
|
|
87
|
-
address: egressValue,
|
|
88
|
-
inScopeEUD: false
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
valuesToOverride.push(egressValue);
|
|
93
|
-
}
|
|
94
|
-
config.external.fetch[key] = valuesToOverride;
|
|
95
|
-
});
|
|
96
|
-
});
|
|
97
|
-
Object.entries(restExternal || {}).forEach(([key, values]) => {
|
|
98
|
-
const valuesToOverride = [];
|
|
99
|
-
values.forEach((egressValue) => {
|
|
100
|
-
if (typeof egressValue === 'string') {
|
|
101
|
-
valuesToOverride.push({
|
|
102
|
-
address: egressValue,
|
|
103
|
-
inScopeEUD: false
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
valuesToOverride.push(egressValue);
|
|
108
|
-
}
|
|
109
|
-
config.external[key] = valuesToOverride;
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
87
|
await state.configFile.writeToConfigFile('permissions', config);
|
|
114
88
|
return state;
|
|
115
89
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forge/lint",
|
|
3
|
-
"version": "5.9.0-next.
|
|
3
|
+
"version": "5.9.0-next.3",
|
|
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": "^
|
|
14
|
+
"@forge/api": "^5.3.0",
|
|
15
15
|
"@types/array.prototype.flatmap": "^1.2.6",
|
|
16
16
|
"@types/cross-spawn": "^6.0.6",
|
|
17
17
|
"@types/eslint": "8.56.2",
|
|
@@ -19,10 +19,10 @@
|
|
|
19
19
|
"eslint-plugin-import": "^2.29.1"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@forge/cli-shared": "
|
|
23
|
-
"@forge/csp": "
|
|
24
|
-
"@forge/egress": "
|
|
25
|
-
"@forge/manifest": "
|
|
22
|
+
"@forge/cli-shared": "7.1.0-next.3",
|
|
23
|
+
"@forge/csp": "3.9.0",
|
|
24
|
+
"@forge/egress": "1.4.1",
|
|
25
|
+
"@forge/manifest": "9.5.0-next.2",
|
|
26
26
|
"@typescript-eslint/typescript-estree": "^5.62.0",
|
|
27
27
|
"array.prototype.flatmap": "^1.3.2",
|
|
28
28
|
"atlassian-openapi": "^1.0.18",
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ManifestValidationResult, SchemaValidationError } from '@forge/manifest';
|
|
2
|
-
import { AbstractManifestLinter } from './abstract-manifest-linter';
|
|
3
|
-
import { LintResultRule, LintFixState, LintLogger } from '../../linter-interface';
|
|
4
|
-
import { StatsigService } from '@forge/cli-shared';
|
|
5
|
-
export declare class DeprecatedEgressPermissionsManifestLinter extends AbstractManifestLinter {
|
|
6
|
-
constructor(logger: LintLogger, statsigService: StatsigService);
|
|
7
|
-
getFixer(): ((errors: LintResultRule[], warnings: LintResultRule[], state: LintFixState) => Promise<LintFixState>) | undefined;
|
|
8
|
-
getResultsForFixer(results: ManifestValidationResult<any>): SchemaValidationError[];
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=deprecated-egress-permissions-manifest-linter.d.ts.map
|
package/out/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deprecated-egress-permissions-manifest-linter.d.ts","sourceRoot":"","sources":["../../../../src/lint/linters/manifest-linter/deprecated-egress-permissions-manifest-linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,qBAAa,yCAA0C,SAAQ,sBAAsB;gBACvE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc;IAI9D,QAAQ,IACJ,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC,GACtG,SAAS;IAIb,kBAAkB,CAAC,OAAO,EAAE,wBAAwB,CAAC,GAAG,CAAC,GAAG,qBAAqB,EAAE;CAGpF"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DeprecatedEgressPermissionsManifestLinter = void 0;
|
|
4
|
-
const manifest_1 = require("@forge/manifest");
|
|
5
|
-
const abstract_manifest_linter_1 = require("./abstract-manifest-linter");
|
|
6
|
-
const permission_linter_1 = require("../permission-linter/permission-linter");
|
|
7
|
-
class DeprecatedEgressPermissionsManifestLinter extends abstract_manifest_linter_1.AbstractManifestLinter {
|
|
8
|
-
constructor(logger, statsigService) {
|
|
9
|
-
super(manifest_1.ValidationTypes.DEPRECATED_EGRESS_PERMISSIONS, logger, statsigService);
|
|
10
|
-
}
|
|
11
|
-
getFixer() {
|
|
12
|
-
return permission_linter_1.fixMissingPermissions;
|
|
13
|
-
}
|
|
14
|
-
getResultsForFixer(results) {
|
|
15
|
-
return results.errors?.filter((error) => error.metadata?.hasDeprecatedEgressPermissions) || [];
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.DeprecatedEgressPermissionsManifestLinter = DeprecatedEgressPermissionsManifestLinter;
|