@northern.tech/store 0.17.0 → 0.19.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 (68) hide show
  1. package/dist/actions.js +4 -4
  2. package/dist/appSlice/thunks.cjs +21 -2
  3. package/dist/appSlice/thunks.cjs.map +1 -1
  4. package/dist/appSlice/thunks.js +10 -10
  5. package/dist/{chunk-QHGAJE7K.js → chunk-GAHFKM3N.js} +7 -7
  6. package/dist/{chunk-76GD35G3.js → chunk-QFYSFHAF.js} +19 -19
  7. package/dist/{chunk-GL634FKF.js → chunk-RJRZXDVT.js} +8 -8
  8. package/dist/{chunk-E2UO6BJ3.js → chunk-RVAERI6U.js} +9 -9
  9. package/dist/{chunk-JDSAICR3.js → chunk-TJBX7YHM.js} +29 -8
  10. package/dist/{chunk-JDSAICR3.js.map → chunk-TJBX7YHM.js.map} +1 -1
  11. package/dist/{chunk-QXS7I6BE.js → chunk-XC7DABLM.js} +7 -7
  12. package/dist/commonSelectors.cjs +31 -0
  13. package/dist/commonSelectors.cjs.map +1 -1
  14. package/dist/commonSelectors.d.cts +147 -1
  15. package/dist/commonSelectors.d.ts +147 -1
  16. package/dist/commonSelectors.js +4 -2
  17. package/dist/deploymentsSlice/thunks.cjs +21 -2
  18. package/dist/deploymentsSlice/thunks.cjs.map +1 -1
  19. package/dist/deploymentsSlice/thunks.js +10 -10
  20. package/dist/devicesSlice/thunks.cjs +21 -2
  21. package/dist/devicesSlice/thunks.cjs.map +1 -1
  22. package/dist/devicesSlice/thunks.js +10 -10
  23. package/dist/liststatehook.cjs +3 -1
  24. package/dist/liststatehook.cjs.map +1 -1
  25. package/dist/liststatehook.js +4 -2
  26. package/dist/liststatehook.js.map +1 -1
  27. package/dist/monitorSlice/thunks.cjs +19 -0
  28. package/dist/monitorSlice/thunks.cjs.map +1 -1
  29. package/dist/monitorSlice/thunks.js +8 -8
  30. package/dist/onboardingSlice/thunks.cjs +21 -2
  31. package/dist/onboardingSlice/thunks.cjs.map +1 -1
  32. package/dist/onboardingSlice/thunks.js +10 -10
  33. package/dist/organizationSlice/thunks.cjs +23 -4
  34. package/dist/organizationSlice/thunks.cjs.map +1 -1
  35. package/dist/organizationSlice/thunks.js +10 -10
  36. package/dist/releasesSlice/mocks.cjs +1 -1
  37. package/dist/releasesSlice/mocks.cjs.map +1 -1
  38. package/dist/releasesSlice/mocks.d.cts +3 -1
  39. package/dist/releasesSlice/mocks.d.ts +3 -1
  40. package/dist/releasesSlice/mocks.js +1 -1
  41. package/dist/releasesSlice/mocks.js.map +1 -1
  42. package/dist/releasesSlice/thunks.cjs +19 -0
  43. package/dist/releasesSlice/thunks.cjs.map +1 -1
  44. package/dist/releasesSlice/thunks.js +8 -8
  45. package/dist/selectors.cjs +29 -0
  46. package/dist/selectors.cjs.map +1 -1
  47. package/dist/selectors.d.cts +1 -1
  48. package/dist/selectors.d.ts +1 -1
  49. package/dist/selectors.js +13 -11
  50. package/dist/store.js +5 -5
  51. package/dist/storehooks.cjs +26 -7
  52. package/dist/storehooks.cjs.map +1 -1
  53. package/dist/storehooks.js +11 -11
  54. package/dist/thunks.cjs +23 -4
  55. package/dist/thunks.cjs.map +1 -1
  56. package/dist/thunks.js +11 -11
  57. package/dist/useDeploymentDevice.cjs +21 -2
  58. package/dist/useDeploymentDevice.cjs.map +1 -1
  59. package/dist/useDeploymentDevice.js +12 -12
  60. package/dist/usersSlice/thunks.cjs +21 -2
  61. package/dist/usersSlice/thunks.cjs.map +1 -1
  62. package/dist/usersSlice/thunks.js +10 -10
  63. package/package.json +1 -1
  64. /package/dist/{chunk-QHGAJE7K.js.map → chunk-GAHFKM3N.js.map} +0 -0
  65. /package/dist/{chunk-76GD35G3.js.map → chunk-QFYSFHAF.js.map} +0 -0
  66. /package/dist/{chunk-GL634FKF.js.map → chunk-RJRZXDVT.js.map} +0 -0
  67. /package/dist/{chunk-E2UO6BJ3.js.map → chunk-RVAERI6U.js.map} +0 -0
  68. /package/dist/{chunk-QXS7I6BE.js.map → chunk-XC7DABLM.js.map} +0 -0
