@northern.tech/store 0.3.3 → 0.4.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 (602) hide show
  1. package/dist/actions.cjs +80 -833
  2. package/dist/actions.cjs.map +1 -1
  3. package/dist/actions.d.cts +229 -85
  4. package/dist/actions.d.ts +229 -85
  5. package/dist/actions.js +14 -14
  6. package/dist/api/general-api.cjs +274 -148
  7. package/dist/api/general-api.cjs.map +1 -1
  8. package/dist/api/general-api.d.cts +1 -1
  9. package/dist/api/general-api.d.ts +1 -1
  10. package/dist/api/general-api.js +7 -7
  11. package/dist/api/users-api.cjs +274 -148
  12. package/dist/api/users-api.cjs.map +1 -1
  13. package/dist/api/users-api.d.cts +7 -5
  14. package/dist/api/users-api.d.ts +7 -5
  15. package/dist/api/users-api.js +8 -8
  16. package/dist/appSlice/constants.cjs +23 -43
  17. package/dist/appSlice/constants.cjs.map +1 -1
  18. package/dist/appSlice/constants.d.cts +109 -119
  19. package/dist/appSlice/constants.d.ts +109 -119
  20. package/dist/appSlice/constants.js +1 -11
  21. package/dist/appSlice/index.cjs +25 -242
  22. package/dist/appSlice/index.cjs.map +1 -1
  23. package/dist/appSlice/index.d.cts +119 -1531
  24. package/dist/appSlice/index.d.ts +119 -1531
  25. package/dist/appSlice/index.js +6 -6
  26. package/dist/appSlice/mocks.cjs +186 -0
  27. package/dist/appSlice/mocks.cjs.map +1 -0
  28. package/dist/appSlice/mocks.d.cts +39 -0
  29. package/dist/appSlice/mocks.d.ts +39 -0
  30. package/dist/appSlice/mocks.js +27 -0
  31. package/dist/appSlice/mocks.js.map +1 -0
  32. package/dist/appSlice/selectors.cjs +31 -5
  33. package/dist/appSlice/selectors.cjs.map +1 -1
  34. package/dist/appSlice/selectors.d.cts +709 -23
  35. package/dist/appSlice/selectors.d.ts +709 -23
  36. package/dist/appSlice/selectors.js +21 -1
  37. package/dist/appSlice/thunks.cjs +1563 -1790
  38. package/dist/appSlice/thunks.cjs.map +1 -1
  39. package/dist/appSlice/thunks.d.cts +34 -14
  40. package/dist/appSlice/thunks.d.ts +34 -14
  41. package/dist/appSlice/thunks.js +30 -29
  42. package/dist/auth.cjs +276 -153
  43. package/dist/auth.cjs.map +1 -1
  44. package/dist/auth.d.cts +13 -10
  45. package/dist/auth.d.ts +13 -10
  46. package/dist/auth.js +6 -8
  47. package/dist/{chunk-CK6YE6AN.js → chunk-2DYA3X77.js} +3 -1
  48. package/dist/{chunk-CK6YE6AN.js.map → chunk-2DYA3X77.js.map} +1 -1
  49. package/dist/{chunk-2CYOM4BK.js → chunk-4TUJPE6G.js} +19 -4
  50. package/dist/chunk-4TUJPE6G.js.map +1 -0
  51. package/dist/{chunk-7PVGDMNM.js → chunk-6KGTHJKC.js} +23 -27
  52. package/dist/chunk-6KGTHJKC.js.map +1 -0
  53. package/dist/chunk-7C4SQBEE.js +715 -0
  54. package/dist/chunk-7C4SQBEE.js.map +1 -0
  55. package/dist/{chunk-QRGTG4YB.js → chunk-ABJLRDCO.js} +10 -11
  56. package/dist/chunk-ABJLRDCO.js.map +1 -0
  57. package/dist/{chunk-LEMVXAYP.js → chunk-CW5T6OGF.js} +56 -22
  58. package/dist/chunk-CW5T6OGF.js.map +1 -0
  59. package/dist/{chunk-MRCFLG45.js → chunk-FAJ3I2UQ.js} +2 -1
  60. package/dist/chunk-FAJ3I2UQ.js.map +1 -0
  61. package/dist/{chunk-DCK2DBOA.js → chunk-IQG5I7AM.js} +29 -39
  62. package/dist/chunk-IQG5I7AM.js.map +1 -0
  63. package/dist/chunk-JUGE7L3K.js +110 -0
  64. package/dist/chunk-JUGE7L3K.js.map +1 -0
  65. package/dist/{chunk-7JKWI5FK.js → chunk-JXQUFKID.js} +2 -2
  66. package/dist/chunk-JXQUFKID.js.map +1 -0
  67. package/dist/chunk-KC7SKI3U.js +389 -0
  68. package/dist/chunk-KC7SKI3U.js.map +1 -0
  69. package/dist/{chunk-YDS36ALB.js → chunk-KJNNEDRV.js} +11 -7
  70. package/dist/chunk-KJNNEDRV.js.map +1 -0
  71. package/dist/chunk-MBKAZVE3.js +44 -0
  72. package/dist/chunk-MBKAZVE3.js.map +1 -0
  73. package/dist/{chunk-TI2RL5P2.js → chunk-MZNANSS2.js} +12 -7
  74. package/dist/chunk-MZNANSS2.js.map +1 -0
  75. package/dist/{chunk-LTKOV26W.js → chunk-N2KLYPS5.js} +138 -95
  76. package/dist/chunk-N2KLYPS5.js.map +1 -0
  77. package/dist/{chunk-UWMYZNUB.js → chunk-OHF3YUXX.js} +25 -40
  78. package/dist/chunk-OHF3YUXX.js.map +1 -0
  79. package/dist/{chunk-CYV6632F.js → chunk-OOICURFL.js} +2 -2
  80. package/dist/chunk-OOICURFL.js.map +1 -0
  81. package/dist/{chunk-VMNMD6KF.js → chunk-PGFVHKP5.js} +5 -7
  82. package/dist/chunk-PGFVHKP5.js.map +1 -0
  83. package/dist/{chunk-JAROCU6M.js → chunk-QHK7GGV4.js} +3 -3
  84. package/dist/chunk-QHK7GGV4.js.map +1 -0
  85. package/dist/{chunk-YT73QWCN.js → chunk-RS37Y2PQ.js} +3 -3
  86. package/dist/chunk-RS37Y2PQ.js.map +1 -0
  87. package/dist/{chunk-TUACATJA.js → chunk-UGSLGUS6.js} +8 -6
  88. package/dist/chunk-UGSLGUS6.js.map +1 -0
  89. package/dist/{chunk-DAPAXWA5.js → chunk-URNS6A5T.js} +14 -14
  90. package/dist/{chunk-FGKMJS3B.js → chunk-VANBSJS5.js} +2 -4
  91. package/dist/chunk-VANBSJS5.js.map +1 -0
  92. package/dist/{chunk-HPBE6KYY.js → chunk-VUFRP6P3.js} +5 -6
  93. package/dist/chunk-VUFRP6P3.js.map +1 -0
  94. package/dist/{chunk-X7IEZBM4.js → chunk-X4GUACQO.js} +8 -5
  95. package/dist/chunk-X4GUACQO.js.map +1 -0
  96. package/dist/{chunk-4XJMRVFI.js → chunk-XWYJACQC.js} +45 -22
  97. package/dist/chunk-XWYJACQC.js.map +1 -0
  98. package/dist/{chunk-AMGWP7A4.js → chunk-ZJW3QIPM.js} +8 -9
  99. package/dist/chunk-ZJW3QIPM.js.map +1 -0
  100. package/dist/chunk-ZKAH3APE.js +1 -0
  101. package/dist/chunk-ZKAH3APE.js.map +1 -0
  102. package/dist/{chunk-2JHFUQ6B.js → chunk-ZN5TB2NJ.js} +963 -883
  103. package/dist/chunk-ZN5TB2NJ.js.map +1 -0
  104. package/dist/{chunk-WXL7PVI5.js → chunk-ZRSYBSSY.js} +18 -12
  105. package/dist/chunk-ZRSYBSSY.js.map +1 -0
  106. package/dist/commonConstants.cjs +279 -173
  107. package/dist/commonConstants.cjs.map +1 -1
  108. package/dist/commonConstants.d.cts +46 -212
  109. package/dist/commonConstants.d.ts +46 -212
  110. package/dist/commonConstants.js +11 -19
  111. package/dist/commonSelectors.cjs +513 -778
  112. package/dist/commonSelectors.cjs.map +1 -1
  113. package/dist/commonSelectors.d.cts +4307 -279
  114. package/dist/commonSelectors.d.ts +4307 -279
  115. package/dist/commonSelectors.js +13 -13
  116. package/dist/constants.cjs +355 -655
  117. package/dist/constants.cjs.map +1 -1
  118. package/dist/constants.d.cts +11 -9
  119. package/dist/constants.d.ts +11 -9
  120. package/dist/constants.js +37 -29
  121. package/dist/deploymentsSlice/constants.cjs +5 -360
  122. package/dist/deploymentsSlice/constants.cjs.map +1 -1
  123. package/dist/deploymentsSlice/constants.d.cts +59 -39
  124. package/dist/deploymentsSlice/constants.d.ts +59 -39
  125. package/dist/deploymentsSlice/constants.js +5 -11
  126. package/dist/deploymentsSlice/index.cjs +17 -365
  127. package/dist/deploymentsSlice/index.cjs.map +1 -1
  128. package/dist/deploymentsSlice/index.d.cts +142 -2359
  129. package/dist/deploymentsSlice/index.d.ts +142 -2359
  130. package/dist/deploymentsSlice/index.js +6 -6
  131. package/dist/deploymentsSlice/mocks.cjs +429 -0
  132. package/dist/deploymentsSlice/mocks.cjs.map +1 -0
  133. package/dist/deploymentsSlice/mocks.d.cts +189 -0
  134. package/dist/deploymentsSlice/mocks.d.ts +189 -0
  135. package/dist/deploymentsSlice/mocks.js +146 -0
  136. package/dist/deploymentsSlice/mocks.js.map +1 -0
  137. package/dist/deploymentsSlice/selectors.cjs +5 -353
  138. package/dist/deploymentsSlice/selectors.cjs.map +1 -1
  139. package/dist/deploymentsSlice/selectors.d.cts +167 -11
  140. package/dist/deploymentsSlice/selectors.d.ts +167 -11
  141. package/dist/deploymentsSlice/selectors.js +6 -6
  142. package/dist/deploymentsSlice/thunks.cjs +1551 -1778
  143. package/dist/deploymentsSlice/thunks.cjs.map +1 -1
  144. package/dist/deploymentsSlice/thunks.d.cts +134 -76
  145. package/dist/deploymentsSlice/thunks.d.ts +134 -76
  146. package/dist/deploymentsSlice/thunks.js +30 -29
  147. package/dist/devicesSlice/constants.cjs +5 -375
  148. package/dist/devicesSlice/constants.cjs.map +1 -1
  149. package/dist/devicesSlice/constants.d.cts +8 -16
  150. package/dist/devicesSlice/constants.d.ts +8 -16
  151. package/dist/devicesSlice/constants.js +7 -25
  152. package/dist/devicesSlice/index.cjs +17 -381
  153. package/dist/devicesSlice/index.cjs.map +1 -1
  154. package/dist/devicesSlice/index.d.cts +196 -2208
  155. package/dist/devicesSlice/index.d.ts +196 -2208
  156. package/dist/devicesSlice/index.js +6 -6
  157. package/dist/devicesSlice/mocks.cjs +336 -0
  158. package/dist/devicesSlice/mocks.cjs.map +1 -0
  159. package/dist/devicesSlice/mocks.d.cts +154 -0
  160. package/dist/devicesSlice/mocks.d.ts +154 -0
  161. package/dist/devicesSlice/mocks.js +136 -0
  162. package/dist/devicesSlice/mocks.js.map +1 -0
  163. package/dist/devicesSlice/selectors.cjs +280 -293
  164. package/dist/devicesSlice/selectors.cjs.map +1 -1
  165. package/dist/devicesSlice/selectors.d.cts +1791 -82
  166. package/dist/devicesSlice/selectors.d.ts +1791 -82
  167. package/dist/devicesSlice/selectors.js +8 -6
  168. package/dist/devicesSlice/thunks.cjs +1699 -1936
  169. package/dist/devicesSlice/thunks.cjs.map +1 -1
  170. package/dist/devicesSlice/thunks.d.cts +374 -291
  171. package/dist/devicesSlice/thunks.d.ts +374 -291
  172. package/dist/devicesSlice/thunks.js +36 -45
  173. package/dist/liststatehook.cjs +935 -0
  174. package/dist/liststatehook.cjs.map +1 -0
  175. package/dist/liststatehook.d.cts +234 -0
  176. package/dist/liststatehook.d.ts +234 -0
  177. package/dist/liststatehook.js +88 -0
  178. package/dist/liststatehook.js.map +1 -0
  179. package/dist/locationutils.cjs +906 -0
  180. package/dist/locationutils.cjs.map +1 -0
  181. package/dist/locationutils.d.cts +114 -0
  182. package/dist/locationutils.d.ts +114 -0
  183. package/dist/locationutils.js +46 -0
  184. package/dist/locationutils.js.map +1 -0
  185. package/dist/monitorSlice/constants.cjs +0 -146
  186. package/dist/monitorSlice/constants.cjs.map +1 -1
  187. package/dist/monitorSlice/constants.d.cts +4 -5
  188. package/dist/monitorSlice/constants.d.ts +4 -5
  189. package/dist/monitorSlice/constants.js +1 -12
  190. package/dist/monitorSlice/index.cjs +5 -353
  191. package/dist/monitorSlice/index.cjs.map +1 -1
  192. package/dist/monitorSlice/index.d.cts +63 -260
  193. package/dist/monitorSlice/index.d.ts +63 -260
  194. package/dist/monitorSlice/index.js +6 -6
  195. package/dist/monitorSlice/mocks.cjs +130 -0
  196. package/dist/monitorSlice/mocks.cjs.map +1 -0
  197. package/dist/monitorSlice/mocks.d.cts +57 -0
  198. package/dist/monitorSlice/mocks.d.ts +57 -0
  199. package/dist/monitorSlice/mocks.js +65 -0
  200. package/dist/monitorSlice/mocks.js.map +1 -0
  201. package/dist/monitorSlice/thunks.cjs +633 -880
  202. package/dist/monitorSlice/thunks.cjs.map +1 -1
  203. package/dist/monitorSlice/thunks.d.cts +90 -21
  204. package/dist/monitorSlice/thunks.d.ts +90 -21
  205. package/dist/monitorSlice/thunks.js +26 -26
  206. package/dist/onboardingSlice/constants.cjs +1 -0
  207. package/dist/onboardingSlice/constants.cjs.map +1 -1
  208. package/dist/onboardingSlice/constants.d.cts +23 -20
  209. package/dist/onboardingSlice/constants.d.ts +23 -20
  210. package/dist/onboardingSlice/constants.js +1 -1
  211. package/dist/onboardingSlice/index.cjs +1 -3
  212. package/dist/onboardingSlice/index.cjs.map +1 -1
  213. package/dist/onboardingSlice/index.d.cts +50 -225
  214. package/dist/onboardingSlice/index.d.ts +50 -225
  215. package/dist/onboardingSlice/index.js +1 -1
  216. package/dist/onboardingSlice/mocks.cjs +83 -0
  217. package/dist/onboardingSlice/mocks.cjs.map +1 -0
  218. package/dist/onboardingSlice/mocks.d.cts +19 -0
  219. package/dist/onboardingSlice/mocks.d.ts +19 -0
  220. package/dist/onboardingSlice/mocks.js +17 -0
  221. package/dist/onboardingSlice/mocks.js.map +1 -0
  222. package/dist/onboardingSlice/thunks.cjs +1787 -2020
  223. package/dist/onboardingSlice/thunks.cjs.map +1 -1
  224. package/dist/onboardingSlice/thunks.d.cts +63 -36
  225. package/dist/onboardingSlice/thunks.d.ts +63 -36
  226. package/dist/onboardingSlice/thunks.js +30 -31
  227. package/dist/organizationSlice/constants.cjs +8 -748
  228. package/dist/organizationSlice/constants.cjs.map +1 -1
  229. package/dist/organizationSlice/constants.d.cts +36 -116
  230. package/dist/organizationSlice/constants.d.ts +36 -116
  231. package/dist/organizationSlice/constants.js +7 -17
  232. package/dist/organizationSlice/index.cjs +14 -368
  233. package/dist/organizationSlice/index.cjs.map +1 -1
  234. package/dist/organizationSlice/index.d.cts +45 -73
  235. package/dist/organizationSlice/index.d.ts +45 -73
  236. package/dist/organizationSlice/index.js +6 -6
  237. package/dist/organizationSlice/mocks.cjs +234 -0
  238. package/dist/organizationSlice/mocks.cjs.map +1 -0
  239. package/dist/organizationSlice/mocks.d.cts +107 -0
  240. package/dist/organizationSlice/mocks.d.ts +107 -0
  241. package/dist/organizationSlice/mocks.js +101 -0
  242. package/dist/organizationSlice/mocks.js.map +1 -0
  243. package/dist/organizationSlice/selectors.cjs +301 -146
  244. package/dist/organizationSlice/selectors.cjs.map +1 -1
  245. package/dist/organizationSlice/selectors.d.cts +888 -51
  246. package/dist/organizationSlice/selectors.d.ts +888 -51
  247. package/dist/organizationSlice/selectors.js +14 -6
  248. package/dist/organizationSlice/thunks.cjs +2616 -2759
  249. package/dist/organizationSlice/thunks.cjs.map +1 -1
  250. package/dist/organizationSlice/thunks.d.cts +322 -131
  251. package/dist/organizationSlice/thunks.d.ts +322 -131
  252. package/dist/organizationSlice/thunks.js +44 -29
  253. package/dist/organizationSlice/types.cjs.map +1 -1
  254. package/dist/organizationSlice/types.d.cts +62 -79
  255. package/dist/organizationSlice/types.d.ts +62 -79
  256. package/dist/releasesSlice/constants.cjs +3 -0
  257. package/dist/releasesSlice/constants.cjs.map +1 -1
  258. package/dist/releasesSlice/constants.d.cts +2 -1
  259. package/dist/releasesSlice/constants.d.ts +2 -1
  260. package/dist/releasesSlice/constants.js +3 -1
  261. package/dist/releasesSlice/index.cjs +5 -222
  262. package/dist/releasesSlice/index.cjs.map +1 -1
  263. package/dist/releasesSlice/index.d.cts +52 -473
  264. package/dist/releasesSlice/index.d.ts +52 -473
  265. package/dist/releasesSlice/index.js +6 -6
  266. package/dist/releasesSlice/mocks.cjs +177 -0
  267. package/dist/releasesSlice/mocks.cjs.map +1 -0
  268. package/dist/releasesSlice/mocks.d.cts +49 -0
  269. package/dist/releasesSlice/mocks.d.ts +49 -0
  270. package/dist/releasesSlice/mocks.js +61 -0
  271. package/dist/releasesSlice/mocks.js.map +1 -0
  272. package/dist/releasesSlice/selectors.cjs +293 -165
  273. package/dist/releasesSlice/selectors.cjs.map +1 -1
  274. package/dist/releasesSlice/selectors.d.cts +886 -24
  275. package/dist/releasesSlice/selectors.d.ts +886 -24
  276. package/dist/releasesSlice/selectors.js +9 -7
  277. package/dist/releasesSlice/thunks.cjs +827 -1017
  278. package/dist/releasesSlice/thunks.cjs.map +1 -1
  279. package/dist/releasesSlice/thunks.d.cts +150 -130
  280. package/dist/releasesSlice/thunks.d.ts +150 -130
  281. package/dist/releasesSlice/thunks.js +33 -26
  282. package/dist/selectors.cjs +565 -780
  283. package/dist/selectors.cjs.map +1 -1
  284. package/dist/selectors.d.cts +37 -8
  285. package/dist/selectors.d.ts +37 -8
  286. package/dist/selectors.js +54 -18
  287. package/dist/sockethook.cjs +519 -0
  288. package/dist/sockethook.cjs.map +1 -0
  289. package/dist/sockethook.d.cts +10 -0
  290. package/dist/sockethook.d.ts +10 -0
  291. package/dist/sockethook.js +139 -0
  292. package/dist/sockethook.js.map +1 -0
  293. package/dist/store.cjs +121 -840
  294. package/dist/store.cjs.map +1 -1
  295. package/dist/store.d.cts +697 -1961
  296. package/dist/store.d.ts +697 -1961
  297. package/dist/store.js +18 -16
  298. package/dist/storehooks.cjs +1854 -1968
  299. package/dist/storehooks.cjs.map +1 -1
  300. package/dist/storehooks.js +46 -63
  301. package/dist/storehooks.js.map +1 -1
  302. package/dist/thunks.cjs +2138 -2231
  303. package/dist/thunks.cjs.map +1 -1
  304. package/dist/thunks.d.cts +25 -7
  305. package/dist/thunks.d.ts +25 -7
  306. package/dist/thunks.js +54 -45
  307. package/dist/{deploymentdevicehook.cjs → useDeploymentDevice.cjs} +1797 -2026
  308. package/dist/useDeploymentDevice.cjs.map +1 -0
  309. package/dist/useDeploymentDevice.js +63 -0
  310. package/dist/useDeploymentDevice.js.map +1 -0
  311. package/dist/usersSlice/constants.cjs +5 -747
  312. package/dist/usersSlice/constants.cjs.map +1 -1
  313. package/dist/usersSlice/constants.d.cts +16 -774
  314. package/dist/usersSlice/constants.d.ts +16 -774
  315. package/dist/usersSlice/constants.js +7 -30
  316. package/dist/usersSlice/index.cjs +10 -721
  317. package/dist/usersSlice/index.cjs.map +1 -1
  318. package/dist/usersSlice/index.d.cts +136 -7900
  319. package/dist/usersSlice/index.d.ts +136 -7900
  320. package/dist/usersSlice/index.js +6 -6
  321. package/dist/usersSlice/mocks.cjs +200 -0
  322. package/dist/usersSlice/mocks.cjs.map +1 -0
  323. package/dist/usersSlice/mocks.d.cts +83 -0
  324. package/dist/usersSlice/mocks.d.ts +83 -0
  325. package/dist/usersSlice/mocks.js +47 -0
  326. package/dist/usersSlice/mocks.js.map +1 -0
  327. package/dist/usersSlice/selectors.cjs +319 -566
  328. package/dist/usersSlice/selectors.cjs.map +1 -1
  329. package/dist/usersSlice/selectors.d.cts +1651 -59
  330. package/dist/usersSlice/selectors.d.ts +1651 -59
  331. package/dist/usersSlice/selectors.js +13 -9
  332. package/dist/usersSlice/thunks.cjs +1666 -1893
  333. package/dist/usersSlice/thunks.cjs.map +1 -1
  334. package/dist/usersSlice/thunks.d.cts +362 -312
  335. package/dist/usersSlice/thunks.d.ts +362 -312
  336. package/dist/usersSlice/thunks.js +30 -29
  337. package/dist/utils.cjs +428 -292
  338. package/dist/utils.cjs.map +1 -1
  339. package/dist/utils.d.cts +44 -22
  340. package/dist/utils.d.ts +44 -22
  341. package/dist/utils.js +12 -6
  342. package/package.json +18 -8
  343. package/dist/api/types/AWSCredentials.ts +0 -16
  344. package/dist/api/types/Actor.ts +0 -35
  345. package/dist/api/types/Addon.ts +0 -17
  346. package/dist/api/types/AddonTenantadm.ts +0 -17
  347. package/dist/api/types/Address.ts +0 -6
  348. package/dist/api/types/AddressUpdate.ts +0 -12
  349. package/dist/api/types/Alert.ts +0 -34
  350. package/dist/api/types/AlertDetails.ts +0 -23
  351. package/dist/api/types/AlertSubject.ts +0 -23
  352. package/dist/api/types/ApiBurst.ts +0 -21
  353. package/dist/api/types/ApiBurstTenantadm.ts +0 -21
  354. package/dist/api/types/ApiLimits.ts +0 -16
  355. package/dist/api/types/ApiLimitsTenantadm.ts +0 -16
  356. package/dist/api/types/ApiQuota.ts +0 -17
  357. package/dist/api/types/ApiQuotaTenantadm.ts +0 -17
  358. package/dist/api/types/Artifact.ts +0 -48
  359. package/dist/api/types/ArtifactDeployments.ts +0 -48
  360. package/dist/api/types/ArtifactInfo.ts +0 -11
  361. package/dist/api/types/ArtifactInfoDeployments.ts +0 -11
  362. package/dist/api/types/ArtifactLink.ts +0 -11
  363. package/dist/api/types/ArtifactTypeInfo.ts +0 -13
  364. package/dist/api/types/ArtifactTypeInfoDeployments.ts +0 -13
  365. package/dist/api/types/ArtifactUpdate.ts +0 -10
  366. package/dist/api/types/ArtifactUploadLink.ts +0 -15
  367. package/dist/api/types/Attribute.ts +0 -36
  368. package/dist/api/types/AttributeInventory.ts +0 -32
  369. package/dist/api/types/AuditLog.ts +0 -26
  370. package/dist/api/types/AuthSet.ts +0 -37
  371. package/dist/api/types/AuthSetDeviceauth.ts +0 -37
  372. package/dist/api/types/AuthSetIot_manager.ts +0 -33
  373. package/dist/api/types/AutoAuthRequest.ts +0 -23
  374. package/dist/api/types/AzureSharedAccessSecret.ts +0 -11
  375. package/dist/api/types/BillingInfo.ts +0 -13
  376. package/dist/api/types/BillingProfile.ts +0 -37
  377. package/dist/api/types/BillingProfileUpdate.ts +0 -37
  378. package/dist/api/types/BinaryDeltaConfiguration.ts +0 -15
  379. package/dist/api/types/BinaryDeltaConfigurationDeployments.ts +0 -15
  380. package/dist/api/types/BinaryDeltaLimits.ts +0 -21
  381. package/dist/api/types/BinaryDeltaLimitsDeployments.ts +0 -15
  382. package/dist/api/types/BoundingBox.ts +0 -9
  383. package/dist/api/types/CancelRequest.ts +0 -10
  384. package/dist/api/types/CardData.ts +0 -49
  385. package/dist/api/types/CardSetupData.ts +0 -17
  386. package/dist/api/types/CheckoutData.ts +0 -13
  387. package/dist/api/types/Configuration.ts +0 -11
  388. package/dist/api/types/Count.ts +0 -13
  389. package/dist/api/types/Credentials.ts +0 -23
  390. package/dist/api/types/DBusSubsystem.ts +0 -27
  391. package/dist/api/types/DeltaConfiguration.ts +0 -14
  392. package/dist/api/types/DeltaConfigurationDeployments.ts +0 -14
  393. package/dist/api/types/Deployment.ts +0 -45
  394. package/dist/api/types/DeploymentAggregation.ts +0 -16
  395. package/dist/api/types/DeploymentAggregationItem.ts +0 -16
  396. package/dist/api/types/DeploymentAggregationTerm.ts +0 -22
  397. package/dist/api/types/DeploymentAggregationTerms.ts +0 -16
  398. package/dist/api/types/DeploymentAttributeProjection.ts +0 -10
  399. package/dist/api/types/DeploymentAuditlogs.ts +0 -11
  400. package/dist/api/types/DeploymentDeployments.ts +0 -98
  401. package/dist/api/types/DeploymentFilterTerm.ts +0 -35
  402. package/dist/api/types/DeploymentIdentifier.ts +0 -10
  403. package/dist/api/types/DeploymentPhase.ts +0 -23
  404. package/dist/api/types/DeploymentPhaseDeployments.ts +0 -23
  405. package/dist/api/types/DeploymentReporting.ts +0 -46
  406. package/dist/api/types/DeploymentSearchTerms.ts +0 -37
  407. package/dist/api/types/DeploymentSortTerm.ts +0 -23
  408. package/dist/api/types/DeploymentStatistics.ts +0 -15
  409. package/dist/api/types/DeploymentStatisticsDeployments.ts +0 -15
  410. package/dist/api/types/DeploymentStatusStatistics.ts +0 -54
  411. package/dist/api/types/DeploymentStatusStatisticsDeployments.ts +0 -54
  412. package/dist/api/types/Device.ts +0 -20
  413. package/dist/api/types/DeviceAggregation.ts +0 -16
  414. package/dist/api/types/DeviceAggregationItem.ts +0 -16
  415. package/dist/api/types/DeviceAggregationTerm.ts +0 -26
  416. package/dist/api/types/DeviceAggregationTerms.ts +0 -20
  417. package/dist/api/types/DeviceAttribute.ts +0 -22
  418. package/dist/api/types/DeviceAttributeProjection.ts +0 -14
  419. package/dist/api/types/DeviceAuditlogs.ts +0 -17
  420. package/dist/api/types/DeviceAuthEvent.ts +0 -23
  421. package/dist/api/types/DeviceConfiguration.ts +0 -16
  422. package/dist/api/types/DeviceDeployment.ts +0 -11
  423. package/dist/api/types/DeviceDeployments.ts +0 -29
  424. package/dist/api/types/DeviceDeviceauth.ts +0 -42
  425. package/dist/api/types/DeviceFilterAttribute.ts +0 -21
  426. package/dist/api/types/DeviceFilterTerm.ts +0 -39
  427. package/dist/api/types/DeviceInventory.ts +0 -19
  428. package/dist/api/types/DeviceInventoryInventory.ts +0 -19
  429. package/dist/api/types/DeviceReporting.ts +0 -22
  430. package/dist/api/types/DeviceSearchTerms.ts +0 -37
  431. package/dist/api/types/DeviceSortTerm.ts +0 -27
  432. package/dist/api/types/DeviceState.ts +0 -32
  433. package/dist/api/types/DeviceStateDeviceconnect.ts +0 -33
  434. package/dist/api/types/DeviceStateIot_manager.ts +0 -14
  435. package/dist/api/types/DeviceStatus.ts +0 -19
  436. package/dist/api/types/DeviceWithImage.ts +0 -80
  437. package/dist/api/types/DirectUploadMetadata.ts +0 -18
  438. package/dist/api/types/EmailVerificationCompletion.ts +0 -13
  439. package/dist/api/types/EmailVerificationRequest.ts +0 -13
  440. package/dist/api/types/Error.ts +0 -17
  441. package/dist/api/types/ErrorAuditlogs.ts +0 -13
  442. package/dist/api/types/ErrorDeployments.ts +0 -17
  443. package/dist/api/types/ErrorDeviceauth.ts +0 -13
  444. package/dist/api/types/ErrorDeviceconfig.ts +0 -17
  445. package/dist/api/types/ErrorDeviceconnect.ts +0 -17
  446. package/dist/api/types/ErrorDevicemonitor.ts +0 -17
  447. package/dist/api/types/ErrorExt.ts +0 -18
  448. package/dist/api/types/ErrorInventory.ts +0 -17
  449. package/dist/api/types/ErrorIot_manager.ts +0 -17
  450. package/dist/api/types/ErrorNotFound.ts +0 -17
  451. package/dist/api/types/ErrorReporting.ts +0 -18
  452. package/dist/api/types/ErrorTenantadm.ts +0 -13
  453. package/dist/api/types/ErrorUseradm.ts +0 -17
  454. package/dist/api/types/Event.ts +0 -48
  455. package/dist/api/types/ExternalIdentity.ts +0 -17
  456. package/dist/api/types/Features.ts +0 -17
  457. package/dist/api/types/FileUpload.ts +0 -23
  458. package/dist/api/types/Filter.ts +0 -19
  459. package/dist/api/types/FilterAttribute.ts +0 -21
  460. package/dist/api/types/FilterDefinition.ts +0 -18
  461. package/dist/api/types/FilterDeployments.ts +0 -19
  462. package/dist/api/types/FilterInventory.ts +0 -19
  463. package/dist/api/types/FilterPredicate.ts +0 -48
  464. package/dist/api/types/FilterPredicateDeployments.ts +0 -48
  465. package/dist/api/types/FilterPredicateInventory.ts +0 -78
  466. package/dist/api/types/GeoBoundingBox.ts +0 -8
  467. package/dist/api/types/GeoBoundingBoxFilter.ts +0 -5
  468. package/dist/api/types/GeoDistance.ts +0 -15
  469. package/dist/api/types/GeoDistanceFilter.ts +0 -8
  470. package/dist/api/types/GeoPoint.ts +0 -14
  471. package/dist/api/types/Group.ts +0 -10
  472. package/dist/api/types/HTTP.ts +0 -19
  473. package/dist/api/types/IdentityData.ts +0 -25
  474. package/dist/api/types/InputParameter.ts +0 -8
  475. package/dist/api/types/Integration.ts +0 -30
  476. package/dist/api/types/JobStatus.ts +0 -13
  477. package/dist/api/types/Limit.ts +0 -21
  478. package/dist/api/types/LimitDeployments.ts +0 -21
  479. package/dist/api/types/LimitDeviceauth.ts +0 -10
  480. package/dist/api/types/LimitUseradm.ts +0 -11
  481. package/dist/api/types/Limits.ts +0 -11
  482. package/dist/api/types/LineDescriptor.ts +0 -11
  483. package/dist/api/types/LogSubsystem.ts +0 -23
  484. package/dist/api/types/LoginOptions.ts +0 -18
  485. package/dist/api/types/ManagementAPIConfiguration.ts +0 -5
  486. package/dist/api/types/MenderTypes.ts +0 -213
  487. package/dist/api/types/MonitorConfiguration.ts +0 -22
  488. package/dist/api/types/NewConfigurationDeployment.ts +0 -15
  489. package/dist/api/types/NewConfigurationDeploymentResponse.ts +0 -10
  490. package/dist/api/types/NewDeployment.ts +0 -42
  491. package/dist/api/types/NewDeploymentForGroup.ts +0 -33
  492. package/dist/api/types/NewDeploymentPhase.ts +0 -37
  493. package/dist/api/types/NewDeploymentPhaseDeployments.ts +0 -20
  494. package/dist/api/types/NewDeploymentV2.ts +0 -34
  495. package/dist/api/types/NewTenant.ts +0 -49
  496. package/dist/api/types/Object.ts +0 -38
  497. package/dist/api/types/OwnUserUpdate.ts +0 -21
  498. package/dist/api/types/PasswordResetCompletion.ts +0 -17
  499. package/dist/api/types/PasswordResetRequest.ts +0 -13
  500. package/dist/api/types/Permission.ts +0 -21
  501. package/dist/api/types/PermissionObject.ts +0 -14
  502. package/dist/api/types/PermissionSet.ts +0 -22
  503. package/dist/api/types/PermissionSetWithScope.ts +0 -15
  504. package/dist/api/types/PersonalAccessToken.ts +0 -29
  505. package/dist/api/types/PersonalAccessTokenRequest.ts +0 -18
  506. package/dist/api/types/Plan.ts +0 -19
  507. package/dist/api/types/PlanBindingDetails.ts +0 -13
  508. package/dist/api/types/PlanChangeRequest.ts +0 -14
  509. package/dist/api/types/PlanLimits.ts +0 -12
  510. package/dist/api/types/PreAuthSet.ts +0 -16
  511. package/dist/api/types/Release.ts +0 -32
  512. package/dist/api/types/ReleaseDeployments.ts +0 -32
  513. package/dist/api/types/ReleaseUpdate.ts +0 -13
  514. package/dist/api/types/Releases.ts +0 -9
  515. package/dist/api/types/ReleasesDeleteError.ts +0 -21
  516. package/dist/api/types/ReleasesDeployments.ts +0 -9
  517. package/dist/api/types/Role.ts +0 -19
  518. package/dist/api/types/RolePermission.ts +0 -25
  519. package/dist/api/types/RolePermissionObject.ts +0 -17
  520. package/dist/api/types/RoleUseradm.ts +0 -19
  521. package/dist/api/types/SAMLMetadata.ts +0 -21
  522. package/dist/api/types/Scope.ts +0 -19
  523. package/dist/api/types/SelectAttribute.ts +0 -17
  524. package/dist/api/types/ServiceSubsystem.ts +0 -19
  525. package/dist/api/types/Settings.ts +0 -23
  526. package/dist/api/types/SortCriteria.ts +0 -30
  527. package/dist/api/types/SsoObject.ts +0 -21
  528. package/dist/api/types/Status.ts +0 -18
  529. package/dist/api/types/StatusDeviceauth.ts +0 -18
  530. package/dist/api/types/StatusTenantadm.ts +0 -17
  531. package/dist/api/types/StorageLimit.ts +0 -17
  532. package/dist/api/types/SubscriptionData.ts +0 -8
  533. package/dist/api/types/SupportRequest.ts +0 -17
  534. package/dist/api/types/Tag.ts +0 -27
  535. package/dist/api/types/Tags.ts +0 -10
  536. package/dist/api/types/TaskResult.ts +0 -13
  537. package/dist/api/types/TaskResultCLI.ts +0 -10
  538. package/dist/api/types/TaskResultHTTPRequest.ts +0 -8
  539. package/dist/api/types/TaskResultHTTPResponse.ts +0 -10
  540. package/dist/api/types/Tenant.ts +0 -26
  541. package/dist/api/types/TenantApiLimits.ts +0 -12
  542. package/dist/api/types/TenantApiLimitsTenantadm.ts +0 -12
  543. package/dist/api/types/TenantIdName.ts +0 -14
  544. package/dist/api/types/TenantIdsData.ts +0 -10
  545. package/dist/api/types/TenantInfo.ts +0 -14
  546. package/dist/api/types/TenantShortInfo.ts +0 -21
  547. package/dist/api/types/TenantTenantadm.ts +0 -54
  548. package/dist/api/types/TenantsIdName.ts +0 -6
  549. package/dist/api/types/Update.ts +0 -17
  550. package/dist/api/types/UpdateChildTenant.ts +0 -17
  551. package/dist/api/types/UpdateDeployments.ts +0 -18
  552. package/dist/api/types/UpdateFile.ts +0 -13
  553. package/dist/api/types/UpdateFileDeployments.ts +0 -13
  554. package/dist/api/types/UpdateTypes.ts +0 -8
  555. package/dist/api/types/UpgradeCompleteRequest.ts +0 -25
  556. package/dist/api/types/User.ts +0 -13
  557. package/dist/api/types/UserAuditlogs.ts +0 -13
  558. package/dist/api/types/UserNew.ts +0 -26
  559. package/dist/api/types/UserUpdate.ts +0 -25
  560. package/dist/api/types/UserUseradm.ts +0 -45
  561. package/dist/api/types/UserWithTenantInfo.ts +0 -12
  562. package/dist/api/types/XDeltaArgs.ts +0 -9
  563. package/dist/api/types/XDeltaArgsDeployments.ts +0 -9
  564. package/dist/api/types/XDeltaArgsLimits.ts +0 -10
  565. package/dist/api/types/XDeltaArgsLimitsDeployments.ts +0 -10
  566. package/dist/chunk-2CYOM4BK.js.map +0 -1
  567. package/dist/chunk-2JHFUQ6B.js.map +0 -1
  568. package/dist/chunk-4B3IMP4I.js +0 -245
  569. package/dist/chunk-4B3IMP4I.js.map +0 -1
  570. package/dist/chunk-4XJMRVFI.js.map +0 -1
  571. package/dist/chunk-7JKWI5FK.js.map +0 -1
  572. package/dist/chunk-7PVGDMNM.js.map +0 -1
  573. package/dist/chunk-AMGWP7A4.js.map +0 -1
  574. package/dist/chunk-C5NEDBJI.js +0 -727
  575. package/dist/chunk-C5NEDBJI.js.map +0 -1
  576. package/dist/chunk-CYV6632F.js.map +0 -1
  577. package/dist/chunk-DCK2DBOA.js.map +0 -1
  578. package/dist/chunk-FGKMJS3B.js.map +0 -1
  579. package/dist/chunk-HPBE6KYY.js.map +0 -1
  580. package/dist/chunk-JAROCU6M.js.map +0 -1
  581. package/dist/chunk-LEMVXAYP.js.map +0 -1
  582. package/dist/chunk-LGNOTPUG.js +0 -106
  583. package/dist/chunk-LGNOTPUG.js.map +0 -1
  584. package/dist/chunk-LIJIIRON.js +0 -28
  585. package/dist/chunk-LIJIIRON.js.map +0 -1
  586. package/dist/chunk-LTKOV26W.js.map +0 -1
  587. package/dist/chunk-MRCFLG45.js.map +0 -1
  588. package/dist/chunk-QRGTG4YB.js.map +0 -1
  589. package/dist/chunk-TI2RL5P2.js.map +0 -1
  590. package/dist/chunk-TUACATJA.js.map +0 -1
  591. package/dist/chunk-UWMYZNUB.js.map +0 -1
  592. package/dist/chunk-VMNMD6KF.js.map +0 -1
  593. package/dist/chunk-WXL7PVI5.js.map +0 -1
  594. package/dist/chunk-X7IEZBM4.js.map +0 -1
  595. package/dist/chunk-YDS36ALB.js.map +0 -1
  596. package/dist/chunk-YT73QWCN.js.map +0 -1
  597. package/dist/deploymentdevicehook.cjs.map +0 -1
  598. package/dist/deploymentdevicehook.js +0 -62
  599. package/dist/deploymentdevicehook.js.map +0 -1
  600. /package/dist/{chunk-DAPAXWA5.js.map → chunk-URNS6A5T.js.map} +0 -0
  601. /package/dist/{deploymentdevicehook.d.cts → useDeploymentDevice.d.cts} +0 -0
  602. /package/dist/{deploymentdevicehook.d.ts → useDeploymentDevice.d.ts} +0 -0
