@northern.tech/store 0.5.3 → 0.7.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 (233) hide show
  1. package/dist/actions.cjs.map +1 -1
  2. package/dist/actions.d.cts +8 -13
  3. package/dist/actions.d.ts +8 -13
  4. package/dist/actions.js +11 -11
  5. package/dist/api/general-api.cjs +4 -5
  6. package/dist/api/general-api.cjs.map +1 -1
  7. package/dist/api/general-api.js +5 -5
  8. package/dist/api/users-api.cjs +4 -5
  9. package/dist/api/users-api.cjs.map +1 -1
  10. package/dist/api/users-api.js +6 -6
  11. package/dist/appSlice/constants.cjs +1 -1
  12. package/dist/appSlice/constants.cjs.map +1 -1
  13. package/dist/appSlice/constants.d.cts +1 -1
  14. package/dist/appSlice/constants.d.ts +1 -1
  15. package/dist/appSlice/constants.js +1 -1
  16. package/dist/appSlice/index.js +4 -4
  17. package/dist/appSlice/mocks.js +4 -4
  18. package/dist/appSlice/selectors.d.cts +9 -9
  19. package/dist/appSlice/selectors.d.ts +9 -9
  20. package/dist/appSlice/thunks.cjs +8 -7
  21. package/dist/appSlice/thunks.cjs.map +1 -1
  22. package/dist/appSlice/thunks.d.cts +1 -1
  23. package/dist/appSlice/thunks.d.ts +1 -1
  24. package/dist/appSlice/thunks.js +27 -27
  25. package/dist/auth.cjs +4 -5
  26. package/dist/auth.cjs.map +1 -1
  27. package/dist/auth.js +4 -4
  28. package/dist/{chunk-CEEXZF5E.js → chunk-2TYNHR66.js} +3 -3
  29. package/dist/chunk-2TYNHR66.js.map +1 -0
  30. package/dist/{chunk-W37ETKI6.js → chunk-3NOV7X4M.js} +2 -2
  31. package/dist/{chunk-HLTP624H.js → chunk-53W2NRSL.js} +2 -2
  32. package/dist/{chunk-BNSSPYCA.js → chunk-5M6EUVNO.js} +3 -3
  33. package/dist/{chunk-5HYHE4HO.js → chunk-C2LGE3P6.js} +2 -2
  34. package/dist/chunk-C2LGE3P6.js.map +1 -0
  35. package/dist/{chunk-CWZKWW74.js → chunk-CKF76YO4.js} +2 -2
  36. package/dist/{chunk-66NK2ZV2.js → chunk-FDSMCFV5.js} +2 -2
  37. package/dist/{chunk-JOK26PI7.js → chunk-FEMN36LQ.js} +17 -16
  38. package/dist/chunk-FEMN36LQ.js.map +1 -0
  39. package/dist/{chunk-KGSJ7CSA.js → chunk-H5YHKATI.js} +2 -2
  40. package/dist/chunk-H5YHKATI.js.map +1 -0
  41. package/dist/{chunk-AVCIWAZB.js → chunk-HLX5L3IM.js} +2 -2
  42. package/dist/{chunk-IY76MO6R.js → chunk-KQ6AGXRK.js} +2 -2
  43. package/dist/chunk-KQ6AGXRK.js.map +1 -0
  44. package/dist/{chunk-DYN7AU7R.js → chunk-KT7G4TSF.js} +11 -11
  45. package/dist/{chunk-PY6ID7TL.js → chunk-N3XU7WJM.js} +2 -2
  46. package/dist/chunk-N3XU7WJM.js.map +1 -0
  47. package/dist/{chunk-DXJ2WS3N.js → chunk-OFGCC3GM.js} +2 -2
  48. package/dist/{chunk-4DOSYAJY.js → chunk-QOFVCPRW.js} +2 -2
  49. package/dist/{chunk-I6JE3OLT.js → chunk-QYIBYU3O.js} +13 -13
  50. package/dist/{chunk-J74LNK6P.js → chunk-S22YDI7V.js} +17 -17
  51. package/dist/{chunk-VCTZ25Q5.js → chunk-TR7KJWVG.js} +18 -18
  52. package/dist/{chunk-KJJ47UIO.js → chunk-TRKA7XYU.js} +2 -2
  53. package/dist/chunk-TRKA7XYU.js.map +1 -0
  54. package/dist/{chunk-DE25YP6N.js → chunk-U5QRV6YB.js} +39 -38
  55. package/dist/chunk-U5QRV6YB.js.map +1 -0
  56. package/dist/{chunk-JZXNRDO2.js → chunk-UVYRVFZX.js} +2 -2
  57. package/dist/{chunk-GRVTVLIZ.js → chunk-WR6RQKF5.js} +2 -2
  58. package/dist/{chunk-MRXTMI6O.js → chunk-WWED74SG.js} +5 -6
  59. package/dist/chunk-WWED74SG.js.map +1 -0
  60. package/dist/{chunk-ZZ3YDCYZ.js → chunk-Y3DJIMEN.js} +3 -3
  61. package/dist/{chunk-4UJXT6RF.js → chunk-Z5TDXPYZ.js} +6 -4
  62. package/dist/chunk-Z5TDXPYZ.js.map +1 -0
  63. package/dist/commonConstants.cjs +4 -5
  64. package/dist/commonConstants.cjs.map +1 -1
  65. package/dist/commonConstants.d.cts +8 -8
  66. package/dist/commonConstants.d.ts +8 -8
  67. package/dist/commonConstants.js +3 -3
  68. package/dist/commonSelectors.cjs +6 -7
  69. package/dist/commonSelectors.cjs.map +1 -1
  70. package/dist/commonSelectors.d.cts +127 -138
  71. package/dist/commonSelectors.d.ts +127 -138
  72. package/dist/commonSelectors.js +11 -11
  73. package/dist/constants.cjs +5 -6
  74. package/dist/constants.cjs.map +1 -1
  75. package/dist/constants.js +6 -6
  76. package/dist/deploymentsSlice/constants.js +3 -3
  77. package/dist/deploymentsSlice/index.cjs.map +1 -1
  78. package/dist/deploymentsSlice/index.d.cts +5 -4
  79. package/dist/deploymentsSlice/index.d.ts +5 -4
  80. package/dist/deploymentsSlice/index.js +4 -4
  81. package/dist/deploymentsSlice/mocks.cjs.map +1 -1
  82. package/dist/deploymentsSlice/mocks.js +4 -4
  83. package/dist/deploymentsSlice/selectors.d.cts +3 -3
  84. package/dist/deploymentsSlice/selectors.d.ts +3 -3
  85. package/dist/deploymentsSlice/selectors.js +4 -4
  86. package/dist/deploymentsSlice/thunks.cjs +8 -7
  87. package/dist/deploymentsSlice/thunks.cjs.map +1 -1
  88. package/dist/deploymentsSlice/thunks.d.cts +3 -3
  89. package/dist/deploymentsSlice/thunks.d.ts +3 -3
  90. package/dist/deploymentsSlice/thunks.js +27 -27
  91. package/dist/devicesSlice/constants.js +3 -3
  92. package/dist/devicesSlice/index.cjs.map +1 -1
  93. package/dist/devicesSlice/index.d.cts +4 -4
  94. package/dist/devicesSlice/index.d.ts +4 -4
  95. package/dist/devicesSlice/index.js +4 -4
  96. package/dist/devicesSlice/mocks.cjs +4 -4
  97. package/dist/devicesSlice/mocks.cjs.map +1 -1
  98. package/dist/devicesSlice/mocks.js +8 -8
  99. package/dist/devicesSlice/mocks.js.map +1 -1
  100. package/dist/devicesSlice/selectors.cjs +4 -5
  101. package/dist/devicesSlice/selectors.cjs.map +1 -1
  102. package/dist/devicesSlice/selectors.d.cts +23 -23
  103. package/dist/devicesSlice/selectors.d.ts +23 -23
  104. package/dist/devicesSlice/selectors.js +4 -4
  105. package/dist/devicesSlice/thunks.cjs +8 -7
  106. package/dist/devicesSlice/thunks.cjs.map +1 -1
  107. package/dist/devicesSlice/thunks.d.cts +5 -5
  108. package/dist/devicesSlice/thunks.d.ts +5 -5
  109. package/dist/devicesSlice/thunks.js +27 -27
  110. package/dist/liststatehook.cjs +4 -5
  111. package/dist/liststatehook.cjs.map +1 -1
  112. package/dist/liststatehook.js +4 -4
  113. package/dist/locationutils.cjs +4 -5
  114. package/dist/locationutils.cjs.map +1 -1
  115. package/dist/locationutils.js +4 -4
  116. package/dist/monitorSlice/index.js +4 -4
  117. package/dist/monitorSlice/mocks.js +4 -4
  118. package/dist/monitorSlice/thunks.cjs +6 -7
  119. package/dist/monitorSlice/thunks.cjs.map +1 -1
  120. package/dist/monitorSlice/thunks.d.cts +1 -1
  121. package/dist/monitorSlice/thunks.d.ts +1 -1
  122. package/dist/monitorSlice/thunks.js +23 -23
  123. package/dist/onboardingSlice/thunks.cjs +8 -7
  124. package/dist/onboardingSlice/thunks.cjs.map +1 -1
  125. package/dist/onboardingSlice/thunks.d.cts +1 -1
  126. package/dist/onboardingSlice/thunks.d.ts +1 -1
  127. package/dist/onboardingSlice/thunks.js +27 -27
  128. package/dist/organizationSlice/constants.js +3 -3
  129. package/dist/organizationSlice/index.js +4 -4
  130. package/dist/organizationSlice/mocks.d.cts +2 -2
  131. package/dist/organizationSlice/mocks.d.ts +2 -2
  132. package/dist/organizationSlice/mocks.js +4 -4
  133. package/dist/organizationSlice/selectors.cjs +4 -5
  134. package/dist/organizationSlice/selectors.cjs.map +1 -1
  135. package/dist/organizationSlice/selectors.d.cts +44 -48
  136. package/dist/organizationSlice/selectors.d.ts +44 -48
  137. package/dist/organizationSlice/selectors.js +4 -4
  138. package/dist/organizationSlice/thunks.cjs +10 -10
  139. package/dist/organizationSlice/thunks.cjs.map +1 -1
  140. package/dist/organizationSlice/thunks.d.cts +1 -1
  141. package/dist/organizationSlice/thunks.d.ts +1 -1
  142. package/dist/organizationSlice/thunks.js +27 -27
  143. package/dist/organizationSlice/types.cjs.map +1 -1
  144. package/dist/organizationSlice/types.d.cts +8 -30
  145. package/dist/organizationSlice/types.d.ts +8 -30
  146. package/dist/releasesSlice/index.cjs.map +1 -1
  147. package/dist/releasesSlice/index.d.cts +6 -3
  148. package/dist/releasesSlice/index.d.ts +6 -3
  149. package/dist/releasesSlice/index.js +4 -4
  150. package/dist/releasesSlice/mocks.cjs.map +1 -1
  151. package/dist/releasesSlice/mocks.d.cts +2 -3
  152. package/dist/releasesSlice/mocks.d.ts +2 -3
  153. package/dist/releasesSlice/mocks.js +4 -4
  154. package/dist/releasesSlice/selectors.cjs +4 -5
  155. package/dist/releasesSlice/selectors.cjs.map +1 -1
  156. package/dist/releasesSlice/selectors.d.cts +39 -41
  157. package/dist/releasesSlice/selectors.d.ts +39 -41
  158. package/dist/releasesSlice/selectors.js +5 -5
  159. package/dist/releasesSlice/thunks.cjs +11 -11
  160. package/dist/releasesSlice/thunks.cjs.map +1 -1
  161. package/dist/releasesSlice/thunks.d.cts +3 -3
  162. package/dist/releasesSlice/thunks.d.ts +3 -3
  163. package/dist/releasesSlice/thunks.js +24 -24
  164. package/dist/selectors.cjs +10 -8
  165. package/dist/selectors.cjs.map +1 -1
  166. package/dist/selectors.d.cts +2 -18
  167. package/dist/selectors.d.ts +2 -18
  168. package/dist/selectors.js +26 -24
  169. package/dist/sockethook.cjs +4 -5
  170. package/dist/sockethook.cjs.map +1 -1
  171. package/dist/sockethook.js +3 -3
  172. package/dist/store.cjs.map +1 -1
  173. package/dist/store.d.cts +11 -11
  174. package/dist/store.d.ts +11 -11
  175. package/dist/store.js +13 -13
  176. package/dist/storehooks.cjs +15 -14
  177. package/dist/storehooks.cjs.map +1 -1
  178. package/dist/storehooks.js +28 -28
  179. package/dist/thunks.cjs +15 -14
  180. package/dist/thunks.cjs.map +1 -1
  181. package/dist/thunks.d.cts +1 -1
  182. package/dist/thunks.d.ts +1 -1
  183. package/dist/thunks.js +27 -27
  184. package/dist/useDeploymentDevice.cjs +8 -7
  185. package/dist/useDeploymentDevice.cjs.map +1 -1
  186. package/dist/useDeploymentDevice.js +27 -27
  187. package/dist/usersSlice/constants.js +3 -3
  188. package/dist/usersSlice/index.js +4 -4
  189. package/dist/usersSlice/mocks.cjs +1 -0
  190. package/dist/usersSlice/mocks.cjs.map +1 -1
  191. package/dist/usersSlice/mocks.d.cts +3 -3
  192. package/dist/usersSlice/mocks.d.ts +3 -3
  193. package/dist/usersSlice/mocks.js +5 -4
  194. package/dist/usersSlice/mocks.js.map +1 -1
  195. package/dist/usersSlice/selectors.cjs +8 -6
  196. package/dist/usersSlice/selectors.cjs.map +1 -1
  197. package/dist/usersSlice/selectors.d.cts +33 -34
  198. package/dist/usersSlice/selectors.d.ts +33 -34
  199. package/dist/usersSlice/selectors.js +7 -5
  200. package/dist/usersSlice/thunks.cjs +8 -7
  201. package/dist/usersSlice/thunks.cjs.map +1 -1
  202. package/dist/usersSlice/thunks.d.cts +1 -1
  203. package/dist/usersSlice/thunks.d.ts +1 -1
  204. package/dist/usersSlice/thunks.js +27 -27
  205. package/dist/utils.cjs +4 -5
  206. package/dist/utils.cjs.map +1 -1
  207. package/dist/utils.js +4 -4
  208. package/package.json +1 -1
  209. package/dist/chunk-4UJXT6RF.js.map +0 -1
  210. package/dist/chunk-5HYHE4HO.js.map +0 -1
  211. package/dist/chunk-CEEXZF5E.js.map +0 -1
  212. package/dist/chunk-DE25YP6N.js.map +0 -1
  213. package/dist/chunk-IY76MO6R.js.map +0 -1
  214. package/dist/chunk-JOK26PI7.js.map +0 -1
  215. package/dist/chunk-KGSJ7CSA.js.map +0 -1
  216. package/dist/chunk-KJJ47UIO.js.map +0 -1
  217. package/dist/chunk-MRXTMI6O.js.map +0 -1
  218. package/dist/chunk-PY6ID7TL.js.map +0 -1
  219. /package/dist/{chunk-W37ETKI6.js.map → chunk-3NOV7X4M.js.map} +0 -0
  220. /package/dist/{chunk-HLTP624H.js.map → chunk-53W2NRSL.js.map} +0 -0
  221. /package/dist/{chunk-BNSSPYCA.js.map → chunk-5M6EUVNO.js.map} +0 -0
  222. /package/dist/{chunk-CWZKWW74.js.map → chunk-CKF76YO4.js.map} +0 -0
  223. /package/dist/{chunk-66NK2ZV2.js.map → chunk-FDSMCFV5.js.map} +0 -0
  224. /package/dist/{chunk-AVCIWAZB.js.map → chunk-HLX5L3IM.js.map} +0 -0
  225. /package/dist/{chunk-DYN7AU7R.js.map → chunk-KT7G4TSF.js.map} +0 -0
  226. /package/dist/{chunk-DXJ2WS3N.js.map → chunk-OFGCC3GM.js.map} +0 -0
  227. /package/dist/{chunk-4DOSYAJY.js.map → chunk-QOFVCPRW.js.map} +0 -0
  228. /package/dist/{chunk-I6JE3OLT.js.map → chunk-QYIBYU3O.js.map} +0 -0
  229. /package/dist/{chunk-J74LNK6P.js.map → chunk-S22YDI7V.js.map} +0 -0
  230. /package/dist/{chunk-VCTZ25Q5.js.map → chunk-TR7KJWVG.js.map} +0 -0
  231. /package/dist/{chunk-JZXNRDO2.js.map → chunk-UVYRVFZX.js.map} +0 -0
  232. /package/dist/{chunk-GRVTVLIZ.js.map → chunk-WR6RQKF5.js.map} +0 -0
  233. /package/dist/{chunk-ZZ3YDCYZ.js.map → chunk-Y3DJIMEN.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/releasesSlice/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 type { ReleaseV2 } from '@northern.tech/types/MenderTypes';\nimport { createSelector } from '@reduxjs/toolkit';\n\nimport type { RootState } from '../store';\nimport { listItemMapper } from '../utils';\n\nconst getSelectedReleaseId = (state: RootState) => state.releases.selectedRelease;\nexport const getReleasesById = (state: RootState) => state.releases.byId;\nexport const getReleaseTags = (state: RootState) => state.releases.tags;\nexport const getReleaseListState = (state: RootState) => state.releases.releasesList;\nconst getListedReleases = (state: RootState) => state.releases.releasesList.releaseIds;\nexport const getUpdateTypes = (state: RootState) => state.releases.updateTypes;\nconst releaseDefaults = {};\nconst getReleaseMappingDefaults = () => releaseDefaults;\nexport const getReleasesList = createSelector([getReleasesById, getListedReleases, getReleaseMappingDefaults], listItemMapper<ReleaseV2>);\n\nexport const getReleaseTagsById = createSelector([getReleaseTags], releaseTags => releaseTags.reduce((accu, key) => ({ ...accu, [key]: key }), {}));\nexport const getHasReleases = createSelector(\n [getReleaseListState, getReleasesById],\n ({ searchTotal, total }, byId) => !!(Object.keys(byId).length || total || searchTotal)\n);\n\nexport const getSelectedRelease = createSelector([getReleasesById, getSelectedReleaseId], (byId, id) => byId[id || ''] ?? {});\n\nexport const getSelectedReleases = createSelector([getReleaseListState, getReleasesList], ({ selection }, releases) => selection.map(index => releases[index]));\n\nexport const getDeltaJobsListState = (state: RootState) => state.releases.deltaJobsList;\nexport const getDeltaJobsById = (state: RootState) => state.releases.deltaJobs;\nexport const getDeltaJobById = createSelector([getDeltaJobsById, (_, jobId) => jobId], (byId, jobId: string) => byId[jobId]);\nconst getSelectedJobId = (state: RootState) => state.releases.selectedJob;\nexport const getSelectedJob = createSelector([getDeltaJobsById, getSelectedJobId], (byId, jobId) => byId[jobId || '']);\n"],"mappings":";;;;;AAcA,SAAS,sBAAsB;AAK/B,IAAM,uBAAuB,CAAC,UAAqB,MAAM,SAAS;AAC3D,IAAM,kBAAkB,CAAC,UAAqB,MAAM,SAAS;AAC7D,IAAM,iBAAiB,CAAC,UAAqB,MAAM,SAAS;AAC5D,IAAM,sBAAsB,CAAC,UAAqB,MAAM,SAAS;AACxE,IAAM,oBAAoB,CAAC,UAAqB,MAAM,SAAS,aAAa;AACrE,IAAM,iBAAiB,CAAC,UAAqB,MAAM,SAAS;AACnE,IAAM,kBAAkB,CAAC;AACzB,IAAM,4BAA4B,MAAM;AACjC,IAAM,kBAAkB,eAAe,CAAC,iBAAiB,mBAAmB,yBAAyB,GAAG,cAAyB;AAEjI,IAAM,qBAAqB,eAAe,CAAC,cAAc,GAAG,iBAAe,YAAY,OAAO,CAAC,MAAM,SAAS,EAAE,GAAG,MAAM,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC;AAC3I,IAAM,iBAAiB;AAAA,EAC5B,CAAC,qBAAqB,eAAe;AAAA,EACrC,CAAC,EAAE,aAAa,MAAM,GAAG,SAAS,CAAC,EAAE,OAAO,KAAK,IAAI,EAAE,UAAU,SAAS;AAC5E;AAEO,IAAM,qBAAqB,eAAe,CAAC,iBAAiB,oBAAoB,GAAG,CAAC,MAAM,OAAO,KAAK,MAAM,EAAE,KAAK,CAAC,CAAC;AAErH,IAAM,sBAAsB,eAAe,CAAC,qBAAqB,eAAe,GAAG,CAAC,EAAE,UAAU,GAAG,aAAa,UAAU,IAAI,WAAS,SAAS,KAAK,CAAC,CAAC;AAEvJ,IAAM,wBAAwB,CAAC,UAAqB,MAAM,SAAS;AACnE,IAAM,mBAAmB,CAAC,UAAqB,MAAM,SAAS;AAC9D,IAAM,kBAAkB,eAAe,CAAC,kBAAkB,CAAC,GAAG,UAAU,KAAK,GAAG,CAAC,MAAM,UAAkB,KAAK,KAAK,CAAC;AAC3H,IAAM,mBAAmB,CAAC,UAAqB,MAAM,SAAS;AACvD,IAAM,iBAAiB,eAAe,CAAC,kBAAkB,gBAAgB,GAAG,CAAC,MAAM,UAAU,KAAK,SAAS,EAAE,CAAC;","names":[]}
@@ -2,7 +2,7 @@ import {
2
2
  DEVICE_ISSUE_OPTIONS,
3
3
  DEVICE_LIST_DEFAULTS,
4
4
  alertChannels
5
- } from "./chunk-MRXTMI6O.js";
5
+ } from "./chunk-WWED74SG.js";
6
6
 
