@northern.tech/testing 0.7.1 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/package.json +3 -4
  2. package/dist/baseTestConfig.json +0 -17
  3. package/dist/chunk-4UV4MWUU.js +0 -188
  4. package/dist/chunk-4UV4MWUU.js.map +0 -1
  5. package/dist/chunk-5GIOT4M6.js +0 -161
  6. package/dist/chunk-5GIOT4M6.js.map +0 -1
  7. package/dist/chunk-AQYKNNMJ.js +0 -239
  8. package/dist/chunk-AQYKNNMJ.js.map +0 -1
  9. package/dist/chunk-CT35JRBC.js +0 -893
  10. package/dist/chunk-CT35JRBC.js.map +0 -1
  11. package/dist/chunk-HRGVXWMH.js +0 -17
  12. package/dist/chunk-HRGVXWMH.js.map +0 -1
  13. package/dist/chunk-RG3ICJW5.js +0 -34
  14. package/dist/chunk-RG3ICJW5.js.map +0 -1
  15. package/dist/chunk-ROSMRKMF.js +0 -265
  16. package/dist/chunk-ROSMRKMF.js.map +0 -1
  17. package/dist/chunk-TVJ6K2KG.js +0 -318
  18. package/dist/chunk-TVJ6K2KG.js.map +0 -1
  19. package/dist/chunk-WFNPT672.js +0 -29
  20. package/dist/chunk-WFNPT672.js.map +0 -1
  21. package/dist/mockData.cjs +0 -926
  22. package/dist/mockData.cjs.map +0 -1
  23. package/dist/mockData.d.cts +0 -596
  24. package/dist/mockData.d.ts +0 -596
  25. package/dist/mockData.js +0 -45
  26. package/dist/mockData.js.map +0 -1
  27. package/dist/requestHandlers/deploymentHandlers.cjs +0 -1045
  28. package/dist/requestHandlers/deploymentHandlers.cjs.map +0 -1
  29. package/dist/requestHandlers/deploymentHandlers.d.cts +0 -5
  30. package/dist/requestHandlers/deploymentHandlers.d.ts +0 -5
  31. package/dist/requestHandlers/deploymentHandlers.js +0 -8
  32. package/dist/requestHandlers/deploymentHandlers.js.map +0 -1
  33. package/dist/requestHandlers/deviceHandlers.cjs +0 -1113
  34. package/dist/requestHandlers/deviceHandlers.cjs.map +0 -1
  35. package/dist/requestHandlers/deviceHandlers.d.cts +0 -20
  36. package/dist/requestHandlers/deviceHandlers.d.ts +0 -20
  37. package/dist/requestHandlers/deviceHandlers.js +0 -12
  38. package/dist/requestHandlers/deviceHandlers.js.map +0 -1
  39. package/dist/requestHandlers/monitorHandlers.cjs +0 -835
  40. package/dist/requestHandlers/monitorHandlers.cjs.map +0 -1
  41. package/dist/requestHandlers/monitorHandlers.d.cts +0 -5
  42. package/dist/requestHandlers/monitorHandlers.d.ts +0 -5
  43. package/dist/requestHandlers/monitorHandlers.js +0 -8
  44. package/dist/requestHandlers/monitorHandlers.js.map +0 -1
  45. package/dist/requestHandlers/organizationHandlers.cjs +0 -1086
  46. package/dist/requestHandlers/organizationHandlers.cjs.map +0 -1
  47. package/dist/requestHandlers/organizationHandlers.d.cts +0 -5
  48. package/dist/requestHandlers/organizationHandlers.d.ts +0 -5
  49. package/dist/requestHandlers/organizationHandlers.js +0 -8
  50. package/dist/requestHandlers/organizationHandlers.js.map +0 -1
  51. package/dist/requestHandlers/releaseHandlers.cjs +0 -966
  52. package/dist/requestHandlers/releaseHandlers.cjs.map +0 -1
  53. package/dist/requestHandlers/releaseHandlers.d.cts +0 -5
  54. package/dist/requestHandlers/releaseHandlers.d.ts +0 -5
  55. package/dist/requestHandlers/releaseHandlers.js +0 -8
  56. package/dist/requestHandlers/releaseHandlers.js.map +0 -1
  57. package/dist/requestHandlers/requestHandlers.cjs +0 -1975
  58. package/dist/requestHandlers/requestHandlers.cjs.map +0 -1
  59. package/dist/requestHandlers/requestHandlers.d.cts +0 -5
  60. package/dist/requestHandlers/requestHandlers.d.ts +0 -5
  61. package/dist/requestHandlers/requestHandlers.js +0 -35
  62. package/dist/requestHandlers/requestHandlers.js.map +0 -1
  63. package/dist/requestHandlers/userHandlers.cjs +0 -994
  64. package/dist/requestHandlers/userHandlers.cjs.map +0 -1
  65. package/dist/requestHandlers/userHandlers.d.cts +0 -5
  66. package/dist/requestHandlers/userHandlers.d.ts +0 -5
  67. package/dist/requestHandlers/userHandlers.js +0 -8
  68. package/dist/requestHandlers/userHandlers.js.map +0 -1
  69. package/dist/setupTests.cjs +0 -996
  70. package/dist/setupTests.cjs.map +0 -1
  71. package/dist/setupTests.d.cts +0 -77
  72. package/dist/setupTests.d.ts +0 -77
  73. package/dist/setupTests.js +0 -138
  74. package/dist/setupTests.js.map +0 -1
  75. package/dist/theme/light.cjs +0 -41
  76. package/dist/theme/light.cjs.map +0 -1
  77. package/dist/theme/light.d.cts +0 -12
  78. package/dist/theme/light.d.ts +0 -12
  79. package/dist/theme/light.js +0 -7
  80. package/dist/theme/light.js.map +0 -1
  81. package/dist/utils.cjs +0 -71
  82. package/dist/utils.cjs.map +0 -1
  83. package/dist/utils.d.cts +0 -69
  84. package/dist/utils.d.ts +0 -69
  85. package/dist/utils.js +0 -12
  86. package/dist/utils.js.map +0 -1
