@northern.tech/store 0.1.2 → 0.2.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 (622) hide show
  1. package/dist/actions.d.mts +95 -0
  2. package/dist/actions.d.ts +95 -0
  3. package/dist/actions.js +1808 -0
  4. package/dist/actions.js.map +1 -0
  5. package/dist/actions.mjs +21 -0
  6. package/dist/actions.mjs.map +1 -0
  7. package/dist/api/general-api.d.mts +21 -0
  8. package/dist/api/general-api.d.ts +21 -0
  9. package/dist/api/general-api.js +1066 -0
  10. package/dist/api/general-api.js.map +1 -0
  11. package/dist/api/general-api.mjs +18 -0
  12. package/dist/api/general-api.mjs.map +1 -0
  13. package/dist/api/types/Address.ts +6 -0
  14. package/dist/api/types/AddressUpdate.ts +12 -0
  15. package/dist/api/types/AuthSet.ts +37 -0
  16. package/{api/types/AuthSet.ts → dist/api/types/AuthSetIot_manager.ts} +2 -2
  17. package/dist/api/types/BillingProfile.ts +37 -0
  18. package/dist/api/types/BillingProfileUpdate.ts +37 -0
  19. package/{api → dist/api}/types/BinaryDeltaLimits.ts +6 -0
  20. package/{api → dist/api}/types/BoundingBox.ts +1 -3
  21. package/dist/api/types/Deployment.ts +45 -0
  22. package/{api → dist/api}/types/DeploymentAggregation.ts +1 -3
  23. package/{api → dist/api}/types/DeploymentAggregationItem.ts +1 -3
  24. package/{api → dist/api}/types/DeploymentAggregationTerm.ts +1 -2
  25. package/{api → dist/api}/types/DeploymentAggregationTerms.ts +1 -3
  26. package/{api → dist/api}/types/DeploymentAttributeProjection.ts +1 -2
  27. package/{api → dist/api}/types/DeploymentDeployments.ts +4 -5
  28. package/{api → dist/api}/types/DeploymentFilterTerm.ts +1 -3
  29. package/dist/api/types/DeploymentPhaseDeployments.ts +23 -0
  30. package/{api → dist/api}/types/DeploymentSearchTerms.ts +1 -3
  31. package/{api → dist/api}/types/DeploymentSortTerm.ts +1 -3
  32. package/dist/api/types/DeploymentStatisticsDeployments.ts +15 -0
  33. package/dist/api/types/DeploymentStatusStatisticsDeployments.ts +54 -0
  34. package/dist/api/types/Device.ts +20 -0
  35. package/{api → dist/api}/types/DeviceAggregation.ts +1 -3
  36. package/{api → dist/api}/types/DeviceAggregationItem.ts +1 -3
  37. package/{api → dist/api}/types/DeviceAggregationTerm.ts +1 -2
  38. package/{api → dist/api}/types/DeviceAggregationTerms.ts +1 -3
  39. package/{api → dist/api}/types/DeviceAttribute.ts +1 -2
  40. package/{api → dist/api}/types/DeviceAttributeProjection.ts +1 -2
  41. package/{api/types/Device.ts → dist/api/types/DeviceDeployments.ts} +1 -1
  42. package/{api → dist/api}/types/DeviceFilterAttribute.ts +1 -2
  43. package/{api → dist/api}/types/DeviceFilterTerm.ts +1 -3
  44. package/{api → dist/api}/types/DeviceSearchTerms.ts +1 -3
  45. package/{api → dist/api}/types/DeviceSortTerm.ts +1 -3
  46. package/{api → dist/api}/types/Error.ts +1 -1
  47. package/{api/types/FilterInventory.ts → dist/api/types/Filter.ts} +3 -4
  48. package/{api/types/Filter.ts → dist/api/types/FilterInventory.ts} +1 -1
  49. package/dist/api/types/FilterPredicate.ts +48 -0
  50. package/{api/types/FilterPredicate.ts → dist/api/types/FilterPredicateInventory.ts} +3 -3
  51. package/{api → dist/api}/types/GeoBoundingBox.ts +1 -3
  52. package/{api → dist/api}/types/GeoBoundingBoxFilter.ts +1 -2
  53. package/{api → dist/api}/types/GeoDistance.ts +1 -3
  54. package/{api → dist/api}/types/GeoDistanceFilter.ts +1 -3
  55. package/{api → dist/api}/types/GeoPoint.ts +1 -2
  56. package/{api → dist/api}/types/Integration.ts +6 -0
  57. package/{api → dist/api}/types/MenderTypes.ts +41 -11
  58. package/{api → dist/api}/types/NewDeploymentV2.ts +3 -0
  59. package/{api → dist/api}/types/NewTenant.ts +16 -8
  60. package/{api → dist/api}/types/Object.ts +3 -0
  61. package/{api → dist/api}/types/PreAuthSet.ts +1 -1
  62. package/{api → dist/api}/types/Settings.ts +3 -3
  63. package/{api → dist/api}/types/Status.ts +5 -4
  64. package/{api → dist/api}/types/StatusTenantadm.ts +1 -3
  65. package/dist/api/types/Tenant.ts +21 -0
  66. package/{api → dist/api}/types/TenantTenantadm.ts +16 -0
  67. package/dist/api/types/UpdateChildTenant.ts +17 -0
  68. package/{api → dist/api}/types/UpdateDeployments.ts +1 -1
  69. package/{api → dist/api}/types/UpgradeCompleteRequest.ts +2 -0
  70. package/{api → dist/api}/types/UserWithTenantInfo.ts +7 -3
  71. package/dist/api/users-api.d.mts +16 -0
  72. package/dist/api/users-api.d.ts +16 -0
  73. package/dist/api/users-api.js +1090 -0
  74. package/dist/api/users-api.js.map +1 -0
  75. package/dist/api/users-api.mjs +15 -0
  76. package/dist/api/users-api.mjs.map +1 -0
  77. package/dist/appSlice/constants.d.mts +210 -0
  78. package/dist/appSlice/constants.d.ts +210 -0
  79. package/dist/appSlice/constants.js +221 -0
  80. package/dist/appSlice/constants.js.map +1 -0
  81. package/dist/appSlice/constants.mjs +42 -0
  82. package/dist/appSlice/constants.mjs.map +1 -0
  83. package/dist/appSlice/index.d.mts +1557 -0
  84. package/dist/appSlice/index.d.ts +1557 -0
  85. package/dist/appSlice/index.js +1131 -0
  86. package/dist/appSlice/index.js.map +1 -0
  87. package/dist/appSlice/index.mjs +21 -0
  88. package/dist/appSlice/index.mjs.map +1 -0
  89. package/dist/appSlice/selectors.d.mts +91 -0
  90. package/dist/appSlice/selectors.d.ts +91 -0
  91. package/dist/appSlice/selectors.js +90 -0
  92. package/dist/appSlice/selectors.js.map +1 -0
  93. package/dist/appSlice/selectors.mjs +20 -0
  94. package/dist/appSlice/selectors.mjs.map +1 -0
  95. package/dist/appSlice/thunks.d.mts +46 -0
  96. package/dist/appSlice/thunks.d.ts +46 -0
  97. package/dist/appSlice/thunks.js +5733 -0
  98. package/dist/appSlice/thunks.js.map +1 -0
  99. package/dist/appSlice/thunks.mjs +45 -0
  100. package/dist/appSlice/thunks.mjs.map +1 -0
  101. package/dist/auth.d.mts +17 -0
  102. package/dist/auth.d.ts +17 -0
  103. package/dist/auth.js +1049 -0
  104. package/dist/auth.js.map +1 -0
  105. package/dist/auth.mjs +23 -0
  106. package/dist/auth.mjs.map +1 -0
  107. package/dist/chunk-2HCZYULZ.mjs +56 -0
  108. package/dist/chunk-2HCZYULZ.mjs.map +1 -0
  109. package/dist/chunk-2P4VECEE.mjs +57 -0
  110. package/dist/chunk-2P4VECEE.mjs.map +1 -0
  111. package/dist/chunk-4C6IY46N.mjs +75 -0
  112. package/dist/chunk-4C6IY46N.mjs.map +1 -0
  113. package/dist/chunk-4U4X4KAC.mjs +70 -0
  114. package/dist/chunk-4U4X4KAC.mjs.map +1 -0
  115. package/dist/chunk-BOSBROA3.mjs +168 -0
  116. package/dist/chunk-BOSBROA3.mjs.map +1 -0
  117. package/dist/chunk-BWFTQHNM.mjs +55 -0
  118. package/dist/chunk-BWFTQHNM.mjs.map +1 -0
  119. package/dist/chunk-C2YZYTJ6.mjs +37 -0
  120. package/dist/chunk-C2YZYTJ6.mjs.map +1 -0
  121. package/{usersSlice/index.ts → dist/chunk-EFHEROXZ.mjs} +39 -58
  122. package/dist/chunk-EFHEROXZ.mjs.map +1 -0
  123. package/dist/chunk-EM2HUGUY.mjs +135 -0
  124. package/dist/chunk-EM2HUGUY.mjs.map +1 -0
  125. package/dist/chunk-ENLZPHTQ.mjs +35 -0
  126. package/dist/chunk-ENLZPHTQ.mjs.map +1 -0
  127. package/dist/chunk-G4FGNSV3.mjs +13 -0
  128. package/dist/chunk-G4FGNSV3.mjs.map +1 -0
  129. package/dist/chunk-H2PQQMRY.mjs +7 -0
  130. package/dist/chunk-H2PQQMRY.mjs.map +1 -0
  131. package/dist/chunk-IU4OXOPA.mjs +46 -0
  132. package/dist/chunk-IU4OXOPA.mjs.map +1 -0
  133. package/dist/chunk-L4HIW3KB.mjs +36 -0
  134. package/dist/chunk-L4HIW3KB.mjs.map +1 -0
  135. package/{onboardingSlice/index.ts → dist/chunk-M4U5R7A4.mjs} +19 -22
  136. package/dist/chunk-M4U5R7A4.mjs.map +1 -0
  137. package/dist/chunk-MJW4632R.mjs +110 -0
  138. package/dist/chunk-MJW4632R.mjs.map +1 -0
  139. package/dist/chunk-MQIKQKSW.mjs +717 -0
  140. package/dist/chunk-MQIKQKSW.mjs.map +1 -0
  141. package/{releasesSlice/index.ts → dist/chunk-NCI6JV5R.mjs} +33 -32
  142. package/dist/chunk-NCI6JV5R.mjs.map +1 -0
  143. package/dist/chunk-OGAMVFPS.mjs +244 -0
  144. package/dist/chunk-OGAMVFPS.mjs.map +1 -0
  145. package/{appSlice/index.ts → dist/chunk-OWHFMKTA.mjs} +58 -68
  146. package/dist/chunk-OWHFMKTA.mjs.map +1 -0
  147. package/dist/chunk-QBKCUIWO.mjs +7 -0
  148. package/dist/chunk-QBKCUIWO.mjs.map +1 -0
  149. package/dist/chunk-QG4PT5WK.mjs +145 -0
  150. package/dist/chunk-QG4PT5WK.mjs.map +1 -0
  151. package/dist/chunk-RWYS5MKN.mjs +106 -0
  152. package/dist/chunk-RWYS5MKN.mjs.map +1 -0
  153. package/dist/chunk-U6YTBIDT.mjs +239 -0
  154. package/dist/chunk-U6YTBIDT.mjs.map +1 -0
  155. package/dist/chunk-UPMSYTWW.mjs +2977 -0
  156. package/dist/chunk-UPMSYTWW.mjs.map +1 -0
  157. package/dist/chunk-V32GTKOS.mjs +1 -0
  158. package/dist/chunk-V32GTKOS.mjs.map +1 -0
  159. package/dist/chunk-WS3YYLTJ.mjs +106 -0
  160. package/dist/chunk-WS3YYLTJ.mjs.map +1 -0
  161. package/{devicesSlice/index.ts → dist/chunk-X65NMDPS.mjs} +57 -77
  162. package/dist/chunk-X65NMDPS.mjs.map +1 -0
  163. package/dist/chunk-XJNI62IP.mjs +39 -0
  164. package/dist/chunk-XJNI62IP.mjs.map +1 -0
  165. package/dist/chunk-XWBD7VOK.mjs +93 -0
  166. package/dist/chunk-XWBD7VOK.mjs.map +1 -0
  167. package/dist/chunk-Y47SYXII.mjs +304 -0
  168. package/dist/chunk-Y47SYXII.mjs.map +1 -0
  169. package/dist/chunk-ZLRZO4EY.mjs +414 -0
  170. package/dist/chunk-ZLRZO4EY.mjs.map +1 -0
  171. package/dist/chunk-ZZ6VIQ3U.mjs +65 -0
  172. package/dist/chunk-ZZ6VIQ3U.mjs.map +1 -0
  173. package/dist/commonConstants.d.mts +247 -0
  174. package/dist/commonConstants.d.ts +247 -0
  175. package/dist/commonConstants.js +304 -0
  176. package/dist/commonConstants.js.map +1 -0
  177. package/dist/commonConstants.mjs +40 -0
  178. package/dist/commonConstants.mjs.map +1 -0
  179. package/dist/commonSelectors.d.mts +937 -0
  180. package/dist/commonSelectors.d.ts +937 -0
  181. package/dist/commonSelectors.js +1564 -0
  182. package/dist/commonSelectors.js.map +1 -0
  183. package/dist/commonSelectors.mjs +56 -0
  184. package/dist/commonSelectors.mjs.map +1 -0
  185. package/dist/constants.d.mts +12 -0
  186. package/dist/constants.d.ts +12 -0
  187. package/dist/constants.js +1308 -0
  188. package/dist/constants.js.map +1 -0
  189. package/dist/constants.mjs +223 -0
  190. package/dist/constants.mjs.map +1 -0
  191. package/dist/deploymentsSlice/constants.d.mts +142 -0
  192. package/dist/deploymentsSlice/constants.d.ts +142 -0
  193. package/dist/deploymentsSlice/constants.js +1033 -0
  194. package/dist/deploymentsSlice/constants.js.map +1 -0
  195. package/dist/deploymentsSlice/constants.mjs +42 -0
  196. package/dist/deploymentsSlice/constants.mjs.map +1 -0
  197. package/dist/deploymentsSlice/index.d.mts +2373 -0
  198. package/dist/deploymentsSlice/index.d.ts +2373 -0
  199. package/dist/deploymentsSlice/index.js +1117 -0
  200. package/dist/deploymentsSlice/index.js.map +1 -0
  201. package/dist/deploymentsSlice/index.mjs +21 -0
  202. package/dist/deploymentsSlice/index.mjs.map +1 -0
  203. package/dist/deploymentsSlice/selectors.d.mts +59 -0
  204. package/dist/deploymentsSlice/selectors.d.ts +59 -0
  205. package/dist/deploymentsSlice/selectors.js +1033 -0
  206. package/dist/deploymentsSlice/selectors.js.map +1 -0
  207. package/dist/deploymentsSlice/selectors.mjs +25 -0
  208. package/dist/deploymentsSlice/selectors.mjs.map +1 -0
  209. package/dist/deploymentsSlice/thunks.d.mts +202 -0
  210. package/dist/deploymentsSlice/thunks.d.ts +202 -0
  211. package/dist/deploymentsSlice/thunks.js +5749 -0
  212. package/dist/deploymentsSlice/thunks.js.map +1 -0
  213. package/dist/deploymentsSlice/thunks.mjs +63 -0
  214. package/dist/deploymentsSlice/thunks.mjs.map +1 -0
  215. package/dist/devicesSlice/constants.d.mts +44 -0
  216. package/dist/devicesSlice/constants.d.ts +44 -0
  217. package/dist/devicesSlice/constants.js +1033 -0
  218. package/dist/devicesSlice/constants.js.map +1 -0
  219. package/dist/devicesSlice/constants.mjs +40 -0
  220. package/dist/devicesSlice/constants.mjs.map +1 -0
  221. package/dist/devicesSlice/index.d.mts +2223 -0
  222. package/dist/devicesSlice/index.d.ts +2223 -0
  223. package/dist/devicesSlice/index.js +1173 -0
  224. package/dist/devicesSlice/index.js.map +1 -0
  225. package/dist/devicesSlice/index.mjs +21 -0
  226. package/dist/devicesSlice/index.mjs.map +1 -0
  227. package/dist/devicesSlice/selectors.d.mts +261 -0
  228. package/dist/devicesSlice/selectors.d.ts +261 -0
  229. package/dist/devicesSlice/selectors.js +1148 -0
  230. package/dist/devicesSlice/selectors.js.map +1 -0
  231. package/dist/devicesSlice/selectors.mjs +53 -0
  232. package/dist/devicesSlice/selectors.mjs.map +1 -0
  233. package/dist/devicesSlice/thunks.d.mts +742 -0
  234. package/dist/devicesSlice/thunks.d.ts +742 -0
  235. package/dist/devicesSlice/thunks.js +5821 -0
  236. package/dist/devicesSlice/thunks.js.map +1 -0
  237. package/dist/devicesSlice/thunks.mjs +135 -0
  238. package/dist/devicesSlice/thunks.mjs.map +1 -0
  239. package/dist/monitorSlice/constants.d.mts +6 -0
  240. package/dist/monitorSlice/constants.d.ts +6 -0
  241. package/dist/monitorSlice/constants.js +983 -0
  242. package/dist/monitorSlice/constants.js.map +1 -0
  243. package/dist/monitorSlice/constants.mjs +14 -0
  244. package/dist/monitorSlice/constants.mjs.map +1 -0
  245. package/dist/monitorSlice/index.d.mts +291 -0
  246. package/dist/monitorSlice/index.d.ts +291 -0
  247. package/dist/monitorSlice/index.js +1035 -0
  248. package/dist/monitorSlice/index.js.map +1 -0
  249. package/dist/monitorSlice/index.mjs +21 -0
  250. package/dist/monitorSlice/index.mjs.map +1 -0
  251. package/dist/monitorSlice/selectors.d.mts +3 -0
  252. package/dist/monitorSlice/selectors.d.ts +3 -0
  253. package/dist/monitorSlice/selectors.js +31 -0
  254. package/dist/monitorSlice/selectors.js.map +1 -0
  255. package/dist/monitorSlice/selectors.mjs +8 -0
  256. package/dist/monitorSlice/selectors.mjs.map +1 -0
  257. package/dist/monitorSlice/thunks.d.mts +71 -0
  258. package/dist/monitorSlice/thunks.d.ts +71 -0
  259. package/dist/monitorSlice/thunks.js +2609 -0
  260. package/dist/monitorSlice/thunks.js.map +1 -0
  261. package/dist/monitorSlice/thunks.mjs +44 -0
  262. package/dist/monitorSlice/thunks.mjs.map +1 -0
  263. package/dist/onboardingSlice/constants.d.mts +23 -0
  264. package/dist/onboardingSlice/constants.d.ts +23 -0
  265. package/dist/onboardingSlice/constants.js +71 -0
  266. package/dist/onboardingSlice/constants.js.map +1 -0
  267. package/dist/onboardingSlice/constants.mjs +10 -0
  268. package/dist/onboardingSlice/constants.mjs.map +1 -0
  269. package/dist/onboardingSlice/index.d.mts +237 -0
  270. package/dist/onboardingSlice/index.d.ts +237 -0
  271. package/dist/onboardingSlice/index.js +94 -0
  272. package/dist/onboardingSlice/index.js.map +1 -0
  273. package/dist/onboardingSlice/index.mjs +16 -0
  274. package/dist/onboardingSlice/index.mjs.map +1 -0
  275. package/dist/onboardingSlice/selectors.d.mts +3 -0
  276. package/dist/onboardingSlice/selectors.d.ts +3 -0
  277. package/dist/onboardingSlice/selectors.js +31 -0
  278. package/dist/onboardingSlice/selectors.js.map +1 -0
  279. package/dist/onboardingSlice/selectors.mjs +8 -0
  280. package/dist/onboardingSlice/selectors.mjs.map +1 -0
  281. package/dist/onboardingSlice/thunks.d.mts +172 -0
  282. package/dist/onboardingSlice/thunks.d.ts +172 -0
  283. package/dist/onboardingSlice/thunks.js +5739 -0
  284. package/dist/onboardingSlice/thunks.js.map +1 -0
  285. package/dist/onboardingSlice/thunks.mjs +51 -0
  286. package/dist/onboardingSlice/thunks.mjs.map +1 -0
  287. package/dist/organizationSlice/constants.d.mts +139 -0
  288. package/dist/organizationSlice/constants.d.ts +139 -0
  289. package/dist/organizationSlice/constants.js +1038 -0
  290. package/dist/organizationSlice/constants.js.map +1 -0
  291. package/dist/organizationSlice/constants.mjs +36 -0
  292. package/dist/organizationSlice/constants.mjs.map +1 -0
  293. package/dist/organizationSlice/index.d.mts +1075 -0
  294. package/dist/organizationSlice/index.d.ts +1075 -0
  295. package/dist/organizationSlice/index.js +1077 -0
  296. package/dist/organizationSlice/index.js.map +1 -0
  297. package/dist/organizationSlice/index.mjs +21 -0
  298. package/dist/organizationSlice/index.mjs.map +1 -0
  299. package/dist/organizationSlice/selectors.d.mts +134 -0
  300. package/dist/organizationSlice/selectors.d.ts +134 -0
  301. package/dist/organizationSlice/selectors.js +1041 -0
  302. package/dist/organizationSlice/selectors.js.map +1 -0
  303. package/dist/organizationSlice/selectors.mjs +39 -0
  304. package/dist/organizationSlice/selectors.mjs.map +1 -0
  305. package/dist/organizationSlice/thunks.d.mts +502 -0
  306. package/dist/organizationSlice/thunks.d.ts +502 -0
  307. package/dist/organizationSlice/thunks.js +5787 -0
  308. package/dist/organizationSlice/thunks.js.map +1 -0
  309. package/dist/organizationSlice/thunks.mjs +101 -0
  310. package/dist/organizationSlice/thunks.mjs.map +1 -0
  311. package/dist/releasesSlice/constants.d.mts +14 -0
  312. package/dist/releasesSlice/constants.d.ts +14 -0
  313. package/dist/releasesSlice/constants.js +40 -0
  314. package/dist/releasesSlice/constants.js.map +1 -0
  315. package/dist/releasesSlice/constants.mjs +14 -0
  316. package/dist/releasesSlice/constants.mjs.map +1 -0
  317. package/dist/releasesSlice/index.d.mts +483 -0
  318. package/dist/releasesSlice/index.d.ts +483 -0
  319. package/dist/releasesSlice/index.js +1098 -0
  320. package/dist/releasesSlice/index.js.map +1 -0
  321. package/dist/releasesSlice/index.mjs +21 -0
  322. package/dist/releasesSlice/index.mjs.map +1 -0
  323. package/dist/releasesSlice/selectors.d.mts +92 -0
  324. package/dist/releasesSlice/selectors.d.ts +92 -0
  325. package/dist/releasesSlice/selectors.js +1031 -0
  326. package/dist/releasesSlice/selectors.js.map +1 -0
  327. package/dist/releasesSlice/selectors.mjs +28 -0
  328. package/dist/releasesSlice/selectors.mjs.map +1 -0
  329. package/dist/releasesSlice/thunks.d.mts +276 -0
  330. package/dist/releasesSlice/thunks.d.ts +276 -0
  331. package/dist/releasesSlice/thunks.js +2921 -0
  332. package/dist/releasesSlice/thunks.js.map +1 -0
  333. package/dist/releasesSlice/thunks.mjs +66 -0
  334. package/dist/releasesSlice/thunks.mjs.map +1 -0
  335. package/dist/selectors.d.mts +10 -0
  336. package/dist/selectors.d.ts +10 -0
  337. package/dist/selectors.js +1718 -0
  338. package/dist/selectors.js.map +1 -0
  339. package/dist/selectors.mjs +209 -0
  340. package/dist/selectors.mjs.map +1 -0
  341. package/dist/store.d.mts +2406 -0
  342. package/dist/store.d.ts +2406 -0
  343. package/dist/store.js +1939 -0
  344. package/dist/store.js.map +1 -0
  345. package/dist/store.mjs +32 -0
  346. package/dist/store.mjs.map +1 -0
  347. package/dist/storehooks.d.mts +6 -0
  348. package/dist/storehooks.d.ts +6 -0
  349. package/dist/storehooks.js +5940 -0
  350. package/dist/storehooks.js.map +1 -0
  351. package/dist/storehooks.mjs +285 -0
  352. package/dist/storehooks.mjs.map +1 -0
  353. package/dist/thunks.d.mts +12 -0
  354. package/dist/thunks.d.ts +12 -0
  355. package/dist/thunks.js +6051 -0
  356. package/dist/thunks.js.map +1 -0
  357. package/dist/thunks.mjs +363 -0
  358. package/dist/thunks.mjs.map +1 -0
  359. package/dist/usersSlice/constants.d.mts +810 -0
  360. package/dist/usersSlice/constants.d.ts +810 -0
  361. package/dist/usersSlice/constants.js +1033 -0
  362. package/dist/usersSlice/constants.js.map +1 -0
  363. package/dist/usersSlice/constants.mjs +45 -0
  364. package/dist/usersSlice/constants.mjs.map +1 -0
  365. package/dist/usersSlice/index.d.mts +7917 -0
  366. package/dist/usersSlice/index.d.ts +7917 -0
  367. package/dist/usersSlice/index.js +1118 -0
  368. package/dist/usersSlice/index.js.map +1 -0
  369. package/dist/usersSlice/index.mjs +21 -0
  370. package/dist/usersSlice/index.mjs.map +1 -0
  371. package/dist/usersSlice/selectors.d.mts +209 -0
  372. package/dist/usersSlice/selectors.d.ts +209 -0
  373. package/dist/usersSlice/selectors.js +1061 -0
  374. package/dist/usersSlice/selectors.js.map +1 -0
  375. package/dist/usersSlice/selectors.mjs +38 -0
  376. package/dist/usersSlice/selectors.mjs.map +1 -0
  377. package/dist/usersSlice/thunks.d.mts +881 -0
  378. package/dist/usersSlice/thunks.d.ts +881 -0
  379. package/dist/usersSlice/thunks.js +5795 -0
  380. package/dist/usersSlice/thunks.js.map +1 -0
  381. package/dist/usersSlice/thunks.mjs +109 -0
  382. package/dist/usersSlice/thunks.mjs.map +1 -0
  383. package/dist/utils.d.mts +61 -0
  384. package/dist/utils.d.ts +61 -0
  385. package/dist/utils.js +1224 -0
  386. package/dist/utils.js.map +1 -0
  387. package/dist/utils.mjs +49 -0
  388. package/dist/utils.mjs.map +1 -0
  389. package/package.json +14 -2
  390. package/.eslintrc.cjs +0 -9
  391. package/.prettierignore +0 -1
  392. package/CHANGELOG.md +0 -2
  393. package/actions.ts +0 -32
  394. package/api/general-api.test.ts +0 -51
  395. package/api/general-api.ts +0 -60
  396. package/api/types/Deployment.ts +0 -95
  397. package/api/types/DeviceDeployments.ts +0 -31
  398. package/api/types/FilterPredicateInventory.ts +0 -76
  399. package/api/types/Tenant.ts +0 -38
  400. package/api/users-api.ts +0 -34
  401. package/appSlice/constants.ts +0 -166
  402. package/appSlice/reducer.test.ts +0 -97
  403. package/appSlice/selectors.ts +0 -33
  404. package/appSlice/thunks.test.ts +0 -118
  405. package/appSlice/thunks.ts +0 -148
  406. package/auth.test.ts +0 -36
  407. package/auth.ts +0 -82
  408. package/commonConstants.tsx +0 -252
  409. package/commonSelectors.ts +0 -255
  410. package/constants.ts +0 -22
  411. package/deploymentsSlice/constants.ts +0 -175
  412. package/deploymentsSlice/index.ts +0 -145
  413. package/deploymentsSlice/reducer.test.ts +0 -108
  414. package/deploymentsSlice/selectors.ts +0 -58
  415. package/deploymentsSlice/thunks.test.ts +0 -425
  416. package/deploymentsSlice/thunks.ts +0 -382
  417. package/devicesSlice/constants.ts +0 -56
  418. package/devicesSlice/reducer.test.ts +0 -194
  419. package/devicesSlice/selectors.ts +0 -127
  420. package/devicesSlice/thunks.test.tsx +0 -1245
  421. package/devicesSlice/thunks.tsx +0 -1098
  422. package/monitorSlice/constants.ts +0 -17
  423. package/monitorSlice/index.ts +0 -65
  424. package/monitorSlice/reducer.test.ts +0 -79
  425. package/monitorSlice/selectors.ts +0 -15
  426. package/monitorSlice/thunks.test.ts +0 -112
  427. package/monitorSlice/thunks.ts +0 -101
  428. package/onboardingSlice/constants.ts +0 -53
  429. package/onboardingSlice/reducer.test.ts +0 -45
  430. package/onboardingSlice/selectors.ts +0 -15
  431. package/onboardingSlice/thunks.test.ts +0 -235
  432. package/onboardingSlice/thunks.ts +0 -142
  433. package/organizationSlice/constants.ts +0 -82
  434. package/organizationSlice/index.ts +0 -111
  435. package/organizationSlice/reducer.test.ts +0 -78
  436. package/organizationSlice/selectors.ts +0 -45
  437. package/organizationSlice/thunks.test.ts +0 -619
  438. package/organizationSlice/thunks.ts +0 -383
  439. package/releasesSlice/constants.ts +0 -18
  440. package/releasesSlice/reducer.test.ts +0 -78
  441. package/releasesSlice/selectors.ts +0 -33
  442. package/releasesSlice/thunks.test.ts +0 -389
  443. package/releasesSlice/thunks.ts +0 -379
  444. package/selectors.ts +0 -22
  445. package/store.ts +0 -89
  446. package/storehooks.test.tsx +0 -386
  447. package/storehooks.ts +0 -250
  448. package/thunks.ts +0 -21
  449. package/tsconfig.json +0 -11
  450. package/tsup.config.ts +0 -11
  451. package/usersSlice/constants.ts +0 -374
  452. package/usersSlice/reducer.test.ts +0 -141
  453. package/usersSlice/selectors.ts +0 -60
  454. package/usersSlice/thunks.test.ts +0 -660
  455. package/usersSlice/thunks.ts +0 -782
  456. package/utils.test.ts +0 -187
  457. package/utils.ts +0 -249
  458. /package/{api → dist/api}/types/AWSCredentials.ts +0 -0
  459. /package/{api → dist/api}/types/Actor.ts +0 -0
  460. /package/{api → dist/api}/types/Addon.ts +0 -0
  461. /package/{api → dist/api}/types/AddonTenantadm.ts +0 -0
  462. /package/{api → dist/api}/types/Alert.ts +0 -0
  463. /package/{api → dist/api}/types/AlertDetails.ts +0 -0
  464. /package/{api → dist/api}/types/AlertSubject.ts +0 -0
  465. /package/{api → dist/api}/types/ApiBurst.ts +0 -0
  466. /package/{api → dist/api}/types/ApiBurstTenantadm.ts +0 -0
  467. /package/{api → dist/api}/types/ApiLimits.ts +0 -0
  468. /package/{api → dist/api}/types/ApiLimitsTenantadm.ts +0 -0
  469. /package/{api → dist/api}/types/ApiQuota.ts +0 -0
  470. /package/{api → dist/api}/types/ApiQuotaTenantadm.ts +0 -0
  471. /package/{api → dist/api}/types/Artifact.ts +0 -0
  472. /package/{api → dist/api}/types/ArtifactDeployments.ts +0 -0
  473. /package/{api → dist/api}/types/ArtifactInfo.ts +0 -0
  474. /package/{api → dist/api}/types/ArtifactInfoDeployments.ts +0 -0
  475. /package/{api → dist/api}/types/ArtifactLink.ts +0 -0
  476. /package/{api → dist/api}/types/ArtifactTypeInfo.ts +0 -0
  477. /package/{api → dist/api}/types/ArtifactTypeInfoDeployments.ts +0 -0
  478. /package/{api → dist/api}/types/ArtifactUpdate.ts +0 -0
  479. /package/{api → dist/api}/types/ArtifactUploadLink.ts +0 -0
  480. /package/{api → dist/api}/types/Attribute.ts +0 -0
  481. /package/{api → dist/api}/types/AttributeInventory.ts +0 -0
  482. /package/{api → dist/api}/types/AuditLog.ts +0 -0
  483. /package/{api → dist/api}/types/AuthSetDeviceauth.ts +0 -0
  484. /package/{api → dist/api}/types/AutoAuthRequest.ts +0 -0
  485. /package/{api → dist/api}/types/AzureSharedAccessSecret.ts +0 -0
  486. /package/{api → dist/api}/types/BillingInfo.ts +0 -0
  487. /package/{api → dist/api}/types/BinaryDeltaConfiguration.ts +0 -0
  488. /package/{api → dist/api}/types/BinaryDeltaConfigurationDeployments.ts +0 -0
  489. /package/{api → dist/api}/types/BinaryDeltaLimitsDeployments.ts +0 -0
  490. /package/{api → dist/api}/types/CancelRequest.ts +0 -0
  491. /package/{api → dist/api}/types/CardData.ts +0 -0
  492. /package/{api → dist/api}/types/CardSetupData.ts +0 -0
  493. /package/{api → dist/api}/types/CheckoutData.ts +0 -0
  494. /package/{api → dist/api}/types/Configuration.ts +0 -0
  495. /package/{api → dist/api}/types/Count.ts +0 -0
  496. /package/{api → dist/api}/types/Credentials.ts +0 -0
  497. /package/{api → dist/api}/types/DBusSubsystem.ts +0 -0
  498. /package/{api → dist/api}/types/DeltaConfiguration.ts +0 -0
  499. /package/{api → dist/api}/types/DeltaConfigurationDeployments.ts +0 -0
  500. /package/{api → dist/api}/types/DeploymentAuditlogs.ts +0 -0
  501. /package/{api → dist/api}/types/DeploymentIdentifier.ts +0 -0
  502. /package/{api → dist/api}/types/DeploymentPhase.ts +0 -0
  503. /package/{api → dist/api}/types/DeploymentReporting.ts +0 -0
  504. /package/{api → dist/api}/types/DeploymentStatistics.ts +0 -0
  505. /package/{api → dist/api}/types/DeploymentStatusStatistics.ts +0 -0
  506. /package/{api → dist/api}/types/DeviceAuditlogs.ts +0 -0
  507. /package/{api → dist/api}/types/DeviceAuthEvent.ts +0 -0
  508. /package/{api → dist/api}/types/DeviceConfiguration.ts +0 -0
  509. /package/{api → dist/api}/types/DeviceDeployment.ts +0 -0
  510. /package/{api → dist/api}/types/DeviceDeviceauth.ts +0 -0
  511. /package/{api → dist/api}/types/DeviceInventory.ts +0 -0
  512. /package/{api → dist/api}/types/DeviceInventoryInventory.ts +0 -0
  513. /package/{api → dist/api}/types/DeviceReporting.ts +0 -0
  514. /package/{api → dist/api}/types/DeviceState.ts +0 -0
  515. /package/{api → dist/api}/types/DeviceStateDeviceconnect.ts +0 -0
  516. /package/{api → dist/api}/types/DeviceStateIot_manager.ts +0 -0
  517. /package/{api → dist/api}/types/DeviceStatus.ts +0 -0
  518. /package/{api → dist/api}/types/DeviceWithImage.ts +0 -0
  519. /package/{api → dist/api}/types/DirectUploadMetadata.ts +0 -0
  520. /package/{api → dist/api}/types/EmailVerificationCompletion.ts +0 -0
  521. /package/{api → dist/api}/types/EmailVerificationRequest.ts +0 -0
  522. /package/{api → dist/api}/types/ErrorAuditlogs.ts +0 -0
  523. /package/{api → dist/api}/types/ErrorDeployments.ts +0 -0
  524. /package/{api → dist/api}/types/ErrorDeviceauth.ts +0 -0
  525. /package/{api → dist/api}/types/ErrorDeviceconfig.ts +0 -0
  526. /package/{api → dist/api}/types/ErrorDeviceconnect.ts +0 -0
  527. /package/{api → dist/api}/types/ErrorDevicemonitor.ts +0 -0
  528. /package/{api → dist/api}/types/ErrorExt.ts +0 -0
  529. /package/{api → dist/api}/types/ErrorInventory.ts +0 -0
  530. /package/{api → dist/api}/types/ErrorIot_manager.ts +0 -0
  531. /package/{api → dist/api}/types/ErrorNotFound.ts +0 -0
  532. /package/{api → dist/api}/types/ErrorReporting.ts +0 -0
  533. /package/{api → dist/api}/types/ErrorTenantadm.ts +0 -0
  534. /package/{api → dist/api}/types/ErrorUseradm.ts +0 -0
  535. /package/{api → dist/api}/types/Event.ts +0 -0
  536. /package/{api → dist/api}/types/ExternalIdentity.ts +0 -0
  537. /package/{api → dist/api}/types/Features.ts +0 -0
  538. /package/{api → dist/api}/types/FileUpload.ts +0 -0
  539. /package/{api → dist/api}/types/FilterAttribute.ts +0 -0
  540. /package/{api → dist/api}/types/FilterDefinition.ts +0 -0
  541. /package/{api → dist/api}/types/FilterDeployments.ts +0 -0
  542. /package/{api → dist/api}/types/FilterPredicateDeployments.ts +0 -0
  543. /package/{api → dist/api}/types/Group.ts +0 -0
  544. /package/{api → dist/api}/types/HTTP.ts +0 -0
  545. /package/{api → dist/api}/types/IdentityData.ts +0 -0
  546. /package/{api → dist/api}/types/InputParameter.ts +0 -0
  547. /package/{api → dist/api}/types/JobStatus.ts +0 -0
  548. /package/{api → dist/api}/types/Limit.ts +0 -0
  549. /package/{api → dist/api}/types/LimitDeployments.ts +0 -0
  550. /package/{api → dist/api}/types/LimitDeviceauth.ts +0 -0
  551. /package/{api → dist/api}/types/LimitUseradm.ts +0 -0
  552. /package/{api → dist/api}/types/Limits.ts +0 -0
  553. /package/{api → dist/api}/types/LineDescriptor.ts +0 -0
  554. /package/{api → dist/api}/types/LogSubsystem.ts +0 -0
  555. /package/{api → dist/api}/types/LoginOptions.ts +0 -0
  556. /package/{api → dist/api}/types/ManagementAPIConfiguration.ts +0 -0
  557. /package/{api → dist/api}/types/MonitorConfiguration.ts +0 -0
  558. /package/{api → dist/api}/types/NewConfigurationDeployment.ts +0 -0
  559. /package/{api → dist/api}/types/NewConfigurationDeploymentResponse.ts +0 -0
  560. /package/{api → dist/api}/types/NewDeployment.ts +0 -0
  561. /package/{api → dist/api}/types/NewDeploymentForGroup.ts +0 -0
  562. /package/{api → dist/api}/types/NewDeploymentPhase.ts +0 -0
  563. /package/{api → dist/api}/types/NewDeploymentPhaseDeployments.ts +0 -0
  564. /package/{api → dist/api}/types/OwnUserUpdate.ts +0 -0
  565. /package/{api → dist/api}/types/PasswordResetCompletion.ts +0 -0
  566. /package/{api → dist/api}/types/PasswordResetRequest.ts +0 -0
  567. /package/{api → dist/api}/types/Permission.ts +0 -0
  568. /package/{api → dist/api}/types/PermissionObject.ts +0 -0
  569. /package/{api → dist/api}/types/PermissionSet.ts +0 -0
  570. /package/{api → dist/api}/types/PermissionSetWithScope.ts +0 -0
  571. /package/{api → dist/api}/types/PersonalAccessToken.ts +0 -0
  572. /package/{api → dist/api}/types/PersonalAccessTokenRequest.ts +0 -0
  573. /package/{api → dist/api}/types/Plan.ts +0 -0
  574. /package/{api → dist/api}/types/PlanBindingDetails.ts +0 -0
  575. /package/{api → dist/api}/types/PlanChangeRequest.ts +0 -0
  576. /package/{api → dist/api}/types/PlanLimits.ts +0 -0
  577. /package/{api → dist/api}/types/Release.ts +0 -0
  578. /package/{api → dist/api}/types/ReleaseDeployments.ts +0 -0
  579. /package/{api → dist/api}/types/ReleaseUpdate.ts +0 -0
  580. /package/{api → dist/api}/types/Releases.ts +0 -0
  581. /package/{api → dist/api}/types/ReleasesDeleteError.ts +0 -0
  582. /package/{api → dist/api}/types/ReleasesDeployments.ts +0 -0
  583. /package/{api → dist/api}/types/Role.ts +0 -0
  584. /package/{api → dist/api}/types/RolePermission.ts +0 -0
  585. /package/{api → dist/api}/types/RolePermissionObject.ts +0 -0
  586. /package/{api → dist/api}/types/RoleUseradm.ts +0 -0
  587. /package/{api → dist/api}/types/SAMLMetadata.ts +0 -0
  588. /package/{api → dist/api}/types/Scope.ts +0 -0
  589. /package/{api → dist/api}/types/SelectAttribute.ts +0 -0
  590. /package/{api → dist/api}/types/ServiceSubsystem.ts +0 -0
  591. /package/{api → dist/api}/types/SortCriteria.ts +0 -0
  592. /package/{api → dist/api}/types/SsoObject.ts +0 -0
  593. /package/{api → dist/api}/types/StatusDeviceauth.ts +0 -0
  594. /package/{api → dist/api}/types/StorageLimit.ts +0 -0
  595. /package/{api → dist/api}/types/SubscriptionData.ts +0 -0
  596. /package/{api → dist/api}/types/SupportRequest.ts +0 -0
  597. /package/{api → dist/api}/types/Tag.ts +0 -0
  598. /package/{api → dist/api}/types/Tags.ts +0 -0
  599. /package/{api → dist/api}/types/TaskResult.ts +0 -0
  600. /package/{api → dist/api}/types/TaskResultCLI.ts +0 -0
  601. /package/{api → dist/api}/types/TaskResultHTTPRequest.ts +0 -0
  602. /package/{api → dist/api}/types/TaskResultHTTPResponse.ts +0 -0
  603. /package/{api → dist/api}/types/TenantApiLimits.ts +0 -0
  604. /package/{api → dist/api}/types/TenantApiLimitsTenantadm.ts +0 -0
  605. /package/{api → dist/api}/types/TenantIdName.ts +0 -0
  606. /package/{api → dist/api}/types/TenantIdsData.ts +0 -0
  607. /package/{api → dist/api}/types/TenantInfo.ts +0 -0
  608. /package/{api → dist/api}/types/TenantShortInfo.ts +0 -0
  609. /package/{api → dist/api}/types/TenantsIdName.ts +0 -0
  610. /package/{api → dist/api}/types/Update.ts +0 -0
  611. /package/{api → dist/api}/types/UpdateFile.ts +0 -0
  612. /package/{api → dist/api}/types/UpdateFileDeployments.ts +0 -0
  613. /package/{api → dist/api}/types/UpdateTypes.ts +0 -0
  614. /package/{api → dist/api}/types/User.ts +0 -0
  615. /package/{api → dist/api}/types/UserAuditlogs.ts +0 -0
  616. /package/{api → dist/api}/types/UserNew.ts +0 -0
  617. /package/{api → dist/api}/types/UserUpdate.ts +0 -0
  618. /package/{api → dist/api}/types/UserUseradm.ts +0 -0
  619. /package/{api → dist/api}/types/XDeltaArgs.ts +0 -0
  620. /package/{api → dist/api}/types/XDeltaArgsDeployments.ts +0 -0
  621. /package/{api → dist/api}/types/XDeltaArgsLimits.ts +0 -0
  622. /package/{api → dist/api}/types/XDeltaArgsLimitsDeployments.ts +0 -0