7
7
  // src/monitorSlice/index.ts
8
8
  import { createSlice } from "@reduxjs/toolkit";
@@ -58,4 +58,4 @@ export {
58
58
  actions,
59
59
  monitorSlice_default
60
60
  };
61
- //# sourceMappingURL=chunk-AVCIWAZB.js.map
61
+ //# sourceMappingURL=chunk-HLX5L3IM.js.map
@@ -2,7 +2,7 @@ import {
2
2
  DEVICE_LIST_DEFAULTS,
3
3
  DEVICE_STATES,
4
4
  SORTING_OPTIONS
5
- } from "./chunk-MRXTMI6O.js";
5
+ } from "./chunk-WWED74SG.js";
6
6
 
7
7
  // src/devicesSlice/index.ts
8
8
  import { deepCompare, duplicateFilter } from "@northern.tech/utils/helpers";
@@ -193,4 +193,4 @@ export {
193
193
  actions,
194
194
  devicesSlice_default
195
195
  };
196
- //# sourceMappingURL=chunk-IY76MO6R.js.map
196
+ //# sourceMappingURL=chunk-KQ6AGXRK.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/devicesSlice/index.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 type {\n Device as BackendDeviceAuth,\n ConnectionState,\n DeviceConfiguration,\n DeviceState,\n MonitorConfiguration,\n SortCriteria,\n Status\n} from '@northern.tech/types/MenderTypes';\n// @ts-nocheck\nimport { deepCompare, duplicateFilter } from '@northern.tech/utils/helpers';\nimport type { PayloadAction } from '@reduxjs/toolkit';\nimport { createSlice } from '@reduxjs/toolkit';\n\nimport type { ALL_DEVICE_STATES, DeviceIssueOptionKey, FilterOperator, SortOptions } from '../constants';\nimport { DEVICE_LIST_DEFAULTS, DEVICE_STATES, SORTING_OPTIONS } from '../constants';\nimport type { DeviceDeployment } from '../deploymentsSlice';\nimport type { DeviceAuthState } from './constants';\n\nexport const sliceName = 'devices';\nexport type DeviceSelectedAttribute = { attribute: string; scope: string };\nexport type DeviceListState = {\n detailsTab: string;\n deviceIds: string[];\n isLoading: boolean;\n open?: boolean;\n page: number;\n perPage: number;\n refreshTrigger: boolean;\n selectedAttributes: DeviceSelectedAttribute[];\n selectedId?: string;\n selectedIssues: DeviceIssueOptionKey[];\n selection: number[];\n setOnly?: boolean;\n sort: SortOptions & Partial<SortCriteria>;\n state?: DeviceAuthState | typeof ALL_DEVICE_STATES;\n total: number;\n};\ntype DeviceReport = {\n items: { count: number; key: string }[];\n otherCount: number;\n total: number;\n};\nexport type DeviceGroup = { deviceIds?: string[]; filters?: DeviceFilter[]; id?: string; total?: number };\nexport type InventoryAttributes = {\n [key: string]: string | string[];\n artifact_name: string;\n device_type: string[];\n};\n\n// based on the api docs the Record values might be even: \"Supported types: number, string, array of numbers, array of strings\" - but I guess \"string\" or \"string | sting[]\" should be good enough\ntype UiDeviceAttributes = {\n attributes: InventoryAttributes;\n identity?: Record<string, string>;\n monitor?: Record<string, string>;\n system: Record<string, string>;\n tags?: Record<string, string>;\n};\n\nexport type Device = BackendDeviceAuth &\n UiDeviceAttributes & {\n check_in_time_exact?: string;\n check_in_time_rounded?: string;\n config?: DeviceConfiguration;\n connect_status?: ConnectionState['status'];\n connect_updated_ts?: string;\n deploymentsCount?: number;\n deviceDeployments?: DeviceDeployment;\n etag?: string;\n gatewayIds?: string[];\n group?: string;\n id: string;\n isNew?: boolean;\n isOffline?: boolean;\n monitors?: MonitorConfiguration[];\n status: Status;\n twinsByIntegration?: Record<string, DeviceState & { twinError?: string }>;\n };\nexport type DeviceFilter = {\n key: string;\n operator: FilterOperator;\n scope: string;\n value: string | string[];\n};\ntype FilteringAttributes = {\n identityAttributes: string[];\n inventoryAttributes: string[];\n systemAttributes: string[];\n tagAttributes: string[];\n};\ntype FilteringAttributesConfig = {\n attributes: Record<string, string[]>;\n count: number;\n limit: number;\n};\nexport type DeviceStatus = DeviceAuthState | 'active' | 'inactive';\n\nexport type DeviceGroups = {\n byId: Record<string, DeviceGroup>;\n selectedGroup?: string;\n};\nexport type DeviceSliceType = {\n byId: Record<string, Device>;\n byStatus: Record<DeviceStatus, { deviceIds: string[]; total: number }>;\n deviceList: DeviceListState;\n filteringAttributes: FilteringAttributes;\n filteringAttributesConfig: FilteringAttributesConfig;\n filteringAttributesLimit: number;\n filters: DeviceFilter[];\n groups: DeviceGroups;\n limit: number;\n reports: DeviceReport[];\n total: number;\n};\nexport const initialState: DeviceSliceType = {\n byId: {\n // [deviceId]: {\n // ...,\n // twinsByIntegration: { [external.provider.id]: twinData }\n // }\n },\n byStatus: {\n [DEVICE_STATES.accepted]: { deviceIds: [], total: 0 },\n active: { deviceIds: [], total: 0 },\n inactive: { deviceIds: [], total: 0 },\n [DEVICE_STATES.pending]: { deviceIds: [], total: 0 },\n [DEVICE_STATES.preauth]: { deviceIds: [], total: 0 },\n [DEVICE_STATES.rejected]: { deviceIds: [], total: 0 }\n },\n deviceList: {\n deviceIds: [],\n ...DEVICE_LIST_DEFAULTS,\n selectedAttributes: [],\n selectedIssues: [],\n selection: [],\n sort: {\n direction: SORTING_OPTIONS.desc\n // key: null,\n // scope: null\n },\n state: DEVICE_STATES.accepted,\n total: 0,\n refreshTrigger: false,\n isLoading: false,\n detailsTab: '',\n open: false\n },\n filters: [\n // { key: 'device_type', value: 'raspberry', operator: '$eq', scope: 'inventory' }\n ],\n filteringAttributes: { identityAttributes: [], inventoryAttributes: [], systemAttributes: [], tagAttributes: [] },\n filteringAttributesLimit: 10,\n filteringAttributesConfig: {\n attributes: {\n // inventory: ['some_attribute']\n },\n count: 0,\n limit: 100\n },\n reports: [\n // { items: [{ key: \"someKey\", count: 42 }], otherCount: 123, total: <otherCount + itemsCount> }\n ],\n total: 0,\n limit: 0,\n groups: {\n byId: {\n // groupName: { deviceIds: [], total: 0, filters: [] },\n // dynamo: { deviceIds: [], total: 3, filters: [{ a: 1 }] }\n },\n selectedGroup: undefined\n }\n};\n\nexport const devicesSlice = createSlice({\n name: sliceName,\n initialState,\n reducers: {\n receivedGroups: (state, action: PayloadAction<Record<string, DeviceGroup>>) => {\n state.groups.byId = action.payload;\n },\n addToGroup: (state, action: PayloadAction<{ deviceIds: string[]; group: string }>) => {\n const { group, deviceIds } = action.payload;\n const maybeExistingGroup = {\n filters: [],\n deviceIds: [],\n ...state.groups.byId[group]\n };\n state.groups.byId[group] = {\n ...maybeExistingGroup,\n deviceIds: [...maybeExistingGroup.deviceIds, ...deviceIds].filter(duplicateFilter),\n total: (maybeExistingGroup.total || 0) + 1\n };\n },\n removeFromGroup: (state, action: PayloadAction<{ deviceIds: string[]; group: string }>) => {\n const { group, deviceIds: removedIds } = action.payload;\n const { deviceIds = [], total = 0, ...maybeExistingGroup } = state.groups.byId[group] || {};\n const changedGroup = {\n ...maybeExistingGroup,\n deviceIds: deviceIds.filter(id => !removedIds.includes(id)),\n total: Math.max(total - removedIds.length, 0)\n };\n if (changedGroup.total || changedGroup.deviceIds.length) {\n state.groups.byId[group] = changedGroup;\n return;\n } else if (state.groups.selectedGroup === group) {\n state.groups.selectedGroup = undefined;\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { [group]: removal, ...remainingById } = state.groups.byId;\n state.groups.byId = remainingById;\n },\n addGroup: (state, action: PayloadAction<{ group: DeviceGroup; groupName: string }>) => {\n const { groupName, group } = action.payload;\n state.groups.byId[groupName] = {\n ...state.groups.byId[groupName],\n ...group\n };\n },\n selectGroup: (state, { payload: group }: PayloadAction<string | undefined>) => {\n state.deviceList.deviceIds =\n group && state.groups.byId[group] && state.groups.byId[group].deviceIds && state.groups.byId[group].deviceIds.length > 0\n ? state.groups.byId[group].deviceIds\n : [];\n state.groups.selectedGroup = group;\n },\n removeGroup: (state, action: PayloadAction<string>) => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { [action.payload]: removal, ...remainingById } = state.groups.byId;\n state.groups.byId = remainingById;\n state.groups.selectedGroup = state.groups.selectedGroup === action.payload ? undefined : state.groups.selectedGroup;\n },\n setDeviceListState: (state, action: PayloadAction<Partial<DeviceListState>>) => {\n state.deviceList = {\n ...state.deviceList,\n ...action.payload,\n sort: {\n ...state.deviceList.sort,\n ...action.payload.sort\n }\n };\n },\n setFilterAttributes: (state, action: PayloadAction<FilteringAttributes>) => {\n state.filteringAttributes = action.payload;\n },\n setFilterablesConfig: (state, action: PayloadAction<FilteringAttributesConfig>) => {\n state.filteringAttributesConfig = action.payload;\n },\n receivedDevices: (state, action: PayloadAction<Record<string, Device>>) => {\n state.byId = {\n ...state.byId,\n ...action.payload\n };\n },\n setDeviceFilters: (state, action: PayloadAction<DeviceFilter[]>) => {\n if (deepCompare(action.payload, state.filters)) {\n return;\n }\n state.filters = action.payload.filter(filter => filter.key && filter.operator && filter.scope && typeof filter.value !== 'undefined');\n },\n setInactiveDevices: (state, action: PayloadAction<{ activeDeviceTotal: number; inactiveDeviceTotal: number }>) => {\n const { activeDeviceTotal, inactiveDeviceTotal } = action.payload;\n state.byStatus.active.total = activeDeviceTotal;\n state.byStatus.inactive.total = inactiveDeviceTotal;\n },\n setDeviceReports: (state, action: PayloadAction<DeviceReport[]>) => {\n state.reports = action.payload;\n },\n setDevicesByStatus: (state, action: PayloadAction<{ deviceIds: string[]; forceUpdate?: boolean; status: DeviceStatus; total: number }>) => {\n const { forceUpdate, status, total, deviceIds } = action.payload;\n state.byStatus[status] = total || forceUpdate ? { deviceIds, total } : state.byStatus[status];\n },\n setDevicesCountByStatus: (state, action: PayloadAction<{ count: number; status: DeviceStatus }>) => {\n const { count, status } = action.payload;\n state.byStatus[status].total = count;\n },\n setDeviceLimit: (state, action: PayloadAction<number>) => {\n state.limit = action.payload;\n },\n receivedDevice: (state, action: PayloadAction<{ id: string } & Partial<Device>>) => {\n state.byId[action.payload.id] = {\n ...state.byId[action.payload.id],\n ...action.payload\n };\n },\n maybeUpdateDevicesByStatus: (state, action: PayloadAction<{ authId?: string; deviceId: string }>) => {\n const { deviceId, authId } = action.payload;\n const device = state.byId[deviceId];\n const hasMultipleAuthSets = authId && device.auth_sets ? device.auth_sets.filter(authset => authset.id !== authId).length > 0 : false;\n if (!hasMultipleAuthSets && (Object.values(DEVICE_STATES) as string[]).includes(device.status)) {\n const deviceIds = state.byStatus[device.status].deviceIds.filter(id => id !== deviceId);\n state.byStatus[device.status] = { deviceIds, total: Math.max(0, state.byStatus[device.status].total - 1) };\n }\n }\n }\n});\n\nexport const actions = devicesSlice.actions;\nexport default devicesSlice.reducer;\n"],"mappings":"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","names":[]}
@@ -1,34 +1,34 @@
1
+ import {
2
+ general_api_default
3
+ } from "./chunk-5M6EUVNO.js";
1
4
  import {
2
5
  commonErrorFallback,
3
6
  commonErrorHandler,
4
7
  createAppAsyncThunk
5
- } from "./chunk-J74LNK6P.js";
6
- import {
7
- general_api_default
8
- } from "./chunk-BNSSPYCA.js";
8
+ } from "./chunk-S22YDI7V.js";
9
9
  import {
10
10
  actions_default
11
- } from "./chunk-I6JE3OLT.js";
11
+ } from "./chunk-QYIBYU3O.js";
12
12
  import {
13
13
  actions,
14
14
  sliceName
15
- } from "./chunk-AVCIWAZB.js";
15
+ } from "./chunk-HLX5L3IM.js";
16
16
  import {
17
17
  getSearchEndpoint
18
- } from "./chunk-VCTZ25Q5.js";
18
+ } from "./chunk-TR7KJWVG.js";
19
19
  import {
20
20
  getDeviceFilters
21
- } from "./chunk-JZXNRDO2.js";
21
+ } from "./chunk-UVYRVFZX.js";
22
22
  import {
23
23
  convertDeviceListStateToFilters
24
- } from "./chunk-CEEXZF5E.js";
24
+ } from "./chunk-2TYNHR66.js";
25
25
  import {
26
26
  DEVICE_LIST_DEFAULTS,
27
27
  TIMEOUTS,
28
28
  alertChannels,
29
29
  headerNames,
30
30
  monitorApiUrlv1
31
- } from "./chunk-MRXTMI6O.js";
31
+ } from "./chunk-WWED74SG.js";
32
32
 
