@northern.tech/store 0.3.1 → 0.3.3

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 (197) hide show
  1. package/dist/actions.cjs +20 -17
  2. package/dist/actions.cjs.map +1 -1
  3. package/dist/actions.js +8 -8
  4. package/dist/api/general-api.js +2 -2
  5. package/dist/api/types/Tenant.ts +17 -12
  6. package/dist/api/users-api.js +2 -2
  7. package/dist/appSlice/constants.cjs +18 -10
  8. package/dist/appSlice/constants.cjs.map +1 -1
  9. package/dist/appSlice/constants.d.cts +41 -84
  10. package/dist/appSlice/constants.d.ts +41 -84
  11. package/dist/appSlice/constants.js +1 -1
  12. package/dist/appSlice/index.js +2 -2
  13. package/dist/appSlice/thunks.cjs +140 -96
  14. package/dist/appSlice/thunks.cjs.map +1 -1
  15. package/dist/appSlice/thunks.js +19 -19
  16. package/dist/auth.js +2 -2
  17. package/dist/{chunk-Q6M5TTDQ.js → chunk-2CYOM4BK.js} +1 -1
  18. package/dist/chunk-2CYOM4BK.js.map +1 -0
  19. package/dist/{chunk-APHL4JZP.js → chunk-2JHFUQ6B.js} +141 -102
  20. package/dist/chunk-2JHFUQ6B.js.map +1 -0
  21. package/dist/{chunk-YETZPQFR.js → chunk-4XJMRVFI.js} +12 -11
  22. package/dist/chunk-4XJMRVFI.js.map +1 -0
  23. package/dist/{chunk-RX55KAKX.js → chunk-7JKWI5FK.js} +2 -2
  24. package/dist/{chunk-A6CT6GTI.js → chunk-C5NEDBJI.js} +17 -11
  25. package/dist/chunk-C5NEDBJI.js.map +1 -0
  26. package/dist/{chunk-NNADGHSL.js → chunk-DAPAXWA5.js} +8 -8
  27. package/dist/{chunk-ANB5BM5J.js → chunk-DCK2DBOA.js} +27 -20
  28. package/dist/chunk-DCK2DBOA.js.map +1 -0
  29. package/dist/{chunk-E5LEU5PF.js → chunk-HPBE6KYY.js} +2 -2
  30. package/dist/{chunk-2RJIDREZ.js → chunk-LEMVXAYP.js} +25 -16
  31. package/dist/chunk-LEMVXAYP.js.map +1 -0
  32. package/dist/{chunk-NI4SZOCF.js → chunk-LGNOTPUG.js} +9 -9
  33. package/dist/{chunk-MDC7Y3EX.js → chunk-LTKOV26W.js} +22 -20
  34. package/dist/chunk-LTKOV26W.js.map +1 -0
  35. package/dist/{chunk-YTQUNAZP.js → chunk-QRGTG4YB.js} +2 -2
  36. package/dist/{chunk-XTRPX7JZ.js → chunk-TI2RL5P2.js} +2 -2
  37. package/dist/chunk-TI2RL5P2.js.map +1 -0
  38. package/dist/{chunk-YGBFDXXA.js → chunk-TUACATJA.js} +2 -2
  39. package/dist/{chunk-25AKG5HH.js → chunk-UWMYZNUB.js} +19 -11
  40. package/dist/chunk-UWMYZNUB.js.map +1 -0
  41. package/dist/{chunk-UEP36GCI.js → chunk-VMNMD6KF.js} +2 -2
  42. package/dist/{chunk-KAQJH2YL.js → chunk-WXL7PVI5.js} +12 -4
  43. package/dist/chunk-WXL7PVI5.js.map +1 -0
  44. package/dist/{chunk-VOCOFE4I.js → chunk-X7IEZBM4.js} +2 -2
  45. package/dist/{chunk-XXHONFSQ.js → chunk-YDS36ALB.js} +3 -3
  46. package/dist/{chunk-XXHONFSQ.js.map → chunk-YDS36ALB.js.map} +1 -1
  47. package/dist/commonSelectors.cjs +40 -18
  48. package/dist/commonSelectors.cjs.map +1 -1
  49. package/dist/commonSelectors.d.cts +54 -46
  50. package/dist/commonSelectors.d.ts +54 -46
  51. package/dist/commonSelectors.js +9 -9
  52. package/dist/constants.cjs +35 -19
  53. package/dist/constants.cjs.map +1 -1
  54. package/dist/constants.d.cts +3 -3
  55. package/dist/constants.d.ts +3 -3
  56. package/dist/constants.js +6 -2
  57. package/dist/deploymentdevicehook.cjs +146 -101
  58. package/dist/deploymentdevicehook.cjs.map +1 -1
  59. package/dist/deploymentdevicehook.d.cts +1 -1
  60. package/dist/deploymentdevicehook.d.ts +1 -1
  61. package/dist/deploymentdevicehook.js +24 -22
  62. package/dist/deploymentdevicehook.js.map +1 -1
  63. package/dist/deploymentsSlice/constants.cjs +8 -8
  64. package/dist/deploymentsSlice/constants.cjs.map +1 -1
  65. package/dist/deploymentsSlice/constants.js +2 -2
  66. package/dist/deploymentsSlice/index.cjs +8 -8
  67. package/dist/deploymentsSlice/index.cjs.map +1 -1
  68. package/dist/deploymentsSlice/index.js +3 -3
  69. package/dist/deploymentsSlice/selectors.cjs +8 -8
  70. package/dist/deploymentsSlice/selectors.cjs.map +1 -1
  71. package/dist/deploymentsSlice/selectors.js +3 -3
  72. package/dist/deploymentsSlice/thunks.cjs +140 -96
  73. package/dist/deploymentsSlice/thunks.cjs.map +1 -1
  74. package/dist/deploymentsSlice/thunks.js +19 -19
  75. package/dist/devicesSlice/constants.cjs +11 -8
  76. package/dist/devicesSlice/constants.cjs.map +1 -1
  77. package/dist/devicesSlice/constants.d.cts +2 -1
  78. package/dist/devicesSlice/constants.d.ts +2 -1
  79. package/dist/devicesSlice/constants.js +4 -2
  80. package/dist/devicesSlice/index.cjs +8 -8
  81. package/dist/devicesSlice/index.cjs.map +1 -1
  82. package/dist/devicesSlice/index.js +3 -3
  83. package/dist/devicesSlice/selectors.cjs +9 -9
  84. package/dist/devicesSlice/selectors.cjs.map +1 -1
  85. package/dist/devicesSlice/selectors.js +3 -3
  86. package/dist/devicesSlice/thunks.cjs +142 -96
  87. package/dist/devicesSlice/thunks.cjs.map +1 -1
  88. package/dist/devicesSlice/thunks.d.cts +12 -2
  89. package/dist/devicesSlice/thunks.d.ts +12 -2
  90. package/dist/devicesSlice/thunks.js +21 -19
  91. package/dist/flag-eu-5477R2P4.svg +130 -0
  92. package/dist/flag-us-HNQAF66I.svg +63 -0
  93. package/dist/monitorSlice/constants.cjs +8 -8
  94. package/dist/monitorSlice/constants.cjs.map +1 -1
  95. package/dist/monitorSlice/constants.js +2 -2
  96. package/dist/monitorSlice/index.cjs +8 -8
  97. package/dist/monitorSlice/index.cjs.map +1 -1
  98. package/dist/monitorSlice/index.js +3 -3
  99. package/dist/monitorSlice/thunks.cjs +59 -37
  100. package/dist/monitorSlice/thunks.cjs.map +1 -1
  101. package/dist/monitorSlice/thunks.js +17 -17
  102. package/dist/onboardingSlice/thunks.cjs +149 -102
  103. package/dist/onboardingSlice/thunks.cjs.map +1 -1
  104. package/dist/onboardingSlice/thunks.d.cts +1 -32
  105. package/dist/onboardingSlice/thunks.d.ts +1 -32
  106. package/dist/onboardingSlice/thunks.js +19 -19
  107. package/dist/organizationSlice/constants.cjs +22 -17
  108. package/dist/organizationSlice/constants.cjs.map +1 -1
  109. package/dist/organizationSlice/constants.d.cts +33 -1
  110. package/dist/organizationSlice/constants.d.ts +33 -1
  111. package/dist/organizationSlice/constants.js +4 -2
  112. package/dist/organizationSlice/index.cjs +18 -15
  113. package/dist/organizationSlice/index.cjs.map +1 -1
  114. package/dist/organizationSlice/index.d.cts +26 -1012
  115. package/dist/organizationSlice/index.d.ts +26 -1012
  116. package/dist/organizationSlice/index.js +3 -3
  117. package/dist/organizationSlice/selectors.cjs.map +1 -1
  118. package/dist/organizationSlice/selectors.d.cts +9 -1
  119. package/dist/organizationSlice/selectors.d.ts +9 -1
  120. package/dist/organizationSlice/selectors.js +3 -3
  121. package/dist/organizationSlice/thunks.cjs +1608 -1540
  122. package/dist/organizationSlice/thunks.cjs.map +1 -1
  123. package/dist/organizationSlice/thunks.d.cts +61 -36
  124. package/dist/organizationSlice/thunks.d.ts +61 -36
  125. package/dist/organizationSlice/thunks.js +19 -19
  126. package/dist/organizationSlice/types.cjs +19 -0
  127. package/dist/organizationSlice/types.cjs.map +1 -0
  128. package/dist/organizationSlice/types.d.cts +114 -0
  129. package/dist/organizationSlice/types.d.ts +114 -0
  130. package/dist/organizationSlice/types.js +1 -0
  131. package/dist/organizationSlice/types.js.map +1 -0
  132. package/dist/releasesSlice/index.js +2 -2
  133. package/dist/releasesSlice/selectors.cjs +11 -0
  134. package/dist/releasesSlice/selectors.cjs.map +1 -1
  135. package/dist/releasesSlice/selectors.js +4 -4
  136. package/dist/releasesSlice/thunks.cjs +73 -49
  137. package/dist/releasesSlice/thunks.cjs.map +1 -1
  138. package/dist/releasesSlice/thunks.d.cts +1 -4
  139. package/dist/releasesSlice/thunks.d.ts +1 -4
  140. package/dist/releasesSlice/thunks.js +17 -17
  141. package/dist/selectors.cjs +46 -18
  142. package/dist/selectors.cjs.map +1 -1
  143. package/dist/selectors.d.cts +9 -1
  144. package/dist/selectors.d.ts +9 -1
  145. package/dist/selectors.js +36 -30
  146. package/dist/store.cjs +36 -23
  147. package/dist/store.cjs.map +1 -1
  148. package/dist/store.d.cts +12 -231
  149. package/dist/store.d.ts +12 -231
  150. package/dist/store.js +13 -11
  151. package/dist/storehooks.cjs +222 -141
  152. package/dist/storehooks.cjs.map +1 -1
  153. package/dist/storehooks.js +36 -24
  154. package/dist/storehooks.js.map +1 -1
  155. package/dist/thunks.cjs +199 -126
  156. package/dist/thunks.cjs.map +1 -1
  157. package/dist/thunks.d.cts +5 -1
  158. package/dist/thunks.d.ts +5 -1
  159. package/dist/thunks.js +21 -19
  160. package/dist/usersSlice/constants.cjs +10 -10
  161. package/dist/usersSlice/constants.cjs.map +1 -1
  162. package/dist/usersSlice/constants.js +2 -2
  163. package/dist/usersSlice/index.cjs +10 -10
  164. package/dist/usersSlice/index.cjs.map +1 -1
  165. package/dist/usersSlice/index.js +3 -3
  166. package/dist/usersSlice/selectors.cjs +35 -13
  167. package/dist/usersSlice/selectors.cjs.map +1 -1
  168. package/dist/usersSlice/selectors.d.cts +44 -1
  169. package/dist/usersSlice/selectors.d.ts +44 -1
  170. package/dist/usersSlice/selectors.js +12 -6
  171. package/dist/usersSlice/thunks.cjs +138 -96
  172. package/dist/usersSlice/thunks.cjs.map +1 -1
  173. package/dist/usersSlice/thunks.d.cts +10 -9
  174. package/dist/usersSlice/thunks.d.ts +10 -9
  175. package/dist/usersSlice/thunks.js +19 -19
  176. package/dist/utils.cjs +17 -16
  177. package/dist/utils.cjs.map +1 -1
  178. package/dist/utils.js +3 -3
  179. package/package.json +7 -7
  180. package/dist/chunk-25AKG5HH.js.map +0 -1
  181. package/dist/chunk-2RJIDREZ.js.map +0 -1
  182. package/dist/chunk-A6CT6GTI.js.map +0 -1
  183. package/dist/chunk-ANB5BM5J.js.map +0 -1
  184. package/dist/chunk-APHL4JZP.js.map +0 -1
  185. package/dist/chunk-KAQJH2YL.js.map +0 -1
  186. package/dist/chunk-MDC7Y3EX.js.map +0 -1
  187. package/dist/chunk-Q6M5TTDQ.js.map +0 -1
  188. package/dist/chunk-XTRPX7JZ.js.map +0 -1
  189. package/dist/chunk-YETZPQFR.js.map +0 -1
  190. /package/dist/{chunk-RX55KAKX.js.map → chunk-7JKWI5FK.js.map} +0 -0
  191. /package/dist/{chunk-NNADGHSL.js.map → chunk-DAPAXWA5.js.map} +0 -0
  192. /package/dist/{chunk-E5LEU5PF.js.map → chunk-HPBE6KYY.js.map} +0 -0
  193. /package/dist/{chunk-NI4SZOCF.js.map → chunk-LGNOTPUG.js.map} +0 -0
  194. /package/dist/{chunk-YTQUNAZP.js.map → chunk-QRGTG4YB.js.map} +0 -0
  195. /package/dist/{chunk-YGBFDXXA.js.map → chunk-TUACATJA.js.map} +0 -0
  196. /package/dist/{chunk-UEP36GCI.js.map → chunk-VMNMD6KF.js.map} +0 -0
  197. /package/dist/{chunk-VOCOFE4I.js.map → chunk-X7IEZBM4.js.map} +0 -0
