@northern.tech/store 0.11.0 → 0.13.0

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 (200) hide show
  1. package/dist/actions.cjs +22 -17
  2. package/dist/actions.cjs.map +1 -1
  3. package/dist/actions.d.cts +7 -22
  4. package/dist/actions.d.ts +7 -22
  5. package/dist/actions.js +9 -9
  6. package/dist/api/general-api.js +1 -1
  7. package/dist/api/users-api.js +1 -1
  8. package/dist/appSlice/index.cjs.map +1 -1
  9. package/dist/appSlice/index.d.cts +1 -1
  10. package/dist/appSlice/index.d.ts +1 -1
  11. package/dist/appSlice/index.js +2 -2
  12. package/dist/appSlice/mocks.cjs.map +1 -1
  13. package/dist/appSlice/mocks.js +2 -2
  14. package/dist/appSlice/selectors.d.cts +34 -528
  15. package/dist/appSlice/selectors.d.ts +34 -528
  16. package/dist/appSlice/thunks.cjs +49 -42
  17. package/dist/appSlice/thunks.cjs.map +1 -1
  18. package/dist/appSlice/thunks.d.cts +5 -3
  19. package/dist/appSlice/thunks.d.ts +5 -3
  20. package/dist/appSlice/thunks.js +18 -18
  21. package/dist/auth.js +1 -1
  22. package/dist/{chunk-QOFVCPRW.js → chunk-5PUF4LA5.js} +1 -1
  23. package/dist/chunk-5PUF4LA5.js.map +1 -0
  24. package/dist/{chunk-X3NF4KNC.js → chunk-6KAV62BW.js} +6 -6
  25. package/dist/{chunk-OFGCC3GM.js → chunk-7MTM3BDT.js} +1 -1
  26. package/dist/chunk-7MTM3BDT.js.map +1 -0
  27. package/dist/{chunk-4FNSLYK5.js → chunk-AR4FTKSL.js} +14 -14
  28. package/dist/{chunk-6KNRR7A5.js → chunk-BZAXFAGT.js} +4 -4
  29. package/dist/{chunk-ZNAJKEP2.js → chunk-CQXDAXQF.js} +1 -1
  30. package/dist/chunk-CQXDAXQF.js.map +1 -0
  31. package/dist/{chunk-I3H5EFZK.js → chunk-EOZ665GA.js} +15 -15
  32. package/dist/{chunk-NVNO3I3K.js → chunk-ETZVJXPD.js} +36 -41
  33. package/dist/chunk-ETZVJXPD.js.map +1 -0
  34. package/dist/{chunk-RFF52JYU.js → chunk-KJ4BPXMB.js} +3 -2
  35. package/dist/chunk-KJ4BPXMB.js.map +1 -0
  36. package/dist/{chunk-C2LGE3P6.js → chunk-OLKM53RL.js} +1 -1
  37. package/dist/chunk-OLKM53RL.js.map +1 -0
  38. package/dist/{chunk-HLX5L3IM.js → chunk-PVCHKW35.js} +1 -1
  39. package/dist/chunk-PVCHKW35.js.map +1 -0
  40. package/dist/{chunk-REZWSU22.js → chunk-VODRLEDP.js} +21 -17
  41. package/dist/chunk-VODRLEDP.js.map +1 -0
  42. package/dist/{chunk-MH5WPYQI.js → chunk-X7NEALMI.js} +16 -9
  43. package/dist/chunk-X7NEALMI.js.map +1 -0
  44. package/dist/{chunk-CUU3N6KW.js → chunk-YFAIYNQG.js} +16 -16
  45. package/dist/commonConstants.js +1 -1
  46. package/dist/commonSelectors.cjs +15 -8
  47. package/dist/commonSelectors.cjs.map +1 -1
  48. package/dist/commonSelectors.d.cts +178 -3523
  49. package/dist/commonSelectors.d.ts +178 -3523
  50. package/dist/commonSelectors.js +6 -6
  51. package/dist/constants.js +1 -1
  52. package/dist/deploymentsSlice/constants.js +1 -1
  53. package/dist/deploymentsSlice/index.cjs.map +1 -1
  54. package/dist/deploymentsSlice/index.d.cts +1 -1
  55. package/dist/deploymentsSlice/index.d.ts +1 -1
  56. package/dist/deploymentsSlice/index.js +2 -2
  57. package/dist/deploymentsSlice/mocks.cjs.map +1 -1
  58. package/dist/deploymentsSlice/mocks.js +2 -2
  59. package/dist/deploymentsSlice/selectors.d.cts +16 -138
  60. package/dist/deploymentsSlice/selectors.d.ts +16 -138
  61. package/dist/deploymentsSlice/selectors.js +1 -1
  62. package/dist/deploymentsSlice/thunks.cjs +49 -42
  63. package/dist/deploymentsSlice/thunks.cjs.map +1 -1
  64. package/dist/deploymentsSlice/thunks.d.cts +4 -2
  65. package/dist/deploymentsSlice/thunks.d.ts +4 -2
  66. package/dist/deploymentsSlice/thunks.js +18 -18
  67. package/dist/devicesSlice/constants.js +1 -1
  68. package/dist/devicesSlice/index.cjs +20 -16
  69. package/dist/devicesSlice/index.cjs.map +1 -1
  70. package/dist/devicesSlice/index.d.cts +11 -20
  71. package/dist/devicesSlice/index.d.ts +11 -20
  72. package/dist/devicesSlice/index.js +2 -2
  73. package/dist/devicesSlice/mocks.cjs +24 -22
  74. package/dist/devicesSlice/mocks.cjs.map +1 -1
  75. package/dist/devicesSlice/mocks.d.cts +20 -12
  76. package/dist/devicesSlice/mocks.d.ts +20 -12
  77. package/dist/devicesSlice/mocks.js +6 -8
  78. package/dist/devicesSlice/mocks.js.map +1 -1
  79. package/dist/devicesSlice/selectors.cjs +15 -8
  80. package/dist/devicesSlice/selectors.cjs.map +1 -1
  81. package/dist/devicesSlice/selectors.d.cts +207 -1730
  82. package/dist/devicesSlice/selectors.d.ts +207 -1730
  83. package/dist/devicesSlice/selectors.js +2 -2
  84. package/dist/devicesSlice/thunks.cjs +49 -44
  85. package/dist/devicesSlice/thunks.cjs.map +1 -1
  86. package/dist/devicesSlice/thunks.d.cts +12 -46
  87. package/dist/devicesSlice/thunks.d.ts +12 -46
  88. package/dist/devicesSlice/thunks.js +18 -20
  89. package/dist/liststatehook.js +1 -1
  90. package/dist/locationutils.js +1 -1
  91. package/dist/monitorSlice/index.cjs.map +1 -1
  92. package/dist/monitorSlice/index.d.cts +1 -1
  93. package/dist/monitorSlice/index.d.ts +1 -1
  94. package/dist/monitorSlice/index.js +2 -2
  95. package/dist/monitorSlice/mocks.cjs.map +1 -1
  96. package/dist/monitorSlice/mocks.js +2 -2
  97. package/dist/monitorSlice/thunks.cjs +37 -25
  98. package/dist/monitorSlice/thunks.cjs.map +1 -1
  99. package/dist/monitorSlice/thunks.d.cts +3 -2
  100. package/dist/monitorSlice/thunks.d.ts +3 -2
  101. package/dist/monitorSlice/thunks.js +16 -16
  102. package/dist/onboardingSlice/index.cjs.map +1 -1
  103. package/dist/onboardingSlice/index.d.cts +1 -1
  104. package/dist/onboardingSlice/index.d.ts +1 -1
  105. package/dist/onboardingSlice/index.js +1 -1
  106. package/dist/onboardingSlice/mocks.cjs.map +1 -1
  107. package/dist/onboardingSlice/mocks.js +1 -1
  108. package/dist/onboardingSlice/thunks.cjs +49 -42
  109. package/dist/onboardingSlice/thunks.cjs.map +1 -1
  110. package/dist/onboardingSlice/thunks.d.cts +7 -15
  111. package/dist/onboardingSlice/thunks.d.ts +7 -15
  112. package/dist/onboardingSlice/thunks.js +18 -18
  113. package/dist/organizationSlice/constants.js +1 -1
  114. package/dist/organizationSlice/index.cjs.map +1 -1
  115. package/dist/organizationSlice/index.d.cts +41 -31
  116. package/dist/organizationSlice/index.d.ts +41 -31
  117. package/dist/organizationSlice/index.js +2 -2
  118. package/dist/organizationSlice/mocks.cjs.map +1 -1
  119. package/dist/organizationSlice/mocks.js +2 -2
  120. package/dist/organizationSlice/selectors.d.cts +42 -659
  121. package/dist/organizationSlice/selectors.d.ts +42 -659
  122. package/dist/organizationSlice/selectors.js +1 -1
  123. package/dist/organizationSlice/thunks.cjs +51 -44
  124. package/dist/organizationSlice/thunks.cjs.map +1 -1
  125. package/dist/organizationSlice/thunks.d.cts +4 -1
  126. package/dist/organizationSlice/thunks.d.ts +4 -1
  127. package/dist/organizationSlice/thunks.js +18 -18
  128. package/dist/organizationSlice/types.cjs.map +1 -1
  129. package/dist/organizationSlice/types.d.cts +2 -12
  130. package/dist/organizationSlice/types.d.ts +2 -12
  131. package/dist/releasesSlice/index.js +1 -1
  132. package/dist/releasesSlice/mocks.d.cts +7 -1
  133. package/dist/releasesSlice/mocks.d.ts +7 -1
  134. package/dist/releasesSlice/mocks.js +1 -1
  135. package/dist/releasesSlice/selectors.d.cts +155 -930
  136. package/dist/releasesSlice/selectors.d.ts +155 -930
  137. package/dist/releasesSlice/selectors.js +1 -1
  138. package/dist/releasesSlice/thunks.cjs +37 -25
  139. package/dist/releasesSlice/thunks.cjs.map +1 -1
  140. package/dist/releasesSlice/thunks.d.cts +4 -2
  141. package/dist/releasesSlice/thunks.d.ts +4 -2
  142. package/dist/releasesSlice/thunks.js +16 -16
  143. package/dist/selectors.cjs +15 -8
  144. package/dist/selectors.cjs.map +1 -1
  145. package/dist/selectors.d.cts +6 -3
  146. package/dist/selectors.d.ts +6 -3
  147. package/dist/selectors.js +33 -33
  148. package/dist/sockethook.cjs +1 -1
  149. package/dist/sockethook.cjs.map +1 -1
  150. package/dist/sockethook.js +2 -2
  151. package/dist/sockethook.js.map +1 -1
  152. package/dist/store.cjs +22 -17
  153. package/dist/store.cjs.map +1 -1
  154. package/dist/store.d.cts +40 -658
  155. package/dist/store.d.ts +40 -658
  156. package/dist/store.js +10 -10
  157. package/dist/storehooks.cjs +52 -45
  158. package/dist/storehooks.cjs.map +1 -1
  159. package/dist/storehooks.js +19 -19
  160. package/dist/thunks.cjs +49 -44
  161. package/dist/thunks.cjs.map +1 -1
  162. package/dist/thunks.d.cts +7 -5
  163. package/dist/thunks.d.ts +7 -5
  164. package/dist/thunks.js +18 -20
  165. package/dist/useDeploymentDevice.cjs +49 -42
  166. package/dist/useDeploymentDevice.cjs.map +1 -1
  167. package/dist/useDeploymentDevice.js +19 -19
  168. package/dist/usersSlice/constants.js +1 -1
  169. package/dist/usersSlice/index.cjs +2 -1
  170. package/dist/usersSlice/index.cjs.map +1 -1
  171. package/dist/usersSlice/index.d.cts +47 -46
  172. package/dist/usersSlice/index.d.ts +47 -46
  173. package/dist/usersSlice/index.js +2 -2
  174. package/dist/usersSlice/mocks.cjs +2 -1
  175. package/dist/usersSlice/mocks.cjs.map +1 -1
  176. package/dist/usersSlice/mocks.js +2 -2
  177. package/dist/usersSlice/selectors.d.cts +75 -1436
  178. package/dist/usersSlice/selectors.d.ts +75 -1436
  179. package/dist/usersSlice/selectors.js +1 -1
  180. package/dist/usersSlice/thunks.cjs +49 -42
  181. package/dist/usersSlice/thunks.cjs.map +1 -1
  182. package/dist/usersSlice/thunks.d.cts +3 -1
  183. package/dist/usersSlice/thunks.d.ts +3 -1
  184. package/dist/usersSlice/thunks.js +18 -18
  185. package/dist/utils.js +1 -1
  186. package/package.json +4 -4
  187. package/dist/chunk-C2LGE3P6.js.map +0 -1
  188. package/dist/chunk-HLX5L3IM.js.map +0 -1
  189. package/dist/chunk-MH5WPYQI.js.map +0 -1
  190. package/dist/chunk-NVNO3I3K.js.map +0 -1
  191. package/dist/chunk-OFGCC3GM.js.map +0 -1
  192. package/dist/chunk-QOFVCPRW.js.map +0 -1
  193. package/dist/chunk-REZWSU22.js.map +0 -1
  194. package/dist/chunk-RFF52JYU.js.map +0 -1
  195. package/dist/chunk-ZNAJKEP2.js.map +0 -1
  196. /package/dist/{chunk-X3NF4KNC.js.map → chunk-6KAV62BW.js.map} +0 -0
  197. /package/dist/{chunk-4FNSLYK5.js.map → chunk-AR4FTKSL.js.map} +0 -0
  198. /package/dist/{chunk-6KNRR7A5.js.map → chunk-BZAXFAGT.js.map} +0 -0
  199. /package/dist/{chunk-I3H5EFZK.js.map → chunk-EOZ665GA.js.map} +0 -0
  200. /package/dist/{chunk-CUU3N6KW.js.map → chunk-YFAIYNQG.js.map} +0 -0