package/dist/store.cjs CHANGED
@@ -32,6 +32,7 @@ var store_exports = {};
32
32
  __export(store_exports, {
33
33
  commonErrorFallback: () => commonErrorFallback,
34
34
  commonErrorHandler: () => commonErrorHandler,
35
+ createAppAsyncThunk: () => createAppAsyncThunk,
35
36
  getConfiguredStore: () => getConfiguredStore,
36
37
  sessionReducer: () => sessionReducer,
37
38
  store: () => store,
@@ -41,362 +42,16 @@ module.exports = __toCommonJS(store_exports);
41
42
  var import_react_redux = require("react-redux");
42
43
  var import_helpers2 = require("@northern.tech/utils/helpers");
43
44
  var import_toolkit9 = require("@reduxjs/toolkit");
45
+ var import_react = require("@sentry/react");
44
46
 
45
- // src/appSlice/constants.ts
46
- var import_icons_material = require("@mui/icons-material");
47
- var startingDeviceCount = {
48
- os: "for first 50 devices",
49
- professional: "for first 250 devices"
50
- };
51
- var apiRoot = "/api/management";
52
- var apiUrl = {
53
- v1: `${apiRoot}/v1`,
54
- v2: `${apiRoot}/v2`
55
- };
56
- var chartTypes = {
57
- bar: { key: "bar", Icon: import_icons_material.BarChart },
58
- pie: { key: "pie", Icon: import_icons_material.PieChartOutline }
59
- };
60
- var emptyChartSelection = { software: "", group: "", chartType: chartTypes.bar.key, attribute: "artifact_name" };
61
- var defaultReportType = "distribution";
62
- var defaultReports = [{ ...emptyChartSelection, group: null, attribute: "artifact_name", type: defaultReportType }];
63
- var PLANS = {
64
- os: {
65
- id: "os",
66
- name: "Basic",
67
- offer: true,
68
- price: "$32 / month",
69
- deviceCount: startingDeviceCount.os,
70
- offerprice: "$23 / month for first 50 devices",
71
- price2: "for first 6 months;\n$29/month thereafter",
72
- features: ["Access to core features of Mender", "Basic support"]
73
- },
74
- professional: {
75
- id: "professional",
76
- name: "Professional",
77
- offer: true,
78
- price: "$269 / month",
79
- deviceCount: startingDeviceCount.professional,
80
- offerprice: "$200 / month for first 50 devices",
81
- price2: "for first 6 months;\n$249/month thereafter",
82
- features: ["Advanced OTA features", "Higher priority support"]
83
- },
84
- enterprise: {
85
- id: "enterprise",
86
- name: "Enterprise",
87
- price: "Custom pricing",
88
- deviceCount: "Unlimited devices",
89
- features: ["All Mender features", "Advanced security features", "SLA-backed support"]
90
- }
91
- };
92
- var ADDONS = {
93
- configure: {
94
- id: "configure",
95
- title: "Configure",
96
- description: "Expand your plan with device configuration features",
97
- needs: ["hasDeviceConfig"],
98
- os: {
99
- price: "$11/month",
100
- deviceCount: startingDeviceCount.os
101
- },
102
- professional: {
103
- price: "$65/month",
104
- deviceCount: startingDeviceCount.professional
105
- },
106
- eligible: ["os", "professional", "enterprise"]
107
- },
108
- troubleshoot: {
109
- id: "troubleshoot",
110
- title: "Troubleshoot",
111
- description: "Expand your plan with device troubleshooting features",
112
- needs: ["hasDeviceConnect"],
113
- os: {
114
- price: "$27/month",
115
- deviceCount: startingDeviceCount.os
116
- },
117
- professional: {
118
- price: "$72/month",
119
- deviceCount: startingDeviceCount.professional
120
- },
121
- eligible: ["os", "professional", "enterprise"]
122
- },
123
- monitor: {
124
- id: "monitor",
125
- title: "Monitor",
126
- description: "Expand your plan with device monitoring features",
127
- needs: ["hasMonitor"],
128
- os: {
129
- price: "-",
130
- deviceCount: "-"
131
- },
132
- professional: {
133
- price: "$86/month",
134
- deviceCount: startingDeviceCount.professional
135
- },
136
- eligible: ["professional", "enterprise"]
137
- }
138
- };
139
- var BENEFITS = {
140
- auditlog: { id: "auditlog", benefit: "trace change across your devices and access troubleshooting session replay", requiredPlan: PLANS.professional.id },
141
- dashboard: { id: "dashboard", benefit: "actionable insights into the devices you are updating with Mender", requiredPlan: PLANS.enterprise.id },
142
- deltaGeneration: {
143
- id: "deltaGeneration",
144
- benefit: "automatic delta artifacts generation to minimize data transfer and improve the update delivery",
145
- requiredPlan: PLANS.enterprise.id
146
- },
147
- deviceConfiguration: { id: "deviceConfiguration", benefit: "device configuration features", requiredAddon: ADDONS.configure.id },
148
- deviceMonitor: { id: "deviceMonitor", benefit: "device monitoring features", requiredAddon: ADDONS.monitor.id, requiredPlan: PLANS.professional.id },
149
- deviceTroubleshoot: { id: "deviceTroubleshoot", benefit: "device troubleshooting features", requiredAddon: ADDONS.troubleshoot.id },
150
- dynamicGroups: { id: "dynamicGroups", benefit: "create dynamic groups to ease device management", requiredPlan: PLANS.enterprise.id },
151
- fullFiltering: { id: "fullFiltering", benefit: "filtering by multiple attributes to improve the device overview", requiredPlan: PLANS.professional.id },
152
- gateway: { id: "gateway", benefit: "see devices connected to your gateway device for easy access", requiredPlans: PLANS.professional.id },
153
- pausedDeployments: {
154
- id: "pausedDeployments",
155
- benefit: "granular control about update rollout to allow synchronization across your fleet",
156
- requiredPlan: PLANS.enterprise.id
157
- },
158
- phasedDeployments: { id: "phasedDeployments", benefit: "choose to roll out deployments in multiple phases", requiredPlan: PLANS.enterprise.id },
159
- rbac: { id: "rbac", benefit: "granular role based access control", requiredPlan: PLANS.enterprise.id },
160
- retryDeployments: { id: "retryDeployments", benefit: "optional retries for failed rollout attempts", requiredPlan: PLANS.professional.id },
161
- scheduledDeployments: {
162
- id: "scheduledDeployments",
163
- benefit: "scheduled deployments to steer the distribution of your updates.",
164
- requiredPlan: PLANS.professional.id
165
- },
166
- webhookEvents: {
167
- id: "webhookEvents",
168
- benefit: "receive inventory events and select which type(s) of events the webhook will receive",
169
- requiredPlan: PLANS.professional.id
170
- },
171
- default: { id: "default", benefit: "gain access to this feature", requiredPlan: PLANS.enterprise.id }
172
- };
47
+ // src/appSlice/index.ts
48
+ var import_toolkit = require("@reduxjs/toolkit");
173
49
 
174
- // src/commonConstants.tsx
175
- var import_js = require("@mdi/js");
176
- var import_jsx_runtime = require("react/jsx-runtime");
177
- var DEVICE_LIST_DEFAULTS = {
178
- page: 1,
179
- perPage: 20
180
- };
181
- var timeUnits = {
182
- days: "days",
183
- minutes: "minutes",
184
- hours: "hours"
185
- };
186
- var ALL_DEVICES = "All devices";
187
- var DEVICE_FILTERING_OPTIONS = {
188
- $eq: { key: "$eq", title: "equals", shortform: "=" },
189
- $ne: { key: "$ne", title: "not equal", shortform: "!=" },
190
- $gt: {
191
- key: "$gt",
192
- title: ">",
193
- shortform: ">",
194
- help: 'The "greater than" operator can work both on numbers and strings. In the latter case, the operator applies the lexicographical order to the value strings.'
195
- },
196
- $gte: {
197
- title: ">=",
198
- shortform: ">=",
199
- help: 'The "greater than or equal" operator can work both on numbers and strings. In the latter case, the operator applies the lexicographical order to the value strings.'
200
- },
201
- $lt: {
202
- key: "$lt",
203
- title: "<",
204
- shortform: "<",
205
- help: 'The "lesser than" operator can work both on numbers and strings. In the latter case, the operator applies the lexicographical order to the value strings.'
206
- },
207
- $lte: {
208
- title: "<=",
209
- shortform: "<=",
210
- help: 'The "lesser than or equal" operator can work both on numbers and strings. In the latter case, the operator applies the lexicographical order to the value strings.'
211
- },
212
- $ltne: {
213
- key: "$ltne",
214
- title: "$ltne",
215
- shortform: "ltne",
216
- help: 'The "lesser than or does not exist" operator can work both on numbers and strings. In the latter case, the operator applies the lexicographical order to the value strings.'
217
- },
218
- $in: {
219
- key: "$in",
220
- title: "in",
221
- shortform: "in",
222
- help: 'The "in" operator accepts a list of comma-separated values. It matches if the selected field is equal to one of the specified values.'
223
- },
224
- $nin: {
225
- key: "$nin",
226
- title: "not in",
227
- shortform: "not in",
228
- help: `The "not in" operator accepts a list of comma-separated values. It matches if the selected field's value is not equal to any of the specified options.`
229
- },
230
- $exists: {
231
- key: "$exists",
232
- title: "exists",
233
- shortform: "exists",
234
- value: true,
235
- help: `The "exists" operator matches if the selected field's value has a value. No value needs to be provided for this operator.`
236
- },
237
- $nexists: {
238
- key: "$nexists",
239
- title: `doesn't exist`,
240
- shortform: `doesn't exist`,
241
- value: true,
242
- help: `The "doesn't exist" operator matches if the selected field's value has no value. No value needs to be provided for this operator.`
243
- },
244
- $regex: {
245
- key: "$regex",
246
- title: `matches regular expression`,
247
- shortform: `matches`,
248
- help: `The "regular expression" operator matches the selected field's value with a Perl compatible regular expression (PCRE), automatically anchored by ^. If the regular expression is not valid, the filter will produce no results. If you need to specify options and flags, you can provide the full regex in the format of /regex/flags, for example.`
249
- }
250
- };
251
- var DEVICE_ISSUE_OPTIONS = {
252
- issues: {
253
- isCategory: true,
254
- key: "issues",
255
- title: "Devices with issues",
256
- filterRule: {}
257
- },
258
- offline: {
259
- issueCategory: "issues",
260
- key: "offline",
261
- needsFullFiltering: true,
262
- needsMonitor: false,
263
- needsReporting: false,
264
- filterRule: {
265
- scope: "system",
266
- key: "check_in_time",
267
- operator: DEVICE_FILTERING_OPTIONS.$ltne.key,
268
- value: ({ offlineThreshold }) => offlineThreshold
269
- },
270
- title: "Offline devices"
271
- },
272
- failedLastUpdate: {
273
- issueCategory: "issues",
274
- key: "failedLastUpdate",
275
- needsFullFiltering: false,
276
- needsMonitor: false,
277
- needsReporting: true,
278
- filterRule: { scope: "monitor", key: "failed_last_update", operator: DEVICE_FILTERING_OPTIONS.$eq.key, value: true },
279
- title: "Deployment failed"
280
- },
281
- monitoring: {
282
- issueCategory: "issues",
283
- key: "monitoring",
284
- needsFullFiltering: false,
285
- needsMonitor: true,
286
- needsReporting: false,
287
- filterRule: { scope: "monitor", key: "alerts", operator: DEVICE_FILTERING_OPTIONS.$eq.key, value: true },
288
- title: "Monitoring alert"
289
- },
290
- authRequests: {
291
- key: "authRequests",
292
- needsFullFiltering: false,
293
- needsMonitor: false,
294
- needsReporting: true,
295
- filterRule: { scope: "monitor", key: "auth_requests", operator: DEVICE_FILTERING_OPTIONS.$gt.key, value: 1 },
296
- title: "Devices with new authentication requests"
297
- },
298
- gatewayDevices: {
299
- key: "gatewayDevices",
300
- needsFullFiltering: false,
301
- needsMonitor: false,
302
- needsReporting: true,
303
- filterRule: { scope: "inventory", key: "mender_is_gateway", operator: DEVICE_FILTERING_OPTIONS.$eq.key, value: "true" },
304
- title: "Gateway devices"
305
- }
306
- };
307
- var oneSecond = 1e3;
308
- var TIMEOUTS = {
309
- debounceDefault: 700,
310
- debounceShort: 300,
311
- halfASecond: 0.5 * oneSecond,
312
- oneSecond,
313
- twoSeconds: 2 * oneSecond,
314
- threeSeconds: 3 * oneSecond,
315
- fiveSeconds: 5 * oneSecond,
316
- refreshDefault: 10 * oneSecond,
317
- refreshLong: 60 * oneSecond
318
- };
319
- var SORTING_OPTIONS = {
320
- asc: "asc",
321
- desc: "desc"
322
- };
323
- var DEVICE_ONLINE_CUTOFF = { interval: 1, intervalName: timeUnits.days };
324
- var ATTRIBUTE_SCOPES = {
325
- inventory: "inventory",
326
- identity: "identity",
327
- monitor: "monitor",
328
- system: "system",
329
- tags: "tags"
330
- };
331
- var defaultIdAttribute = Object.freeze({ attribute: "id", scope: ATTRIBUTE_SCOPES.identity });
332
- var credentialTypes = {
333
- aws: "aws",
334
- http: "http",
335
- sas: "sas",
336
- x509: "x509"
337
- };
338
- var EXTERNAL_PROVIDER = {
339
- "iot-core": {
340
- credentialsType: credentialTypes.aws,
341
- icon: import_js.mdiAws,
342
- title: "AWS IoT Core",
343
- twinTitle: "Device Shadow",
344
- provider: "iot-core",
345
- enabled: true,
346
- deviceTwin: true,
347
- configHint: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: "For help finding your AWS IoT Core connection string, check the AWS IoT documentation." })
348
- },
349
- "iot-hub": {
350
- credentialsType: credentialTypes.sas,
351
- icon: import_js.mdiMicrosoftAzure,
352
- title: "Azure IoT Hub",
353
- twinTitle: "Device Twin",
354
- provider: "iot-hub",
355
- enabled: true,
356
- deviceTwin: true,
357
- configHint: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("span", { children: [
358
- "For help finding your Azure IoT Hub connection string, look under 'Shared access policies' in the Microsoft Azure UI as described",
359
- " ",
360
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
361
- "a",
362
- {
363
- href: "https://devblogs.microsoft.com/iotdev/understand-different-connection-strings-in-azure-iot-hub/#iothubconn",
364
- target: "_blank",
365
- rel: "noopener noreferrer",
366
- children: "here"
367
- }
368
- ),
369
- "."
370
- ] })
371
- },
372
- webhook: {
373
- credentialsType: credentialTypes.http,
374
- deviceTwin: false,
375
- // disable the webhook provider here, since it is treated different than other integrations, with a custom configuration & management view, etc.
376
- enabled: false,
377
- provider: "webhook"
378
- }
379
- };
380
- var ALL_RELEASES = "All releases";
381
- var emptyUiPermissions = Object.freeze({
382
- auditlog: [],
383
- deployments: [],
384
- groups: Object.freeze({}),
385
- releases: Object.freeze({}),
386
- tenantManagement: [],
387
- userManagement: []
388
- });
389
- var emptyRole = Object.freeze({
390
- name: void 0,
391
- description: "",
392
- permissions: [],
393
- uiPermissions: Object.freeze({ ...emptyUiPermissions })
394
- });
50
+ // src/constants.ts
51
+ var import_constants2 = require("@northern.tech/utils/constants");
395
52
 
