@commercetools-frontend/application-shell 22.8.4 → 22.9.1
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/dist/{application-entry-point-626d4f27.esm.js → application-entry-point-3613e4a5.esm.js} +1 -1
- package/dist/{application-entry-point-799dedf0.cjs.prod.js → application-entry-point-bde45acf.cjs.prod.js} +2 -2
- package/dist/{application-entry-point-c81156e7.cjs.dev.js → application-entry-point-fd6f9973.cjs.dev.js} +2 -2
- package/dist/commercetools-frontend-application-shell.cjs.dev.js +90 -68
- package/dist/commercetools-frontend-application-shell.cjs.prod.js +90 -68
- package/dist/commercetools-frontend-application-shell.esm.js +43 -53
- package/dist/{custom-view-dev-host-ebfb1a45.esm.js → custom-view-dev-host-5ce5a507.esm.js} +17 -27
- package/dist/{custom-view-dev-host-67d817e6.cjs.dev.js → custom-view-dev-host-621386e0.cjs.dev.js} +18 -28
- package/dist/declarations/src/components/navbar/use-navbar-state-manager.d.ts +1 -1
- package/dist/declarations/src/components/quick-access/types.d.ts +1 -1
- package/dist/declarations/src/components/user-settings-menu/index.d.ts +1 -1
- package/dist/declarations/src/constants.d.ts +7 -41
- package/dist/declarations/src/export-types.d.ts +1 -2
- package/dist/declarations/src/index.d.ts +1 -5
- package/dist/declarations/src/types/generated/settings.d.ts +223 -29
- package/dist/declarations/src/utils/index.d.ts +0 -5
- package/dist/index-37a25e51.cjs.dev.js +232 -0
- package/dist/index-6cd618cc.cjs.prod.js +232 -0
- package/dist/index-89e5711a.esm.js +206 -0
- package/dist/{index-78d3ae73.cjs.prod.js → index-beeb5dbb.cjs.prod.js} +64 -195
- package/dist/index-c0b19086.cjs.dev.js +2081 -0
- package/dist/index-e6cf101e.esm.js +2019 -0
- package/dist/{navbar-fabab486.esm.js → navbar-1d867dcd.esm.js} +20 -29
- package/dist/{navbar-050867c3.cjs.dev.js → navbar-5d636a16.cjs.dev.js} +28 -37
- package/dist/{navbar-86da110e.cjs.prod.js → navbar-78f58680.cjs.prod.js} +28 -37
- package/dist/{oidc-a55e3dd9.cjs.prod.js → oidc-0c6ca06c.cjs.dev.js} +48 -7
- package/dist/{oidc-db881d40.esm.js → oidc-95696f7b.esm.js} +37 -2
- package/dist/{oidc-97f361cb.cjs.dev.js → oidc-b2ac8a92.cjs.prod.js} +48 -7
- package/dist/{oidc-callback-5d640fb8.cjs.prod.js → oidc-callback-27fd978b.cjs.prod.js} +22 -32
- package/dist/{oidc-callback-55a5150a.esm.js → oidc-callback-7e6fcaff.esm.js} +22 -32
- package/dist/{oidc-callback-a63daea8.cjs.dev.js → oidc-callback-9d5cdf00.cjs.dev.js} +22 -32
- package/dist/{project-container-d56f2529.cjs.dev.js → project-container-0ef3869c.cjs.dev.js} +26 -36
- package/dist/{project-container-e18774d3.esm.js → project-container-b189c7a3.esm.js} +22 -32
- package/dist/{project-container-031be70e.cjs.prod.js → project-container-c6fb1e4f.cjs.prod.js} +26 -36
- package/dist/{project-expired-901cefec.cjs.prod.js → project-expired-911e2f79.cjs.prod.js} +20 -30
- package/dist/{project-expired-29485ba9.esm.js → project-expired-bd4f93bc.esm.js} +20 -30
- package/dist/{project-expired-c3456ca0.cjs.dev.js → project-expired-e2815596.cjs.dev.js} +20 -30
- package/dist/{project-not-found-085ef4e5.esm.js → project-not-found-bfd9a058.esm.js} +20 -30
- package/dist/{project-not-found-fca07541.cjs.dev.js → project-not-found-c0f09321.cjs.dev.js} +20 -30
- package/dist/{project-not-found-3d256c51.cjs.prod.js → project-not-found-e5255cac.cjs.prod.js} +20 -30
- package/dist/{project-not-initialized-aa3ee9b9.cjs.dev.js → project-not-initialized-0ed0f209.cjs.dev.js} +20 -30
- package/dist/{project-not-initialized-3eab0739.cjs.prod.js → project-not-initialized-2b02f3bb.cjs.prod.js} +20 -30
- package/dist/{project-not-initialized-7ea0312a.esm.js → project-not-initialized-8d0cab2e.esm.js} +20 -30
- package/dist/{project-suspended-d2e44ebc.cjs.dev.js → project-suspended-94956aec.cjs.dev.js} +20 -30
- package/dist/{project-suspended-4fa9898c.esm.js → project-suspended-cee209a6.esm.js} +20 -30
- package/dist/{project-suspended-75fb744e.cjs.prod.js → project-suspended-cfa2eb3b.cjs.prod.js} +20 -30
- package/dist/{quick-access-5339bf0a.cjs.dev.js → quick-access-1b73b555.cjs.dev.js} +13 -23
- package/dist/{quick-access-0171b3b4.esm.js → quick-access-232ff40f.esm.js} +13 -23
- package/dist/{quick-access-5d1221de.cjs.prod.js → quick-access-ce774311.cjs.prod.js} +13 -23
- package/dist/{redirect-to-login-307caa5d.esm.js → redirect-to-login-9535ddbc.esm.js} +9 -46
- package/dist/{redirect-to-login-27195c81.cjs.dev.js → redirect-to-login-aa538da2.cjs.dev.js} +10 -47
- package/dist/{redirect-to-login-0d640e8f.cjs.prod.js → redirect-to-login-ee9f3801.cjs.prod.js} +10 -47
- package/dist/{redirect-to-logout-96629236.esm.js → redirect-to-logout-3a0798c1.esm.js} +21 -31
- package/dist/{redirect-to-logout-a70923e8.cjs.prod.js → redirect-to-logout-96e94d9d.cjs.prod.js} +21 -31
- package/dist/{redirect-to-logout-3a2b1fa5.cjs.dev.js → redirect-to-logout-ccdd9a48.cjs.dev.js} +21 -31
- package/dist/{requests-in-flight-loader-079ab400.cjs.prod.js → requests-in-flight-loader-7f4804b4.cjs.prod.js} +22 -32
- package/dist/{requests-in-flight-loader-6e0036d5.esm.js → requests-in-flight-loader-8333ff01.esm.js} +22 -32
- package/dist/{requests-in-flight-loader-958eb383.cjs.dev.js → requests-in-flight-loader-b48dcc38.cjs.dev.js} +22 -32
- package/dist/{service-page-project-switcher-df3d126a.cjs.prod.js → service-page-project-switcher-d656d2f0.cjs.prod.js} +1 -1
- package/dist/{service-page-project-switcher-b7bd8abf.esm.js → service-page-project-switcher-dd1d0479.esm.js} +1 -1
- package/dist/{service-page-project-switcher-c8bc7002.cjs.dev.js → service-page-project-switcher-ea2d1f5b.cjs.dev.js} +1 -1
- package/dist/{use-applications-menu-acb9c2a6.cjs.dev.js → use-applications-menu-10d6d71b.cjs.prod.js} +1 -2
- package/dist/{use-applications-menu-ab2cd8e4.esm.js → use-applications-menu-902e4f5f.esm.js} +1 -2
- package/dist/{use-applications-menu-f0048898.cjs.prod.js → use-applications-menu-c03f484f.cjs.dev.js} +1 -2
- package/dist/{user-settings-menu-fb16a654.esm.js → user-settings-menu-5841d422.esm.js} +2 -62
- package/dist/{user-settings-menu-70934c89.cjs.dev.js → user-settings-menu-59dbf5d2.cjs.dev.js} +3 -63
- package/dist/{user-settings-menu-1c4bbef3.cjs.prod.js → user-settings-menu-70751be9.cjs.prod.js} +3 -63
- package/dist/{version-tracker-1b7e512b.esm.js → version-tracker-8e09ba95.esm.js} +44 -16
- package/dist/{version-tracker-b7102920.cjs.prod.js → version-tracker-b14edb65.cjs.prod.js} +45 -17
- package/dist/{version-tracker-946fe271.cjs.dev.js → version-tracker-e862fb1a.cjs.dev.js} +45 -17
- package/package.json +18 -21
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +1 -2
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +1 -2
- package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +1 -2
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +5 -26
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +5 -26
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +3 -24
- package/dist/configure-apollo-7220061a.cjs.dev.js +0 -821
- package/dist/configure-apollo-b9019f27.esm.js +0 -765
- package/dist/configure-apollo-c401b506.cjs.prod.js +0 -815
- package/dist/constants-0b9c2426.esm.js +0 -68
- package/dist/constants-0da1db32.cjs.prod.js +0 -78
- package/dist/constants-bef5a843.cjs.dev.js +0 -78
- package/dist/declarations/src/apollo-links/error-link.d.ts +0 -2
- package/dist/declarations/src/apollo-links/header-link.d.ts +0 -3
- package/dist/declarations/src/apollo-links/index.d.ts +0 -4
- package/dist/declarations/src/apollo-links/token-retry-link.d.ts +0 -3
- package/dist/declarations/src/apollo-links/utils.d.ts +0 -10
- package/dist/declarations/src/components/custom-view-loader/custom-view-loader.d.ts +0 -8
- package/dist/declarations/src/components/custom-view-loader/index.d.ts +0 -1
- package/dist/declarations/src/components/custom-view-loader/messages.d.ts +0 -7
- package/dist/declarations/src/configure-apollo.d.ts +0 -7
- package/dist/declarations/src/hooks/apollo-hooks/apollo-hooks.d.ts +0 -13
- package/dist/declarations/src/hooks/apollo-hooks/index.d.ts +0 -1
- package/dist/declarations/src/utils/apollo-client-runtime-cache.d.ts +0 -4
- package/dist/declarations/src/utils/apollo-context.d.ts +0 -15
- package/dist/declarations/src/utils/get-correlation-id/get-correlation-id.d.ts +0 -3
- package/dist/declarations/src/utils/get-correlation-id/index.d.ts +0 -1
- package/dist/declarations/src/utils/http-client.d.ts +0 -31
- package/dist/declarations/src/utils/logger.d.ts +0 -10
- package/dist/declarations/src/utils/oidc-storage.d.ts +0 -11
- package/dist/declarations/src/utils/select-project-key-from-url/index.d.ts +0 -1
- package/dist/declarations/src/utils/select-project-key-from-url/select-project-key-from-url.d.ts +0 -1
- package/dist/declarations/src/utils/select-team-id-from-storage/index.d.ts +0 -1
- package/dist/declarations/src/utils/select-team-id-from-storage/select-team-id-from-storage.d.ts +0 -1
- package/dist/declarations/src/utils/select-user-id/index.d.ts +0 -1
- package/dist/declarations/src/utils/select-user-id/select-user-id.d.ts +0 -1
- package/dist/index-8fa9e7c2.cjs.dev.js +0 -2225
- package/dist/index-cc877433.esm.js +0 -2159
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
|
|
2
|
+
import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
|
|
3
|
+
import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
|
|
4
|
+
import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor';
|
|
5
|
+
import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/for-each';
|
|
6
|
+
import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors';
|
|
7
|
+
import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
|
|
8
|
+
import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
|
|
9
|
+
import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
|
|
10
|
+
import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
|
|
11
|
+
import _reduceInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/reduce';
|
|
12
|
+
import _Object$entries from '@babel/runtime-corejs3/core-js-stable/object/entries';
|
|
13
|
+
import _Reflect$has from '@babel/runtime-corejs3/core-js-stable/reflect/has';
|
|
14
|
+
import { applyMiddleware, configureStore, combineReducers } from '@reduxjs/toolkit';
|
|
15
|
+
import mapValues from 'lodash/mapValues';
|
|
16
|
+
import omitEmpty from 'omit-empty-es';
|
|
17
|
+
import thunk from 'redux-thunk';
|
|
18
|
+
import { logger, selectProjectKeyFromUrl, getCorrelationId, selectUserId, oidcStorage, selectTeamIdFromStorage } from '@commercetools-frontend/application-shell-connectors';
|
|
19
|
+
import { SHOW_LOADING, HIDE_LOADING, NOTIFICATION_KINDS_PAGE, HIDE_ALL_PAGE_NOTIFICATIONS, SUPPORTED_HEADERS } from '@commercetools-frontend/constants';
|
|
20
|
+
import { removeNotification, ADD_NOTIFICATION, REMOVE_NOTIFICATION, middleware, reducer } from '@commercetools-frontend/notifications';
|
|
21
|
+
import { createMiddleware } from '@commercetools-frontend/sdk';
|
|
22
|
+
import { lazy } from 'react';
|
|
23
|
+
import _indexOfInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/index-of';
|
|
24
|
+
import _sliceInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/slice';
|
|
25
|
+
import _includesInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/includes';
|
|
26
|
+
import { reportErrorToSentry } from '@commercetools-frontend/sentry';
|
|
27
|
+
import { selectPageNotifications } from '@commercetools-frontend/react-notifications';
|
|
28
|
+
import _startsWithInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/starts-with';
|
|
29
|
+
import { createLogger } from 'redux-logger';
|
|
30
|
+
|
|
31
|
+
const isShowRequestInFlightAction = action => action.type === SHOW_LOADING;
|
|
32
|
+
const isHideRequestInFlightAction = action => action.type === HIDE_LOADING;
|
|
33
|
+
const excludeFirstOccurrence = (list, item) => {
|
|
34
|
+
const index = _indexOfInstanceProperty(list).call(list, item);
|
|
35
|
+
return [..._sliceInstanceProperty(list).call(list, 0, index), ..._sliceInstanceProperty(list).call(list, index + 1)];
|
|
36
|
+
};
|
|
37
|
+
var requestsInFlightReducer = ((requestsInFlight, action) => {
|
|
38
|
+
if (!requestsInFlight || !action) return [];
|
|
39
|
+
if (isShowRequestInFlightAction(action)) return [...requestsInFlight, action.payload];
|
|
40
|
+
if (isHideRequestInFlightAction(action)) {
|
|
41
|
+
// may only remove first occurence
|
|
42
|
+
if (!_includesInstanceProperty(requestsInFlight).call(requestsInFlight, action.payload)) {
|
|
43
|
+
reportErrorToSentry(new Error("Tried to hide \"".concat(action.payload, "\", but it was not progressing!")));
|
|
44
|
+
return requestsInFlight;
|
|
45
|
+
}
|
|
46
|
+
return excludeFirstOccurrence(requestsInFlight, action.payload);
|
|
47
|
+
}
|
|
48
|
+
return requestsInFlight;
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
const isAddNotificationErrorAction = action => {
|
|
52
|
+
const errorAction = action;
|
|
53
|
+
return errorAction.type === ADD_NOTIFICATION && errorAction.payload && (errorAction.payload.kind === NOTIFICATION_KINDS_PAGE['api-error'] || errorAction.payload.kind === NOTIFICATION_KINDS_PAGE['unexpected-error']);
|
|
54
|
+
};
|
|
55
|
+
const isHideAllNotificationsAction = action => action.type === HIDE_ALL_PAGE_NOTIFICATIONS;
|
|
56
|
+
const hideNotificationsMiddleware = _ref => {
|
|
57
|
+
let getState = _ref.getState;
|
|
58
|
+
return next => action => {
|
|
59
|
+
if (isHideAllNotificationsAction(action) || isAddNotificationErrorAction(action)) {
|
|
60
|
+
var _context;
|
|
61
|
+
const state = getState();
|
|
62
|
+
_forEachInstanceProperty(_context = selectPageNotifications(state)).call(_context, notification => {
|
|
63
|
+
next(removeNotification(notification.id));
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
return next(action);
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const loggerMiddleware = createLogger({
|
|
71
|
+
logger,
|
|
72
|
+
collapsed: true,
|
|
73
|
+
colors: {
|
|
74
|
+
title: () => '#000000',
|
|
75
|
+
prevState: () => '#9E9E9E',
|
|
76
|
+
action: () => '#03A9F4',
|
|
77
|
+
nextState: () => '#4CAF50',
|
|
78
|
+
error: () => '#F20404'
|
|
79
|
+
},
|
|
80
|
+
// WARNING: Enabling this option causes huge performance degradation.
|
|
81
|
+
// Only enable if you want detailed debugging.
|
|
82
|
+
diff: false,
|
|
83
|
+
predicate: (_getState, action) => {
|
|
84
|
+
if (!action) return false;
|
|
85
|
+
const type = action.type,
|
|
86
|
+
payload = action.payload;
|
|
87
|
+
if (!type) return false;
|
|
88
|
+
if (_startsWithInstanceProperty(type).call(type, 'SHOW_') || _startsWithInstanceProperty(type).call(type, 'HIDE_') || _startsWithInstanceProperty(type).call(type, 'APOLLO_')) return false;
|
|
89
|
+
switch (type) {
|
|
90
|
+
case REMOVE_NOTIFICATION:
|
|
91
|
+
return false;
|
|
92
|
+
case ADD_NOTIFICATION:
|
|
93
|
+
{
|
|
94
|
+
const ignoredKinds = ['api-error', 'unexpected-error'];
|
|
95
|
+
return !_includesInstanceProperty(ignoredKinds).call(ignoredKinds, payload.kind);
|
|
96
|
+
}
|
|
97
|
+
default:
|
|
98
|
+
return true;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
104
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context3 = ownKeys(Object(t))).call(_context3, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
105
|
+
const mergeObjectValues = object => {
|
|
106
|
+
var _context;
|
|
107
|
+
return _reduceInstanceProperty(_context = _Object$entries(object)).call(_context, (acc, _ref) => {
|
|
108
|
+
let _ref2 = _slicedToArray(_ref, 2),
|
|
109
|
+
value = _ref2[1];
|
|
110
|
+
return _objectSpread(_objectSpread({}, acc), value);
|
|
111
|
+
}, {});
|
|
112
|
+
};
|
|
113
|
+
const patchedGetCorrelationId = () => getCorrelationId({
|
|
114
|
+
userId: selectUserId()
|
|
115
|
+
});
|
|
116
|
+
const getAdditionalHeaders = () => {
|
|
117
|
+
const sessionToken = oidcStorage.getSessionToken();
|
|
118
|
+
return omitEmpty({
|
|
119
|
+
[SUPPORTED_HEADERS.AUTHORIZATION]: sessionToken ? "Bearer ".concat(sessionToken) : undefined,
|
|
120
|
+
[SUPPORTED_HEADERS.X_APPLICATION_ID]: window.app.applicationIdentifier,
|
|
121
|
+
[SUPPORTED_HEADERS.X_CUSTOM_VIEW_ID]: window.app.customViewId,
|
|
122
|
+
[SUPPORTED_HEADERS.X_TEAM_ID]: selectTeamIdFromStorage()
|
|
123
|
+
});
|
|
124
|
+
};
|
|
125
|
+
const sdkMiddleware = createMiddleware({
|
|
126
|
+
getCorrelationId: patchedGetCorrelationId,
|
|
127
|
+
getProjectKey: selectProjectKeyFromUrl,
|
|
128
|
+
getAdditionalHeaders
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* @deprecated: This function should not be used directly anymore.
|
|
133
|
+
*/
|
|
134
|
+
const applyDefaultMiddlewares = function () {
|
|
135
|
+
for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
136
|
+
middlewares[_key] = arguments[_key];
|
|
137
|
+
}
|
|
138
|
+
return applyMiddleware(...middlewares, thunk, loggerMiddleware);
|
|
139
|
+
};
|
|
140
|
+
const createInternalReducer = function () {
|
|
141
|
+
let injectedReducers = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
142
|
+
let preloadedState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
143
|
+
// not providing preloadedStateReducers to combineReducers will cause an error
|
|
144
|
+
// when preloadedState contains keys other than requestsInFlight and
|
|
145
|
+
// notifications:
|
|
146
|
+
// Unexpected key "new Key" found in preloadedState argument passed to createStore. Expected to find one of the known reducer keys instead: "requestsInFlight", "notifications". Unexpected keys will be ignored.
|
|
147
|
+
// https://redux.js.org/api/createstore#createstorereducer-preloadedstate-enhancer
|
|
148
|
+
const preloadedStateReducers = mapValues(preloadedState, value => () => value);
|
|
149
|
+
|
|
150
|
+
// NOTE: since we don't know in advance which reducers will be injected,
|
|
151
|
+
// we pass an `unknown` type to express this uncertainty and make the compiler happy.
|
|
152
|
+
return combineReducers(_objectSpread(_objectSpread({
|
|
153
|
+
requestsInFlight: requestsInFlightReducer,
|
|
154
|
+
notifications: reducer
|
|
155
|
+
}, injectedReducers), preloadedStateReducers));
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
// We use a factory as it's more practicable for tests
|
|
159
|
+
// The application can import the configured store (the default export)
|
|
160
|
+
const createReduxStore = function () {
|
|
161
|
+
let preloadedState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
162
|
+
let additionalMiddlewares = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
163
|
+
const store = configureStore({
|
|
164
|
+
preloadedState,
|
|
165
|
+
reducer: createInternalReducer(undefined, preloadedState),
|
|
166
|
+
devTools: {
|
|
167
|
+
actionsDenylist: [SHOW_LOADING, HIDE_LOADING]
|
|
168
|
+
},
|
|
169
|
+
middleware: getDefaultMiddleware => [...additionalMiddlewares, hideNotificationsMiddleware, middleware, sdkMiddleware, ...getDefaultMiddleware({
|
|
170
|
+
// https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data
|
|
171
|
+
serializableCheck: false,
|
|
172
|
+
// This default check is logging warnings to console for some MC FE tests, probably
|
|
173
|
+
// due to lower resources when running tests on CI.
|
|
174
|
+
// We don't consider this check to be very valuable in this context so we decided
|
|
175
|
+
// to turn it off.
|
|
176
|
+
// https://redux-toolkit.js.org/api/immutabilityMiddleware
|
|
177
|
+
immutableCheck: false
|
|
178
|
+
}), loggerMiddleware]
|
|
179
|
+
});
|
|
180
|
+
const enhancedStore = store;
|
|
181
|
+
|
|
182
|
+
// Enable reducers to be injected on runtime (see `<InjectReducer>`)
|
|
183
|
+
enhancedStore.injectedReducers = {};
|
|
184
|
+
enhancedStore.injectReducers = _ref3 => {
|
|
185
|
+
let id = _ref3.id,
|
|
186
|
+
reducers = _ref3.reducers;
|
|
187
|
+
const hasReducerBeenInjected = _Reflect$has(enhancedStore.injectedReducers, id) && enhancedStore.injectedReducers[id] === reducers;
|
|
188
|
+
if (!hasReducerBeenInjected) {
|
|
189
|
+
// Keep track of the reducer by id, so we can check if it's been injected aleady
|
|
190
|
+
enhancedStore.injectedReducers[id] = reducers;
|
|
191
|
+
// ...when we create the new reducer though, we spread the reducers from each namespace
|
|
192
|
+
enhancedStore.replaceReducer(createInternalReducer(mergeObjectValues(enhancedStore.injectedReducers)));
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
enhancedStore.removeReducers = _ref4 => {
|
|
196
|
+
let id = _ref4.id;
|
|
197
|
+
delete enhancedStore.injectedReducers[id];
|
|
198
|
+
enhancedStore.replaceReducer(createInternalReducer(mergeObjectValues(enhancedStore.injectedReducers)));
|
|
199
|
+
};
|
|
200
|
+
return enhancedStore;
|
|
201
|
+
};
|
|
202
|
+
var internalReduxStore = createReduxStore();
|
|
203
|
+
|
|
204
|
+
const RouteCatchAll = /*#__PURE__*/lazy(() => import('./route-catch-all-4af77675.esm.js' /* webpackChunkName: "route-catch-all" */));
|
|
205
|
+
|
|
206
|
+
export { RouteCatchAll as R, applyDefaultMiddlewares as a, createReduxStore as c, internalReduxStore as i };
|