@northern.tech/store 0.18.0 → 0.19.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 (106) hide show
  1. package/dist/actions.js +6 -6
  2. package/dist/api/general-api.cjs +13 -9
  3. package/dist/api/general-api.cjs.map +1 -1
  4. package/dist/api/general-api.js +3 -3
  5. package/dist/api/users-api.cjs +13 -9
  6. package/dist/api/users-api.cjs.map +1 -1
  7. package/dist/api/users-api.js +4 -4
  8. package/dist/appSlice/index.js +1 -1
  9. package/dist/appSlice/mocks.js +1 -1
  10. package/dist/appSlice/thunks.cjs +42 -19
  11. package/dist/appSlice/thunks.cjs.map +1 -1
  12. package/dist/appSlice/thunks.js +18 -18
  13. package/dist/auth.cjs +7 -9
  14. package/dist/auth.cjs.map +1 -1
  15. package/dist/auth.js +2 -2
  16. package/dist/{chunk-6UO33KLN.js → chunk-C3EMLDPU.js} +5 -5
  17. package/dist/{chunk-EFFRZCDN.js → chunk-FUGCLQ5L.js} +23 -23
  18. package/dist/{chunk-C5QK6HH6.js → chunk-GBXG2XBY.js} +5 -5
  19. package/dist/{chunk-5M6EUVNO.js → chunk-IRQRV552.js} +8 -2
  20. package/dist/chunk-IRQRV552.js.map +1 -0
  21. package/dist/{chunk-CXBQKY7F.js → chunk-KJHHSYGP.js} +14 -14
  22. package/dist/{chunk-PFWOM36E.js → chunk-MZ5NRW3K.js} +38 -17
  23. package/dist/{chunk-PFWOM36E.js.map → chunk-MZ5NRW3K.js.map} +1 -1
  24. package/dist/{chunk-BX2CTAJO.js → chunk-QFYYTAYD.js} +11 -11
  25. package/dist/{chunk-FDSMCFV5.js → chunk-UVTLZV34.js} +8 -10
  26. package/dist/chunk-UVTLZV34.js.map +1 -0
  27. package/dist/{chunk-Y3DJIMEN.js → chunk-XJLZK4QY.js} +3 -3
  28. package/dist/commonConstants.js +1 -1
  29. package/dist/commonSelectors.cjs +31 -0
  30. package/dist/commonSelectors.cjs.map +1 -1
  31. package/dist/commonSelectors.d.cts +147 -1
  32. package/dist/commonSelectors.d.ts +147 -1
  33. package/dist/commonSelectors.js +8 -6
  34. package/dist/constants.js +1 -1
  35. package/dist/deploymentsSlice/constants.js +1 -1
  36. package/dist/deploymentsSlice/index.js +1 -1
  37. package/dist/deploymentsSlice/mocks.js +1 -1
  38. package/dist/deploymentsSlice/selectors.js +1 -1
  39. package/dist/deploymentsSlice/thunks.cjs +42 -19
  40. package/dist/deploymentsSlice/thunks.cjs.map +1 -1
  41. package/dist/deploymentsSlice/thunks.js +18 -18
  42. package/dist/devicesSlice/constants.js +1 -1
  43. package/dist/devicesSlice/index.js +1 -1
  44. package/dist/devicesSlice/mocks.js +1 -1
  45. package/dist/devicesSlice/selectors.js +1 -1
  46. package/dist/devicesSlice/thunks.cjs +42 -19
  47. package/dist/devicesSlice/thunks.cjs.map +1 -1
  48. package/dist/devicesSlice/thunks.js +18 -18
  49. package/dist/liststatehook.js +1 -1
  50. package/dist/locationutils.js +1 -1
  51. package/dist/monitorSlice/index.js +1 -1
  52. package/dist/monitorSlice/mocks.js +1 -1
  53. package/dist/monitorSlice/thunks.cjs +32 -9
  54. package/dist/monitorSlice/thunks.cjs.map +1 -1
  55. package/dist/monitorSlice/thunks.js +15 -15
  56. package/dist/onboardingSlice/thunks.cjs +45 -22
  57. package/dist/onboardingSlice/thunks.cjs.map +1 -1
  58. package/dist/onboardingSlice/thunks.js +18 -18
  59. package/dist/organizationSlice/constants.js +1 -1
  60. package/dist/organizationSlice/index.js +1 -1
  61. package/dist/organizationSlice/mocks.js +1 -1
  62. package/dist/organizationSlice/selectors.js +1 -1
  63. package/dist/organizationSlice/thunks.cjs +50 -27
  64. package/dist/organizationSlice/thunks.cjs.map +1 -1
  65. package/dist/organizationSlice/thunks.js +18 -18
  66. package/dist/releasesSlice/index.js +1 -1
  67. package/dist/releasesSlice/mocks.js +1 -1
  68. package/dist/releasesSlice/selectors.js +1 -1
  69. package/dist/releasesSlice/thunks.cjs +32 -9
  70. package/dist/releasesSlice/thunks.cjs.map +1 -1
  71. package/dist/releasesSlice/thunks.js +15 -15
  72. package/dist/selectors.cjs +29 -0
  73. package/dist/selectors.cjs.map +1 -1
  74. package/dist/selectors.d.cts +1 -1
  75. package/dist/selectors.d.ts +1 -1
  76. package/dist/selectors.js +44 -42
  77. package/dist/sockethook.js +1 -1
  78. package/dist/store.cjs +7 -9
  79. package/dist/store.cjs.map +1 -1
  80. package/dist/store.js +8 -8
  81. package/dist/storehooks.cjs +60 -37
  82. package/dist/storehooks.cjs.map +1 -1
  83. package/dist/storehooks.js +20 -20
  84. package/dist/thunks.cjs +53 -30
  85. package/dist/thunks.cjs.map +1 -1
  86. package/dist/thunks.js +18 -18
  87. package/dist/useDeploymentDevice.cjs +42 -19
  88. package/dist/useDeploymentDevice.cjs.map +1 -1
  89. package/dist/useDeploymentDevice.js +18 -18
  90. package/dist/usersSlice/constants.js +1 -1
  91. package/dist/usersSlice/index.js +1 -1
  92. package/dist/usersSlice/mocks.js +1 -1
  93. package/dist/usersSlice/selectors.js +1 -1
  94. package/dist/usersSlice/thunks.cjs +42 -19
  95. package/dist/usersSlice/thunks.cjs.map +1 -1
  96. package/dist/usersSlice/thunks.js +18 -18
  97. package/dist/utils.js +1 -1
  98. package/package.json +1 -1
  99. package/dist/chunk-5M6EUVNO.js.map +0 -1
  100. package/dist/chunk-FDSMCFV5.js.map +0 -1
  101. /package/dist/{chunk-6UO33KLN.js.map → chunk-C3EMLDPU.js.map} +0 -0
  102. /package/dist/{chunk-EFFRZCDN.js.map → chunk-FUGCLQ5L.js.map} +0 -0
  103. /package/dist/{chunk-C5QK6HH6.js.map → chunk-GBXG2XBY.js.map} +0 -0
  104. /package/dist/{chunk-CXBQKY7F.js.map → chunk-KJHHSYGP.js.map} +0 -0
  105. /package/dist/{chunk-BX2CTAJO.js.map → chunk-QFYYTAYD.js.map} +0 -0
  106. /package/dist/{chunk-Y3DJIMEN.js.map → chunk-XJLZK4QY.js.map} +0 -0