396
53
  // src/deploymentsSlice/constants.ts
397
54
  var alreadyInstalled = "already-installed";
398
- var deploymentsApiUrl = `${apiUrl.v1}/deployments`;
399
- var deploymentsApiUrlV2 = `${apiUrl.v2}/deployments`;
400
55
  var deploymentSubstates = {
401
56
  aborted: "aborted",
402
57
  alreadyInstalled,
@@ -469,9 +124,9 @@ var DEPLOYMENT_STATES = {
469
124
  var listDefaultsByState = {
470
125
  [DEPLOYMENT_STATES.inprogress]: { page: 1, perPage: 10 },
471
126
  [DEPLOYMENT_STATES.pending]: { page: 1, perPage: 10 },
472
- [DEPLOYMENT_STATES.scheduled]: { ...DEVICE_LIST_DEFAULTS },
473
- [DEPLOYMENT_STATES.finished]: { ...DEVICE_LIST_DEFAULTS },
474
- sort: { direction: SORTING_OPTIONS.desc }
127
+ [DEPLOYMENT_STATES.scheduled]: { ...import_constants2.DEVICE_LIST_DEFAULTS },
128
+ [DEPLOYMENT_STATES.finished]: { ...import_constants2.DEVICE_LIST_DEFAULTS },
129
+ sort: { direction: import_constants2.SORTING_OPTIONS.desc }
475
130
  };
476
131
  var DEFAULT_PENDING_INPROGRESS_COUNT = 10;
477
132
  var DEPLOYMENT_ROUTES = {
@@ -528,34 +183,8 @@ var pauseMap = {
528
183
  followUp: installationSubstatesMap.reboot.pauseConfigurationIndicator
529
184
  }
530
185
  };
531
- var limitDefault = { min: 5, max: 100, default: 10 };
532
-
533
- // src/devicesSlice/constants.ts
534
- var emptyFilter = { key: null, value: "", operator: DEVICE_FILTERING_OPTIONS.$eq.key, scope: "inventory" };
535
- var deviceAuthV2 = `${apiUrl.v2}/devauth`;
536
- var deviceConnect = `${apiUrl.v1}/deviceconnect`;
537
- var inventoryApiUrl = `${apiUrl.v1}/inventory`;
538
- var inventoryApiUrlV2 = `${apiUrl.v2}/inventory`;
539
- var deviceConfig = `${apiUrl.v1}/deviceconfig/configurations/device`;
540
- var reportingApiUrl = `${apiUrl.v1}/reporting`;
541
- var iotManagerBaseURL = `${apiUrl.v1}/iot-manager`;
542
- var DEVICE_STATES = {
543
- accepted: "accepted",
544
- pending: "pending",
545
- preauth: "preauthorized",
546
- rejected: "rejected"
547
- };
548
- var geoAttributes = ["geo-lat", "geo-lon"].map((attribute) => ({ attribute, scope: "inventory" }));
549
-
550
- // src/monitorSlice/constants.ts
551
- var alertChannels = { email: "email" };
552
- var monitorApiUrlv1 = `${apiUrl.v1}/devicemonitor`;
553
186
 
554
187
  // src/organizationSlice/constants.ts
555
- var auditLogsApiUrl = `${apiUrl.v1}/auditlogs`;
556
- var tenantadmApiUrlv1 = `${apiUrl.v1}/tenantadm`;
557
- var tenantadmApiUrlv2 = `${apiUrl.v2}/tenantadm`;
558
- var ssoIdpApiUrlv1 = `${apiUrl.v1}/useradm/sso/idp/metadata`;
559
188
  var auditlogTypes = {
560
189
  artifact: { title: "Artifact", queryParameter: "object_type", value: "artifact" },
561
190
  deployment: { title: "Deployment", queryParameter: "object_deployment_name", value: "deployment" },
@@ -566,397 +195,13 @@ var auditlogTypes = {
566
195
  };
567
196
  var AUDIT_LOGS_TYPES = [auditlogTypes.artifact, auditlogTypes.deployment, auditlogTypes.device, auditlogTypes.user_access_token, auditlogTypes.user];
568
197
  var SP_AUDIT_LOGS_TYPES = [auditlogTypes.user, auditlogTypes.tenant];
569
- var emptyWebhook = {
570
- description: "",
571
- enabled: true,
572
- credentials: {
573
- type: EXTERNAL_PROVIDER.webhook.credentialsType,
574
- [EXTERNAL_PROVIDER.webhook.credentialsType]: {
575
- secret: "",
576
- url: ""
577
- }
578
- }
579
- };
580
198
  var TENANT_LIST_DEFAULT = {
581
199
  page: 1,
582
200
  perPage: 20
583
201
  };
584
202
 
585
203
  // src/usersSlice/constants.ts
586
- var useradmApiUrlv1 = `${apiUrl.v1}/useradm`;
587
- var useradmApiUrlv2 = `${apiUrl.v2}/useradm`;
588
- var staticRolesByName = {
589
- admin: "RBAC_ROLE_PERMIT_ALL",
590
- readOnly: "RBAC_ROLE_OBSERVER",
591
- ci: "RBAC_ROLE_CI",
592
- deploymentsManager: "RBAC_ROLE_DEPLOYMENTS_MANAGER",
593
- terminalAccess: "RBAC_ROLE_REMOTE_TERMINAL"
594
- };
595
- var PermissionTypes = {
596
- Any: "any",
597
- Get: "GET",
598
- Post: "POST",
599
- Put: "PUT",
600
- Delete: "DELETE",
601
- Patch: "PATCH",
602
- DeviceGroup: "DEVICE_GROUP",
603
- DeviceId: "DEVICE_ID"
604
- };
605
- var permissionSetIds = {
606
- Basic: "Basic",
607
- ConfigureDevices: "ConfigureDevices",
608
- ConnectToDevices: "ConnectToDevices",
609
- DeployToDevices: "DeployToDevices",
610
- ManageDevices: "ManageDevices",
611
- ManageReleases: "ManageReleases",
612
- ManageTenants: "ManageTenants",
613
- ManageUsers: "ManageUsers",
614
- ReadAuditLogs: "ReadAuditLogs",
615
- ReadDevices: "ReadDevices",
616
- ReadReleases: "ReadReleases",
617
- ReadTenants: "ReadTenants",
618
- ReadUsers: "ReadUsers",
619
- SuperUser: "SuperUser",
620
- UploadArtifacts: "UploadArtifacts"
621
- };
622
- var uiPermissionsById = {
623
- configure: {
624
- explanations: { groups: `'Configure' allows the user to use mender-configure features and apply configurations.` },
625
- permissionLevel: 2,
626
- permissionSets: { groups: permissionSetIds.ConfigureDevices },
627
- title: "Configure",
628
- value: "configure",
629
- verbs: [PermissionTypes.Get, PermissionTypes.Put, PermissionTypes.Post]
630
- },
631
- connect: {
632
- explanations: { groups: `'Connect' allows the user to use mender-connect features and Troubleshoot add-ons.` },
633
- permissionLevel: 2,
634
- permissionSets: { groups: permissionSetIds.ConnectToDevices },
635
- title: "Connect",
636
- value: "connect",
637
- verbs: [PermissionTypes.Get, PermissionTypes.Put]
638
- },
639
- deploy: {
640
- explanations: { groups: `'Deploy' allows the user to deploy software or configuration updates to devices.` },
641
- permissionLevel: 2,
642
- permissionSets: { deployments: permissionSetIds.DeployToDevices, groups: permissionSetIds.DeployToDevices },
643
- title: "Deploy",
644
- value: "deploy",
645
- verbs: [PermissionTypes.Post]
646
- },
647
- manage: {
648
- explanations: {
649
- groups: `'Manage' allows the user to edit device name, notes, and manage authentication status. For 'All devices' it also allows the user to edit and create device groups.`,
650
- releases: `'Manage' allows the user to upload new artifacts, edit release descriptions and remove artifacts.`
651
- },
652
- permissionLevel: 2,
653
- permissionSets: {
654
- groups: permissionSetIds.ManageDevices,
655
- releases: permissionSetIds.ManageReleases,
656
- tenantManagement: permissionSetIds.ManageTenants,
657
- userManagement: permissionSetIds.ManageUsers
658
- },
659
- title: "Manage",
660
- value: "manage",
661
- verbs: [PermissionTypes.Post, PermissionTypes.Put, PermissionTypes.Patch]
662
- },
663
- read: {
664
- explanations: { groups: `'Read' allows the user to view devices.` },
665
- permissionLevel: 1,
666
- permissionSets: {
667
- auditlog: permissionSetIds.ReadAuditLogs,
668
- groups: permissionSetIds.ReadDevices,
669
- releases: permissionSetIds.ReadReleases,
670
- tenantManagement: permissionSetIds.ReadTenants,
671
- userManagement: permissionSetIds.ReadUsers
672
- },
673
- title: "Read",
674
- value: "read",
675
- verbs: [PermissionTypes.Get, PermissionTypes.Post]
676
- },
677
- upload: {
678
- explanations: { groups: `'Upload' allows the user to upload new Artifacts.` },
679
- unscopedOnly: { releases: true },
680
- permissionLevel: 1,
681
- permissionSets: { releases: permissionSetIds.UploadArtifacts },
682
- title: "Upload",
683
- value: "upload",
684
- verbs: [PermissionTypes.Post, PermissionTypes.Put, PermissionTypes.Patch]
685
- }
686
- };
687
- var scopedPermissionAreas = {
688
- groups: { key: "groups", excessiveAccessSelector: ALL_DEVICES, scopeType: "DeviceGroups" },
689
- releases: { key: "releases", excessiveAccessSelector: ALL_RELEASES, scopeType: "Releases" }
690
- };
691
- var uiPermissionsByArea = {
692
- auditlog: {
693
- endpoints: [{ path: /\/(auditlog)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] }],
694
- explanation: "Granting access to the audit log will allow tracing changes to devices, releases and user accounts, as well as providing information about deployments.",
695
- key: "auditlog",
696
- uiPermissions: [uiPermissionsById.read],
697
- title: "System Audit Log"
698
- },
699
- deployments: {
700
- endpoints: [
701
- { path: /\/(deployments\/deployments)/i, types: [PermissionTypes.Post, PermissionTypes.Put], uiPermissions: [uiPermissionsById.deploy] },
702
- { path: /\/(deployments\/deployments)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] },
703
- { path: /\/(deployments\/config)/i, types: [PermissionTypes.Get, PermissionTypes.Put], uiPermissions: [uiPermissionsById.manage] }
704
- ],
705
- explanation: "Providing deploy permissions will allow deployments to be created using the releases and devices a user has access to.",
706
- key: "deployments",
707
- uiPermissions: [uiPermissionsById.read, uiPermissionsById.deploy],
708
- title: "Deployments"
709
- },
710
- groups: {
711
- endpoints: [
712
- {
713
- path: /\/(devauth|inventory|deviceconfig|devicemonitor|deviceconnect\/devices)/i,
714
- types: [PermissionTypes.Get],
715
- uiPermissions: [uiPermissionsById.read]
716
- },
717
- { path: /\/(devauth|inventory)/i, types: [PermissionTypes.Put, PermissionTypes.Post], uiPermissions: [uiPermissionsById.manage] },
718
- { path: /\/(deviceconfig)/i, types: [PermissionTypes.Get, PermissionTypes.Put, PermissionTypes.Post], uiPermissions: [uiPermissionsById.configure] },
719
- { path: /\/(deviceconnect\/devices)/i, types: [PermissionTypes.Get, PermissionTypes.Post], uiPermissions: [uiPermissionsById.connect] }
720
- ],
721
- explanation: "Device group management permissions control the degree to which devices in a group can be accessed and moved to other groups.",
722
- key: "groups",
723
- scope: scopedPermissionAreas.groups.scopeType,
724
- uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage, uiPermissionsById.deploy, uiPermissionsById.configure, uiPermissionsById.connect],
725
- title: "Group Management"
726
- },
727
- releases: {
728
- endpoints: [
729
- { path: /\/(deployments\/artifacts|deployments\/deployments\/releases)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] },
730
- {
731
- path: /\/(deployments\/artifacts|deployments\/deployments\/releases)/i,
732
- types: [PermissionTypes.Post, PermissionTypes.Put],
733
- uiPermissions: [uiPermissionsById.read, uiPermissionsById.upload]
734
- },
735
- {
736
- path: /\/(deployments\/artifacts|deployments\/deployments\/releases)/i,
737
- types: [PermissionTypes.Delete],
738
- uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage]
739
- }
740
- ],
741
- explanation: "Release permissions can be granted to allow artifact & release modifications, as well as the creation of new releases.",
742
- key: "releases",
743
- scope: "ReleaseTags",
744
- uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage, uiPermissionsById.upload],
745
- title: "Release Management"
746
- },
747
- tenantManagement: {
748
- endpoints: [
749
- { path: /\/(tenantadm\/tenants)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] },
750
- { path: /\/(tenantadm\/tenants)/i, types: [PermissionTypes.Post, PermissionTypes.Put], uiPermissions: [uiPermissionsById.manage] },
751
- { path: /\/(users\/exists)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.manage] }
752
- ],
753
- explanation: "Tenant management permissions allow listing, creating and modifying child tenants",
754
- key: "tenantManagement",
755
- uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage],
756
- title: "Tenant Management"
757
- },
758
- userManagement: {
759
- endpoints: [
760
- { path: /\/(useradm)/i, types: [PermissionTypes.Get], uiPermissions: [uiPermissionsById.read] },
761
- { path: /\/(useradm)/i, types: [PermissionTypes.Post], uiPermissions: [uiPermissionsById.manage] }
762
- ],
763
- explanation: "User management permissions should be granted carefully, as these allow privilege increases for any users managed by a user with user management permissions",
764
- key: "userManagement",
765
- uiPermissions: [uiPermissionsById.read, uiPermissionsById.manage],
766
- title: "User Management"
767
- }
768
- };
769
- var permissionMapper = (permission) => permission.value;
770
- var rolesById = Object.freeze({
771
- [staticRolesByName.admin]: {
772
- name: "Admin",
773
- value: staticRolesByName.admin,
774
- description: "Full access",
775
- permissions: [],
776
- // permissions refers to the values returned from the backend
777
- uiPermissions: {
778
- ...emptyUiPermissions,
779
- auditlog: uiPermissionsByArea.auditlog.uiPermissions.map(permissionMapper),
780
- deployments: uiPermissionsByArea.deployments.uiPermissions.map(permissionMapper),
781
- groups: { [ALL_DEVICES]: uiPermissionsByArea.groups.uiPermissions.map(permissionMapper) },
782
- releases: { [ALL_RELEASES]: uiPermissionsByArea.releases.uiPermissions.map(permissionMapper) },
783
- userManagement: uiPermissionsByArea.userManagement.uiPermissions.map(permissionMapper)
784
- }
785
- },
786
- [staticRolesByName.readOnly]: {
787
- name: "Read Access",
788
- value: staticRolesByName.readOnly,
789
- description: "",
790
- permissions: [],
791
- uiPermissions: {
792
- ...emptyUiPermissions,
793
- deployments: [uiPermissionsById.read.value],
794
- groups: { [ALL_DEVICES]: [uiPermissionsById.read.value] },
795
- releases: { [ALL_RELEASES]: [uiPermissionsById.read.value] },
796
- userManagement: [uiPermissionsById.read.value]
797
- }
798
- },
799
- [staticRolesByName.ci]: {
800
- name: "Releases Manager",
801
- value: staticRolesByName.ci,
802
- description: "",
803
- permissions: [],
804
- uiPermissions: {
805
- ...emptyUiPermissions,
806
- releases: { [ALL_RELEASES]: uiPermissionsByArea.releases.uiPermissions.map(permissionMapper) }
807
- }
808
- },
809
- [staticRolesByName.deploymentsManager]: {
810
- name: "Deployments Manager",
811
- value: staticRolesByName.deploymentsManager,
812
- description: "",
813
- permissions: [],
814
- uiPermissions: {
815
- ...emptyUiPermissions,
816
- deployments: uiPermissionsByArea.deployments.uiPermissions.map(permissionMapper),
817
- groups: { [ALL_DEVICES]: [uiPermissionsById.deploy.value, uiPermissionsById.read.value] },
818
- releases: { [ALL_RELEASES]: [uiPermissionsById.read.value] }
819
- }
820
- },
821
- [staticRolesByName.terminalAccess]: {
822
- name: "Troubleshooting",
823
- value: staticRolesByName.terminalAccess,
824
- description: "Access to the troubleshooting features: Remote Terminal, File Transfer, Port Forwarding",
825
- permissions: [],
826
- uiPermissions: {
827
- ...emptyUiPermissions,
828
- groups: { [ALL_DEVICES]: [uiPermissionsById.connect.value] }
829
- }
830
- }
831
- });
832
- var serviceProviderRolesById = {
833
- admin: {
834
- name: "Admin",
835
- value: staticRolesByName.admin,
836
- description: "Full access",
837
- permissions: [],
838
- uiPermissions: {
839
- ...emptyUiPermissions,
840
- auditlog: uiPermissionsByArea.auditlog.uiPermissions.map(permissionMapper),
841
- userManagement: uiPermissionsByArea.userManagement.uiPermissions.map(permissionMapper),
842
- tenantManagement: uiPermissionsByArea.tenantManagement.uiPermissions.map(permissionMapper)
843
- }
844
- },
845
- readOnly: {
846
- name: "Read access",
847
- value: staticRolesByName.readOnly,
848
- description: "This role can see all linked organizations but cannot make any changes",
849
- permissions: [],
850
- uiPermissions: {
851
- ...emptyUiPermissions,
852
- auditlog: [uiPermissionsById.read.value],
853
- userManagement: [uiPermissionsById.read.value],
854
- tenantManagement: [uiPermissionsById.read.value]
855
- }
856
- }
857
- };
858
- var defaultPermissionSets = {
859
- [permissionSetIds.Basic]: {
860
- name: permissionSetIds.Basic,
861
- result: {
862
- // this is needed to prevent the detailed permissions of the basic permission set from being interpreted as allowing read & management access to user endpoints
863
- userManagement: [uiPermissionsById.read.value]
864
- }
865
- },
866
- [permissionSetIds.SuperUser]: {
867
- name: permissionSetIds.SuperUser,
868
- result: {
869
- ...rolesById[staticRolesByName.admin].uiPermissions
870
- }
871
- },
872
- [permissionSetIds.ManageUsers]: {
873
- name: permissionSetIds.ManageUsers,
874
- result: {
875
- userManagement: [uiPermissionsById.manage.value]
876
- }
877
- },
878
- [permissionSetIds.ReadAuditLogs]: {
879
- name: permissionSetIds.ReadAuditLogs,
880
- result: {
881
- auditlog: [uiPermissionsById.read.value]
882
- }
883
- },
884
- [permissionSetIds.ReadReleases]: {
885
- name: permissionSetIds.ReadReleases,
886
- result: {
887
- releases: { [ALL_RELEASES]: [uiPermissionsById.read.value] }
888
- }
889
- },
890
- [permissionSetIds.ReadTenants]: {
891
- name: permissionSetIds.ReadTenants,
892
- result: {
893
- tenantManagement: [uiPermissionsById.read.value]
894
- }
895
- },
896
- [permissionSetIds.ManageTenants]: {
897
- name: permissionSetIds.ManageTenants,
898
- result: {
899
- tenantManagement: [uiPermissionsById.manage.value]
900
- }
901
- },
902
- [permissionSetIds.ReadUsers]: {
903
- name: permissionSetIds.ReadUsers,
904
- result: {
905
- userManagement: [uiPermissionsById.read.value]
906
- }
907
- },
908
- [permissionSetIds.UploadArtifacts]: {
909
- name: permissionSetIds.UploadArtifacts,
910
- result: {
911
- releases: { [ALL_RELEASES]: [uiPermissionsById.upload.value] }
912
- }
913
- },
914
- [permissionSetIds.ManageReleases]: {
915
- name: permissionSetIds.ManageReleases,
916
- result: {
917
- releases: { [ALL_RELEASES]: [uiPermissionsById.manage.value] }
918
- }
919
- },
920
- [permissionSetIds.ConfigureDevices]: {
921
- name: permissionSetIds.ConfigureDevices,
922
- result: {
923
- deployments: [uiPermissionsById.read.value, uiPermissionsById.deploy.value],
924
- groups: { [ALL_DEVICES]: [uiPermissionsById.read.value, uiPermissionsById.configure.value] }
925
- }
926
- },
927
- [permissionSetIds.ConnectToDevices]: {
928
- name: permissionSetIds.ConnectToDevices,
929
- result: {
930
- groups: { [ALL_DEVICES]: [uiPermissionsById.read.value, uiPermissionsById.connect.value] }
931
- }
932
- },
933
- [permissionSetIds.DeployToDevices]: {
934
- name: permissionSetIds.DeployToDevices,
935
- result: {
936
- deployments: [uiPermissionsById.deploy.value, uiPermissionsById.manage.value, uiPermissionsById.read.value],
937
- groups: { [ALL_DEVICES]: [uiPermissionsById.read.value, uiPermissionsById.deploy.value] }
938
- }
939
- },
940
- [permissionSetIds.ManageDevices]: {
941
- name: permissionSetIds.ManageDevices,
942
- result: {
943
- groups: { [ALL_DEVICES]: [uiPermissionsById.read.value, uiPermissionsById.manage.value] }
944
- }
945
- },
946
- [permissionSetIds.ReadDevices]: {
947
- name: permissionSetIds.ReadDevices,
948
- result: {
949
- groups: { [ALL_DEVICES]: [uiPermissionsById.read.value] }
950
- }
951
- }
952
- };
953
204
  var USER_LOGOUT = "USER_LOGOUT";
