@forge/manifest 2.5.1-next.3 → 2.6.0-next.7
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 +28 -0
- package/out/processor/full-validation-processor.d.ts.map +1 -1
- package/out/processor/full-validation-processor.js +2 -0
- package/out/schema/manifest-schema.json +315 -254
- package/out/schema/manifest.d.ts +245 -207
- package/out/scopes/deprecated-shipyard-scopes.json +24 -0
- package/out/scopes/shipyard-scopes.json +49 -69
- package/out/text/errors.d.ts +1 -0
- package/out/text/errors.d.ts.map +1 -1
- package/out/text/errors.js +2 -1
- package/out/validators/deprecated-permissions-validator.d.ts +7 -0
- package/out/validators/deprecated-permissions-validator.d.ts.map +1 -0
- package/out/validators/deprecated-permissions-validator.js +31 -0
- package/out/validators/permissions-validator.d.ts.map +1 -1
- package/out/validators/permissions-validator.js +3 -1
- package/package.json +1 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
[
|
|
2
|
+
"manage:confluence-configuration",
|
|
3
|
+
"manage:jira-configuration",
|
|
4
|
+
"manage:jira-data-provider",
|
|
5
|
+
"manage:jira-project",
|
|
6
|
+
"manage:jira-webhook",
|
|
7
|
+
"read:confluence-content.all",
|
|
8
|
+
"read:confluence-content.permission",
|
|
9
|
+
"read:confluence-content.summary",
|
|
10
|
+
"read:confluence-groups",
|
|
11
|
+
"read:confluence-props",
|
|
12
|
+
"read:confluence-space.summary",
|
|
13
|
+
"read:confluence-user",
|
|
14
|
+
"read:jira-user",
|
|
15
|
+
"read:jira-work",
|
|
16
|
+
"readonly:content.attachment:confluence",
|
|
17
|
+
"search:confluence",
|
|
18
|
+
"write:confluence-content",
|
|
19
|
+
"write:confluence-file",
|
|
20
|
+
"write:confluence-groups",
|
|
21
|
+
"write:confluence-props",
|
|
22
|
+
"write:confluence-space",
|
|
23
|
+
"write:jira-work"
|
|
24
|
+
]
|
|
@@ -11,46 +11,46 @@
|
|
|
11
11
|
"delete:avatar:jira",
|
|
12
12
|
"delete:blogpost:confluence",
|
|
13
13
|
"delete:board-scope.admin:jira-software",
|
|
14
|
-
"delete:comment.property:jira",
|
|
15
14
|
"delete:comment:confluence",
|
|
16
15
|
"delete:comment:jira",
|
|
16
|
+
"delete:comment.property:jira",
|
|
17
17
|
"delete:connect-confluence",
|
|
18
18
|
"delete:connect-jira",
|
|
19
19
|
"delete:content:confluence",
|
|
20
20
|
"delete:custom-content:confluence",
|
|
21
|
-
"delete:dashboard.property:jira",
|
|
22
21
|
"delete:dashboard:jira",
|
|
22
|
+
"delete:dashboard.property:jira",
|
|
23
23
|
"delete:field-configuration-scheme:jira",
|
|
24
24
|
"delete:field-configuration:jira",
|
|
25
|
-
"delete:field.option:jira",
|
|
26
25
|
"delete:field:jira",
|
|
27
|
-
"delete:
|
|
26
|
+
"delete:field.option:jira",
|
|
28
27
|
"delete:filter:jira",
|
|
28
|
+
"delete:filter.column:jira",
|
|
29
29
|
"delete:group:jira",
|
|
30
30
|
"delete:issue-link-type:jira",
|
|
31
31
|
"delete:issue-link:jira",
|
|
32
32
|
"delete:issue-type-scheme:jira",
|
|
33
33
|
"delete:issue-type-screen-scheme:jira",
|
|
34
|
-
"delete:issue-type.property:jira",
|
|
35
34
|
"delete:issue-type:jira",
|
|
36
|
-
"delete:issue-
|
|
35
|
+
"delete:issue-type.property:jira",
|
|
37
36
|
"delete:issue-worklog:jira",
|
|
37
|
+
"delete:issue-worklog.property:jira",
|
|
38
|
+
"delete:issue:jira",
|
|
38
39
|
"delete:issue.property:jira",
|
|
39
40
|
"delete:issue.remote-link:jira",
|
|
40
|
-
"delete:
|
|
41
|
+
"delete:organization:jira-service-management",
|
|
41
42
|
"delete:organization.property:jira-service-management",
|
|
42
43
|
"delete:organization.user:jira-service-management",
|
|
43
|
-
"delete:organization:jira-service-management",
|
|
44
44
|
"delete:page:confluence",
|
|
45
45
|
"delete:permission-scheme:jira",
|
|
46
46
|
"delete:permission:jira",
|
|
47
47
|
"delete:project-category:jira",
|
|
48
48
|
"delete:project-role:jira",
|
|
49
49
|
"delete:project-version:jira",
|
|
50
|
+
"delete:project:jira",
|
|
50
51
|
"delete:project.avatar:jira",
|
|
51
52
|
"delete:project.component:jira",
|
|
52
53
|
"delete:project.property:jira",
|
|
53
|
-
"delete:project:jira",
|
|
54
54
|
"delete:request.feedback:jira-service-management",
|
|
55
55
|
"delete:request.notification:jira-service-management",
|
|
56
56
|
"delete:request.participant:jira-service-management",
|
|
@@ -68,13 +68,8 @@
|
|
|
68
68
|
"delete:user.property:jira",
|
|
69
69
|
"delete:webhook:jira",
|
|
70
70
|
"delete:workflow-scheme:jira",
|
|
71
|
-
"delete:workflow.property:jira",
|
|
72
71
|
"delete:workflow:jira",
|
|
73
|
-
"
|
|
74
|
-
"manage:jira-configuration",
|
|
75
|
-
"manage:jira-data-provider",
|
|
76
|
-
"manage:jira-project",
|
|
77
|
-
"manage:jira-webhook",
|
|
72
|
+
"delete:workflow.property:jira",
|
|
78
73
|
"manage:servicedesk-customer",
|
|
79
74
|
"project-admin:connect-jira",
|
|
80
75
|
"read:account",
|
|
@@ -86,47 +81,40 @@
|
|
|
86
81
|
"read:audit-log:jira",
|
|
87
82
|
"read:avatar:jira",
|
|
88
83
|
"read:blogpost:confluence",
|
|
89
|
-
"read:board-scope.admin:jira-software",
|
|
90
84
|
"read:board-scope:jira-software",
|
|
85
|
+
"read:board-scope.admin:jira-software",
|
|
91
86
|
"read:build:jira-software",
|
|
92
|
-
"read:comment.property:jira",
|
|
93
87
|
"read:comment:confluence",
|
|
94
88
|
"read:comment:jira",
|
|
89
|
+
"read:comment.property:jira",
|
|
95
90
|
"read:component:compass",
|
|
96
91
|
"read:configuration:confluence",
|
|
97
|
-
"read:confluence-content.all",
|
|
98
|
-
"read:confluence-content.permission",
|
|
99
|
-
"read:confluence-content.summary",
|
|
100
|
-
"read:confluence-groups",
|
|
101
|
-
"read:confluence-props",
|
|
102
|
-
"read:confluence-space.summary",
|
|
103
|
-
"read:confluence-user",
|
|
104
92
|
"read:connect-confluence",
|
|
105
93
|
"read:connect-jira",
|
|
106
94
|
"read:content-details:confluence",
|
|
95
|
+
"read:content:confluence",
|
|
107
96
|
"read:content.metadata:confluence",
|
|
108
97
|
"read:content.permission:confluence",
|
|
109
98
|
"read:content.property:confluence",
|
|
110
99
|
"read:content.restriction:confluence",
|
|
111
|
-
"read:content:confluence",
|
|
112
100
|
"read:custom-content:confluence",
|
|
113
101
|
"read:custom-field-contextual-configuration:jira",
|
|
114
102
|
"read:customer:jira-service-management",
|
|
115
|
-
"read:dashboard.property:jira",
|
|
116
103
|
"read:dashboard:jira",
|
|
104
|
+
"read:dashboard.property:jira",
|
|
117
105
|
"read:deployment:jira-software",
|
|
118
106
|
"read:epic:jira-software",
|
|
119
107
|
"read:event:compass",
|
|
120
108
|
"read:feature-flag:jira-software",
|
|
121
109
|
"read:field-configuration-scheme:jira",
|
|
122
110
|
"read:field-configuration:jira",
|
|
111
|
+
"read:field:jira",
|
|
123
112
|
"read:field.default-value:jira",
|
|
124
113
|
"read:field.option:jira",
|
|
125
114
|
"read:field.options:jira",
|
|
126
|
-
"read:
|
|
115
|
+
"read:filter:jira",
|
|
127
116
|
"read:filter.column:jira",
|
|
128
117
|
"read:filter.default-share-scope:jira",
|
|
129
|
-
"read:filter:jira",
|
|
130
118
|
"read:group:confluence",
|
|
131
119
|
"read:group:jira",
|
|
132
120
|
"read:inlinetask:confluence",
|
|
@@ -144,10 +132,12 @@
|
|
|
144
132
|
"read:issue-type-scheme:jira",
|
|
145
133
|
"read:issue-type-screen-scheme:jira",
|
|
146
134
|
"read:issue-type-transition:jira",
|
|
147
|
-
"read:issue-type.property:jira",
|
|
148
135
|
"read:issue-type:jira",
|
|
149
|
-
"read:issue-
|
|
136
|
+
"read:issue-type.property:jira",
|
|
150
137
|
"read:issue-worklog:jira",
|
|
138
|
+
"read:issue-worklog.property:jira",
|
|
139
|
+
"read:issue:jira",
|
|
140
|
+
"read:issue:jira-software",
|
|
151
141
|
"read:issue.changelog:jira",
|
|
152
142
|
"read:issue.property:jira",
|
|
153
143
|
"read:issue.remote-link:jira",
|
|
@@ -156,21 +146,18 @@
|
|
|
156
146
|
"read:issue.vote:jira",
|
|
157
147
|
"read:issue.votes:jira",
|
|
158
148
|
"read:issue.watcher:jira",
|
|
159
|
-
"read:issue:jira",
|
|
160
|
-
"read:issue:jira-software",
|
|
161
149
|
"read:jira-expressions:jira",
|
|
162
|
-
"read:jira-user",
|
|
163
|
-
"read:jira-work",
|
|
164
150
|
"read:jql:jira",
|
|
165
151
|
"read:knowledgebase:jira-service-management",
|
|
166
152
|
"read:label:confluence",
|
|
167
153
|
"read:label:jira",
|
|
168
154
|
"read:license:jira",
|
|
169
155
|
"read:me",
|
|
156
|
+
"read:metric:compass",
|
|
170
157
|
"read:notification-scheme:jira",
|
|
158
|
+
"read:organization:jira-service-management",
|
|
171
159
|
"read:organization.property:jira-service-management",
|
|
172
160
|
"read:organization.user:jira-service-management",
|
|
173
|
-
"read:organization:jira-service-management",
|
|
174
161
|
"read:page:confluence",
|
|
175
162
|
"read:permission-scheme:jira",
|
|
176
163
|
"read:permission:jira",
|
|
@@ -179,15 +166,16 @@
|
|
|
179
166
|
"read:project-role:jira",
|
|
180
167
|
"read:project-type:jira",
|
|
181
168
|
"read:project-version:jira",
|
|
169
|
+
"read:project:jira",
|
|
182
170
|
"read:project.avatar:jira",
|
|
183
171
|
"read:project.component:jira",
|
|
184
172
|
"read:project.email:jira",
|
|
185
173
|
"read:project.feature:jira",
|
|
186
174
|
"read:project.property:jira",
|
|
187
|
-
"read:project:jira",
|
|
188
175
|
"read:queue:jira-service-management",
|
|
189
176
|
"read:relation:confluence",
|
|
190
177
|
"read:remote-link:jira-software",
|
|
178
|
+
"read:request:jira-service-management",
|
|
191
179
|
"read:request.action:jira-service-management",
|
|
192
180
|
"read:request.approval:jira-service-management",
|
|
193
181
|
"read:request.attachment:jira-service-management",
|
|
@@ -197,9 +185,8 @@
|
|
|
197
185
|
"read:request.participant:jira-service-management",
|
|
198
186
|
"read:request.sla:jira-service-management",
|
|
199
187
|
"read:request.status:jira-service-management",
|
|
200
|
-
"read:request:jira-service-management",
|
|
201
|
-
"read:requesttype.property:jira-service-management",
|
|
202
188
|
"read:requesttype:jira-service-management",
|
|
189
|
+
"read:requesttype.property:jira-service-management",
|
|
203
190
|
"read:resolution:jira",
|
|
204
191
|
"read:role:jira",
|
|
205
192
|
"read:scorecard:compass",
|
|
@@ -209,33 +196,31 @@
|
|
|
209
196
|
"read:screen:jira",
|
|
210
197
|
"read:screenable-field:jira",
|
|
211
198
|
"read:servicedesk-request",
|
|
199
|
+
"read:servicedesk:jira-service-management",
|
|
212
200
|
"read:servicedesk.customer:jira-service-management",
|
|
213
201
|
"read:servicedesk.organization:jira-service-management",
|
|
214
202
|
"read:servicedesk.property:jira-service-management",
|
|
215
|
-
"read:servicedesk:jira-service-management",
|
|
216
203
|
"read:servicemanagement-insight-objects",
|
|
217
204
|
"read:source-code:jira-software",
|
|
218
205
|
"read:space-details:confluence",
|
|
206
|
+
"read:space:confluence",
|
|
219
207
|
"read:space.permission:confluence",
|
|
220
208
|
"read:space.property:confluence",
|
|
221
209
|
"read:space.setting:confluence",
|
|
222
|
-
"read:space:confluence",
|
|
223
210
|
"read:sprint:jira-software",
|
|
224
211
|
"read:status:jira",
|
|
225
212
|
"read:template:confluence",
|
|
226
213
|
"read:user-configuration:jira",
|
|
227
|
-
"read:user.columns:jira",
|
|
228
|
-
"read:user.property:jira",
|
|
229
214
|
"read:user:confluence",
|
|
230
215
|
"read:user:jira",
|
|
216
|
+
"read:user.columns:jira",
|
|
217
|
+
"read:user.property:jira",
|
|
231
218
|
"read:watcher:confluence",
|
|
232
219
|
"read:webhook:jira",
|
|
233
220
|
"read:workflow-scheme:jira",
|
|
234
|
-
"read:workflow.property:jira",
|
|
235
221
|
"read:workflow:jira",
|
|
236
|
-
"
|
|
222
|
+
"read:workflow.property:jira",
|
|
237
223
|
"report:personal-data",
|
|
238
|
-
"search:confluence",
|
|
239
224
|
"send:notification:jira",
|
|
240
225
|
"space-admin:connect-confluence",
|
|
241
226
|
"storage:app",
|
|
@@ -245,41 +230,36 @@
|
|
|
245
230
|
"write:audit-log:confluence",
|
|
246
231
|
"write:avatar:jira",
|
|
247
232
|
"write:blogpost:confluence",
|
|
248
|
-
"write:board-scope.admin:jira-software",
|
|
249
233
|
"write:board-scope:jira-software",
|
|
234
|
+
"write:board-scope.admin:jira-software",
|
|
250
235
|
"write:build:jira-software",
|
|
251
|
-
"write:comment.property:jira",
|
|
252
236
|
"write:comment:confluence",
|
|
253
237
|
"write:comment:jira",
|
|
238
|
+
"write:comment.property:jira",
|
|
254
239
|
"write:component:compass",
|
|
255
240
|
"write:configuration:confluence",
|
|
256
|
-
"write:confluence-content",
|
|
257
|
-
"write:confluence-file",
|
|
258
|
-
"write:confluence-groups",
|
|
259
|
-
"write:confluence-props",
|
|
260
|
-
"write:confluence-space",
|
|
261
241
|
"write:connect-confluence",
|
|
262
242
|
"write:connect-jira",
|
|
243
|
+
"write:content:confluence",
|
|
263
244
|
"write:content.property:confluence",
|
|
264
245
|
"write:content.restriction:confluence",
|
|
265
|
-
"write:content:confluence",
|
|
266
246
|
"write:custom-content:confluence",
|
|
267
247
|
"write:custom-field-contextual-configuration:jira",
|
|
268
248
|
"write:customer:jira-service-management",
|
|
269
|
-
"write:dashboard.property:jira",
|
|
270
249
|
"write:dashboard:jira",
|
|
250
|
+
"write:dashboard.property:jira",
|
|
271
251
|
"write:deployment:jira-software",
|
|
272
252
|
"write:epic:jira-software",
|
|
273
253
|
"write:event:compass",
|
|
274
254
|
"write:feature-flag:jira-software",
|
|
275
255
|
"write:field-configuration-scheme:jira",
|
|
276
256
|
"write:field-configuration:jira",
|
|
257
|
+
"write:field:jira",
|
|
277
258
|
"write:field.default-value:jira",
|
|
278
259
|
"write:field.option:jira",
|
|
279
|
-
"write:
|
|
260
|
+
"write:filter:jira",
|
|
280
261
|
"write:filter.column:jira",
|
|
281
262
|
"write:filter.default-share-scope:jira",
|
|
282
|
-
"write:filter:jira",
|
|
283
263
|
"write:group:confluence",
|
|
284
264
|
"write:group:jira",
|
|
285
265
|
"write:inlinetask:confluence",
|
|
@@ -288,36 +268,37 @@
|
|
|
288
268
|
"write:issue-link:jira",
|
|
289
269
|
"write:issue-type-scheme:jira",
|
|
290
270
|
"write:issue-type-screen-scheme:jira",
|
|
291
|
-
"write:issue-type.property:jira",
|
|
292
271
|
"write:issue-type:jira",
|
|
293
|
-
"write:issue-
|
|
272
|
+
"write:issue-type.property:jira",
|
|
294
273
|
"write:issue-worklog:jira",
|
|
274
|
+
"write:issue-worklog.property:jira",
|
|
275
|
+
"write:issue:jira",
|
|
276
|
+
"write:issue:jira-software",
|
|
295
277
|
"write:issue.property:jira",
|
|
296
278
|
"write:issue.remote-link:jira",
|
|
297
279
|
"write:issue.time-tracking:jira",
|
|
298
280
|
"write:issue.vote:jira",
|
|
299
281
|
"write:issue.watcher:jira",
|
|
300
|
-
"write:issue:jira",
|
|
301
|
-
"write:issue:jira-software",
|
|
302
|
-
"write:jira-work",
|
|
303
282
|
"write:label:confluence",
|
|
283
|
+
"write:metric:compass",
|
|
284
|
+
"write:organization:jira-service-management",
|
|
304
285
|
"write:organization.property:jira-service-management",
|
|
305
286
|
"write:organization.user:jira-service-management",
|
|
306
|
-
"write:organization:jira-service-management",
|
|
307
287
|
"write:page:confluence",
|
|
308
288
|
"write:permission-scheme:jira",
|
|
309
289
|
"write:permission:jira",
|
|
310
290
|
"write:project-category:jira",
|
|
311
291
|
"write:project-role:jira",
|
|
312
292
|
"write:project-version:jira",
|
|
293
|
+
"write:project:jira",
|
|
313
294
|
"write:project.avatar:jira",
|
|
314
295
|
"write:project.component:jira",
|
|
315
296
|
"write:project.email:jira",
|
|
316
297
|
"write:project.feature:jira",
|
|
317
298
|
"write:project.property:jira",
|
|
318
|
-
"write:project:jira",
|
|
319
299
|
"write:relation:confluence",
|
|
320
300
|
"write:remote-link:jira-software",
|
|
301
|
+
"write:request:jira-service-management",
|
|
321
302
|
"write:request.approval:jira-service-management",
|
|
322
303
|
"write:request.attachment:jira-service-management",
|
|
323
304
|
"write:request.comment:jira-service-management",
|
|
@@ -325,24 +306,23 @@
|
|
|
325
306
|
"write:request.notification:jira-service-management",
|
|
326
307
|
"write:request.participant:jira-service-management",
|
|
327
308
|
"write:request.status:jira-service-management",
|
|
328
|
-
"write:request:jira-service-management",
|
|
329
|
-
"write:requesttype.property:jira-service-management",
|
|
330
309
|
"write:requesttype:jira-service-management",
|
|
310
|
+
"write:requesttype.property:jira-service-management",
|
|
331
311
|
"write:scorecard:compass",
|
|
332
312
|
"write:screen-scheme:jira",
|
|
333
313
|
"write:screen-tab:jira",
|
|
334
314
|
"write:screen:jira",
|
|
335
315
|
"write:screenable-field:jira",
|
|
336
316
|
"write:servicedesk-request",
|
|
317
|
+
"write:servicedesk:jira-service-management",
|
|
337
318
|
"write:servicedesk.customer:jira-service-management",
|
|
338
319
|
"write:servicedesk.organization:jira-service-management",
|
|
339
320
|
"write:servicedesk.property:jira-service-management",
|
|
340
|
-
"write:servicedesk:jira-service-management",
|
|
341
321
|
"write:source-code:jira-software",
|
|
322
|
+
"write:space:confluence",
|
|
342
323
|
"write:space.permission:confluence",
|
|
343
324
|
"write:space.property:confluence",
|
|
344
325
|
"write:space.setting:confluence",
|
|
345
|
-
"write:space:confluence",
|
|
346
326
|
"write:sprint:jira-software",
|
|
347
327
|
"write:template:confluence",
|
|
348
328
|
"write:user-configuration:jira",
|
|
@@ -350,6 +330,6 @@
|
|
|
350
330
|
"write:watcher:confluence",
|
|
351
331
|
"write:webhook:jira",
|
|
352
332
|
"write:workflow-scheme:jira",
|
|
353
|
-
"write:workflow
|
|
354
|
-
"write:workflow:jira"
|
|
333
|
+
"write:workflow:jira",
|
|
334
|
+
"write:workflow.property:jira"
|
|
355
335
|
]
|
package/out/text/errors.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export declare const errors: {
|
|
|
11
11
|
permissions: {
|
|
12
12
|
invalidPermission: (element: string, value: string) => string;
|
|
13
13
|
missingPermissionFromScope: (scope: string, event: string) => string;
|
|
14
|
+
deprecatedPermission: (element: string, value: string[]) => string;
|
|
14
15
|
};
|
|
15
16
|
connectModules: {
|
|
16
17
|
invalidConnectModule: (module: string) => string;
|
package/out/text/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;8BACS,MAAM,KAAG,MAAM;2BACpB,MAAM;yBAEN,MAAM,GAAG,SAAS,QAAQ,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,KAAG,MAAM;;uBAO3E,MAAM,EAAE,EAAE,GAAG,SAAS,KAAG,MAAM;4BAI1B,MAAM,EAAE,KAAG,MAAM;mCACV,MAAM,SAAS,MAAM,0CAA4B,MAAM;mDAIvC,MAAM,KAAG,MAAM;;;qCAI7B,MAAM,SAAS,MAAM,KAAG,MAAM;4CAEvB,MAAM,SAAS,MAAM,KAAG,MAAM;;;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/text/errors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;8BACS,MAAM,KAAG,MAAM;2BACpB,MAAM;yBAEN,MAAM,GAAG,SAAS,QAAQ,MAAM,EAAE,UAAU,MAAM,GAAG,SAAS,KAAG,MAAM;;uBAO3E,MAAM,EAAE,EAAE,GAAG,SAAS,KAAG,MAAM;4BAI1B,MAAM,EAAE,KAAG,MAAM;mCACV,MAAM,SAAS,MAAM,0CAA4B,MAAM;mDAIvC,MAAM,KAAG,MAAM;;;qCAI7B,MAAM,SAAS,MAAM,KAAG,MAAM;4CAEvB,MAAM,SAAS,MAAM,KAAG,MAAM;wCAElC,MAAM,SAAS,MAAM,EAAE,KAAG,MAAM;;;uCAMjC,MAAM,KAAG,MAAM;oCACpB,MAAM;iCAEP,MAAM,KAAG,MAAM;4CACJ,MAAM,KAAG,MAAM;;;gCAG3B,MAAM,KAAG,MAAM;6BACpB,MAAM;+BACJ,MAAM;iCACF,MAAM,KAAG,MAAM;yCACP,MAAM,eAAe,MAAM,KAAG,MAAM;yCAEpC,MAAM,eAAe,MAAM,KAAG,MAAM;;yCAGtC,MAAM,KAAG,MAAM;iCAEvB,MAAM,KAAG,MAAM;4CACJ,MAAM,gBAAgB,MAAM,KAAG,MAAM;sCAE3C,MAAM,gBAAgB,MAAM,gBAAgB,MAAM,KAAG,MAAM;;;mCAI9D,MAAM,KAAG,MAAM;mCAEf,MAAM,KAAG,MAAM;;;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;gDAEhB,MAAM,KAAG,MAAM;uCAExB,MAAM,KAAG,MAAM;;;;;;;;kCAQpB,MAAM,UAAU,MAAM,KAAG,MAAM;gCAEjC,MAAM,KAAG,MAAM;2CAEJ,MAAM,eAAe,MAAM,KAAG,MAAM;;;uCAI1C,MAAM;uCAEJ,MAAM,KAAG,MAAM;;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
|
@@ -22,7 +22,8 @@ exports.errors = {
|
|
|
22
22
|
},
|
|
23
23
|
permissions: {
|
|
24
24
|
invalidPermission: (element, value) => `Invalid '${element}' permission in the manifest.yml file - '${value}'. Learn more about permissions at: https://go.atlassian.com/forge-permissions.`,
|
|
25
|
-
missingPermissionFromScope: (scope, event) => `Trigger event: '${event}' requires '${scope}' scope
|
|
25
|
+
missingPermissionFromScope: (scope, event) => `Trigger event: '${event}' requires '${scope}' scope`,
|
|
26
|
+
deprecatedPermission: (element, value) => `There are deprecated scopes '${element}' in the manifest.yml file: '${value.join(', ')}'. You need to update this app to use new scopes and remove the deprecated scopes. Learn more at: https://go.atlassian.com/forge-permissions.`
|
|
26
27
|
},
|
|
27
28
|
connectModules: {
|
|
28
29
|
invalidConnectModule: (module) => `invalid value '${module}' in connectModules`,
|
|
@@ -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 DeprecatedPermissionsValidator implements ValidatorInterface<ManifestObject<ManifestSchema> | undefined, ManifestSchema> {
|
|
5
|
+
validate(manifest: ManifestObject<ManifestSchema> | undefined): ManifestValidationResult<ManifestSchema>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=deprecated-permissions-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deprecated-permissions-validator.d.ts","sourceRoot":"","sources":["../../src/validators/deprecated-permissions-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAmB,wBAAwB,EAAE,MAAM,UAAU,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAKpD,qBAAa,8BACX,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;CAoCzG"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DeprecatedPermissionsValidator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const deprecated_shipyard_scopes_json_1 = tslib_1.__importDefault(require("../scopes/deprecated-shipyard-scopes.json"));
|
|
6
|
+
const text_1 = require("../text");
|
|
7
|
+
const utils_1 = require("../utils");
|
|
8
|
+
class DeprecatedPermissionsValidator {
|
|
9
|
+
validate(manifest) {
|
|
10
|
+
var _a, _b;
|
|
11
|
+
if (!((_a = manifest === null || manifest === void 0 ? void 0 : manifest.typedContent) === null || _a === void 0 ? void 0 : _a.permissions)) {
|
|
12
|
+
return {
|
|
13
|
+
success: false,
|
|
14
|
+
manifestObject: manifest
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
const validationErrors = [];
|
|
18
|
+
function addValidationError(element, value, schemaManifestObject) {
|
|
19
|
+
validationErrors.push(Object.assign({ message: text_1.errors.permissions.deprecatedPermission(element, value), reference: text_1.References.Permissions, level: 'warning' }, utils_1.findPosition(value[0], schemaManifestObject.yamlContentByLine)));
|
|
20
|
+
}
|
|
21
|
+
const deprecatedScopes = (_b = manifest.typedContent.permissions.scopes) === null || _b === void 0 ? void 0 : _b.filter((key) => deprecated_shipyard_scopes_json_1.default.includes(key));
|
|
22
|
+
if (deprecatedScopes && deprecatedScopes.length > 0) {
|
|
23
|
+
addValidationError('scopes', deprecatedScopes, manifest);
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
success: validationErrors.length === 0,
|
|
27
|
+
errors: validationErrors
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.DeprecatedPermissionsValidator = DeprecatedPermissionsValidator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions-validator.d.ts","sourceRoot":"","sources":["../../src/validators/permissions-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAU,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"permissions-validator.d.ts","sourceRoot":"","sources":["../../src/validators/permissions-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAU,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAM3D,qBAAa,oBACX,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;CAyHzG"}
|
|
@@ -7,6 +7,7 @@ const text_1 = require("../text");
|
|
|
7
7
|
const egress_types_1 = require("../types/egress-types");
|
|
8
8
|
const url_1 = require("url");
|
|
9
9
|
const shipyard_scopes_json_1 = tslib_1.__importDefault(require("../scopes/shipyard-scopes.json"));
|
|
10
|
+
const deprecated_shipyard_scopes_json_1 = tslib_1.__importDefault(require("../scopes/deprecated-shipyard-scopes.json"));
|
|
10
11
|
class PermissionsValidator {
|
|
11
12
|
validate(manifest) {
|
|
12
13
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
|
@@ -54,7 +55,8 @@ class PermissionsValidator {
|
|
|
54
55
|
return false;
|
|
55
56
|
}
|
|
56
57
|
}
|
|
57
|
-
const
|
|
58
|
+
const ALL_SCOPES = shipyard_scopes_json_1.default.concat(deprecated_shipyard_scopes_json_1.default);
|
|
59
|
+
const invalidScope = (_a = manifest.typedContent.permissions.scopes) === null || _a === void 0 ? void 0 : _a.find((key) => !ALL_SCOPES.includes(key));
|
|
58
60
|
if (invalidScope) {
|
|
59
61
|
addValidationError('scopes', invalidScope, manifest);
|
|
60
62
|
}
|