@@ -1,893 +0,0 @@
1
- // src/mockData.ts
2
- import {
3
- ALL_DEVICES,
4
- ALL_RELEASES,
5
- defaultPermissionSets,
6
- emptyRole,
7
- emptyUiPermissions,
8
- maxSessionAge,
9
- rolesById,
10
- scopedPermissionAreas,
11
- uiPermissionsById
12
- } from "@northern.tech/utils/constants";
13
- var undefineds = /undefined|\[object Object\]/;
14
- var menderEnvironment = {
15
- features: {
16
- hasMultitenancy: true
17
- },
18
- integrationVersion: "saas-123.34",
19
- menderVersion: "next",
20
- metaMenderVersion: "saas-123.34",
21
- services: {
22
- deploymentsVersion: "1.2.3",
23
- deviceauthVersion: null,
24
- inventoryVersion: null
25
- }
26
- };
27
- var TEST_SESSION_DATETIME = "2019-01-13T13:00:00.000Z";
28
- var testDate = new Date(TEST_SESSION_DATETIME);
29
- var mockDate = new Date(testDate.setMilliseconds(testDate.getMilliseconds() + maxSessionAge));
30
- var defaultPassword = "mysecretpassword!123";
31
- var defaultCreationDate = "2019-01-13T06:25:00.000Z";
32
- var defaultMacAddress = "dc:a6:32:12:ad:bf";
33
- var testSsoId = "sso_id";
34
- var permissionSetObjectTypes = {
35
- any: "Any",
36
- artifacts: "Artifacts",
37
- empty: "",
38
- groups: "Device groups",
39
- releases: "Releases",
40
- tenantManagement: "Tenant management",
41
- userManagement: "User management"
42
- };
43
- var commonEndpoints = {
44
- artifacts: "^/api/management/v1/deployments/artifacts",
45
- artifactDetails: "^/api/management/v1/deployments/artifacts/[^/]+",
46
- deviceManagement: "^/api/management/(v[1-9])/(devauth|inventory)/"
47
- };
48
- var token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJjZTNkMGY4Yy1hZWRlLTQwMzAtYjM5MS03ZDUwMjBlYjg3M2UiLCJzdWIiOiJhMzBhNzgwYi1iODQzLTUzNDQtODBlMy0wZmQ5NWE0ZjZmYzMiLCJleHAiOjE2MDY4MTUzNjksImlhdCI6MTYwNjIxMDU2OSwibWVuZGVyLnRlbmFudCI6IjVmODVjMTdiY2U2MmI3ZmE3ZjVmNzA0MCIsIm1lbmRlci51c2VyIjp0cnVlLCJpc3MiOiJNZW5kZXIgVXNlcnMiLCJzY3AiOiJtZW5kZXIuKiIsIm1lbmRlci5wbGFuIjoicHJvZmVzc2lvbmFsIiwibmJmIjoxNjA2MjEwNTY5fQ.qVgYdCzLTf8OdK9uUctqqaY_HWkIiwpekuGvuGQAXCEgOv4bRNDlZRN_ZRSbxQoARG3pquhScbQrjBV9tcF4irTUPlTn3yrsXNO17DpcbTVeKRkb88RDtIKiRw3orVZ_GlIb-ckTQ5dS-Nqlyyf3Fmrhca-gwt6m_xv2UrmJK6eYYTMfggdRRWb-4u7mEkBI_pHPMTQrT8kJ2BeX-vHgazH9AoH0k85LHtFZQXD7pXHlDZRnLxJXukncwMGDmF17374gavYAIyDIzcC8sEBMDnVXgpikeA1sauzirqix6mAVs6XmxdQO7aF0wfXO1_PTYUA3Nk1oQfMYNlEI3U9uLRJRZIq2L8fmrrBryhstKd4y0KlBbGAQrx8NtRkgajjd1ljMfPBUEZrb7uSerVjneiO-aIBO76CuH0zdklphIjpGJeogkBhe8pAYNggp1XsZHgpZfl7IE5faKaDkMGnutaea--Czor6bhqUNCuY4tR0cpQJbNwy6LS9o1CFy4Log";
49
- var accessTokens = [
50
- { id: "some-id-1", expiration_date: "2022-06-02T11:11:21.725Z", name: "some-name-1" },
51
- { id: "some-id-2", expiration_date: "2022-06-02T11:11:21.725Z", last_used: "2022-06-02T11:05:21.725Z", name: "some-name-2" }
52
- ];
53
- var webhookEvents = [
54
- {
55
- id: "1",
56
- type: "device-status-changed",
57
- data: { id: "1", status: "accepted" },
58
- time: "2020-09-01T12:00:00.000Z",
59
- delivery_statuses: [{ integration_id: "1", success: true, status_code: 200 }]
60
- },
61
- {
62
- id: "2",
63
- type: "device-status-changed",
64
- data: { id: "3", status: "accepted" },
65
- time: "2020-09-01T12:00:05.000Z",
66
- delivery_statuses: [{ integration_id: "1", success: true, status_code: 200 }]
67
- }
68
- ];
69
- var tenants = [
70
- {
71
- id: "671a0f1dd58c813118fe8622",
72
- parent_tenant_id: "6718de64b42e08dea2a2065d",
73
- name: "child2",
74
- tenant_token: "mQDYRCr-tGbDuJhPp7fArbfTA5htVTWE9G204AzhDUM",
75
- status: "active",
76
- additional_info: {
77
- marketing: false,
78
- campaign: ""
79
- },
80
- plan: "enterprise",
81
- trial: false,
82
- trial_expiration: null,
83
- service_provider: false,
84
- created_at: "2024-10-24T09:10:53.281Z",
85
- cancelled_at: null,
86
- children_tenants: null,
87
- max_child_tenants: 0,
88
- device_count: 0,
89
- device_limit: 100,
90
- binary_delta: true
91
- }
92
- ];
93
- var adminUserCapabilities = {
94
- canAuditlog: true,
95
- canConfigure: true,
96
- canDeploy: true,
97
- canManageDevices: true,
98
- canManageReleases: true,
99
- canManageUsers: true,
100
- canReadDeployments: true,
101
- canReadDevices: true,
102
- canReadReleases: true,
103
- canReadUsers: true,
104
- canTroubleshoot: true,
105
- canUploadReleases: true,
106
- canWriteDevices: true
107
- };
108
- var userId = "a30a780b-b843-5344-80e3-0fd95a4f6fc3";
109
- var defaultUser = {
110
- created_ts: "2019-01-01T10:30:00.000Z",
111
- email: "a@b.com",
112
- id: "a1",
113
- roles: ["RBAC_ROLE_PERMIT_ALL"],
114
- tfa_status: "enabled",
115
- verified: true
116
- };
117
- var deviceTypes = { qemu: "qemux86-64" };
118
- var checkInTimeRounded = "2019-01-01T00:00:00.000Z";
119
- var checkInTimeExact = "2019-01-01T10:25:00.000Z";
120
- var mockApiResponses = {
121
- deployments: {
122
- byId: {
123
- d1: {
124
- id: "d1",
125
- name: "test deployment",
126
- created: "2019-01-01T12:30:00.000Z",
127
- devices: {
128
- a1: {
129
- id: "a1",
130
- status: "installing",
131
- attributes: {},
132
- image: { size: 123 }
133
- }
134
- },
135
- statistics: {
136
- status: {
137
- "already-installed": 0,
138
- decommissioned: 0,
139
- downloading: 0,
140
- failure: 0,
141
- installing: 1,
142
- noartifact: 0,
143
- pending: 0,
144
- rebooting: 0,
145
- success: 0
146
- },
147
- total_size: 1234
148
- }
149
- },
150
- d2: {
151
- id: "d2",
152
- name: "test deployment 2",
153
- artifact_name: "r1",
154
- artifacts: ["123"],
155
- created: "2019-01-01T12:25:00.000Z",
156
- device_count: 1,
157
- devices: {
158
- b1: {
159
- attributes: {},
160
- id: "b1",
161
- status: "pending"
162
- }
163
- },
164
- filter: void 0,
165
- group: void 0,
166
- statistics: {
167
- status: {
168
- downloading: 0,
169
- decommissioned: 0,
170
- failure: 0,
171
- installing: 0,
172
- noartifact: 0,
173
- pending: 1,
174
- rebooting: 0,
175
- success: 0,
176
- "already-installed": 0
177
- }
178
- }
179
- },
180
- d3: {
181
- id: "d3",
182
- name: "Test",
183
- phases: [
184
- { id: "0", batch_size: 2, device_count: 2 },
185
- { id: "1", start_ts: "2019-02-04T11:45:10.002Z", batch_size: 3, device_count: 3 },
186
- { id: "2", start_ts: "2019-02-05T11:45:10.002Z", batch_size: 5, device_count: 5 },
187
- { id: "3", start_ts: "2019-02-06T11:45:10.002Z", batch_size: 5, device_count: 5 },
188
- { id: "4", start_ts: "2019-02-21T11:45:10.002Z", batch_size: 5, device_count: 0 }
189
- ],
190
- max_devices: 0,
191
- created: "2019-01-31T12:59:30.020Z",
192
- devices: {},
193
- filter: void 0,
194
- group: void 0,
195
- stats: {
196
- pending: 3,
197
- decommissioned: 0,
198
- failure: 23,
199
- pause_before_committing: 0,
200
- pause_before_rebooting: 0,
201
- installing: 0,
202
- rebooting: 0,
203
- "already-installed": 0,
204
- pause_before_installing: 0,
205
- downloading: 0,
206
- success: 6,
207
- aborted: 0,
208
- noartifact: 0
209
- },
210
- statistics: { total_size: "1234" },
211
- status: "inprogress",
212
- active: true,
213
- device_count: 100,
214
- retries: "0",
215
- type: "software"
216
- }
217
- },
218
- byStatus: {
219
- pending: { deploymentIds: ["d2"] },
220
- inprogress: { deploymentIds: ["d3"] }
221
- }
222
- },
223
- devices: {
224
- byId: {
225
- a1: {
226
- id: "a1",
227
- auth_sets: [
228
- {
229
- id: "auth1",
230
- identity_data: { mac: defaultMacAddress },
231
- pubkey: "-----BEGIN PUBLIC KEY-----\nMIIBojWELzgJ62hcXIhAfqfoNiaB1326XZByZwcnHr5BuSPAgMBAAE=\n-----END PUBLIC KEY-----\n",
232
- status: "accepted",
233
- ts: defaultCreationDate
234
- }
235
- ],
236
- updated_ts: "2019-01-01T09:25:00.000Z"
237
- },
238
- b1: {
239
- id: "b1",
240
- attributes: {
241
- ipv4_wlan0: "192.168.10.141/24",
242
- device_type: [deviceTypes.qemu]
243
- },
244
- system: {
245
- check_in_time: checkInTimeRounded
246
- },
247
- check_in_time: checkInTimeExact,
248
- check_in_time_exact: checkInTimeExact,
249
- check_in_time_rounded: checkInTimeRounded,
250
- identity_data: { mac: defaultMacAddress },
251
- status: "accepted",
252
- decommissioning: false,
253
- created_ts: defaultCreationDate,
254
- updated_ts: "2019-01-01T09:25:00.000Z",
255
- auth_sets: [
256
- {
257
- id: "auth1",
258
- identity_data: { mac: defaultMacAddress },
259
- pubkey: "-----BEGIN PUBLIC KEY-----\nMIIBojWELzgJ62hcXIhAfqfoNiaB1326XZByZwcnHr5BuSPAgMBAAE=\n-----END PUBLIC KEY-----\n",
260
- ts: defaultCreationDate,
261
- status: "accepted"
262
- }
263
- ]
264
- }
265
- },
266
- groups: {
267
- byId: {
268
- testGroup: {
269
- deviceIds: ["a1", "b1"],
270
- filters: [],
271
- total: 2
272
- },
273
- testGroupDynamic: {
274
- id: "filter1",
275
- name: "filter1",
276
- filters: [{ scope: "system", key: "group", operator: "$eq", value: "things" }]
277
- }
278
- }
279
- },
280
- limits: { standard: 500, micro: 0, system: 0 },
281
- byStatus: {
282
- accepted: { deviceIds: ["a1", "b1"], total: 2 },
283
- active: { deviceIds: [], total: 0 },
284
- inactive: { deviceIds: [], total: 0 },
285
- pending: { deviceIds: ["c1"], total: 1 },
286
- preauthorized: { deviceIds: [], total: 0 },
287
- rejected: { deviceIds: [], total: 0 }
288
- }
289
- },
290
- organization: {
291
- organization: {
292
- id: "1",
293
- addons: [],
294
- name: "test",
295
- plan: "os",
296
- trial: false
297
- },
298
- products: [
299
- {
300
- name: "mender_standard",
301
- billing_unit: "devices",
302
- prices: [
303
- {
304
- plan: "os",
305
- constraints: {
306
- min: 50,
307
- max: 1e3,
308
- div: 50
309
- }
310
- },
311
- {
312
- plan: "professional",
313
- constraints: {
314
- min: 250,
315
- max: 1e4,
316
- div: 50
317
- }
318
- }
319
- ],
320
- addons: [
321
- {
322
- name: "troubleshoot",
323
- prices: [{ plan: "os" }, { plan: "professional" }]
324
- },
325
- {
326
- name: "configure",
327
- prices: [{ plan: "os" }, { plan: "professional" }]
328
- },
329
- {
330
- name: "monitor",
331
- prices: [{ plan: "professional" }]
332
- }
333
- ]
334
- },
335
- {
336
- name: "mender_micro",
337
- billing_unit: "devices",
338
- prices: [
339
- {
340
- plan: "os",
341
- constraints: {
342
- min: 50,
343
- max: 5e3,
344
- div: 50
345
- }
346
- },
347
- {
348
- plan: "professional",
349
- constraints: {
350
- min: 500,
351
- max: 1e5,
352
- div: 50
353
- }
354
- }
355
- ]
356
- }
357
- ],
358
- intentId: "testIntent",
359
- auditlog: {
360
- events: [
361
- {
362
- actor: {
363
- id: "string",
364
- type: "user",
365
- email: "string@example.com"
366
- },
367
- time: "2019-01-01T12:10:22.667Z",
368
- action: "create",
369
- object: {
370
- id: "string",
371
- type: "user",
372
- user: {
373
- email: "user@acme.com"
374
- }
375
- },
376
- change: "change1"
377
- },
378
- {
379
- actor: {
380
- id: "string",
381
- type: "user",
382
- email: "string",
383
- identity_data: "string"
384
- },
385
- time: "2019-01-01T12:16:22.667Z",
386
- action: "create",
387
- object: {
388
- id: "string",
389
- type: "deployment",
390
- deployment: {
391
- name: "production",
392
- artifact_name: "Application 0.0.1"
393
- }
394
- },
395
- change: "change2"
396
- },
397
- {
398
- actor: {
399
- id: "string",
400
- type: "user",
401
- email: "string@example.com"
402
- },
403
- time: "2019-01-01T12:10:22.669Z",
404
- action: "open_terminal",
405
- meta: {
406
- session_id: ["abd313a8-ee88-48ab-9c99-fbcd80048e6e"]
407
- },
408
- object: {
409
- id: "a1",
410
- type: "device"
411
- },
412
- change: "change3"
413
- }
414
- ]
415
- }
416
- },
417
- releases: {
418
- byId: {
419
- r1: {
420
- name: "r1",
421
- artifacts: [
422
- {
423
- id: "art1",
424
- description: "test description",
425
- device_types_compatible: [deviceTypes.qemu],
426
- modified: "2020-09-10T12:16:22.667Z",
427
- updates: [{ type_info: { type: "testtype" } }],
428
- artifact_depends: {
429
- device_type: [deviceTypes.qemu]
430
- },
431
- artifact_provides: {
432
- artifact_name: "myapp",
433
- "data-partition.myapp.version": "v2020.10",
434
- list_of_fancy: [deviceTypes.qemu, "x172"]
435
- },
436
- clears_artifact_provides: ["data-partition.myapp.*"]
437
- }
438
- ],
439
- device_types_compatible: [deviceTypes.qemu],
440
- modified: "2020-09-10T12:16:22.667Z",
441
- metaData: {}
442
- }
443
- }
444
- },
445
- users: {
446
- byId: {
447
- a1: defaultUser,
448
- [userId]: { ...defaultUser, id: userId, email: "a2@b.com", created_ts: "2019-01-01T12:30:00.000Z" }
449
- },
450
- rolesById: {
451
- admin: {
452
- name: "admin",
453
- description: "Administrator role",
454
- permissions: []
455
- },
456
- test: { name: "test", description: "test description", permissions: [] }
457
- },
458
- globalSettings: {
459
- "2fa": "enabled",
460
- id_attribute: void 0,
461
- previousFilters: []
462
- },
463
- userSettings: {
464
- "2fa": "disabled",
465
- columnSelection: [],
466
- onboarding: { something: "here" },
467
- tooltips: {},
468
- previousFilters: []
469
- }
470
- }
471
- };
472
- var releasesList = Array.from({ length: 5e3 }, (x, i) => ({
473
- artifacts: [
474
- {
475
- id: "art1",
476
- description: "test description",
477
- device_types_compatible: [deviceTypes.qemu],
478
- modified: "2020-09-10T12:16:22.667Z",
479
- updates: [{ type_info: { type: "testtype" } }],
480
- artifact_depends: {
481
- device_type: [deviceTypes.qemu]
482
- },
483
- artifact_provides: {
484
- artifact_name: "myapp",
485
- "data-partition.myapp.version": "v2020.10",
486
- list_of_fancy: [deviceTypes.qemu, "x172"]
487
- },
488
- clears_artifact_provides: ["data-partition.myapp.*"]
489
- }
490
- ],
491
- device_types_compatible: [deviceTypes.qemu],
492
- metaData: {},
493
- name: `release-${i + 1}`,
494
- modified: i
495
- }));
496
- var permissionSets = [
497
- {
498
- ...defaultPermissionSets.Basic,
499
- object: permissionSetObjectTypes.empty,
500
- description: "Set containing basic permissions.",
501
- permissions: [
502
- { action: "http", object: { type: "any", value: "^/api/management/v1/useradm/settings$" } },
503
- { action: "http", object: { type: "any", value: "^/api/management/v1/useradm/users/me$" } },
504
- { action: "http", object: { type: "any", value: "^/api/management/1.0/auth/verify$" } },
505
- { action: "http", object: { type: "PUT", value: "^/api/management/v1/useradm/2faverify$" } },
506
- { action: "http", object: { type: "POST", value: "^/api/management/v1/useradm/users/me/2fa/(enable|disable)$" } },
507
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9])/useradm/roles" } },
508
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9])/tenantadm/user/tenant" } }
509
- ]
510
- },
511
- {
512
- ...defaultPermissionSets.ManageReleases,
513
- action: uiPermissionsById.manage.title,
514
- object: permissionSetObjectTypes.releases,
515
- description: "Set of permissions which allows user to manage releases",
516
- permissions: [
517
- { action: "http", object: { type: "GET", value: commonEndpoints.artifacts } },
518
- { action: "http", object: { type: "GET", value: commonEndpoints.artifactDetails } },
519
- { action: "http", object: { type: "PUT", value: commonEndpoints.artifactDetails } },
520
- { action: "http", object: { type: "DELETE", value: commonEndpoints.artifactDetails } },
521
- { action: "http", object: { type: "GET", value: "^/api/management/v1/deployments/artifacts/[^/]+/download" } }
522
- ]
523
- },
524
- {
525
- ...defaultPermissionSets.ReadUsers,
526
- action: uiPermissionsById.read.title,
527
- object: permissionSetObjectTypes.userManagement,
528
- description: "Set of permissions which allows user to view other users",
529
- permissions: [{ action: "http", object: { type: "GET", value: "^/api/management/(v[1-9])/useradm/" } }]
530
- },
531
- {
532
- ...defaultPermissionSets.ManageUsers,
533
- action: uiPermissionsById.manage.title,
534
- object: permissionSetObjectTypes.userManagement,
535
- description: "Set of permissions which allows user manage other user accounts",
536
- permissions: [{ action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/useradm/" } }]
537
- },
538
- {
539
- ...defaultPermissionSets.ReadTenants,
540
- action: uiPermissionsById.read.title,
541
- object: permissionSetObjectTypes.tenantManagement,
542
- description: "Set of permissions which allows user to list other tenants and their config",
543
- permissions: [
544
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9])/tenantadm/" } },
545
- { action: "http", object: { type: "POST", value: "^/api/management/(v[1-9])/tenantadm/" } }
546
- ]
547
- },
548
- {
549
- ...defaultPermissionSets.ManageTenants,
550
- action: uiPermissionsById.manage.title,
551
- object: permissionSetObjectTypes.tenantManagement,
552
- description: "Set of permissions which allows user to manage other tenants and their config",
553
- permissions: [
554
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9])/tenantadm/" } },
555
- { action: "http", object: { type: "POST", value: "^/api/management/(v[1-9])/tenantadm/" } },
556
- { action: "http", object: { type: "PUT", value: "^/api/management/(v[1-9])/tenantadm/" } }
557
- ]
558
- },
559
- {
560
- ...defaultPermissionSets.ReadAuditLogs,
561
- action: uiPermissionsById.read.title,
562
- object: "System Audit Log",
563
- description: "Set of permissions which allows user to view system audit log",
564
- permissions: [{ action: "http", object: { type: "GET", value: "^/api/management/(v[1-9]|0.1.0)/auditlogs/logs" } }]
565
- },
566
- {
567
- ...defaultPermissionSets.DeployToDevices,
568
- action: "Deploy",
569
- object: permissionSetObjectTypes.groups,
570
- description: "Set of permissions which allows user to deploy to devices",
571
- permissions: [{ action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/(deployments|deviceconfig)/" } }],
572
- supported_scope_types: [scopedPermissionAreas.groups.scopeType]
573
- },
574
- {
575
- ...defaultPermissionSets.ConfigureDevices,
576
- action: "Configure",
577
- object: permissionSetObjectTypes.groups,
578
- description: "Set of permissions which allows user to manage configuration of the devices",
579
- permissions: [{ action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deviceconfig/" } }],
580
- supported_scope_types: [scopedPermissionAreas.groups.scopeType]
581
- },
582
- {
583
- ...defaultPermissionSets.ConnectToDevices,
584
- action: "Connect",
585
- object: permissionSetObjectTypes.groups,
586
- description: "Set of permissions which allows user to use remote terminal and file transfer",
587
- permissions: [
588
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9]|0.1.0)/deviceconnect/devices/[^/]+/connect$" } },
589
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9]|0.1.0)/deviceconnect/devices/[^/]+/download\\?path=[^&]+$" } },
590
- { action: "http", object: { type: "PUT", value: "^/api/management/(v[1-9]|0.1.0)/deviceconnect/devices/[^/]+/upload$" } }
591
- ],
592
- supported_scope_types: [scopedPermissionAreas.groups.scopeType]
593
- },
594
- {
595
- ...defaultPermissionSets.SuperUser,
596
- action: "Any",
597
- object: permissionSetObjectTypes.any,
598
- description: "Set of permissions which allows user to do anything",
599
- permissions: [{ action: "any", object: { type: "any", value: "any" } }]
600
- },
601
- {
602
- ...defaultPermissionSets.UploadArtifacts,
603
- action: "Upload",
604
- object: permissionSetObjectTypes.artifacts,
605
- description: "Set of permissions which allows user to upload artifacts",
606
- permissions: [
607
- { action: "http", object: { type: "POST", value: commonEndpoints.artifacts } },
608
- { action: "http", object: { type: "POST", value: "^/api/management/v1/deployments/artifacts/generate" } }
609
- ]
610
- },
611
- {
612
- ...defaultPermissionSets.ReadDevices,
613
- action: uiPermissionsById.read.title,
614
- object: permissionSetObjectTypes.groups,
615
- description: "Set of permissions which allows user to view devices",
616
- permissions: [
617
- { action: "http", object: { type: "POST", value: "^/api/management/v2/inventory/filters/search" } },
618
- { action: "http", object: { type: "POST", value: "^/api/management/v1/reporting/devices/search" } },
619
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9])/(deployments|devauth|inventory|deviceconfig|devicemonitor)/" } },
620
- { action: "http", object: { type: "GET", value: "^/api/management/(v[1-9]|0.1.0)/deviceconnect/devices/[^/]+$" } }
621
- ],
622
- supported_scope_types: [scopedPermissionAreas.groups.scopeType]
623
- },
624
- {
625
- ...defaultPermissionSets.ManageDevices,
626
- action: uiPermissionsById.manage.title,
627
- object: permissionSetObjectTypes.groups,
628
- description: "Set of permissions which allows user to manage devices",
629
- permissions: [
630
- { action: "http", object: { type: "POST", value: commonEndpoints.deviceManagement } },
631
- { action: "http", object: { type: "PUT", value: commonEndpoints.deviceManagement } },
632
- { action: "http", object: { type: "DELETE", value: commonEndpoints.deviceManagement } }
633
- ],
634
- supported_scope_types: [scopedPermissionAreas.groups.scopeType]
635
- },
636
- {
637
- ...defaultPermissionSets.ReadReleases,
638
- action: uiPermissionsById.read.title,
639
- object: permissionSetObjectTypes.releases,
640
- description: "Set of permissions which allows user to view releases",
641
- permissions: [
642
- { action: "http", object: { type: "GET", value: commonEndpoints.artifacts } },
643
- { action: "http", object: { type: "GET", value: commonEndpoints.artifactDetails } },
644
- { action: "http", object: { type: "GET", value: "^/api/management/v1/deployments/artifacts/[^/]+/download" } }
645
- ]
646
- },
647
- {
648
- name: "almostAdmin",
649
- object: permissionSetObjectTypes.empty,
650
- description: "Set containing all the permissions.",
651
- permissions: [
652
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/auditlogs/.*" } },
653
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deployments/.*" } },
654
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deployments/config/.*" } },
655
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deployments/deployments/.*" } },
656
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deployments/deployments/releases/.*" } },
657
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/devauth/.*" } },
658
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deviceconfig/.*" } },
659
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deviceconnect/.*" } },
660
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/deviceconnect/devices" } },
661
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/inventory/.*" } },
662
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/iot-manager/.*" } },
663
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/monitor/.*" } },
664
- { action: "http", object: { type: "any", value: "^/api/management/(v[1-9])/useradm/.*" } }
665
- ]
666
- }
667
- ];
668
- var rbacRoles = [
669
- {
670
- name: "dyn",
671
- description: "",
672
- permissions: [
673
- { action: "CREATE_DEPLOYMENT", object: { type: "DEVICE_GROUP", value: "dyn" } },
674
- { action: "VIEW_DEVICE", object: { type: "DEVICE_GROUP", value: "dyn" } }
675
- ]
676
- },
677
- { name: "asdasd", description: "123", permissions: [{ action: "http", object: { type: "any", value: "/api/management/v1/useradm/.*" } }] },
678
- {
679
- name: "141sasd",
680
- description: "1313adg",
681
- permission_sets_with_scope: [
682
- { ...defaultPermissionSets.ReadDevices, scope: { type: scopedPermissionAreas.groups.scopeType, value: ["bestgroup"] } },
683
- { ...defaultPermissionSets.ConnectToDevices, scope: { type: scopedPermissionAreas.groups.scopeType, value: ["bestgroup"] } },
684
- { ...defaultPermissionSets.ManageUsers }
685
- ]
686
- },
687
- {
688
- name: "kljlkk",
689
- description: "lkl",
690
- permission_sets_with_scope: [{ ...defaultPermissionSets.ConnectToDevices, scope: { type: scopedPermissionAreas.groups.scopeType, value: ["bestgroup"] } }]
691
- },
692
- {
693
- name: "yyyyy",
694
- description: "asd",
695
- permission_sets_with_scope: [
696
- { ...defaultPermissionSets.ManageDevices, scope: { type: scopedPermissionAreas.groups.scopeType, value: ["dockerclient"] } },
697
- { ...defaultPermissionSets.ManageReleases }
698
- ]
699
- },
700
- {
701
- name: "RBAC_ROLE_DEPLOYMENTS_MANAGER",
702
- description: "Intended for users responsible for managing deployments, this role can create and abort deployments",
703
- permission_sets_with_scope: [{ ...defaultPermissionSets.DeployToDevices }]
704
- },
705
- {
706
- name: "RBAC_ROLE_REMOTE_TERMINAL",
707
- description: `Intended for tech support accounts, this role can access the devices' Remote Terminal.`,
708
- permission_sets_with_scope: [{ ...defaultPermissionSets.ConnectToDevices }]
709
- },
710
- { name: "RBAC_ROLE_PERMIT_ALL", description: "", permission_sets_with_scope: [{ ...defaultPermissionSets.SuperUser }] },
711
- {
712
- name: "RBAC_ROLE_OBSERVER",
713
- description: "Intended for team leaders or limited tech support accounts, this role can see all Devices, Artifacts and Deployment reports but not make any changes.",
714
- permission_sets_with_scope: [{ ...defaultPermissionSets.ReadReleases }, { ...defaultPermissionSets.ReadDevices }]
715
- },
716
- {
717
- name: "RBAC_ROLE_CI",
718
- description: "Intended for automation accounts building software (e.g. CI/CD systems), this role can only manage Artifacts, including upload new Artifacts and delete Artifacts. It does not have access to Devices or Deployments.",
719
- permission_sets_with_scope: [
720
- { ...defaultPermissionSets.ReadReleases },
721
- { ...defaultPermissionSets.ManageReleases },
722
- { ...defaultPermissionSets.UploadArtifacts }
723
- ]
724
- },
725
- {
726
- name: "almostAdmin",
727
- description: "almost admin rights",
728
- permissions: permissionSets.find((item) => item.name === "almostAdmin")?.permissions
729
- },
730
- {
731
- name: "almostAdminNew",
732
- description: "almost admin rights",
733
- permission_sets_with_scope: Object.values(defaultPermissionSets)
734
- }
735
- ];
736
- var expectedParsedRoles = {
737
- "141sasd": {
738
- editable: true,
739
- isCustom: void 0,
740
- uiPermissions: {
741
- ...emptyUiPermissions,
742
- groups: { bestgroup: [uiPermissionsById.read.value, uiPermissionsById.connect.value] },
743
- userManagement: [uiPermissionsById.manage.value]
744
- }
745
- },
746
- asdasd: {
747
- editable: false,
748
- isCustom: true,
749
- uiPermissions: { ...emptyUiPermissions, userManagement: [uiPermissionsById.read.value, uiPermissionsById.manage.value] }
750
- },
751
- dyn: {
752
- editable: false,
753
- isCustom: true,
754
- uiPermissions: {
755
- ...emptyUiPermissions,
756
- deployments: [uiPermissionsById.deploy.value],
757
- groups: { dyn: [uiPermissionsById.read.value, uiPermissionsById.deploy.value] }
758
- }
759
- },
760
- kljlkk: {
761
- editable: true,
762
- isCustom: false,
763
- uiPermissions: { ...emptyUiPermissions, groups: { bestgroup: [uiPermissionsById.read.value, uiPermissionsById.connect.value] } }
764
- },
765
- yyyyy: {
766
- editable: true,
767
- isCustom: void 0,
768
- uiPermissions: {
769
- ...emptyUiPermissions,
770
- groups: { dockerclient: [uiPermissionsById.read.value, uiPermissionsById.manage.value] },
771
- releases: { [ALL_RELEASES]: [uiPermissionsById.manage.value] }
772
- }
773
- },
774
- almostAdmin: {
775
- editable: false,
776
- isCustom: true,
777
- uiPermissions: {
778
- ...emptyUiPermissions,
779
- auditlog: [uiPermissionsById.read.value],
780
- deployments: [uiPermissionsById.manage.value, uiPermissionsById.deploy.value, uiPermissionsById.read.value],
781
- groups: {
782
- [ALL_DEVICES]: [
783
- uiPermissionsById.read.value,
784
- // we can't assign deployment permissions to devices here, since the old path based rbac controls don't allow the scoped permissions
785
- // uiPermissionsById.deploy.value,
786
- uiPermissionsById.manage.value,
787
- uiPermissionsById.connect.value,
788
- uiPermissionsById.configure.value
789
- ]
790
- },
791
- releases: {
792
- [ALL_RELEASES]: [uiPermissionsById.read.value, uiPermissionsById.upload.value, uiPermissionsById.manage.value]
793
- },
794
- userManagement: [uiPermissionsById.read.value, uiPermissionsById.manage.value]
795
- }
796
- },
797
- almostAdminNew: {
798
- editable: true,
799
- isCustom: void 0,
800
- uiPermissions: {
801
- ...emptyUiPermissions,
802
- auditlog: [uiPermissionsById.read.value],
803
- deployments: [uiPermissionsById.read.value, uiPermissionsById.deploy.value, uiPermissionsById.manage.value],
804
- groups: {
805
- [ALL_DEVICES]: [
806
- uiPermissionsById.read.value,
807
- uiPermissionsById.manage.value,
808
- uiPermissionsById.deploy.value,
809
- uiPermissionsById.connect.value,
810
- uiPermissionsById.configure.value
811
- ]
812
- },
813
- releases: {
814
- [ALL_RELEASES]: [uiPermissionsById.manage.value, uiPermissionsById.upload.value, uiPermissionsById.read.value]
815
- },
816
- tenantManagement: [uiPermissionsById.read.value, uiPermissionsById.manage.value],
817
- userManagement: [uiPermissionsById.read.value, uiPermissionsById.manage.value]
818
- }
819
- }
820
- };
821
- var defaultRolesById = {
822
- ...rolesById,
823
- test: {
824
- ...emptyRole,
825
- name: "test",
826
- description: "test description",
827
- editable: true,
828
- uiPermissions: {
829
- ...emptyUiPermissions,
830
- groups: { testGroup: [uiPermissionsById.read.value] },
831
- releases: { bar: [uiPermissionsById.read.value] }
832
- }
833
- }
834
- };
835
- var receivedRoles = rbacRoles.reduce(
836
- (accu, role) => {
837
- const { name, description, ...roleRemainder } = role;
838
- if (name.startsWith("RBAC")) {
839
- accu[name] = {
840
- ...defaultRolesById[name],
841
- ...roleRemainder,
842
- editable: false,
843
- isCustom: false,
844
- description: defaultRolesById[name].description ? defaultRolesById[name].description : description
845
- };
846
- } else {
847
- const result = expectedParsedRoles[name] ?? {};
848
- accu[name] = {
849
- ...emptyRole,
850
- ...role,
851
- ...result,
852
- name
853
- };
854
- }
855
- return accu;
856
- },
857
- { ...defaultRolesById }
858
- );
859
- var receivedPermissionSets = permissionSets.reduce((accu, set) => {
860
- const result = defaultPermissionSets[set.name]?.result ?? {};
861
- accu[set.name] = {
862
- ...set,
863
- result: {
864
- ...emptyUiPermissions,
865
- ...result
866
- }
867
- };
868
- return accu;
869
- }, {});
870
-
871
- export {
872
- undefineds,
873
- menderEnvironment,
874
- TEST_SESSION_DATETIME,
875
- mockDate,
876
- defaultPassword,
877
- defaultCreationDate,
878
- defaultMacAddress,
879
- testSsoId,
880
- token,
881
- accessTokens,
882
- webhookEvents,
883
- tenants,
884
- adminUserCapabilities,
885
- userId,
886
- mockApiResponses,
887
- releasesList,
888
- permissionSets,
889
- rbacRoles,
890
- receivedRoles,
891
- receivedPermissionSets
892
- };
893
- //# sourceMappingURL=chunk-CT35JRBC.js.map