33
33
  // src/monitorSlice/thunks.ts
34
34
  var { page: defaultPage, perPage: defaultPerPage } = DEVICE_LIST_DEFAULTS;
@@ -107,4 +107,4 @@ export {
107
107
  getDeviceMonitorConfig,
108
108
  changeNotificationSetting
109
109
  };
110
- //# sourceMappingURL=chunk-DYN7AU7R.js.map
110
+ //# sourceMappingURL=chunk-KT7G4TSF.js.map
@@ -13,7 +13,7 @@ var defaultReportType = "distribution";
13
13
  var defaultReports = [{ ...emptyChartSelection, group: null, attribute: "artifact_name", type: defaultReportType }];
14
14
  var BEGINNING_OF_TIME = "2016-01-01T00:00:00.000Z";
15
15
  var locations = {
16
- cn: { key: "cn", title: "China", location: "cn.hosted.mender.io" },
16
+ cn: { key: "cn", title: "China", location: "hosted.mender.cn" },
17
17
  eu: { key: "eu", title: "EU", location: "eu.hosted.mender.io" },
18
18
  us: { key: "us", title: "US", location: "hosted.mender.io" }
19
19
  };
@@ -149,4 +149,4 @@ export {
149
149
  DARK_MODE,
150
150
  LIGHT_MODE
151
151
  };