package/dist/actions.js CHANGED
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  actions_default
3
- } from "./chunk-NNADGHSL.js";
4
- import "./chunk-YGBFDXXA.js";
3
+ } from "./chunk-DAPAXWA5.js";
4
+ import "./chunk-TUACATJA.js";
5
+ import "./chunk-TI2RL5P2.js";
5
6
  import "./chunk-CYV6632F.js";
6
- import "./chunk-E5LEU5PF.js";
7
+ import "./chunk-HPBE6KYY.js";
7
8
  import "./chunk-FGKMJS3B.js";
8
- import "./chunk-XTRPX7JZ.js";
9
- import "./chunk-YTQUNAZP.js";
10
- import "./chunk-UEP36GCI.js";
9
+ import "./chunk-QRGTG4YB.js";
10
+ import "./chunk-VMNMD6KF.js";
11
11
  import "./chunk-7PVGDMNM.js";
12
- import "./chunk-A6CT6GTI.js";
12
+ import "./chunk-C5NEDBJI.js";
13
13
  import "./chunk-CK6YE6AN.js";
14
14
  import "./chunk-MRCFLG45.js";
15
- import "./chunk-25AKG5HH.js";
15
+ import "./chunk-UWMYZNUB.js";
16
16
  import "./chunk-4B3IMP4I.js";