@@ -1613,5 +1613,151 @@ declare const getRelevantRoles: ((state: {
1613
1613
  memoize: typeof reselect.weakMapMemoize;
1614
1614
  argsMemoize: typeof reselect.weakMapMemoize;
1615
1615
  };
1616
+ declare const getShowSecurityAlert: ((state: {
1617
+ app: AppSliceType;
1618
+ devices: DeviceSliceType;
1619
+ deployments: DeploymentsSliceType;
1620
+ monitor: MonitorSliceType;
1621
+ onboarding: OnboardingSliceType;
1622
+ organization: OrganizationSliceType;
1623
+ releases: ReleaseSliceType;
1624
+ users: UserSliceType;
1625
+ }) => boolean) & {
1626
+ clearCache: () => void;
1627
+ resultsCount: () => number;
1628
+ resetResultsCount: () => void;
1629
+ } & {
1630
+ resultFunc: (resultFuncArgs_0: User, resultFuncArgs_1: boolean, resultFuncArgs_2: Record<string, boolean>, resultFuncArgs_3: boolean, resultFuncArgs_4: boolean, resultFuncArgs_5: string | null) => boolean;
1631
+ memoizedResultFunc: ((resultFuncArgs_0: User, resultFuncArgs_1: boolean, resultFuncArgs_2: Record<string, boolean>, resultFuncArgs_3: boolean, resultFuncArgs_4: boolean, resultFuncArgs_5: string | null) => boolean) & {
1632
+ clearCache: () => void;
1633
+ resultsCount: () => number;
1634
+ resetResultsCount: () => void;
1635
+ };
1636
+ lastResult: () => boolean;
1637
+ dependencies: [((state: {
1638
+ app: AppSliceType;
1639
+ devices: DeviceSliceType;
1640
+ deployments: DeploymentsSliceType;
1641
+ monitor: MonitorSliceType;
1642
+ onboarding: OnboardingSliceType;
1643
+ organization: OrganizationSliceType;
1644
+ releases: ReleaseSliceType;
1645
+ users: UserSliceType;
1646
+ }) => User) & {
1647
+ clearCache: () => void;
1648
+ resultsCount: () => number;
1649
+ resetResultsCount: () => void;
1650
+ } & {
1651
+ resultFunc: (resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User;
1652
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User) & {
1653
+ clearCache: () => void;
1654
+ resultsCount: () => number;
1655
+ resetResultsCount: () => void;
1656
+ };
1657
+ lastResult: () => User;
1658
+ dependencies: [(state: RootState) => Record<string, User>, (state: RootState) => string | null];
1659
+ recomputations: () => number;
1660
+ resetRecomputations: () => void;
1661
+ dependencyRecomputations: () => number;
1662
+ resetDependencyRecomputations: () => void;
1663
+ } & {
1664
+ memoize: typeof reselect.weakMapMemoize;
1665
+ argsMemoize: typeof reselect.weakMapMemoize;
1666
+ }, ((state: {
1667
+ app: AppSliceType;
1668
+ devices: DeviceSliceType;
1669
+ deployments: DeploymentsSliceType;
1670
+ monitor: MonitorSliceType;
1671
+ onboarding: OnboardingSliceType;
1672
+ organization: OrganizationSliceType;
1673
+ releases: ReleaseSliceType;
1674
+ users: UserSliceType;
1675
+ }) => boolean) & {
1676
+ clearCache: () => void;
1677
+ resultsCount: () => number;
1678
+ resetResultsCount: () => void;
1679
+ } & {
1680
+ resultFunc: (resultFuncArgs_0: User) => boolean;
1681
+ memoizedResultFunc: ((resultFuncArgs_0: User) => boolean) & {
1682
+ clearCache: () => void;
1683
+ resultsCount: () => number;
1684
+ resetResultsCount: () => void;
1685
+ };
1686
+ lastResult: () => boolean;
1687
+ dependencies: [((state: {
1688
+ app: AppSliceType;
1689
+ devices: DeviceSliceType;
1690
+ deployments: DeploymentsSliceType;
1691
+ monitor: MonitorSliceType;
1692
+ onboarding: OnboardingSliceType;
1693
+ organization: OrganizationSliceType;
1694
+ releases: ReleaseSliceType;
1695
+ users: UserSliceType;
1696
+ }) => User) & {
1697
+ clearCache: () => void;
1698
+ resultsCount: () => number;
1699
+ resetResultsCount: () => void;
1700
+ } & {
1701
+ resultFunc: (resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User;
1702
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User) & {
1703
+ clearCache: () => void;
1704
+ resultsCount: () => number;
1705
+ resetResultsCount: () => void;
1706
+ };
1707
+ lastResult: () => User;
1708
+ dependencies: [(state: RootState) => Record<string, User>, (state: RootState) => string | null];
1709
+ recomputations: () => number;
1710
+ resetRecomputations: () => void;
1711
+ dependencyRecomputations: () => number;
1712
+ resetDependencyRecomputations: () => void;
1713
+ } & {
1714
+ memoize: typeof reselect.weakMapMemoize;
1715
+ argsMemoize: typeof reselect.weakMapMemoize;
1716
+ }];
1717
+ recomputations: () => number;
1718
+ resetRecomputations: () => void;
1719
+ dependencyRecomputations: () => number;
1720
+ resetDependencyRecomputations: () => void;
1721
+ } & {
1722
+ memoize: typeof reselect.weakMapMemoize;
1723
+ argsMemoize: typeof reselect.weakMapMemoize;
1724
+ }, (state: RootState) => Record<string, boolean>, ((state: {
1725
+ app: AppSliceType;
1726
+ devices: DeviceSliceType;
1727
+ deployments: DeploymentsSliceType;
1728
+ monitor: MonitorSliceType;
1729
+ onboarding: OnboardingSliceType;
1730
+ organization: OrganizationSliceType;
1731
+ releases: ReleaseSliceType;
1732
+ users: UserSliceType;
1733
+ }) => boolean) & {
1734
+ clearCache: () => void;
1735
+ resultsCount: () => number;
1736
+ resetResultsCount: () => void;
1737
+ } & {
1738
+ resultFunc: (resultFuncArgs_0: Partial<Organization>, resultFuncArgs_1: Record<string, boolean>) => boolean;
1739
+ memoizedResultFunc: ((resultFuncArgs_0: Partial<Organization>, resultFuncArgs_1: Record<string, boolean>) => boolean) & {
1740
+ clearCache: () => void;
1741
+ resultsCount: () => number;
1742
+ resetResultsCount: () => void;
1743
+ };
1744
+ lastResult: () => boolean;
1745
+ dependencies: [(state: RootState) => Partial<Organization>, (state: RootState) => Record<string, boolean>];
1746
+ recomputations: () => number;
1747
+ resetRecomputations: () => void;
1748
+ dependencyRecomputations: () => number;
1749
+ resetDependencyRecomputations: () => void;
1750
+ } & {
1751
+ memoize: typeof reselect.weakMapMemoize;
1752
+ argsMemoize: typeof reselect.weakMapMemoize;
1753
+ }, (state: RootState) => boolean, (state: RootState) => string | null];
1754
+ recomputations: () => number;
1755
+ resetRecomputations: () => void;
1756
+ dependencyRecomputations: () => number;
1757
+ resetDependencyRecomputations: () => void;
1758
+ } & {
1759
+ memoize: typeof reselect.weakMapMemoize;
1760
+ argsMemoize: typeof reselect.weakMapMemoize;
1761
+ };
1616
1762
 
1617
- export { getAttrsEndpoint, getAuditlogDevice, getAvailableIssueOptionsByType, getDemoDeviceAddress, getDeploymentRelease, getDeviceConfigDeployment, getDeviceReportsForUser, getFilterAttributes, getGroupNames, getIsEnterprise, getMappedDevicesList, getOnboardingState, getRelevantRoles, getSearchEndpoint, getSelectedDeploymentData, getTenantCapabilities, getUserCapabilities, getUserRoles };
1763
+ export { getAttrsEndpoint, getAuditlogDevice, getAvailableIssueOptionsByType, getDemoDeviceAddress, getDeploymentRelease, getDeviceConfigDeployment, getDeviceReportsForUser, getFilterAttributes, getGroupNames, getIsEnterprise, getMappedDevicesList, getOnboardingState, getRelevantRoles, getSearchEndpoint, getSelectedDeploymentData, getShowSecurityAlert, getTenantCapabilities, getUserCapabilities, getUserRoles };
@@ -1613,5 +1613,151 @@ declare const getRelevantRoles: ((state: {
1613
1613
  memoize: typeof reselect.weakMapMemoize;
1614
1614
  argsMemoize: typeof reselect.weakMapMemoize;
1615
1615
  };
1616
+ declare const getShowSecurityAlert: ((state: {
1617
+ app: AppSliceType;
1618
+ devices: DeviceSliceType;
1619
+ deployments: DeploymentsSliceType;
1620
+ monitor: MonitorSliceType;
1621
+ onboarding: OnboardingSliceType;
1622
+ organization: OrganizationSliceType;
1623
+ releases: ReleaseSliceType;
1624
+ users: UserSliceType;
1625
+ }) => boolean) & {
1626
+ clearCache: () => void;
1627
+ resultsCount: () => number;
1628
+ resetResultsCount: () => void;
1629
+ } & {
1630
+ resultFunc: (resultFuncArgs_0: User, resultFuncArgs_1: boolean, resultFuncArgs_2: Record<string, boolean>, resultFuncArgs_3: boolean, resultFuncArgs_4: boolean, resultFuncArgs_5: string | null) => boolean;
1631
+ memoizedResultFunc: ((resultFuncArgs_0: User, resultFuncArgs_1: boolean, resultFuncArgs_2: Record<string, boolean>, resultFuncArgs_3: boolean, resultFuncArgs_4: boolean, resultFuncArgs_5: string | null) => boolean) & {
1632
+ clearCache: () => void;
1633
+ resultsCount: () => number;
1634
+ resetResultsCount: () => void;
1635
+ };
1636
+ lastResult: () => boolean;
1637
+ dependencies: [((state: {
1638
+ app: AppSliceType;
1639
+ devices: DeviceSliceType;
1640
+ deployments: DeploymentsSliceType;
1641
+ monitor: MonitorSliceType;
1642
+ onboarding: OnboardingSliceType;
1643
+ organization: OrganizationSliceType;
1644
+ releases: ReleaseSliceType;
1645
+ users: UserSliceType;
1646
+ }) => User) & {
1647
+ clearCache: () => void;
1648
+ resultsCount: () => number;
1649
+ resetResultsCount: () => void;
1650
+ } & {
1651
+ resultFunc: (resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User;
1652
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User) & {
1653
+ clearCache: () => void;
1654
+ resultsCount: () => number;
1655
+ resetResultsCount: () => void;
1656
+ };
1657
+ lastResult: () => User;
1658
+ dependencies: [(state: RootState) => Record<string, User>, (state: RootState) => string | null];
1659
+ recomputations: () => number;
1660
+ resetRecomputations: () => void;
1661
+ dependencyRecomputations: () => number;
1662
+ resetDependencyRecomputations: () => void;
1663
+ } & {
1664
+ memoize: typeof reselect.weakMapMemoize;
1665
+ argsMemoize: typeof reselect.weakMapMemoize;
1666
+ }, ((state: {
1667
+ app: AppSliceType;
1668
+ devices: DeviceSliceType;
1669
+ deployments: DeploymentsSliceType;
1670
+ monitor: MonitorSliceType;
1671
+ onboarding: OnboardingSliceType;
1672
+ organization: OrganizationSliceType;
1673
+ releases: ReleaseSliceType;
1674
+ users: UserSliceType;
1675
+ }) => boolean) & {
1676
+ clearCache: () => void;
1677
+ resultsCount: () => number;
1678
+ resetResultsCount: () => void;
1679
+ } & {
1680
+ resultFunc: (resultFuncArgs_0: User) => boolean;
1681
+ memoizedResultFunc: ((resultFuncArgs_0: User) => boolean) & {
1682
+ clearCache: () => void;
1683
+ resultsCount: () => number;
1684
+ resetResultsCount: () => void;
1685
+ };
1686
+ lastResult: () => boolean;
1687
+ dependencies: [((state: {
1688
+ app: AppSliceType;
1689
+ devices: DeviceSliceType;
1690
+ deployments: DeploymentsSliceType;
1691
+ monitor: MonitorSliceType;
1692
+ onboarding: OnboardingSliceType;
1693
+ organization: OrganizationSliceType;
1694
+ releases: ReleaseSliceType;
1695
+ users: UserSliceType;
1696
+ }) => User) & {
1697
+ clearCache: () => void;
1698
+ resultsCount: () => number;
1699
+ resetResultsCount: () => void;
1700
+ } & {
1701
+ resultFunc: (resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User;
1702
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, User>, resultFuncArgs_1: string | null) => User) & {
1703
+ clearCache: () => void;
1704
+ resultsCount: () => number;
1705
+ resetResultsCount: () => void;
1706
+ };
1707
+ lastResult: () => User;
1708
+ dependencies: [(state: RootState) => Record<string, User>, (state: RootState) => string | null];
1709
+ recomputations: () => number;
1710
+ resetRecomputations: () => void;
1711
+ dependencyRecomputations: () => number;
1712
+ resetDependencyRecomputations: () => void;
1713
+ } & {
1714
+ memoize: typeof reselect.weakMapMemoize;
1715
+ argsMemoize: typeof reselect.weakMapMemoize;
1716
+ }];
1717
+ recomputations: () => number;
1718
+ resetRecomputations: () => void;
1719
+ dependencyRecomputations: () => number;
1720
+ resetDependencyRecomputations: () => void;
1721
+ } & {
1722
+ memoize: typeof reselect.weakMapMemoize;
1723
+ argsMemoize: typeof reselect.weakMapMemoize;
1724
+ }, (state: RootState) => Record<string, boolean>, ((state: {
1725
+ app: AppSliceType;
1726
+ devices: DeviceSliceType;
1727
+ deployments: DeploymentsSliceType;
1728
+ monitor: MonitorSliceType;
1729
+ onboarding: OnboardingSliceType;
1730
+ organization: OrganizationSliceType;
1731
+ releases: ReleaseSliceType;
1732
+ users: UserSliceType;
1733
+ }) => boolean) & {
1734
+ clearCache: () => void;
1735
+ resultsCount: () => number;
1736
+ resetResultsCount: () => void;
1737
+ } & {
1738
+ resultFunc: (resultFuncArgs_0: Partial<Organization>, resultFuncArgs_1: Record<string, boolean>) => boolean;
1739
+ memoizedResultFunc: ((resultFuncArgs_0: Partial<Organization>, resultFuncArgs_1: Record<string, boolean>) => boolean) & {
1740
+ clearCache: () => void;
1741
+ resultsCount: () => number;
1742
+ resetResultsCount: () => void;
1743
+ };
1744
+ lastResult: () => boolean;
1745
+ dependencies: [(state: RootState) => Partial<Organization>, (state: RootState) => Record<string, boolean>];
1746
+ recomputations: () => number;
1747
+ resetRecomputations: () => void;
1748
+ dependencyRecomputations: () => number;
1749
+ resetDependencyRecomputations: () => void;
1750
+ } & {
1751
+ memoize: typeof reselect.weakMapMemoize;
1752
+ argsMemoize: typeof reselect.weakMapMemoize;
1753
+ }, (state: RootState) => boolean, (state: RootState) => string | null];
1754
+ recomputations: () => number;
1755
+ resetRecomputations: () => void;
1756
+ dependencyRecomputations: () => number;
1757
+ resetDependencyRecomputations: () => void;
1758
+ } & {
1759
+ memoize: typeof reselect.weakMapMemoize;
1760
+ argsMemoize: typeof reselect.weakMapMemoize;
1761
+ };
1616
1762
 
1617
- export { getAttrsEndpoint, getAuditlogDevice, getAvailableIssueOptionsByType, getDemoDeviceAddress, getDeploymentRelease, getDeviceConfigDeployment, getDeviceReportsForUser, getFilterAttributes, getGroupNames, getIsEnterprise, getMappedDevicesList, getOnboardingState, getRelevantRoles, getSearchEndpoint, getSelectedDeploymentData, getTenantCapabilities, getUserCapabilities, getUserRoles };
1763
+ export { getAttrsEndpoint, getAuditlogDevice, getAvailableIssueOptionsByType, getDemoDeviceAddress, getDeploymentRelease, getDeviceConfigDeployment, getDeviceReportsForUser, getFilterAttributes, getGroupNames, getIsEnterprise, getMappedDevicesList, getOnboardingState, getRelevantRoles, getSearchEndpoint, getSelectedDeploymentData, getShowSecurityAlert, getTenantCapabilities, getUserCapabilities, getUserRoles };
@@ -14,18 +14,19 @@ import {
14
14
  getRelevantRoles,
15
15
  getSearchEndpoint,
16
16
  getSelectedDeploymentData,
17
+ getShowSecurityAlert,
17
18
  getTenantCapabilities,
18
19
  getUserCapabilities,
19
20
  getUserRoles
20
- } from "./chunk-JDSAICR3.js";
21
+ } from "./chunk-TJBX7YHM.js";
21
22
  import "./chunk-GEQ2QQEE.js";
22
23
  import "./chunk-QL6FN2JC.js";
23
24
  import "./chunk-3NOV7X4M.js";
24
25
  import "./chunk-YO22XLHI.js";
25
26
  import "./chunk-JIS4PA3R.js";
27
+ import "./chunk-WR6RQKF5.js";
26
28
  import "./chunk-O7DR57RN.js";
27
29
  import "./chunk-4BHM6WVX.js";
28
- import "./chunk-WR6RQKF5.js";
29
30
  import "./chunk-U5TPV5X5.js";
30
31
  import "./chunk-WWED74SG.js";
31
32
  import "./chunk-2DYA3X77.js";
@@ -48,6 +49,7 @@ export {
48
49
  getRelevantRoles,
49
50
  getSearchEndpoint,
50
51
  getSelectedDeploymentData,
52
+ getShowSecurityAlert,
51
53
  getTenantCapabilities,
52
54
  getUserCapabilities,
53
55
  getUserRoles
@@ -1804,6 +1804,7 @@ var getIsPreview = (0, import_toolkit9.createSelector)([getFullVersionInformatio
1804
1804
  // src/commonSelectors.ts
1805
1805
  var import_helpers5 = require("@northern.tech/utils/helpers");
1806
1806
  var import_toolkit15 = require("@reduxjs/toolkit");
1807
+ var import_dayjs = __toESM(require("dayjs"), 1);
1807
1808
 
1808
1809
  // src/deploymentsSlice/selectors.ts
1809
1810
  var import_toolkit10 = require("@reduxjs/toolkit");
@@ -2162,6 +2163,7 @@ var emptyObject = {};
2162
2163
  var getRolesById = (state) => state.users.rolesById;
2163
2164
  var getTooltipsById = (state) => state.users.tooltips.byId;
2164
2165
  var getGlobalSettings = (state) => state.users.globalSettings;
2166
+ var getUserSettingsInitialized = (state) => state.users.userSettingsInitialized;
2165
2167
  var getCurrentUserId = (state) => state.users.currentUser;
2166
2168
  var getUsersById = (state) => state.users.byId;
2167
2169
  var getUsersList = (0, import_toolkit14.createSelector)([getUsersById], (usersById) => Object.values(usersById));
@@ -2199,6 +2201,7 @@ var getOfflineThresholdSettings = (0, import_toolkit14.createSelector)([getGloba
2199
2201
  intervalUnit: offlineThreshold?.intervalUnit || DEVICE_ONLINE_CUTOFF.intervalName
2200
2202
  }));
2201
2203
  var getRolesList = (0, import_toolkit14.createSelector)([getRolesById], (rolesById2) => Object.entries(rolesById2).map(([value, role]) => ({ value, ...role })));
2204
+ var getSecurityAlertDismissedTimestamp = (state) => state.users.userSettings.securityAlertDismissedTimestamp;
2202
2205
 
2203
2206
  // src/commonSelectors.ts
2204
2207
  var getIsEnterprise = (0, import_toolkit15.createSelector)(
@@ -2405,6 +2408,22 @@ var getRelevantRoles = (0, import_toolkit15.createSelector)([getOrganization, ge
2405
2408
  return accu;
2406
2409
  }, roles);
2407
2410
  });
2411
+ var getShowSecurityAlert = (0, import_toolkit15.createSelector)(
2412
+ [getCurrentUser, getHas2FA, getFeatures, getIsEnterprise, getUserSettingsInitialized, getSecurityAlertDismissedTimestamp],
2413
+ (currentUser, has2FA, features, isEnterprise, settingsInitialized, dismissedTimestamp) => {
2414
+ const isHosted = features?.isHosted;
2415
+ const canHave2FA = isEnterprise || isHosted;
2416
+ if (!currentUser || !settingsInitialized || has2FA || !canHave2FA) {
2417
+ return false;
2418
+ }
2419
+ if (dismissedTimestamp === null) {
2420
+ return true;
2421
+ }
2422
+ const today = (0, import_dayjs.default)();
2423
+ const dismissedMonthAgo = today.diff(dismissedTimestamp, "months");
2424
+ return dismissedMonthAgo > 0;
2425
+ }
2426
+ );
2408
2427
 
2409
2428
  // src/store.ts
2410
2429
  var import_react_redux = require("react-redux");
@@ -3556,7 +3575,7 @@ var changeNotificationSetting = createAppAsyncThunk(
3556
3575
  // src/usersSlice/thunks.ts
3557
3576
  var import_helpers9 = require("@northern.tech/utils/helpers");
3558
3577
  var import_retrytimer = require("@northern.tech/utils/retrytimer");
3559
- var import_dayjs = __toESM(require("dayjs"), 1);
3578
+ var import_dayjs2 = __toESM(require("dayjs"), 1);
3560
3579
  var import_md5 = __toESM(require("md5"), 1);
3561
3580
  var import_universal_cookie3 = __toESM(require("universal-cookie"), 1);
3562
3581
 
@@ -4141,7 +4160,7 @@ var saveUserSettings = createAppAsyncThunk(
4141
4160
  const updatedSettings = {
4142
4161
  ...userSettings,
4143
4162
  ...settings,
4144
- firstLoginTimestamp: userSettings.firstLoginTimestamp ?? (0, import_dayjs.default)().format(),
4163
+ firstLoginTimestamp: userSettings.firstLoginTimestamp ?? (0, import_dayjs2.default)().format(),
4145
4164
  onboarding: {
4146
4165
  ...onboardingState,
4147
4166
  ...settings.onboarding