152
- //# sourceMappingURL=chunk-PY6ID7TL.js.map
152
+ //# sourceMappingURL=chunk-N3XU7WJM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/appSlice/constants.ts"],"sourcesContent":["// Copyright 2019 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 { BarChart as BarChartIcon, PieChartOutline as PieChartIcon } from '@mui/icons-material';\n\nconst startingDeviceCount = {\n os: 'for first 50 devices',\n professional: 'for first 250 devices'\n} as const;\n\nexport const chartTypes = {\n bar: { key: 'bar', Icon: BarChartIcon },\n pie: { key: 'pie', Icon: PieChartIcon }\n} as const;\nexport const emptyChartSelection = { software: '', group: '', chartType: chartTypes.bar.key, attribute: 'artifact_name' };\nexport const defaultReportType = 'distribution';\nexport const defaultReports = [{ ...emptyChartSelection, group: null, attribute: 'artifact_name', type: defaultReportType }];\n\nexport const BEGINNING_OF_TIME = '2016-01-01T00:00:00.000Z';\n\nexport const locations = {\n cn: { key: 'cn', title: 'China', location: 'hosted.mender.cn' },\n eu: { key: 'eu', title: 'EU', location: 'eu.hosted.mender.io' },\n us: { key: 'us', title: 'US', location: 'hosted.mender.io' }\n} as const;\nexport type AvailablePlans = 'os' | 'professional' | 'enterprise';\n\nexport type Plan = {\n description: string;\n deviceCount: string;\n features: string[];\n id: AvailablePlans;\n minimalDeviceCount: number;\n name: string;\n offer?: boolean;\n offerprice?: string;\n price: string;\n price2?: string;\n};\n\nexport type AvailableAddon = 'configure' | 'troubleshoot' | 'monitor';\n\nexport const PLANS: { [key in AvailablePlans]: Plan } = {\n os: {\n id: 'os',\n name: 'Basic',\n minimalDeviceCount: 50,\n offer: true,\n price: '$34 / month',\n deviceCount: startingDeviceCount.os,\n description:\n 'The core features of Mender. To continue using Enterprise Trial features—like Delta updates, scheduled deployments, phased rollouts, device filtering, dynamic groups, RBAC, audit logs, and more—please upgrade to a higher plan.',\n features: ['Access to core features of Mender', 'Basic support']\n },\n professional: {\n id: 'professional',\n name: 'Professional',\n minimalDeviceCount: 250,\n offer: true,\n price: '$291 / month',\n deviceCount: startingDeviceCount.professional,\n description: 'Everything in Basic, plus enhanced update management and automation features.',\n features: ['Advanced OTA features', 'Higher priority support']\n },\n enterprise: {\n id: 'enterprise',\n name: 'Enterprise',\n minimalDeviceCount: 1000,\n price: 'Custom pricing',\n deviceCount: 'Unlimited devices',\n description:\n 'Every advanced feature of Mender, tailored for complex and large-scale deployments. Not available as a monthly subscription — ask us for a quote.',\n features: ['All Mender features', 'Advanced security features', 'SLA-backed support']\n }\n} as const;\nexport type Addon = {\n description: string;\n eligible: AvailablePlans[];\n id: string;\n needs: string[];\n title: string;\n} & {\n [key in Exclude<AvailablePlans, 'enterprise'>]: {\n deviceCount: string;\n price: string;\n };\n};\n\nexport type AddonId = keyof typeof ADDONS;\n\n// the needs names need to be aligned with the name of the features in the appReducer, as they will be checked in the addonselection\nexport const ADDONS: { [key in AvailableAddon]: Addon } = {\n configure: {\n id: 'configure',\n title: 'Configure',\n description: 'Expand your plan with device configuration features',\n needs: ['hasDeviceConfig'],\n os: {\n price: '$11/month',\n deviceCount: startingDeviceCount.os\n },\n professional: {\n price: '$65/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['os', 'professional', 'enterprise']\n },\n monitor: {\n id: 'monitor',\n title: 'Monitor',\n description: 'Expand your plan with device monitoring features',\n needs: ['hasMonitor'],\n os: {\n price: '-',\n deviceCount: '-'\n },\n professional: {\n price: '$86/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['professional', 'enterprise']\n },\n troubleshoot: {\n id: 'troubleshoot',\n title: 'Troubleshoot',\n description: 'Expand your plan with device troubleshooting features',\n needs: ['hasDeviceConnect'],\n os: {\n price: '$27/month',\n deviceCount: startingDeviceCount.os\n },\n professional: {\n price: '$72/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['os', 'professional', 'enterprise']\n }\n};\n\nexport const BENEFITS = {\n auditlog: { id: 'auditlog', benefit: 'trace change across your devices and access troubleshooting session replay', requiredPlan: PLANS.professional.id },\n dashboard: { id: 'dashboard', benefit: 'actionable insights into the devices you are updating with Mender', requiredPlan: PLANS.enterprise.id },\n deltaGeneration: {\n id: 'deltaGeneration',\n benefit: 'automatic delta artifacts generation to minimize data transfer and improve the update delivery',\n requiredPlan: PLANS.enterprise.id\n },\n deviceConfiguration: { id: 'deviceConfiguration', benefit: 'device configuration features', requiredAddon: ADDONS.configure.id },\n deviceMonitor: { id: 'deviceMonitor', benefit: 'device monitoring features', requiredAddon: ADDONS.monitor.id, requiredPlan: PLANS.professional.id },\n deviceTroubleshoot: { id: 'deviceTroubleshoot', benefit: 'device troubleshooting features', requiredAddon: ADDONS.troubleshoot.id },\n dynamicGroups: { id: 'dynamicGroups', benefit: 'create dynamic groups to ease device management', requiredPlan: PLANS.enterprise.id },\n fullFiltering: { id: 'fullFiltering', benefit: 'filtering by multiple attributes to improve the device overview', requiredPlan: PLANS.professional.id },\n gateway: { id: 'gateway', benefit: 'see devices connected to your gateway device for easy access', requiredPlans: PLANS.professional.id },\n pausedDeployments: {\n id: 'pausedDeployments',\n benefit: 'granular control about update rollout to allow synchronization across your fleet',\n requiredPlan: PLANS.enterprise.id\n },\n phasedDeployments: { id: 'phasedDeployments', benefit: 'choose to roll out deployments in multiple phases', requiredPlan: PLANS.enterprise.id },\n rbac: { id: 'rbac', benefit: 'granular role based access control', requiredPlan: PLANS.enterprise.id },\n retryDeployments: { id: 'retryDeployments', benefit: 'optional retries for failed rollout attempts', requiredPlan: PLANS.professional.id },\n scheduledDeployments: {\n id: 'scheduledDeployments',\n benefit: 'scheduled deployments to steer the distribution of your updates.',\n requiredPlan: PLANS.professional.id\n },\n webhookEvents: {\n id: 'webhookEvents',\n benefit: 'receive inventory events and select which type(s) of events the webhook will receive',\n requiredPlan: PLANS.professional.id\n },\n\n default: { id: 'default', benefit: 'gain access to this feature', requiredPlan: PLANS.enterprise.id }\n} as const;\n\nexport const yes = () => true;\nexport const canAccess = yes;\n\nexport const DARK_MODE = 'dark';\nexport const LIGHT_MODE = 'light';\n"],"mappings":"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","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SORTING_OPTIONS
3
- } from "./chunk-MRXTMI6O.js";
3
+ } from "./chunk-WWED74SG.js";
4
4
 