@@ -38,38 +38,38 @@ import {
38
38
  startUpgrade,
39
39
  storeSsoConfig,
40
40
  tenantDataDivergedMessage
41
- } from "../chunk-EFFRZCDN.js";
42
- import "../chunk-C5QK6HH6.js";
43
- import "../chunk-6UO33KLN.js";
44
- import "../chunk-CXBQKY7F.js";
45
- import "../chunk-Y3DJIMEN.js";
46
- import "../chunk-5M6EUVNO.js";
47
- import "../chunk-BX2CTAJO.js";
48
- import "../chunk-TRKA7XYU.js";
41
+ } from "../chunk-FUGCLQ5L.js";
42
+ import "../chunk-GBXG2XBY.js";
43
+ import "../chunk-C3EMLDPU.js";
44
+ import "../chunk-KJHHSYGP.js";
45
+ import "../chunk-XJLZK4QY.js";
46
+ import "../chunk-IRQRV552.js";
47
+ import "../chunk-QFYYTAYD.js";
49
48
  import "../chunk-YR65C62H.js";
49
+ import "../chunk-VODRLEDP.js";
50
+ import "../chunk-TRKA7XYU.js";
51
+ import "../chunk-CQXDAXQF.js";
50
52
  import "../chunk-VCEFZTWS.js";
51
53
  import "../chunk-PVCHKW35.js";
52
- import "../chunk-CQXDAXQF.js";
53
- import "../chunk-OLKM53RL.js";
54
54
  import "../chunk-6WJI4MOP.js";