17
17
  export {
18
18
  actions_default as default
@@ -4,10 +4,10 @@ import {
4
4
  general_api_default
5
5
  } from "../chunk-YT73QWCN.js";
6
6
  import "../chunk-AMGWP7A4.js";
7
- import "../chunk-A6CT6GTI.js";
7
+ import "../chunk-C5NEDBJI.js";
8
8
  import "../chunk-CK6YE6AN.js";
9
9
  import "../chunk-MRCFLG45.js";
10
- import "../chunk-25AKG5HH.js";
10
+ import "../chunk-UWMYZNUB.js";
11
11
  import "../chunk-4B3IMP4I.js";
12
12
  export {
13
13
  authenticatedRequest,
@@ -2,20 +2,25 @@
2
2
  /* istanbul ignore file */
3
3
  /* tslint:disable */
4
4
  /* eslint-disable */
5
+ import { UpgradeCompleteRequest } from "./UpgradeCompleteRequest";
6
+
5
7
  /**
6
8
  * The tenant descriptor.
7
9
  */
8
10
  export type Tenant = {
9
- /**
10
- * The id of a tenant.
11
- */
12
- id: string;
13
- /**
14
- * The name of a tenant.
15
- */
16
- name?: string;
17
- /**
18
- * The id of a parent tenant.
19
- */
20
- parent?: string;
11
+ parent_tenant_id: string;
12
+ additional_info: {
13
+ marketing: boolean;
14
+ campaign: string;
15
+ };
16
+ plan: UpgradeCompleteRequest.plan;
17
+ trial: boolean;
18
+ trial_expiration: string | null;
19
+ service_provider: boolean;
20
+ cancelled_at: string | null;
21
+ children_tenants: any[] | null;
22
+ max_child_tenants: number;
23
+ device_count: number;
24
+ device_limit: number;
25
+ binary_delta: boolean;
21
26
  };
@@ -3,10 +3,10 @@ import {
3
3
  } from "../chunk-JAROCU6M.js";
4
4
  import "../chunk-YT73QWCN.js";
5
5
  import "../chunk-AMGWP7A4.js";
6
- import "../chunk-A6CT6GTI.js";
6
+ import "../chunk-C5NEDBJI.js";
7
7
  import "../chunk-CK6YE6AN.js";
8
8
  import "../chunk-MRCFLG45.js";
9
- import "../chunk-25AKG5HH.js";
9
+ import "../chunk-UWMYZNUB.js";
10
10
  import "../chunk-4B3IMP4I.js";
11
11
  export {
12
12
  users_api_default as default
@@ -41,6 +41,14 @@ __export(constants_exports, {
41
41
  });
42
42
  module.exports = __toCommonJS(constants_exports);
43
43
  var import_icons_material = require("@mui/icons-material");
44
+
45
+ // ../../assets/img/flag-eu.svg
46
+ var flag_eu_default = "../flag-eu-5477R2P4.svg";
47
+
48
+ // ../../assets/img/flag-us.svg
49
+ var flag_us_default = "../flag-us-HNQAF66I.svg";
50
+
51
+ // src/appSlice/constants.ts
44
52
  var startingDeviceCount = {
45
53
  os: "for first 50 devices",
46
54
  professional: "for first 250 devices"
@@ -64,36 +72,36 @@ var defaultReportType = "distribution";
64
72
  var defaultReports = [{ ...emptyChartSelection, group: null, attribute: "artifact_name", type: defaultReportType }];
65
73
  var BEGINNING_OF_TIME = "2016-01-01T00:00:00.000Z";
66
74
  var locations = {
67
- eu: { key: "eu", title: "EU", location: "eu.hosted.mender.io" },
68
- us: { key: "us", title: "US", location: "hosted.mender.io" }
75
+ eu: { key: "eu", title: "EU", location: "eu.hosted.mender.io", icon: flag_eu_default },
76
+ us: { key: "us", title: "US", location: "hosted.mender.io", icon: flag_us_default }
69
77
  };
70
78
  var PLANS = {
71
79
  os: {
72
80
  id: "os",
73
81
  name: "Basic",
74
82
  offer: true,
75
- price: "$32/month",
83
+ price: "$32 / month",
76
84
  deviceCount: startingDeviceCount.os,
77
- offerprice: "$23/month for first 50 devices",
85
+ offerprice: "$23 / month for first 50 devices",
78
86
  price2: "for first 6 months;\n$29/month thereafter",
79
- features: ["Basic OTA features"]
87
+ features: ["Access to core features of Mender", "Basic support"]
80
88
  },
81
89
  professional: {
82
90
  id: "professional",
83
91
  name: "Professional",
84
92
  offer: true,
85
- price: "$269/month",
93
+ price: "$269 / month",
86
94
  deviceCount: startingDeviceCount.professional,
87
- offerprice: "$200/month for first 50 devices",
95
+ offerprice: "$200 / month for first 50 devices",
88
96
  price2: "for first 6 months;\n$249/month thereafter",
89
- features: ["+ Advanced OTA features", "+ Standard support"]
97
+ features: ["Advanced OTA features", "Higher priority support"]
90
98
  },
91
99
  enterprise: {
92
100
  id: "enterprise",
93
101
  name: "Enterprise",
94
102
  price: "Custom pricing",
95
- deviceCount: "unlimited devices",
96
- features: ["+ Enterprise-grade OTA features", "+ Premium support"]
103
+ deviceCount: "Unlimited devices",
104
+ features: ["All Mender features", "Advanced security features", "SLA-backed support"]
97
105
  }
98
106
  };
99
107
  var ADDONS = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/appSlice/constants.ts"],"sourcesContent":["// Copyright 2019 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { BarChart as BarChartIcon, PieChartOutline as PieChartIcon } from '@mui/icons-material';\n\nconst startingDeviceCount = {\n os: 'for first 50 devices',\n professional: 'for first 250 devices'\n};\n\nexport const apiRoot = '/api/management';\nexport const apiUrl = {\n v1: `${apiRoot}/v1`,\n v2: `${apiRoot}/v2`\n};\n\nexport const headerNames = {\n link: 'link',\n location: 'location',\n total: 'x-total-count'\n};\n\nexport const chartTypes = {\n bar: { key: 'bar', Icon: BarChartIcon },\n pie: { key: 'pie', Icon: PieChartIcon }\n};\nexport const emptyChartSelection = { software: '', group: '', chartType: chartTypes.bar.key, attribute: 'artifact_name' };\nexport const defaultReportType = 'distribution';\nexport const defaultReports = [{ ...emptyChartSelection, group: null, attribute: 'artifact_name', type: defaultReportType }];\n\nexport const BEGINNING_OF_TIME = '2016-01-01T00:00:00.000Z';\n\nexport const locations = {\n eu: { key: 'eu', title: 'EU', location: 'eu.hosted.mender.io' },\n us: { key: 'us', title: 'US', location: 'hosted.mender.io' }\n};\n\nexport const PLANS = {\n os: {\n id: 'os',\n name: 'Basic',\n offer: true,\n price: '$32/month',\n deviceCount: startingDeviceCount.os,\n offerprice: '$23/month for first 50 devices',\n price2: 'for first 6 months;\\n$29/month thereafter',\n features: ['Basic OTA features']\n },\n professional: {\n id: 'professional',\n name: 'Professional',\n offer: true,\n price: '$269/month',\n deviceCount: startingDeviceCount.professional,\n offerprice: '$200/month for first 50 devices',\n price2: 'for first 6 months;\\n$249/month thereafter',\n features: ['+ Advanced OTA features', '+ Standard support']\n },\n enterprise: {\n id: 'enterprise',\n name: 'Enterprise',\n price: 'Custom pricing',\n deviceCount: 'unlimited devices',\n features: ['+ Enterprise-grade OTA features', '+ Premium support']\n }\n};\n// the needs names need to be aligned with the name of the features in the appReducer, as they will be checked in the addonselection\nexport const ADDONS = {\n configure: {\n id: 'configure',\n title: 'Configure',\n description: 'Expand your plan with device configuration features',\n needs: ['hasDeviceConfig'],\n os: {\n price: '$11/month',\n deviceCount: startingDeviceCount.os\n },\n professional: {\n price: '$65/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['os', 'professional', 'enterprise']\n },\n troubleshoot: {\n id: 'troubleshoot',\n title: 'Troubleshoot',\n description: 'Expand your plan with device troubleshooting features',\n needs: ['hasDeviceConnect'],\n os: {\n price: '$27/month',\n deviceCount: startingDeviceCount.os\n },\n professional: {\n price: '$72/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['os', 'professional', 'enterprise']\n },\n monitor: {\n id: 'monitor',\n title: 'Monitor',\n description: 'Expand your plan with device monitoring features',\n needs: ['hasMonitor'],\n os: {\n price: '-',\n deviceCount: '-'\n },\n professional: {\n price: '$86/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['professional', 'enterprise']\n }\n};\n\nexport const BENEFITS = {\n auditlog: { id: 'auditlog', benefit: 'trace change across your devices and access troubleshooting session replay', requiredPlan: PLANS.professional.id },\n dashboard: { id: 'dashboard', benefit: 'actionable insights into the devices you are updating with Mender', requiredPlan: PLANS.enterprise.id },\n deltaGeneration: {\n id: 'deltaGeneration',\n benefit: 'automatic delta artifacts generation to minimize data transfer and improve the update delivery',\n requiredPlan: PLANS.enterprise.id\n },\n deviceConfiguration: { id: 'deviceConfiguration', benefit: 'device configuration features', requiredAddon: ADDONS.configure.id },\n deviceMonitor: { id: 'deviceMonitor', benefit: 'device monitoring features', requiredAddon: ADDONS.monitor.id, requiredPlan: PLANS.professional.id },\n deviceTroubleshoot: { id: 'deviceTroubleshoot', benefit: 'device troubleshooting features', requiredAddon: ADDONS.troubleshoot.id },\n dynamicGroups: { id: 'dynamicGroups', benefit: 'create dynamic groups to ease device management', requiredPlan: PLANS.enterprise.id },\n fullFiltering: { id: 'fullFiltering', benefit: 'filtering by multiple attributes to improve the device overview', requiredPlan: PLANS.professional.id },\n gateway: { id: 'gateway', benefit: 'see devices connected to your gateway device for easy access', requiredPlans: PLANS.professional.id },\n pausedDeployments: {\n id: 'pausedDeployments',\n benefit: 'granular control about update rollout to allow synchronization across your fleet',\n requiredPlan: PLANS.enterprise.id\n },\n phasedDeployments: { id: 'phasedDeployments', benefit: 'choose to roll out deployments in multiple phases', requiredPlan: PLANS.enterprise.id },\n rbac: { id: 'rbac', benefit: 'granular role based access control', requiredPlan: PLANS.enterprise.id },\n retryDeployments: { id: 'retryDeployments', benefit: 'optional retries for failed rollout attempts', requiredPlan: PLANS.professional.id },\n scheduledDeployments: {\n id: 'scheduledDeployments',\n benefit: 'scheduled deployments to steer the distribution of your updates.',\n requiredPlan: PLANS.professional.id\n },\n webhookEvents: {\n id: 'webhookEvents',\n benefit: 'receive inventory events and select which type(s) of events the webhook will receive',\n requiredPlan: PLANS.professional.id\n },\n\n default: { id: 'default', benefit: 'gain access to this feature', requiredPlan: PLANS.enterprise.id }\n};\n\nexport const yes = () => true;\nexport const canAccess = yes;\n\nexport const DARK_MODE = 'dark';\nexport const LIGHT_MODE = 'light';\n\nexport const APPLICATION_JSON_CONTENT_TYPE = 'application/json';\nexport const APPLICATION_JWT_CONTENT_TYPE = 'application/jwt';\n"],"mappings":"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","names":["BarChartIcon","PieChartIcon"]}
1
+ {"version":3,"sources":["../../src/appSlice/constants.ts"],"sourcesContent":["// Copyright 2019 Northern.tech AS\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n//@ts-nocheck\nimport { BarChart as BarChartIcon, PieChartOutline as PieChartIcon } from '@mui/icons-material';\n\nimport FlagEU from '../../../../assets/img/flag-eu.svg';\nimport FlagUS from '../../../../assets/img/flag-us.svg';\n\nconst startingDeviceCount = {\n os: 'for first 50 devices',\n professional: 'for first 250 devices'\n};\n\nexport const apiRoot = '/api/management';\nexport const apiUrl = {\n v1: `${apiRoot}/v1`,\n v2: `${apiRoot}/v2`\n};\n\nexport const headerNames = {\n link: 'link',\n location: 'location',\n total: 'x-total-count'\n};\n\nexport const chartTypes = {\n bar: { key: 'bar', Icon: BarChartIcon },\n pie: { key: 'pie', Icon: PieChartIcon }\n};\nexport const emptyChartSelection = { software: '', group: '', chartType: chartTypes.bar.key, attribute: 'artifact_name' };\nexport const defaultReportType = 'distribution';\nexport const defaultReports = [{ ...emptyChartSelection, group: null, attribute: 'artifact_name', type: defaultReportType }];\n\nexport const BEGINNING_OF_TIME = '2016-01-01T00:00:00.000Z';\n\nexport const locations = {\n eu: { key: 'eu', title: 'EU', location: 'eu.hosted.mender.io', icon: FlagEU },\n us: { key: 'us', title: 'US', location: 'hosted.mender.io', icon: FlagUS }\n};\nexport type AvailablePlans = 'os' | 'professional' | 'enterprise';\n\nexport type Plan = {\n id: AvailablePlans;\n name: string;\n offer?: boolean;\n price: string;\n deviceCount: string;\n offerprice?: string;\n price2?: string;\n features: string[];\n};\n\nexport type AvailableAddon = 'configure' | 'troubleshoot' | 'monitor';\n\nexport const PLANS: { [key in AvailablePlans]: Plan } = {\n os: {\n id: 'os',\n name: 'Basic',\n offer: true,\n price: '$32 / month',\n deviceCount: startingDeviceCount.os,\n offerprice: '$23 / month for first 50 devices',\n price2: 'for first 6 months;\\n$29/month thereafter',\n features: ['Access to core features of Mender', 'Basic support']\n },\n professional: {\n id: 'professional',\n name: 'Professional',\n offer: true,\n price: '$269 / month',\n deviceCount: startingDeviceCount.professional,\n offerprice: '$200 / month for first 50 devices',\n price2: 'for first 6 months;\\n$249/month thereafter',\n features: ['Advanced OTA features', 'Higher priority support']\n },\n enterprise: {\n id: 'enterprise',\n name: 'Enterprise',\n price: 'Custom pricing',\n deviceCount: 'Unlimited devices',\n features: ['All Mender features', 'Advanced security features', 'SLA-backed support']\n }\n};\nexport type Addon = {\n id: string;\n title: string;\n description: string;\n needs: string[];\n eligible: AvailablePlans[];\n} & {\n [key in Exclude<AvailablePlans, 'enterprise'>]: {\n price: string;\n deviceCount: string;\n };\n};\n\nexport type AddonId = keyof typeof ADDONS;\n\n// the needs names need to be aligned with the name of the features in the appReducer, as they will be checked in the addonselection\nexport const ADDONS: { [key in AvailableAddon]: Addon } = {\n configure: {\n id: 'configure',\n title: 'Configure',\n description: 'Expand your plan with device configuration features',\n needs: ['hasDeviceConfig'],\n os: {\n price: '$11/month',\n deviceCount: startingDeviceCount.os\n },\n professional: {\n price: '$65/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['os', 'professional', 'enterprise']\n },\n troubleshoot: {\n id: 'troubleshoot',\n title: 'Troubleshoot',\n description: 'Expand your plan with device troubleshooting features',\n needs: ['hasDeviceConnect'],\n os: {\n price: '$27/month',\n deviceCount: startingDeviceCount.os\n },\n professional: {\n price: '$72/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['os', 'professional', 'enterprise']\n },\n monitor: {\n id: 'monitor',\n title: 'Monitor',\n description: 'Expand your plan with device monitoring features',\n needs: ['hasMonitor'],\n os: {\n price: '-',\n deviceCount: '-'\n },\n professional: {\n price: '$86/month',\n deviceCount: startingDeviceCount.professional\n },\n eligible: ['professional', 'enterprise']\n }\n};\n\nexport const BENEFITS = {\n auditlog: { id: 'auditlog', benefit: 'trace change across your devices and access troubleshooting session replay', requiredPlan: PLANS.professional.id },\n dashboard: { id: 'dashboard', benefit: 'actionable insights into the devices you are updating with Mender', requiredPlan: PLANS.enterprise.id },\n deltaGeneration: {\n id: 'deltaGeneration',\n benefit: 'automatic delta artifacts generation to minimize data transfer and improve the update delivery',\n requiredPlan: PLANS.enterprise.id\n },\n deviceConfiguration: { id: 'deviceConfiguration', benefit: 'device configuration features', requiredAddon: ADDONS.configure.id },\n deviceMonitor: { id: 'deviceMonitor', benefit: 'device monitoring features', requiredAddon: ADDONS.monitor.id, requiredPlan: PLANS.professional.id },\n deviceTroubleshoot: { id: 'deviceTroubleshoot', benefit: 'device troubleshooting features', requiredAddon: ADDONS.troubleshoot.id },\n dynamicGroups: { id: 'dynamicGroups', benefit: 'create dynamic groups to ease device management', requiredPlan: PLANS.enterprise.id },\n fullFiltering: { id: 'fullFiltering', benefit: 'filtering by multiple attributes to improve the device overview', requiredPlan: PLANS.professional.id },\n gateway: { id: 'gateway', benefit: 'see devices connected to your gateway device for easy access', requiredPlans: PLANS.professional.id },\n pausedDeployments: {\n id: 'pausedDeployments',\n benefit: 'granular control about update rollout to allow synchronization across your fleet',\n requiredPlan: PLANS.enterprise.id\n },\n phasedDeployments: { id: 'phasedDeployments', benefit: 'choose to roll out deployments in multiple phases', requiredPlan: PLANS.enterprise.id },\n rbac: { id: 'rbac', benefit: 'granular role based access control', requiredPlan: PLANS.enterprise.id },\n retryDeployments: { id: 'retryDeployments', benefit: 'optional retries for failed rollout attempts', requiredPlan: PLANS.professional.id },\n scheduledDeployments: {\n id: 'scheduledDeployments',\n benefit: 'scheduled deployments to steer the distribution of your updates.',\n requiredPlan: PLANS.professional.id\n },\n webhookEvents: {\n id: 'webhookEvents',\n benefit: 'receive inventory events and select which type(s) of events the webhook will receive',\n requiredPlan: PLANS.professional.id\n },\n\n default: { id: 'default', benefit: 'gain access to this feature', requiredPlan: PLANS.enterprise.id }\n};\n\nexport const yes = () => true;\nexport const canAccess = yes;\n\nexport const DARK_MODE = 'dark';\nexport const LIGHT_MODE = 'light';\n\nexport const APPLICATION_JSON_CONTENT_TYPE = 'application/json';\nexport const APPLICATION_JWT_CONTENT_TYPE = 'application/jwt';\n"],"mappings":"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","names":["BarChartIcon","PieChartIcon"]}
@@ -45,104 +45,61 @@ declare const locations: {
45
45
  key: string;
46
46
  title: string;
47
47
  location: string;
48
+ icon: any;
48
49
  };
49
50
  us: {
50
51
  key: string;
51
52
  title: string;
52
53
  location: string;
54
+ icon: any;
53
55
  };
54
56
  };
57
+ type AvailablePlans = 'os' | 'professional' | 'enterprise';
58
+ type Plan = {
59
+ id: AvailablePlans;
60
+ name: string;
61
+ offer?: boolean;
62
+ price: string;
63
+ deviceCount: string;
64
+ offerprice?: string;
65
+ price2?: string;
66
+ features: string[];
67
+ };
68
+ type AvailableAddon = 'configure' | 'troubleshoot' | 'monitor';
55
69
  declare const PLANS: {
56
- os: {
57
- id: string;
58
- name: string;
59
- offer: boolean;
60
- price: string;
61
- deviceCount: string;
62
- offerprice: string;
63
- price2: string;
64
- features: string[];
65
- };
66
- professional: {
67
- id: string;
68
- name: string;
69
- offer: boolean;
70
- price: string;
71
- deviceCount: string;
72
- offerprice: string;
73
- price2: string;
74
- features: string[];
75
- };
76
- enterprise: {
77
- id: string;
78
- name: string;
70
+ [key in AvailablePlans]: Plan;
71
+ };
72
+ type Addon = {
73
+ id: string;
74
+ title: string;
75
+ description: string;
76
+ needs: string[];
77
+ eligible: AvailablePlans[];
78
+ } & {
79
+ [key in Exclude<AvailablePlans, 'enterprise'>]: {
79
80
  price: string;
80
81
  deviceCount: string;
81
- features: string[];
82
82
  };
83
83
  };
84
+ type AddonId = keyof typeof ADDONS;
84
85
  declare const ADDONS: {
85
- configure: {
86
- id: string;
87
- title: string;
88
- description: string;
89
- needs: string[];
90
- os: {
91
- price: string;
92
- deviceCount: string;
93
- };
94
- professional: {
95
- price: string;
96
- deviceCount: string;
97
- };
98
- eligible: string[];
99
- };
100
- troubleshoot: {
101
- id: string;
102
- title: string;
103
- description: string;
104
- needs: string[];
105
- os: {
106
- price: string;
107
- deviceCount: string;
108
- };
109
- professional: {
110
- price: string;
111
- deviceCount: string;
112
- };
113
- eligible: string[];
114
- };
115
- monitor: {
116
- id: string;
117
- title: string;
118
- description: string;
119
- needs: string[];
120
- os: {
121
- price: string;
122
- deviceCount: string;
123
- };
124
- professional: {
125
- price: string;
126
- deviceCount: string;
127
- };
128
- eligible: string[];
129
- };
86
+ [key in AvailableAddon]: Addon;
130
87
  };
131
88
  declare const BENEFITS: {
132
89
  auditlog: {
133
90
  id: string;
134
91
  benefit: string;
135
- requiredPlan: string;
92
+ requiredPlan: AvailablePlans;
136
93
  };
137
94
  dashboard: {
138
95
  id: string;
139
96
  benefit: string;
140
- requiredPlan: string;
97
+ requiredPlan: AvailablePlans;
141
98
  };
142
99
  deltaGeneration: {
143
100
  id: string;
144
101
  benefit: string;
145
- requiredPlan: string;
102
+ requiredPlan: AvailablePlans;
146
103
  };
147
104
  deviceConfiguration: {
148
105
  id: string;
@@ -153,7 +110,7 @@ declare const BENEFITS: {
153
110
  id: string;
154
111
  benefit: string;
155
112
  requiredAddon: string;
156
- requiredPlan: string;
113
+ requiredPlan: AvailablePlans;
157
114
  };
158
115
  deviceTroubleshoot: {
159
116
  id: string;
@@ -163,52 +120,52 @@ declare const BENEFITS: {
163
120
  dynamicGroups: {
164
121
  id: string;
165
122
  benefit: string;
166
- requiredPlan: string;
123
+ requiredPlan: AvailablePlans;
167
124
  };
168
125
  fullFiltering: {
169
126
  id: string;
170
127
  benefit: string;
171
- requiredPlan: string;
128
+ requiredPlan: AvailablePlans;
172
129
  };
173
130
  gateway: {
174
131
  id: string;
175
132
  benefit: string;
176
- requiredPlans: string;
133
+ requiredPlans: AvailablePlans;
177
134
  };
178
135
  pausedDeployments: {
179
136
  id: string;
180
137
  benefit: string;
181
- requiredPlan: string;
138
+ requiredPlan: AvailablePlans;
182
139
  };
183
140
  phasedDeployments: {
184
141
  id: string;
185
142
  benefit: string;
186
- requiredPlan: string;
143
+ requiredPlan: AvailablePlans;
187
144
  };
188
145
  rbac: {
189
146
  id: string;
190
147
  benefit: string;
191
- requiredPlan: string;
148
+ requiredPlan: AvailablePlans;
192
149
  };
193
150
  retryDeployments: {
194
151
  id: string;
195
152
  benefit: string;
196
- requiredPlan: string;
153
+ requiredPlan: AvailablePlans;
197
154
  };
198
155
  scheduledDeployments: {
199
156
  id: string;
200
157
  benefit: string;
201
- requiredPlan: string;
158
+ requiredPlan: AvailablePlans;
202
159
  };
203
160
  webhookEvents: {
204
161
  id: string;
205
162
  benefit: string;
206
- requiredPlan: string;
163
+ requiredPlan: AvailablePlans;
207
164
  };
208
165
  default: {
209
166
  id: string;
210
167
  benefit: string;
211
- requiredPlan: string;
168
+ requiredPlan: AvailablePlans;
212
169
  };
213
170
  };
214
171
  declare const yes: () => boolean;
@@ -218,4 +175,4 @@ declare const LIGHT_MODE = "light";
218
175
  declare const APPLICATION_JSON_CONTENT_TYPE = "application/json";
219
176
  declare const APPLICATION_JWT_CONTENT_TYPE = "application/jwt";
220
177
 
221
- export { ADDONS, APPLICATION_JSON_CONTENT_TYPE, APPLICATION_JWT_CONTENT_TYPE, BEGINNING_OF_TIME, BENEFITS, DARK_MODE, LIGHT_MODE, PLANS, apiRoot, apiUrl, canAccess, chartTypes, defaultReportType, defaultReports, emptyChartSelection, headerNames, locations, yes };
178
+ export { ADDONS, APPLICATION_JSON_CONTENT_TYPE, APPLICATION_JWT_CONTENT_TYPE, type Addon, type AddonId, type AvailableAddon, type AvailablePlans, BEGINNING_OF_TIME, BENEFITS, DARK_MODE, LIGHT_MODE, PLANS, type Plan, apiRoot, apiUrl, canAccess, chartTypes, defaultReportType, defaultReports, emptyChartSelection, headerNames, locations, yes };
@@ -45,104 +45,61 @@ declare const locations: {
45
45
  key: string;
46
46
  title: string;
47
47
  location: string;
48
+ icon: any;
48
49
  };
49
50
  us: {
50
51
  key: string;
51
52
  title: string;
52
53
  location: string;
54
+ icon: any;
53
55
  };
54
56
  };
57
+ type AvailablePlans = 'os' | 'professional' | 'enterprise';
58
+ type Plan = {
59
+ id: AvailablePlans;
60
+ name: string;
61
+ offer?: boolean;
62
+ price: string;
63
+ deviceCount: string;
64
+ offerprice?: string;
65
+ price2?: string;
66
+ features: string[];
67
+ };
68
+ type AvailableAddon = 'configure' | 'troubleshoot' | 'monitor';
55
69
  declare const PLANS: {
56
- os: {
57
- id: string;
58
- name: string;
59
- offer: boolean;
60
- price: string;
61
- deviceCount: string;
62
- offerprice: string;
63
- price2: string;
64
- features: string[];
65
- };
66
- professional: {
67
- id: string;
68
- name: string;
69
- offer: boolean;
70
- price: string;
71
- deviceCount: string;
72
- offerprice: string;
73
- price2: string;
74
- features: string[];
75
- };
76
- enterprise: {
77
- id: string;
78
- name: string;
70
+ [key in AvailablePlans]: Plan;
71
+ };
72
+ type Addon = {
73
+ id: string;
74
+ title: string;
75
+ description: string;
76
+ needs: string[];
77
+ eligible: AvailablePlans[];
78
+ } & {
79
+ [key in Exclude<AvailablePlans, 'enterprise'>]: {
79
80
  price: string;
80
81
  deviceCount: string;
81
- features: string[];
82
82
  };
83
83
  };
84
+ type AddonId = keyof typeof ADDONS;
84
85
  declare const ADDONS: {
85
- configure: {
86
- id: string;
87
- title: string;
88
- description: string;
89
- needs: string[];
90
- os: {
91
- price: string;
92
- deviceCount: string;
93
- };
94
- professional: {
95
- price: string;
96
- deviceCount: string;
97
- };
98
- eligible: string[];
99
- };
100
- troubleshoot: {
101
- id: string;
102
- title: string;
103
- description: string;
104
- needs: string[];
105
- os: {
106
- price: string;
107
- deviceCount: string;
108
- };
109
- professional: {
110
- price: string;
111
- deviceCount: string;
112
- };
113
- eligible: string[];
114
- };
115
- monitor: {
116
- id: string;
117
- title: string;
118
- description: string;
119
- needs: string[];
120
- os: {
121
- price: string;
122
- deviceCount: string;
123
- };
124
- professional: {
125
- price: string;
126
- deviceCount: string;
127
- };
128
- eligible: string[];
129
- };
86
+ [key in AvailableAddon]: Addon;
130
87
  };
131
88
  declare const BENEFITS: {
132
89
  auditlog: {
133
90
  id: string;
134
91
  benefit: string;
135
- requiredPlan: string;
92
+ requiredPlan: AvailablePlans;
136
93
  };
137
94
  dashboard: {
138
95
  id: string;
139
96
  benefit: string;
140
- requiredPlan: string;
97
+ requiredPlan: AvailablePlans;
141
98
  };
142
99
  deltaGeneration: {
143
100
  id: string;
144
101
  benefit: string;
145
- requiredPlan: string;
102
+ requiredPlan: AvailablePlans;
146
103
  };
147
104
  deviceConfiguration: {
148
105
  id: string;
@@ -153,7 +110,7 @@ declare const BENEFITS: {
153
110
  id: string;
154
111
  benefit: string;
155
112
  requiredAddon: string;
156
- requiredPlan: string;
113
+ requiredPlan: AvailablePlans;
157
114
  };
158
115
  deviceTroubleshoot: {
159
116
  id: string;
@@ -163,52 +120,52 @@ declare const BENEFITS: {
163
120
  dynamicGroups: {
164
121
  id: string;
165
122
  benefit: string;
166
- requiredPlan: string;
123
+ requiredPlan: AvailablePlans;
167
124
  };
168
125
  fullFiltering: {
169
126
  id: string;
170
127
  benefit: string;
171
- requiredPlan: string;
128
+ requiredPlan: AvailablePlans;
172
129
  };
173
130
  gateway: {
174
131
  id: string;
175
132
  benefit: string;
176
- requiredPlans: string;
133
+ requiredPlans: AvailablePlans;
177
134
  };
178
135
  pausedDeployments: {
179
136
  id: string;
180
137
  benefit: string;
181
- requiredPlan: string;
138
+ requiredPlan: AvailablePlans;
182
139
  };
183
140
  phasedDeployments: {
184
141
  id: string;
185
142
  benefit: string;
186
- requiredPlan: string;
143
+ requiredPlan: AvailablePlans;
187
144
  };
188
145
  rbac: {
189
146
  id: string;
190
147
  benefit: string;
191
- requiredPlan: string;
148
+ requiredPlan: AvailablePlans;
192
149
  };
193
150
  retryDeployments: {
194
151
  id: string;
195
152
  benefit: string;
196
- requiredPlan: string;
153
+ requiredPlan: AvailablePlans;
197
154
  };
198
155
  scheduledDeployments: {
199
156
  id: string;
200
157
  benefit: string;
201
- requiredPlan: string;
158
+ requiredPlan: AvailablePlans;
202
159
  };
203
160
  webhookEvents: {
204
161
  id: string;
205
162
  benefit: string;
206
- requiredPlan: string;
163
+ requiredPlan: AvailablePlans;
207
164
  };
208
165
  default: {
209
166
  id: string;
210
167
  benefit: string;
211
- requiredPlan: string;
168
+ requiredPlan: AvailablePlans;
212
169
  };
213
170
  };
214
171
  declare const yes: () => boolean;
@@ -218,4 +175,4 @@ declare const LIGHT_MODE = "light";
218
175
  declare const APPLICATION_JSON_CONTENT_TYPE = "application/json";
219
176
  declare const APPLICATION_JWT_CONTENT_TYPE = "application/jwt";
220
177
 
221
- export { ADDONS, APPLICATION_JSON_CONTENT_TYPE, APPLICATION_JWT_CONTENT_TYPE, BEGINNING_OF_TIME, BENEFITS, DARK_MODE, LIGHT_MODE, PLANS, apiRoot, apiUrl, canAccess, chartTypes, defaultReportType, defaultReports, emptyChartSelection, headerNames, locations, yes };
178
+ export { ADDONS, APPLICATION_JSON_CONTENT_TYPE, APPLICATION_JWT_CONTENT_TYPE, type Addon, type AddonId, type AvailableAddon, type AvailablePlans, BEGINNING_OF_TIME, BENEFITS, DARK_MODE, LIGHT_MODE, PLANS, type Plan, apiRoot, apiUrl, canAccess, chartTypes, defaultReportType, defaultReports, emptyChartSelection, headerNames, locations, yes };
@@ -17,7 +17,7 @@ import {
17
17
  headerNames,
18
18
  locations,
19
19
  yes
20
- } from "../chunk-25AKG5HH.js";
20
+ } from "../chunk-UWMYZNUB.js";
21
21
  export {
22
22
  ADDONS,
23
23
  APPLICATION_JSON_CONTENT_TYPE,
@@ -5,10 +5,10 @@ import {
5
5
  initialState,
6
6
  sliceName
7
7
  } from "../chunk-7PVGDMNM.js";
8
- import "../chunk-A6CT6GTI.js";
8
+ import "../chunk-C5NEDBJI.js";
9
9
  import "../chunk-CK6YE6AN.js";
10
10
  import "../chunk-MRCFLG45.js";
11
- import "../chunk-25AKG5HH.js";
11
+ import "../chunk-UWMYZNUB.js";
12
12
  import "../chunk-4B3IMP4I.js";
13
13
  export {
14
14
  actions,