5
5
  // src/appSlice/index.ts
6
6
  import { createSlice } from "@reduxjs/toolkit";
@@ -149,4 +149,4 @@ export {
149
149
  actions,
150
150
  appSlice_default
151
151
  };
152
- //# sourceMappingURL=chunk-DXJ2WS3N.js.map
152
+ //# sourceMappingURL=chunk-OFGCC3GM.js.map
@@ -2,7 +2,7 @@ import {
2
2
  DEVICE_LIST_DEFAULTS,
3
3
  SORTING_OPTIONS,
4
4
  TENANT_LIST_DEFAULT
5
- } from "./chunk-MRXTMI6O.js";
5
+ } from "./chunk-WWED74SG.js";
6
6
 
7
7
  // src/organizationSlice/index.ts
8
8
  import { createSlice } from "@reduxjs/toolkit";
@@ -109,4 +109,4 @@ export {
109
109
  actions,
110
110
  organizationSlice_default
111
111
  };
112
- //# sourceMappingURL=chunk-4DOSYAJY.js.map
112
+ //# sourceMappingURL=chunk-QOFVCPRW.js.map
@@ -1,27 +1,27 @@
1
1
  import {
2
2
  actions as actions7
3
- } from "./chunk-KJJ47UIO.js";
3
+ } from "./chunk-TRKA7XYU.js";
4
4
  import {
5
5
  actions as actions8
6
- } from "./chunk-CWZKWW74.js";
7
- import {
8
- actions as actions6
9
- } from "./chunk-4DOSYAJY.js";
10
- import {
11
- actions as actions4
12
- } from "./chunk-AVCIWAZB.js";
6
+ } from "./chunk-CKF76YO4.js";
13
7
  import {
14
8
  actions as actions5
15
9
  } from "./chunk-VANBSJS5.js";
