@openshift-assisted/ui-lib 2.9.9-cim → 2.9.11-cim
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/@types/cim/components/ClusterDeployment/ScaleUpForm.d.ts +1 -0
- package/build/@types/cim/components/ClusterDeployment/ScaleUpForm.d.ts.map +1 -1
- package/build/@types/cim/components/InfraEnv/utils.d.ts.map +1 -1
- package/build/@types/cim/components/modals/ScaleUpModal.d.ts +1 -0
- package/build/@types/cim/components/modals/ScaleUpModal.d.ts.map +1 -1
- package/build/@types/cim/index.d.ts +1 -0
- package/build/@types/cim/index.d.ts.map +1 -1
- package/build/@types/cim/types/k8s/agent-cluster-install.d.ts +1 -1
- package/build/@types/cim/types/k8s/agent-cluster-install.d.ts.map +1 -1
- package/build/@types/common/api/utils.d.ts +1 -1
- package/build/@types/common/api/utils.d.ts.map +1 -1
- package/build/@types/common/index.d.ts +1 -0
- package/build/@types/common/index.d.ts.map +1 -1
- package/build/@types/common/types/index.d.ts +0 -8
- package/build/@types/common/types/index.d.ts.map +1 -1
- package/build/@types/common/types/resource-ui-state.d.ts +9 -0
- package/build/@types/common/types/resource-ui-state.d.ts.map +1 -0
- package/build/@types/ocm/components/Routes.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.d.ts.map +1 -1
- package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.d.ts +1 -1
- package/build/@types/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.d.ts.map +1 -1
- package/build/@types/ocm/components/hosts/DeleteHostModal.d.ts.map +1 -1
- package/build/@types/ocm/config/external-features.d.ts +8 -0
- package/build/@types/ocm/config/external-features.d.ts.map +1 -0
- package/build/@types/ocm/config/index.d.ts +1 -1
- package/build/@types/ocm/config/{routeBaseBath.d.ts → routeBasePath.d.ts} +1 -1
- package/build/@types/ocm/config/routeBasePath.d.ts.map +1 -0
- package/build/@types/ocm/hooks/use-feature-detection.d.ts +3 -0
- package/build/@types/ocm/hooks/use-feature-detection.d.ts.map +1 -0
- package/build/@types/ocm/services/ClusterDetailsService.d.ts.map +1 -1
- package/build/@types/ocm/services/ClustersService.d.ts +3 -3
- package/build/@types/ocm/services/ClustersService.d.ts.map +1 -1
- package/build/@types/ocm/services/InfraEnvIdsCacheService.d.ts +2 -2
- package/build/@types/ocm/services/InfraEnvIdsCacheService.d.ts.map +1 -1
- package/build/@types/ocm/store/hooks.d.ts +17 -5
- package/build/@types/ocm/store/hooks.d.ts.map +1 -1
- package/build/@types/ocm/store/index.d.ts +1 -3
- package/build/@types/ocm/store/index.d.ts.map +1 -1
- package/build/@types/ocm/store/slices/clusters/selectors.d.ts +6 -3
- package/build/@types/ocm/store/slices/clusters/selectors.d.ts.map +1 -1
- package/build/@types/ocm/store/slices/clusters/slice.d.ts +2 -2
- package/build/@types/ocm/store/slices/clusters/slice.d.ts.map +1 -1
- package/build/@types/ocm/store/slices/current-cluster/slice.d.ts +4 -3
- package/build/@types/ocm/store/slices/current-cluster/slice.d.ts.map +1 -1
- package/build/@types/ocm/store/slices/current-user/slice.d.ts +46 -0
- package/build/@types/ocm/store/slices/current-user/slice.d.ts.map +1 -0
- package/build/@types/ocm/store/slices/feature-flags/selectors.d.ts +18 -4
- package/build/@types/ocm/store/slices/feature-flags/selectors.d.ts.map +1 -1
- package/build/@types/ocm/store/slices/feature-flags/slice.d.ts +26 -5
- package/build/@types/ocm/store/slices/feature-flags/slice.d.ts.map +1 -1
- package/build/@types/ocm/store/slices/infra-envs/selectors.d.ts +2 -1
- package/build/@types/ocm/store/slices/infra-envs/selectors.d.ts.map +1 -1
- package/build/@types/ocm/store/store-day1.d.ts +4 -2
- package/build/@types/ocm/store/store-day1.d.ts.map +1 -1
- package/build/@types/ocm/store/types/state-slice.d.ts +16 -0
- package/build/@types/ocm/store/types/state-slice.d.ts.map +1 -0
- package/build/cjs/cim/components/ClusterDeployment/ScaleUpForm.js +7 -4
- package/build/cjs/cim/components/ClusterDeployment/ScaleUpForm.js.map +1 -1
- package/build/cjs/cim/components/InfraEnv/utils.js +6 -6
- package/build/cjs/cim/components/InfraEnv/utils.js.map +1 -1
- package/build/cjs/cim/components/modals/ScaleUpModal.js +2 -2
- package/build/cjs/cim/components/modals/ScaleUpModal.js.map +1 -1
- package/build/cjs/cim/index.js +3 -1
- package/build/cjs/cim/index.js.map +1 -1
- package/build/cjs/common/index.js +3 -0
- package/build/cjs/common/index.js.map +1 -1
- package/build/cjs/common/types/index.js +0 -10
- package/build/cjs/common/types/index.js.map +1 -1
- package/build/cjs/common/types/resource-ui-state.js +13 -0
- package/build/cjs/common/types/resource-ui-state.js.map +1 -0
- package/build/cjs/ocm/components/HostsClusterDetailTab/HostsClusterDetailTab.js +2 -2
- package/build/cjs/ocm/components/HostsClusterDetailTab/HostsClusterDetailTab.js.map +1 -1
- package/build/cjs/ocm/components/Routes.js +3 -5
- package/build/cjs/ocm/components/Routes.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js +4 -1
- package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.js.map +1 -1
- package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js +5 -2
- package/build/cjs/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.js.map +1 -1
- package/build/cjs/ocm/components/hosts/DeleteHostModal.js +8 -7
- package/build/cjs/ocm/components/hosts/DeleteHostModal.js.map +1 -1
- package/build/cjs/ocm/config/external-features.js +10 -0
- package/build/cjs/ocm/config/external-features.js.map +1 -0
- package/build/cjs/ocm/config/index.js +1 -1
- package/build/cjs/ocm/config/{routeBaseBath.js → routeBasePath.js} +1 -1
- package/build/cjs/ocm/config/routeBasePath.js.map +1 -0
- package/build/cjs/ocm/hooks/use-feature-detection.js +14 -0
- package/build/cjs/ocm/hooks/use-feature-detection.js.map +1 -0
- package/build/cjs/ocm/services/ClusterDetailsService.js +0 -3
- package/build/cjs/ocm/services/ClusterDetailsService.js.map +1 -1
- package/build/cjs/ocm/services/ClustersService.js +19 -19
- package/build/cjs/ocm/services/ClustersService.js.map +1 -1
- package/build/cjs/ocm/services/InfraEnvIdsCacheService.js +5 -5
- package/build/cjs/ocm/services/InfraEnvIdsCacheService.js.map +1 -1
- package/build/cjs/ocm/store/hooks.js +2 -4
- package/build/cjs/ocm/store/hooks.js.map +1 -1
- package/build/cjs/ocm/store/index.js +1 -5
- package/build/cjs/ocm/store/index.js.map +1 -1
- package/build/cjs/ocm/store/slices/clusters/slice.js +9 -8
- package/build/cjs/ocm/store/slices/clusters/slice.js.map +1 -1
- package/build/cjs/ocm/store/slices/current-cluster/slice.js +14 -13
- package/build/cjs/ocm/store/slices/current-cluster/slice.js.map +1 -1
- package/build/cjs/ocm/store/slices/current-user/slice.js +109 -0
- package/build/cjs/ocm/store/slices/current-user/slice.js.map +1 -0
- package/build/cjs/ocm/store/slices/feature-flags/selectors.js +1 -4
- package/build/cjs/ocm/store/slices/feature-flags/selectors.js.map +1 -1
- package/build/cjs/ocm/store/slices/feature-flags/slice.js +79 -6
- package/build/cjs/ocm/store/slices/feature-flags/slice.js.map +1 -1
- package/build/cjs/ocm/store/slices/infra-envs/thunks.js +1 -1
- package/build/cjs/ocm/store/slices/infra-envs/thunks.js.map +1 -1
- package/build/cjs/ocm/store/store-day1.js +2 -4
- package/build/cjs/ocm/store/store-day1.js.map +1 -1
- package/build/cjs/ocm/store/types/state-slice.js +3 -0
- package/build/cjs/ocm/store/types/state-slice.js.map +1 -0
- package/lib/@types/assets.d.ts +1 -1
- package/lib/@types/global.d.ts +1 -0
- package/lib/_test-helpers/mock-container.ts +42 -0
- package/lib/_test-helpers/mock-server.ts +26 -0
- package/lib/_test-helpers/vitest-setup.ts +17 -0
- package/lib/cim/components/ClusterDeployment/ScaleUpForm.tsx +11 -5
- package/lib/cim/components/InfraEnv/utils.ts +7 -6
- package/lib/cim/components/modals/ScaleUpModal.tsx +3 -0
- package/lib/cim/index.ts +1 -0
- package/lib/cim/types/k8s/agent-cluster-install.ts +4 -7
- package/lib/common/api/utils.ts +1 -1
- package/lib/common/index.ts +1 -0
- package/lib/common/types/index.ts +0 -9
- package/lib/common/types/resource-ui-state.ts +8 -0
- package/lib/ocm/components/HostsClusterDetailTab/HostsClusterDetailTab.tsx +2 -2
- package/lib/ocm/components/Routes.tsx +3 -5
- package/lib/ocm/components/clusterConfiguration/networkConfiguration/NetworkConfigurationForm.tsx +7 -2
- package/lib/ocm/components/clusterConfiguration/networkConfiguration/networkConfigurationValidation.ts +6 -1
- package/lib/ocm/components/hosts/DeleteHostModal.tsx +28 -23
- package/lib/ocm/config/external-features.ts +12 -0
- package/lib/ocm/config/index.ts +1 -1
- package/lib/ocm/hooks/_use-feature-detection.test.tsx +125 -0
- package/lib/ocm/hooks/use-feature-detection.ts +17 -0
- package/lib/ocm/services/ClusterDetailsService.ts +0 -4
- package/lib/ocm/services/ClustersService.ts +9 -9
- package/lib/ocm/services/InfraEnvIdsCacheService.ts +2 -2
- package/lib/ocm/store/hooks.ts +1 -4
- package/lib/ocm/store/index.ts +1 -3
- package/lib/ocm/store/slices/clusters/slice.ts +5 -4
- package/lib/ocm/store/slices/current-cluster/slice.ts +9 -15
- package/lib/ocm/store/slices/current-user/slice.ts +129 -0
- package/lib/ocm/store/slices/feature-flags/selectors.ts +6 -7
- package/lib/ocm/store/slices/feature-flags/slice.ts +102 -7
- package/lib/ocm/store/slices/infra-envs/thunks.ts +1 -1
- package/lib/ocm/store/store-day1.ts +2 -4
- package/lib/ocm/store/types/state-slice.ts +16 -0
- package/package.json +17 -5
- package/build/@types/ocm/config/routeBaseBath.d.ts.map +0 -1
- package/build/@types/ocm/store/store-day2.d.ts +0 -10
- package/build/@types/ocm/store/store-day2.d.ts.map +0 -1
- package/build/cjs/ocm/config/routeBaseBath.js.map +0 -1
- package/build/cjs/ocm/store/store-day2.js +0 -20
- package/build/cjs/ocm/store/store-day2.js.map +0 -1
- package/lib/ocm/store/store-day2.ts +0 -19
- /package/lib/cim/components/ClusterDeployment/{wizardTransition.test.ts → _wizardTransition.test.ts} +0 -0
- /package/lib/common/components/ui/formik/{validationSchemas.test.ts → _validationSchemas.test.ts} +0 -0
- /package/lib/ocm/components/clusterWizard/{wizardTransition.test.ts → _wizardTransition.test.ts} +0 -0
- /package/lib/ocm/config/{routeBaseBath.ts → routeBasePath.ts} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
3
|
+
const cpuArchitecture_1 = require("../../common//types/cpuArchitecture");
|
|
4
4
|
const CACHE_KEY = 'infra-env-ids-cache-v2';
|
|
5
5
|
const update = (cache) => {
|
|
6
6
|
localStorage.setItem(CACHE_KEY, JSON.stringify(cache));
|
|
@@ -36,11 +36,11 @@ const InfraEnvIdsCacheService = {
|
|
|
36
36
|
if (!clusterInfraEnvs) {
|
|
37
37
|
return new Error(`Not infraEnvs found for this cluster ${clusterId}`);
|
|
38
38
|
}
|
|
39
|
-
if (cpuArchitecture !==
|
|
40
|
-
cpuArchitecture !==
|
|
39
|
+
if (cpuArchitecture !== cpuArchitecture_1.CpuArchitecture.USE_DAY1_ARCHITECTURE &&
|
|
40
|
+
cpuArchitecture !== cpuArchitecture_1.CpuArchitecture.MULTI) {
|
|
41
41
|
return clusterInfraEnvs[cpuArchitecture] || new Error(`InfraEnv can't be found`);
|
|
42
42
|
}
|
|
43
|
-
const architectures = (0,
|
|
43
|
+
const architectures = (0, cpuArchitecture_1.getAllCpuArchitectures)().filter((arch) => {
|
|
44
44
|
return clusterInfraEnvs[arch];
|
|
45
45
|
});
|
|
46
46
|
if (architectures.length === 1) {
|
|
@@ -54,7 +54,7 @@ const InfraEnvIdsCacheService = {
|
|
|
54
54
|
return;
|
|
55
55
|
}
|
|
56
56
|
const cache = read();
|
|
57
|
-
if (cpuArchitecture ===
|
|
57
|
+
if (cpuArchitecture === cpuArchitecture_1.CpuArchitecture.USE_DAY1_ARCHITECTURE) {
|
|
58
58
|
delete cache[clusterId];
|
|
59
59
|
}
|
|
60
60
|
else if (cache[clusterId]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InfraEnvIdsCacheService.js","sourceRoot":"","sources":["../../../../lib/ocm/services/InfraEnvIdsCacheService.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"InfraEnvIdsCacheService.js","sourceRoot":"","sources":["../../../../lib/ocm/services/InfraEnvIdsCacheService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.useSelectorDay1 = exports.useDispatchDay1 = void 0;
|
|
4
4
|
const react_redux_1 = require("react-redux");
|
|
5
|
-
exports.useDispatchDay1 = react_redux_1.useDispatch;
|
|
5
|
+
exports.useDispatchDay1 = (react_redux_1.useDispatch);
|
|
6
6
|
exports.useSelectorDay1 = react_redux_1.useSelector;
|
|
7
|
-
exports.useDispatchDay2 = react_redux_1.useDispatch;
|
|
8
|
-
exports.useSelectorDay2 = react_redux_1.useSelector;
|
|
9
7
|
//# sourceMappingURL=hooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../lib/ocm/store/hooks.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../../lib/ocm/store/hooks.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AAI1C,QAAA,eAAe,GAAG,CAAA,yBAAyB,CAAA,CAAC;AAC5C,QAAA,eAAe,GAAwC,yBAAW,CAAC"}
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.useDispatchDay1 = exports.useSelectorDay1 = exports.storeDay1 = void 0;
|
|
4
4
|
var store_day1_1 = require("./store-day1");
|
|
5
5
|
Object.defineProperty(exports, "storeDay1", { enumerable: true, get: function () { return store_day1_1.storeDay1; } });
|
|
6
|
-
var store_day2_1 = require("./store-day2");
|
|
7
|
-
Object.defineProperty(exports, "storeDay2", { enumerable: true, get: function () { return store_day2_1.storeDay2; } });
|
|
8
6
|
var hooks_1 = require("./hooks");
|
|
9
7
|
Object.defineProperty(exports, "useSelectorDay1", { enumerable: true, get: function () { return hooks_1.useSelectorDay1; } });
|
|
10
|
-
Object.defineProperty(exports, "useSelectorDay2", { enumerable: true, get: function () { return hooks_1.useSelectorDay2; } });
|
|
11
8
|
Object.defineProperty(exports, "useDispatchDay1", { enumerable: true, get: function () { return hooks_1.useDispatchDay1; } });
|
|
12
|
-
Object.defineProperty(exports, "useDispatchDay2", { enumerable: true, get: function () { return hooks_1.useDispatchDay2; } });
|
|
13
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/ocm/store/index.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/ocm/store/index.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAElB,iCAA2D;AAAlD,wGAAA,eAAe,OAAA;AAAE,wGAAA,eAAe,OAAA"}
|
|
@@ -3,19 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.clustersReducer = exports.deleteCluster = exports.clustersSlice = exports.fetchClustersAsync = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
6
|
+
const resource_ui_state_1 = require("../../../../common/types/resource-ui-state");
|
|
7
|
+
const ClustersAPI_1 = tslib_1.__importDefault(require("../../../../common/api/assisted-service/ClustersAPI"));
|
|
8
|
+
const axiosClient_1 = require("../../../../common/api/axiosClient");
|
|
9
|
+
const utils_1 = require("../../../../common/api/utils");
|
|
9
10
|
exports.fetchClustersAsync = (0, toolkit_1.createAsyncThunk)('clusters/fetchClustersAsync', (value, { rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
10
11
|
try {
|
|
11
|
-
const { data } = yield
|
|
12
|
-
return data.filter((cluster) => (
|
|
12
|
+
const { data } = yield ClustersAPI_1.default.list();
|
|
13
|
+
return data.filter((cluster) => (axiosClient_1.isInOcm ? cluster.kind === 'Cluster' : true));
|
|
13
14
|
}
|
|
14
15
|
catch (e) {
|
|
15
|
-
return (0,
|
|
16
|
+
return (0, utils_1.handleApiError)(e, () => rejectWithValue(value));
|
|
16
17
|
}
|
|
17
18
|
}));
|
|
18
|
-
const initialState = { data: [], uiState:
|
|
19
|
+
const initialState = { data: [], uiState: resource_ui_state_1.ResourceUIState.LOADING };
|
|
19
20
|
exports.clustersSlice = (0, toolkit_1.createSlice)({
|
|
20
21
|
initialState,
|
|
21
22
|
name: 'clusters',
|
|
@@ -23,7 +24,7 @@ exports.clustersSlice = (0, toolkit_1.createSlice)({
|
|
|
23
24
|
deleteCluster: (state, action) => (Object.assign(Object.assign({}, state), { data: state.data.filter((item) => item.id !== action.payload) })),
|
|
24
25
|
},
|
|
25
26
|
extraReducers: (builder) => {
|
|
26
|
-
const { LOADED, LOADING, RELOADING, POLLING_ERROR } =
|
|
27
|
+
const { LOADED, LOADING, RELOADING, POLLING_ERROR } = resource_ui_state_1.ResourceUIState;
|
|
27
28
|
builder
|
|
28
29
|
.addCase(exports.fetchClustersAsync.pending, (state) => {
|
|
29
30
|
const uiState = state.uiState === LOADED ? RELOADING : LOADING;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/clusters/slice.ts"],"names":[],"mappings":";;;;AAAA,8CAO0B;AAC1B
|
|
1
|
+
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/clusters/slice.ts"],"names":[],"mappings":";;;;AAAA,8CAO0B;AAC1B,kFAA6E;AAC7E,8GAA8E;AAC9E,oEAA6D;AAE7D,wDAA8D;AAEjD,QAAA,kBAAkB,GAAG,IAAA,0BAAgB,EAChD,6BAA6B,EAC7B,CAAO,KAAK,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE;IACnC,IAAI;QACF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,qBAAW,CAAC,IAAI,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,qBAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;KAChF;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,IAAA,sBAAc,EAAC,CAAC,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;KACxD;AACH,CAAC,CAAA,CACF,CAAC;AASF,MAAM,YAAY,GAAuB,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,mCAAe,CAAC,OAAO,EAAE,CAAC;AAE3E,QAAA,aAAa,GAAG,IAAA,qBAAW,EAAC;IACvC,YAAY;IACZ,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,aAAa,EAAE,CAAC,KAAK,EAAE,MAAoC,EAAE,EAAE,CAAC,iCAC3D,KAAK,KACR,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAa,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,OAAO,CAAC,IACtE;KACH;IACD,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE;QACzB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,mCAAe,CAAC;QACtE,OAAO;aACJ,OAAO,CAAC,0BAAkB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAC/D,uCAAY,KAAK,KAAE,OAAO,IAAG;QAC/B,CAAC,CAAC;aACD,OAAO,CAAC,0BAAkB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,iCACrD,KAAK,KACR,IAAI,EAAE,CAAC,GAAI,MAAM,CAAC,OAAqB,CAAC,EACxC,OAAO,EAAE,MAAM,IACf,CAAC;aACF,OAAO,CAAC,0BAAkB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,iCAC5C,KAAK,KACR,OAAO,EAAE,aAAa,IACtB,CAAC,CAAC;IACR,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,qBAAa,CAAC;AAC5B,qBAAa,GAAK,OAAO,eAAC;AAC5B,QAAA,eAAe,GAAG,OAAO,CAAC"}
|
|
@@ -5,7 +5,8 @@ const tslib_1 = require("tslib");
|
|
|
5
5
|
const findIndex_js_1 = tslib_1.__importDefault(require("lodash-es/findIndex.js"));
|
|
6
6
|
const set_js_1 = tslib_1.__importDefault(require("lodash-es/set.js"));
|
|
7
7
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
8
|
-
const
|
|
8
|
+
const utils_1 = require("../../../../common/api/utils");
|
|
9
|
+
const resource_ui_state_1 = require("../../../../common/types/resource-ui-state");
|
|
9
10
|
const ClustersService_1 = tslib_1.__importDefault(require("../../../services/ClustersService"));
|
|
10
11
|
exports.fetchClusterAsync = (0, toolkit_1.createAsyncThunk)('currentCluster/fetchClusterAsync', (clusterId, { rejectWithValue }) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
11
12
|
try {
|
|
@@ -13,17 +14,17 @@ exports.fetchClusterAsync = (0, toolkit_1.createAsyncThunk)('currentCluster/fetc
|
|
|
13
14
|
return cluster;
|
|
14
15
|
}
|
|
15
16
|
catch (e) {
|
|
16
|
-
return (0,
|
|
17
|
+
return (0, utils_1.handleApiError)(e, () => {
|
|
17
18
|
return rejectWithValue({
|
|
18
|
-
code: (0,
|
|
19
|
-
message: (0,
|
|
19
|
+
code: (0, utils_1.getApiErrorCode)(e),
|
|
20
|
+
message: (0, utils_1.getApiErrorMessage)(e),
|
|
20
21
|
});
|
|
21
22
|
});
|
|
22
23
|
}
|
|
23
24
|
}));
|
|
24
25
|
const initialState = {
|
|
25
26
|
data: undefined,
|
|
26
|
-
uiState:
|
|
27
|
+
uiState: resource_ui_state_1.ResourceUIState.LOADING,
|
|
27
28
|
permissions: { isViewerMode: false },
|
|
28
29
|
errorDetail: undefined,
|
|
29
30
|
isReloadScheduled: 0,
|
|
@@ -50,7 +51,7 @@ exports.currentClusterSlice = (0, toolkit_1.createSlice)({
|
|
|
50
51
|
return state;
|
|
51
52
|
},
|
|
52
53
|
setServerUpdateError: (state) => {
|
|
53
|
-
return Object.assign(Object.assign({}, state), { uiState:
|
|
54
|
+
return Object.assign(Object.assign({}, state), { uiState: resource_ui_state_1.ResourceUIState.UPDATE_ERROR });
|
|
54
55
|
},
|
|
55
56
|
cleanCluster: () => initialState,
|
|
56
57
|
forceReload: (state) => (Object.assign(Object.assign({}, state), { isReloadScheduled: state.isReloadScheduled + 1 })),
|
|
@@ -60,21 +61,21 @@ exports.currentClusterSlice = (0, toolkit_1.createSlice)({
|
|
|
60
61
|
extraReducers: (builder) => {
|
|
61
62
|
builder
|
|
62
63
|
.addCase(exports.fetchClusterAsync.pending, (state) => {
|
|
63
|
-
const needsReload = state.uiState ===
|
|
64
|
-
(state.uiState ===
|
|
65
|
-
return Object.assign(Object.assign({}, state), { uiState: needsReload ?
|
|
64
|
+
const needsReload = state.uiState === resource_ui_state_1.ResourceUIState.LOADED ||
|
|
65
|
+
(state.uiState === resource_ui_state_1.ResourceUIState.POLLING_ERROR && state.data);
|
|
66
|
+
return Object.assign(Object.assign({}, state), { uiState: needsReload ? resource_ui_state_1.ResourceUIState.RELOADING : resource_ui_state_1.ResourceUIState.LOADING });
|
|
66
67
|
})
|
|
67
68
|
.addCase(exports.fetchClusterAsync.fulfilled, (state, action) => {
|
|
68
|
-
return Object.assign(Object.assign({}, state), { data: action.payload, uiState:
|
|
69
|
+
return Object.assign(Object.assign({}, state), { data: action.payload, uiState: resource_ui_state_1.ResourceUIState.LOADED });
|
|
69
70
|
})
|
|
70
71
|
.addCase(exports.fetchClusterAsync.rejected, (state, action) => {
|
|
71
72
|
const error = action.payload;
|
|
72
|
-
if (error.code ===
|
|
73
|
+
if (error.code === utils_1.FETCH_ABORTED_ERROR_CODE && !!state.data) {
|
|
73
74
|
// This failure is due to having aborted the request on purpose (to avoid conflicts with update operations).
|
|
74
75
|
// The error can be ignored, and the data will be refreshed on the next polling
|
|
75
|
-
return Object.assign(Object.assign({}, state), { uiState:
|
|
76
|
+
return Object.assign(Object.assign({}, state), { uiState: resource_ui_state_1.ResourceUIState.LOADED });
|
|
76
77
|
}
|
|
77
|
-
return Object.assign(Object.assign({}, state), { uiState:
|
|
78
|
+
return Object.assign(Object.assign({}, state), { uiState: resource_ui_state_1.ResourceUIState.POLLING_ERROR, errorDetail: error });
|
|
78
79
|
});
|
|
79
80
|
},
|
|
80
81
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/current-cluster/slice.ts"],"names":[],"mappings":";;;;AAAA,kFAA+C;AAC/C,sEAAmC;
|
|
1
|
+
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/current-cluster/slice.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.currentUserReducer = exports.currentUserActions = exports.currentUserAsyncActions = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
|
+
const current_account_api_1 = require("../../../../common/api/accounts-management-service/current-account-api");
|
|
7
|
+
const organizations_api_1 = require("../../../../common/api/accounts-management-service/organizations-api");
|
|
8
|
+
const currentUserAsyncActions = {
|
|
9
|
+
getAccountAsync: (0, toolkit_1.createAsyncThunk)('currentUser/getAccountAsync', (_, thunkApi) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
10
|
+
const account = yield current_account_api_1.CurrentAccountApi.getCurrentAccount();
|
|
11
|
+
if (account) {
|
|
12
|
+
thunkApi.dispatch(currentUserActions.setAccount(account));
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
thunkApi.rejectWithValue({
|
|
16
|
+
message: 'No account data available',
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
})),
|
|
20
|
+
getUserOrganizationWithCapabilitiesAsync: (0, toolkit_1.createAsyncThunk)('currentUser/getUserOrganizationWithCapabilitiesAsync', (orgId, thunkApi) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
21
|
+
var _a;
|
|
22
|
+
const organization = yield organizations_api_1.OrganizationsApi.getOrganization(orgId);
|
|
23
|
+
if (organization) {
|
|
24
|
+
thunkApi.dispatch(currentUserActions.setOrganizationCapabilities((_a = organization.capabilities) !== null && _a !== void 0 ? _a : []));
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
thunkApi.rejectWithValue({
|
|
28
|
+
message: 'No organization data found',
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
})),
|
|
32
|
+
getCapabilitiesAsync: (0, toolkit_1.createAsyncThunk)('currentUser/getCapabilitiesAsync', (_, thunkApi) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
33
|
+
var _b;
|
|
34
|
+
yield thunkApi.dispatch(currentUserAsyncActions.getAccountAsync());
|
|
35
|
+
const { currentUser } = thunkApi.getState();
|
|
36
|
+
const orgId = (_b = currentUser.data) === null || _b === void 0 ? void 0 : _b.organization_id;
|
|
37
|
+
if (orgId) {
|
|
38
|
+
yield thunkApi.dispatch(currentUserAsyncActions.getUserOrganizationWithCapabilitiesAsync(orgId));
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
thunkApi.rejectWithValue({
|
|
42
|
+
message: 'Account has no organization ID',
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
})),
|
|
46
|
+
};
|
|
47
|
+
exports.currentUserAsyncActions = currentUserAsyncActions;
|
|
48
|
+
const currentUserSlice = (0, toolkit_1.createSlice)({
|
|
49
|
+
name: 'currentUser',
|
|
50
|
+
initialState: () => ({
|
|
51
|
+
data: null,
|
|
52
|
+
error: null,
|
|
53
|
+
meta: {
|
|
54
|
+
status: 'idle',
|
|
55
|
+
updatedAt: null,
|
|
56
|
+
currentRequestId: null,
|
|
57
|
+
},
|
|
58
|
+
}),
|
|
59
|
+
reducers: {
|
|
60
|
+
setMeta: (state, action) => {
|
|
61
|
+
state.meta.updatedAt = new Date().toUTCString();
|
|
62
|
+
state.meta.status = action.payload.meta.requestStatus;
|
|
63
|
+
state.meta.currentRequestId = action.payload.meta.requestId;
|
|
64
|
+
return state;
|
|
65
|
+
},
|
|
66
|
+
setAccount: (state, action) => {
|
|
67
|
+
state.data = action.payload;
|
|
68
|
+
state.error = null;
|
|
69
|
+
state.meta.updatedAt = new Date().toUTCString();
|
|
70
|
+
return state;
|
|
71
|
+
},
|
|
72
|
+
setOrganizationCapabilities: (state, action) => {
|
|
73
|
+
if (state.data !== null && state.data.organization) {
|
|
74
|
+
state.data.organization.capabilities = action.payload;
|
|
75
|
+
state.error = null;
|
|
76
|
+
state.meta.updatedAt = new Date().toUTCString();
|
|
77
|
+
}
|
|
78
|
+
return state;
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
extraReducers: (builder) => {
|
|
82
|
+
for (const { pending, fulfilled, rejected } of Object.values(currentUserAsyncActions)) {
|
|
83
|
+
builder.addCase(pending, (state, action) => {
|
|
84
|
+
if (/idle|fulfilled|rejected/.test(state.meta.status)) {
|
|
85
|
+
currentUserActions.setMeta(action);
|
|
86
|
+
}
|
|
87
|
+
return state;
|
|
88
|
+
});
|
|
89
|
+
builder.addCase(fulfilled, (state, action) => {
|
|
90
|
+
if (/idle|pending/.test(state.meta.status)) {
|
|
91
|
+
currentUserActions.setMeta(action);
|
|
92
|
+
}
|
|
93
|
+
return state;
|
|
94
|
+
});
|
|
95
|
+
builder.addCase(rejected, (state, action) => {
|
|
96
|
+
if (/idle|pending/.test(state.meta.status)) {
|
|
97
|
+
currentUserActions.setMeta(action);
|
|
98
|
+
state.error = action.error;
|
|
99
|
+
}
|
|
100
|
+
return state;
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
});
|
|
105
|
+
const currentUserActions = currentUserSlice.actions;
|
|
106
|
+
exports.currentUserActions = currentUserActions;
|
|
107
|
+
const currentUserReducer = currentUserSlice.reducer;
|
|
108
|
+
exports.currentUserReducer = currentUserReducer;
|
|
109
|
+
//# sourceMappingURL=slice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/current-user/slice.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,5 @@ exports.isFeatureEnabled = exports.selectFeatureFlagsSlice = void 0;
|
|
|
4
4
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
5
5
|
const selectFeatureFlagsSlice = (state) => state.featureFlags;
|
|
6
6
|
exports.selectFeatureFlagsSlice = selectFeatureFlagsSlice;
|
|
7
|
-
exports.isFeatureEnabled = (0, toolkit_1.createSelector)(
|
|
8
|
-
// Configured via Unleash in the OCM
|
|
9
|
-
return !!featureFlags[feature];
|
|
10
|
-
});
|
|
7
|
+
exports.isFeatureEnabled = (0, toolkit_1.createSelector)(exports.selectFeatureFlagsSlice, (_featureFlags, featureId) => featureId, (featureFlags, featureId) => featureFlags.data[featureId]);
|
|
11
8
|
//# sourceMappingURL=selectors.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/feature-flags/selectors.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/feature-flags/selectors.ts"],"names":[],"mappings":";;;AAEA,8CAAkD;AAE3C,MAAM,uBAAuB,GAAG,CAAC,KAAoB,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC;AAAvE,QAAA,uBAAuB,2BAAgD;AAEvE,QAAA,gBAAgB,GAAG,IAAA,wBAAc,EAC5C,+BAAuB,EACvB,CAAC,aAAyD,EAAE,SAAgC,EAAE,EAAE,CAC9F,SAAS,EACX,CAAC,YAAY,EAAE,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAC1D,CAAC"}
|
|
@@ -1,16 +1,89 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.featureFlagsReducer = exports.featureFlagsActions = void 0;
|
|
3
|
+
exports.featureFlagsReducer = exports.featureFlagsActions = exports.featureFlagsAsyncActions = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
4
5
|
const toolkit_1 = require("@reduxjs/toolkit");
|
|
6
|
+
const featureGate_1 = require("../../../../common/features/featureGate");
|
|
7
|
+
const external_features_1 = require("../../../config/external-features");
|
|
8
|
+
const slice_1 = require("../current-user/slice");
|
|
9
|
+
const featureFlagsAsyncActions = {
|
|
10
|
+
detectFeaturesAsync: (0, toolkit_1.createAsyncThunk)('featureFlags/detectFeatures', (featuresOverride = null, thunkApi) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
11
|
+
var _a, _b, _c;
|
|
12
|
+
yield thunkApi.dispatch(slice_1.currentUserAsyncActions.getCapabilitiesAsync());
|
|
13
|
+
const state = thunkApi.getState();
|
|
14
|
+
for (const { featureId, capabilityId } of external_features_1.externalFeaturesMappings) {
|
|
15
|
+
const capability = (_c = (_b = (_a = state.currentUser.data) === null || _a === void 0 ? void 0 : _a.organization) === null || _b === void 0 ? void 0 : _b.capabilities) === null || _c === void 0 ? void 0 : _c.find((capability) => capability.name === capabilityId);
|
|
16
|
+
if (capability) {
|
|
17
|
+
thunkApi.dispatch(featureFlagsActions.setFeatureFlag({
|
|
18
|
+
featureId,
|
|
19
|
+
isEnabled: capability.value === 'true',
|
|
20
|
+
}));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
if (featuresOverride !== null) {
|
|
24
|
+
for (const [k, v] of Object.entries(featuresOverride)) {
|
|
25
|
+
thunkApi.dispatch(featureFlagsActions.setFeatureFlag({
|
|
26
|
+
featureId: k,
|
|
27
|
+
isEnabled: v,
|
|
28
|
+
}));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
})),
|
|
32
|
+
};
|
|
33
|
+
exports.featureFlagsAsyncActions = featureFlagsAsyncActions;
|
|
34
|
+
const initialState = {
|
|
35
|
+
data: featureGate_1.STANDALONE_DEPLOYMENT_ENABLED_FEATURES,
|
|
36
|
+
error: null,
|
|
37
|
+
meta: {
|
|
38
|
+
status: 'idle',
|
|
39
|
+
updatedAt: null,
|
|
40
|
+
currentRequestId: null,
|
|
41
|
+
},
|
|
42
|
+
};
|
|
5
43
|
const featureFlagsSlice = (0, toolkit_1.createSlice)({
|
|
6
44
|
name: 'featureFlags',
|
|
7
|
-
initialState
|
|
45
|
+
initialState,
|
|
8
46
|
reducers: {
|
|
9
|
-
|
|
10
|
-
|
|
47
|
+
setMeta: (state, action) => {
|
|
48
|
+
state.meta.updatedAt = new Date().toUTCString();
|
|
49
|
+
state.meta.status = action.payload.meta.requestStatus;
|
|
50
|
+
state.meta.currentRequestId = action.payload.meta.requestId;
|
|
51
|
+
return state;
|
|
52
|
+
},
|
|
53
|
+
setFeatureFlag: (state, action) => {
|
|
54
|
+
const { featureId, isEnabled } = action.payload;
|
|
55
|
+
state.data[featureId] = isEnabled;
|
|
56
|
+
state.error = null;
|
|
57
|
+
state.meta.updatedAt = new Date().toUTCString();
|
|
58
|
+
return state;
|
|
11
59
|
},
|
|
12
60
|
},
|
|
61
|
+
extraReducers: (builder) => {
|
|
62
|
+
for (const { pending, fulfilled, rejected } of Object.values(featureFlagsAsyncActions)) {
|
|
63
|
+
builder.addCase(pending, (state, action) => {
|
|
64
|
+
if (/idle|fulfilled|rejected/.test(state.meta.status)) {
|
|
65
|
+
featureFlagsActions.setMeta(action);
|
|
66
|
+
}
|
|
67
|
+
return state;
|
|
68
|
+
});
|
|
69
|
+
builder.addCase(fulfilled, (state, action) => {
|
|
70
|
+
if (/idle|pending/.test(state.meta.status)) {
|
|
71
|
+
featureFlagsActions.setMeta(action);
|
|
72
|
+
}
|
|
73
|
+
return state;
|
|
74
|
+
});
|
|
75
|
+
builder.addCase(rejected, (state, action) => {
|
|
76
|
+
if (/idle|pending/.test(state.meta.status)) {
|
|
77
|
+
featureFlagsActions.setMeta(action);
|
|
78
|
+
state.error = action.error;
|
|
79
|
+
}
|
|
80
|
+
return state;
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
},
|
|
13
84
|
});
|
|
14
|
-
|
|
15
|
-
exports.
|
|
85
|
+
const featureFlagsActions = featureFlagsSlice.actions;
|
|
86
|
+
exports.featureFlagsActions = featureFlagsActions;
|
|
87
|
+
const featureFlagsReducer = featureFlagsSlice.reducer;
|
|
88
|
+
exports.featureFlagsReducer = featureFlagsReducer;
|
|
16
89
|
//# sourceMappingURL=slice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/feature-flags/slice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/feature-flags/slice.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ exports.listInfraEnvsByClusterId = (0, toolkit_1.createAsyncThunk)('infraEnvs/li
|
|
|
9
9
|
const { data: infraEnvs } = yield apis_1.InfraEnvsAPI.list(clusterId);
|
|
10
10
|
return infraEnvs;
|
|
11
11
|
}));
|
|
12
|
-
exports.createInfraEnv = (0, toolkit_1.createAsyncThunk)('', (params) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
12
|
+
exports.createInfraEnv = (0, toolkit_1.createAsyncThunk)('infraEnvs/createInfraEnv', (params) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
|
|
13
13
|
const { data: infraEnv } = yield apis_1.InfraEnvsAPI.register(params);
|
|
14
14
|
// dispatch({ type: 'currentCluster/updateStaticNetworkConfig' payload: infraEnv.staticNetworkConfig });
|
|
15
15
|
return infraEnv;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thunks.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/infra-envs/thunks.ts"],"names":[],"mappings":";;;;AAAA,8CAAoD;AAEpD,iDAAsD;AAEtD,2CAA8D;AAQjD,QAAA,wBAAwB,GAAG,IAAA,0BAAgB,EACtD,2BAA2B,EAC3B,CAAO,SAAwB,EAAE,EAAE;IACjC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,mBAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/D,OAAO,SAAS,CAAC;AACnB,CAAC,CAAA,CACF,CAAC;AAEW,QAAA,cAAc,GAAG,IAAA,0BAAgB,EAC5C,
|
|
1
|
+
{"version":3,"file":"thunks.js","sourceRoot":"","sources":["../../../../../../lib/ocm/store/slices/infra-envs/thunks.ts"],"names":[],"mappings":";;;;AAAA,8CAAoD;AAEpD,iDAAsD;AAEtD,2CAA8D;AAQjD,QAAA,wBAAwB,GAAG,IAAA,0BAAgB,EACtD,2BAA2B,EAC3B,CAAO,SAAwB,EAAE,EAAE;IACjC,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,mBAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/D,OAAO,SAAS,CAAC;AACnB,CAAC,CAAA,CACF,CAAC;AAEW,QAAA,cAAc,GAAG,IAAA,0BAAgB,EAC5C,0BAA0B,EAC1B,CAAO,MAAuD,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/D,wGAAwG;IACxG,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAA,CACF,CAAC;AAEW,QAAA,kBAAkB,GAAG,IAAA,0BAAgB,EAAC,qBAAqB,EAAE,CAAO,CAAC,EAAE,QAAQ,EAAE,EAAE;IAC9F,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAmB,CAAC;IACnD,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;QACpC,QAAQ,CAAC,IAAI,CAAC,mBAAY,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;KACpD;IACD,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC,CAAA,CAAC,CAAC;AAEU,QAAA,cAAc,GAAG,IAAA,0BAAgB,EAC5C,kBAAkB,EAClB,CAAO,EAAgF,EAAE,EAAE;QAApF,EAAE,UAAU,OAAoE,EAA/D,MAAM,sBAAvB,cAAyB,CAAF;IAC5B,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAY,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACzE,wGAAwG;IACxG,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAA,CACF,CAAC;AAEW,QAAA,WAAW,GAAG,IAAA,0BAAgB,EACzC,uBAAuB,EACvB,CAAO,eAAgC,EAAE,QAAQ,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAmB,CAAC;IACnD,kFAAkF;IAClF,mFAAmF;IACnF,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,IAAA,2CAA+B,EAAC,KAAK,EAAE,eAAe,CAAa,CAAC;IACrF,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,mBAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3E,OAAO,YAAY,CAAC;AACtB,CAAC,CAAA,CACF,CAAC"}
|
|
@@ -6,7 +6,7 @@ const slice_1 = require("./slices/clusters/slice");
|
|
|
6
6
|
const slice_2 = require("./slices/current-cluster/slice");
|
|
7
7
|
const slice_3 = require("./slices/infra-envs/slice");
|
|
8
8
|
const slice_4 = require("./slices/feature-flags/slice");
|
|
9
|
-
const
|
|
9
|
+
const slice_5 = require("./slices/current-user/slice");
|
|
10
10
|
exports.storeDay1 = (0, toolkit_1.configureStore)({
|
|
11
11
|
devTools: {
|
|
12
12
|
name: 'Assisted Installer - Day 1',
|
|
@@ -16,9 +16,7 @@ exports.storeDay1 = (0, toolkit_1.configureStore)({
|
|
|
16
16
|
currentCluster: slice_2.currentClusterReducer,
|
|
17
17
|
infraEnvs: slice_3.infraEnvsReducer,
|
|
18
18
|
featureFlags: slice_4.featureFlagsReducer,
|
|
19
|
-
|
|
20
|
-
preloadedState: {
|
|
21
|
-
featureFlags: common_1.STANDALONE_DEPLOYMENT_ENABLED_FEATURES,
|
|
19
|
+
currentUser: slice_5.currentUserReducer,
|
|
22
20
|
},
|
|
23
21
|
});
|
|
24
22
|
//# sourceMappingURL=store-day1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store-day1.js","sourceRoot":"","sources":["../../../../lib/ocm/store/store-day1.ts"],"names":[],"mappings":";;;AAAA,8CAAkD;AAClD,mDAA0D;AAC1D,0DAAuE;AACvE,qDAA6D;AAC7D,wDAAmE;AACnE,
|
|
1
|
+
{"version":3,"file":"store-day1.js","sourceRoot":"","sources":["../../../../lib/ocm/store/store-day1.ts"],"names":[],"mappings":";;;AAAA,8CAAkD;AAClD,mDAA0D;AAC1D,0DAAuE;AACvE,qDAA6D;AAC7D,wDAAmE;AACnE,uDAAiE;AAEpD,QAAA,SAAS,GAAG,IAAA,wBAAc,EAAC;IACtC,QAAQ,EAAE;QACR,IAAI,EAAE,4BAA4B;KACnC;IACD,OAAO,EAAE;QACP,QAAQ,EAAE,uBAAe;QACzB,cAAc,EAAE,6BAAqB;QACrC,SAAS,EAAE,wBAAgB;QAC3B,YAAY,EAAE,2BAAmB;QACjC,WAAW,EAAE,0BAAkB;KAChC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"state-slice.js","sourceRoot":"","sources":["../../../../../lib/ocm/store/types/state-slice.ts"],"names":[],"mappings":""}
|
package/lib/@types/assets.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@redhat-cloud-services/types';
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { unmountComponentAtNode } from 'react-dom';
|
|
2
|
+
|
|
3
|
+
let element: HTMLDivElement | null = null;
|
|
4
|
+
|
|
5
|
+
function getMockContainer() {
|
|
6
|
+
return element;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Call this in your test if you intend to render a React component
|
|
11
|
+
* @example
|
|
12
|
+
* beforeEach(() => {
|
|
13
|
+
* initMockContainer();
|
|
14
|
+
* });
|
|
15
|
+
*/
|
|
16
|
+
function initMockContainer(
|
|
17
|
+
value: HTMLDivElement = document.createElement('div'),
|
|
18
|
+
baseElement: HTMLElement = document.body,
|
|
19
|
+
) {
|
|
20
|
+
element = value;
|
|
21
|
+
element.id = 'root';
|
|
22
|
+
baseElement.appendChild(element);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Attempts to unmount and remove the underlying DOM element.
|
|
27
|
+
*
|
|
28
|
+
* Returns true when the underlying DOM element is reset successfully; false otherwise.
|
|
29
|
+
*/
|
|
30
|
+
function tryResetMockContainer() {
|
|
31
|
+
let didResetMockContainer = false;
|
|
32
|
+
if (element) {
|
|
33
|
+
unmountComponentAtNode(element);
|
|
34
|
+
element.remove();
|
|
35
|
+
element = null;
|
|
36
|
+
didResetMockContainer = true;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
return didResetMockContainer;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export { getMockContainer, initMockContainer, tryResetMockContainer };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SetupServer } from 'msw/node';
|
|
2
|
+
|
|
3
|
+
let mockServer: SetupServer | null = null;
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Call this function if you intend to use a mock server.
|
|
7
|
+
* @param value the value returned from calling `import('msw/node').setupServer(handlers)`
|
|
8
|
+
* @see https://mswjs.io/docs/getting-started/mocks/rest-api
|
|
9
|
+
* @example
|
|
10
|
+
* import { setupServer, rest } from 'mws/node';
|
|
11
|
+
*
|
|
12
|
+
* beforeAll(() => {
|
|
13
|
+
* const handlers = []; // <-- Define `rest` handlers there
|
|
14
|
+
* setMockServer(setupServer(...handlers));
|
|
15
|
+
* getMockServer()?.listen({ onUnhandledRequest: 'error' });
|
|
16
|
+
* });
|
|
17
|
+
*/
|
|
18
|
+
function setMockServer(value: SetupServer | null) {
|
|
19
|
+
mockServer = value;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function getMockServer() {
|
|
23
|
+
return mockServer;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export { setMockServer, getMockServer };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { afterAll, afterEach, beforeEach, vi } from 'vitest';
|
|
2
|
+
import { initMockContainer, tryResetMockContainer } from './mock-container';
|
|
3
|
+
import { getMockServer } from './mock-server';
|
|
4
|
+
|
|
5
|
+
afterAll(() => {
|
|
6
|
+
getMockServer()?.close();
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
beforeEach(() => {
|
|
10
|
+
initMockContainer();
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
afterEach(() => {
|
|
14
|
+
getMockServer()?.resetHandlers();
|
|
15
|
+
tryResetMockContainer();
|
|
16
|
+
vi.clearAllMocks();
|
|
17
|
+
});
|