@@ -0,0 +1,414 @@
1
+ import {
2
+ general_api_default
3
+ } from "./chunk-2P4VECEE.mjs";
4
+ import {
5
+ getSearchEndpoint
6
+ } from "./chunk-Y47SYXII.mjs";
7
+ import {
8
+ getReleasesById
9
+ } from "./chunk-XJNI62IP.mjs";
10
+ import {
11
+ commonErrorFallback,
12
+ commonErrorHandler
13
+ } from "./chunk-RWYS5MKN.mjs";
14
+ import {
15
+ actions_default
16
+ } from "./chunk-ENLZPHTQ.mjs";
17
+ import {
18
+ actions,
19
+ sliceName
20
+ } from "./chunk-NCI6JV5R.mjs";
21
+ import {
22
+ convertDeviceListStateToFilters,
23
+ progress
24
+ } from "./chunk-U6YTBIDT.mjs";
25
+ import {
26
+ deploymentsApiUrl,
27
+ deploymentsApiUrlV2,
28
+ emptyFilter
29
+ } from "./chunk-MQIKQKSW.mjs";
30
+ import {
31
+ ARTIFACT_GENERATION_TYPE
32
+ } from "./chunk-G4FGNSV3.mjs";
33
+ import {
34
+ headerNames
35
+ } from "./chunk-BOSBROA3.mjs";
36
+ import {
37
+ DEVICE_LIST_DEFAULTS,
38
+ SORTING_OPTIONS,
39
+ TIMEOUTS
40
+ } from "./chunk-OGAMVFPS.mjs";
41
+ import {
42
+ __objRest,
43
+ __spreadProps,
44
+ __spreadValues
45
+ } from "./chunk-XWBD7VOK.mjs";
46
+
47
+ // src/releasesSlice/thunks.ts
48
+ import { customSort, deepCompare, duplicateFilter, extractSoftwareItem } from "@northern.tech/utils/helpers";
49
+ import { formatReleases } from "@northern.tech/utils/locationutils";
50
+ import { createAsyncThunk } from "@reduxjs/toolkit";
51
+ import { isCancel } from "axios";
52
+
53
+ // ../../node_modules/uuid/dist/esm-node/rng.js
54
+ import crypto from "crypto";
55
+ var rnds8Pool = new Uint8Array(256);
56
+ var poolPtr = rnds8Pool.length;
57
+ function rng() {
58
+ if (poolPtr > rnds8Pool.length - 16) {
59
+ crypto.randomFillSync(rnds8Pool);
60
+ poolPtr = 0;
61
+ }
62
+ return rnds8Pool.slice(poolPtr, poolPtr += 16);
63
+ }
64
+
65
+ // ../../node_modules/uuid/dist/esm-node/stringify.js
66
+ var byteToHex = [];
67
+ for (let i = 0; i < 256; ++i) {
68
+ byteToHex.push((i + 256).toString(16).slice(1));
69
+ }
70
+ function unsafeStringify(arr, offset = 0) {
71
+ return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
72
+ }
73
+
74
+ // ../../node_modules/uuid/dist/esm-node/native.js
75
+ import crypto2 from "crypto";
76
+ var native_default = {
77
+ randomUUID: crypto2.randomUUID
78
+ };
79
+
80
+ // ../../node_modules/uuid/dist/esm-node/v4.js
81
+ function v4(options, buf, offset) {
82
+ if (native_default.randomUUID && !buf && !options) {
83
+ return native_default.randomUUID();
84
+ }
85
+ options = options || {};
86
+ const rnds = options.random || (options.rng || rng)();
87
+ rnds[6] = rnds[6] & 15 | 64;
88
+ rnds[8] = rnds[8] & 63 | 128;
89
+ if (buf) {
90
+ offset = offset || 0;
91
+ for (let i = 0; i < 16; ++i) {
92
+ buf[offset + i] = rnds[i];
93
+ }
94
+ return buf;
95
+ }
96
+ return unsafeStringify(rnds);
97
+ }
98
+ var v4_default = v4;
99
+
100
+ // src/releasesSlice/thunks.ts
101
+ var { setSnackbar, initUpload, uploadProgress, cleanUpUpload } = actions_default;
102
+ var { page: defaultPage, perPage: defaultPerPage } = DEVICE_LIST_DEFAULTS;
103
+ var sortingDefaults = { direction: SORTING_OPTIONS.desc, key: "modified" };
104
+ var flattenRelease = (release, stateRelease) => {
105
+ var _a;
106
+ const updatedArtifacts = ((_a = release.artifacts) == null ? void 0 : _a.sort(customSort(1, "modified"))) || [];
107
+ const { artifacts, deviceTypes, modified } = updatedArtifacts.reduce(
108
+ (accu, item) => {
109
+ var _a2;
110
+ accu.deviceTypes.push(...item.device_types_compatible);
111
+ const stateArtifact = ((_a2 = stateRelease.artifacts) == null ? void 0 : _a2.find((releaseArtifact) => releaseArtifact.id === item.id)) || {};
112
+ accu.modified = accu.modified ? accu.modified : item.modified;
113
+ accu.artifacts.push(__spreadValues(__spreadValues({}, stateArtifact), item));
114
+ return accu;
115
+ },
116
+ { artifacts: [], deviceTypes: [], modified: void 0 }
117
+ );
118
+ return __spreadProps(__spreadValues(__spreadValues({}, stateRelease), release), { artifacts, device_types_compatible: deviceTypes.filter(duplicateFilter), modified });
119
+ };
120
+ var reduceReceivedReleases = (releases, stateReleasesById) => releases.reduce((accu, release) => {
121
+ const stateRelease = stateReleasesById[release.name] || {};
122
+ accu[release.name] = flattenRelease(release, stateRelease);
123
+ return accu;
124
+ }, {});
125
+ var findArtifactIndexInRelease = (releases, id) => Object.values(releases).reduce(
126
+ (accu, item) => {
127
+ let index = item.artifacts.findIndex((releaseArtifact) => releaseArtifact.id === id);
128
+ if (index > -1) {
129
+ accu = { release: item, index };
130
+ }
131
+ return accu;
132
+ },
133
+ { release: null, index: -1 }
134
+ );
135
+ var getArtifactInstallCount = createAsyncThunk(`${sliceName}/getArtifactInstallCount`, (id, { dispatch, getState }) => {
136
+ var _a;
137
+ let { release, index } = findArtifactIndexInRelease(getReleasesById(getState()), id);
138
+ if (!release || index === -1) {
139
+ return;
140
+ }
141
+ const releaseArtifacts = [...release.artifacts];
142
+ const artifact = releaseArtifacts[index];
143
+ const { key, name, version } = (_a = extractSoftwareItem(artifact.artifact_provides)) != null ? _a : {};
144
+ const attribute = `${key}${name ? `.${name}` : ""}.version`;
145
+ const { filterTerms } = convertDeviceListStateToFilters({
146
+ filters: [__spreadProps(__spreadValues({}, emptyFilter), { key: attribute, value: version, scope: "inventory" })]
147
+ });
148
+ return general_api_default.post(getSearchEndpoint(getState()), {
149
+ page: 1,
150
+ per_page: 1,
151
+ filters: filterTerms,
152
+ attributes: [{ scope: "identity", attribute: "status" }]
153
+ }).catch((err) => commonErrorHandler(err, `Retrieving artifact installation count failed:`, dispatch, commonErrorFallback)).then(({ headers }) => {
154
+ let { release: release2, index: index2 } = findArtifactIndexInRelease(getReleasesById(getState()), id);
155
+ if (!release2 || index2 === -1) {
156
+ return;
157
+ }
158
+ const installCount = Number(headers[headerNames.total]);
159
+ const releaseArtifacts2 = [...release2.artifacts];
160
+ releaseArtifacts2[index2] = __spreadProps(__spreadValues({}, releaseArtifacts2[index2]), { installCount });
161
+ release2 = __spreadProps(__spreadValues({}, release2), {
162
+ artifacts: releaseArtifacts2
163
+ });
164
+ return dispatch(actions.receiveRelease(release2));
165
+ });
166
+ });
167
+ var getArtifactUrl = createAsyncThunk(
168
+ `${sliceName}/getArtifactUrl`,
169
+ (id, { dispatch, getState }) => general_api_default.get(`${deploymentsApiUrl}/artifacts/${id}/download`).then((response) => {
170
+ let { release, index } = findArtifactIndexInRelease(getReleasesById(getState()), id);
171
+ if (!release || index === -1) {
172
+ return dispatch(getReleases());
173
+ }
174
+ const releaseArtifacts = [...release.artifacts];
175
+ releaseArtifacts[index] = __spreadProps(__spreadValues({}, releaseArtifacts[index]), {
176
+ url: response.data.uri
177
+ });
178
+ release = __spreadProps(__spreadValues({}, release), {
179
+ artifacts: releaseArtifacts
180
+ });
181
+ return dispatch(actions.receiveRelease(release));
182
+ })
183
+ );
184
+ var createArtifact = createAsyncThunk(`${sliceName}/createArtifact`, ({ file, meta }, { dispatch }) => {
185
+ let formData = Object.entries(meta).reduce((accu, [key, value]) => {
186
+ if (Array.isArray(value)) {
187
+ accu.append(key, value.join(","));
188
+ } else if (value instanceof Object) {
189
+ accu.append(key, JSON.stringify(value));
190
+ } else {
191
+ accu.append(key, value);
192
+ }
193
+ return accu;
194
+ }, new FormData());
195
+ formData.append("type", ARTIFACT_GENERATION_TYPE.SINGLE_FILE);
196
+ formData.append("file", file);
197
+ const uploadId = v4_default();
198
+ const cancelSource = new AbortController();
199
+ return Promise.all([
200
+ dispatch(setSnackbar("Generating artifact")),
201
+ dispatch(initUpload({ id: uploadId, upload: { name: file.name, size: file.size, uploadProgress: 0, cancelSource } })),
202
+ general_api_default.upload(
203
+ `${deploymentsApiUrl}/artifacts/generate`,
204
+ formData,
205
+ (e) => dispatch(uploadProgress({ id: uploadId, progress: progress(e) })),
206
+ cancelSource.signal
207
+ )
208
+ ]).then(() => {
209
+ setTimeout(() => {
210
+ dispatch(getReleases());
211
+ dispatch(selectRelease(file.name));
212
+ }, TIMEOUTS.oneSecond);
213
+ return Promise.resolve(dispatch(setSnackbar("Upload successful", TIMEOUTS.fiveSeconds)));
214
+ }).catch((err) => {
215
+ if (isCancel(err)) {
216
+ return dispatch(setSnackbar("The artifact generation has been cancelled", TIMEOUTS.fiveSeconds));
217
+ }
218
+ return commonErrorHandler(err, `Artifact couldn't be generated.`, dispatch);
219
+ }).finally(() => dispatch(cleanUpUpload(uploadId)));
220
+ });
221
+ var uploadArtifact = createAsyncThunk(`${sliceName}/uploadArtifact`, ({ file, meta }, { dispatch }) => {
222
+ let formData = new FormData();
223
+ formData.append("size", file.size);
224
+ formData.append("description", meta.description);
225
+ formData.append("artifact", file);
226
+ const uploadId = v4_default();
227
+ const cancelSource = new AbortController();
228
+ return Promise.all([
229
+ dispatch(setSnackbar("Uploading artifact")),
230
+ dispatch(initUpload({ id: uploadId, upload: { name: file.name, size: file.size, uploadProgress: 0, cancelSource } })),
231
+ general_api_default.upload(`${deploymentsApiUrl}/artifacts`, formData, (e) => dispatch(uploadProgress({ id: uploadId, progress: progress(e) })), cancelSource.signal)
232
+ ]).then(() => {
233
+ const tasks = [dispatch(setSnackbar("Upload successful", TIMEOUTS.fiveSeconds)), dispatch(getReleases())];
234
+ if (meta.name) {
235
+ tasks.push(dispatch(selectRelease(meta.name)));
236
+ }
237
+ return Promise.all(tasks);
238
+ }).catch((err) => {
239
+ if (isCancel(err)) {
240
+ return dispatch(setSnackbar("The upload has been cancelled", TIMEOUTS.fiveSeconds));
241
+ }
242
+ return commonErrorHandler(err, `Artifact couldn't be uploaded.`, dispatch);
243
+ }).finally(() => dispatch(cleanUpUpload(uploadId)));
244
+ });
245
+ var cancelFileUpload = createAsyncThunk(`${sliceName}/cancelFileUpload`, (id, { dispatch, getState }) => {
246
+ const { [id]: current } = getState().app.uploadsById;
247
+ current.cancelSource.abort();
248
+ return Promise.resolve(dispatch(cleanUpUpload(id)));
249
+ });
250
+ var editArtifact = createAsyncThunk(
251
+ `${sliceName}/editArtifact`,
252
+ ({ id, body }, { dispatch, getState }) => general_api_default.put(`${deploymentsApiUrl}/artifacts/${id}`, body).catch((err) => commonErrorHandler(err, `Artifact details couldn't be updated.`, dispatch)).then(() => {
253
+ const state = getState();
254
+ let { release, index } = findArtifactIndexInRelease(getReleasesById(state), id);
255
+ if (!release || index === -1) {
256
+ return dispatch(getReleases());
257
+ }
258
+ release.artifacts[index].description = body.description;
259
+ return Promise.all([
260
+ dispatch(actions.receiveRelease(release)),
261
+ dispatch(setSnackbar("Artifact details were updated successfully.", TIMEOUTS.fiveSeconds, "")),
262
+ dispatch(getRelease(release.name)),
263
+ dispatch(selectRelease(release.name))
264
+ ]);
265
+ })
266
+ );
267
+ var removeArtifact = createAsyncThunk(
268
+ `${sliceName}/removeArtifact`,
269
+ (id, { dispatch, getState }) => general_api_default.delete(`${deploymentsApiUrl}/artifacts/${id}`).then(() => {
270
+ const state = getState();
271
+ let { release, index } = findArtifactIndexInRelease(getReleasesById(state), id);
272
+ const releaseArtifacts = [...release.artifacts];
273
+ releaseArtifacts.splice(index, 1);
274
+ if (!releaseArtifacts.length) {
275
+ const { releasesList } = state.releases;
276
+ const releaseIds = releasesList.releaseIds.filter((id2) => release.name !== id2);
277
+ return Promise.all([
278
+ dispatch(actions.removeRelease(release.name)),
279
+ dispatch(
280
+ setReleasesListState({
281
+ releaseIds,
282
+ searchTotal: releasesList.searchTerm ? releasesList.searchTotal - 1 : releasesList.searchTotal,
283
+ total: releasesList.total - 1
284
+ })
285
+ )
286
+ ]);
287
+ }
288
+ return Promise.all([dispatch(setSnackbar("Artifact was removed", TIMEOUTS.fiveSeconds, "")), dispatch(actions.receiveRelease(release))]);
289
+ }).catch((err) => commonErrorHandler(err, `Error removing artifact:`, dispatch))
290
+ );
291
+ var removeRelease = createAsyncThunk(
292
+ `${sliceName}/removeRelease`,
293
+ (releaseId, { dispatch, getState }) => Promise.all(getReleasesById(getState())[releaseId].artifacts.map(({ id }) => dispatch(removeArtifact(id)))).then(() => dispatch(selectRelease()))
294
+ );
295
+ var selectRelease = createAsyncThunk(`${sliceName}/selectRelease`, (release, { dispatch }) => {
296
+ const name = release ? release.name || release : null;
297
+ let tasks = [dispatch(actions.selectedRelease(name))];
298
+ if (name) {
299
+ tasks.push(dispatch(getRelease(name)));
300
+ }
301
+ return Promise.all(tasks);
302
+ });
303
+ var setReleasesListState = createAsyncThunk(`${sliceName}/setReleasesListState`, (selectionState, { dispatch, getState }) => {
304
+ const currentState = getState().releases.releasesList;
305
+ let nextState = __spreadProps(__spreadValues(__spreadValues({}, currentState), selectionState), {
306
+ sort: __spreadValues(__spreadValues({}, currentState.sort), selectionState.sort)
307
+ });
308
+ let tasks = [];
309
+ const _a = currentState, { isLoading: currentLoading } = _a, currentRequestState = __objRest(_a, ["isLoading"]);
310
+ const _b = nextState, { isLoading: selectionLoading } = _b, selectionRequestState = __objRest(_b, ["isLoading"]);
311
+ if (!deepCompare(currentRequestState, selectionRequestState)) {
312
+ nextState.isLoading = true;
313
+ tasks.push(dispatch(getReleases(nextState)).finally(() => dispatch(setReleasesListState({ isLoading: false }))));
314
+ }
315
+ tasks.push(dispatch(actions.setReleaseListState(nextState)));
316
+ return Promise.all(tasks);
317
+ });
318
+ var releaseListRetrieval = (config) => {
319
+ const { searchTerm = "", page = defaultPage, perPage = defaultPerPage, sort = sortingDefaults, selectedTags = [], type = "" } = config;
320
+ const { key: attribute, direction } = sort;
321
+ const filterQuery = formatReleases({ pageState: { searchTerm, selectedTags } });
322
+ const updateType = type ? `update_type=${type}` : "";
323
+ const sorting = attribute ? `sort=${attribute}:${direction}`.toLowerCase() : "";
324
+ return general_api_default.get(
325
+ `${deploymentsApiUrlV2}/deployments/releases?${[`page=${page}`, `per_page=${perPage}`, filterQuery, updateType, sorting].filter((i) => i).join("&")}`
326
+ );
327
+ };
328
+ var deductSearchState = (receivedReleases, config, total, state) => {
329
+ let releaseListState = __spreadValues({}, state.releasesList);
330
+ const { searchTerm, searchOnly, sort = {}, selectedTags = [], type } = config;
331
+ const flattenedReleases = Object.values(receivedReleases).sort(customSort(sort.direction === SORTING_OPTIONS.desc, sort.key));
332
+ const releaseIds = flattenedReleases.map((item) => item.name);
333
+ const isFiltering = !!(selectedTags.length || type || searchTerm);
334
+ if (searchOnly) {
335
+ releaseListState = __spreadProps(__spreadValues({}, releaseListState), { searchedIds: releaseIds });
336
+ } else {
337
+ releaseListState = __spreadProps(__spreadValues({}, releaseListState), {
338
+ releaseIds,
339
+ searchTotal: isFiltering ? total : state.releasesList.searchTotal,
340
+ total: !isFiltering ? total : state.releasesList.total
341
+ });
342
+ }
343
+ return releaseListState;
344
+ };
345
+ var getReleases = createAsyncThunk(`${sliceName}/getReleases`, (passedConfig = {}, { dispatch, getState }) => {
346
+ const config = __spreadValues(__spreadValues({}, getState().releases.releasesList), passedConfig);
347
+ return releaseListRetrieval(config).then(({ data: receivedReleases = [], headers = {} }) => {
348
+ const total = headers[headerNames.total] ? Number(headers[headerNames.total]) : 0;
349
+ const state = getState().releases;
350
+ const flatReleases = reduceReceivedReleases(receivedReleases, state.byId);
351
+ const combinedReleases = __spreadValues(__spreadValues({}, state.byId), flatReleases);
352
+ let tasks = [dispatch(actions.receiveReleases(combinedReleases))];
353
+ const releaseListState = deductSearchState(receivedReleases, config, total, state);
354
+ tasks.push(dispatch(actions.setReleaseListState(releaseListState)));
355
+ return Promise.all(tasks);
356
+ }).catch((err) => commonErrorHandler(err, `Please check your connection`, dispatch));
357
+ });
358
+ var getRelease = createAsyncThunk(
359
+ `${sliceName}/getReleases`,
360
+ (name, { dispatch, getState }) => releaseListRetrieval({ searchTerm: name, page: 1, perPage: 1 }).then(({ data: releases }) => {
361
+ if (releases.length) {
362
+ const stateRelease = getReleasesById(getState())[releases[0].name] || {};
363
+ return Promise.resolve(dispatch(actions.receiveRelease(flattenRelease(releases[0], stateRelease))));
364
+ }
365
+ return Promise.resolve(null);
366
+ })
367
+ );
368
+ var updateReleaseInfo = createAsyncThunk(
369
+ `${sliceName}/updateReleaseInfo`,
370
+ ({ name, info }, { dispatch, getState }) => general_api_default.patch(`${deploymentsApiUrlV2}/deployments/releases/${name}`, info).catch((err) => commonErrorHandler(err, `Release details couldn't be updated.`, dispatch)).then(() => {
371
+ return Promise.all([
372
+ dispatch(actions.receiveRelease(__spreadProps(__spreadValues(__spreadValues({}, getReleasesById(getState())[name]), info), { name }))),
373
+ dispatch(setSnackbar("Release details were updated successfully.", TIMEOUTS.fiveSeconds, ""))
374
+ ]);
375
+ })
376
+ );
377
+ var setReleaseTags = createAsyncThunk(
378
+ `${sliceName}/setReleaseTags`,
379
+ ({ name, tags = [] }, { dispatch, getState }) => general_api_default.put(`${deploymentsApiUrlV2}/deployments/releases/${name}/tags`, tags).catch((err) => commonErrorHandler(err, `Release tags couldn't be set.`, dispatch)).then(() => {
380
+ return Promise.all([
381
+ dispatch(actions.receiveRelease(__spreadProps(__spreadValues({}, getReleasesById(getState())[name]), { name, tags }))),
382
+ dispatch(setSnackbar("Release tags were set successfully.", TIMEOUTS.fiveSeconds, ""))
383
+ ]);
384
+ })
385
+ );
386
+ var getExistingReleaseTags = createAsyncThunk(
387
+ `${sliceName}/getReleaseTags`,
388
+ (_, { dispatch }) => general_api_default.get(`${deploymentsApiUrlV2}/releases/all/tags`).catch((err) => commonErrorHandler(err, `Existing release tags couldn't be retrieved.`, dispatch)).then(({ data: tags }) => Promise.resolve(dispatch(actions.receiveReleaseTags(tags))))
389
+ );
390
+ var getUpdateTypes = createAsyncThunk(
391
+ `${sliceName}/getReleaseTypes`,
392
+ (_, { dispatch }) => general_api_default.get(`${deploymentsApiUrlV2}/releases/all/types`).catch((err) => commonErrorHandler(err, `Existing update types couldn't be retrieved.`, dispatch)).then(({ data: types }) => Promise.resolve(dispatch(actions.receiveReleaseTypes(types))))
393
+ );
394
+
395
+ export {
396
+ v4_default,
397
+ getArtifactInstallCount,
398
+ getArtifactUrl,
399
+ createArtifact,
400
+ uploadArtifact,
401
+ cancelFileUpload,
402
+ editArtifact,
403
+ removeArtifact,
404
+ removeRelease,
405
+ selectRelease,
406
+ setReleasesListState,
407
+ getReleases,
408
+ getRelease,
409
+ updateReleaseInfo,
410
+ setReleaseTags,
411
+ getExistingReleaseTags,
412
+ getUpdateTypes
413
+ };
414
+ //# sourceMappingURL=chunk-ZLRZO4EY.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/releasesSlice/thunks.ts","../../../node_modules/uuid/dist/esm-node/rng.js","../../../node_modules/uuid/dist/esm-node/stringify.js","../../../node_modules/uuid/dist/esm-node/native.js","../../../node_modules/uuid/dist/esm-node/v4.js"],"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.\n// @ts-nocheck\nimport storeActions from '@northern.tech/store/actions';\nimport GeneralApi from '@northern.tech/store/api/general-api';\nimport {\n DEVICE_LIST_DEFAULTS,\n SORTING_OPTIONS,\n TIMEOUTS,\n deploymentsApiUrl,\n deploymentsApiUrlV2,\n emptyFilter,\n headerNames\n} from '@northern.tech/store/constants';\nimport { getSearchEndpoint } from '@northern.tech/store/selectors';\nimport { commonErrorFallback, commonErrorHandler } from '@northern.tech/store/store';\nimport { convertDeviceListStateToFilters, progress } from '@northern.tech/store/utils';\nimport { customSort, deepCompare, duplicateFilter, extractSoftwareItem } from '@northern.tech/utils/helpers';\nimport { formatReleases } from '@northern.tech/utils/locationutils';\nimport { createAsyncThunk } from '@reduxjs/toolkit';\nimport { isCancel } from 'axios';\nimport { v4 as uuid } from 'uuid';\n\nimport { actions, sliceName } from '.';\nimport { ARTIFACT_GENERATION_TYPE } from './constants';\nimport { getReleasesById } from './selectors';\n\nconst { setSnackbar, initUpload, uploadProgress, cleanUpUpload } = storeActions;\nconst { page: defaultPage, perPage: defaultPerPage } = DEVICE_LIST_DEFAULTS;\n\nconst sortingDefaults = { direction: SORTING_OPTIONS.desc, key: 'modified' };\n\nconst flattenRelease = (release, stateRelease) => {\n const updatedArtifacts = release.artifacts?.sort(customSort(1, 'modified')) || [];\n const { artifacts, deviceTypes, modified } = updatedArtifacts.reduce(\n (accu, item) => {\n accu.deviceTypes.push(...item.device_types_compatible);\n const stateArtifact = stateRelease.artifacts?.find(releaseArtifact => releaseArtifact.id === item.id) || {};\n accu.modified = accu.modified ? accu.modified : item.modified;\n accu.artifacts.push({\n ...stateArtifact,\n ...item\n });\n return accu;\n },\n { artifacts: [], deviceTypes: [], modified: undefined }\n );\n return { ...stateRelease, ...release, artifacts, device_types_compatible: deviceTypes.filter(duplicateFilter), modified };\n};\n\nconst reduceReceivedReleases = (releases, stateReleasesById) =>\n releases.reduce((accu, release) => {\n const stateRelease = stateReleasesById[release.name] || {};\n accu[release.name] = flattenRelease(release, stateRelease);\n return accu;\n }, {});\n\nconst findArtifactIndexInRelease = (releases, id) =>\n Object.values(releases).reduce(\n (accu, item) => {\n let index = item.artifacts.findIndex(releaseArtifact => releaseArtifact.id === id);\n if (index > -1) {\n accu = { release: item, index };\n }\n return accu;\n },\n { release: null, index: -1 }\n );\n\n/* Artifacts */\nexport const getArtifactInstallCount = createAsyncThunk(`${sliceName}/getArtifactInstallCount`, (id, { dispatch, getState }) => {\n let { release, index } = findArtifactIndexInRelease(getReleasesById(getState()), id);\n if (!release || index === -1) {\n return;\n }\n const releaseArtifacts = [...release.artifacts];\n const artifact = releaseArtifacts[index];\n const { key, name, version } = extractSoftwareItem(artifact.artifact_provides) ?? {};\n const attribute = `${key}${name ? `.${name}` : ''}.version`;\n const { filterTerms } = convertDeviceListStateToFilters({\n filters: [{ ...emptyFilter, key: attribute, value: version, scope: 'inventory' }]\n });\n return GeneralApi.post(getSearchEndpoint(getState()), {\n page: 1,\n per_page: 1,\n filters: filterTerms,\n attributes: [{ scope: 'identity', attribute: 'status' }]\n })\n .catch(err => commonErrorHandler(err, `Retrieving artifact installation count failed:`, dispatch, commonErrorFallback))\n .then(({ headers }) => {\n let { release, index } = findArtifactIndexInRelease(getReleasesById(getState()), id);\n if (!release || index === -1) {\n return;\n }\n const installCount = Number(headers[headerNames.total]);\n const releaseArtifacts = [...release.artifacts];\n releaseArtifacts[index] = { ...releaseArtifacts[index], installCount };\n release = {\n ...release,\n artifacts: releaseArtifacts\n };\n return dispatch(actions.receiveRelease(release));\n });\n});\n\nexport const getArtifactUrl = createAsyncThunk(`${sliceName}/getArtifactUrl`, (id, { dispatch, getState }) =>\n GeneralApi.get(`${deploymentsApiUrl}/artifacts/${id}/download`).then(response => {\n let { release, index } = findArtifactIndexInRelease(getReleasesById(getState()), id);\n if (!release || index === -1) {\n return dispatch(getReleases());\n }\n const releaseArtifacts = [...release.artifacts];\n releaseArtifacts[index] = {\n ...releaseArtifacts[index],\n url: response.data.uri\n };\n release = {\n ...release,\n artifacts: releaseArtifacts\n };\n return dispatch(actions.receiveRelease(release));\n })\n);\n\nexport const createArtifact = createAsyncThunk(`${sliceName}/createArtifact`, ({ file, meta }, { dispatch }) => {\n let formData = Object.entries(meta).reduce((accu, [key, value]) => {\n if (Array.isArray(value)) {\n accu.append(key, value.join(','));\n } else if (value instanceof Object) {\n accu.append(key, JSON.stringify(value));\n } else {\n accu.append(key, value);\n }\n return accu;\n }, new FormData());\n formData.append('type', ARTIFACT_GENERATION_TYPE.SINGLE_FILE);\n formData.append('file', file);\n const uploadId = uuid();\n const cancelSource = new AbortController();\n return Promise.all([\n dispatch(setSnackbar('Generating artifact')),\n dispatch(initUpload({ id: uploadId, upload: { name: file.name, size: file.size, uploadProgress: 0, cancelSource } })),\n GeneralApi.upload(\n `${deploymentsApiUrl}/artifacts/generate`,\n formData,\n e => dispatch(uploadProgress({ id: uploadId, progress: progress(e) })),\n cancelSource.signal\n )\n ])\n .then(() => {\n setTimeout(() => {\n dispatch(getReleases());\n dispatch(selectRelease(file.name));\n }, TIMEOUTS.oneSecond);\n return Promise.resolve(dispatch(setSnackbar('Upload successful', TIMEOUTS.fiveSeconds)));\n })\n .catch(err => {\n if (isCancel(err)) {\n return dispatch(setSnackbar('The artifact generation has been cancelled', TIMEOUTS.fiveSeconds));\n }\n return commonErrorHandler(err, `Artifact couldn't be generated.`, dispatch);\n })\n .finally(() => dispatch(cleanUpUpload(uploadId)));\n});\n\nexport const uploadArtifact = createAsyncThunk(`${sliceName}/uploadArtifact`, ({ file, meta }, { dispatch }) => {\n let formData = new FormData();\n formData.append('size', file.size);\n formData.append('description', meta.description);\n formData.append('artifact', file);\n const uploadId = uuid();\n const cancelSource = new AbortController();\n return Promise.all([\n dispatch(setSnackbar('Uploading artifact')),\n dispatch(initUpload({ id: uploadId, upload: { name: file.name, size: file.size, uploadProgress: 0, cancelSource } })),\n GeneralApi.upload(`${deploymentsApiUrl}/artifacts`, formData, e => dispatch(uploadProgress({ id: uploadId, progress: progress(e) })), cancelSource.signal)\n ])\n .then(() => {\n const tasks = [dispatch(setSnackbar('Upload successful', TIMEOUTS.fiveSeconds)), dispatch(getReleases())];\n if (meta.name) {\n tasks.push(dispatch(selectRelease(meta.name)));\n }\n return Promise.all(tasks);\n })\n .catch(err => {\n if (isCancel(err)) {\n return dispatch(setSnackbar('The upload has been cancelled', TIMEOUTS.fiveSeconds));\n }\n return commonErrorHandler(err, `Artifact couldn't be uploaded.`, dispatch);\n })\n .finally(() => dispatch(cleanUpUpload(uploadId)));\n});\n\nexport const cancelFileUpload = createAsyncThunk(`${sliceName}/cancelFileUpload`, (id, { dispatch, getState }) => {\n const { [id]: current } = getState().app.uploadsById;\n current.cancelSource.abort();\n return Promise.resolve(dispatch(cleanUpUpload(id)));\n});\n\nexport const editArtifact = createAsyncThunk(`${sliceName}/editArtifact`, ({ id, body }, { dispatch, getState }) =>\n GeneralApi.put(`${deploymentsApiUrl}/artifacts/${id}`, body)\n .catch(err => commonErrorHandler(err, `Artifact details couldn't be updated.`, dispatch))\n .then(() => {\n const state = getState();\n let { release, index } = findArtifactIndexInRelease(getReleasesById(state), id);\n if (!release || index === -1) {\n return dispatch(getReleases());\n }\n release.artifacts[index].description = body.description;\n return Promise.all([\n dispatch(actions.receiveRelease(release)),\n dispatch(setSnackbar('Artifact details were updated successfully.', TIMEOUTS.fiveSeconds, '')),\n dispatch(getRelease(release.name)),\n dispatch(selectRelease(release.name))\n ]);\n })\n);\n\nexport const removeArtifact = createAsyncThunk(`${sliceName}/removeArtifact`, (id, { dispatch, getState }) =>\n GeneralApi.delete(`${deploymentsApiUrl}/artifacts/${id}`)\n .then(() => {\n const state = getState();\n let { release, index } = findArtifactIndexInRelease(getReleasesById(state), id);\n const releaseArtifacts = [...release.artifacts];\n releaseArtifacts.splice(index, 1);\n if (!releaseArtifacts.length) {\n const { releasesList } = state.releases;\n const releaseIds = releasesList.releaseIds.filter(id => release.name !== id);\n return Promise.all([\n dispatch(actions.removeRelease(release.name)),\n dispatch(\n setReleasesListState({\n releaseIds,\n searchTotal: releasesList.searchTerm ? releasesList.searchTotal - 1 : releasesList.searchTotal,\n total: releasesList.total - 1\n })\n )\n ]);\n }\n return Promise.all([dispatch(setSnackbar('Artifact was removed', TIMEOUTS.fiveSeconds, '')), dispatch(actions.receiveRelease(release))]);\n })\n .catch(err => commonErrorHandler(err, `Error removing artifact:`, dispatch))\n);\n\nexport const removeRelease = createAsyncThunk(`${sliceName}/removeRelease`, (releaseId, { dispatch, getState }) =>\n Promise.all(getReleasesById(getState())[releaseId].artifacts.map(({ id }) => dispatch(removeArtifact(id)))).then(() => dispatch(selectRelease()))\n);\n\nexport const selectRelease = createAsyncThunk(`${sliceName}/selectRelease`, (release, { dispatch }) => {\n const name = release ? release.name || release : null;\n let tasks = [dispatch(actions.selectedRelease(name))];\n if (name) {\n tasks.push(dispatch(getRelease(name)));\n }\n return Promise.all(tasks);\n});\n\nexport const setReleasesListState = createAsyncThunk(`${sliceName}/setReleasesListState`, (selectionState, { dispatch, getState }) => {\n const currentState = getState().releases.releasesList;\n let nextState = {\n ...currentState,\n ...selectionState,\n sort: { ...currentState.sort, ...selectionState.sort }\n };\n let tasks = [];\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { isLoading: currentLoading, ...currentRequestState } = currentState;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { isLoading: selectionLoading, ...selectionRequestState } = nextState;\n if (!deepCompare(currentRequestState, selectionRequestState)) {\n nextState.isLoading = true;\n tasks.push(dispatch(getReleases(nextState)).finally(() => dispatch(setReleasesListState({ isLoading: false }))));\n }\n tasks.push(dispatch(actions.setReleaseListState(nextState)));\n return Promise.all(tasks);\n});\n\n/* Releases */\n\nconst releaseListRetrieval = config => {\n const { searchTerm = '', page = defaultPage, perPage = defaultPerPage, sort = sortingDefaults, selectedTags = [], type = '' } = config;\n const { key: attribute, direction } = sort;\n const filterQuery = formatReleases({ pageState: { searchTerm, selectedTags } });\n const updateType = type ? `update_type=${type}` : '';\n const sorting = attribute ? `sort=${attribute}:${direction}`.toLowerCase() : '';\n return GeneralApi.get(\n `${deploymentsApiUrlV2}/deployments/releases?${[`page=${page}`, `per_page=${perPage}`, filterQuery, updateType, sorting].filter(i => i).join('&')}`\n );\n};\n\nconst deductSearchState = (receivedReleases, config, total, state) => {\n let releaseListState = { ...state.releasesList };\n const { searchTerm, searchOnly, sort = {}, selectedTags = [], type } = config;\n const flattenedReleases = Object.values(receivedReleases).sort(customSort(sort.direction === SORTING_OPTIONS.desc, sort.key));\n const releaseIds = flattenedReleases.map(item => item.name);\n const isFiltering = !!(selectedTags.length || type || searchTerm);\n if (searchOnly) {\n releaseListState = { ...releaseListState, searchedIds: releaseIds };\n } else {\n releaseListState = {\n ...releaseListState,\n releaseIds,\n searchTotal: isFiltering ? total : state.releasesList.searchTotal,\n total: !isFiltering ? total : state.releasesList.total\n };\n }\n return releaseListState;\n};\n\nexport const getReleases = createAsyncThunk(`${sliceName}/getReleases`, (passedConfig = {}, { dispatch, getState }) => {\n const config = { ...getState().releases.releasesList, ...passedConfig };\n return releaseListRetrieval(config)\n .then(({ data: receivedReleases = [], headers = {} }) => {\n const total = headers[headerNames.total] ? Number(headers[headerNames.total]) : 0;\n const state = getState().releases;\n const flatReleases = reduceReceivedReleases(receivedReleases, state.byId);\n const combinedReleases = { ...state.byId, ...flatReleases };\n let tasks = [dispatch(actions.receiveReleases(combinedReleases))];\n const releaseListState = deductSearchState(receivedReleases, config, total, state);\n tasks.push(dispatch(actions.setReleaseListState(releaseListState)));\n return Promise.all(tasks);\n })\n .catch(err => commonErrorHandler(err, `Please check your connection`, dispatch));\n});\n\nexport const getRelease = createAsyncThunk(`${sliceName}/getReleases`, (name, { dispatch, getState }) =>\n releaseListRetrieval({ searchTerm: name, page: 1, perPage: 1 }).then(({ data: releases }) => {\n if (releases.length) {\n const stateRelease = getReleasesById(getState())[releases[0].name] || {};\n return Promise.resolve(dispatch(actions.receiveRelease(flattenRelease(releases[0], stateRelease))));\n }\n return Promise.resolve(null);\n })\n);\n\nexport const updateReleaseInfo = createAsyncThunk(`${sliceName}/updateReleaseInfo`, ({ name, info }, { dispatch, getState }) =>\n GeneralApi.patch(`${deploymentsApiUrlV2}/deployments/releases/${name}`, info)\n .catch(err => commonErrorHandler(err, `Release details couldn't be updated.`, dispatch))\n .then(() => {\n return Promise.all([\n dispatch(actions.receiveRelease({ ...getReleasesById(getState())[name], ...info, name })),\n dispatch(setSnackbar('Release details were updated successfully.', TIMEOUTS.fiveSeconds, ''))\n ]);\n })\n);\n\nexport const setReleaseTags = createAsyncThunk(`${sliceName}/setReleaseTags`, ({ name, tags = [] }, { dispatch, getState }) =>\n GeneralApi.put(`${deploymentsApiUrlV2}/deployments/releases/${name}/tags`, tags)\n .catch(err => commonErrorHandler(err, `Release tags couldn't be set.`, dispatch))\n .then(() => {\n return Promise.all([\n dispatch(actions.receiveRelease({ ...getReleasesById(getState())[name], name, tags })),\n dispatch(setSnackbar('Release tags were set successfully.', TIMEOUTS.fiveSeconds, ''))\n ]);\n })\n);\n\nexport const getExistingReleaseTags = createAsyncThunk(`${sliceName}/getReleaseTags`, (_, { dispatch }) =>\n GeneralApi.get(`${deploymentsApiUrlV2}/releases/all/tags`)\n .catch(err => commonErrorHandler(err, `Existing release tags couldn't be retrieved.`, dispatch))\n .then(({ data: tags }) => Promise.resolve(dispatch(actions.receiveReleaseTags(tags))))\n);\n\nexport const getUpdateTypes = createAsyncThunk(`${sliceName}/getReleaseTypes`, (_, { dispatch }) =>\n GeneralApi.get(`${deploymentsApiUrlV2}/releases/all/types`)\n .catch(err => commonErrorHandler(err, `Existing update types couldn't be retrieved.`, dispatch))\n .then(({ data: types }) => Promise.resolve(dispatch(actions.receiveReleaseTypes(types))))\n);\n","import crypto from 'crypto';\nconst rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate\n\nlet poolPtr = rnds8Pool.length;\nexport default function rng() {\n if (poolPtr > rnds8Pool.length - 16) {\n crypto.randomFillSync(rnds8Pool);\n poolPtr = 0;\n }\n\n return rnds8Pool.slice(poolPtr, poolPtr += 16);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import crypto from 'crypto';\nexport default {\n randomUUID: crypto.randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;"],"mappings":"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","names":["crypto","_a","release","index","releaseArtifacts","id"]}
@@ -0,0 +1,65 @@
1
+ import {
2
+ alertChannels
3
+ } from "./chunk-MQIKQKSW.mjs";
4
+ import {
5
+ DEVICE_ISSUE_OPTIONS,
6
+ DEVICE_LIST_DEFAULTS
7
+ } from "./chunk-OGAMVFPS.mjs";
8
+ import {
9
+ __spreadProps,
10
+ __spreadValues
11
+ } from "./chunk-XWBD7VOK.mjs";
12
+
13
+ // src/monitorSlice/index.ts
14
+ import { createSlice } from "@reduxjs/toolkit";
15
+ var sliceName = "monitor";
16
+ var initialState = {
17
+ alerts: {
18
+ alertList: __spreadProps(__spreadValues({}, DEVICE_LIST_DEFAULTS), { total: 0 }),
19
+ byDeviceId: {}
20
+ },
21
+ issueCounts: {
22
+ byType: Object.values(DEVICE_ISSUE_OPTIONS).reduce((accu, { key }) => __spreadProps(__spreadValues({}, accu), { [key]: { filtered: 0, total: 0 } }), {})
23
+ },
24
+ settings: {
25
+ global: {
26
+ channels: __spreadValues({}, Object.keys(alertChannels).reduce((accu, item) => __spreadProps(__spreadValues({}, accu), { [item]: { enabled: true } }), {}))
27
+ }
28
+ }
29
+ };
30
+ var monitorSlice = createSlice({
31
+ name: sliceName,
32
+ initialState,
33
+ reducers: {
34
+ changeAlertChannel: (state, action) => {
35
+ const { channel, enabled } = action.payload;
36
+ state.settings.global.channels[channel] = { enabled };
37
+ },
38
+ receiveDeviceAlerts: (state, action) => {
39
+ const { deviceId, alerts } = action.payload;
40
+ state.alerts.byDeviceId[deviceId] = { alerts };
41
+ },
42
+ receiveLatestDeviceAlerts: (state, action) => {
43
+ const { deviceId, alerts } = action.payload;
44
+ state.alerts.byDeviceId[deviceId] = __spreadProps(__spreadValues({}, state.alerts.byDeviceId[deviceId]), { latest: alerts });
45
+ },
46
+ receiveDeviceIssueCounts: (state, action) => {
47
+ const { issueType, counts } = action.payload;
48
+ state.issueCounts.byType[issueType] = counts;
49
+ },
50
+ setAlertListState: (state, action) => {
51
+ state.alerts.alertList = __spreadValues(__spreadValues({}, state.alerts.alertList), action.payload);
52
+ }
53
+ }
54
+ });
55
+ var actions = monitorSlice.actions;
56
+ var monitorSlice_default = monitorSlice.reducer;
57
+
58
+ export {
59
+ sliceName,
60
+ initialState,
61
+ monitorSlice,
62
+ actions,
63
+ monitorSlice_default
64
+ };
65
+ //# sourceMappingURL=chunk-ZZ6VIQ3U.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/monitorSlice/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 { DEVICE_ISSUE_OPTIONS, DEVICE_LIST_DEFAULTS } from '@northern.tech/store/commonConstants';\nimport { createSlice } from '@reduxjs/toolkit';\n\nimport { alertChannels } from './constants';\n\nexport const sliceName = 'monitor';\n\nexport const initialState = {\n alerts: {\n alertList: { ...DEVICE_LIST_DEFAULTS, total: 0 },\n byDeviceId: {}\n },\n issueCounts: {\n byType: Object.values(DEVICE_ISSUE_OPTIONS).reduce((accu, { key }) => ({ ...accu, [key]: { filtered: 0, total: 0 } }), {})\n },\n settings: {\n global: {\n channels: {\n ...Object.keys(alertChannels).reduce((accu, item) => ({ ...accu, [item]: { enabled: true } }), {})\n }\n }\n }\n};\n\nexport const monitorSlice = createSlice({\n name: sliceName,\n initialState,\n reducers: {\n changeAlertChannel: (state, action) => {\n const { channel, enabled } = action.payload;\n state.settings.global.channels[channel] = { enabled };\n },\n receiveDeviceAlerts: (state, action) => {\n const { deviceId, alerts } = action.payload;\n state.alerts.byDeviceId[deviceId] = { alerts };\n },\n receiveLatestDeviceAlerts: (state, action) => {\n const { deviceId, alerts } = action.payload;\n state.alerts.byDeviceId[deviceId] = { ...state.alerts.byDeviceId[deviceId], latest: alerts };\n },\n receiveDeviceIssueCounts: (state, action) => {\n const { issueType, counts } = action.payload;\n state.issueCounts.byType[issueType] = counts;\n },\n setAlertListState: (state, action) => {\n state.alerts.alertList = { ...state.alerts.alertList, ...action.payload };\n }\n }\n});\n\nexport const actions = monitorSlice.actions;\nexport default monitorSlice.reducer;\n"],"mappings":";;;;;;;;;;;;;AAcA,SAAS,mBAAmB;AAIrB,IAAM,YAAY;AAElB,IAAM,eAAe;AAAA,EAC1B,QAAQ;AAAA,IACN,WAAW,iCAAK,uBAAL,EAA2B,OAAO,EAAE;AAAA,IAC/C,YAAY,CAAC;AAAA,EACf;AAAA,EACA,aAAa;AAAA,IACX,QAAQ,OAAO,OAAO,oBAAoB,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,MAAO,iCAAK,OAAL,EAAW,CAAC,GAAG,GAAG,EAAE,UAAU,GAAG,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;AAAA,EAC3H;AAAA,EACA,UAAU;AAAA,IACR,QAAQ;AAAA,MACN,UAAU,mBACL,OAAO,KAAK,aAAa,EAAE,OAAO,CAAC,MAAM,SAAU,iCAAK,OAAL,EAAW,CAAC,IAAI,GAAG,EAAE,SAAS,KAAK,EAAE,IAAI,CAAC,CAAC;AAAA,IAErG;AAAA,EACF;AACF;AAEO,IAAM,eAAe,YAAY;AAAA,EACtC,MAAM;AAAA,EACN;AAAA,EACA,UAAU;AAAA,IACR,oBAAoB,CAAC,OAAO,WAAW;AACrC,YAAM,EAAE,SAAS,QAAQ,IAAI,OAAO;AACpC,YAAM,SAAS,OAAO,SAAS,OAAO,IAAI,EAAE,QAAQ;AAAA,IACtD;AAAA,IACA,qBAAqB,CAAC,OAAO,WAAW;AACtC,YAAM,EAAE,UAAU,OAAO,IAAI,OAAO;AACpC,YAAM,OAAO,WAAW,QAAQ,IAAI,EAAE,OAAO;AAAA,IAC/C;AAAA,IACA,2BAA2B,CAAC,OAAO,WAAW;AAC5C,YAAM,EAAE,UAAU,OAAO,IAAI,OAAO;AACpC,YAAM,OAAO,WAAW,QAAQ,IAAI,iCAAK,MAAM,OAAO,WAAW,QAAQ,IAArC,EAAwC,QAAQ,OAAO;AAAA,IAC7F;AAAA,IACA,0BAA0B,CAAC,OAAO,WAAW;AAC3C,YAAM,EAAE,WAAW,OAAO,IAAI,OAAO;AACrC,YAAM,YAAY,OAAO,SAAS,IAAI;AAAA,IACxC;AAAA,IACA,mBAAmB,CAAC,OAAO,WAAW;AACpC,YAAM,OAAO,YAAY,kCAAK,MAAM,OAAO,YAAc,OAAO;AAAA,IAClE;AAAA,EACF;AACF,CAAC;AAEM,IAAM,UAAU,aAAa;AACpC,IAAO,uBAAQ,aAAa;","names":[]}