@forge/manifest 0.0.0-experimental-e739c13 → 0.0.0-experimental-9fff5da
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 +243 -3
- package/out/index.d.ts +1 -1
- package/out/index.d.ts.map +1 -1
- package/out/processor/full-validation-processor.d.ts.map +1 -1
- package/out/processor/full-validation-processor.js +5 -3
- package/out/schema/basic-manifest-schema.json +24 -7
- package/out/schema/basic-manifest.d.ts +13 -3
- package/out/schema/manifest-schema.json +7383 -804
- package/out/schema/manifest.d.ts +50174 -162
- package/out/scopes/shipyard-scopes.json +191 -0
- package/out/text/errors.d.ts +24 -1
- package/out/text/errors.d.ts.map +1 -1
- package/out/text/errors.js +24 -1
- package/out/types/index.d.ts +0 -1
- package/out/types/index.d.ts.map +1 -1
- package/out/types/index.js +0 -1
- package/out/types/module-types.d.ts +58 -1
- package/out/types/module-types.d.ts.map +1 -1
- package/out/types/module-types.js +57 -0
- package/out/utils/line-finder.d.ts +1 -1
- package/out/utils/line-finder.d.ts.map +1 -1
- package/out/utils/line-finder.js +25 -7
- package/out/utils/module-key-cleaner.d.ts.map +1 -1
- package/out/validators/connect-modules-validator.d.ts +7 -0
- package/out/validators/connect-modules-validator.d.ts.map +1 -0
- package/out/validators/connect-modules-validator.js +48 -0
- package/out/validators/connect-remote-validator.d.ts +7 -0
- package/out/validators/connect-remote-validator.d.ts.map +1 -0
- package/out/validators/connect-remote-validator.js +31 -0
- package/out/validators/index.d.ts +4 -0
- package/out/validators/index.d.ts.map +1 -1
- package/out/validators/index.js +4 -0
- package/out/validators/modules-validator.d.ts.map +1 -1
- package/out/validators/modules-validator.js +16 -0
- package/out/validators/permissions-validator.d.ts.map +1 -1
- package/out/validators/permissions-validator.js +17 -11
- package/out/validators/providers-validator.d.ts +8 -0
- package/out/validators/providers-validator.d.ts.map +1 -0
- package/out/validators/providers-validator.js +71 -0
- package/out/validators/schema-validator.d.ts.map +1 -1
- package/out/validators/schema-validator.js +11 -2
- package/package.json +1 -1
- package/out/types/scopes-types.d.ts +0 -2
- package/out/types/scopes-types.d.ts.map +0 -1
- package/out/types/scopes-types.js +0 -52
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
[
|
|
2
|
+
"access-email-addresses:connect-jira",
|
|
3
|
+
"act-as-user:connect-jira",
|
|
4
|
+
"admin:connect-jira",
|
|
5
|
+
"delete:connect-jira",
|
|
6
|
+
"delete:content:confluence",
|
|
7
|
+
"delete:space:confluence",
|
|
8
|
+
"manage:confluence-configuration",
|
|
9
|
+
"manage:jira-configuration",
|
|
10
|
+
"manage:jira-data-provider",
|
|
11
|
+
"manage:jira-project",
|
|
12
|
+
"manage:jira-webhook",
|
|
13
|
+
"project-admin:connect-jira",
|
|
14
|
+
"read:account",
|
|
15
|
+
"read:component:compass",
|
|
16
|
+
"read:confluence-content.all",
|
|
17
|
+
"read:confluence-content.permission",
|
|
18
|
+
"read:confluence-content.summary",
|
|
19
|
+
"read:confluence-groups",
|
|
20
|
+
"read:confluence-props",
|
|
21
|
+
"read:confluence-space.summary",
|
|
22
|
+
"read:confluence-user",
|
|
23
|
+
"read:connect-jira",
|
|
24
|
+
"read:event:compass",
|
|
25
|
+
"read:jira-user",
|
|
26
|
+
"read:jira-work",
|
|
27
|
+
"read:me",
|
|
28
|
+
"read:scorecard:compass",
|
|
29
|
+
"readonly:analytics.content:confluence",
|
|
30
|
+
"readonly:attachment:confluence",
|
|
31
|
+
"readonly:audit-log:confluence",
|
|
32
|
+
"readonly:audit-log:jira",
|
|
33
|
+
"readonly:avatar:jira",
|
|
34
|
+
"readonly:board-scope.admin:jira-software",
|
|
35
|
+
"readonly:board-scope:jira-software",
|
|
36
|
+
"readonly:build:jira-software",
|
|
37
|
+
"readonly:configuration:confluence",
|
|
38
|
+
"readonly:configuration:jira",
|
|
39
|
+
"readonly:content.attachment:confluence",
|
|
40
|
+
"readonly:content.comment:confluence",
|
|
41
|
+
"readonly:content.inlinetask:confluence",
|
|
42
|
+
"readonly:content.label:confluence",
|
|
43
|
+
"readonly:content.permission:confluence",
|
|
44
|
+
"readonly:content.property:confluence",
|
|
45
|
+
"readonly:content.restriction:confluence",
|
|
46
|
+
"readonly:content.summary:confluence",
|
|
47
|
+
"readonly:content.template:confluence",
|
|
48
|
+
"readonly:content.watcher:confluence",
|
|
49
|
+
"readonly:content:confluence",
|
|
50
|
+
"readonly:dashboard.property:jira",
|
|
51
|
+
"readonly:dashboard:jira",
|
|
52
|
+
"readonly:deployment:jira-software",
|
|
53
|
+
"readonly:epic:jira-software",
|
|
54
|
+
"readonly:feature-flag:jira-software",
|
|
55
|
+
"readonly:field-configuration-scheme:jira",
|
|
56
|
+
"readonly:field:jira",
|
|
57
|
+
"readonly:filter:jira",
|
|
58
|
+
"readonly:group:confluence",
|
|
59
|
+
"readonly:group:jira",
|
|
60
|
+
"readonly:information:jira",
|
|
61
|
+
"readonly:instance:jira",
|
|
62
|
+
"readonly:issue-link-type:jira",
|
|
63
|
+
"readonly:issue-security-scheme:jira",
|
|
64
|
+
"readonly:issue-type-scheme:jira",
|
|
65
|
+
"readonly:issue-type-screen-scheme:jira",
|
|
66
|
+
"readonly:issue-type.property:jira",
|
|
67
|
+
"readonly:issue-type:jira",
|
|
68
|
+
"readonly:issue.attachment:jira",
|
|
69
|
+
"readonly:issue.comment.property:jira",
|
|
70
|
+
"readonly:issue.comment:jira",
|
|
71
|
+
"readonly:issue.link:jira",
|
|
72
|
+
"readonly:issue.property:jira",
|
|
73
|
+
"readonly:issue.remote-link:jira",
|
|
74
|
+
"readonly:issue.time-tracking:jira",
|
|
75
|
+
"readonly:issue.watchers:jira",
|
|
76
|
+
"readonly:issue.workflow:jira",
|
|
77
|
+
"readonly:issue.worklog.property:jira",
|
|
78
|
+
"readonly:issue.worklog:jira",
|
|
79
|
+
"readonly:issue:jira",
|
|
80
|
+
"readonly:issue:jira-software",
|
|
81
|
+
"readonly:label:jira",
|
|
82
|
+
"readonly:notification-scheme:jira",
|
|
83
|
+
"readonly:permissions:jira",
|
|
84
|
+
"readonly:priority:jira",
|
|
85
|
+
"readonly:project-category:jira",
|
|
86
|
+
"readonly:project.components:jira",
|
|
87
|
+
"readonly:project.permissions:jira",
|
|
88
|
+
"readonly:project.property:jira",
|
|
89
|
+
"readonly:project.version:jira",
|
|
90
|
+
"readonly:project:jira",
|
|
91
|
+
"readonly:relation:confluence",
|
|
92
|
+
"readonly:remote-link:jira-software",
|
|
93
|
+
"readonly:resolution:jira",
|
|
94
|
+
"readonly:role:jira",
|
|
95
|
+
"readonly:screen:jira",
|
|
96
|
+
"readonly:source-code:jira-software",
|
|
97
|
+
"readonly:space.permission:confluence",
|
|
98
|
+
"readonly:space.property:confluence",
|
|
99
|
+
"readonly:space.setting:confluence",
|
|
100
|
+
"readonly:space:confluence",
|
|
101
|
+
"readonly:sprint:jira-software",
|
|
102
|
+
"readonly:status:jira",
|
|
103
|
+
"readonly:user-group:jira",
|
|
104
|
+
"readonly:user.property:jira",
|
|
105
|
+
"readonly:user:confluence",
|
|
106
|
+
"readonly:user:jira",
|
|
107
|
+
"readonly:webhook:jira",
|
|
108
|
+
"readonly:workflow.property:jira",
|
|
109
|
+
"readonly:workflow:jira",
|
|
110
|
+
"search:confluence",
|
|
111
|
+
"search:issue:jira",
|
|
112
|
+
"search:jira",
|
|
113
|
+
"search:user:jira",
|
|
114
|
+
"send:notification:jira",
|
|
115
|
+
"storage:app",
|
|
116
|
+
"write:component:compass",
|
|
117
|
+
"write:confluence-content",
|
|
118
|
+
"write:confluence-file",
|
|
119
|
+
"write:confluence-groups",
|
|
120
|
+
"write:confluence-props",
|
|
121
|
+
"write:confluence-space",
|
|
122
|
+
"write:connect-jira",
|
|
123
|
+
"write:event:compass",
|
|
124
|
+
"write:jira-work",
|
|
125
|
+
"write:scorecard:compass",
|
|
126
|
+
"writeonly:attachment:confluence",
|
|
127
|
+
"writeonly:audit-log:confluence",
|
|
128
|
+
"writeonly:avatar:jira",
|
|
129
|
+
"writeonly:board-scope.admin:jira-software",
|
|
130
|
+
"writeonly:board-scope:jira-software",
|
|
131
|
+
"writeonly:build:jira-software",
|
|
132
|
+
"writeonly:configuration:confluence",
|
|
133
|
+
"writeonly:content.inlinetask:confluence",
|
|
134
|
+
"writeonly:content.label:confluence",
|
|
135
|
+
"writeonly:content.property:confluence",
|
|
136
|
+
"writeonly:content.restriction:confluence",
|
|
137
|
+
"writeonly:content.template:confluence",
|
|
138
|
+
"writeonly:content.watcher:confluence",
|
|
139
|
+
"writeonly:content:confluence",
|
|
140
|
+
"writeonly:dashboard.property:jira",
|
|
141
|
+
"writeonly:dashboard:jira",
|
|
142
|
+
"writeonly:deployment:jira-software",
|
|
143
|
+
"writeonly:epic:jira-software",
|
|
144
|
+
"writeonly:feature-flag:jira-software",
|
|
145
|
+
"writeonly:field-configuration-scheme:jira",
|
|
146
|
+
"writeonly:field:jira",
|
|
147
|
+
"writeonly:filter:jira",
|
|
148
|
+
"writeonly:group:confluence",
|
|
149
|
+
"writeonly:group:jira",
|
|
150
|
+
"writeonly:issue-link-type:jira",
|
|
151
|
+
"writeonly:issue-type-scheme:jira",
|
|
152
|
+
"writeonly:issue-type-screen-scheme:jira",
|
|
153
|
+
"writeonly:issue-type.property:jira",
|
|
154
|
+
"writeonly:issue-type:jira",
|
|
155
|
+
"writeonly:issue.attachment:jira",
|
|
156
|
+
"writeonly:issue.comment.property:jira",
|
|
157
|
+
"writeonly:issue.comment:jira",
|
|
158
|
+
"writeonly:issue.link:jira",
|
|
159
|
+
"writeonly:issue.property:jira",
|
|
160
|
+
"writeonly:issue.remote-link:jira",
|
|
161
|
+
"writeonly:issue.time-tracking:jira",
|
|
162
|
+
"writeonly:issue.watchers:jira",
|
|
163
|
+
"writeonly:issue.workflow:jira",
|
|
164
|
+
"writeonly:issue.worklog.property:jira",
|
|
165
|
+
"writeonly:issue.worklog:jira",
|
|
166
|
+
"writeonly:issue:jira",
|
|
167
|
+
"writeonly:issue:jira-software",
|
|
168
|
+
"writeonly:permissions:jira",
|
|
169
|
+
"writeonly:project-category:jira",
|
|
170
|
+
"writeonly:project.components:jira",
|
|
171
|
+
"writeonly:project.permissions:jira",
|
|
172
|
+
"writeonly:project.property:jira",
|
|
173
|
+
"writeonly:project.version:jira",
|
|
174
|
+
"writeonly:project:jira",
|
|
175
|
+
"writeonly:relation:confluence",
|
|
176
|
+
"writeonly:remote-link:jira-software",
|
|
177
|
+
"writeonly:role:jira",
|
|
178
|
+
"writeonly:screen:jira",
|
|
179
|
+
"writeonly:source-code:jira-software",
|
|
180
|
+
"writeonly:space.permission:confluence",
|
|
181
|
+
"writeonly:space.property:confluence",
|
|
182
|
+
"writeonly:space.setting:confluence",
|
|
183
|
+
"writeonly:space:confluence",
|
|
184
|
+
"writeonly:sprint:jira-software",
|
|
185
|
+
"writeonly:user-group:jira",
|
|
186
|
+
"writeonly:user.property:jira",
|
|
187
|
+
"writeonly:user:jira",
|
|
188
|
+
"writeonly:webhook:jira",
|
|
189
|
+
"writeonly:workflow.property:jira",
|
|
190
|
+
"writeonly:workflow:jira"
|
|
191
|
+
]
|
package/out/text/errors.d.ts
CHANGED
|
@@ -6,11 +6,18 @@ export declare const errors: {
|
|
|
6
6
|
oneOf: (props: string[][] | undefined) => string;
|
|
7
7
|
enumValues: (props: string[]) => string;
|
|
8
8
|
deprecatedValue: (section: string, field: string, additionalInfo?: string | undefined) => string;
|
|
9
|
+
additionalProperties: (additionalProperty: string) => string;
|
|
9
10
|
};
|
|
10
11
|
permissions: {
|
|
11
12
|
invalidPermission: (element: string, value: string) => string;
|
|
12
13
|
missingPermissionFromScope: (scope: string, event: string) => string;
|
|
13
14
|
};
|
|
15
|
+
connectModules: {
|
|
16
|
+
invalidConnectModule: (module: string) => string;
|
|
17
|
+
missingConnectModule: () => string;
|
|
18
|
+
duplicateKeyFound: (key: string) => string;
|
|
19
|
+
duplicatateLifecycleFound: (module: string) => string;
|
|
20
|
+
};
|
|
14
21
|
modules: {
|
|
15
22
|
invalidModule: (module: string) => string;
|
|
16
23
|
missingModule: () => string;
|
|
@@ -31,6 +38,9 @@ export declare const errors: {
|
|
|
31
38
|
fullPage: {
|
|
32
39
|
children: (moduleType: string) => string;
|
|
33
40
|
};
|
|
41
|
+
customFields: {
|
|
42
|
+
searchAlias: (aliases: string[]) => string;
|
|
43
|
+
};
|
|
34
44
|
function: {
|
|
35
45
|
invalidKeyLength: (key: string) => string;
|
|
36
46
|
handler: {
|
|
@@ -50,6 +60,15 @@ export declare const errors: {
|
|
|
50
60
|
name: string;
|
|
51
61
|
};
|
|
52
62
|
};
|
|
63
|
+
providers: {
|
|
64
|
+
missingRemote: (provider: string, remote: string) => string;
|
|
65
|
+
missingEgress: (remote: string) => string;
|
|
66
|
+
missingProfileFunction: (provider: string, functionKey: string) => string;
|
|
67
|
+
};
|
|
68
|
+
app: {
|
|
69
|
+
missingAppConnectRemote: () => string;
|
|
70
|
+
missingRemoteForConnect: (key: string) => string;
|
|
71
|
+
};
|
|
53
72
|
};
|
|
54
73
|
export declare enum References {
|
|
55
74
|
MissingManifest = "manifest-file-required",
|
|
@@ -58,7 +77,11 @@ export declare enum References {
|
|
|
58
77
|
Permissions = "valid-permissions-required",
|
|
59
78
|
MissingScopes = "permission-scope-required",
|
|
60
79
|
Modules = "valid-module-required",
|
|
80
|
+
ConnectModules = "valid-connect-module-required",
|
|
81
|
+
DuplicateModuleKeys = "duplicate-module-keys",
|
|
61
82
|
Resources = "valid-resource-required",
|
|
62
|
-
|
|
83
|
+
Providers = "valid-provider-required",
|
|
84
|
+
Deprecated = "deprecated-property",
|
|
85
|
+
App = "valid-app-config-required"
|
|
63
86
|
}
|
|
64
87
|
//# sourceMappingURL=errors.d.ts.map
|
package/out/text/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;8BACS,MAAM,KAAG,MAAM;2BACpB,MAAM;yBAEN,MAAM,GAAG,SAAS,QAAQ,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,KAAG,MAAM;;uBAO3E,MAAM,EAAE,EAAE,GAAG,SAAS,KAAG,MAAM;4BAI1B,MAAM,EAAE,KAAG,MAAM;mCACV,MAAM,SAAS,MAAM,0CAA4B,MAAM;;;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;8BACS,MAAM,KAAG,MAAM;2BACpB,MAAM;yBAEN,MAAM,GAAG,SAAS,QAAQ,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,KAAG,MAAM;;uBAO3E,MAAM,EAAE,EAAE,GAAG,SAAS,KAAG,MAAM;4BAI1B,MAAM,EAAE,KAAG,MAAM;mCACV,MAAM,SAAS,MAAM,0CAA4B,MAAM;mDAIvC,MAAM,KAAG,MAAM;;;qCAI7B,MAAM,SAAS,MAAM,KAAG,MAAM;4CAEvB,MAAM,SAAS,MAAM,KAAG,MAAM;;;uCAInC,MAAM,KAAG,MAAM;oCACpB,MAAM;iCAEP,MAAM,KAAG,MAAM;4CACJ,MAAM,KAAG,MAAM;;;gCAG3B,MAAM,KAAG,MAAM;6BACpB,MAAM;+BACJ,MAAM;iCACF,MAAM,KAAG,MAAM;yCACP,MAAM,eAAe,MAAM,KAAG,MAAM;yCAEpC,MAAM,eAAe,MAAM,KAAG,MAAM;;yCAGtC,MAAM,KAAG,MAAM;iCAEvB,MAAM,KAAG,MAAM;4CACJ,MAAM,gBAAgB,MAAM,KAAG,MAAM;sCAE3C,MAAM,gBAAgB,MAAM,gBAAgB,MAAM,KAAG,MAAM;;;mCAI9D,MAAM,KAAG,MAAM;mCAEf,MAAM,KAAG,MAAM;;;mCAIf,MAAM,KAAG,MAAM;;;mCAIf,MAAM,EAAE,KAAG,MAAM;;;oCAIhB,MAAM,KAAG,MAAM;;oCAEjB,MAAM,SAAS,MAAM,KAAG,MAAM;qCAI7B,MAAM,YAAY,MAAM,KAAG,MAAM;;;;;mCAQ/B,MAAM,OAAO,MAAM,KAAG,MAAM;iCAE9B,MAAM,OAAO,MAAM,KAAG,MAAM;oCAEzB,MAAM,OAAO,MAAM,KAAG,MAAM;uCAEzB,MAAM,KAAG,MAAM;;;;;;;;kCAQpB,MAAM,UAAU,MAAM,KAAG,MAAM;gCAEjC,MAAM,KAAG,MAAM;2CAEJ,MAAM,eAAe,MAAM,KAAG,MAAM;;;uCAI1C,MAAM;uCAEJ,MAAM,KAAG,MAAM;;CAGjD,CAAC;AAEF,oBAAY,UAAU;IACpB,eAAe,2BAA2B;IAC1C,eAAe,wBAAwB;IACvC,WAAW,4BAA4B;IACvC,WAAW,+BAA+B;IAC1C,aAAa,8BAA8B;IAC3C,OAAO,0BAA0B;IACjC,cAAc,kCAAkC;IAChD,mBAAmB,0BAA0B;IAC7C,SAAS,4BAA4B;IACrC,SAAS,4BAA4B;IACrC,UAAU,wBAAwB;IAClC,GAAG,8BAA8B;CAClC"}
|
package/out/text/errors.js
CHANGED
|
@@ -17,12 +17,19 @@ exports.errors = {
|
|
|
17
17
|
? `required properties are ${props.map((v) => "'" + v.join(', ') + "'").join(' or ')}`
|
|
18
18
|
: 'provided properties do not match schema. Learn more about modules at http://go.atlassian.com/forge-modules.',
|
|
19
19
|
enumValues: (props) => `allowed values are ${props.map((v) => "'" + v + "'").join(', ')}`,
|
|
20
|
-
deprecatedValue: (section, field, additionalInfo) => `The "${field}" property under "${section}" is deprecated and can be removed. ${additionalInfo ? `${additionalInfo}` : ''}
|
|
20
|
+
deprecatedValue: (section, field, additionalInfo) => `The "${field}" property under "${section}" is deprecated and can be removed. ${additionalInfo ? `${additionalInfo}` : ''}`,
|
|
21
|
+
additionalProperties: (additionalProperty) => `should NOT have additional property '${additionalProperty}'`
|
|
21
22
|
},
|
|
22
23
|
permissions: {
|
|
23
24
|
invalidPermission: (element, value) => `Invalid '${element}' permission in the manifest.yml file - '${value}'. Learn more about permissions at: http://go.atlassian.com/forge-permissions.`,
|
|
24
25
|
missingPermissionFromScope: (scope, event) => `Trigger event: '${event}' requires '${scope}' scope`
|
|
25
26
|
},
|
|
27
|
+
connectModules: {
|
|
28
|
+
invalidConnectModule: (module) => `invalid value '${module}' in connectModules`,
|
|
29
|
+
missingConnectModule: () => `document must have at least 1 valid connect module when 'connectModules' is declared`,
|
|
30
|
+
duplicateKeyFound: (key) => `found duplicate connect module key '${key}'`,
|
|
31
|
+
duplicatateLifecycleFound: (module) => `'${module}' should contain only one element`
|
|
32
|
+
},
|
|
26
33
|
modules: {
|
|
27
34
|
invalidModule: (module) => `invalid value '${module}' in modules`,
|
|
28
35
|
missingModule: () => 'document must have at least 1 module',
|
|
@@ -43,6 +50,9 @@ exports.errors = {
|
|
|
43
50
|
fullPage: {
|
|
44
51
|
children: (moduleType) => `Only a single entry of the ${moduleType} module can be defined in the manifest`
|
|
45
52
|
},
|
|
53
|
+
customFields: {
|
|
54
|
+
searchAlias: (aliases) => `Search alias should be always unique per field. Found duplicates: ${aliases.join(', ')}.`
|
|
55
|
+
},
|
|
46
56
|
function: {
|
|
47
57
|
invalidKeyLength: (key) => `The function key exceeds 23 characters: ‘${key}’.`,
|
|
48
58
|
handler: {
|
|
@@ -61,6 +71,15 @@ exports.errors = {
|
|
|
61
71
|
app: {
|
|
62
72
|
name: 'You can now manage this in the Developer Console at https://developer.atlassian.com/console/.'
|
|
63
73
|
}
|
|
74
|
+
},
|
|
75
|
+
providers: {
|
|
76
|
+
missingRemote: (provider, remote) => `missing remote '${remote}' is being referenced by '${provider}' in providers`,
|
|
77
|
+
missingEgress: (remote) => `missing egress permissions for remote '${remote}'. Please add the remote to permissions.fetch`,
|
|
78
|
+
missingProfileFunction: (provider, functionKey) => `missing function '${functionKey}' is being referenced by '${provider}' in providers`
|
|
79
|
+
},
|
|
80
|
+
app: {
|
|
81
|
+
missingAppConnectRemote: () => `missing app.connect.remote. app.connect.remote is required if connectModules are present.`,
|
|
82
|
+
missingRemoteForConnect: (key) => `no remote found with key '${key}' matching app.connect.remote value.`
|
|
64
83
|
}
|
|
65
84
|
};
|
|
66
85
|
var References;
|
|
@@ -71,6 +90,10 @@ var References;
|
|
|
71
90
|
References["Permissions"] = "valid-permissions-required";
|
|
72
91
|
References["MissingScopes"] = "permission-scope-required";
|
|
73
92
|
References["Modules"] = "valid-module-required";
|
|
93
|
+
References["ConnectModules"] = "valid-connect-module-required";
|
|
94
|
+
References["DuplicateModuleKeys"] = "duplicate-module-keys";
|
|
74
95
|
References["Resources"] = "valid-resource-required";
|
|
96
|
+
References["Providers"] = "valid-provider-required";
|
|
75
97
|
References["Deprecated"] = "deprecated-property";
|
|
98
|
+
References["App"] = "valid-app-config-required";
|
|
76
99
|
})(References = exports.References || (exports.References = {}));
|
package/out/types/index.d.ts
CHANGED
package/out/types/index.d.ts.map
CHANGED
|
@@ -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,
|
|
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"}
|
package/out/types/index.js
CHANGED
|
@@ -4,5 +4,4 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
tslib_1.__exportStar(require("./errors"), exports);
|
|
5
5
|
tslib_1.__exportStar(require("./module-types"), exports);
|
|
6
6
|
tslib_1.__exportStar(require("./constants"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./scopes-types"), exports);
|
|
8
7
|
tslib_1.__exportStar(require("./validation-types"), exports);
|
|
@@ -2,6 +2,7 @@ export declare enum AllModuleTypes {
|
|
|
2
2
|
CoreFunction = "core:function",
|
|
3
3
|
CoreTrigger = "core:trigger",
|
|
4
4
|
CoreWebTrigger = "core:webtrigger",
|
|
5
|
+
CoreConsumer = "core:consumer",
|
|
5
6
|
CoreScheduledTrigger = "core:scheduledTrigger",
|
|
6
7
|
XenMacro = "xen:macro",
|
|
7
8
|
ConfluenceContentAction = "confluence:contentAction",
|
|
@@ -19,7 +20,63 @@ export declare enum AllModuleTypes {
|
|
|
19
20
|
JiraIssueGlance = "jira:issueGlance",
|
|
20
21
|
JiraIssuePanel = "jira:issuePanel",
|
|
21
22
|
JiraAdminPage = "jira:adminPage",
|
|
22
|
-
JiraProjectPage = "jira:projectPage"
|
|
23
|
+
JiraProjectPage = "jira:projectPage",
|
|
24
|
+
JiraDashboardGadget = "jira:dashboardGadget",
|
|
25
|
+
CompassAdminPage = "compass:adminPage",
|
|
26
|
+
CompassComponentPage = "compass:componentPage",
|
|
27
|
+
ConnectJiraAdminPages = "connect-jira:adminPages",
|
|
28
|
+
ConnectJiraJiraBackgroundScripts = "connect-jira:jiraBackgroundScripts",
|
|
29
|
+
ConnectJiraGeneralPages = "connect-jira:generalPages",
|
|
30
|
+
ConnectJiraJiraDashboardItems = "connect-jira:jiraDashboardItems",
|
|
31
|
+
ConnectJiraJiraGlobalPermissions = "connect-jira:jiraGlobalPermissions",
|
|
32
|
+
ConnectJiraJiraIssueFields = "connect-jira:jiraIssueFields",
|
|
33
|
+
ConnectJiraJiraIssueGlances = "connect-jira:jiraIssueGlances",
|
|
34
|
+
ConnectJiraJiraProjectAdminTabPanels = "connect-jira:jiraProjectAdminTabPanels",
|
|
35
|
+
ConnectJiraJiraProjectTabPanels = "connect-jira:jiraProjectTabPanels",
|
|
36
|
+
ConnectJiraJiraWorkflowConditions = "connect-jira:jiraWorkflowConditions",
|
|
37
|
+
ConnectJiraJiraWorkflowPostFunctions = "connect-jira:jiraWorkflowPostFunctions",
|
|
38
|
+
ConnectJiraKeyboardShortcuts = "connect-jira:keyboardShortcuts",
|
|
39
|
+
ConnectJiraWebItems = "connect-jira:webItems",
|
|
40
|
+
ConnectJiraLifecycle = "connect-jira:lifecycle",
|
|
41
|
+
ConnectConfluenceAdminPages = "connect-confluence:adminPages",
|
|
42
|
+
ConnectConfluenceBlueprints = "connect-confluence:blueprints",
|
|
43
|
+
ConnectConfluenceConfigurePage = "connect-confluence:configurePage",
|
|
44
|
+
ConnectConfluenceConfluenceContentProperties = "connect-confluence:confluenceContentProperties",
|
|
45
|
+
ConnectConfluenceConfluenceThemes = "connect-confluence:confluenceThemes",
|
|
46
|
+
ConnectConfluenceContentBylineItems = "connect-confluence:contentBylineItems",
|
|
47
|
+
ConnectConfluenceCustomContent = "connect-confluence:customContent",
|
|
48
|
+
ConnectConfluenceDialogs = "connect-confluence:dialogs",
|
|
49
|
+
ConnectConfluenceDynamicContentMacros = "connect-confluence:dynamicContentMacros",
|
|
50
|
+
ConnectConfluenceGeneralPages = "connect-confluence:generalPages",
|
|
51
|
+
ConnectConfluenceKeyboardShortcuts = "connect-confluence:keyboardShortcuts",
|
|
52
|
+
ConnectConfluencePostInstallPage = "connect-confluence:postInstallPage",
|
|
53
|
+
ConnectConfluenceSpaceToolsTabs = "connect-confluence:spaceToolsTabs",
|
|
54
|
+
ConnectConfluenceStaticContentMacros = "connect-confluence:staticContentMacros",
|
|
55
|
+
ConnectConfluenceWebItems = "connect-confluence:webItems",
|
|
56
|
+
ConnectConfluenceWebPanels = "connect-confluence:webPanels",
|
|
57
|
+
ConnectConfluenceWebSections = "connect-confluence:webSections",
|
|
58
|
+
ConnectConfluenceWebhooks = "connect-confluence:webhooks",
|
|
59
|
+
ConnectJiraConfigurePage = "connect-jira:configurePage",
|
|
60
|
+
ConnectJiraDialogs = "connect-jira:dialogs",
|
|
61
|
+
ConnectJiraJiraBuildInfoProvider = "connect-jira:jiraBuildInfoProvider",
|
|
62
|
+
ConnectJiraJiraDeploymentInfoProvider = "connect-jira:jiraDeploymentInfoProvider",
|
|
63
|
+
ConnectJiraJiraDevelopmentTool = "connect-jira:jiraDevelopmentTool",
|
|
64
|
+
ConnectJiraJiraEntityProperties = "connect-jira:jiraEntityProperties",
|
|
65
|
+
ConnectJiraJiraFeatureFlagInfoProvider = "connect-jira:jiraFeatureFlagInfoProvider",
|
|
66
|
+
ConnectJiraJiraIssueContents = "connect-jira:jiraIssueContents",
|
|
67
|
+
ConnectJiraJiraIssueTabPanels = "connect-jira:jiraIssueTabPanels",
|
|
68
|
+
ConnectJiraJiraIssueTypes = "connect-jira:jiraIssueTypes",
|
|
69
|
+
ConnectJiraJiraProjectPages = "connect-jira:jiraProjectPages",
|
|
70
|
+
ConnectJiraJiraProjectPermissions = "connect-jira:jiraProjectPermissions",
|
|
71
|
+
ConnectJiraJiraReports = "connect-jira:jiraReports",
|
|
72
|
+
ConnectJiraJiraSearchRequestViews = "connect-jira:jiraSearchRequestViews",
|
|
73
|
+
ConnectJiraJiraTimeTrackingProviders = "connect-jira:jiraTimeTrackingProviders",
|
|
74
|
+
ConnectJiraJiraWorkflowValidators = "connect-jira:jiraWorkflowValidators",
|
|
75
|
+
ConnectJiraPostInstallPage = "connect-jira:postInstallPage",
|
|
76
|
+
ConnectJiraWebPanels = "connect-jira:webPanels",
|
|
77
|
+
ConnectJiraWebSections = "connect-jira:webSections",
|
|
78
|
+
ConnectJiraWebhooks = "connect-jira:webhooks",
|
|
79
|
+
ConnectConfluenceLifecycle = "connect-confluence:lifecycle"
|
|
23
80
|
}
|
|
24
81
|
export declare const SUPPORTED_MODULES: AllModuleTypes[];
|
|
25
82
|
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":"AAAA,oBAAY,cAAc;IACxB,YAAY,kBAAkB;IAC9B,WAAW,iBAAiB;IAC5B,cAAc,oBAAoB;IAClC,oBAAoB,0BAA0B;IAC9C,QAAQ,cAAc;IACtB,uBAAuB,6BAA6B;IACpD,2BAA2B,iCAAiC;IAC5D,qBAAqB,2BAA2B;IAChD,wBAAwB,8BAA8B;IACtD,sBAAsB,4BAA4B;IAClD,mBAAmB,yBAAyB;IAC5C,uBAAuB,6BAA6B;IACpD,qBAAqB,2BAA2B;IAChD,eAAe,qBAAqB;IACpC,mBAAmB,yBAAyB;IAC5C,eAAe,qBAAqB;IACpC,iBAAiB,uBAAuB;IACxC,eAAe,qBAAqB;IACpC,cAAc,oBAAoB;IAClC,aAAa,mBAAmB;IAChC,eAAe,qBAAqB;
|
|
1
|
+
{"version":3,"file":"module-types.d.ts","sourceRoot":"","sources":["../../src/types/module-types.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,YAAY,kBAAkB;IAC9B,WAAW,iBAAiB;IAC5B,cAAc,oBAAoB;IAClC,YAAY,kBAAkB;IAC9B,oBAAoB,0BAA0B;IAC9C,QAAQ,cAAc;IACtB,uBAAuB,6BAA6B;IACpD,2BAA2B,iCAAiC;IAC5D,qBAAqB,2BAA2B;IAChD,wBAAwB,8BAA8B;IACtD,sBAAsB,4BAA4B;IAClD,mBAAmB,yBAAyB;IAC5C,uBAAuB,6BAA6B;IACpD,qBAAqB,2BAA2B;IAChD,eAAe,qBAAqB;IACpC,mBAAmB,yBAAyB;IAC5C,eAAe,qBAAqB;IACpC,iBAAiB,uBAAuB;IACxC,eAAe,qBAAqB;IACpC,cAAc,oBAAoB;IAClC,aAAa,mBAAmB;IAChC,eAAe,qBAAqB;IACpC,mBAAmB,yBAAyB;IAC5C,gBAAgB,sBAAsB;IACtC,oBAAoB,0BAA0B;IAE9C,qBAAqB,4BAA4B;IACjD,gCAAgC,uCAAuC;IACvE,uBAAuB,8BAA8B;IACrD,6BAA6B,oCAAoC;IACjE,gCAAgC,uCAAuC;IACvE,0BAA0B,iCAAiC;IAC3D,2BAA2B,kCAAkC;IAC7D,oCAAoC,2CAA2C;IAC/E,+BAA+B,sCAAsC;IACrE,iCAAiC,wCAAwC;IACzE,oCAAoC,2CAA2C;IAC/E,4BAA4B,mCAAmC;IAC/D,mBAAmB,0BAA0B;IAC7C,oBAAoB,2BAA2B;IAC/C,2BAA2B,kCAAkC;IAC7D,2BAA2B,kCAAkC;IAC7D,8BAA8B,qCAAqC;IACnE,4CAA4C,mDAAmD;IAC/F,iCAAiC,wCAAwC;IACzE,mCAAmC,0CAA0C;IAC7E,8BAA8B,qCAAqC;IACnE,wBAAwB,+BAA+B;IACvD,qCAAqC,4CAA4C;IACjF,6BAA6B,oCAAoC;IACjE,kCAAkC,yCAAyC;IAC3E,gCAAgC,uCAAuC;IACvE,+BAA+B,sCAAsC;IACrE,oCAAoC,2CAA2C;IAC/E,yBAAyB,gCAAgC;IACzD,0BAA0B,iCAAiC;IAC3D,4BAA4B,mCAAmC;IAC/D,yBAAyB,gCAAgC;IACzD,wBAAwB,+BAA+B;IACvD,kBAAkB,yBAAyB;IAC3C,gCAAgC,uCAAuC;IACvE,qCAAqC,4CAA4C;IACjF,8BAA8B,qCAAqC;IACnE,+BAA+B,sCAAsC;IACrE,sCAAsC,6CAA6C;IACnF,4BAA4B,mCAAmC;IAC/D,6BAA6B,oCAAoC;IACjE,yBAAyB,gCAAgC;IACzD,2BAA2B,kCAAkC;IAC7D,iCAAiC,wCAAwC;IACzE,sBAAsB,6BAA6B;IACnD,iCAAiC,wCAAwC;IACzE,oCAAoC,2CAA2C;IAC/E,iCAAiC,wCAAwC;IACzE,0BAA0B,iCAAiC;IAC3D,oBAAoB,2BAA2B;IAC/C,sBAAsB,6BAA6B;IACnD,mBAAmB,0BAA0B;IAC7C,0BAA0B,iCAAiC;CAC5D;AAED,eAAO,MAAM,iBAAiB,kBAAgC,CAAC;AAE/D,eAAO,MAAM,uBAAuB,UAAwE,CAAC"}
|
|
@@ -6,6 +6,7 @@ var AllModuleTypes;
|
|
|
6
6
|
AllModuleTypes["CoreFunction"] = "core:function";
|
|
7
7
|
AllModuleTypes["CoreTrigger"] = "core:trigger";
|
|
8
8
|
AllModuleTypes["CoreWebTrigger"] = "core:webtrigger";
|
|
9
|
+
AllModuleTypes["CoreConsumer"] = "core:consumer";
|
|
9
10
|
AllModuleTypes["CoreScheduledTrigger"] = "core:scheduledTrigger";
|
|
10
11
|
AllModuleTypes["XenMacro"] = "xen:macro";
|
|
11
12
|
AllModuleTypes["ConfluenceContentAction"] = "confluence:contentAction";
|
|
@@ -24,6 +25,62 @@ var AllModuleTypes;
|
|
|
24
25
|
AllModuleTypes["JiraIssuePanel"] = "jira:issuePanel";
|
|
25
26
|
AllModuleTypes["JiraAdminPage"] = "jira:adminPage";
|
|
26
27
|
AllModuleTypes["JiraProjectPage"] = "jira:projectPage";
|
|
28
|
+
AllModuleTypes["JiraDashboardGadget"] = "jira:dashboardGadget";
|
|
29
|
+
AllModuleTypes["CompassAdminPage"] = "compass:adminPage";
|
|
30
|
+
AllModuleTypes["CompassComponentPage"] = "compass:componentPage";
|
|
31
|
+
AllModuleTypes["ConnectJiraAdminPages"] = "connect-jira:adminPages";
|
|
32
|
+
AllModuleTypes["ConnectJiraJiraBackgroundScripts"] = "connect-jira:jiraBackgroundScripts";
|
|
33
|
+
AllModuleTypes["ConnectJiraGeneralPages"] = "connect-jira:generalPages";
|
|
34
|
+
AllModuleTypes["ConnectJiraJiraDashboardItems"] = "connect-jira:jiraDashboardItems";
|
|
35
|
+
AllModuleTypes["ConnectJiraJiraGlobalPermissions"] = "connect-jira:jiraGlobalPermissions";
|
|
36
|
+
AllModuleTypes["ConnectJiraJiraIssueFields"] = "connect-jira:jiraIssueFields";
|
|
37
|
+
AllModuleTypes["ConnectJiraJiraIssueGlances"] = "connect-jira:jiraIssueGlances";
|
|
38
|
+
AllModuleTypes["ConnectJiraJiraProjectAdminTabPanels"] = "connect-jira:jiraProjectAdminTabPanels";
|
|
39
|
+
AllModuleTypes["ConnectJiraJiraProjectTabPanels"] = "connect-jira:jiraProjectTabPanels";
|
|
40
|
+
AllModuleTypes["ConnectJiraJiraWorkflowConditions"] = "connect-jira:jiraWorkflowConditions";
|
|
41
|
+
AllModuleTypes["ConnectJiraJiraWorkflowPostFunctions"] = "connect-jira:jiraWorkflowPostFunctions";
|
|
42
|
+
AllModuleTypes["ConnectJiraKeyboardShortcuts"] = "connect-jira:keyboardShortcuts";
|
|
43
|
+
AllModuleTypes["ConnectJiraWebItems"] = "connect-jira:webItems";
|
|
44
|
+
AllModuleTypes["ConnectJiraLifecycle"] = "connect-jira:lifecycle";
|
|
45
|
+
AllModuleTypes["ConnectConfluenceAdminPages"] = "connect-confluence:adminPages";
|
|
46
|
+
AllModuleTypes["ConnectConfluenceBlueprints"] = "connect-confluence:blueprints";
|
|
47
|
+
AllModuleTypes["ConnectConfluenceConfigurePage"] = "connect-confluence:configurePage";
|
|
48
|
+
AllModuleTypes["ConnectConfluenceConfluenceContentProperties"] = "connect-confluence:confluenceContentProperties";
|
|
49
|
+
AllModuleTypes["ConnectConfluenceConfluenceThemes"] = "connect-confluence:confluenceThemes";
|
|
50
|
+
AllModuleTypes["ConnectConfluenceContentBylineItems"] = "connect-confluence:contentBylineItems";
|
|
51
|
+
AllModuleTypes["ConnectConfluenceCustomContent"] = "connect-confluence:customContent";
|
|
52
|
+
AllModuleTypes["ConnectConfluenceDialogs"] = "connect-confluence:dialogs";
|
|
53
|
+
AllModuleTypes["ConnectConfluenceDynamicContentMacros"] = "connect-confluence:dynamicContentMacros";
|
|
54
|
+
AllModuleTypes["ConnectConfluenceGeneralPages"] = "connect-confluence:generalPages";
|
|
55
|
+
AllModuleTypes["ConnectConfluenceKeyboardShortcuts"] = "connect-confluence:keyboardShortcuts";
|
|
56
|
+
AllModuleTypes["ConnectConfluencePostInstallPage"] = "connect-confluence:postInstallPage";
|
|
57
|
+
AllModuleTypes["ConnectConfluenceSpaceToolsTabs"] = "connect-confluence:spaceToolsTabs";
|
|
58
|
+
AllModuleTypes["ConnectConfluenceStaticContentMacros"] = "connect-confluence:staticContentMacros";
|
|
59
|
+
AllModuleTypes["ConnectConfluenceWebItems"] = "connect-confluence:webItems";
|
|
60
|
+
AllModuleTypes["ConnectConfluenceWebPanels"] = "connect-confluence:webPanels";
|
|
61
|
+
AllModuleTypes["ConnectConfluenceWebSections"] = "connect-confluence:webSections";
|
|
62
|
+
AllModuleTypes["ConnectConfluenceWebhooks"] = "connect-confluence:webhooks";
|
|
63
|
+
AllModuleTypes["ConnectJiraConfigurePage"] = "connect-jira:configurePage";
|
|
64
|
+
AllModuleTypes["ConnectJiraDialogs"] = "connect-jira:dialogs";
|
|
65
|
+
AllModuleTypes["ConnectJiraJiraBuildInfoProvider"] = "connect-jira:jiraBuildInfoProvider";
|
|
66
|
+
AllModuleTypes["ConnectJiraJiraDeploymentInfoProvider"] = "connect-jira:jiraDeploymentInfoProvider";
|
|
67
|
+
AllModuleTypes["ConnectJiraJiraDevelopmentTool"] = "connect-jira:jiraDevelopmentTool";
|
|
68
|
+
AllModuleTypes["ConnectJiraJiraEntityProperties"] = "connect-jira:jiraEntityProperties";
|
|
69
|
+
AllModuleTypes["ConnectJiraJiraFeatureFlagInfoProvider"] = "connect-jira:jiraFeatureFlagInfoProvider";
|
|
70
|
+
AllModuleTypes["ConnectJiraJiraIssueContents"] = "connect-jira:jiraIssueContents";
|
|
71
|
+
AllModuleTypes["ConnectJiraJiraIssueTabPanels"] = "connect-jira:jiraIssueTabPanels";
|
|
72
|
+
AllModuleTypes["ConnectJiraJiraIssueTypes"] = "connect-jira:jiraIssueTypes";
|
|
73
|
+
AllModuleTypes["ConnectJiraJiraProjectPages"] = "connect-jira:jiraProjectPages";
|
|
74
|
+
AllModuleTypes["ConnectJiraJiraProjectPermissions"] = "connect-jira:jiraProjectPermissions";
|
|
75
|
+
AllModuleTypes["ConnectJiraJiraReports"] = "connect-jira:jiraReports";
|
|
76
|
+
AllModuleTypes["ConnectJiraJiraSearchRequestViews"] = "connect-jira:jiraSearchRequestViews";
|
|
77
|
+
AllModuleTypes["ConnectJiraJiraTimeTrackingProviders"] = "connect-jira:jiraTimeTrackingProviders";
|
|
78
|
+
AllModuleTypes["ConnectJiraJiraWorkflowValidators"] = "connect-jira:jiraWorkflowValidators";
|
|
79
|
+
AllModuleTypes["ConnectJiraPostInstallPage"] = "connect-jira:postInstallPage";
|
|
80
|
+
AllModuleTypes["ConnectJiraWebPanels"] = "connect-jira:webPanels";
|
|
81
|
+
AllModuleTypes["ConnectJiraWebSections"] = "connect-jira:webSections";
|
|
82
|
+
AllModuleTypes["ConnectJiraWebhooks"] = "connect-jira:webhooks";
|
|
83
|
+
AllModuleTypes["ConnectConfluenceLifecycle"] = "connect-confluence:lifecycle";
|
|
27
84
|
})(AllModuleTypes = exports.AllModuleTypes || (exports.AllModuleTypes = {}));
|
|
28
85
|
exports.SUPPORTED_MODULES = Object.values(AllModuleTypes);
|
|
29
86
|
exports.SUPPORTED_PRODUCTS_ONLY = [...new Set(exports.SUPPORTED_MODULES.map((module) => module.split(':')[0]))];
|
|
@@ -2,6 +2,6 @@ interface Position {
|
|
|
2
2
|
line: number;
|
|
3
3
|
column: number;
|
|
4
4
|
}
|
|
5
|
-
export declare const findPosition: (substring: string, contentByLine: string[] | undefined) => Position;
|
|
5
|
+
export declare const findPosition: (substring: string, contentByLine: string[] | undefined, section?: string | undefined) => Position;
|
|
6
6
|
export {};
|
|
7
7
|
//# sourceMappingURL=line-finder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line-finder.d.ts","sourceRoot":"","sources":["../../src/utils/line-finder.ts"],"names":[],"mappings":"AAAA,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;
|
|
1
|
+
{"version":3,"file":"line-finder.d.ts","sourceRoot":"","sources":["../../src/utils/line-finder.ts"],"names":[],"mappings":"AAAA,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAqBD,eAAO,MAAM,YAAY,cAAe,MAAM,iBAAiB,MAAM,EAAE,GAAG,SAAS,mCAAqB,QA6BvG,CAAC"}
|
package/out/utils/line-finder.js
CHANGED
|
@@ -1,17 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.findPosition = void 0;
|
|
4
|
-
|
|
4
|
+
const defaultPosition = {
|
|
5
|
+
line: 1,
|
|
6
|
+
column: 0
|
|
7
|
+
};
|
|
8
|
+
const locateTargetInLines = (target, lines) => {
|
|
9
|
+
let lineNumber = -1;
|
|
10
|
+
for (let index = 0; index < lines.length; index++) {
|
|
11
|
+
const found = lines[index].indexOf(target);
|
|
12
|
+
if (found !== -1) {
|
|
13
|
+
lineNumber = index + 1;
|
|
14
|
+
break;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return lineNumber;
|
|
18
|
+
};
|
|
19
|
+
exports.findPosition = (substring, contentByLine, section) => {
|
|
5
20
|
let lineNumber = 1;
|
|
6
21
|
let columnNumber = 0;
|
|
22
|
+
let sectionLineNumber = 0;
|
|
7
23
|
if (!contentByLine) {
|
|
8
|
-
return
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
24
|
+
return defaultPosition;
|
|
25
|
+
}
|
|
26
|
+
if (section) {
|
|
27
|
+
sectionLineNumber = locateTargetInLines(section, contentByLine);
|
|
28
|
+
if (sectionLineNumber == -1) {
|
|
29
|
+
return defaultPosition;
|
|
30
|
+
}
|
|
12
31
|
}
|
|
13
|
-
let index;
|
|
14
|
-
for (index = 0; index < contentByLine.length; index++) {
|
|
32
|
+
for (let index = sectionLineNumber; index < contentByLine.length; index++) {
|
|
15
33
|
const found = contentByLine[index].indexOf(substring);
|
|
16
34
|
if (found != -1) {
|
|
17
35
|
lineNumber = index + 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-key-cleaner.d.ts","sourceRoot":"","sources":["../../src/utils/module-key-cleaner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,eAAO,MAAM,QAAQ,QAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"module-key-cleaner.d.ts","sourceRoot":"","sources":["../../src/utils/module-key-cleaner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,eAAO,MAAM,QAAQ,QAAS,MAAM,KAAG,MAAyC,CAAC;AAEjF,eAAO,MAAM,eAAe,qCAAwB,MAAM,EACsD,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ManifestObject, ManifestValidationResult } from '../types';
|
|
2
|
+
import { ManifestSchema } from '../schema/manifest';
|
|
3
|
+
import { ValidatorInterface } from './validator-interface';
|
|
4
|
+
export declare class ConnectModulesValidator implements ValidatorInterface<ManifestObject<ManifestSchema> | undefined, ManifestSchema> {
|
|
5
|
+
validate(manifest: ManifestObject<ManifestSchema> | undefined): ManifestValidationResult<ManifestSchema>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=connect-modules-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect-modules-validator.d.ts","sourceRoot":"","sources":["../../src/validators/connect-modules-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AAGxG,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE3D,qBAAa,uBACX,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IACzF,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GAAG,wBAAwB,CAAC,cAAc,CAAC;CA0EzG"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConnectModulesValidator = void 0;
|
|
4
|
+
const types_1 = require("../types");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
const text_1 = require("../text");
|
|
7
|
+
class ConnectModulesValidator {
|
|
8
|
+
validate(manifest) {
|
|
9
|
+
if (!manifest || !manifest.typedContent || !manifest.filePath) {
|
|
10
|
+
return {
|
|
11
|
+
success: false,
|
|
12
|
+
manifestObject: manifest
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
const validationErrors = [];
|
|
16
|
+
if (manifest.typedContent.connectModules) {
|
|
17
|
+
const { typedContent: { connectModules }, yamlContentByLine } = manifest;
|
|
18
|
+
const connectModuleNames = Object.keys(connectModules);
|
|
19
|
+
const validconnectModuleNames = types_1.SUPPORTED_MODULES.filter((moduleName) => moduleName.startsWith('connect-')).map((name) => name.replace(/connect-/g, ''));
|
|
20
|
+
connectModuleNames
|
|
21
|
+
.filter((name) => !validconnectModuleNames.includes(name))
|
|
22
|
+
.forEach((invalidName) => {
|
|
23
|
+
validationErrors.push(Object.assign({ message: text_1.errors.connectModules.invalidConnectModule(invalidName), reference: text_1.References.ConnectModules, level: 'error' }, utils_1.findPosition(invalidName, yamlContentByLine, 'connectModules')));
|
|
24
|
+
});
|
|
25
|
+
const modules = connectModuleNames.map((moduleName) => connectModules[moduleName]);
|
|
26
|
+
const moduleKeys = [].concat(...modules).map((item) => item.key);
|
|
27
|
+
const duplicateKeys = [...new Set(moduleKeys.filter((item, index) => moduleKeys.indexOf(item) != index))];
|
|
28
|
+
duplicateKeys.forEach((duplicateKey) => {
|
|
29
|
+
validationErrors.push(Object.assign({ message: text_1.errors.connectModules.duplicateKeyFound(duplicateKey), reference: text_1.References.ConnectModules, level: 'error' }, utils_1.findPosition(duplicateKey, yamlContentByLine)));
|
|
30
|
+
});
|
|
31
|
+
const lifecycleModules = connectModuleNames.filter((m) => m.endsWith(':lifecycle'));
|
|
32
|
+
if (lifecycleModules) {
|
|
33
|
+
lifecycleModules.forEach((lifecycle) => {
|
|
34
|
+
const lifecycleModule = connectModules[lifecycle];
|
|
35
|
+
if (Array.isArray(lifecycleModule) && lifecycleModule.length > 1) {
|
|
36
|
+
validationErrors.push(Object.assign({ message: text_1.errors.connectModules.duplicatateLifecycleFound(lifecycle), reference: text_1.References.ConnectModules, level: 'error' }, utils_1.findPosition(lifecycle, yamlContentByLine)));
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
success: validationErrors.length === 0,
|
|
43
|
+
manifestObject: manifest,
|
|
44
|
+
errors: validationErrors
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.ConnectModulesValidator = ConnectModulesValidator;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ValidatorInterface } from './validator-interface';
|
|
2
|
+
import { ManifestObject, ManifestValidationResult } from '../types';
|
|
3
|
+
import { ManifestSchema } from '../schema/manifest';
|
|
4
|
+
export declare class ConnectRemoteValidator implements ValidatorInterface<ManifestObject<ManifestSchema> | undefined, ManifestSchema> {
|
|
5
|
+
validate(manifest: ManifestObject<ManifestSchema> | undefined): ManifestValidationResult<ManifestSchema>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=connect-remote-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect-remote-validator.d.ts","sourceRoot":"","sources":["../../src/validators/connect-remote-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIpD,qBAAa,sBACX,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IACzF,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GAAG,wBAAwB,CAAC,cAAc,CAAC;CAwCzG"}
|