@@ -22,8 +22,8 @@ import {
22
22
  import "../chunk-GX2TWNLC.js";
23
23
  import "../chunk-WWED74SG.js";
24
24
  import "../chunk-2DYA3X77.js";
25
- import "../chunk-ZKAH3APE.js";
26
25
  import "../chunk-FAJ3I2UQ.js";
26
+ import "../chunk-ZKAH3APE.js";
27
27
  import "../chunk-OWWCFJZ5.js";
28
28
  export {
29
29
  getCurrentSession,
@@ -71,6 +71,7 @@ __export(thunks_exports, {
71
71
  module.exports = __toCommonJS(thunks_exports);
72
72
  var import_helpers10 = require("@northern.tech/utils/helpers");
73
73
  var import_retrytimer = require("@northern.tech/utils/retrytimer");
74
+ var import_dayjs = __toESM(require("dayjs"), 1);
74
75
  var import_md5 = __toESM(require("md5"), 1);
75
76
  var import_universal_cookie3 = __toESM(require("universal-cookie"), 1);
76
77
 
@@ -825,7 +826,8 @@ var initialState = {
825
826
  },
826
827
  userSettings: {
827
828
  columnSelection: [],
828
- onboarding: {}
829
+ onboarding: {},
830
+ firstLoginTimestamp: null
829
831
  },
830
832
  userSettingsInitialized: false
831
833
  };
@@ -1199,12 +1201,10 @@ var initialState4 = {
1199
1201
  // }
1200
1202
  },
1201
1203
  byStatus: {
1202
- [import_constants5.DEVICE_STATES.accepted]: { deviceIds: [], total: 0 },
1203
- active: { deviceIds: [], total: 0 },
1204
- inactive: { deviceIds: [], total: 0 },
1205
- [import_constants5.DEVICE_STATES.pending]: { deviceIds: [], total: 0 },
1206
- [import_constants5.DEVICE_STATES.preauth]: { deviceIds: [], total: 0 },
1207
- [import_constants5.DEVICE_STATES.rejected]: { deviceIds: [], total: 0 }
1204
+ [import_constants5.DEVICE_STATES.accepted]: { deviceIds: [], counts: { standard: 0, micro: 0, system: 0, total: 0 } },
1205
+ [import_constants5.DEVICE_STATES.pending]: { deviceIds: [], counts: { standard: 0, micro: 0, system: 0, total: 0 } },
1206
+ [import_constants5.DEVICE_STATES.preauth]: { deviceIds: [], counts: { standard: 0, micro: 0, system: 0, total: 0 } },
1207
+ [import_constants5.DEVICE_STATES.rejected]: { deviceIds: [], counts: { standard: 0, micro: 0, system: 0, total: 0 } }
1208
1208
  },
1209
1209
  deviceList: {
1210
1210
  deviceIds: [],
@@ -1334,21 +1334,19 @@ var devicesSlice = (0, import_toolkit4.createSlice)({
1334
1334
  }
1335
1335
  state.filters = action.payload.filter((filter) => filter.key && filter.operator && filter.scope && typeof filter.value !== "undefined");
1336
1336
  },
1337
- setInactiveDevices: (state, action) => {
1338
- const { activeDeviceTotal, inactiveDeviceTotal } = action.payload;
1339
- state.byStatus.active.total = activeDeviceTotal;
1340
- state.byStatus.inactive.total = inactiveDeviceTotal;
1341
- },
1342
1337
  setDeviceReports: (state, action) => {
1343
1338
  state.reports = action.payload;
1344
1339
  },
1345
1340
  setDevicesByStatus: (state, action) => {
1346
- const { forceUpdate, status, total, deviceIds } = action.payload;
1347
- state.byStatus[status] = total || forceUpdate ? { deviceIds, total } : state.byStatus[status];
1341
+ const { status, total, deviceIds } = action.payload;
1342
+ if (total) {
1343
+ state.byStatus[status].deviceIds = deviceIds;
1344
+ state.byStatus[status].counts.total = total;
1345
+ }
1348
1346
  },
1349
1347
  setDevicesCountByStatus: (state, action) => {
1350
- const { count, status } = action.payload;
1351
- state.byStatus[status].total = count;
1348
+ const { countsPerTier, status } = action.payload;
1349
+ state.byStatus[status].counts = { ...countsPerTier, total: Object.values(countsPerTier).reduce((accu, tieredCount) => accu += tieredCount, 0) };
1352
1350
  },
1353
1351
  setDeviceLimits: (state, action) => {
1354
1352
  state.limits = action.payload;
@@ -1365,7 +1363,15 @@ var devicesSlice = (0, import_toolkit4.createSlice)({
1365
1363
  const hasMultipleAuthSets = authId && device.auth_sets ? device.auth_sets.filter((authset) => authset.id !== authId).length > 0 : false;
1366
1364
  if (!hasMultipleAuthSets && Object.values(import_constants5.DEVICE_STATES).includes(device.status)) {
1367
1365
  const deviceIds = state.byStatus[device.status].deviceIds.filter((id) => id !== deviceId);
1368
- state.byStatus[device.status] = { deviceIds, total: Math.max(0, state.byStatus[device.status].total - 1) };
1366
+ const deviceTier = device.attributes.tier || "standard";
1367
+ state.byStatus[device.status] = {
1368
+ deviceIds,
1369
+ counts: {
1370
+ ...state.byStatus[device.status].counts,
1371
+ [deviceTier]: Math.max(0, state.byStatus[device.status].counts[deviceTier] - 1),
1372
+ total: Math.max(0, state.byStatus[device.status].counts.total - 1)
1373
+ }
1374
+ };
1369
1375
  }
1370
1376
  }
1371
1377
  }
@@ -1913,15 +1919,22 @@ var getDeviceIdentityAttributes = (0, import_toolkit11.createSelector)(
1913
1919
  );
1914
1920
  var getDeviceCountsByStatus = (0, import_toolkit11.createSelector)(
1915
1921
  [getDevicesByStatus],
1916
- (byStatus) => Object.values(import_constants5.DEVICE_STATES).reduce((accu, state) => {
1917
- accu[state] = byStatus[state].total || 0;
1918
- return accu;
1919
- }, {})
1922
+ (byStatus) => Object.values(import_constants5.DEVICE_STATES).reduce(
1923
+ (accu, deviceState) => {
1924
+ const { counts } = byStatus[deviceState];
1925
+ const { total, ...tieredCounts } = counts;
1926
+ const count = Object.values(tieredCounts).reduce((accu2, countPerTier) => accu2 + countPerTier, 0);
1927
+ accu[deviceState] = count;
1928
+ accu.total = accu.total + count;
1929
+ return accu;
1930
+ },
1931
+ { total: 0 }
1932
+ )
1920
1933
  );
1921
1934
  var getDeviceById = (0, import_toolkit11.createSelector)([getDevicesById, (_, deviceId) => deviceId], (devicesById, deviceId = "") => devicesById[deviceId] ?? {});
1922
1935
  var getSelectedGroupInfo = (0, import_toolkit11.createSelector)(
1923
- [getAcceptedDevices, getGroupsById, getSelectedGroup],
1924
- ({ total: acceptedDeviceTotal }, groupsById, selectedGroup) => {
1936
+ [getDeviceCountsByStatus, getGroupsById, getSelectedGroup],
1937
+ ({ accepted: acceptedDeviceTotal }, groupsById, selectedGroup) => {
1925
1938
  let groupCount = acceptedDeviceTotal;
1926
1939
  let groupFilters = [];
1927
1940
  if (selectedGroup && groupsById[selectedGroup]) {
@@ -1937,8 +1950,8 @@ var getCombinedLimit = (0, import_toolkit11.createSelector)(
1937
1950
  // limit might be -1 for unlimited devices
1938
1951
  );
1939
1952
  var getLimitMaxed = (0, import_toolkit11.createSelector)(
1940
- [getAcceptedDevices, getCombinedLimit],
1941
- ({ total: acceptedDevices = 0 }, combinedLimit) => !!combinedLimit && combinedLimit <= acceptedDevices
1953
+ [getDeviceCountsByStatus, getCombinedLimit],
1954
+ ({ accepted: acceptedDevices }, combinedLimit) => !!combinedLimit && combinedLimit <= acceptedDevices
1942
1955
  );
1943
1956
  var getGroupsByIdWithoutUngrouped = (0, import_toolkit11.createSelector)([getGroupsById], ({ [UNGROUPED_GROUP.id]: ungrouped, ...groups }) => groups);
1944
1957
  var getGroupData = (0, import_toolkit11.createSelector)([getGroupsByIdWithoutUngrouped], (groups) => {
@@ -3367,21 +3380,13 @@ var getDeviceInfo = createAppAsyncThunk(`${sliceName4}/getDeviceInfo`, (deviceId
3367
3380
  }
3368
3381
  return Promise.all(tasks);
3369
3382
  });
3370
- var getDeviceCount = createAppAsyncThunk(
3371
- `${sliceName4}/getDeviceCount`,
3372
- (status, { dispatch, getState }) => general_api_default.post(getSearchEndpoint(getState()), {
3373
- page: 1,
3374
- per_page: 1,
3375
- filters: mapFiltersToTerms([{ key: "status", value: status, operator: import_constants5.DEVICE_FILTERING_OPTIONS.$eq.key, scope: "identity" }]),
3376
- attributes: defaultAttributes
3377
- }).then((response) => {
3378
- const count = Number(response.headers[import_constants5.headerNames.total]);
3379
- return dispatch(actions4.setDevicesCountByStatus({ count, status }));
3380
- })
3381
- );
3382
3383
  var getAllDeviceCounts = createAppAsyncThunk(
3383
3384
  `${sliceName4}/getAllDeviceCounts`,
3384
- (_, { dispatch }) => Promise.all([import_constants5.DEVICE_STATES.accepted, import_constants5.DEVICE_STATES.pending].map((status) => dispatch(getDeviceCount(status))))
3385
+ (_, { dispatch }) => general_api_default.get(`${import_constants5.inventoryApiUrlV2}/statistics`).then(({ data }) => {
3386
+ const { devices_by_status } = data;
3387
+ Object.entries(devices_by_status).map(([status, countsPerTier]) => dispatch(actions4.setDevicesCountByStatus({ countsPerTier, status })));
3388
+ return;
3389
+ })
3385
3390
  );
3386
3391
  var getDeviceLimits2 = createAppAsyncThunk(
3387
3392
  `${sliceName4}/getDeviceLimit`,
@@ -3453,7 +3458,7 @@ var getDevicesByStatus2 = createAppAsyncThunk(
3453
3458
  const state2 = getState();
3454
3459
  const deviceAccu = reduceReceivedDevices(response.data, [], state2, status);
3455
3460
  let total = !applicableFilters.length ? Number(response.headers[import_constants5.headerNames.total]) : 0;
3456
- if (status && state2.devices.byStatus[status].total === deviceAccu.ids.length) {
3461
+ if (status && state2.devices.byStatus[status].counts.total === deviceAccu.ids.length) {
3457
3462
  total = deviceAccu.ids.length;
3458
3463
  }
3459
3464
  const tasks = [dispatch(actions4.receivedDevices(deviceAccu.devicesById))];
@@ -3560,8 +3565,8 @@ var updateReportData = createAppAsyncThunk(`${sliceName4}/updateReportData`, (re
3560
3565
  const { group = "" } = report;
3561
3566
  const devicesById = getDevicesById(getState());
3562
3567
  const groups = getGroupsById(getState());
3563
- const acceptedDevices = getAcceptedDevices(getState());
3564
- const totalDeviceCount = groups[group] ? groups[group].total : acceptedDevices.total;
3568
+ const { accepted: acceptedDevicesCount } = getDeviceCountsByStatus(getState());
3569
+ const totalDeviceCount = groups[group] ? groups[group].total : acceptedDevicesCount;
3565
3570
  const reportsData = getDeviceReports(getState());
3566
3571
  const newReports = [...reportsData];
3567
3572
  newReports[reportIndex] = initializeDistributionData(report, groups, devicesById, totalDeviceCount);
@@ -3579,6 +3584,7 @@ var getReportDataWithoutBackendSupport = createAppAsyncThunk(
3579
3584
  const effectiveAttribute = software ? software : attribute;
3580
3585
  const devicesById = getDevicesById(getState());
3581
3586
  const acceptedDevices = getAcceptedDevices(getState());
3587
+ const { accepted: acceptedDevicesCount } = getDeviceCountsByStatus(getState());
3582
3588
  const groups = getGroupsById(getState());
3583
3589
  const { deviceIds = [], filters = [], total = 0 } = groups[group] || {};
3584
3590
  let groupDevicesRequest = Promise.resolve({
@@ -3586,7 +3592,7 @@ var getReportDataWithoutBackendSupport = createAppAsyncThunk(
3586
3592
  });
3587
3593
  if (group && (!(deviceIds.length && total) || deviceIds.length !== total || !deviceIds.every((id) => !!devicesById[id]))) {
3588
3594
  groupDevicesRequest = filters.length ? dispatch(getAllDynamicGroupDevices({ group, attribute: effectiveAttribute })).unwrap() : dispatch(getAllGroupDevices({ group, attribute: effectiveAttribute })).unwrap();
3589
- } else if (!group && (acceptedDevices.deviceIds.length !== acceptedDevices.total || !acceptedDevices.deviceIds.every((id) => !!devicesById[id]))) {
3595
+ } else if (!group && (acceptedDevices.deviceIds.length !== acceptedDevicesCount || !acceptedDevices.deviceIds.every((id) => !!devicesById[id]))) {
3590
3596
  groupDevicesRequest = dispatch(getAllDevicesByStatus({ status: import_constants5.DEVICE_STATES.accepted, attribute: effectiveAttribute })).unwrap();
3591
3597
  }
3592
3598
  return groupDevicesRequest.then(() => dispatch(updateReportData(reportIndex)));
@@ -4505,6 +4511,7 @@ var saveUserSettings = createAppAsyncThunk(
4505
4511
  const updatedSettings = {
4506
4512
  ...userSettings,
4507
4513
  ...settings,
4514
+ firstLoginTimestamp: userSettings.firstLoginTimestamp ?? (0, import_dayjs.default)().format(),
4508
4515
  onboarding: {
4509
4516
  ...onboardingState,
4510
4517
  ...settings.onboarding