10
+ import {
11
+ actions as actions6
12
+ } from "./chunk-QOFVCPRW.js";
16
13
  import {
17
14
  actions as actions2
18
- } from "./chunk-5HYHE4HO.js";
15
+ } from "./chunk-C2LGE3P6.js";
19
16
  import {
20
- actions
21
- } from "./chunk-DXJ2WS3N.js";
17
+ actions as actions4
18
+ } from "./chunk-HLX5L3IM.js";
22
19
  import {
23
20
  actions as actions3
24
- } from "./chunk-IY76MO6R.js";
21
+ } from "./chunk-KQ6AGXRK.js";
22
+ import {
23
+ actions
24
+ } from "./chunk-OFGCC3GM.js";
25
25
 
26
26
  // src/actions.ts
27
27
  var actions_default = {
@@ -38,4 +38,4 @@ var actions_default = {
38
38
  export {
39
39
  actions_default
40
40
  };
41
- //# sourceMappingURL=chunk-I6JE3OLT.js.map
41
+ //# sourceMappingURL=chunk-QYIBYU3O.js.map
@@ -1,39 +1,39 @@
1
1
  import {
2
2
  actions_default
3
- } from "./chunk-I6JE3OLT.js";
3
+ } from "./chunk-QYIBYU3O.js";
4
4
  import {
5
5
  releasesSlice_default
6
- } from "./chunk-KJJ47UIO.js";
6
+ } from "./chunk-TRKA7XYU.js";
7
7
  import {
8
8
  actions as actions2,
9
9
  usersSlice_default
10
- } from "./chunk-CWZKWW74.js";
11
- import {
12
- actions,
13
- organizationSlice_default
14
- } from "./chunk-4DOSYAJY.js";
15
- import {
16
- monitorSlice_default
17
- } from "./chunk-AVCIWAZB.js";
10
+ } from "./chunk-CKF76YO4.js";
18
11
  import {
19
12
  onboardingSlice_default
20
13
  } from "./chunk-VANBSJS5.js";
14
+ import {
15
+ actions,
16
+ organizationSlice_default
17
+ } from "./chunk-QOFVCPRW.js";
21
18
  import {
22
19
  deploymentsSlice_default
23
- } from "./chunk-5HYHE4HO.js";
20
+ } from "./chunk-C2LGE3P6.js";
24
21
  import {
25
- appSlice_default
26
- } from "./chunk-DXJ2WS3N.js";
22
+ monitorSlice_default
23
+ } from "./chunk-HLX5L3IM.js";
27
24
  import {
28
25
  devicesSlice_default
29
- } from "./chunk-IY76MO6R.js";
26
+ } from "./chunk-KQ6AGXRK.js";
27
+ import {
28
+ appSlice_default
29
+ } from "./chunk-OFGCC3GM.js";
30
30
  import {
31
31
  getToken
32
- } from "./chunk-66NK2ZV2.js";
32
+ } from "./chunk-FDSMCFV5.js";
33
33
  import {
34
34
  USER_LOGOUT,
35
35
  settingsKeys
36
- } from "./chunk-MRXTMI6O.js";
36
+ } from "./chunk-WWED74SG.js";
37
37
 
38
38
  // src/store.ts
39
39
  import { useDispatch } from "react-redux";
@@ -139,4 +139,4 @@ export {
139
139
  useAppDispatch,
140
140
  createAppAsyncThunk
141
141
  };
142
- //# sourceMappingURL=chunk-J74LNK6P.js.map
142
+ //# sourceMappingURL=chunk-S22YDI7V.js.map
@@ -1,36 +1,36 @@
1
1
  import {
2
2
  getReleasesById
3
- } from "./chunk-KGSJ7CSA.js";
3
+ } from "./chunk-H5YHKATI.js";
4
4
  import {
5
5
  getCurrentUser,
6
6
  getGlobalSettings,
7
7
  getRolesById,
8
8
  getRolesList,
9
9
  getUserSettings
10
- } from "./chunk-4UJXT6RF.js";
10
+ } from "./chunk-Z5TDXPYZ.js";
11
11
  import {
12
- getAuditLogEntry,
13
- getIsServiceProvider,
14
- getOrganization
15
- } from "./chunk-W37ETKI6.js";
16
- import {
17
- getIssueCountsByType
18
- } from "./chunk-YO22XLHI.js";
12
+ getDeploymentsById,
13
+ getDeploymentsSelectionState,
14
+ getSelectedDeploymentDeviceIds
15
+ } from "./chunk-WR6RQKF5.js";
19
16
  import {
20
17
  getOnboarding
21
18
  } from "./chunk-JIS4PA3R.js";
19
+ import {
20
+ getAuditLogEntry,
21
+ getIsServiceProvider,
22
+ getOrganization
23
+ } from "./chunk-3NOV7X4M.js";
22
24
  import {
23
25
  getDeviceById,
24
26
  getDevicesById,
25
27
  getFilteringAttributes,
26
28
  getGroupsById,
27
29
  getListedDevices
28
- } from "./chunk-JZXNRDO2.js";
30
+ } from "./chunk-UVYRVFZX.js";
29
31
  import {
30
- getDeploymentsById,
31
- getDeploymentsSelectionState,
32
- getSelectedDeploymentDeviceIds
33
- } from "./chunk-GRVTVLIZ.js";
32
+ getIssueCountsByType
33
+ } from "./chunk-YO22XLHI.js";
34
34
  import {
35
35
  getFeatures,
36
36
  getSearchedDevices
@@ -38,7 +38,7 @@ import {
38
38
  import {
39
39
  listItemMapper,
40
40
  mapUserRolesToUiPermissions
41
- } from "./chunk-CEEXZF5E.js";
41
+ } from "./chunk-2TYNHR66.js";
42
42
  import {
43
43
  ALL_DEVICES,
44
44
  ATTRIBUTE_SCOPES,
@@ -51,7 +51,7 @@ import {
51
51
  rolesByName,
52
52
  serviceProviderRolesById,
53
53
  uiPermissionsById
54
- } from "./chunk-MRXTMI6O.js";
54
+ } from "./chunk-WWED74SG.js";
55
55
  import {
56
56
  onboardingSteps
57
57
  } from "./chunk-FAJ3I2UQ.js";
@@ -59,7 +59,7 @@ import {
59
59
  ADDONS,
60
60
  PLANS,
61
61
  defaultReports
62
- } from "./chunk-PY6ID7TL.js";
62
+ } from "./chunk-N3XU7WJM.js";
63
63
 
64
64
  // src/commonSelectors.ts
65
65
  import { attributeDuplicateFilter, getDemoDeviceAddress as getDemoDeviceAddressHelper } from "@northern.tech/utils/helpers";
@@ -289,4 +289,4 @@ export {
289
289
  getAuditlogDevice,
290
290
  getRelevantRoles
291
291
  };
292
- //# sourceMappingURL=chunk-VCTZ25Q5.js.map
292
+ //# sourceMappingURL=chunk-TR7KJWVG.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  DEVICE_LIST_DEFAULTS,
3
3
  SORTING_OPTIONS
4
- } from "./chunk-MRXTMI6O.js";
4
+ } from "./chunk-WWED74SG.js";
5
5
 
6
6
  // src/releasesSlice/index.ts
7
7
  import { createSlice } from "@reduxjs/toolkit";
@@ -154,4 +154,4 @@ export {
154
154
  actions,
155
155
  releasesSlice_default
156
156
  };