55
- import "../chunk-VODRLEDP.js";
56
- import "../chunk-FDSMCFV5.js";
55
+ import "../chunk-OLKM53RL.js";
56
+ import "../chunk-UVTLZV34.js";
57
57
  import "../chunk-53W2NRSL.js";
58
58
  import "../chunk-NMAXZ3ZY.js";
59
- import "../chunk-PFWOM36E.js";
60
- import "../chunk-GEQ2QQEE.js";
59
+ import "../chunk-MZ5NRW3K.js";
61
60
  import "../chunk-QL6FN2JC.js";
62
- import "../chunk-3NOV7X4M.js";
63
- import "../chunk-YO22XLHI.js";
64
- import "../chunk-JIS4PA3R.js";
65
61
  import "../chunk-O7DR57RN.js";
62
+ import "../chunk-GEQ2QQEE.js";
63
+ import "../chunk-JIS4PA3R.js";
64
+ import "../chunk-3NOV7X4M.js";
66
65
  import "../chunk-WR6RQKF5.js";
66
+ import "../chunk-YO22XLHI.js";
67
67
  import "../chunk-4BHM6WVX.js";
68
68
  import "../chunk-U5TPV5X5.js";
69
69
  import "../chunk-WWED74SG.js";
70
70
  import "../chunk-2DYA3X77.js";
71
- import "../chunk-FAJ3I2UQ.js";
72
71
  import "../chunk-ZKAH3APE.js";
72
+ import "../chunk-FAJ3I2UQ.js";
73
73
  import "../chunk-EL672W25.js";
