@northern.tech/store 0.1.3 → 0.2.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.
- package/dist/actions.js +251 -135
- package/dist/actions.js.map +1 -1
- package/dist/actions.mjs +13 -13
- package/dist/api/general-api.js +102 -51
- package/dist/api/general-api.js.map +1 -1
- package/dist/api/general-api.mjs +6 -6
- package/dist/api/users-api.js +104 -66
- package/dist/api/users-api.js.map +1 -1
- package/dist/api/users-api.mjs +7 -7
- package/dist/appSlice/constants.js +1 -39
- package/dist/appSlice/constants.js.map +1 -1
- package/dist/appSlice/constants.mjs +2 -2
- package/dist/appSlice/index.js +111 -64
- package/dist/appSlice/index.js.map +1 -1
- package/dist/appSlice/index.mjs +5 -5
- package/dist/appSlice/selectors.js +1 -43
- package/dist/appSlice/selectors.js.map +1 -1
- package/dist/appSlice/selectors.mjs +2 -2
- package/dist/appSlice/thunks.js +649 -552
- package/dist/appSlice/thunks.js.map +1 -1
- package/dist/appSlice/thunks.mjs +28 -28
- package/dist/auth.js +99 -51
- package/dist/auth.js.map +1 -1
- package/dist/auth.mjs +5 -5
- package/dist/{chunk-C2YZYTJ6.mjs → chunk-2Z3RFYW4.mjs} +2 -11
- package/dist/{chunk-C2YZYTJ6.mjs.map → chunk-2Z3RFYW4.mjs.map} +1 -1
- package/dist/{chunk-F37LUTBX.mjs → chunk-3ORTTLIB.mjs} +19 -16
- package/dist/{chunk-F37LUTBX.mjs.map → chunk-3ORTTLIB.mjs.map} +1 -1
- package/dist/{chunk-7E7KJHY3.mjs → chunk-4SDUITD4.mjs} +6 -12
- package/dist/{chunk-7E7KJHY3.mjs.map → chunk-4SDUITD4.mjs.map} +1 -1
- package/dist/{chunk-BOSBROA3.mjs → chunk-5VNQCCAQ.mjs} +2 -7
- package/dist/{chunk-BOSBROA3.mjs.map → chunk-5VNQCCAQ.mjs.map} +1 -1
- package/dist/{chunk-R2GBNXLV.mjs → chunk-65YIOCCD.mjs} +6 -11
- package/dist/{chunk-R2GBNXLV.mjs.map → chunk-65YIOCCD.mjs.map} +1 -1
- package/dist/{chunk-ZIYGEXSJ.mjs → chunk-6CSGHZ3E.mjs} +9 -21
- package/dist/{chunk-ZIYGEXSJ.mjs.map → chunk-6CSGHZ3E.mjs.map} +1 -1
- package/dist/{chunk-HRWZJQMH.mjs → chunk-AZRVRNXT.mjs} +40 -30
- package/dist/{chunk-HRWZJQMH.mjs.map → chunk-AZRVRNXT.mjs.map} +1 -1
- package/dist/{chunk-M4U5R7A4.mjs → chunk-B42NUKMZ.mjs} +2 -6
- package/dist/{chunk-M4U5R7A4.mjs.map → chunk-B42NUKMZ.mjs.map} +1 -1
- package/dist/{chunk-DZBVTSIX.mjs → chunk-CHUCIHMY.mjs} +3 -4
- package/dist/{chunk-DZBVTSIX.mjs.map → chunk-CHUCIHMY.mjs.map} +1 -1
- package/dist/{chunk-YNVSU3AA.mjs → chunk-DIZJVB6M.mjs} +307 -292
- package/dist/chunk-DIZJVB6M.mjs.map +1 -0
- package/dist/chunk-H5UCKQWK.mjs +41 -0
- package/dist/{chunk-IPPIKGIB.mjs.map → chunk-H5UCKQWK.mjs.map} +1 -1
- package/dist/{chunk-ZNST5R6O.mjs → chunk-IFWKT27G.mjs} +92 -29
- package/dist/chunk-IFWKT27G.mjs.map +1 -0
- package/dist/{chunk-6667TCAJ.mjs → chunk-JA27QXVB.mjs} +37 -28
- package/dist/{chunk-6667TCAJ.mjs.map → chunk-JA27QXVB.mjs.map} +1 -1
- package/dist/{chunk-HVHZG2H4.mjs → chunk-K2NZL5V4.mjs} +4 -7
- package/dist/chunk-K2NZL5V4.mjs.map +1 -0
- package/dist/{chunk-RQOE5OOT.mjs → chunk-KJAZNKV2.mjs} +66 -55
- package/dist/chunk-KJAZNKV2.mjs.map +1 -0
- package/dist/{chunk-G32LAKW4.mjs → chunk-KPPU6OWF.mjs} +27 -39
- package/dist/{chunk-G32LAKW4.mjs.map → chunk-KPPU6OWF.mjs.map} +1 -1
- package/dist/{chunk-BJSH2G7W.mjs → chunk-KZSTW27Q.mjs} +30 -18
- package/dist/{chunk-BJSH2G7W.mjs.map → chunk-KZSTW27Q.mjs.map} +1 -1
- package/dist/chunk-LZOMFHX3.mjs +38 -0
- package/dist/{chunk-XYVPYFSM.mjs → chunk-NJNSCJEY.mjs} +22 -26
- package/dist/{chunk-XYVPYFSM.mjs.map → chunk-NJNSCJEY.mjs.map} +1 -1
- package/dist/{chunk-N7G6QK2E.mjs → chunk-O6TYYKSD.mjs} +62 -60
- package/dist/chunk-O6TYYKSD.mjs.map +1 -0
- package/dist/{chunk-G3I53JGW.mjs → chunk-QQBUNZHA.mjs} +3 -6
- package/dist/{chunk-G3I53JGW.mjs.map → chunk-QQBUNZHA.mjs.map} +1 -1
- package/dist/{chunk-TD45YTYK.mjs → chunk-R7LXL3KJ.mjs} +22 -23
- package/dist/chunk-R7LXL3KJ.mjs.map +1 -0
- package/dist/{chunk-G7LATUT6.mjs → chunk-WCUGLHYM.mjs} +16 -20
- package/dist/{chunk-G7LATUT6.mjs.map → chunk-WCUGLHYM.mjs.map} +1 -1
- package/dist/chunk-WYHJFSMQ.mjs +25 -0
- package/dist/{chunk-IVSYYXTC.mjs.map → chunk-WYHJFSMQ.mjs.map} +1 -1
- package/dist/{chunk-O6O3D52B.mjs → chunk-XC5UXEIB.mjs} +4 -11
- package/dist/{chunk-O6O3D52B.mjs.map → chunk-XC5UXEIB.mjs.map} +1 -1
- package/dist/{chunk-BRHSKNFC.mjs → chunk-XD7INCM4.mjs} +11 -17
- package/dist/{chunk-BRHSKNFC.mjs.map → chunk-XD7INCM4.mjs.map} +1 -1
- package/dist/{chunk-RH6ONMG7.mjs → chunk-ZE7R2XXE.mjs} +10 -12
- package/dist/{chunk-RH6ONMG7.mjs.map → chunk-ZE7R2XXE.mjs.map} +1 -1
- package/dist/{chunk-HXPYJ6QN.mjs → chunk-ZK4W5T53.mjs} +7 -11
- package/dist/{chunk-HXPYJ6QN.mjs.map → chunk-ZK4W5T53.mjs.map} +1 -1
- package/dist/commonConstants.d.mts +18 -19
- package/dist/commonConstants.d.ts +18 -19
- package/dist/commonConstants.js +2 -35
- package/dist/commonConstants.js.map +1 -1
- package/dist/commonConstants.mjs +2 -2
- package/dist/commonSelectors.d.mts +42 -1
- package/dist/commonSelectors.d.ts +42 -1
- package/dist/commonSelectors.js +149 -129
- package/dist/commonSelectors.js.map +1 -1
- package/dist/commonSelectors.mjs +14 -12
- package/dist/constants.d.mts +3 -3
- package/dist/constants.d.ts +3 -3
- package/dist/constants.js +92 -147
- package/dist/constants.js.map +1 -1
- package/dist/constants.mjs +18 -14
- package/dist/deploymentsSlice/constants.js +94 -55
- package/dist/deploymentsSlice/constants.js.map +1 -1
- package/dist/deploymentsSlice/constants.mjs +4 -4
- package/dist/deploymentsSlice/index.js +128 -75
- package/dist/deploymentsSlice/index.js.map +1 -1
- package/dist/deploymentsSlice/index.mjs +5 -5
- package/dist/deploymentsSlice/selectors.js +95 -48
- package/dist/deploymentsSlice/selectors.js.map +1 -1
- package/dist/deploymentsSlice/selectors.mjs +5 -5
- package/dist/deploymentsSlice/thunks.js +649 -561
- package/dist/deploymentsSlice/thunks.js.map +1 -1
- package/dist/deploymentsSlice/thunks.mjs +28 -28
- package/dist/devicesSlice/constants.js +94 -54
- package/dist/devicesSlice/constants.js.map +1 -1
- package/dist/devicesSlice/constants.mjs +4 -4
- package/dist/devicesSlice/index.js +131 -77
- package/dist/devicesSlice/index.js.map +1 -1
- package/dist/devicesSlice/index.mjs +5 -5
- package/dist/devicesSlice/selectors.js +100 -85
- package/dist/devicesSlice/selectors.js.map +1 -1
- package/dist/devicesSlice/selectors.mjs +5 -5
- package/dist/devicesSlice/thunks.js +649 -597
- package/dist/devicesSlice/thunks.js.map +1 -1
- package/dist/devicesSlice/thunks.mjs +28 -28
- package/dist/monitorSlice/constants.js +94 -41
- package/dist/monitorSlice/constants.js.map +1 -1
- package/dist/monitorSlice/constants.mjs +4 -4
- package/dist/monitorSlice/index.js +101 -48
- package/dist/monitorSlice/index.js.map +1 -1
- package/dist/monitorSlice/index.mjs +5 -5
- package/dist/monitorSlice/selectors.js +0 -4
- package/dist/monitorSlice/selectors.mjs +1 -1
- package/dist/monitorSlice/thunks.js +333 -238
- package/dist/monitorSlice/thunks.js.map +1 -1
- package/dist/monitorSlice/thunks.mjs +25 -25
- package/dist/onboardingSlice/constants.js +0 -5
- package/dist/onboardingSlice/constants.mjs +1 -1
- package/dist/onboardingSlice/index.js +1 -22
- package/dist/onboardingSlice/index.js.map +1 -1
- package/dist/onboardingSlice/index.mjs +2 -2
- package/dist/onboardingSlice/selectors.js +0 -4
- package/dist/onboardingSlice/selectors.mjs +1 -1
- package/dist/onboardingSlice/thunks.js +649 -555
- package/dist/onboardingSlice/thunks.js.map +1 -1
- package/dist/onboardingSlice/thunks.mjs +28 -28
- package/dist/organizationSlice/constants.d.mts +6 -1
- package/dist/organizationSlice/constants.d.ts +6 -1
- package/dist/organizationSlice/constants.js +89 -51
- package/dist/organizationSlice/constants.js.map +1 -1
- package/dist/organizationSlice/constants.mjs +6 -4
- package/dist/organizationSlice/index.d.mts +224 -246
- package/dist/organizationSlice/index.d.ts +224 -246
- package/dist/organizationSlice/index.js +113 -59
- package/dist/organizationSlice/index.js.map +1 -1
- package/dist/organizationSlice/index.mjs +5 -5
- package/dist/organizationSlice/selectors.js +96 -58
- package/dist/organizationSlice/selectors.js.map +1 -1
- package/dist/organizationSlice/selectors.mjs +5 -5
- package/dist/organizationSlice/thunks.js +649 -580
- package/dist/organizationSlice/thunks.js.map +1 -1
- package/dist/organizationSlice/thunks.mjs +28 -28
- package/dist/releasesSlice/constants.js +0 -7
- package/dist/releasesSlice/constants.mjs +1 -1
- package/dist/releasesSlice/index.js +98 -60
- package/dist/releasesSlice/index.js.map +1 -1
- package/dist/releasesSlice/index.mjs +5 -5
- package/dist/releasesSlice/selectors.js +97 -53
- package/dist/releasesSlice/selectors.js.map +1 -1
- package/dist/releasesSlice/selectors.mjs +6 -6
- package/dist/releasesSlice/thunks.js +377 -287
- package/dist/releasesSlice/thunks.js.map +1 -1
- package/dist/releasesSlice/thunks.mjs +25 -25
- package/dist/selectors.d.mts +1 -1
- package/dist/selectors.d.ts +1 -1
- package/dist/selectors.js +150 -202
- package/dist/selectors.js.map +1 -1
- package/dist/selectors.mjs +45 -43
- package/dist/store.d.mts +235 -135
- package/dist/store.d.ts +235 -135
- package/dist/store.js +262 -157
- package/dist/store.js.map +1 -1
- package/dist/store.mjs +16 -16
- package/dist/storehooks.d.mts +3 -1
- package/dist/storehooks.d.ts +3 -1
- package/dist/storehooks.js +686 -569
- package/dist/storehooks.js.map +1 -1
- package/dist/storehooks.mjs +71 -54
- package/dist/storehooks.mjs.map +1 -1
- package/dist/thunks.js +649 -710
- package/dist/thunks.js.map +1 -1
- package/dist/thunks.mjs +28 -28
- package/dist/usersSlice/constants.d.mts +192 -17
- package/dist/usersSlice/constants.d.ts +192 -17
- package/dist/usersSlice/constants.js +97 -61
- package/dist/usersSlice/constants.js.map +1 -1
- package/dist/usersSlice/constants.mjs +6 -4
- package/dist/usersSlice/index.d.mts +1628 -704
- package/dist/usersSlice/index.d.ts +1628 -704
- package/dist/usersSlice/index.js +122 -67
- package/dist/usersSlice/index.js.map +1 -1
- package/dist/usersSlice/index.mjs +5 -5
- package/dist/usersSlice/selectors.js +101 -62
- package/dist/usersSlice/selectors.js.map +1 -1
- package/dist/usersSlice/selectors.mjs +6 -6
- package/dist/usersSlice/thunks.js +649 -584
- package/dist/usersSlice/thunks.js.map +1 -1
- package/dist/usersSlice/thunks.mjs +28 -28
- package/dist/utils.d.mts +6 -5
- package/dist/utils.d.ts +6 -5
- package/dist/utils.js +117 -89
- package/dist/utils.js.map +1 -1
- package/dist/utils.mjs +5 -5
- package/package.json +66 -1
- package/dist/chunk-HVHZG2H4.mjs.map +0 -1
- package/dist/chunk-IPPIKGIB.mjs +0 -35
- package/dist/chunk-IVSYYXTC.mjs +0 -36
- package/dist/chunk-N7G6QK2E.mjs.map +0 -1
- package/dist/chunk-RQOE5OOT.mjs.map +0 -1
- package/dist/chunk-TD45YTYK.mjs.map +0 -1
- package/dist/chunk-XWBD7VOK.mjs +0 -93
- package/dist/chunk-YNVSU3AA.mjs.map +0 -1
- package/dist/chunk-ZNST5R6O.mjs.map +0 -1
- /package/dist/{chunk-XWBD7VOK.mjs.map → chunk-LZOMFHX3.mjs.map} +0 -0
package/dist/api/users-api.js
CHANGED
|
@@ -1,39 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __create = Object.create;
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
|
-
var __defProps = Object.defineProperties;
|
|
5
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
7
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
8
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
9
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
10
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
11
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
12
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
13
|
-
var __spreadValues = (a, b) => {
|
|
14
|
-
for (var prop in b || (b = {}))
|
|
15
|
-
if (__hasOwnProp.call(b, prop))
|
|
16
|
-
__defNormalProp(a, prop, b[prop]);
|
|
17
|
-
if (__getOwnPropSymbols)
|
|
18
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
19
|
-
if (__propIsEnum.call(b, prop))
|
|
20
|
-
__defNormalProp(a, prop, b[prop]);
|
|
21
|
-
}
|
|
22
|
-
return a;
|
|
23
|
-
};
|
|
24
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
25
|
-
var __objRest = (source, exclude) => {
|
|
26
|
-
var target = {};
|
|
27
|
-
for (var prop in source)
|
|
28
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
29
|
-
target[prop] = source[prop];
|
|
30
|
-
if (source != null && __getOwnPropSymbols)
|
|
31
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
32
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
33
|
-
target[prop] = source[prop];
|
|
34
|
-
}
|
|
35
|
-
return target;
|
|
36
|
-
};
|
|
37
8
|
var __export = (target, all) => {
|
|
38
9
|
for (var name in all)
|
|
39
10
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -84,7 +55,7 @@ var chartTypes = {
|
|
|
84
55
|
};
|
|
85
56
|
var emptyChartSelection = { software: "", group: "", chartType: chartTypes.bar.key, attribute: "artifact_name" };
|
|
86
57
|
var defaultReportType = "distribution";
|
|
87
|
-
var defaultReports = [
|
|
58
|
+
var defaultReports = [{ ...emptyChartSelection, group: null, attribute: "artifact_name", type: defaultReportType }];
|
|
88
59
|
var PLANS = {
|
|
89
60
|
os: {
|
|
90
61
|
id: "os",
|
|
@@ -403,13 +374,14 @@ var emptyUiPermissions = Object.freeze({
|
|
|
403
374
|
deployments: [],
|
|
404
375
|
groups: Object.freeze({}),
|
|
405
376
|
releases: Object.freeze({}),
|
|
377
|
+
tenantManagement: [],
|
|
406
378
|
userManagement: []
|
|
407
379
|
});
|
|
408
380
|
var emptyRole = Object.freeze({
|
|
409
381
|
name: void 0,
|
|
410
382
|
description: "",
|
|
411
383
|
permissions: [],
|
|
412
|
-
uiPermissions: Object.freeze(
|
|
384
|
+
uiPermissions: Object.freeze({ ...emptyUiPermissions })
|
|
413
385
|
});
|
|
414
386
|
|
|
415
387
|
// src/deploymentsSlice/constants.ts
|
|
@@ -438,11 +410,12 @@ var deploymentStatesToSubstates = {
|
|
|
438
410
|
pending: [deploymentSubstates.pending],
|
|
439
411
|
successes: [deploymentSubstates.success, deploymentSubstates.alreadyInstalled, deploymentSubstates.noartifact]
|
|
440
412
|
};
|
|
441
|
-
var deploymentStatesToSubstatesWithSkipped =
|
|
413
|
+
var deploymentStatesToSubstatesWithSkipped = {
|
|
414
|
+
...deploymentStatesToSubstates,
|
|
442
415
|
failures: [deploymentSubstates.failure],
|
|
443
416
|
skipped: [deploymentSubstates.aborted, deploymentSubstates.noartifact, deploymentSubstates.alreadyInstalled, deploymentSubstates.decommissioned],
|
|
444
417
|
successes: [deploymentSubstates.success]
|
|
445
|
-
}
|
|
418
|
+
};
|
|
446
419
|
var installationSubstatesMap = {
|
|
447
420
|
download: {
|
|
448
421
|
title: "download",
|
|
@@ -487,8 +460,8 @@ var DEPLOYMENT_STATES = {
|
|
|
487
460
|
var listDefaultsByState = {
|
|
488
461
|
[DEPLOYMENT_STATES.inprogress]: { page: 1, perPage: 10 },
|
|
489
462
|
[DEPLOYMENT_STATES.pending]: { page: 1, perPage: 10 },
|
|
490
|
-
[DEPLOYMENT_STATES.scheduled]:
|
|
491
|
-
[DEPLOYMENT_STATES.finished]:
|
|
463
|
+
[DEPLOYMENT_STATES.scheduled]: { ...DEVICE_LIST_DEFAULTS },
|
|
464
|
+
[DEPLOYMENT_STATES.finished]: { ...DEVICE_LIST_DEFAULTS },
|
|
492
465
|
sort: { direction: SORTING_OPTIONS.desc }
|
|
493
466
|
};
|
|
494
467
|
var DEPLOYMENT_ROUTES = {
|
|
@@ -601,6 +574,13 @@ var auditLogsApiUrl = `${apiUrl.v1}/auditlogs`;
|
|
|
601
574
|
var tenantadmApiUrlv1 = `${apiUrl.v1}/tenantadm`;
|
|
602
575
|
var tenantadmApiUrlv2 = `${apiUrl.v2}/tenantadm`;
|
|
603
576
|
var ssoIdpApiUrlv1 = `${apiUrl.v1}/useradm/sso/idp/metadata`;
|
|
577
|
+
var AUDIT_LOGS_TYPES = [
|
|
578
|
+
{ title: "Artifact", queryParameter: "object_type", value: "artifact" },
|
|
579
|
+
{ title: "Deployment", queryParameter: "object_deployment_name", value: "deployment" },
|
|
580
|
+
{ title: "Device", queryParameter: "object_id", value: "device" },
|
|
581
|
+
{ title: "User", queryParameter: "object_id", value: "user" }
|
|
582
|
+
];
|
|
583
|
+
var SP_AUDIT_LOGS_TYPES = [AUDIT_LOGS_TYPES[3], { title: "Tenant", queryParameter: "object_id", value: "tenant" }];
|
|
604
584
|
var emptyWebhook = {
|
|
605
585
|
description: "",
|
|
606
586
|
enabled: true,
|
|
@@ -644,10 +624,12 @@ var permissionSetIds = {
|
|
|
644
624
|
DeployToDevices: "DeployToDevices",
|
|
645
625
|
ManageDevices: "ManageDevices",
|
|
646
626
|
ManageReleases: "ManageReleases",
|
|
627
|
+
ManageTenants: "ManageTenants",
|
|
647
628
|
ManageUsers: "ManageUsers",
|
|
648
629
|
ReadAuditLogs: "ReadAuditLogs",
|
|
649
630
|
ReadDevices: "ReadDevices",
|
|
650
631
|
ReadReleases: "ReadReleases",
|
|
632
|
+
ReadTenants: "ReadTenants",
|
|
651
633
|
ReadUsers: "ReadUsers",
|
|
652
634
|
SuperUser: "SuperUser",
|
|
653
635
|
UploadArtifacts: "UploadArtifacts"
|
|
@@ -686,6 +668,7 @@ var uiPermissionsById = {
|
|
|
686
668
|
permissionSets: {
|
|
687
669
|
groups: permissionSetIds.ManageDevices,
|
|
688
670
|
releases: permissionSetIds.ManageReleases,
|
|
671
|
+
tenantManagement: permissionSetIds.ManageTenants,
|
|
689
672
|
userManagement: permissionSetIds.ManageUsers
|
|
690
673
|
},
|
|
691
674
|
title: "Manage",
|
|
@@ -699,6 +682,7 @@ var uiPermissionsById = {
|
|
|
699
682
|
auditlog: permissionSetIds.ReadAuditLogs,
|
|
700
683
|
groups: permissionSetIds.ReadDevices,
|
|
701
684
|
releases: permissionSetIds.ReadReleases,
|
|
685
|
+
tenantManagement: permissionSetIds.ReadTenants,
|
|
702
686
|
userManagement: permissionSetIds.ReadUsers
|
|
703
687
|
},
|
|
704
688
|
title: "Read",
|
|
@@ -723,6 +707,7 @@ var uiPermissionsByArea = {
|
|
|
723
707
|
auditlog: {
|
|
724
708
|
endpoints: [{ path: /\/(auditlog)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] }],
|
|
725
709
|
explanation: "Granting access to the audit log will allow tracing changes to devices, releases and user accounts, as well as providing information about deployments.",
|
|
710
|
+
key: "auditlog",
|
|
726
711
|
uiPermissions: [uiPermissionsById.read],
|
|
727
712
|
title: "System audit log"
|
|
728
713
|
},
|
|
@@ -733,6 +718,7 @@ var uiPermissionsByArea = {
|
|
|
733
718
|
{ path: /\/(deployments\/config)/i, types: [PermissionTypes.Get, PermissionTypes.Put], uiPermissions: [uiPermissionsById.manage] }
|
|
734
719
|
],
|
|
735
720
|
explanation: "Providing deploy permissions will allow deployments to be created using the releases and devices a user has access to.",
|
|
721
|
+
key: "deployments",
|
|
736
722
|
uiPermissions: [uiPermissionsById.read, uiPermissionsById.deploy],
|
|
737
723
|
title: "Deployments"
|
|
738
724
|
},
|
|
@@ -748,6 +734,7 @@ var uiPermissionsByArea = {
|
|
|
748
734
|
{ path: /\/(deviceconnect\/devices)/i, types: [PermissionTypes.Get, PermissionTypes.Post], uiPermissions: [uiPermissionsById.connect] }
|
|
749
735
|
],
|
|
750
736
|
explanation: "Device group management permissions control the degree to which devices in a group can be accessed and moved to other groups.",
|
|
737
|
+
key: "groups",
|
|
751
738
|
scope: scopedPermissionAreas.groups.scopeType,
|
|
752
739
|
uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage, uiPermissionsById.deploy, uiPermissionsById.configure, uiPermissionsById.connect],
|
|
753
740
|
title: "Group Management"
|
|
@@ -767,16 +754,29 @@ var uiPermissionsByArea = {
|
|
|
767
754
|
}
|
|
768
755
|
],
|
|
769
756
|
explanation: "Release permissions can be granted to allow artifact & release modifications, as well as the creation of new releases.",
|
|
757
|
+
key: "releases",
|
|
770
758
|
scope: "ReleaseTags",
|
|
771
759
|
uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage, uiPermissionsById.upload],
|
|
772
760
|
title: "Release Management"
|
|
773
761
|
},
|
|
762
|
+
tenantManagement: {
|
|
763
|
+
endpoints: [
|
|
764
|
+
{ path: /\/(tenantadm\/tenants)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] },
|
|
765
|
+
{ path: /\/(tenantadm\/tenants)/i, types: [PermissionTypes.Post, PermissionTypes.Put], uiPermissions: [uiPermissionsById.manage] },
|
|
766
|
+
{ path: /\/(users\/exists)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.manage] }
|
|
767
|
+
],
|
|
768
|
+
explanation: "Tenant management permissions allow listing, creating and modifying child tenants",
|
|
769
|
+
key: "tenantManagement",
|
|
770
|
+
uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage],
|
|
771
|
+
title: "Tenant Management"
|
|
772
|
+
},
|
|
774
773
|
userManagement: {
|
|
775
774
|
endpoints: [
|
|
776
775
|
{ path: /\/(useradm)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] },
|
|
777
776
|
{ path: /\/(useradm)/i, types: [PermissionTypes.Post], uiPermissions: [uiPermissionsById.manage] }
|
|
778
777
|
],
|
|
779
778
|
explanation: "User management permissions should be granted carefully, as these allow privilege increases for any users managed by a user with user management permissions",
|
|
779
|
+
key: "userManagement",
|
|
780
780
|
uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage],
|
|
781
781
|
title: "User Management"
|
|
782
782
|
}
|
|
@@ -789,56 +789,87 @@ var rolesById = Object.freeze({
|
|
|
789
789
|
description: "Full access",
|
|
790
790
|
permissions: [],
|
|
791
791
|
// permissions refers to the values returned from the backend
|
|
792
|
-
uiPermissions:
|
|
792
|
+
uiPermissions: {
|
|
793
|
+
...emptyUiPermissions,
|
|
793
794
|
auditlog: uiPermissionsByArea.auditlog.uiPermissions.map(permissionMapper),
|
|
794
795
|
deployments: uiPermissionsByArea.deployments.uiPermissions.map(permissionMapper),
|
|
795
796
|
groups: { [ALL_DEVICES]: uiPermissionsByArea.groups.uiPermissions.map(permissionMapper) },
|
|
796
797
|
releases: { [ALL_RELEASES]: uiPermissionsByArea.releases.uiPermissions.map(permissionMapper) },
|
|
797
798
|
userManagement: uiPermissionsByArea.userManagement.uiPermissions.map(permissionMapper)
|
|
798
|
-
}
|
|
799
|
+
}
|
|
799
800
|
},
|
|
800
801
|
[staticRolesByName.readOnly]: {
|
|
801
802
|
name: "Read Access",
|
|
802
803
|
value: staticRolesByName.readOnly,
|
|
803
804
|
description: "",
|
|
804
805
|
permissions: [],
|
|
805
|
-
uiPermissions:
|
|
806
|
+
uiPermissions: {
|
|
807
|
+
...emptyUiPermissions,
|
|
806
808
|
deployments: [uiPermissionsById.read.value],
|
|
807
809
|
groups: { [ALL_DEVICES]: [uiPermissionsById.read.value] },
|
|
808
810
|
releases: { [ALL_RELEASES]: [uiPermissionsById.read.value] },
|
|
809
811
|
userManagement: [uiPermissionsById.read.value]
|
|
810
|
-
}
|
|
812
|
+
}
|
|
811
813
|
},
|
|
812
814
|
[staticRolesByName.ci]: {
|
|
813
815
|
name: "Releases Manager",
|
|
814
816
|
value: staticRolesByName.ci,
|
|
815
817
|
description: "",
|
|
816
818
|
permissions: [],
|
|
817
|
-
uiPermissions:
|
|
819
|
+
uiPermissions: {
|
|
820
|
+
...emptyUiPermissions,
|
|
818
821
|
releases: { [ALL_RELEASES]: uiPermissionsByArea.releases.uiPermissions.map(permissionMapper) }
|
|
819
|
-
}
|
|
822
|
+
}
|
|
820
823
|
},
|
|
821
824
|
[staticRolesByName.deploymentsManager]: {
|
|
822
825
|
name: "Deployments Manager",
|
|
823
826
|
value: staticRolesByName.deploymentsManager,
|
|
824
827
|
description: "",
|
|
825
828
|
permissions: [],
|
|
826
|
-
uiPermissions:
|
|
829
|
+
uiPermissions: {
|
|
830
|
+
...emptyUiPermissions,
|
|
827
831
|
deployments: uiPermissionsByArea.deployments.uiPermissions.map(permissionMapper),
|
|
828
832
|
groups: { [ALL_DEVICES]: [uiPermissionsById.deploy.value, uiPermissionsById.read.value] },
|
|
829
833
|
releases: { [ALL_RELEASES]: [uiPermissionsById.read.value] }
|
|
830
|
-
}
|
|
834
|
+
}
|
|
831
835
|
},
|
|
832
836
|
[staticRolesByName.terminalAccess]: {
|
|
833
837
|
name: "Troubleshooting",
|
|
834
838
|
value: staticRolesByName.terminalAccess,
|
|
835
839
|
description: "Access to the troubleshooting features: Remote Terminal, File Transfer, Port Forwarding",
|
|
836
840
|
permissions: [],
|
|
837
|
-
uiPermissions:
|
|
841
|
+
uiPermissions: {
|
|
842
|
+
...emptyUiPermissions,
|
|
838
843
|
groups: { [ALL_DEVICES]: [uiPermissionsById.connect.value] }
|
|
839
|
-
}
|
|
844
|
+
}
|
|
840
845
|
}
|
|
841
846
|
});
|
|
847
|
+
var serviceProviderRolesById = {
|
|
848
|
+
admin: {
|
|
849
|
+
name: "Admin",
|
|
850
|
+
value: staticRolesByName.admin,
|
|
851
|
+
description: "Full access",
|
|
852
|
+
permissions: [],
|
|
853
|
+
uiPermissions: {
|
|
854
|
+
...emptyUiPermissions,
|
|
855
|
+
auditlog: uiPermissionsByArea.auditlog.uiPermissions.map(permissionMapper),
|
|
856
|
+
userManagement: uiPermissionsByArea.userManagement.uiPermissions.map(permissionMapper),
|
|
857
|
+
tenantManagement: uiPermissionsByArea.tenantManagement.uiPermissions.map(permissionMapper)
|
|
858
|
+
}
|
|
859
|
+
},
|
|
860
|
+
readOnly: {
|
|
861
|
+
name: "Read access",
|
|
862
|
+
value: staticRolesByName.admin,
|
|
863
|
+
description: "This role can see all linked organizations but cannot make any changes",
|
|
864
|
+
permissions: [],
|
|
865
|
+
uiPermissions: {
|
|
866
|
+
...emptyUiPermissions,
|
|
867
|
+
auditlog: [uiPermissionsById.read.value],
|
|
868
|
+
userManagement: [uiPermissionsById.read.value],
|
|
869
|
+
tenantManagement: [uiPermissionsById.read.value]
|
|
870
|
+
}
|
|
871
|
+
}
|
|
872
|
+
};
|
|
842
873
|
var defaultPermissionSets = {
|
|
843
874
|
[permissionSetIds.Basic]: {
|
|
844
875
|
name: permissionSetIds.Basic,
|
|
@@ -849,7 +880,9 @@ var defaultPermissionSets = {
|
|
|
849
880
|
},
|
|
850
881
|
[permissionSetIds.SuperUser]: {
|
|
851
882
|
name: permissionSetIds.SuperUser,
|
|
852
|
-
result:
|
|
883
|
+
result: {
|
|
884
|
+
...rolesById[staticRolesByName.admin].uiPermissions
|
|
885
|
+
}
|
|
853
886
|
},
|
|
854
887
|
[permissionSetIds.ManageUsers]: {
|
|
855
888
|
name: permissionSetIds.ManageUsers,
|
|
@@ -869,6 +902,18 @@ var defaultPermissionSets = {
|
|
|
869
902
|
releases: { [ALL_RELEASES]: [uiPermissionsById.read.value] }
|
|
870
903
|
}
|
|
871
904
|
},
|
|
905
|
+
[permissionSetIds.ReadTenants]: {
|
|
906
|
+
name: permissionSetIds.ReadTenants,
|
|
907
|
+
result: {
|
|
908
|
+
tenantManagement: [uiPermissionsById.read.value]
|
|
909
|
+
}
|
|
910
|
+
},
|
|
911
|
+
[permissionSetIds.ManageTenants]: {
|
|
912
|
+
name: permissionSetIds.ManageTenants,
|
|
913
|
+
result: {
|
|
914
|
+
tenantManagement: [uiPermissionsById.manage.value]
|
|
915
|
+
}
|
|
916
|
+
},
|
|
872
917
|
[permissionSetIds.ReadUsers]: {
|
|
873
918
|
name: permissionSetIds.ReadUsers,
|
|
874
919
|
result: {
|
|
@@ -920,29 +965,29 @@ var defaultPermissionSets = {
|
|
|
920
965
|
}
|
|
921
966
|
}
|
|
922
967
|
};
|
|
923
|
-
var rolesByName =
|
|
968
|
+
var rolesByName = {
|
|
969
|
+
...staticRolesByName,
|
|
924
970
|
deploymentCreation: { action: "CREATE_DEPLOYMENT", object: { type: "DEVICE_GROUP", value: void 0 } },
|
|
925
971
|
groupAccess: { action: "VIEW_DEVICE", object: { type: "DEVICE_GROUP", value: void 0 } },
|
|
926
972
|
userManagement: { action: "http", object: { type: "any", value: `${useradmApiUrlv1}/.*` } }
|
|
927
|
-
}
|
|
973
|
+
};
|
|
928
974
|
|
|
929
975
|
// src/auth.ts
|
|
930
976
|
var cookies = new import_universal_cookie.default();
|
|
931
977
|
var emptySession = Object.freeze({ token: "", exiresAt: void 0 });
|
|
932
978
|
var tokenCache = "";
|
|
933
979
|
var getSessionInfo = () => {
|
|
934
|
-
|
|
935
|
-
let sessionInfo = __spreadValues({}, emptySession);
|
|
980
|
+
let sessionInfo = { ...emptySession };
|
|
936
981
|
try {
|
|
937
|
-
sessionInfo = JSON.parse(
|
|
938
|
-
} catch
|
|
982
|
+
sessionInfo = JSON.parse(window.localStorage.getItem("JWT") ?? "");
|
|
983
|
+
} catch {
|
|
939
984
|
}
|
|
940
985
|
if (sessionInfo.expiresAt && new Date(sessionInfo.expiresAt) < /* @__PURE__ */ new Date()) {
|
|
941
986
|
cleanUp();
|
|
942
|
-
return
|
|
987
|
+
return { ...emptySession };
|
|
943
988
|
}
|
|
944
989
|
if (!sessionInfo.token) {
|
|
945
|
-
let jwtTokenFromCookie =
|
|
990
|
+
let jwtTokenFromCookie = cookies.get("JWT", { doNotParse: true }) ?? "";
|
|
946
991
|
if (jwtTokenFromCookie) {
|
|
947
992
|
setSessionInfo({ token: jwtTokenFromCookie, undefined: void 0 });
|
|
948
993
|
sessionInfo.token = jwtTokenFromCookie;
|
|
@@ -970,8 +1015,7 @@ var cleanUp = () => {
|
|
|
970
1015
|
// src/api/general-api.ts
|
|
971
1016
|
var import_axios = __toESM(require("axios"));
|
|
972
1017
|
var unauthorizedRedirect = (error) => {
|
|
973
|
-
|
|
974
|
-
if (!(0, import_axios.isCancel)(error) && ((_a = error.response) == null ? void 0 : _a.status) === 401 && getToken()) {
|
|
1018
|
+
if (!(0, import_axios.isCancel)(error) && error.response?.status === 401 && getToken()) {
|
|
975
1019
|
cleanUp();
|
|
976
1020
|
window.location.replace("/ui/");
|
|
977
1021
|
}
|
|
@@ -981,7 +1025,7 @@ var commonRequestConfig = { timeout: TIMEOUTS.refreshDefault, headers: { "Conten
|
|
|
981
1025
|
var authenticatedRequest = import_axios.default.create(commonRequestConfig);
|
|
982
1026
|
authenticatedRequest.interceptors.response.use((res) => res, unauthorizedRedirect);
|
|
983
1027
|
authenticatedRequest.interceptors.request.use(
|
|
984
|
-
(config) =>
|
|
1028
|
+
(config) => ({ ...config, headers: { ...config.headers, Authorization: `Bearer ${getToken()}` } }),
|
|
985
1029
|
(error) => Promise.reject(error)
|
|
986
1030
|
);
|
|
987
1031
|
var Api = {
|
|
@@ -989,7 +1033,7 @@ var Api = {
|
|
|
989
1033
|
delete: (url, data) => authenticatedRequest.request({ method: "delete", url, data }),
|
|
990
1034
|
patch: authenticatedRequest.patch,
|
|
991
1035
|
post: authenticatedRequest.post,
|
|
992
|
-
postUnauthorized: (url, data, config = {}) => import_axios.default.post(url, data,
|
|
1036
|
+
postUnauthorized: (url, data, config = {}) => import_axios.default.post(url, data, { ...commonRequestConfig, ...config }),
|
|
993
1037
|
put: authenticatedRequest.put,
|
|
994
1038
|
upload: (url, formData, progress, cancelSignal) => authenticatedRequest.post(url, formData, {
|
|
995
1039
|
headers: { "Content-Type": "multipart/form-data" },
|
|
@@ -1007,19 +1051,13 @@ var Api = {
|
|
|
1007
1051
|
|
|
1008
1052
|
// src/api/users-api.ts
|
|
1009
1053
|
var Api2 = {
|
|
1010
|
-
postLogin: (url,
|
|
1011
|
-
var _b = _a, { email: username, password } = _b, body = __objRest(_b, ["email", "password"]);
|
|
1012
|
-
return import_axios2.default.post(url, body, __spreadProps(__spreadValues({}, commonRequestConfig), { auth: { username, password } })).then((res) => {
|
|
1013
|
-
var _a2;
|
|
1014
|
-
return { text: res.data, code: res.status, contentType: (_a2 = res.headers) == null ? void 0 : _a2["content-type"] };
|
|
1015
|
-
});
|
|
1016
|
-
},
|
|
1054
|
+
postLogin: (url, { email: username, password, ...body }) => import_axios2.default.post(url, body, { ...commonRequestConfig, auth: { username, password } }).then((res) => ({ text: res.data, code: res.status, contentType: res.headers?.["content-type"] })),
|
|
1017
1055
|
putVerifyTFA: (url, userData) => {
|
|
1018
1056
|
let body = {};
|
|
1019
1057
|
if (userData.hasOwnProperty("token2fa")) {
|
|
1020
1058
|
body = { token2fa: userData.token2fa };
|
|
1021
1059
|
}
|
|
1022
|
-
return import_axios2.default.put(url, body,
|
|
1060
|
+
return import_axios2.default.put(url, body, { ...commonRequestConfig, headers: { ...commonRequestConfig.headers, Authorization: `Bearer ${getToken()}` } });
|
|
1023
1061
|
}
|
|
1024
1062
|
};
|
|
1025
1063
|
var users_api_default = Api2;
|