@northern.tech/store 0.36.0 → 0.36.2
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.cjs.map +1 -1
- package/dist/actions.d.cts +123 -134
- package/dist/actions.d.ts +123 -134
- package/dist/actions.js.map +1 -1
- package/dist/api/general-api.cjs +1 -1
- package/dist/api/general-api.cjs.map +1 -1
- package/dist/api/general-api.d.cts +9 -10
- package/dist/api/general-api.d.ts +9 -10
- package/dist/api/general-api.js.map +1 -1
- package/dist/api/users-api.cjs +1 -1
- package/dist/api/users-api.cjs.map +1 -1
- package/dist/api/users-api.d.cts +1 -2
- package/dist/api/users-api.d.ts +1 -2
- package/dist/api/users-api.js.map +1 -1
- package/dist/appSlice/constants.cjs +0 -1
- package/dist/appSlice/constants.cjs.map +1 -1
- package/dist/appSlice/constants.d.cts +1 -1
- package/dist/appSlice/constants.d.ts +1 -1
- package/dist/appSlice/constants.js.map +1 -1
- package/dist/appSlice/index.cjs +2 -4
- package/dist/appSlice/index.cjs.map +1 -1
- package/dist/appSlice/index.d.cts +2 -2
- package/dist/appSlice/index.d.ts +2 -2
- package/dist/appSlice/index.js +2 -3
- package/dist/appSlice/index.js.map +1 -1
- package/dist/appSlice/mocks.cjs.map +1 -1
- package/dist/appSlice/mocks.d.cts +1 -1
- package/dist/appSlice/mocks.d.ts +1 -1
- package/dist/appSlice/mocks.js.map +1 -1
- package/dist/appSlice/selectors.cjs +2 -6
- package/dist/appSlice/selectors.cjs.map +1 -1
- package/dist/appSlice/selectors.d.cts +35 -128
- package/dist/appSlice/selectors.d.ts +35 -128
- package/dist/appSlice/selectors.js +2 -5
- package/dist/appSlice/selectors.js.map +1 -1
- package/dist/appSlice/thunks.cjs +0 -1
- package/dist/appSlice/thunks.d.cts +6 -31
- package/dist/appSlice/thunks.d.ts +6 -31
- package/dist/appSlice/thunks.js +2 -2
- package/dist/auth.cjs +1 -1
- package/dist/auth.cjs.map +1 -1
- package/dist/auth.d.cts +1 -1
- package/dist/auth.d.ts +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/commonConstants.d.cts +1 -1
- package/dist/commonConstants.d.ts +1 -1
- package/dist/commonSelectors.cjs +1 -1
- package/dist/commonSelectors.cjs.map +1 -1
- package/dist/commonSelectors.d.cts +164 -166
- package/dist/commonSelectors.d.ts +164 -166
- package/dist/commonSelectors.js.map +1 -1
- package/dist/{constants-CIx3fnBv.d.cts → constants-6kYRTdox.d.cts} +1 -1
- package/dist/{constants-BciiayPt.d.ts → constants-6kYRTdox.d.ts} +1 -1
- package/dist/{constants-BIIEMVoG.d.ts → constants-B_7FCJQX.d.cts} +3 -6
- package/dist/{constants-BFTS6mge.d.cts → constants-B_7FCJQX.d.ts} +3 -6
- package/dist/{constants-D41U_jbR.d.cts → constants-BwKiHHaB.d.cts} +1 -1
- package/dist/{constants-5cdwz1iH.d.ts → constants-BwKiHHaB.d.ts} +1 -1
- package/dist/{constants-DK7fI3Rh.d.cts → constants-Db_RBdlV.d.cts} +1 -1
- package/dist/{constants-BWEsNG5c.d.ts → constants-Db_RBdlV.d.ts} +1 -1
- package/dist/{constants-CNhpIMME.d.cts → constants-OZiiFKiA.d.cts} +1 -1
- package/dist/{constants-y2XVLQWf.d.ts → constants-OZiiFKiA.d.ts} +1 -1
- package/dist/{constants-CjO3_FOH.d.ts → constants-OcdoVk6f.d.ts} +3 -4
- package/dist/{constants-G3wymKIl.d.cts → constants-Sn4gnNA3.d.cts} +1 -1
- package/dist/{constants-Cpgyuy_r.d.ts → constants-Sn4gnNA3.d.ts} +1 -1
- package/dist/{constants-BrGIx40B.d.cts → constants-_p6w8uEp.d.cts} +3 -4
- package/dist/constants.cjs +0 -1
- package/dist/constants.cjs.map +1 -1
- package/dist/constants.d.cts +8 -8
- package/dist/constants.d.ts +8 -8
- package/dist/constants.js.map +1 -1
- package/dist/deploymentsSlice/constants.d.cts +1 -1
- package/dist/deploymentsSlice/constants.d.ts +1 -1
- package/dist/deploymentsSlice/index.cjs +0 -1
- package/dist/deploymentsSlice/index.cjs.map +1 -1
- package/dist/deploymentsSlice/index.d.cts +1 -1
- package/dist/deploymentsSlice/index.d.ts +1 -1
- package/dist/deploymentsSlice/index.js.map +1 -1
- package/dist/deploymentsSlice/mocks.cjs.map +1 -1
- package/dist/deploymentsSlice/mocks.d.cts +1 -1
- package/dist/deploymentsSlice/mocks.d.ts +1 -1
- package/dist/deploymentsSlice/mocks.js.map +1 -1
- package/dist/deploymentsSlice/selectors.cjs +0 -1
- package/dist/deploymentsSlice/selectors.cjs.map +1 -1
- package/dist/deploymentsSlice/selectors.d.cts +15 -16
- package/dist/deploymentsSlice/selectors.d.ts +15 -16
- package/dist/deploymentsSlice/selectors.js.map +1 -1
- package/dist/deploymentsSlice/thunks.d.cts +21 -22
- package/dist/deploymentsSlice/thunks.d.ts +21 -22
- package/dist/devicesSlice/constants.d.cts +1 -1
- package/dist/devicesSlice/constants.d.ts +1 -1
- package/dist/devicesSlice/index.cjs +0 -1
- package/dist/devicesSlice/index.cjs.map +1 -1
- package/dist/devicesSlice/index.d.cts +1 -1
- package/dist/devicesSlice/index.d.ts +1 -1
- package/dist/devicesSlice/index.js.map +1 -1
- package/dist/devicesSlice/mocks.cjs +0 -1
- package/dist/devicesSlice/mocks.cjs.map +1 -1
- package/dist/devicesSlice/mocks.js.map +1 -1
- package/dist/devicesSlice/selectors.cjs +0 -1
- package/dist/devicesSlice/selectors.cjs.map +1 -1
- package/dist/devicesSlice/selectors.d.cts +79 -81
- package/dist/devicesSlice/selectors.d.ts +79 -81
- package/dist/devicesSlice/selectors.js.map +1 -1
- package/dist/devicesSlice/thunks.d.cts +67 -69
- package/dist/devicesSlice/thunks.d.ts +67 -69
- package/dist/{index-DUvrw_Ed.d.ts → index-5Q-iI4EB.d.cts} +17 -20
- package/dist/index-BBsUj1a8.d.ts +68 -0
- package/dist/index-BLvjQfGj.d.ts +119 -0
- package/dist/{index-BP0uAq36.d.cts → index-Bb4yvvgG.d.ts} +25 -28
- package/dist/index-Bj3OArhr.d.cts +68 -0
- package/dist/{index-CT5hgXm9.d.cts → index-ByfjrTdH.d.ts} +16 -19
- package/dist/index-C8QadAm7.d.cts +119 -0
- package/dist/{index-BI9O8JWe.d.ts → index-CPdMUfRr.d.ts} +41 -44
- package/dist/index-CSk4ENmk.d.cts +149 -0
- package/dist/index-Cf81vLTi.d.ts +149 -0
- package/dist/index-DBUt8xVc.d.cts +61 -0
- package/dist/index-DBUt8xVc.d.ts +61 -0
- package/dist/index-DLDY7bNT.d.ts +165 -0
- package/dist/{index-B64X5ozM.d.cts → index-DbfM03Gj.d.cts} +42 -45
- package/dist/{index-CkwVnIqd.d.ts → index-EPmsL6Lb.d.cts} +26 -29
- package/dist/index-Zs9RnVoR.d.cts +165 -0
- package/dist/liststatehook.cjs +5 -6
- package/dist/liststatehook.cjs.map +1 -1
- package/dist/liststatehook.d.cts +1 -1
- package/dist/liststatehook.d.ts +1 -1
- package/dist/liststatehook.js +1 -1
- package/dist/liststatehook.js.map +1 -1
- package/dist/locationutils.cjs +0 -1
- package/dist/locationutils.cjs.map +1 -1
- package/dist/locationutils.d.cts +3 -3
- package/dist/locationutils.d.ts +3 -3
- package/dist/locationutils.js.map +1 -1
- package/dist/monitorSlice/constants.d.cts +1 -1
- package/dist/monitorSlice/constants.d.ts +1 -1
- package/dist/monitorSlice/index.cjs +0 -1
- package/dist/monitorSlice/index.cjs.map +1 -1
- package/dist/monitorSlice/index.d.cts +1 -1
- package/dist/monitorSlice/index.d.ts +1 -1
- package/dist/monitorSlice/index.js.map +1 -1
- package/dist/monitorSlice/mocks.cjs +0 -1
- package/dist/monitorSlice/mocks.cjs.map +1 -1
- package/dist/monitorSlice/mocks.d.cts +1 -1
- package/dist/monitorSlice/mocks.d.ts +1 -1
- package/dist/monitorSlice/mocks.js.map +1 -1
- package/dist/monitorSlice/selectors.d.cts +1 -1
- package/dist/monitorSlice/selectors.d.ts +1 -1
- package/dist/monitorSlice/thunks.cjs +1 -3
- package/dist/monitorSlice/thunks.cjs.map +1 -1
- package/dist/monitorSlice/thunks.d.cts +11 -13
- package/dist/monitorSlice/thunks.d.ts +11 -13
- package/dist/monitorSlice/thunks.js +1 -2
- package/dist/monitorSlice/thunks.js.map +1 -1
- package/dist/onboardingSlice/constants.cjs.map +1 -1
- package/dist/onboardingSlice/constants.d.cts +1 -1
- package/dist/onboardingSlice/constants.d.ts +1 -1
- package/dist/onboardingSlice/constants.js.map +1 -1
- package/dist/onboardingSlice/index.cjs +0 -1
- package/dist/onboardingSlice/index.cjs.map +1 -1
- package/dist/onboardingSlice/index.d.cts +1 -1
- package/dist/onboardingSlice/index.d.ts +1 -1
- package/dist/onboardingSlice/index.js.map +1 -1
- package/dist/onboardingSlice/mocks.cjs.map +1 -1
- package/dist/onboardingSlice/mocks.d.cts +1 -1
- package/dist/onboardingSlice/mocks.d.ts +1 -1
- package/dist/onboardingSlice/mocks.js.map +1 -1
- package/dist/onboardingSlice/selectors.d.cts +2 -2
- package/dist/onboardingSlice/selectors.d.ts +2 -2
- package/dist/onboardingSlice/thunks.d.cts +22 -23
- package/dist/onboardingSlice/thunks.d.ts +22 -23
- package/dist/organizationSlice/constants.d.cts +1 -1
- package/dist/organizationSlice/constants.d.ts +1 -1
- package/dist/organizationSlice/index.cjs +0 -1
- package/dist/organizationSlice/index.cjs.map +1 -1
- package/dist/organizationSlice/index.d.cts +1 -1
- package/dist/organizationSlice/index.d.ts +1 -1
- package/dist/organizationSlice/index.js.map +1 -1
- package/dist/organizationSlice/mocks.cjs +0 -1
- package/dist/organizationSlice/mocks.cjs.map +1 -1
- package/dist/organizationSlice/mocks.d.cts +3 -4
- package/dist/organizationSlice/mocks.d.ts +3 -4
- package/dist/organizationSlice/mocks.js.map +1 -1
- package/dist/organizationSlice/selectors.cjs +0 -1
- package/dist/organizationSlice/selectors.cjs.map +1 -1
- package/dist/organizationSlice/selectors.d.cts +78 -81
- package/dist/organizationSlice/selectors.d.ts +78 -81
- package/dist/organizationSlice/selectors.js.map +1 -1
- package/dist/organizationSlice/thunks.d.cts +69 -72
- package/dist/organizationSlice/thunks.d.ts +69 -72
- package/dist/organizationSlice/types.d.cts +1 -1
- package/dist/organizationSlice/types.d.ts +1 -1
- package/dist/releasesSlice/constants.cjs.map +1 -1
- package/dist/releasesSlice/constants.d.cts +1 -1
- package/dist/releasesSlice/constants.d.ts +1 -1
- package/dist/releasesSlice/constants.js.map +1 -1
- package/dist/releasesSlice/index.cjs +0 -1
- package/dist/releasesSlice/index.cjs.map +1 -1
- package/dist/releasesSlice/index.d.cts +1 -1
- package/dist/releasesSlice/index.d.ts +1 -1
- package/dist/releasesSlice/index.js.map +1 -1
- package/dist/releasesSlice/mocks.cjs +0 -1
- package/dist/releasesSlice/mocks.cjs.map +1 -1
- package/dist/releasesSlice/mocks.d.cts +3 -6
- package/dist/releasesSlice/mocks.d.ts +3 -6
- package/dist/releasesSlice/mocks.js.map +1 -1
- package/dist/releasesSlice/selectors.cjs +0 -1
- package/dist/releasesSlice/selectors.cjs.map +1 -1
- package/dist/releasesSlice/selectors.d.cts +107 -110
- package/dist/releasesSlice/selectors.d.ts +107 -110
- package/dist/releasesSlice/selectors.js.map +1 -1
- package/dist/releasesSlice/thunks.cjs +4 -5
- package/dist/releasesSlice/thunks.cjs.map +1 -1
- package/dist/releasesSlice/thunks.d.cts +52 -55
- package/dist/releasesSlice/thunks.d.ts +52 -55
- package/dist/releasesSlice/thunks.js +3 -4
- package/dist/releasesSlice/thunks.js.map +1 -1
- package/dist/sockethook.cjs +1 -1
- package/dist/sockethook.cjs.map +1 -1
- package/dist/sockethook.js.map +1 -1
- package/dist/{store-BZo47jc-.d.ts → store-Co2ptTSm.d.ts} +30 -35
- package/dist/{store-BhRxVhtL.d.cts → store-Dd0Y2JCN.d.cts} +30 -35
- package/dist/store.cjs +0 -1
- package/dist/store.cjs.map +1 -1
- package/dist/store.d.cts +3 -3
- package/dist/store.d.ts +3 -3
- package/dist/store.js.map +1 -1
- package/dist/storehooks.cjs +6 -14
- package/dist/storehooks.cjs.map +1 -1
- package/dist/storehooks.d.cts +6 -43
- package/dist/storehooks.d.ts +6 -43
- package/dist/storehooks.js +7 -15
- package/dist/storehooks.js.map +1 -1
- package/dist/thunks.cjs +4 -44
- package/dist/thunks.cjs.map +1 -1
- package/dist/thunks.d.cts +2 -2
- package/dist/thunks.d.ts +2 -2
- package/dist/thunks.js +5 -44
- package/dist/thunks.js.map +1 -1
- package/dist/{types-COdPU2QQ.d.cts → types-B33vKVhi.d.cts} +4 -4
- package/dist/{types-BPyM8Inu.d.ts → types-BjtmX60L.d.ts} +4 -4
- package/dist/useDeploymentDevice.cjs +1 -1
- package/dist/useDeploymentDevice.cjs.map +1 -1
- package/dist/useDeploymentDevice.js.map +1 -1
- package/dist/usersSlice/constants.d.cts +1 -1
- package/dist/usersSlice/constants.d.ts +1 -1
- package/dist/usersSlice/index.cjs +0 -1
- package/dist/usersSlice/index.cjs.map +1 -1
- package/dist/usersSlice/index.d.cts +1 -1
- package/dist/usersSlice/index.d.ts +1 -1
- package/dist/usersSlice/index.js.map +1 -1
- package/dist/usersSlice/mocks.cjs +0 -1
- package/dist/usersSlice/mocks.cjs.map +1 -1
- package/dist/usersSlice/mocks.d.cts +4 -6
- package/dist/usersSlice/mocks.d.ts +4 -6
- package/dist/usersSlice/mocks.js.map +1 -1
- package/dist/usersSlice/selectors.cjs +0 -1
- package/dist/usersSlice/selectors.cjs.map +1 -1
- package/dist/usersSlice/selectors.d.cts +44 -47
- package/dist/usersSlice/selectors.d.ts +44 -47
- package/dist/usersSlice/selectors.js.map +1 -1
- package/dist/usersSlice/thunks.d.cts +92 -95
- package/dist/usersSlice/thunks.d.ts +92 -95
- package/dist/{utils-CHBWS_tH.d.ts → utils-C_9XEfi_.d.ts} +8 -9
- package/dist/{utils-Do9z5TL1.d.cts → utils-DbXmZmGq.d.cts} +8 -9
- package/dist/utils.cjs +0 -3
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +2 -2
- package/dist/utils.d.ts +2 -2
- package/dist/utils.js +1 -2
- package/dist/utils.js.map +1 -1
- package/package.json +7 -7
- package/dist/index-B3IF6ur9.d.cts +0 -168
- package/dist/index-BFlHWzjv.d.cts +0 -152
- package/dist/index-BbaS7MzW.d.cts +0 -71
- package/dist/index-Bp1WpATs.d.ts +0 -154
- package/dist/index-C6wNUfiV.d.ts +0 -71
- package/dist/index-CJkrL0oA.d.ts +0 -64
- package/dist/index-DaD3yorF.d.ts +0 -168
- package/dist/index-DwACbyUg.d.cts +0 -154
- package/dist/index-UPc3wvVd.d.cts +0 -64
- package/dist/index-ez3oxfRo.d.ts +0 -152
- /package/dist/{chunk-CKQMccvm.cjs → chunk-D6vf50IK.cjs} +0 -0
|
@@ -1,24 +1,22 @@
|
|
|
1
|
-
import { o as UserSliceType } from "../index-
|
|
2
|
-
import { i as ReleaseSliceType } from "../index-
|
|
3
|
-
import { n as OnboardingSliceType } from "../index-
|
|
4
|
-
import { o as DeploymentsSliceType } from "../index-
|
|
5
|
-
import { a as DeviceListState, n as DeviceFilter, r as DeviceGroup, s as DeviceSliceType, t as Device } from "../index-
|
|
6
|
-
import { t as AppSliceType } from "../index-
|
|
7
|
-
import { t as MonitorSliceType } from "../index-
|
|
8
|
-
import { t as OrganizationSliceType } from "../index-
|
|
9
|
-
import { r as RootState } from "../store-
|
|
10
|
-
import * as _$_northern_tech_types_types_gen0 from "@northern.tech/types/types.gen";
|
|
11
|
-
import * as _$reselect from "reselect";
|
|
1
|
+
import { o as UserSliceType } from "../index-Cf81vLTi.js";
|
|
2
|
+
import { i as ReleaseSliceType } from "../index-DLDY7bNT.js";
|
|
3
|
+
import { n as OnboardingSliceType } from "../index-DBUt8xVc.js";
|
|
4
|
+
import { o as DeploymentsSliceType } from "../index-Bb4yvvgG.js";
|
|
5
|
+
import { a as DeviceListState, n as DeviceFilter, r as DeviceGroup, s as DeviceSliceType, t as Device } from "../index-CPdMUfRr.js";
|
|
6
|
+
import { t as AppSliceType } from "../index-BLvjQfGj.js";
|
|
7
|
+
import { t as MonitorSliceType } from "../index-ByfjrTdH.js";
|
|
8
|
+
import { t as OrganizationSliceType } from "../index-BBsUj1a8.js";
|
|
9
|
+
import { r as RootState } from "../store-Co2ptTSm.js";
|
|
12
10
|
|
|
13
11
|
//#region src/devicesSlice/selectors.d.ts
|
|
14
12
|
declare const getAcceptedDevices: (state: RootState) => {
|
|
15
|
-
counts:
|
|
13
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
16
14
|
total: number;
|
|
17
15
|
};
|
|
18
16
|
deviceIds: string[];
|
|
19
17
|
};
|
|
20
18
|
declare const getDevicesByStatus: (state: RootState) => Record<string, {
|
|
21
|
-
counts:
|
|
19
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
22
20
|
total: number;
|
|
23
21
|
};
|
|
24
22
|
deviceIds: string[];
|
|
@@ -105,10 +103,10 @@ declare const getSortedFilteringAttributes: ((state: {
|
|
|
105
103
|
dependencyRecomputations: () => number;
|
|
106
104
|
resetDependencyRecomputations: () => void;
|
|
107
105
|
} & {
|
|
108
|
-
memoize: typeof
|
|
109
|
-
argsMemoize: typeof
|
|
106
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
107
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
110
108
|
};
|
|
111
|
-
declare const getDeviceLimits: (state: RootState) =>
|
|
109
|
+
declare const getDeviceLimits: (state: RootState) => import("@northern.tech/types/types.gen").DeviceTierLimits;
|
|
112
110
|
declare const getDeviceIdentityAttributes: ((state: {
|
|
113
111
|
app: AppSliceType;
|
|
114
112
|
devices: DeviceSliceType;
|
|
@@ -167,8 +165,8 @@ declare const getDeviceIdentityAttributes: ((state: {
|
|
|
167
165
|
dependencyRecomputations: () => number;
|
|
168
166
|
resetDependencyRecomputations: () => void;
|
|
169
167
|
} & {
|
|
170
|
-
memoize: typeof
|
|
171
|
-
argsMemoize: typeof
|
|
168
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
169
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
172
170
|
};
|
|
173
171
|
declare const getDeviceCountsByStatus: ((state: {
|
|
174
172
|
app: AppSliceType;
|
|
@@ -185,13 +183,13 @@ declare const getDeviceCountsByStatus: ((state: {
|
|
|
185
183
|
resetResultsCount: () => void;
|
|
186
184
|
} & {
|
|
187
185
|
resultFunc: (resultFuncArgs_0: Record<string, {
|
|
188
|
-
counts:
|
|
186
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
189
187
|
total: number;
|
|
190
188
|
};
|
|
191
189
|
deviceIds: string[];
|
|
192
190
|
}>) => Record<string, number>;
|
|
193
191
|
memoizedResultFunc: ((resultFuncArgs_0: Record<string, {
|
|
194
|
-
counts:
|
|
192
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
195
193
|
total: number;
|
|
196
194
|
};
|
|
197
195
|
deviceIds: string[];
|
|
@@ -202,7 +200,7 @@ declare const getDeviceCountsByStatus: ((state: {
|
|
|
202
200
|
};
|
|
203
201
|
lastResult: () => Record<string, number>;
|
|
204
202
|
dependencies: [(state: RootState) => Record<string, {
|
|
205
|
-
counts:
|
|
203
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
206
204
|
total: number;
|
|
207
205
|
};
|
|
208
206
|
deviceIds: string[];
|
|
@@ -212,8 +210,8 @@ declare const getDeviceCountsByStatus: ((state: {
|
|
|
212
210
|
dependencyRecomputations: () => number;
|
|
213
211
|
resetDependencyRecomputations: () => void;
|
|
214
212
|
} & {
|
|
215
|
-
memoize: typeof
|
|
216
|
-
argsMemoize: typeof
|
|
213
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
214
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
217
215
|
};
|
|
218
216
|
declare const getDeviceById: ((state: any, deviceId: any) => Device) & {
|
|
219
217
|
clearCache: () => void;
|
|
@@ -233,8 +231,8 @@ declare const getDeviceById: ((state: any, deviceId: any) => Device) & {
|
|
|
233
231
|
dependencyRecomputations: () => number;
|
|
234
232
|
resetDependencyRecomputations: () => void;
|
|
235
233
|
} & {
|
|
236
|
-
memoize: typeof
|
|
237
|
-
argsMemoize: typeof
|
|
234
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
235
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
238
236
|
};
|
|
239
237
|
declare const getSelectedGroupInfo: ((state: {
|
|
240
238
|
app: AppSliceType;
|
|
@@ -288,13 +286,13 @@ declare const getSelectedGroupInfo: ((state: {
|
|
|
288
286
|
resetResultsCount: () => void;
|
|
289
287
|
} & {
|
|
290
288
|
resultFunc: (resultFuncArgs_0: Record<string, {
|
|
291
|
-
counts:
|
|
289
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
292
290
|
total: number;
|
|
293
291
|
};
|
|
294
292
|
deviceIds: string[];
|
|
295
293
|
}>) => Record<string, number>;
|
|
296
294
|
memoizedResultFunc: ((resultFuncArgs_0: Record<string, {
|
|
297
|
-
counts:
|
|
295
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
298
296
|
total: number;
|
|
299
297
|
};
|
|
300
298
|
deviceIds: string[];
|
|
@@ -305,7 +303,7 @@ declare const getSelectedGroupInfo: ((state: {
|
|
|
305
303
|
};
|
|
306
304
|
lastResult: () => Record<string, number>;
|
|
307
305
|
dependencies: [(state: RootState) => Record<string, {
|
|
308
|
-
counts:
|
|
306
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
309
307
|
total: number;
|
|
310
308
|
};
|
|
311
309
|
deviceIds: string[];
|
|
@@ -315,16 +313,16 @@ declare const getSelectedGroupInfo: ((state: {
|
|
|
315
313
|
dependencyRecomputations: () => number;
|
|
316
314
|
resetDependencyRecomputations: () => void;
|
|
317
315
|
} & {
|
|
318
|
-
memoize: typeof
|
|
319
|
-
argsMemoize: typeof
|
|
316
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
317
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
320
318
|
}, (state: RootState) => Record<string, DeviceGroup>, (state: RootState) => string | undefined];
|
|
321
319
|
recomputations: () => number;
|
|
322
320
|
resetRecomputations: () => void;
|
|
323
321
|
dependencyRecomputations: () => number;
|
|
324
322
|
resetDependencyRecomputations: () => void;
|
|
325
323
|
} & {
|
|
326
|
-
memoize: typeof
|
|
327
|
-
argsMemoize: typeof
|
|
324
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
325
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
328
326
|
};
|
|
329
327
|
declare const getCombinedLimit: ((state: {
|
|
330
328
|
app: AppSliceType;
|
|
@@ -340,21 +338,21 @@ declare const getCombinedLimit: ((state: {
|
|
|
340
338
|
resultsCount: () => number;
|
|
341
339
|
resetResultsCount: () => void;
|
|
342
340
|
} & {
|
|
343
|
-
resultFunc: (resultFuncArgs_0:
|
|
344
|
-
memoizedResultFunc: ((resultFuncArgs_0:
|
|
341
|
+
resultFunc: (resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => number;
|
|
342
|
+
memoizedResultFunc: ((resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => number) & {
|
|
345
343
|
clearCache: () => void;
|
|
346
344
|
resultsCount: () => number;
|
|
347
345
|
resetResultsCount: () => void;
|
|
348
346
|
};
|
|
349
347
|
lastResult: () => number;
|
|
350
|
-
dependencies: [(state: RootState) =>
|
|
348
|
+
dependencies: [(state: RootState) => import("@northern.tech/types/types.gen").DeviceTierLimits];
|
|
351
349
|
recomputations: () => number;
|
|
352
350
|
resetRecomputations: () => void;
|
|
353
351
|
dependencyRecomputations: () => number;
|
|
354
352
|
resetDependencyRecomputations: () => void;
|
|
355
353
|
} & {
|
|
356
|
-
memoize: typeof
|
|
357
|
-
argsMemoize: typeof
|
|
354
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
355
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
358
356
|
};
|
|
359
357
|
declare const getLimitMaxed: ((state: {
|
|
360
358
|
app: AppSliceType;
|
|
@@ -392,13 +390,13 @@ declare const getLimitMaxed: ((state: {
|
|
|
392
390
|
resetResultsCount: () => void;
|
|
393
391
|
} & {
|
|
394
392
|
resultFunc: (resultFuncArgs_0: Record<string, {
|
|
395
|
-
counts:
|
|
393
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
396
394
|
total: number;
|
|
397
395
|
};
|
|
398
396
|
deviceIds: string[];
|
|
399
397
|
}>) => Record<string, number>;
|
|
400
398
|
memoizedResultFunc: ((resultFuncArgs_0: Record<string, {
|
|
401
|
-
counts:
|
|
399
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
402
400
|
total: number;
|
|
403
401
|
};
|
|
404
402
|
deviceIds: string[];
|
|
@@ -409,7 +407,7 @@ declare const getLimitMaxed: ((state: {
|
|
|
409
407
|
};
|
|
410
408
|
lastResult: () => Record<string, number>;
|
|
411
409
|
dependencies: [(state: RootState) => Record<string, {
|
|
412
|
-
counts:
|
|
410
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
413
411
|
total: number;
|
|
414
412
|
};
|
|
415
413
|
deviceIds: string[];
|
|
@@ -419,8 +417,8 @@ declare const getLimitMaxed: ((state: {
|
|
|
419
417
|
dependencyRecomputations: () => number;
|
|
420
418
|
resetDependencyRecomputations: () => void;
|
|
421
419
|
} & {
|
|
422
|
-
memoize: typeof
|
|
423
|
-
argsMemoize: typeof
|
|
420
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
421
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
424
422
|
}, ((state: {
|
|
425
423
|
app: AppSliceType;
|
|
426
424
|
devices: DeviceSliceType;
|
|
@@ -435,29 +433,29 @@ declare const getLimitMaxed: ((state: {
|
|
|
435
433
|
resultsCount: () => number;
|
|
436
434
|
resetResultsCount: () => void;
|
|
437
435
|
} & {
|
|
438
|
-
resultFunc: (resultFuncArgs_0:
|
|
439
|
-
memoizedResultFunc: ((resultFuncArgs_0:
|
|
436
|
+
resultFunc: (resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => number;
|
|
437
|
+
memoizedResultFunc: ((resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => number) & {
|
|
440
438
|
clearCache: () => void;
|
|
441
439
|
resultsCount: () => number;
|
|
442
440
|
resetResultsCount: () => void;
|
|
443
441
|
};
|
|
444
442
|
lastResult: () => number;
|
|
445
|
-
dependencies: [(state: RootState) =>
|
|
443
|
+
dependencies: [(state: RootState) => import("@northern.tech/types/types.gen").DeviceTierLimits];
|
|
446
444
|
recomputations: () => number;
|
|
447
445
|
resetRecomputations: () => void;
|
|
448
446
|
dependencyRecomputations: () => number;
|
|
449
447
|
resetDependencyRecomputations: () => void;
|
|
450
448
|
} & {
|
|
451
|
-
memoize: typeof
|
|
452
|
-
argsMemoize: typeof
|
|
449
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
450
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
453
451
|
}];
|
|
454
452
|
recomputations: () => number;
|
|
455
453
|
resetRecomputations: () => void;
|
|
456
454
|
dependencyRecomputations: () => number;
|
|
457
455
|
resetDependencyRecomputations: () => void;
|
|
458
456
|
} & {
|
|
459
|
-
memoize: typeof
|
|
460
|
-
argsMemoize: typeof
|
|
457
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
458
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
461
459
|
};
|
|
462
460
|
declare const getGroupsByIdWithoutUngrouped: ((state: {
|
|
463
461
|
app: AppSliceType;
|
|
@@ -494,8 +492,8 @@ declare const getGroupsByIdWithoutUngrouped: ((state: {
|
|
|
494
492
|
dependencyRecomputations: () => number;
|
|
495
493
|
resetDependencyRecomputations: () => void;
|
|
496
494
|
} & {
|
|
497
|
-
memoize: typeof
|
|
498
|
-
argsMemoize: typeof
|
|
495
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
496
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
499
497
|
};
|
|
500
498
|
declare const getGroupData: ((state: {
|
|
501
499
|
app: AppSliceType;
|
|
@@ -581,16 +579,16 @@ declare const getGroupData: ((state: {
|
|
|
581
579
|
dependencyRecomputations: () => number;
|
|
582
580
|
resetDependencyRecomputations: () => void;
|
|
583
581
|
} & {
|
|
584
|
-
memoize: typeof
|
|
585
|
-
argsMemoize: typeof
|
|
582
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
583
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
586
584
|
}];
|
|
587
585
|
recomputations: () => number;
|
|
588
586
|
resetRecomputations: () => void;
|
|
589
587
|
dependencyRecomputations: () => number;
|
|
590
588
|
resetDependencyRecomputations: () => void;
|
|
591
589
|
} & {
|
|
592
|
-
memoize: typeof
|
|
593
|
-
argsMemoize: typeof
|
|
590
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
591
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
594
592
|
};
|
|
595
593
|
type SelectorGroup = DeviceGroup & {
|
|
596
594
|
groupId: string;
|
|
@@ -642,8 +640,8 @@ declare const getGroups: ((state: {
|
|
|
642
640
|
dependencyRecomputations: () => number;
|
|
643
641
|
resetDependencyRecomputations: () => void;
|
|
644
642
|
} & {
|
|
645
|
-
memoize: typeof
|
|
646
|
-
argsMemoize: typeof
|
|
643
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
644
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
647
645
|
};
|
|
648
646
|
declare const getAttributesList: ((state: {
|
|
649
647
|
app: AppSliceType;
|
|
@@ -687,8 +685,8 @@ declare const getAttributesList: ((state: {
|
|
|
687
685
|
dependencyRecomputations: () => number;
|
|
688
686
|
resetDependencyRecomputations: () => void;
|
|
689
687
|
} & {
|
|
690
|
-
memoize: typeof
|
|
691
|
-
argsMemoize: typeof
|
|
688
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
689
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
692
690
|
};
|
|
693
691
|
declare const getEnabledTiers: ((state: {
|
|
694
692
|
app: AppSliceType;
|
|
@@ -725,29 +723,29 @@ declare const getEnabledTiers: ((state: {
|
|
|
725
723
|
resultsCount: () => number;
|
|
726
724
|
resetResultsCount: () => void;
|
|
727
725
|
} & {
|
|
728
|
-
resultFunc: (resultFuncArgs_0:
|
|
729
|
-
memoizedResultFunc: ((resultFuncArgs_0:
|
|
726
|
+
resultFunc: (resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => [string, number][];
|
|
727
|
+
memoizedResultFunc: ((resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => [string, number][]) & {
|
|
730
728
|
clearCache: () => void;
|
|
731
729
|
resultsCount: () => number;
|
|
732
730
|
resetResultsCount: () => void;
|
|
733
731
|
};
|
|
734
732
|
lastResult: () => [string, number][];
|
|
735
|
-
dependencies: [(state: RootState) =>
|
|
733
|
+
dependencies: [(state: RootState) => import("@northern.tech/types/types.gen").DeviceTierLimits];
|
|
736
734
|
recomputations: () => number;
|
|
737
735
|
resetRecomputations: () => void;
|
|
738
736
|
dependencyRecomputations: () => number;
|
|
739
737
|
resetDependencyRecomputations: () => void;
|
|
740
738
|
} & {
|
|
741
|
-
memoize: typeof
|
|
742
|
-
argsMemoize: typeof
|
|
739
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
740
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
743
741
|
}];
|
|
744
742
|
recomputations: () => number;
|
|
745
743
|
resetRecomputations: () => void;
|
|
746
744
|
dependencyRecomputations: () => number;
|
|
747
745
|
resetDependencyRecomputations: () => void;
|
|
748
746
|
} & {
|
|
749
|
-
memoize: typeof
|
|
750
|
-
argsMemoize: typeof
|
|
747
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
748
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
751
749
|
};
|
|
752
750
|
declare const getDeviceLimitStats: ((state: {
|
|
753
751
|
app: AppSliceType;
|
|
@@ -768,7 +766,7 @@ declare const getDeviceLimitStats: ((state: {
|
|
|
768
766
|
resetResultsCount: () => void;
|
|
769
767
|
} & {
|
|
770
768
|
resultFunc: (resultFuncArgs_0: [string, number][], resultFuncArgs_1: {
|
|
771
|
-
counts:
|
|
769
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
772
770
|
total: number;
|
|
773
771
|
};
|
|
774
772
|
deviceIds: string[];
|
|
@@ -778,7 +776,7 @@ declare const getDeviceLimitStats: ((state: {
|
|
|
778
776
|
total: any;
|
|
779
777
|
}[];
|
|
780
778
|
memoizedResultFunc: ((resultFuncArgs_0: [string, number][], resultFuncArgs_1: {
|
|
781
|
-
counts:
|
|
779
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
782
780
|
total: number;
|
|
783
781
|
};
|
|
784
782
|
deviceIds: string[];
|
|
@@ -810,23 +808,23 @@ declare const getDeviceLimitStats: ((state: {
|
|
|
810
808
|
resultsCount: () => number;
|
|
811
809
|
resetResultsCount: () => void;
|
|
812
810
|
} & {
|
|
813
|
-
resultFunc: (resultFuncArgs_0:
|
|
814
|
-
memoizedResultFunc: ((resultFuncArgs_0:
|
|
811
|
+
resultFunc: (resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => [string, number][];
|
|
812
|
+
memoizedResultFunc: ((resultFuncArgs_0: import("@northern.tech/types/types.gen").DeviceTierLimits) => [string, number][]) & {
|
|
815
813
|
clearCache: () => void;
|
|
816
814
|
resultsCount: () => number;
|
|
817
815
|
resetResultsCount: () => void;
|
|
818
816
|
};
|
|
819
817
|
lastResult: () => [string, number][];
|
|
820
|
-
dependencies: [(state: RootState) =>
|
|
818
|
+
dependencies: [(state: RootState) => import("@northern.tech/types/types.gen").DeviceTierLimits];
|
|
821
819
|
recomputations: () => number;
|
|
822
820
|
resetRecomputations: () => void;
|
|
823
821
|
dependencyRecomputations: () => number;
|
|
824
822
|
resetDependencyRecomputations: () => void;
|
|
825
823
|
} & {
|
|
826
|
-
memoize: typeof
|
|
827
|
-
argsMemoize: typeof
|
|
824
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
825
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
828
826
|
}, (state: RootState) => {
|
|
829
|
-
counts:
|
|
827
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
830
828
|
total: number;
|
|
831
829
|
};
|
|
832
830
|
deviceIds: string[];
|
|
@@ -836,8 +834,8 @@ declare const getDeviceLimitStats: ((state: {
|
|
|
836
834
|
dependencyRecomputations: () => number;
|
|
837
835
|
resetDependencyRecomputations: () => void;
|
|
838
836
|
} & {
|
|
839
|
-
memoize: typeof
|
|
840
|
-
argsMemoize: typeof
|
|
837
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
838
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
841
839
|
};
|
|
842
840
|
declare const getDeviceTypes: ((state: {
|
|
843
841
|
app: AppSliceType;
|
|
@@ -854,13 +852,13 @@ declare const getDeviceTypes: ((state: {
|
|
|
854
852
|
resetResultsCount: () => void;
|
|
855
853
|
} & {
|
|
856
854
|
resultFunc: (resultFuncArgs_0: {
|
|
857
|
-
counts:
|
|
855
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
858
856
|
total: number;
|
|
859
857
|
};
|
|
860
858
|
deviceIds: string[];
|
|
861
859
|
}, resultFuncArgs_1: Record<string, Device>) => string[];
|
|
862
860
|
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
863
|
-
counts:
|
|
861
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
864
862
|
total: number;
|
|
865
863
|
};
|
|
866
864
|
deviceIds: string[];
|
|
@@ -871,7 +869,7 @@ declare const getDeviceTypes: ((state: {
|
|
|
871
869
|
};
|
|
872
870
|
lastResult: () => string[];
|
|
873
871
|
dependencies: [(state: RootState) => {
|
|
874
|
-
counts:
|
|
872
|
+
counts: import("@northern.tech/types/types.gen").DeviceTierLimits & {
|
|
875
873
|
total: number;
|
|
876
874
|
};
|
|
877
875
|
deviceIds: string[];
|
|
@@ -881,8 +879,8 @@ declare const getDeviceTypes: ((state: {
|
|
|
881
879
|
dependencyRecomputations: () => number;
|
|
882
880
|
resetDependencyRecomputations: () => void;
|
|
883
881
|
} & {
|
|
884
|
-
memoize: typeof
|
|
885
|
-
argsMemoize: typeof
|
|
882
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
883
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
886
884
|
};
|
|
887
885
|
//#endregion
|
|
888
886
|
export { getAcceptedDevices, getAttributesList, getCombinedLimit, getDeviceById, getDeviceCountsByStatus, getDeviceFilters, getDeviceIdentityAttributes, getDeviceLimitStats, getDeviceLimits, getDeviceListState, getDeviceReports, getDeviceTypes, getDevicesById, getDevicesByStatus, getEnabledTiers, getFilteringAttributes, getGroupData, getGroups, getGroupsById, getGroupsByIdWithoutUngrouped, getLimitMaxed, getListedDevices, getSelectedGroup, getSelectedGroupInfo, getSortedFilteringAttributes };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectors.js","names":[],"sources":["../../src/devicesSlice/selectors.ts"],"sourcesContent":["// Copyright 2023 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { duplicateFilter } from '@northern.tech/utils/helpers';\nimport { createSelector } from '@reduxjs/toolkit';\n\nimport type { DeviceFilter, DeviceGroup } from '.';\nimport type { DeviceAuthState } from '../constants';\nimport { DEVICE_STATES, UNGROUPED_GROUP } from '../constants';\nimport type { RootState } from '../store';\n\nexport const getAcceptedDevices = (state: RootState) => state.devices.byStatus.accepted;\nexport const getDevicesByStatus = (state: RootState) => state.devices.byStatus;\nexport const getDevicesById = (state: RootState) => state.devices.byId;\nexport const getDeviceReports = (state: RootState) => state.devices.reports;\nexport const getGroupsById = (state: RootState) => state.devices.groups.byId;\nexport const getSelectedGroup = (state: RootState) => state.devices.groups.selectedGroup;\n\nexport const getDeviceListState = (state: RootState) => state.devices.deviceList;\nexport const getListedDevices = (state: RootState) => state.devices.deviceList.deviceIds;\nexport const getFilteringAttributes = (state: RootState) => state.devices.filteringAttributes;\nexport const getDeviceFilters = (state: RootState) => state.devices.filters || [];\nconst getFilteringAttributesFromConfig = (state: RootState) => state.devices.filteringAttributesConfig.attributes;\nexport const getSortedFilteringAttributes = createSelector([getFilteringAttributes], filteringAttributes => ({\n ...filteringAttributes,\n identityAttributes: [...filteringAttributes.identityAttributes, 'id']\n}));\nexport const getDeviceLimits = (state: RootState) => state.devices.limits;\nconst getFilteringAttributesLimit = (state: RootState) => state.devices.filteringAttributesLimit;\n\nexport const getDeviceIdentityAttributes = createSelector(\n [getFilteringAttributes, getFilteringAttributesLimit],\n ({ identityAttributes }, filteringAttributesLimit) => {\n // limit the selection of the available attribute to AVAILABLE_ATTRIBUTE_LIMIT\n const attributes = identityAttributes.slice(0, filteringAttributesLimit);\n return attributes.reduce(\n (accu, value) => {\n accu.push({ value, label: value, scope: 'identity' });\n return accu;\n },\n [\n { value: 'name', label: 'Name', scope: 'tags' },\n { value: 'id', label: 'Device ID', scope: 'identity' }\n ]\n );\n }\n);\n\nexport const getDeviceCountsByStatus = createSelector([getDevicesByStatus], byStatus =>\n Object.values(DEVICE_STATES).reduce<Record<DeviceAuthState, number>>(\n (accu, deviceState) => {\n const { counts } = byStatus[deviceState];\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { total, ...tieredCounts } = counts;\n const count = Object.values(tieredCounts).reduce((accu, countPerTier) => accu + countPerTier, 0);\n accu[deviceState] = count;\n accu.total = accu.total + count;\n return accu;\n },\n { total: 0 }\n )\n);\n\nexport const getDeviceById = createSelector([getDevicesById, (_, deviceId) => deviceId], (devicesById, deviceId = '') => devicesById[deviceId] ?? {});\n\nexport const getSelectedGroupInfo = createSelector(\n [getDeviceCountsByStatus, getGroupsById, getSelectedGroup],\n ({ accepted: acceptedDeviceTotal }, groupsById, selectedGroup) => {\n let groupCount = acceptedDeviceTotal;\n let groupFilters: DeviceFilter[] = [];\n if (selectedGroup && groupsById[selectedGroup]) {\n groupCount = groupsById[selectedGroup].total || 0;\n groupFilters = groupsById[selectedGroup].filters || [];\n }\n return { groupCount, selectedGroup, groupFilters };\n }\n);\n\nexport const getCombinedLimit = createSelector(\n [getDeviceLimits],\n deviceLimits => Object.values(deviceLimits).reduce((accu, limit) => accu + Math.max(limit ?? 0, 0), 0) // limit might be -1 for unlimited devices\n);\n\nexport const getLimitMaxed = createSelector(\n [getDeviceCountsByStatus, getCombinedLimit],\n ({ accepted: acceptedDevices }, combinedLimit) => !!combinedLimit && combinedLimit <= acceptedDevices\n);\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport const getGroupsByIdWithoutUngrouped = createSelector([getGroupsById], ({ [UNGROUPED_GROUP.id]: ungrouped, ...groups }) => groups);\n\nexport const getGroupData = createSelector([getGroupsByIdWithoutUngrouped], groups => {\n const createdGroup = Object.keys(groups).length ? Object.keys(groups)[0] : undefined;\n const hasDynamicGroups = Object.values(groups).some(group => !!group.id);\n return { createdGroup, hasDynamicGroups, groups };\n});\n\ntype SelectorGroup = DeviceGroup & { groupId: string };\ntype SelectorGroups = { dynamic: SelectorGroup[]; static: SelectorGroup[]; ungrouped: SelectorGroup[] };\n\nexport const getGroups = createSelector([getGroupsById], groupsById => {\n const groupNames = Object.keys(groupsById).sort();\n const groupedGroups = Object.entries(groupsById)\n .sort((a, b) => a[0].localeCompare(b[0]))\n .reduce<SelectorGroups>(\n (accu, [groupname, group]) => {\n const name = groupname === UNGROUPED_GROUP.id ? UNGROUPED_GROUP.name : groupname;\n const groupItem = { ...group, groupId: name, name: groupname };\n if ((group.filters ?? []).length > 0) {\n if (groupname !== UNGROUPED_GROUP.id) {\n accu.dynamic.push(groupItem);\n } else {\n accu.ungrouped.push(groupItem);\n }\n } else {\n accu.static.push(groupItem);\n }\n return accu;\n },\n { dynamic: [], static: [], ungrouped: [] }\n );\n return { groupNames, ...groupedGroups };\n});\nexport const getAttributesList = createSelector(\n [getFilteringAttributes, getFilteringAttributesFromConfig],\n ({ identityAttributes = [], inventoryAttributes = [] }, { identity = [], inventory = [] }) =>\n [...identityAttributes, ...inventoryAttributes, ...identity, ...inventory].filter(duplicateFilter)\n);\nconst getEnabledTierLimits = createSelector([getDeviceLimits], limits => Object.entries(limits).filter(([, limit]) => limit !== 0));\n\nexport const getEnabledTiers = createSelector([getEnabledTierLimits], enabledTierLimits => enabledTierLimits.map(([type]) => type));\n\nexport const getDeviceLimitStats = createSelector([getEnabledTierLimits, getAcceptedDevices], (enabledTierLimits, accepted) => {\n const { counts } = accepted;\n return enabledTierLimits.map(([type, limit]) => ({\n type,\n limit,\n total: counts[type] || 0\n }));\n});\n\nexport const getDeviceTypes = createSelector([getAcceptedDevices, getDevicesById], ({ deviceIds = [] }, devicesById) =>\n Object.keys(\n deviceIds.slice(0, 200).reduce((accu, item) => {\n const { device_type: deviceTypes = [] } = devicesById[item] ? devicesById[item].attributes : {};\n accu = deviceTypes.reduce((deviceTypeAccu, deviceType) => {\n if (deviceType.length > 1) {\n deviceTypeAccu[deviceType] = deviceTypeAccu[deviceType] ? deviceTypeAccu[deviceType] + 1 : 1;\n }\n return deviceTypeAccu;\n }, accu);\n return accu;\n }, {})\n )\n);\n"],"mappings":";;;;AAqBA,MAAa,sBAAsB,UAAqB,MAAM,QAAQ,SAAS;AAC/E,MAAa,sBAAsB,UAAqB,MAAM,QAAQ;AACtE,MAAa,kBAAkB,UAAqB,MAAM,QAAQ;AAClE,MAAa,oBAAoB,UAAqB,MAAM,QAAQ;AACpE,MAAa,iBAAiB,UAAqB,MAAM,QAAQ,OAAO;AACxE,MAAa,oBAAoB,UAAqB,MAAM,QAAQ,OAAO;AAE3E,MAAa,sBAAsB,UAAqB,MAAM,QAAQ;AACtE,MAAa,oBAAoB,UAAqB,MAAM,QAAQ,WAAW;AAC/E,MAAa,0BAA0B,UAAqB,MAAM,QAAQ;AAC1E,MAAa,oBAAoB,UAAqB,MAAM,QAAQ,WAAW,EAAE;AACjF,MAAM,oCAAoC,UAAqB,MAAM,QAAQ,0BAA0B;AACvG,MAAa,+BAA+B,eAAe,CAAC,uBAAuB,GAAE,yBAAwB;CAC3G,GAAG;CACH,oBAAoB,CAAC,GAAG,oBAAoB,oBAAoB,KAAK;CACtE,EAAE;AACH,MAAa,mBAAmB,UAAqB,MAAM,QAAQ;AACnE,MAAM,+BAA+B,UAAqB,MAAM,QAAQ;AAExE,MAAa,8BAA8B,eACzC,CAAC,wBAAwB,4BAA4B,GACpD,EAAE,sBAAsB,6BAA6B;CAGpD,OADmB,mBAAmB,MAAM,GAAG,yBAC9B,CAAC,QACf,MAAM,UAAU;EACf,KAAK,KAAK;GAAE;GAAO,OAAO;GAAO,OAAO;GAAY,CAAC;EACrD,OAAO;IAET,CACE;EAAE,OAAO;EAAQ,OAAO;EAAQ,OAAO;EAAQ,EAC/C;EAAE,OAAO;EAAM,OAAO;EAAa,OAAO;EAAY,CACvD,CACF;EAEJ;AAED,MAAa,0BAA0B,eAAe,CAAC,mBAAmB,GAAE,aAC1E,OAAO,OAAO,cAAc,CAAC,QAC1B,MAAM,gBAAgB;CACrB,MAAM,EAAE,WAAW,SAAS;CAE5B,MAAM,EAAE,OAAO,GAAG,iBAAiB;CACnC,MAAM,QAAQ,OAAO,OAAO,aAAa,CAAC,QAAQ,MAAM,iBAAiB,OAAO,cAAc,EAAE;CAChG,KAAK,eAAe;CACpB,KAAK,QAAQ,KAAK,QAAQ;CAC1B,OAAO;GAET,EAAE,OAAO,GAAG,CACb,CACF;AAED,MAAa,gBAAgB,eAAe,CAAC,iBAAiB,GAAG,aAAa,SAAS,GAAG,aAAa,WAAW,OAAO,YAAY,aAAa,EAAE,CAAC;AAErJ,MAAa,uBAAuB,eAClC;CAAC;CAAyB;CAAe;CAAiB,GACzD,EAAE,UAAU,uBAAuB,YAAY,kBAAkB;CAChE,IAAI,aAAa;CACjB,IAAI,eAA+B,EAAE;CACrC,IAAI,iBAAiB,WAAW,gBAAgB;EAC9C,aAAa,WAAW,eAAe,SAAS;EAChD,eAAe,WAAW,eAAe,WAAW,EAAE;;CAExD,OAAO;EAAE;EAAY;EAAe;EAAc;EAErD;AAED,MAAa,mBAAmB,eAC9B,CAAC,gBAAgB,GACjB,iBAAgB,OAAO,OAAO,aAAa,CAAC,QAAQ,MAAM,UAAU,OAAO,KAAK,IAAI,SAAS,GAAG,EAAE,EAAE,EAAE,CACvG;AAED,MAAa,gBAAgB,eAC3B,CAAC,yBAAyB,iBAAiB,GAC1C,EAAE,UAAU,mBAAmB,kBAAkB,CAAC,CAAC,iBAAiB,iBAAiB,gBACvF;AAGD,MAAa,gCAAgC,eAAe,CAAC,cAAc,GAAG,GAAG,gBAAgB,KAAK,WAAW,GAAG,aAAa,OAAO;AAExI,MAAa,eAAe,eAAe,CAAC,8BAA8B,GAAE,WAAU;CAGpF,OAAO;EAAE,cAFY,OAAO,KAAK,OAAO,CAAC,SAAS,OAAO,KAAK,OAAO,CAAC,KAAK,KAAA;EAEpD,kBADE,OAAO,OAAO,OAAO,CAAC,MAAK,UAAS,CAAC,CAAC,MAAM,GAC9B;EAAE;EAAQ;EACjD;AAKF,MAAa,YAAY,eAAe,CAAC,cAAc,GAAE,eAAc;CAqBrE,OAAO;EAAE,YApBU,OAAO,KAAK,WAAW,CAAC,MAoBxB;EAAE,GAnBC,OAAO,QAAQ,WAAW,CAC7C,MAAM,GAAG,MAAM,EAAE,GAAG,cAAc,EAAE,GAAG,CAAC,CACxC,QACE,MAAM,CAAC,WAAW,WAAW;GAC5B,MAAM,OAAO,cAAc,gBAAgB,KAAK,gBAAgB,OAAO;GACvE,MAAM,YAAY;IAAE,GAAG;IAAO,SAAS;IAAM,MAAM;IAAW;GAC9D,KAAK,MAAM,WAAW,EAAE,EAAE,SAAS,GACjC,IAAI,cAAc,gBAAgB,IAChC,KAAK,QAAQ,KAAK,UAAU;QAE5B,KAAK,UAAU,KAAK,UAAU;QAGhC,KAAK,OAAO,KAAK,UAAU;GAE7B,OAAO;KAET;GAAE,SAAS,EAAE;GAAE,QAAQ,EAAE;GAAE,WAAW,EAAE;GAAE,CAET;EAAE;EACvC;AACF,MAAa,oBAAoB,eAC/B,CAAC,wBAAwB,iCAAiC,GACzD,EAAE,qBAAqB,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,YAAY,EAAE,OACrF;CAAC,GAAG;CAAoB,GAAG;CAAqB,GAAG;CAAU,GAAG;CAAU,CAAC,OAAO,gBAAgB,CACrG;AACD,MAAM,uBAAuB,eAAe,CAAC,gBAAgB,GAAE,WAAU,OAAO,QAAQ,OAAO,CAAC,QAAQ,GAAG,WAAW,UAAU,EAAE,CAAC;AAEnI,MAAa,kBAAkB,eAAe,CAAC,qBAAqB,GAAE,sBAAqB,kBAAkB,KAAK,CAAC,UAAU,KAAK,CAAC;AAEnI,MAAa,sBAAsB,eAAe,CAAC,sBAAsB,mBAAmB,GAAG,mBAAmB,aAAa;CAC7H,MAAM,EAAE,WAAW;CACnB,OAAO,kBAAkB,KAAK,CAAC,MAAM,YAAY;EAC/C;EACA;EACA,OAAO,OAAO,SAAS;EACxB,EAAE;EACH;AAEF,MAAa,iBAAiB,eAAe,CAAC,oBAAoB,eAAe,GAAG,EAAE,YAAY,EAAE,IAAI,gBACtG,OAAO,KACL,UAAU,MAAM,GAAG,IAAI,CAAC,QAAQ,MAAM,SAAS;CAC7C,MAAM,EAAE,aAAa,cAAc,EAAE,KAAK,YAAY,QAAQ,YAAY,MAAM,aAAa,EAAE;CAC/F,OAAO,YAAY,QAAQ,gBAAgB,eAAe;EACxD,IAAI,WAAW,SAAS,GACtB,eAAe,cAAc,eAAe,cAAc,eAAe,cAAc,IAAI;EAE7F,OAAO;IACN,KAAK;CACR,OAAO;GACN,EAAE,CAAC,CACP,CACF"}
|
|
1
|
+
{"version":3,"file":"selectors.js","names":[],"sources":["../../src/devicesSlice/selectors.ts"],"sourcesContent":["// Copyright 2023 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { duplicateFilter } from '@northern.tech/utils/helpers';\nimport { createSelector } from '@reduxjs/toolkit';\n\nimport type { DeviceFilter, DeviceGroup } from '.';\nimport type { DeviceAuthState } from '../constants';\nimport { DEVICE_STATES, UNGROUPED_GROUP } from '../constants';\nimport type { RootState } from '../store';\n\nexport const getAcceptedDevices = (state: RootState) => state.devices.byStatus.accepted;\nexport const getDevicesByStatus = (state: RootState) => state.devices.byStatus;\nexport const getDevicesById = (state: RootState) => state.devices.byId;\nexport const getDeviceReports = (state: RootState) => state.devices.reports;\nexport const getGroupsById = (state: RootState) => state.devices.groups.byId;\nexport const getSelectedGroup = (state: RootState) => state.devices.groups.selectedGroup;\n\nexport const getDeviceListState = (state: RootState) => state.devices.deviceList;\nexport const getListedDevices = (state: RootState) => state.devices.deviceList.deviceIds;\nexport const getFilteringAttributes = (state: RootState) => state.devices.filteringAttributes;\nexport const getDeviceFilters = (state: RootState) => state.devices.filters || [];\nconst getFilteringAttributesFromConfig = (state: RootState) => state.devices.filteringAttributesConfig.attributes;\nexport const getSortedFilteringAttributes = createSelector([getFilteringAttributes], filteringAttributes => ({\n ...filteringAttributes,\n identityAttributes: [...filteringAttributes.identityAttributes, 'id']\n}));\nexport const getDeviceLimits = (state: RootState) => state.devices.limits;\nconst getFilteringAttributesLimit = (state: RootState) => state.devices.filteringAttributesLimit;\n\nexport const getDeviceIdentityAttributes = createSelector(\n [getFilteringAttributes, getFilteringAttributesLimit],\n ({ identityAttributes }, filteringAttributesLimit) => {\n // limit the selection of the available attribute to AVAILABLE_ATTRIBUTE_LIMIT\n const attributes = identityAttributes.slice(0, filteringAttributesLimit);\n return attributes.reduce(\n (accu, value) => {\n accu.push({ value, label: value, scope: 'identity' });\n return accu;\n },\n [\n { value: 'name', label: 'Name', scope: 'tags' },\n { value: 'id', label: 'Device ID', scope: 'identity' }\n ]\n );\n }\n);\n\nexport const getDeviceCountsByStatus = createSelector([getDevicesByStatus], byStatus =>\n Object.values(DEVICE_STATES).reduce<Record<DeviceAuthState, number>>(\n (accu, deviceState) => {\n const { counts } = byStatus[deviceState];\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { total, ...tieredCounts } = counts;\n const count = Object.values(tieredCounts).reduce((accu, countPerTier) => accu + countPerTier, 0);\n accu[deviceState] = count;\n accu.total = accu.total + count;\n return accu;\n },\n { total: 0 }\n )\n);\n\nexport const getDeviceById = createSelector([getDevicesById, (_, deviceId) => deviceId], (devicesById, deviceId = '') => devicesById[deviceId] ?? {});\n\nexport const getSelectedGroupInfo = createSelector(\n [getDeviceCountsByStatus, getGroupsById, getSelectedGroup],\n ({ accepted: acceptedDeviceTotal }, groupsById, selectedGroup) => {\n let groupCount = acceptedDeviceTotal;\n let groupFilters: DeviceFilter[] = [];\n if (selectedGroup && groupsById[selectedGroup]) {\n groupCount = groupsById[selectedGroup].total || 0;\n groupFilters = groupsById[selectedGroup].filters || [];\n }\n return { groupCount, selectedGroup, groupFilters };\n }\n);\n\nexport const getCombinedLimit = createSelector(\n [getDeviceLimits],\n deviceLimits => Object.values(deviceLimits).reduce((accu, limit) => accu + Math.max(limit ?? 0, 0), 0) // limit might be -1 for unlimited devices\n);\n\nexport const getLimitMaxed = createSelector(\n [getDeviceCountsByStatus, getCombinedLimit],\n ({ accepted: acceptedDevices }, combinedLimit) => !!combinedLimit && combinedLimit <= acceptedDevices\n);\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport const getGroupsByIdWithoutUngrouped = createSelector([getGroupsById], ({ [UNGROUPED_GROUP.id]: ungrouped, ...groups }) => groups);\n\nexport const getGroupData = createSelector([getGroupsByIdWithoutUngrouped], groups => {\n const createdGroup = Object.keys(groups).length ? Object.keys(groups)[0] : undefined;\n const hasDynamicGroups = Object.values(groups).some(group => !!group.id);\n return { createdGroup, hasDynamicGroups, groups };\n});\n\ntype SelectorGroup = DeviceGroup & { groupId: string };\ntype SelectorGroups = { dynamic: SelectorGroup[]; static: SelectorGroup[]; ungrouped: SelectorGroup[] };\n\nexport const getGroups = createSelector([getGroupsById], groupsById => {\n const groupNames = Object.keys(groupsById).sort();\n const groupedGroups = Object.entries(groupsById)\n .sort((a, b) => a[0].localeCompare(b[0]))\n .reduce<SelectorGroups>(\n (accu, [groupname, group]) => {\n const name = groupname === UNGROUPED_GROUP.id ? UNGROUPED_GROUP.name : groupname;\n const groupItem = { ...group, groupId: name, name: groupname };\n if ((group.filters ?? []).length > 0) {\n if (groupname !== UNGROUPED_GROUP.id) {\n accu.dynamic.push(groupItem);\n } else {\n accu.ungrouped.push(groupItem);\n }\n } else {\n accu.static.push(groupItem);\n }\n return accu;\n },\n { dynamic: [], static: [], ungrouped: [] }\n );\n return { groupNames, ...groupedGroups };\n});\nexport const getAttributesList = createSelector(\n [getFilteringAttributes, getFilteringAttributesFromConfig],\n ({ identityAttributes = [], inventoryAttributes = [] }, { identity = [], inventory = [] }) =>\n [...identityAttributes, ...inventoryAttributes, ...identity, ...inventory].filter(duplicateFilter)\n);\nconst getEnabledTierLimits = createSelector([getDeviceLimits], limits => Object.entries(limits).filter(([, limit]) => limit !== 0));\n\nexport const getEnabledTiers = createSelector([getEnabledTierLimits], enabledTierLimits => enabledTierLimits.map(([type]) => type));\n\nexport const getDeviceLimitStats = createSelector([getEnabledTierLimits, getAcceptedDevices], (enabledTierLimits, accepted) => {\n const { counts } = accepted;\n return enabledTierLimits.map(([type, limit]) => ({\n type,\n limit,\n total: counts[type] || 0\n }));\n});\n\nexport const getDeviceTypes = createSelector([getAcceptedDevices, getDevicesById], ({ deviceIds = [] }, devicesById) =>\n Object.keys(\n deviceIds.slice(0, 200).reduce((accu, item) => {\n const { device_type: deviceTypes = [] } = devicesById[item] ? devicesById[item].attributes : {};\n accu = deviceTypes.reduce((deviceTypeAccu, deviceType) => {\n if (deviceType.length > 1) {\n deviceTypeAccu[deviceType] = deviceTypeAccu[deviceType] ? deviceTypeAccu[deviceType] + 1 : 1;\n }\n return deviceTypeAccu;\n }, accu);\n return accu;\n }, {})\n )\n);\n"],"mappings":"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"}
|