@commercetools-frontend/application-shell 21.0.0-rc.0 → 21.0.0-rc.5
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/README.md +1 -1
- package/dist/{application-entry-point-b627328b.cjs.prod.js → application-entry-point-6a59e2c4.cjs.prod.js} +76 -41
- package/dist/{application-entry-point-c737344a.esm.js → application-entry-point-e2fd4f25.esm.js} +67 -23
- package/dist/{application-entry-point-a804b3d4.cjs.dev.js → application-entry-point-fdaa0c63.cjs.dev.js} +85 -41
- package/dist/commercetools-frontend-application-shell.cjs.dev.js +7 -8
- package/dist/commercetools-frontend-application-shell.cjs.prod.js +7 -8
- package/dist/commercetools-frontend-application-shell.esm.js +5 -6
- package/dist/declarations/src/components/application-entry-point/application-entry-point.d.ts +1 -0
- package/dist/declarations/src/components/application-shell/application-shell.d.ts +2 -1
- package/dist/declarations/src/components/application-shell-provider/use-coerced-environment-values.d.ts +1 -1
- package/dist/declarations/src/components/project-container/project-container.d.ts +1 -0
- package/dist/declarations/src/test-utils/test-utils.d.ts +2 -1
- package/dist/formatters-1c23c0a9.esm.js +93 -0
- package/dist/{oidc-7e7761de.cjs.dev.js → formatters-a5bb12eb.cjs.prod.js} +52 -38
- package/dist/{oidc-be09bd90.cjs.prod.js → formatters-e4b9b9dc.cjs.dev.js} +52 -38
- package/dist/{index-603b598e.cjs.dev.js → index-25695804.cjs.dev.js} +67 -62
- package/dist/{index-64ee0fb3.cjs.prod.js → index-7199f587.cjs.prod.js} +57 -54
- package/dist/{index-9e98c47d.esm.js → index-fdebc39f.esm.js} +28 -23
- package/dist/oidc-cb5c92bd.esm.js +39 -0
- package/dist/oidc-d5829556.cjs.prod.js +46 -0
- package/dist/oidc-f43cd8da.cjs.dev.js +46 -0
- package/dist/{project-expired-69a9f8bb.cjs.dev.js → project-expired-663949c6.cjs.dev.js} +8 -9
- package/dist/{project-expired-40e3fc90.cjs.prod.js → project-expired-b6b7b868.cjs.prod.js} +8 -9
- package/dist/{project-expired-374d89b7.esm.js → project-expired-bc2dd11d.esm.js} +8 -9
- package/dist/{project-not-found-516009ae.esm.js → project-not-found-34a53bbf.esm.js} +8 -9
- package/dist/{project-not-found-883f0dc8.cjs.dev.js → project-not-found-55f5b3f9.cjs.prod.js} +8 -9
- package/dist/{project-not-found-1456109d.cjs.prod.js → project-not-found-8855ea12.cjs.dev.js} +8 -9
- package/dist/{project-not-initialized-b9ae0d13.esm.js → project-not-initialized-144cdc9f.esm.js} +8 -9
- package/dist/{project-not-initialized-a5df8c78.cjs.dev.js → project-not-initialized-76e84997.cjs.dev.js} +8 -9
- package/dist/{project-not-initialized-5ca81ae8.cjs.prod.js → project-not-initialized-c1d7d868.cjs.prod.js} +8 -9
- package/dist/{project-suspended-40039731.cjs.dev.js → project-suspended-6c1a8081.cjs.prod.js} +8 -9
- package/dist/{project-suspended-fc33a971.esm.js → project-suspended-908e50e3.esm.js} +8 -9
- package/dist/{project-suspended-8ed251b2.cjs.prod.js → project-suspended-dec52392.cjs.dev.js} +8 -9
- package/dist/{quick-access-c5fdf402.cjs.dev.js → quick-access-99232516.cjs.dev.js} +5 -6
- package/dist/{quick-access-e436397a.cjs.prod.js → quick-access-e91dcf86.cjs.prod.js} +5 -6
- package/dist/{quick-access-62077068.esm.js → quick-access-fec42a16.esm.js} +5 -6
- package/dist/{service-page-project-switcher-83de4c79.cjs.prod.js → service-page-project-switcher-92c227cb.cjs.prod.js} +1 -1
- package/dist/{service-page-project-switcher-02903d80.cjs.dev.js → service-page-project-switcher-a3c48bb9.cjs.dev.js} +1 -1
- package/dist/{service-page-project-switcher-1ebc3f88.esm.js → service-page-project-switcher-edb4667c.esm.js} +1 -1
- package/package.json +18 -18
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +4 -4
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +4 -4
- package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +2 -2
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +9 -5
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +9 -5
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +9 -5
- package/dist/constants-33a16227.esm.js +0 -46
- package/dist/constants-745aeeca.cjs.prod.js +0 -54
- package/dist/constants-fdbe0e9d.cjs.dev.js +0 -54
- package/dist/oidc-8e05c00e.esm.js +0 -84
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var applicationEntryPoint = require('./application-entry-point-
|
|
3
|
+
var applicationEntryPoint = require('./application-entry-point-6a59e2c4.cjs.prod.js');
|
|
4
4
|
var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
5
5
|
var _styled = require('@emotion/styled/base');
|
|
6
6
|
var _pt = require('prop-types');
|
|
@@ -18,14 +18,14 @@ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/obje
|
|
|
18
18
|
var react = require('react');
|
|
19
19
|
var reactRouterDom = require('react-router-dom');
|
|
20
20
|
var react$2 = require('@emotion/react');
|
|
21
|
-
var constants
|
|
21
|
+
var constants = require('@commercetools-frontend/constants');
|
|
22
22
|
var sentry = require('@commercetools-frontend/sentry');
|
|
23
23
|
var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
|
|
24
24
|
var applicationComponents = require('@commercetools-frontend/application-components');
|
|
25
25
|
var reactNotifications = require('@commercetools-frontend/react-notifications');
|
|
26
26
|
var i18n = require('@commercetools-frontend/i18n');
|
|
27
27
|
var uuid = require('uuid');
|
|
28
|
-
var
|
|
28
|
+
var formatters = require('./formatters-a5bb12eb.cjs.prod.js');
|
|
29
29
|
var _URL = require('@babel/runtime-corejs3/core-js-stable/url');
|
|
30
30
|
var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
|
|
31
31
|
var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
@@ -33,7 +33,6 @@ require('lodash/upperFirst');
|
|
|
33
33
|
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
34
34
|
var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
35
35
|
var Perfume = require('perfume.js');
|
|
36
|
-
var _typeof = require('@babel/runtime-corejs3/helpers/typeof');
|
|
37
36
|
var _reverseInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/reverse');
|
|
38
37
|
var camelcase = require('lodash/camelCase');
|
|
39
38
|
var react$1 = require('@apollo/client/react');
|
|
@@ -41,7 +40,7 @@ var reactRedux = require('react-redux');
|
|
|
41
40
|
var history = require('@commercetools-frontend/browser-history');
|
|
42
41
|
var reactIntl = require('react-intl');
|
|
43
42
|
var _startsWithInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
|
|
44
|
-
var oidc = require('./oidc-
|
|
43
|
+
var oidc = require('./oidc-d5829556.cjs.prod.js');
|
|
45
44
|
var qss = require('qss');
|
|
46
45
|
var jwtDecode = require('jwt-decode');
|
|
47
46
|
var FailedAuthenticationSVG = require('@commercetools-frontend/assets/images/locked-diamond.svg');
|
|
@@ -157,7 +156,7 @@ var throttle__default = /*#__PURE__*/_interopDefault(throttle);
|
|
|
157
156
|
var _someInstanceProperty__default = /*#__PURE__*/_interopDefault(_someInstanceProperty);
|
|
158
157
|
|
|
159
158
|
function selectProjectKeyFromLocalStorage() {
|
|
160
|
-
return window.localStorage.getItem(
|
|
159
|
+
return window.localStorage.getItem(formatters.STORAGE_KEYS.ACTIVE_PROJECT_KEY);
|
|
161
160
|
}
|
|
162
161
|
|
|
163
162
|
var getPreviousProjectKey = function getPreviousProjectKey(defaultProjectKeyOfUser) {
|
|
@@ -182,7 +181,7 @@ var createApolloContextForProxyForwardTo = function createApolloContextForProxyF
|
|
|
182
181
|
};
|
|
183
182
|
|
|
184
183
|
var getSelectedDataLocaleForProject = function getSelectedDataLocaleForProject(projectLocales) {
|
|
185
|
-
var cachedDataLocale = window.localStorage.getItem(
|
|
184
|
+
var cachedDataLocale = window.localStorage.getItem(formatters.STORAGE_KEYS.SELECTED_DATA_LOCALE); // Make sure the cached locale is listed in the selected project
|
|
186
185
|
|
|
187
186
|
var isCachedDataLocaleIncludedInProjectLanguages = _includesInstanceProperty__default["default"](projectLocales).call(projectLocales, cachedDataLocale || '');
|
|
188
187
|
|
|
@@ -190,7 +189,7 @@ var getSelectedDataLocaleForProject = function getSelectedDataLocaleForProject(p
|
|
|
190
189
|
|
|
191
190
|
var defaultDataLocaleForProject = projectLocales[0]; // Cache it
|
|
192
191
|
|
|
193
|
-
window.localStorage.setItem(
|
|
192
|
+
window.localStorage.setItem(formatters.STORAGE_KEYS.SELECTED_DATA_LOCALE, defaultDataLocaleForProject);
|
|
194
193
|
return defaultDataLocaleForProject;
|
|
195
194
|
};
|
|
196
195
|
|
|
@@ -203,7 +202,7 @@ var ProjectDataLocale = function ProjectDataLocale(props) {
|
|
|
203
202
|
var handleSetProjectDataLocale = react.useCallback(function (locale) {
|
|
204
203
|
setLocale(locale); // Cache it
|
|
205
204
|
|
|
206
|
-
window.localStorage.setItem(
|
|
205
|
+
window.localStorage.setItem(formatters.STORAGE_KEYS.SELECTED_DATA_LOCALE, locale);
|
|
207
206
|
}, []);
|
|
208
207
|
return jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
209
208
|
children: props.children({
|
|
@@ -228,7 +227,7 @@ var isPlainTrackingListValue = function isPlainTrackingListValue(value) {
|
|
|
228
227
|
};
|
|
229
228
|
|
|
230
229
|
var isObjectTrackingListValue = function isObjectTrackingListValue(value) {
|
|
231
|
-
return
|
|
230
|
+
return typeof value === 'object';
|
|
232
231
|
};
|
|
233
232
|
|
|
234
233
|
var isHtmlElement = function isHtmlElement(node) {
|
|
@@ -413,7 +412,7 @@ var eventHandler = function eventHandler(name, trackingEventList) {
|
|
|
413
412
|
if (isPlainTrackingListValue(eventValue)) hierarchyKey = eventValue;else if (isObjectTrackingListValue(eventValue) && trackLabel && trackLabel in eventValue) hierarchyKey = eventValue[trackLabel];else {
|
|
414
413
|
logTracking({
|
|
415
414
|
action: trackEvent,
|
|
416
|
-
category:
|
|
415
|
+
category: typeof hierarchyKey === 'object' && trackLabel ? hierarchyKey[trackLabel] : hierarchyKey,
|
|
417
416
|
label: trackLabel
|
|
418
417
|
}, {
|
|
419
418
|
isIgnored: true
|
|
@@ -422,7 +421,7 @@ var eventHandler = function eventHandler(name, trackingEventList) {
|
|
|
422
421
|
}
|
|
423
422
|
logTracking({
|
|
424
423
|
action: trackEvent,
|
|
425
|
-
category:
|
|
424
|
+
category: typeof hierarchyKey === 'object' && trackLabel ? hierarchyKey[trackLabel] : hierarchyKey,
|
|
426
425
|
label: trackLabel
|
|
427
426
|
});
|
|
428
427
|
track(trackEvent, hierarchyKey, trackLabel);
|
|
@@ -625,7 +624,7 @@ var withoutProjectKeyClaim = function withoutProjectKeyClaim(scope) {
|
|
|
625
624
|
var _context;
|
|
626
625
|
|
|
627
626
|
return _filterInstanceProperty__default["default"](_context = scope.split(' ')).call(_context, function (claim) {
|
|
628
|
-
return !_startsWithInstanceProperty__default["default"](claim).call(claim,
|
|
627
|
+
return !_startsWithInstanceProperty__default["default"](claim).call(claim, formatters.OIDC_CLAIMS.PROJECT_KEY);
|
|
629
628
|
}).join(' ');
|
|
630
629
|
};
|
|
631
630
|
|
|
@@ -692,7 +691,7 @@ var hasCachedAuthenticationState = function hasCachedAuthenticationState() {
|
|
|
692
691
|
}
|
|
693
692
|
}
|
|
694
693
|
|
|
695
|
-
return window.localStorage.getItem(
|
|
694
|
+
return window.localStorage.getItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED) === 'true';
|
|
696
695
|
};
|
|
697
696
|
|
|
698
697
|
function useMcQuery(query, options) {
|
|
@@ -716,7 +715,7 @@ var AmILoggedIn = function AmILoggedIn(props) {
|
|
|
716
715
|
// is valid. We return null while the query is loading.
|
|
717
716
|
var _useMcQuery = useMcQuery(AmILoggedInQuery, {
|
|
718
717
|
context: {
|
|
719
|
-
target: constants
|
|
718
|
+
target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND,
|
|
720
719
|
skipTokenRetry: true
|
|
721
720
|
},
|
|
722
721
|
// NOTE: With `no-cache` the `useQuery` will not trigger a
|
|
@@ -735,20 +734,20 @@ var AmILoggedIn = function AmILoggedIn(props) {
|
|
|
735
734
|
if (!data) {
|
|
736
735
|
// In case the request is 200 but there is no data, we assume
|
|
737
736
|
// there are some errors.
|
|
738
|
-
window.localStorage.removeItem(
|
|
737
|
+
window.localStorage.removeItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED);
|
|
739
738
|
} else {
|
|
740
739
|
// Even though the login page might set this flag, we just make sure that
|
|
741
740
|
// we do it here as well. This will help in the future when we eventually
|
|
742
741
|
// move the auth service to itw own domain, in which case the local storage
|
|
743
742
|
// is not shared anymore.
|
|
744
|
-
window.localStorage.setItem(
|
|
743
|
+
window.localStorage.setItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED, String(true));
|
|
745
744
|
}
|
|
746
745
|
},
|
|
747
746
|
onError: function onError() {
|
|
748
747
|
// The query fails without the `mcAccessToken`. In this case the caching
|
|
749
748
|
// needs to be unset as otherwise the application will end up in a infinte
|
|
750
749
|
// redirect loop.
|
|
751
|
-
window.localStorage.removeItem(
|
|
750
|
+
window.localStorage.removeItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED);
|
|
752
751
|
}
|
|
753
752
|
}),
|
|
754
753
|
data = _useMcQuery.data,
|
|
@@ -1305,7 +1304,7 @@ var FetchUser = function FetchUser(props) {
|
|
|
1305
1304
|
var _useMcQuery = useMcQuery(LoggedInUserQuery, {
|
|
1306
1305
|
onError: sentry.reportErrorToSentry,
|
|
1307
1306
|
context: {
|
|
1308
|
-
target: constants
|
|
1307
|
+
target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
|
|
1309
1308
|
}
|
|
1310
1309
|
}),
|
|
1311
1310
|
loading = _useMcQuery.loading,
|
|
@@ -1330,7 +1329,7 @@ var pushDependencyVersionCounter = function pushDependencyVersionCounter(_ref) {
|
|
|
1330
1329
|
var payload = _ref.payload;
|
|
1331
1330
|
return sdk.actions.post({
|
|
1332
1331
|
uri: '/metrics/counters',
|
|
1333
|
-
mcApiProxyTarget: constants
|
|
1332
|
+
mcApiProxyTarget: constants.MC_API_PROXY_TARGETS.MC_METRICS,
|
|
1334
1333
|
payload: _JSON$stringify__default["default"](payload)
|
|
1335
1334
|
});
|
|
1336
1335
|
};
|
|
@@ -1382,7 +1381,7 @@ var FetchProject = function FetchProject(props) {
|
|
|
1382
1381
|
projectKey: props.projectKey
|
|
1383
1382
|
},
|
|
1384
1383
|
context: {
|
|
1385
|
-
target: constants
|
|
1384
|
+
target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
|
|
1386
1385
|
},
|
|
1387
1386
|
skip: props.skip === true
|
|
1388
1387
|
}),
|
|
@@ -1680,7 +1679,7 @@ var renderLabel = function renderLabel(menu, applicationLanguage) {
|
|
|
1680
1679
|
});
|
|
1681
1680
|
|
|
1682
1681
|
if (localizedLabel) return localizedLabel.value;
|
|
1683
|
-
return constants
|
|
1682
|
+
return constants.NO_VALUE_FALLBACK;
|
|
1684
1683
|
};
|
|
1685
1684
|
|
|
1686
1685
|
var MenuItem$1 = _styled__default["default"]("div", {
|
|
@@ -1785,7 +1784,7 @@ var UserSettingsMenuBody = function UserSettingsMenuBody(props) {
|
|
|
1785
1784
|
})
|
|
1786
1785
|
}), jsxRuntime.jsx("a", {
|
|
1787
1786
|
css: getUserSettingsMenuItemLinkStyles(),
|
|
1788
|
-
href: constants
|
|
1787
|
+
href: constants.SUPPORT_PORTAL_URL,
|
|
1789
1788
|
rel: "noopener noreferrer",
|
|
1790
1789
|
target: "_blank",
|
|
1791
1790
|
"data-track-component": "Navigation-Support-links",
|
|
@@ -1807,7 +1806,7 @@ var UserSettingsMenuBody = function UserSettingsMenuBody(props) {
|
|
|
1807
1806
|
css: getUserSettingsMenuItemLinkStyles() // NOTE: we want to redirect to a new page so that the
|
|
1808
1807
|
// server can remove things like cookie for access token.
|
|
1809
1808
|
,
|
|
1810
|
-
href: "/logout?reason=".concat(constants
|
|
1809
|
+
href: "/logout?reason=".concat(constants.LOGOUT_REASONS.USER),
|
|
1811
1810
|
"data-test": "logout-button",
|
|
1812
1811
|
"data-user-settings-menu": true,
|
|
1813
1812
|
children: [jsxRuntime.jsx(MenuItem$1, {
|
|
@@ -1990,7 +1989,7 @@ var ProjectSwitcher = function ProjectSwitcher(props) {
|
|
|
1990
1989
|
var _useMcQuery = useMcQuery(ProjectsQuery, {
|
|
1991
1990
|
onError: sentry.reportErrorToSentry,
|
|
1992
1991
|
context: {
|
|
1993
|
-
target: constants
|
|
1992
|
+
target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
|
|
1994
1993
|
}
|
|
1995
1994
|
}),
|
|
1996
1995
|
loading = _useMcQuery.loading,
|
|
@@ -2210,7 +2209,7 @@ var AppBar = function AppBar(props) {
|
|
|
2210
2209
|
children: [jsxRuntime.jsxs(Spacings__default["default"].Inline, {
|
|
2211
2210
|
alignItems: "center",
|
|
2212
2211
|
children: [jsxRuntime.jsx("div", {
|
|
2213
|
-
id:
|
|
2212
|
+
id: formatters.CONTAINERS.LOCALE_SWITCHER
|
|
2214
2213
|
}), function () {
|
|
2215
2214
|
if (!props.user) {
|
|
2216
2215
|
return jsxRuntime.jsx(LoadingPlaceholder, {
|
|
@@ -2330,19 +2329,19 @@ var LocaleSwitcher = function LocaleSwitcher(props) {
|
|
|
2330
2329
|
LocaleSwitcher.propTypes = {};
|
|
2331
2330
|
|
|
2332
2331
|
var ProjectNotFound = /*#__PURE__*/react.lazy(function () {
|
|
2333
|
-
return Promise.resolve().then(function () { return require('./project-not-found-
|
|
2332
|
+
return Promise.resolve().then(function () { return require('./project-not-found-55f5b3f9.cjs.prod.js'
|
|
2334
2333
|
/* webpackChunkName: "project-not-found" */
|
|
2335
2334
|
); });
|
|
2336
2335
|
});
|
|
2337
2336
|
|
|
2338
2337
|
var ProjectExpired = /*#__PURE__*/react.lazy(function () {
|
|
2339
|
-
return Promise.resolve().then(function () { return require('./project-expired-
|
|
2338
|
+
return Promise.resolve().then(function () { return require('./project-expired-b6b7b868.cjs.prod.js'
|
|
2340
2339
|
/* webpackChunkName: "project-expired" */
|
|
2341
2340
|
); });
|
|
2342
2341
|
});
|
|
2343
2342
|
|
|
2344
2343
|
var ProjectNotInitialized = /*#__PURE__*/react.lazy(function () {
|
|
2345
|
-
return Promise.resolve().then(function () { return require('./project-not-initialized-
|
|
2344
|
+
return Promise.resolve().then(function () { return require('./project-not-initialized-c1d7d868.cjs.prod.js'
|
|
2346
2345
|
/* webpackChunkName: "project-not-initialized" */
|
|
2347
2346
|
); });
|
|
2348
2347
|
});
|
|
@@ -2389,7 +2388,7 @@ var RedirectToProjectCreate = function RedirectToProjectCreate() {
|
|
|
2389
2388
|
RedirectToProjectCreate.displayName = 'RedirectToProjectCreate';
|
|
2390
2389
|
|
|
2391
2390
|
var ProjectSuspended = /*#__PURE__*/react.lazy(function () {
|
|
2392
|
-
return Promise.resolve().then(function () { return require('./project-suspended-
|
|
2391
|
+
return Promise.resolve().then(function () { return require('./project-suspended-6c1a8081.cjs.prod.js'
|
|
2393
2392
|
/* webpackChunkName: "project-suspended" */
|
|
2394
2393
|
); });
|
|
2395
2394
|
});
|
|
@@ -2436,13 +2435,13 @@ var ProjectContainer = function ProjectContainer(props) {
|
|
|
2436
2435
|
* is inserted in the DOM tree.
|
|
2437
2436
|
* "
|
|
2438
2437
|
*/
|
|
2439
|
-
setLocaleSwitcherNode(document.getElementById(
|
|
2438
|
+
setLocaleSwitcherNode(document.getElementById(formatters.CONTAINERS.LOCALE_SWITCHER));
|
|
2440
2439
|
}, [setLocaleSwitcherNode]);
|
|
2441
2440
|
var projectKey = props.match.params.projectKey;
|
|
2442
2441
|
react.useEffect(function () {
|
|
2443
2442
|
// Ensure to sync the `projectKey` from the URL with localStorage.
|
|
2444
2443
|
if (projectKey) {
|
|
2445
|
-
window.localStorage.setItem(
|
|
2444
|
+
window.localStorage.setItem(formatters.STORAGE_KEYS.ACTIVE_PROJECT_KEY, projectKey);
|
|
2446
2445
|
}
|
|
2447
2446
|
}, [projectKey]); // }
|
|
2448
2447
|
|
|
@@ -2460,7 +2459,7 @@ var ProjectContainer = function ProjectContainer(props) {
|
|
|
2460
2459
|
*/
|
|
2461
2460
|
|
|
2462
2461
|
if (hasNoProjects && props.environment.enableSignUp !== true && props.environment.servedByProxy) return jsxRuntime.jsx(reactRouterDom.Redirect, {
|
|
2463
|
-
to: "/logout?reason=".concat(constants
|
|
2462
|
+
to: "/logout?reason=".concat(constants.LOGOUT_REASONS.NO_PROJECTS)
|
|
2464
2463
|
});
|
|
2465
2464
|
if (hasNoProjects && props.environment.enableSignUp) return jsxRuntime.jsxs(reactRouterDom.Switch, {
|
|
2466
2465
|
children: [jsxRuntime.jsx(reactRouterDom.Route, {
|
|
@@ -2484,7 +2483,7 @@ var ProjectContainer = function ProjectContainer(props) {
|
|
|
2484
2483
|
if (isProjectLoading) return jsxRuntime.jsx(ApplicationLoader, {});
|
|
2485
2484
|
if (!project) return jsxRuntime.jsx(ProjectNotFound, {});
|
|
2486
2485
|
if (project.suspension && project.suspension.isActive) return jsxRuntime.jsx(ProjectSuspended, {
|
|
2487
|
-
isTemporary: project.suspension.reason ===
|
|
2486
|
+
isTemporary: project.suspension.reason === formatters.SUSPENSION_REASONS.TEMPORARY_MAINTENANCE
|
|
2488
2487
|
});
|
|
2489
2488
|
if (project.expiry && project.expiry.isActive) return jsxRuntime.jsx(ProjectExpired, {});
|
|
2490
2489
|
if (project.initialized === false) return jsxRuntime.jsx(ProjectNotInitialized, {});
|
|
@@ -2503,7 +2502,7 @@ var ProjectContainer = function ProjectContainer(props) {
|
|
|
2503
2502
|
children: jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
2504
2503
|
children: [shouldShowNotificationForTrialExpired((_project$expiry$daysL = project.expiry.daysLeft) !== null && _project$expiry$daysL !== void 0 ? _project$expiry$daysL : undefined) && jsxRuntime.jsx(reactNotifications.Notifier, {
|
|
2505
2504
|
kind: "warning",
|
|
2506
|
-
domain: constants
|
|
2505
|
+
domain: constants.DOMAINS.GLOBAL,
|
|
2507
2506
|
text: intl.formatMessage(messages$1.trialDaysLeft, {
|
|
2508
2507
|
daysLeft: project.expiry.daysLeft || 0
|
|
2509
2508
|
})
|
|
@@ -2516,6 +2515,7 @@ var ProjectContainer = function ProjectContainer(props) {
|
|
|
2516
2515
|
availableLocales: project.languages
|
|
2517
2516
|
}), localeSwitcherNode), jsxRuntime.jsx(applicationEntryPoint.ApplicationEntryPoint, {
|
|
2518
2517
|
environment: props.environment,
|
|
2518
|
+
disableRoutePermissionCheck: props.disableRoutePermissionCheck,
|
|
2519
2519
|
render: props.render,
|
|
2520
2520
|
children: props.children
|
|
2521
2521
|
})]
|
|
@@ -2678,7 +2678,7 @@ var SetupFlopFlipProvider = function SetupFlopFlipProvider(props) {
|
|
|
2678
2678
|
query: AllFeaturesQuery,
|
|
2679
2679
|
errorPolicy: 'ignore',
|
|
2680
2680
|
context: {
|
|
2681
|
-
target: constants
|
|
2681
|
+
target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
|
|
2682
2682
|
}
|
|
2683
2683
|
});
|
|
2684
2684
|
|
|
@@ -2754,7 +2754,7 @@ var messages = reactIntl.defineMessages({
|
|
|
2754
2754
|
});
|
|
2755
2755
|
|
|
2756
2756
|
var useLoadingMenuLayoutEffect = function useLoadingMenuLayoutEffect() {
|
|
2757
|
-
var cachedIsForcedMenuOpen = window.localStorage.getItem(
|
|
2757
|
+
var cachedIsForcedMenuOpen = window.localStorage.getItem(formatters.STORAGE_KEYS.IS_FORCED_MENU_OPEN);
|
|
2758
2758
|
var isForcedMenuOpen = isNil__default["default"](cachedIsForcedMenuOpen) ? null : JSON.parse(cachedIsForcedMenuOpen);
|
|
2759
2759
|
react.useLayoutEffect(function () {
|
|
2760
2760
|
if (isForcedMenuOpen) document.body.classList.add('body__menu-open');
|
|
@@ -2832,7 +2832,7 @@ var useNavbarStateManager = function useNavbarStateManager(props) {
|
|
|
2832
2832
|
var _useMcQuery = useMcQuery(FetchProjectExtensionsNavbar, {
|
|
2833
2833
|
skip: !props.environment.servedByProxy,
|
|
2834
2834
|
context: {
|
|
2835
|
-
target: constants
|
|
2835
|
+
target: constants.GRAPHQL_TARGETS.SETTINGS_SERVICE
|
|
2836
2836
|
},
|
|
2837
2837
|
fetchPolicy: 'cache-and-network',
|
|
2838
2838
|
onError: sentry.reportErrorToSentry
|
|
@@ -2908,7 +2908,7 @@ var useNavbarStateManager = function useNavbarStateManager(props) {
|
|
|
2908
2908
|
})
|
|
2909
2909
|
};
|
|
2910
2910
|
})).call(_context4, nonNullable) : [];
|
|
2911
|
-
var cachedIsForcedMenuOpen = window.localStorage.getItem(
|
|
2911
|
+
var cachedIsForcedMenuOpen = window.localStorage.getItem(formatters.STORAGE_KEYS.IS_FORCED_MENU_OPEN);
|
|
2912
2912
|
var isForcedMenuOpen = isNil__default["default"](cachedIsForcedMenuOpen) ? null : JSON.parse(cachedIsForcedMenuOpen);
|
|
2913
2913
|
|
|
2914
2914
|
var _useReducer = react.useReducer(reducer, getInitialState(isForcedMenuOpen)),
|
|
@@ -2990,7 +2990,7 @@ var useNavbarStateManager = function useNavbarStateManager(props) {
|
|
|
2990
2990
|
type: 'toggleIsMenuOpen'
|
|
2991
2991
|
}); // Synchronize the menu state with local storage.
|
|
2992
2992
|
|
|
2993
|
-
window.localStorage.setItem(
|
|
2993
|
+
window.localStorage.setItem(formatters.STORAGE_KEYS.IS_FORCED_MENU_OPEN, String(!state.isMenuOpen));
|
|
2994
2994
|
}, [state.activeItemIndex, state.isMenuOpen]);
|
|
2995
2995
|
|
|
2996
2996
|
var allApplicationNavbarMenu = _concatInstanceProperty__default["default"](_context7 = _concatInstanceProperty__default["default"](_context8 = applicationsNavBarMenu || []).call(_context8, legacyCustomAppsMenu)).call(_context7, organizationCustomAppsMenu);
|
|
@@ -3313,7 +3313,7 @@ var MenuLabel = function MenuLabel(props) {
|
|
|
3313
3313
|
children: props.defaultLabel
|
|
3314
3314
|
});
|
|
3315
3315
|
return jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
3316
|
-
children: constants
|
|
3316
|
+
children: constants.NO_VALUE_FALLBACK
|
|
3317
3317
|
});
|
|
3318
3318
|
};
|
|
3319
3319
|
|
|
@@ -3515,7 +3515,7 @@ var NavBar = function NavBar(props) {
|
|
|
3515
3515
|
},
|
|
3516
3516
|
onMouseLeave: isMenuOpen ? undefined : shouldCloseMenuFly,
|
|
3517
3517
|
children: jsxRuntime.jsx("a", {
|
|
3518
|
-
href: constants
|
|
3518
|
+
href: constants.SUPPORT_PORTAL_URL,
|
|
3519
3519
|
rel: "noopener noreferrer",
|
|
3520
3520
|
target: "_blank",
|
|
3521
3521
|
children: jsxRuntime.jsxs("div", {
|
|
@@ -3603,7 +3603,7 @@ var pimIndexerStates = {
|
|
|
3603
3603
|
};
|
|
3604
3604
|
|
|
3605
3605
|
var QuickAccess = /*#__PURE__*/react.lazy(function () {
|
|
3606
|
-
return Promise.resolve().then(function () { return require('./quick-access-
|
|
3606
|
+
return Promise.resolve().then(function () { return require('./quick-access-e91dcf86.cjs.prod.js'
|
|
3607
3607
|
/* webpackChunkName: "quick-access" */
|
|
3608
3608
|
); });
|
|
3609
3609
|
});
|
|
@@ -3780,7 +3780,6 @@ var RedirectToLogin = function RedirectToLogin() {
|
|
|
3780
3780
|
// Additionally, we still send the `nonce` parameter as well.
|
|
3781
3781
|
|
|
3782
3782
|
var sessionId = generateAndCacheNonceWithState({
|
|
3783
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
3784
3783
|
applicationId: window.app.applicationId,
|
|
3785
3784
|
// Store query parameters to be used after the callback redirect
|
|
3786
3785
|
query: {
|
|
@@ -3801,10 +3800,10 @@ var RedirectToLogin = function RedirectToLogin() {
|
|
|
3801
3800
|
origin: (_window$app$__DEVELOP7 = window.app.__DEVELOPMENT__) === null || _window$app$__DEVELOP7 === void 0 ? void 0 : (_window$app$__DEVELOP8 = _window$app$__DEVELOP7.oidc) === null || _window$app$__DEVELOP8 === void 0 ? void 0 : _window$app$__DEVELOP8.authorizeUrl,
|
|
3802
3801
|
location: location,
|
|
3803
3802
|
queryParams: {
|
|
3804
|
-
reason: constants
|
|
3803
|
+
reason: constants.LOGOUT_REASONS.UNAUTHORIZED,
|
|
3805
3804
|
// Query parameters for OIDC-lik workflow.
|
|
3806
3805
|
client_id: window.app.applicationId,
|
|
3807
|
-
response_type:
|
|
3806
|
+
response_type: formatters.OIDC_RESPONSE_TYPES.ID_TOKEN,
|
|
3808
3807
|
scope: requestedScope,
|
|
3809
3808
|
state: sessionId,
|
|
3810
3809
|
nonce: sessionId
|
|
@@ -3818,7 +3817,7 @@ var RedirectToLogin = function RedirectToLogin() {
|
|
|
3818
3817
|
origin: mcOrigin,
|
|
3819
3818
|
location: location,
|
|
3820
3819
|
queryParams: {
|
|
3821
|
-
reason: constants
|
|
3820
|
+
reason: constants.LOGOUT_REASONS.UNAUTHORIZED,
|
|
3822
3821
|
redirectTo: urlUtils.trimLeadingAndTrailingSlashes(urlUtils.joinPaths(window.location.origin, location.pathname))
|
|
3823
3822
|
}
|
|
3824
3823
|
});
|
|
@@ -3851,7 +3850,7 @@ var RedirectToLogout = function RedirectToLogout(props) {
|
|
|
3851
3850
|
origin: mcOrigin,
|
|
3852
3851
|
location: location,
|
|
3853
3852
|
queryParams: _objectSpread$1({
|
|
3854
|
-
reason: (_props$reason = props.reason) !== null && _props$reason !== void 0 ? _props$reason : constants
|
|
3853
|
+
reason: (_props$reason = props.reason) !== null && _props$reason !== void 0 ? _props$reason : constants.LOGOUT_REASONS.USER
|
|
3855
3854
|
}, servedByProxy ? {} : {
|
|
3856
3855
|
// This will be used after being logged in, to redirect to this location.
|
|
3857
3856
|
redirectTo: window.location.origin
|
|
@@ -3938,7 +3937,7 @@ var RestrictedApplication = function RestrictedApplication(props) {
|
|
|
3938
3937
|
|
|
3939
3938
|
if (hasUnauthorizedError || hasUserBeenDeletedError) {
|
|
3940
3939
|
var logoutReason;
|
|
3941
|
-
if (hasUnauthorizedError) logoutReason = constants
|
|
3940
|
+
if (hasUnauthorizedError) logoutReason = constants.LOGOUT_REASONS.UNAUTHORIZED;else if (hasUserBeenDeletedError) logoutReason = constants.LOGOUT_REASONS.DELETED;
|
|
3942
3941
|
return jsxRuntime.jsx(RedirectToLogout, {
|
|
3943
3942
|
reason: logoutReason
|
|
3944
3943
|
});
|
|
@@ -4005,7 +4004,7 @@ var RestrictedApplication = function RestrictedApplication(props) {
|
|
|
4005
4004
|
role: "global-notifications",
|
|
4006
4005
|
css: _ref5,
|
|
4007
4006
|
children: jsxRuntime.jsx(reactNotifications.NotificationsList, {
|
|
4008
|
-
domain: constants
|
|
4007
|
+
domain: constants.DOMAINS.GLOBAL
|
|
4009
4008
|
})
|
|
4010
4009
|
}), jsxRuntime.jsx(reactRouterDom.Route, {
|
|
4011
4010
|
children: function children() {
|
|
@@ -4092,9 +4091,9 @@ var RestrictedApplication = function RestrictedApplication(props) {
|
|
|
4092
4091
|
}) : jsxRuntime.jsxs(MainContainer, {
|
|
4093
4092
|
role: "main",
|
|
4094
4093
|
children: [jsxRuntime.jsx(reactNotifications.NotificationsList, {
|
|
4095
|
-
domain: constants
|
|
4094
|
+
domain: constants.DOMAINS.PAGE
|
|
4096
4095
|
}), jsxRuntime.jsx(reactNotifications.NotificationsList, {
|
|
4097
|
-
domain: constants
|
|
4096
|
+
domain: constants.DOMAINS.SIDE
|
|
4098
4097
|
}), jsxRuntime.jsxs("div", {
|
|
4099
4098
|
css: _ref2,
|
|
4100
4099
|
children: [jsxRuntime.jsx(applicationComponents.PortalsContainer, {}), jsxRuntime.jsxs(reactRouterDom.Switch, {
|
|
@@ -4146,7 +4145,8 @@ var RestrictedApplication = function RestrictedApplication(props) {
|
|
|
4146
4145
|
user: user,
|
|
4147
4146
|
match: routerProps.match,
|
|
4148
4147
|
location: routerProps.location,
|
|
4149
|
-
environment: applicationEnvironment
|
|
4148
|
+
environment: applicationEnvironment,
|
|
4149
|
+
disableRoutePermissionCheck: props.disableRoutePermissionCheck // This effectively renders the
|
|
4150
4150
|
// children, which is the application
|
|
4151
4151
|
// specific part
|
|
4152
4152
|
,
|
|
@@ -4177,7 +4177,9 @@ var _ref = {
|
|
|
4177
4177
|
|
|
4178
4178
|
var ApplicationShell = function ApplicationShell(props) {
|
|
4179
4179
|
react.useEffect(function () {
|
|
4180
|
-
|
|
4180
|
+
var _props$onRegisterErro;
|
|
4181
|
+
|
|
4182
|
+
(_props$onRegisterErro = props.onRegisterErrorListeners) === null || _props$onRegisterErro === void 0 ? void 0 : _props$onRegisterErro.call(props, {
|
|
4181
4183
|
dispatch: applicationEntryPoint.internalReduxStore.dispatch
|
|
4182
4184
|
}); // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
4183
4185
|
}, []); // <-- run only once, when component mounts
|
|
@@ -4205,6 +4207,7 @@ var ApplicationShell = function ApplicationShell(props) {
|
|
|
4205
4207
|
render: props.render,
|
|
4206
4208
|
applicationMessages: props.applicationMessages,
|
|
4207
4209
|
onMenuItemClick: props.onMenuItemClick,
|
|
4210
|
+
disableRoutePermissionCheck: props.disableRoutePermissionCheck,
|
|
4208
4211
|
children: props.children
|
|
4209
4212
|
})
|
|
4210
4213
|
})]
|