954
- var rolesByName = {
955
- ...staticRolesByName,
956
- deploymentCreation: { action: "CREATE_DEPLOYMENT", object: { type: "DEVICE_GROUP", value: void 0 } },
957
- groupAccess: { action: "VIEW_DEVICE", object: { type: "DEVICE_GROUP", value: void 0 } },
958
- userManagement: { action: "http", object: { type: "any", value: `${useradmApiUrlv1}/.*` } }
959
- };
960
205
  var settingsKeys = { initialized: "settings-initialized" };
961
206
  var READ_STATES = {
962
207
  read: "read",
@@ -965,7 +210,6 @@ var READ_STATES = {
965
210
  };
966
211
 
967
212
  // src/appSlice/index.ts
968
- var import_toolkit = require("@reduxjs/toolkit");
969
213
  var sliceName = "app";
970
214
  var getYesterday = () => {
971
215
  const today = /* @__PURE__ */ new Date();
@@ -974,17 +218,15 @@ var getYesterday = () => {
974
218
  };
975
219
  var initialState = {
976
220
  cancelSource: void 0,
221
+ commit: "",
977
222
  demoArtifactLink: "https://dgsbl4vditpls.cloudfront.net/mender-demo-artifact.mender",
978
223
  hostAddress: null,
979
224
  snackbar: {
980
- open: false,
981
- message: "",
982
- maxWidth: 900,
983
- autoHideDuration: void 0,
984
225
  action: void 0,
985
- children: void 0,
986
- onClick: void 0,
987
- onClose: void 0
226
+ autoHideDuration: void 0,
227
+ message: "",
228
+ open: false,
229
+ preventClickToCopy: false
988
230
  },
989
231
  // return boolean rather than organization details
990
232
  features: {
@@ -997,7 +239,7 @@ var initialState = {
997
239
  hasMonitor: false,
998
240
  hasReporting: false,
999
241
  isDemoMode: false,
1000
- isHosted: false,
242
+ isHosted: true,
1001
243
  isEnterprise: false
1002
244
  },
1003
245
  feedbackProbability: 0.3,
@@ -1009,16 +251,22 @@ var initialState = {
1009
251
  deviceIds: [],
1010
252
  searchTerm: "",
1011
253
  searchTotal: 0,
254
+ isSearching: false,
1012
255
  sort: {
1013
- direction: SORTING_OPTIONS.desc
256
+ direction: import_constants2.SORTING_OPTIONS.desc
1014
257
  // key: null,
1015
258
  // scope: null
1016
259
  }
1017
260
  },
261
+ sentry: {
262
+ location: "",
263
+ replaysSessionSampleRate: 0.1,
264
+ tracesSampleRate: 1
265
+ },
1018
266
  stripeAPIKey: "",
1019
267
  trackerCode: "",
1020
268
  uploadsById: {
1021
- // id: { uploading: false, uploadProgress: 0, cancelSource: undefined }
269
+ // id: { progress: 0, cancelSource: undefined }
1022
270
  },
1023
271
  newThreshold: getYesterday(),
1024
272
  offlineThreshold: getYesterday(),
@@ -1026,11 +274,7 @@ var initialState = {
1026
274
  Integration: "",
1027
275
  "Mender-Client": "",
1028
276
  "Mender-Artifact": "",
1029
- "Meta-Mender": "",
1030
- Deployments: "",
1031
- Deviceauth: "",
1032
- Inventory: "",
1033
- GUI: "latest"
277
+ "Meta-Mender": ""
1034
278
  },
1035
279
  yesterday: void 0
1036
280
  };
@@ -1045,19 +289,17 @@ var appSlice = (0, import_toolkit.createSlice)({
1045
289
  };
1046
290
  },
1047
291
  setSnackbar: (state, { payload }) => {
1048
- let { message, autoHideDuration, action, children, onClick, onClose } = payload;
1049
- if (typeof payload === "string" || payload instanceof String) {
1050
- message = payload;
292
+ if (typeof payload === "string") {
293
+ state.snackbar.message = payload;
294
+ return;
1051
295
  }
296
+ const { message, autoHideDuration, action, preventClickToCopy = false } = payload;
1052
297
  state.snackbar = {
1053
- open: message ? true : false,
1054
298
  message,
1055
- maxWidth: 900,
1056
299
  autoHideDuration,
1057
300
  action,
1058
- children,
1059
- onClick,
1060
- onClose
301
+ preventClickToCopy,
302
+ open: !!message
1061
303
  };
1062
304
  },
1063
305
  setFirstLoginAfterSignup: (state, action) => {
@@ -1096,9 +338,7 @@ var appSlice = (0, import_toolkit.createSlice)({
1096
338
  ...action.payload
1097
339
  };
1098
340
  },
1099
- setEnvironmentData: (state, action) => {
1100
- return { ...state, ...action.payload };
1101
- }
341
+ setEnvironmentData: (state, action) => ({ ...state, ...action.payload })
1102
342
  }
1103
343
  });
1104
344
  var actions = appSlice.actions;
@@ -1129,20 +369,20 @@ var initialState2 = {
1129
369
  sourceWindow: -1
1130
370
  },
1131
371
  binaryDeltaLimits: {
1132
- timeout: { ...limitDefault, default: 60, max: 3600, min: 60 },
1133
- sourceWindow: limitDefault,
1134
- inputWindow: limitDefault,
1135
- duplicatesWindow: limitDefault,
1136
- instructionBuffer: limitDefault
372
+ timeout: { ...import_constants2.limitDefault, default: 60, max: 3600, min: 60 },
373
+ sourceWindow: import_constants2.limitDefault,
374
+ inputWindow: import_constants2.limitDefault,
375
+ duplicatesWindow: import_constants2.limitDefault,
376
+ instructionBuffer: import_constants2.limitDefault
1137
377
  }
1138
378
  },
1139
379
  deploymentDeviceLimit: 5e3,
1140
380
  selectedDeviceIds: [],
1141
381
  selectionState: {
1142
- finished: { ...DEVICE_LIST_DEFAULTS, endDate: void 0, search: "", selection: [], startDate: void 0, total: 0, type: "" },
1143
- inprogress: { ...DEVICE_LIST_DEFAULTS, perPage: DEFAULT_PENDING_INPROGRESS_COUNT, selection: [] },
1144
- pending: { ...DEVICE_LIST_DEFAULTS, perPage: DEFAULT_PENDING_INPROGRESS_COUNT, selection: [] },
1145
- scheduled: { ...DEVICE_LIST_DEFAULTS, selection: [] },
382
+ finished: { ...import_constants2.DEVICE_LIST_DEFAULTS, endDate: void 0, search: "", selection: [], startDate: void 0, total: 0, type: "" },
383
+ inprogress: { ...import_constants2.DEVICE_LIST_DEFAULTS, perPage: DEFAULT_PENDING_INPROGRESS_COUNT, selection: [] },
384
+ pending: { ...import_constants2.DEVICE_LIST_DEFAULTS, perPage: DEFAULT_PENDING_INPROGRESS_COUNT, selection: [] },
385
+ scheduled: { ...import_constants2.DEVICE_LIST_DEFAULTS, selection: [] },
1146
386
  general: {
1147
387
  state: DEPLOYMENT_ROUTES.active.key,
1148
388
  showCreationDialog: false,
@@ -1164,7 +404,8 @@ var deploymentsSlice = (0, import_toolkit2.createSlice)({
1164
404
  };
1165
405
  state.byStatus[DEPLOYMENT_STATES.pending].total = state.byStatus[DEPLOYMENT_STATES.pending].total + 1;
1166
406
  state.byStatus[DEPLOYMENT_STATES.pending].deploymentIds = [...state.byStatus.pending.deploymentIds, action.payload.id];
1167
- state.selectionState[DEPLOYMENT_STATES.pending].selection = [action.payload.id, ...state.selectionState[DEPLOYMENT_STATES.pending].selection], state.selectionState[DEPLOYMENT_STATES.pending].total = state.selectionState[DEPLOYMENT_STATES.pending].total + 1;
407
+ state.selectionState[DEPLOYMENT_STATES.pending].selection = [action.payload.id, ...state.selectionState[DEPLOYMENT_STATES.pending].selection];
408
+ state.selectionState[DEPLOYMENT_STATES.pending].total = (state.selectionState[DEPLOYMENT_STATES.pending].total || 0) + 1;
1168
409
  },
1169
410
  removedDeployment: (state, action) => {
1170
411
  const { [action.payload]: removedDeployment, ...remainder } = state.byId;
@@ -1241,26 +482,30 @@ var initialState3 = {
1241
482
  // }
1242
483
  },
1243
484
  byStatus: {
1244
- [DEVICE_STATES.accepted]: { deviceIds: [], total: 0 },
485
+ [import_constants2.DEVICE_STATES.accepted]: { deviceIds: [], total: 0 },
1245
486
  active: { deviceIds: [], total: 0 },
1246
487
  inactive: { deviceIds: [], total: 0 },
1247
- [DEVICE_STATES.pending]: { deviceIds: [], total: 0 },
1248
- [DEVICE_STATES.preauth]: { deviceIds: [], total: 0 },
1249
- [DEVICE_STATES.rejected]: { deviceIds: [], total: 0 }
488
+ [import_constants2.DEVICE_STATES.pending]: { deviceIds: [], total: 0 },
489
+ [import_constants2.DEVICE_STATES.preauth]: { deviceIds: [], total: 0 },
490
+ [import_constants2.DEVICE_STATES.rejected]: { deviceIds: [], total: 0 }
1250
491
  },
1251
492
  deviceList: {
1252
493
  deviceIds: [],
1253
- ...DEVICE_LIST_DEFAULTS,
494
+ ...import_constants2.DEVICE_LIST_DEFAULTS,
1254
495
  selectedAttributes: [],
1255
496
  selectedIssues: [],
1256
497
  selection: [],
1257
498
  sort: {
1258
- direction: SORTING_OPTIONS.desc
499
+ direction: import_constants2.SORTING_OPTIONS.desc
1259
500
  // key: null,
1260
501
  // scope: null
1261
502
  },
1262
- state: DEVICE_STATES.accepted,
1263
- total: 0
503
+ state: import_constants2.DEVICE_STATES.accepted,
504
+ total: 0,
505
+ refreshTrigger: false,
506
+ isLoading: false,
507
+ detailsTab: "",
508
+ open: false
1264
509
  },
1265
510
  filters: [
1266
511
  // { key: 'device_type', value: 'raspberry', operator: '$eq', scope: 'inventory' }
@@ -1332,7 +577,7 @@ var devicesSlice = (0, import_toolkit3.createSlice)({
1332
577
  };
1333
578
  },
1334
579
  selectGroup: (state, { payload: group }) => {
1335
- state.deviceList.deviceIds = state.groups.byId[group] && state.groups.byId[group].deviceIds.length > 0 ? state.groups.byId[group].deviceIds : [];
580
+ state.deviceList.deviceIds = group && state.groups.byId[group] && state.groups.byId[group].deviceIds && state.groups.byId[group].deviceIds.length > 0 ? state.groups.byId[group].deviceIds : [];
1336
581
  state.groups.selectedGroup = group;
1337
582
  },
1338
583
  removeGroup: (state, action) => {
@@ -1384,9 +629,6 @@ var devicesSlice = (0, import_toolkit3.createSlice)({
1384
629
  const { count, status } = action.payload;
1385
630
  state.byStatus[status].total = count;
1386
631
  },
1387
- setTotalDevices: (state, action) => {
1388
- state.total = action.payload;
1389
- },
1390
632
  setDeviceLimit: (state, action) => {
1391
633
  state.limit = action.payload;
1392
634
  },
@@ -1399,8 +641,8 @@ var devicesSlice = (0, import_toolkit3.createSlice)({
1399
641
  maybeUpdateDevicesByStatus: (state, action) => {
1400
642
  const { deviceId, authId } = action.payload;
1401
643
  const device = state.byId[deviceId];
1402
- const hasMultipleAuthSets = authId ? device.auth_sets.filter((authset) => authset.id !== authId).length > 0 : false;
1403
- if (!hasMultipleAuthSets && Object.values(DEVICE_STATES).includes(device.status)) {
644
+ const hasMultipleAuthSets = authId && device.auth_sets ? device.auth_sets.filter((authset) => authset.id !== authId).length > 0 : false;
645
+ if (!hasMultipleAuthSets && Object.values(import_constants2.DEVICE_STATES).includes(device.status)) {
1404
646
  const deviceIds = state.byStatus[device.status].deviceIds.filter((id) => id !== deviceId);
1405
647
  state.byStatus[device.status] = { deviceIds, total: Math.max(0, state.byStatus[device.status].total - 1) };
1406
648
  }
@@ -1415,16 +657,16 @@ var import_toolkit4 = require("@reduxjs/toolkit");
1415
657
  var sliceName4 = "monitor";
1416
658
  var initialState4 = {
1417
659
  alerts: {
1418
- alertList: { ...DEVICE_LIST_DEFAULTS, total: 0 },
660
+ alertList: { ...import_constants2.DEVICE_LIST_DEFAULTS, total: 0 },
1419
661
  byDeviceId: {}
1420
662
  },
1421
663
  issueCounts: {
1422
- byType: Object.values(DEVICE_ISSUE_OPTIONS).reduce((accu, { key }) => ({ ...accu, [key]: { filtered: 0, total: 0 } }), {})
664
+ byType: Object.keys(import_constants2.DEVICE_ISSUE_OPTIONS).reduce((accu, key) => ({ ...accu, [key]: { filtered: 0, total: 0 } }), {})
1423
665
  },
1424
666
  settings: {
1425
667
  global: {
1426
668
  channels: {
1427
- ...Object.keys(alertChannels).reduce((accu, item) => ({ ...accu, [item]: { enabled: true } }), {})
669
+ ...Object.keys(import_constants2.alertChannels).reduce((accu, item) => ({ ...accu, [item]: { enabled: true } }), {})
1428
670
  }
1429
671
  }
1430
672
  }
@@ -1473,9 +715,7 @@ var onboardingSlice = (0, import_toolkit5.createSlice)({
1473
715
  name: sliceName5,
1474
716
  initialState: initialState5,
1475
717
  reducers: {
1476
- setOnboardingState: (state, action) => {
1477
- return { ...state, ...action.payload };
1478
- },
718
+ setOnboardingState: (state, action) => ({ ...state, ...action.payload }),
1479
719
  setDemoArtifactPort: (state, action) => {
1480
720
  state.demoArtifactPort = action.payload;
1481
721
  },
@@ -1518,7 +758,7 @@ var initialState6 = {
1518
758
  tenants: [],
1519
759
  selectedTenant: null,
1520
760
  sort: {
1521
- direction: SORTING_OPTIONS.desc,
761
+ direction: import_constants2.SORTING_OPTIONS.desc,
1522
762
  key: "name"
1523
763
  }
1524
764
  },
@@ -1528,15 +768,16 @@ var initialState6 = {
1528
768
  auditlog: {
1529
769
  events: [],
1530
770
  selectionState: {
1531
- ...DEVICE_LIST_DEFAULTS,
771
+ ...import_constants2.DEVICE_LIST_DEFAULTS,
1532
772
  detail: void 0,
1533
773
  endDate: void 0,
1534
774
  selectedIssue: void 0,
1535
- sort: { direction: SORTING_OPTIONS.desc },
775
+ sort: { direction: import_constants2.SORTING_OPTIONS.desc },
1536
776
  startDate: void 0,
1537
777
  total: 0,
1538
778
  type: void 0,
1539
- user: void 0
779
+ user: void 0,
780
+ isLoading: false
1540
781
  }
1541
782
  },
1542
783
  externalDeviceIntegrations: [
@@ -1574,6 +815,12 @@ var organizationSlice = (0, import_toolkit6.createSlice)({
1574
815
  setOrganization: (state, action) => {
1575
816
  state.organization = { ...state.organization, ...action.payload };
1576
817
  },
818
+ setSubscription: (state, action) => {
819
+ state.organization.subscription = { ...state.organization.subscription, ...action.payload };
820
+ },
821
+ setBillingProfile: (state, action) => {
822
+ state.organization.billing_profile = action.payload;
823
+ },
1577
824
  setTenantListState: (state, action) => {
1578
825
  state.tenantList = action.payload;
1579
826
  },
@@ -1636,12 +883,12 @@ var initialState7 = {
1636
883
  */
1637
884
  },
1638
885
  releasesList: {
1639
- ...DEVICE_LIST_DEFAULTS,
886
+ ...import_constants2.DEVICE_LIST_DEFAULTS,
1640
887
  searchedIds: [],
1641
888
  releaseIds: [],
1642
889
  selection: [],
1643
890
  sort: {
1644
- direction: SORTING_OPTIONS.desc,
891
+ direction: import_constants2.SORTING_OPTIONS.desc,
1645
892
  key: "modified"
1646
893
  },
1647
894
  isLoading: void 0,
@@ -1710,11 +957,12 @@ var initialState8 = {
1710
957
  retries: 0
1711
958
  },
1712
959
  permissionSetsById: {
1713
- ...defaultPermissionSets
960
+ ...import_constants2.defaultPermissionSets
1714
961
  },
1715
962
  rolesById: {
1716
- ...rolesById
963
+ ...import_constants2.rolesById
1717
964
  },
965
+ rolesInitialized: false,
1718
966
  settingsInitialized: false,
1719
967
  showConnectDeviceDialog: false,
1720
968
  showFeedbackDialog: false,
@@ -1750,9 +998,6 @@ var usersSlice = (0, import_toolkit8.createSlice)({
1750
998
  state.byId[action.payload.id] = action.payload;
1751
999
  state.currentUser = action.payload.id;
1752
1000
  },
1753
- createdUser: (state, action) => {
1754
- state.byId[0] = action.payload;
1755
- },
1756
1001
  removedUser: (state, action) => {
1757
1002
  const { [action.payload]: removedUser, ...byId } = state.byId;
1758
1003
  state.byId = byId;
@@ -1769,6 +1014,10 @@ var usersSlice = (0, import_toolkit8.createSlice)({
1769
1014
  },
1770
1015
  receivedRoles: (state, action) => {
1771
1016
  state.rolesById = action.payload;
1017
+ state.rolesInitialized = true;
1018
+ },
1019
+ finishedRoleInitialization: (state, action) => {
1020
+ state.rolesInitialized = action.payload;
1772
1021
  },
1773
1022
  createdRole: (state, action) => {
1774
1023
  state.rolesById[action.payload.name] = {
@@ -1799,7 +1048,7 @@ var usersSlice = (0, import_toolkit8.createSlice)({
1799
1048
  },
1800
1049
  setTooltipState: (state, action) => {
1801
1050
  const { id, readState = READ_STATES.read } = action.payload;
1802
- state.tooltips.byId[id].readState = readState;
1051
+ state.tooltips.byId[id] = { ...state.tooltips.byId[id], readState };
1803
1052
  },
1804
1053
  setTooltipsState: (state, action) => {
1805
1054
  state.tooltips.byId = {
@@ -1836,7 +1085,7 @@ var actions_default = {
1836
1085
  // src/auth.ts
1837
1086
  var import_universal_cookie = __toESM(require("universal-cookie"), 1);
1838
1087
  var cookies = new import_universal_cookie.default();
1839
- var emptySession = Object.freeze({ token: "", exiresAt: void 0 });
1088
+ var emptySession = Object.freeze({ token: "", expiresAt: void 0 });
1840
1089
  var tokenCache = "";
1841
1090
  var getSessionInfo = () => {
1842
1091
  let sessionInfo = { ...emptySession };
@@ -1849,15 +1098,15 @@ var getSessionInfo = () => {
1849
1098
  return { ...emptySession };
1850
1099
  }
1851
1100
  if (!sessionInfo.token) {
1852
- let jwtTokenFromCookie = cookies.get("JWT", { doNotParse: true }) ?? "";
1101
+ const jwtTokenFromCookie = cookies.get("JWT", { doNotParse: true }) ?? "";
1853
1102
  if (jwtTokenFromCookie) {
1854
- setSessionInfo({ token: jwtTokenFromCookie, undefined: void 0 });
1103
+ setSessionInfo({ token: jwtTokenFromCookie });
1855
1104
  sessionInfo.token = jwtTokenFromCookie;
1856
1105
  cookies.remove("JWT");
1857
1106
  cookies.remove("JWT", { path: "/" });
1858
1107
  }
1859
1108
  }
1860
- sessionInfo.token = sessionInfo.token || void 0;
1109
+ sessionInfo.token = sessionInfo.token || "";
1861
1110
  tokenCache = sessionInfo.token;
1862
1111
  return sessionInfo;
1863
1112
  };
@@ -1911,20 +1160,50 @@ var rejectionLoggerMiddleware = () => (next) => (action) => {
1911
1160
  }
1912
1161
  return next(action);
1913
1162
  };
1163
+ var tracingActionIgnoreList = [actions8.successfullyLoggedIn.type, "users/loginUser/pending", "users/loginUser/fulfilled", "users/loginUser/rejected"];
1164
+ var sentryReduxEnhancer = (0, import_react.createReduxEnhancer)({
1165
+ actionTransformer: (action) => {
1166
+ if (tracingActionIgnoreList.includes(action.type)) {
1167
+ return null;
1168
+ }
1169
+ return action;
1170
+ },
1171
+ // Transform the state to remove sensitive information
1172
+ stateTransformer: (state) => {
1173
+ const transformedState = {
1174
+ ...state,
1175
+ users: { ...state.users, currentSession: null },
1176
+ organization: {
1177
+ ...state.organization,
1178
+ organization: {
1179
+ ...state.organization.organization,
1180
+ tenant_token: null
1181
+ }
1182
+ }
1183
+ };
1184
+ return transformedState;
1185
+ }
1186
+ });
1914
1187
  var getConfiguredStore = (options = {}) => {
1915
1188
  const { preloadedState = {}, ...config } = options;
1916
1189
  return (0, import_toolkit9.configureStore)({
1917
1190
  ...config,
1918
1191
  preloadedState,
1192
+ enhancers: (getDefaultEnhancers) => {
1193
+ if (window.mender_environment?.sentry?.isReduxEnabled) {
1194
+ return getDefaultEnhancers().concat(sentryReduxEnhancer);
1195
+ }
1196
+ return getDefaultEnhancers();
1197
+ },
1919
1198
  reducer: sessionReducer,
1920
1199
  middleware: (getDefaultMiddleware) => getDefaultMiddleware({
1921
1200
  immutableCheck: {
1922
1201
  ignoredPaths: ["app.uploadsById"]
1923
1202
  },
1924
1203
  serializableCheck: {
1925
- ignoredActions: [actions6.receiveExternalDeviceIntegrations.name, setSnackbar.name, uploadProgress.name],
1926
- ignoredActionPaths: ["uploads", "snackbar", /payload\..*$/],
1927
- ignoredPaths: ["app.uploadsById", "app.snackbar", "organization.externalDeviceIntegrations"]
1204
+ ignoredActions: [actions6.receiveExternalDeviceIntegrations.name, uploadProgress.name],
1205
+ ignoredActionPaths: ["uploads", /payload\..*$/, "meta.arg.file", "meta.arg.integration.configHint"],
1206
+ ignoredPaths: ["app.uploadsById", "organization.externalDeviceIntegrations"]
1928
1207
  }
1929
1208
  }).concat(rejectionLoggerMiddleware)
1930
1209
  });
@@ -1933,10 +1212,12 @@ var store = getConfiguredStore({
1933
1212
  preloadedState: {}
1934
1213
  });
1935
1214
  var useAppDispatch = import_react_redux.useDispatch;
1215
+ var createAppAsyncThunk = import_toolkit9.createAsyncThunk.withTypes();
1936
1216
  // Annotate the CommonJS export names for ESM import in node:
1937
1217
  0 && (module.exports = {
1938
1218
  commonErrorFallback,
1939
1219
  commonErrorHandler,
1220
+ createAppAsyncThunk,
1940
1221
  getConfiguredStore,
1941
1222
  sessionReducer,
1942
1223
  store,