157
- //# sourceMappingURL=chunk-KJJ47UIO.js.map
157
+ //# sourceMappingURL=chunk-TRKA7XYU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/releasesSlice/index.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 type {\n ArtifactV1 as BackendArtifactV1,\n ArtifactV2 as BackendArtifactV2,\n ReleaseV1 as BackendReleaseV1,\n ReleaseV2 as BackendReleaseV2,\n Update as BackendUpdate,\n DeltaJobDetailsItem,\n DeltaJobsListItem\n} from '@northern.tech/types/MenderTypes';\nimport type { PayloadAction } from '@reduxjs/toolkit';\nimport { createSlice } from '@reduxjs/toolkit';\n\nimport { DEVICE_LIST_DEFAULTS, SORTING_OPTIONS } from '../constants';\nimport type { SortOptions } from '../constants';\n\ntype Update = Omit<BackendUpdate, 'meta_data'>;\nexport type Artifact = Omit<BackendArtifactV1, 'updates'> &\n Omit<BackendArtifactV2, 'updates'> & { installCount?: number; updates?: Array<Update>; url?: string };\nexport type Release = BackendReleaseV1 & BackendReleaseV2 & { artifacts: Artifact[]; device_types_compatible: string[]; name: string };\n\nexport const sliceName = 'releases';\n\ntype EnhancedJobDetailsItem = DeltaJobDetailsItem & DeltaJobsListItem;\n\nexport type ReleasesList = {\n isLoading?: boolean;\n page: number;\n perPage: number;\n releaseIds: string[];\n searchedIds: string[];\n searchOnly?: boolean;\n searchTerm: string;\n searchTotal: number;\n selectedTags: string[];\n selection: number[];\n sort?: SortOptions;\n tab?: 'releases' | 'delta';\n total: number;\n type: string;\n};\n\nexport type ReleaseSliceType = {\n artifacts: never[];\n byId: Record<string, Release>;\n deltaJobs: Record<string, EnhancedJobDetailsItem>;\n deltaJobsList: {\n jobIds: string[];\n page: number;\n perPage: number;\n sort?: SortOptions;\n total: 0;\n };\n releasesList: ReleasesList;\n selectedJob: string | null;\n selectedRelease: string | null;\n tags: string[];\n updateTypes: string[];\n};\n\nexport const initialState: ReleaseSliceType = {\n /*\n * Return list of saved artifacts objects\n */\n /*\n * return list of artifacts where duplicate names are collated with device compatibility lists combined\n */\n // artifacts: AppStore.getCollatedArtifacts(AppStore.getArtifactsRepo()),\n artifacts: [],\n /*\n * Return list of saved release objects\n */\n byId: {\n /*\n [releaseName]: {\n artifacts: [\n {\n id: '',\n name: '',\n description: '',\n device_types_compatible: [],\n ...\n updates: [{\n files: [\n { size: 123, name: '' }\n ],\n type_info: { type: '' }\n }],\n url: '' // optional\n }\n ],\n modified: ''\n device_types_compatible,\n name: '',\n tags: ['something'],\n notes: ''\n }\n */\n },\n deltaJobs: {\n /*\n [jobId]: {\n id: '',\n ...\n }\n */\n },\n deltaJobsList: {\n ...DEVICE_LIST_DEFAULTS,\n jobIds: [],\n total: 0,\n sort: {\n direction: SORTING_OPTIONS.desc,\n key: 'started'\n }\n },\n releasesList: {\n ...DEVICE_LIST_DEFAULTS,\n searchedIds: [],\n releaseIds: [],\n selection: [],\n sort: {\n direction: SORTING_OPTIONS.desc,\n key: 'modified'\n },\n isLoading: undefined,\n searchTerm: '',\n searchTotal: 0,\n selectedTags: [],\n total: 0,\n type: ''\n },\n tags: [],\n updateTypes: [],\n selectedJob: null,\n /*\n * Return single release with corresponding Artifacts\n */\n selectedRelease: null\n};\n\nexport const releaseSlice = createSlice({\n name: sliceName,\n initialState,\n reducers: {\n receiveRelease: (state, action: PayloadAction<Release>) => {\n const { name } = action.payload;\n state.byId[name] = action.payload;\n },\n receiveReleases: (state, action: PayloadAction<Record<string, Release>>) => {\n state.byId = action.payload;\n },\n receiveReleaseTags: (state, action: PayloadAction<string[]>) => {\n state.tags = action.payload;\n },\n receiveReleaseTypes: (state, action: PayloadAction<string[]>) => {\n state.updateTypes = action.payload;\n },\n removeRelease: (state, action: PayloadAction<string>) => {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { [action.payload]: toBeRemoved, ...byId } = state.byId;\n state.byId = byId;\n state.selectedRelease = action.payload === state.selectedRelease ? null : state.selectedRelease;\n },\n selectedRelease: (state, action: PayloadAction<string | null>) => {\n state.selectedRelease = action.payload;\n },\n setReleaseListState: (state, action) => {\n state.releasesList = action.payload;\n },\n receivedDeltaJobs: (state, action) => {\n const { jobs, total } = action.payload;\n state.deltaJobs = jobs.reduce(\n (accu, job) => {\n accu[job.id] = {\n ...accu[job.id],\n ...job\n };\n return accu;\n },\n { ...state.deltaJobs }\n );\n state.deltaJobsList.jobIds = jobs.map(job => job.id);\n state.deltaJobsList.total = total;\n },\n receivedDeltaJobDetails: (state, action) => {\n const job: DeltaJobDetailsItem & { id: string } = action.payload;\n state.deltaJobs[job.id] = {\n ...state.deltaJobs[job.id],\n ...job\n };\n },\n setDeltaJobsListState: (state, action) => {\n state.deltaJobsList = { ...state.deltaJobsList, ...action.payload };\n },\n setSelectedJob: (state, action) => {\n state.selectedJob = action.payload;\n }\n }\n});\n\nexport const actions = releaseSlice.actions;\nexport default releaseSlice.reducer;\n"],"mappings":";;;;;;AAuBA,SAAS,mBAAmB;AAUrB,IAAM,YAAY;AAuClB,IAAM,eAAiC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ5C,WAAW,CAAC;AAAA;AAAA;AAAA;AAAA,EAIZ,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA0BN;AAAA,EACA,WAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOX;AAAA,EACA,eAAe;AAAA,IACb,GAAG;AAAA,IACH,QAAQ,CAAC;AAAA,IACT,OAAO;AAAA,IACP,MAAM;AAAA,MACJ,WAAW,gBAAgB;AAAA,MAC3B,KAAK;AAAA,IACP;AAAA,EACF;AAAA,EACA,cAAc;AAAA,IACZ,GAAG;AAAA,IACH,aAAa,CAAC;AAAA,IACd,YAAY,CAAC;AAAA,IACb,WAAW,CAAC;AAAA,IACZ,MAAM;AAAA,MACJ,WAAW,gBAAgB;AAAA,MAC3B,KAAK;AAAA,IACP;AAAA,IACA,WAAW;AAAA,IACX,YAAY;AAAA,IACZ,aAAa;AAAA,IACb,cAAc,CAAC;AAAA,IACf,OAAO;AAAA,IACP,MAAM;AAAA,EACR;AAAA,EACA,MAAM,CAAC;AAAA,EACP,aAAa,CAAC;AAAA,EACd,aAAa;AAAA;AAAA;AAAA;AAAA,EAIb,iBAAiB;AACnB;AAEO,IAAM,eAAe,YAAY;AAAA,EACtC,MAAM;AAAA,EACN;AAAA,EACA,UAAU;AAAA,IACR,gBAAgB,CAAC,OAAO,WAAmC;AACzD,YAAM,EAAE,KAAK,IAAI,OAAO;AACxB,YAAM,KAAK,IAAI,IAAI,OAAO;AAAA,IAC5B;AAAA,IACA,iBAAiB,CAAC,OAAO,WAAmD;AAC1E,YAAM,OAAO,OAAO;AAAA,IACtB;AAAA,IACA,oBAAoB,CAAC,OAAO,WAAoC;AAC9D,YAAM,OAAO,OAAO;AAAA,IACtB;AAAA,IACA,qBAAqB,CAAC,OAAO,WAAoC;AAC/D,YAAM,cAAc,OAAO;AAAA,IAC7B;AAAA,IACA,eAAe,CAAC,OAAO,WAAkC;AAEvD,YAAM,EAAE,CAAC,OAAO,OAAO,GAAG,aAAa,GAAG,KAAK,IAAI,MAAM;AACzD,YAAM,OAAO;AACb,YAAM,kBAAkB,OAAO,YAAY,MAAM,kBAAkB,OAAO,MAAM;AAAA,IAClF;AAAA,IACA,iBAAiB,CAAC,OAAO,WAAyC;AAChE,YAAM,kBAAkB,OAAO;AAAA,IACjC;AAAA,IACA,qBAAqB,CAAC,OAAO,WAAW;AACtC,YAAM,eAAe,OAAO;AAAA,IAC9B;AAAA,IACA,mBAAmB,CAAC,OAAO,WAAW;AACpC,YAAM,EAAE,MAAM,MAAM,IAAI,OAAO;AAC/B,YAAM,YAAY,KAAK;AAAA,QACrB,CAAC,MAAM,QAAQ;AACb,eAAK,IAAI,EAAE,IAAI;AAAA,YACb,GAAG,KAAK,IAAI,EAAE;AAAA,YACd,GAAG;AAAA,UACL;AACA,iBAAO;AAAA,QACT;AAAA,QACA,EAAE,GAAG,MAAM,UAAU;AAAA,MACvB;AACA,YAAM,cAAc,SAAS,KAAK,IAAI,SAAO,IAAI,EAAE;AACnD,YAAM,cAAc,QAAQ;AAAA,IAC9B;AAAA,IACA,yBAAyB,CAAC,OAAO,WAAW;AAC1C,YAAM,MAA4C,OAAO;AACzD,YAAM,UAAU,IAAI,EAAE,IAAI;AAAA,QACxB,GAAG,MAAM,UAAU,IAAI,EAAE;AAAA,QACzB,GAAG;AAAA,MACL;AAAA,IACF;AAAA,IACA,uBAAuB,CAAC,OAAO,WAAW;AACxC,YAAM,gBAAgB,EAAE,GAAG,MAAM,eAAe,GAAG,OAAO,QAAQ;AAAA,IACpE;AAAA,IACA,gBAAgB,CAAC,OAAO,WAAW;AACjC,YAAM,cAAc,OAAO;AAAA,IAC7B;AAAA,EACF;AACF,CAAC;AAEM,IAAM,UAAU,aAAa;AACpC,IAAO,wBAAQ,aAAa;","names":[]}
@@ -1,50 +1,50 @@
1
1
  import {
2
2
  getDeviceMonitorConfig,
3
3
  getLatestDeviceAlerts
4
- } from "./chunk-DYN7AU7R.js";
5
- import {
6
- commonErrorFallback,
7
- commonErrorHandler,
8
- createAppAsyncThunk
9
- } from "./chunk-J74LNK6P.js";
4
+ } from "./chunk-KT7G4TSF.js";
10
5
  import {
11
6
  users_api_default
12
- } from "./chunk-ZZ3YDCYZ.js";
7
+ } from "./chunk-Y3DJIMEN.js";
13
8
  import {
14
9
  general_api_default
15
- } from "./chunk-BNSSPYCA.js";
10
+ } from "./chunk-5M6EUVNO.js";
11
+ import {
12
+ commonErrorFallback,
13
+ commonErrorHandler,
14
+ createAppAsyncThunk
15
+ } from "./chunk-S22YDI7V.js";
16
16
  import {
17
17
  actions_default
18
- } from "./chunk-I6JE3OLT.js";
18
+ } from "./chunk-QYIBYU3O.js";
19
19
  import {
20
20
  actions as actions6,
21
21
  sliceName as sliceName6
22
- } from "./chunk-CWZKWW74.js";
23
- import {
24
- actions as actions5,
25
- sliceName as sliceName5
26
- } from "./chunk-4DOSYAJY.js";
22
+ } from "./chunk-CKF76YO4.js";
27
23
  import {
28
24
  actions as actions4,
29
25
  sliceName as sliceName4
30
26
  } from "./chunk-VANBSJS5.js";