74
74
  export {
75
75
  addTenant,
@@ -7,8 +7,8 @@ import {
7
7
  } from "../chunk-TRKA7XYU.js";
8
8
  import "../chunk-WWED74SG.js";
9
9
  import "../chunk-2DYA3X77.js";
10
- import "../chunk-FAJ3I2UQ.js";
11
10
  import "../chunk-ZKAH3APE.js";
11
+ import "../chunk-FAJ3I2UQ.js";
12
12
  import "../chunk-EL672W25.js";
13
13
  export {
14
14
  actions,
@@ -6,8 +6,8 @@ import {
6
6
  SORTING_OPTIONS
7
7
  } from "../chunk-WWED74SG.js";
8
8
  import "../chunk-2DYA3X77.js";
9
- import "../chunk-FAJ3I2UQ.js";
10
9
  import "../chunk-ZKAH3APE.js";
10
+ import "../chunk-FAJ3I2UQ.js";
11
11
  import "../chunk-EL672W25.js";
12
12
 
13
13
  // src/releasesSlice/mocks.ts
@@ -16,8 +16,8 @@ import {
16
16
  import "../chunk-U5TPV5X5.js";
17
17
  import "../chunk-WWED74SG.js";
18
18
  import "../chunk-2DYA3X77.js";
19
- import "../chunk-FAJ3I2UQ.js";
20
19
  import "../chunk-ZKAH3APE.js";
20
+ import "../chunk-FAJ3I2UQ.js";
21
21
  import "../chunk-EL672W25.js";
22
22
  export {
23
23
  getDeltaJobById,
@@ -1678,6 +1678,7 @@ var actions_default = {
1678
1678
 
1679
1679
  // src/api/general-api.ts
1680
1680
  var import_axios = __toESM(require("axios"), 1);
1681
+ var import_universal_cookie2 = __toESM(require("universal-cookie"), 1);
1681
1682
 
1682
1683
  // src/auth.ts
1683
1684
  var import_universal_cookie = __toESM(require("universal-cookie"), 1);
@@ -1690,19 +1691,17 @@ var getSessionInfo = () => {
1690
1691
  sessionInfo = JSON.parse(window.localStorage.getItem("JWT") ?? "");
1691
1692
  } catch {
1692
1693
  }
1694
+ const jwtTokenFromCookie = cookies.get("JWT", { doNotParse: true }) ?? "";
1695
+ if (jwtTokenFromCookie) {
1696
+ setSessionInfo({ token: jwtTokenFromCookie });
1697
+ cookies.remove("JWT");
1698
+ cookies.remove("JWT", { path: "/" });
1699
+ return { token: jwtTokenFromCookie, expiresAt: void 0 };
1700
+ }
1693
1701
  if (sessionInfo.expiresAt && new Date(sessionInfo.expiresAt) < /* @__PURE__ */ new Date()) {
1694
1702
  cleanUp();
1695
1703
  return { ...emptySession };
1696
1704
  }
1697
- if (!sessionInfo.token) {
1698
- const jwtTokenFromCookie = cookies.get("JWT", { doNotParse: true }) ?? "";
1699
- if (jwtTokenFromCookie) {
1700
- setSessionInfo({ token: jwtTokenFromCookie });
1701
- sessionInfo.token = jwtTokenFromCookie;
1702
- cookies.remove("JWT");
1703
- cookies.remove("JWT", { path: "/" });
1704
- }
1705
- }
1706
1705
  sessionInfo.token = sessionInfo.token || "";
1707
1706
  tokenCache = sessionInfo.token;
1708
1707
  return sessionInfo;
@@ -1721,8 +1720,13 @@ var cleanUp = () => {
1721
1720
  };
1722
1721
 
1723
1722
  // src/api/general-api.ts
1723
+ var cookies2 = new import_universal_cookie2.default();
1724
1724
  var unauthorizedRedirect = (error) => {
1725
1725
  if (!(0, import_axios.isCancel)(error) && error.response?.status === 401 && getToken() && !window.location.pathname.endsWith("/subscription")) {
1726
+ if (cookies2.get("JWT", { doNotParse: true })) {
1727
+ window.location.reload();
1728
+ return Promise.reject(error);
1729
+ }
1726
1730
  cleanUp();
1727
1731
  window.location.replace("/ui/");
1728
1732
  }
@@ -1789,6 +1793,7 @@ var getIsPreview = (0, import_toolkit9.createSelector)([getFullVersionInformatio
1789
1793
  // src/commonSelectors.ts
1790
1794
  var import_helpers6 = require("@northern.tech/utils/helpers");
1791
1795
  var import_toolkit15 = require("@reduxjs/toolkit");
1796
+ var import_dayjs = __toESM(require("dayjs"), 1);
1792
1797
 
1793
1798
  // src/deploymentsSlice/selectors.ts
1794
1799
  var import_toolkit10 = require("@reduxjs/toolkit");
@@ -2114,6 +2119,7 @@ var emptyObject = {};
2114
2119
  var getRolesById = (state) => state.users.rolesById;
2115
2120
  var getTooltipsById = (state) => state.users.tooltips.byId;
2116
2121
  var getGlobalSettings = (state) => state.users.globalSettings;
2122
+ var getUserSettingsInitialized = (state) => state.users.userSettingsInitialized;
2117
2123
  var getCurrentUserId = (state) => state.users.currentUser;
2118
2124
  var getUsersById = (state) => state.users.byId;
2119
2125
  var getUsersList = (0, import_toolkit14.createSelector)([getUsersById], (usersById) => Object.values(usersById));
@@ -2151,6 +2157,7 @@ var getOfflineThresholdSettings = (0, import_toolkit14.createSelector)([getGloba
2151
2157
  intervalUnit: offlineThreshold?.intervalUnit || DEVICE_ONLINE_CUTOFF.intervalName
2152
2158
  }));
2153
2159
  var getRolesList = (0, import_toolkit14.createSelector)([getRolesById], (rolesById2) => Object.entries(rolesById2).map(([value, role]) => ({ value, ...role })));
2160
+ var getSecurityAlertDismissedTimestamp = (state) => state.users.userSettings.securityAlertDismissedTimestamp;
2154
2161
 
2155
2162
  // src/commonSelectors.ts
2156
2163
  var getIsEnterprise = (0, import_toolkit15.createSelector)(
@@ -2357,6 +2364,22 @@ var getRelevantRoles = (0, import_toolkit15.createSelector)([getOrganization, ge
2357
2364
  return accu;
2358
2365
  }, roles);
2359
2366
  });
2367
+ var getShowSecurityAlert = (0, import_toolkit15.createSelector)(
2368
+ [getCurrentUser, getHas2FA, getFeatures, getIsEnterprise, getUserSettingsInitialized, getSecurityAlertDismissedTimestamp],
2369
+ (currentUser, has2FA, features, isEnterprise, settingsInitialized, dismissedTimestamp) => {
2370
+ const isHosted = features?.isHosted;
2371
+ const canHave2FA = isEnterprise || isHosted;
2372
+ if (!currentUser || !settingsInitialized || has2FA || !canHave2FA) {
2373
+ return false;
2374
+ }
2375
+ if (dismissedTimestamp === null) {
2376
+ return true;
2377
+ }
2378
+ const today = (0, import_dayjs.default)();
2379
+ const dismissedMonthAgo = today.diff(dismissedTimestamp, "months");
2380
+ return dismissedMonthAgo > 0;
2381
+ }
2382
+ );
2360
2383
 
2361
2384
  // src/store.ts
2362
2385
  var import_react_redux = require("react-redux");