27
+ import {
28
+ actions as actions5,
29
+ sliceName as sliceName5
30
+ } from "./chunk-QOFVCPRW.js";
31
31
  import {
32
32
  actions as actions2,
33
33
  sliceName as sliceName2
34
- } from "./chunk-5HYHE4HO.js";
35
- import {
36
- actions,
37
- sliceName
38
- } from "./chunk-DXJ2WS3N.js";
34
+ } from "./chunk-C2LGE3P6.js";
39
35
  import {
40
36
  actions as actions3,
41
37
  sliceName as sliceName3
42
- } from "./chunk-IY76MO6R.js";
38
+ } from "./chunk-KQ6AGXRK.js";
39
+ import {
40
+ actions,
41
+ sliceName
42
+ } from "./chunk-OFGCC3GM.js";
43
43
  import {
44
44
  cleanUp,
45
45
  getSessionInfo,
46
46
  setSessionInfo
47
- } from "./chunk-66NK2ZV2.js";
47
+ } from "./chunk-FDSMCFV5.js";
48
48
  import {
49
49
  getAttrsEndpoint,
50
50
  getDeviceReportsForUser,
@@ -52,7 +52,7 @@ import {
52
52
  getSearchEndpoint,
53
53
  getTenantCapabilities,
54
54
  getUserCapabilities
55
- } from "./chunk-VCTZ25Q5.js";
55
+ } from "./chunk-TR7KJWVG.js";
56
56
  import {
57
57
  getCurrentSession,
58
58
  getCurrentUser,
@@ -64,13 +64,17 @@ import {
64
64
  getTooltipsState,
65
65
  getUserSettings,
66
66
  getUsersById
67
- } from "./chunk-4UJXT6RF.js";
67
+ } from "./chunk-Z5TDXPYZ.js";
68
+ import {
69
+ getDeploymentsById,
70
+ getDeploymentsByStatus
71
+ } from "./chunk-WR6RQKF5.js";
68
72
  import {
69
73
  getAuditlogState,
70
74
  getDeviceTwinIntegrations,
71
75
  getOrganization,
72
76
  getTenantsList
73
- } from "./chunk-W37ETKI6.js";
77
+ } from "./chunk-3NOV7X4M.js";
74
78
  import {
75
79
  getAcceptedDevices,
76
80
  getDeviceById,
@@ -80,11 +84,7 @@ import {
80
84
  getDevicesById,
81
85
  getGroupsById,
82
86
  getSelectedGroup
83
- } from "./chunk-JZXNRDO2.js";
84
- import {
85
- getDeploymentsById,
86
- getDeploymentsByStatus
87
- } from "./chunk-GRVTVLIZ.js";
87
+ } from "./chunk-UVYRVFZX.js";
88
88
  import {
89
89
  getFeatures,
90
90
  getSearchState
@@ -100,7 +100,7 @@ import {
100
100
  mergePermissions,
101
101
  parseSubscriptionPreview,
102
102
  progress
103
- } from "./chunk-CEEXZF5E.js";
103
+ } from "./chunk-2TYNHR66.js";
104
104
  import {
105
105
  ALL_DEVICE_STATES,
106
106
  ALL_RELEASES,
@@ -152,17 +152,17 @@ import {
152
152
  uiPermissionsById,
153
153
  useradmApiUrl,
154
154
  useradmApiUrlv2
155
- } from "./chunk-MRXTMI6O.js";
156
- import {
157
- rootfsImageVersion
158
- } from "./chunk-2DYA3X77.js";
155
+ } from "./chunk-WWED74SG.js";
159
156
  import {
160
157
  onboardingSteps,
161
158
  orderedOnboardingSteps
162
159
  } from "./chunk-FAJ3I2UQ.js";
160
+ import {
161
+ rootfsImageVersion
162
+ } from "./chunk-2DYA3X77.js";
163
163
  import {
164
164
  locations
165
- } from "./chunk-PY6ID7TL.js";
165
+ } from "./chunk-N3XU7WJM.js";
166
166
 
167
167
  // src/appSlice/thunks.ts
168
168
  import { deepCompare as deepCompare4, extractErrorMessage as extractErrorMessage3 } from "@northern.tech/utils/helpers";
@@ -183,6 +183,8 @@ var transformDeployments = (deployments, deploymentsById) => deployments.sort(cu
183
183
  ...deploymentPrototype,
184
184
  ...deploymentsById[item.id],
185
185
  ...item,
186
+ // TODO: explicitly set filter term types to address scope type mismatch in deployment specs
187
+ // @ts-expect-error: type misalignment in filter terms type
186
188
  filter: filter ? { ...filter, name: filter.name ?? filter.id, filters: mapTermsToFilters(filter.terms) } : void 0,
187
189
  name: decodeURIComponent(item.name)
188
190
  };
@@ -1521,7 +1523,6 @@ var advanceOnboarding = createAppAsyncThunk(`${sliceName4}/advanceOnboarding`, (
1521
1523
  });
1522
1524
 
1523
1525
  // src/organizationSlice/thunks.ts
1524
- import { PreviewRequest as PreviewRequestEnum } from "@northern.tech/types/MenderTypes";
1525
1526
  import { dateRangeToUnix as dateRangeToUnix2, deepCompare as deepCompare3 } from "@northern.tech/utils/helpers";
1526
1527
  import dayjs from "dayjs";
1527
1528
  import utc from "dayjs/plugin/utc.js";
@@ -1747,7 +1748,7 @@ var getUserBilling = createAppAsyncThunk(
1747
1748
  );
1748
1749
  var getUserSubscription = createAppAsyncThunk(`${sliceName5}/getUserSubscription`, async (_, { dispatch }) => {
1749
1750
  const currentSubscription = await dispatch(getCurrentSubscription()).unwrap();
1750
- const currentPreview = await dispatch(getBillingPreview({ preview_mode: PreviewRequestEnum.preview_mode.NEXT })).unwrap();
1751
+ const currentPreview = await dispatch(getBillingPreview({ preview_mode: "next" })).unwrap();
1751
1752
  return dispatch(actions5.setSubscription({ ...currentPreview, ...currentSubscription }));
1752
1753
  });
1753
1754
  var getBillingPreview = createAppAsyncThunk(
@@ -2766,4 +2767,4 @@ export {
2766
2767
  setAllTooltipsReadState,
2767
2768
  submitUserFeedback
2768
2769
  };
2769
- //# sourceMappingURL=chunk-DE25YP6N.js.map
2770
+ //# sourceMappingURL=chunk-U5QRV6YB.js.map