@commercetools-frontend/application-shell 21.0.0-rc.1 → 21.0.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +1 -1
  2. package/dist/{application-entry-point-43e5d2d3.esm.js → application-entry-point-4ef2cd89.esm.js} +67 -23
  3. package/dist/{application-entry-point-58093e24.cjs.dev.js → application-entry-point-684d30f1.cjs.dev.js} +85 -41
  4. package/dist/{application-entry-point-b89a7e84.cjs.prod.js → application-entry-point-aeb8ef57.cjs.prod.js} +76 -41
  5. package/dist/commercetools-frontend-application-shell.cjs.dev.js +7 -7
  6. package/dist/commercetools-frontend-application-shell.cjs.prod.js +7 -7
  7. package/dist/commercetools-frontend-application-shell.esm.js +5 -5
  8. package/dist/declarations/src/components/application-entry-point/application-entry-point.d.ts +1 -0
  9. package/dist/declarations/src/components/application-shell/application-shell.d.ts +1 -0
  10. package/dist/declarations/src/components/application-shell-provider/use-coerced-environment-values.d.ts +1 -1
  11. package/dist/declarations/src/components/project-container/project-container.d.ts +1 -0
  12. package/dist/declarations/src/test-utils/test-utils.d.ts +2 -1
  13. package/dist/formatters-1c23c0a9.esm.js +93 -0
  14. package/dist/{oidc-7e7761de.cjs.dev.js → formatters-a5bb12eb.cjs.prod.js} +52 -38
  15. package/dist/{oidc-be09bd90.cjs.prod.js → formatters-e4b9b9dc.cjs.dev.js} +52 -38
  16. package/dist/{index-3a993fb5.cjs.dev.js → index-20accc34.cjs.dev.js} +60 -56
  17. package/dist/{index-a0f21c48.esm.js → index-2ed9e466.esm.js} +21 -17
  18. package/dist/{index-e270df38.cjs.prod.js → index-7a56bcf7.cjs.prod.js} +51 -49
  19. package/dist/oidc-0f5f3c40.esm.js +39 -0
  20. package/dist/oidc-96d1b0dd.cjs.dev.js +46 -0
  21. package/dist/oidc-f15b3576.cjs.prod.js +46 -0
  22. package/dist/{project-expired-a0171912.cjs.prod.js → project-expired-23986e27.cjs.prod.js} +8 -8
  23. package/dist/{project-expired-e68a5ca7.esm.js → project-expired-636492de.esm.js} +8 -8
  24. package/dist/{project-expired-1482bfa9.cjs.dev.js → project-expired-bf97d316.cjs.dev.js} +8 -8
  25. package/dist/{project-not-found-f34fa3de.cjs.dev.js → project-not-found-9cd66e2e.cjs.dev.js} +8 -8
  26. package/dist/{project-not-found-007518e8.cjs.prod.js → project-not-found-aed705a5.cjs.prod.js} +8 -8
  27. package/dist/{project-not-found-9c7c1af4.esm.js → project-not-found-f683495d.esm.js} +8 -8
  28. package/dist/{project-not-initialized-cdb93a84.esm.js → project-not-initialized-0dd0af36.esm.js} +8 -8
  29. package/dist/{project-not-initialized-70fd56de.cjs.prod.js → project-not-initialized-64d7c6c4.cjs.prod.js} +8 -8
  30. package/dist/{project-not-initialized-7d2cbb3c.cjs.dev.js → project-not-initialized-74b1d4f0.cjs.dev.js} +8 -8
  31. package/dist/{project-suspended-de520a33.esm.js → project-suspended-8613f5b0.esm.js} +8 -8
  32. package/dist/{project-suspended-9ec4ac13.cjs.prod.js → project-suspended-cbd838b6.cjs.prod.js} +8 -8
  33. package/dist/{project-suspended-01aa362c.cjs.dev.js → project-suspended-e25053f6.cjs.dev.js} +8 -8
  34. package/dist/{quick-access-eb5a65a4.cjs.dev.js → quick-access-099595d5.cjs.dev.js} +5 -5
  35. package/dist/{quick-access-72feb162.cjs.prod.js → quick-access-160ee728.cjs.prod.js} +5 -5
  36. package/dist/{quick-access-fb587f16.esm.js → quick-access-4ddb0aad.esm.js} +5 -5
  37. package/dist/{service-page-project-switcher-b5b1f738.cjs.prod.js → service-page-project-switcher-91dc2d6b.cjs.prod.js} +1 -1
  38. package/dist/{service-page-project-switcher-f0404bf1.esm.js → service-page-project-switcher-95af2b70.esm.js} +1 -1
  39. package/dist/{service-page-project-switcher-e4971c9c.cjs.dev.js → service-page-project-switcher-f4d306ff.cjs.dev.js} +1 -1
  40. package/package.json +12 -12
  41. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +4 -4
  42. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +4 -4
  43. package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +2 -2
  44. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +9 -5
  45. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +9 -5
  46. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +9 -5
  47. package/dist/constants-33a16227.esm.js +0 -46
  48. package/dist/constants-745aeeca.cjs.prod.js +0 -54
  49. package/dist/constants-fdbe0e9d.cjs.dev.js +0 -54
  50. 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-b89a7e84.cjs.prod.js');
3
+ var applicationEntryPoint = require('./application-entry-point-aeb8ef57.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$1 = require('@commercetools-frontend/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 constants = require('./constants-745aeeca.cjs.prod.js');
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');
@@ -41,7 +41,7 @@ var reactRedux = require('react-redux');
41
41
  var history = require('@commercetools-frontend/browser-history');
42
42
  var reactIntl = require('react-intl');
43
43
  var _startsWithInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
44
- var oidc = require('./oidc-be09bd90.cjs.prod.js');
44
+ var oidc = require('./oidc-f15b3576.cjs.prod.js');
45
45
  var qss = require('qss');
46
46
  var jwtDecode = require('jwt-decode');
47
47
  var FailedAuthenticationSVG = require('@commercetools-frontend/assets/images/locked-diamond.svg');
@@ -157,7 +157,7 @@ var throttle__default = /*#__PURE__*/_interopDefault(throttle);
157
157
  var _someInstanceProperty__default = /*#__PURE__*/_interopDefault(_someInstanceProperty);
158
158
 
159
159
  function selectProjectKeyFromLocalStorage() {
160
- return window.localStorage.getItem(constants.STORAGE_KEYS.ACTIVE_PROJECT_KEY);
160
+ return window.localStorage.getItem(formatters.STORAGE_KEYS.ACTIVE_PROJECT_KEY);
161
161
  }
162
162
 
163
163
  var getPreviousProjectKey = function getPreviousProjectKey(defaultProjectKeyOfUser) {
@@ -182,7 +182,7 @@ var createApolloContextForProxyForwardTo = function createApolloContextForProxyF
182
182
  };
183
183
 
184
184
  var getSelectedDataLocaleForProject = function getSelectedDataLocaleForProject(projectLocales) {
185
- var cachedDataLocale = window.localStorage.getItem(constants.STORAGE_KEYS.SELECTED_DATA_LOCALE); // Make sure the cached locale is listed in the selected project
185
+ var cachedDataLocale = window.localStorage.getItem(formatters.STORAGE_KEYS.SELECTED_DATA_LOCALE); // Make sure the cached locale is listed in the selected project
186
186
 
187
187
  var isCachedDataLocaleIncludedInProjectLanguages = _includesInstanceProperty__default["default"](projectLocales).call(projectLocales, cachedDataLocale || '');
188
188
 
@@ -190,7 +190,7 @@ var getSelectedDataLocaleForProject = function getSelectedDataLocaleForProject(p
190
190
 
191
191
  var defaultDataLocaleForProject = projectLocales[0]; // Cache it
192
192
 
193
- window.localStorage.setItem(constants.STORAGE_KEYS.SELECTED_DATA_LOCALE, defaultDataLocaleForProject);
193
+ window.localStorage.setItem(formatters.STORAGE_KEYS.SELECTED_DATA_LOCALE, defaultDataLocaleForProject);
194
194
  return defaultDataLocaleForProject;
195
195
  };
196
196
 
@@ -203,7 +203,7 @@ var ProjectDataLocale = function ProjectDataLocale(props) {
203
203
  var handleSetProjectDataLocale = react.useCallback(function (locale) {
204
204
  setLocale(locale); // Cache it
205
205
 
206
- window.localStorage.setItem(constants.STORAGE_KEYS.SELECTED_DATA_LOCALE, locale);
206
+ window.localStorage.setItem(formatters.STORAGE_KEYS.SELECTED_DATA_LOCALE, locale);
207
207
  }, []);
208
208
  return jsxRuntime.jsx(jsxRuntime.Fragment, {
209
209
  children: props.children({
@@ -625,7 +625,7 @@ var withoutProjectKeyClaim = function withoutProjectKeyClaim(scope) {
625
625
  var _context;
626
626
 
627
627
  return _filterInstanceProperty__default["default"](_context = scope.split(' ')).call(_context, function (claim) {
628
- return !_startsWithInstanceProperty__default["default"](claim).call(claim, constants.OIDC_CLAIMS.PROJECT_KEY);
628
+ return !_startsWithInstanceProperty__default["default"](claim).call(claim, formatters.OIDC_CLAIMS.PROJECT_KEY);
629
629
  }).join(' ');
630
630
  };
631
631
 
@@ -692,7 +692,7 @@ var hasCachedAuthenticationState = function hasCachedAuthenticationState() {
692
692
  }
693
693
  }
694
694
 
695
- return window.localStorage.getItem(constants.STORAGE_KEYS.IS_AUTHENTICATED) === 'true';
695
+ return window.localStorage.getItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED) === 'true';
696
696
  };
697
697
 
698
698
  function useMcQuery(query, options) {
@@ -716,7 +716,7 @@ var AmILoggedIn = function AmILoggedIn(props) {
716
716
  // is valid. We return null while the query is loading.
717
717
  var _useMcQuery = useMcQuery(AmILoggedInQuery, {
718
718
  context: {
719
- target: constants$1.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND,
719
+ target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND,
720
720
  skipTokenRetry: true
721
721
  },
722
722
  // NOTE: With `no-cache` the `useQuery` will not trigger a
@@ -735,20 +735,20 @@ var AmILoggedIn = function AmILoggedIn(props) {
735
735
  if (!data) {
736
736
  // In case the request is 200 but there is no data, we assume
737
737
  // there are some errors.
738
- window.localStorage.removeItem(constants.STORAGE_KEYS.IS_AUTHENTICATED);
738
+ window.localStorage.removeItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED);
739
739
  } else {
740
740
  // Even though the login page might set this flag, we just make sure that
741
741
  // we do it here as well. This will help in the future when we eventually
742
742
  // move the auth service to itw own domain, in which case the local storage
743
743
  // is not shared anymore.
744
- window.localStorage.setItem(constants.STORAGE_KEYS.IS_AUTHENTICATED, String(true));
744
+ window.localStorage.setItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED, String(true));
745
745
  }
746
746
  },
747
747
  onError: function onError() {
748
748
  // The query fails without the `mcAccessToken`. In this case the caching
749
749
  // needs to be unset as otherwise the application will end up in a infinte
750
750
  // redirect loop.
751
- window.localStorage.removeItem(constants.STORAGE_KEYS.IS_AUTHENTICATED);
751
+ window.localStorage.removeItem(formatters.STORAGE_KEYS.IS_AUTHENTICATED);
752
752
  }
753
753
  }),
754
754
  data = _useMcQuery.data,
@@ -1305,7 +1305,7 @@ var FetchUser = function FetchUser(props) {
1305
1305
  var _useMcQuery = useMcQuery(LoggedInUserQuery, {
1306
1306
  onError: sentry.reportErrorToSentry,
1307
1307
  context: {
1308
- target: constants$1.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
1308
+ target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
1309
1309
  }
1310
1310
  }),
1311
1311
  loading = _useMcQuery.loading,
@@ -1330,7 +1330,7 @@ var pushDependencyVersionCounter = function pushDependencyVersionCounter(_ref) {
1330
1330
  var payload = _ref.payload;
1331
1331
  return sdk.actions.post({
1332
1332
  uri: '/metrics/counters',
1333
- mcApiProxyTarget: constants$1.MC_API_PROXY_TARGETS.MC_METRICS,
1333
+ mcApiProxyTarget: constants.MC_API_PROXY_TARGETS.MC_METRICS,
1334
1334
  payload: _JSON$stringify__default["default"](payload)
1335
1335
  });
1336
1336
  };
@@ -1382,7 +1382,7 @@ var FetchProject = function FetchProject(props) {
1382
1382
  projectKey: props.projectKey
1383
1383
  },
1384
1384
  context: {
1385
- target: constants$1.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
1385
+ target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
1386
1386
  },
1387
1387
  skip: props.skip === true
1388
1388
  }),
@@ -1680,7 +1680,7 @@ var renderLabel = function renderLabel(menu, applicationLanguage) {
1680
1680
  });
1681
1681
 
1682
1682
  if (localizedLabel) return localizedLabel.value;
1683
- return constants$1.NO_VALUE_FALLBACK;
1683
+ return constants.NO_VALUE_FALLBACK;
1684
1684
  };
1685
1685
 
1686
1686
  var MenuItem$1 = _styled__default["default"]("div", {
@@ -1785,7 +1785,7 @@ var UserSettingsMenuBody = function UserSettingsMenuBody(props) {
1785
1785
  })
1786
1786
  }), jsxRuntime.jsx("a", {
1787
1787
  css: getUserSettingsMenuItemLinkStyles(),
1788
- href: constants$1.SUPPORT_PORTAL_URL,
1788
+ href: constants.SUPPORT_PORTAL_URL,
1789
1789
  rel: "noopener noreferrer",
1790
1790
  target: "_blank",
1791
1791
  "data-track-component": "Navigation-Support-links",
@@ -1807,7 +1807,7 @@ var UserSettingsMenuBody = function UserSettingsMenuBody(props) {
1807
1807
  css: getUserSettingsMenuItemLinkStyles() // NOTE: we want to redirect to a new page so that the
1808
1808
  // server can remove things like cookie for access token.
1809
1809
  ,
1810
- href: "/logout?reason=".concat(constants$1.LOGOUT_REASONS.USER),
1810
+ href: "/logout?reason=".concat(constants.LOGOUT_REASONS.USER),
1811
1811
  "data-test": "logout-button",
1812
1812
  "data-user-settings-menu": true,
1813
1813
  children: [jsxRuntime.jsx(MenuItem$1, {
@@ -1990,7 +1990,7 @@ var ProjectSwitcher = function ProjectSwitcher(props) {
1990
1990
  var _useMcQuery = useMcQuery(ProjectsQuery, {
1991
1991
  onError: sentry.reportErrorToSentry,
1992
1992
  context: {
1993
- target: constants$1.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
1993
+ target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
1994
1994
  }
1995
1995
  }),
1996
1996
  loading = _useMcQuery.loading,
@@ -2210,7 +2210,7 @@ var AppBar = function AppBar(props) {
2210
2210
  children: [jsxRuntime.jsxs(Spacings__default["default"].Inline, {
2211
2211
  alignItems: "center",
2212
2212
  children: [jsxRuntime.jsx("div", {
2213
- id: constants.CONTAINERS.LOCALE_SWITCHER
2213
+ id: formatters.CONTAINERS.LOCALE_SWITCHER
2214
2214
  }), function () {
2215
2215
  if (!props.user) {
2216
2216
  return jsxRuntime.jsx(LoadingPlaceholder, {
@@ -2330,19 +2330,19 @@ var LocaleSwitcher = function LocaleSwitcher(props) {
2330
2330
  LocaleSwitcher.propTypes = {};
2331
2331
 
2332
2332
  var ProjectNotFound = /*#__PURE__*/react.lazy(function () {
2333
- return Promise.resolve().then(function () { return require('./project-not-found-007518e8.cjs.prod.js'
2333
+ return Promise.resolve().then(function () { return require('./project-not-found-aed705a5.cjs.prod.js'
2334
2334
  /* webpackChunkName: "project-not-found" */
2335
2335
  ); });
2336
2336
  });
2337
2337
 
2338
2338
  var ProjectExpired = /*#__PURE__*/react.lazy(function () {
2339
- return Promise.resolve().then(function () { return require('./project-expired-a0171912.cjs.prod.js'
2339
+ return Promise.resolve().then(function () { return require('./project-expired-23986e27.cjs.prod.js'
2340
2340
  /* webpackChunkName: "project-expired" */
2341
2341
  ); });
2342
2342
  });
2343
2343
 
2344
2344
  var ProjectNotInitialized = /*#__PURE__*/react.lazy(function () {
2345
- return Promise.resolve().then(function () { return require('./project-not-initialized-70fd56de.cjs.prod.js'
2345
+ return Promise.resolve().then(function () { return require('./project-not-initialized-64d7c6c4.cjs.prod.js'
2346
2346
  /* webpackChunkName: "project-not-initialized" */
2347
2347
  ); });
2348
2348
  });
@@ -2389,7 +2389,7 @@ var RedirectToProjectCreate = function RedirectToProjectCreate() {
2389
2389
  RedirectToProjectCreate.displayName = 'RedirectToProjectCreate';
2390
2390
 
2391
2391
  var ProjectSuspended = /*#__PURE__*/react.lazy(function () {
2392
- return Promise.resolve().then(function () { return require('./project-suspended-9ec4ac13.cjs.prod.js'
2392
+ return Promise.resolve().then(function () { return require('./project-suspended-cbd838b6.cjs.prod.js'
2393
2393
  /* webpackChunkName: "project-suspended" */
2394
2394
  ); });
2395
2395
  });
@@ -2436,13 +2436,13 @@ var ProjectContainer = function ProjectContainer(props) {
2436
2436
  * is inserted in the DOM tree.
2437
2437
  * "
2438
2438
  */
2439
- setLocaleSwitcherNode(document.getElementById(constants.CONTAINERS.LOCALE_SWITCHER));
2439
+ setLocaleSwitcherNode(document.getElementById(formatters.CONTAINERS.LOCALE_SWITCHER));
2440
2440
  }, [setLocaleSwitcherNode]);
2441
2441
  var projectKey = props.match.params.projectKey;
2442
2442
  react.useEffect(function () {
2443
2443
  // Ensure to sync the `projectKey` from the URL with localStorage.
2444
2444
  if (projectKey) {
2445
- window.localStorage.setItem(constants.STORAGE_KEYS.ACTIVE_PROJECT_KEY, projectKey);
2445
+ window.localStorage.setItem(formatters.STORAGE_KEYS.ACTIVE_PROJECT_KEY, projectKey);
2446
2446
  }
2447
2447
  }, [projectKey]); // }
2448
2448
 
@@ -2460,7 +2460,7 @@ var ProjectContainer = function ProjectContainer(props) {
2460
2460
  */
2461
2461
 
2462
2462
  if (hasNoProjects && props.environment.enableSignUp !== true && props.environment.servedByProxy) return jsxRuntime.jsx(reactRouterDom.Redirect, {
2463
- to: "/logout?reason=".concat(constants$1.LOGOUT_REASONS.NO_PROJECTS)
2463
+ to: "/logout?reason=".concat(constants.LOGOUT_REASONS.NO_PROJECTS)
2464
2464
  });
2465
2465
  if (hasNoProjects && props.environment.enableSignUp) return jsxRuntime.jsxs(reactRouterDom.Switch, {
2466
2466
  children: [jsxRuntime.jsx(reactRouterDom.Route, {
@@ -2484,7 +2484,7 @@ var ProjectContainer = function ProjectContainer(props) {
2484
2484
  if (isProjectLoading) return jsxRuntime.jsx(ApplicationLoader, {});
2485
2485
  if (!project) return jsxRuntime.jsx(ProjectNotFound, {});
2486
2486
  if (project.suspension && project.suspension.isActive) return jsxRuntime.jsx(ProjectSuspended, {
2487
- isTemporary: project.suspension.reason === constants.SUSPENSION_REASONS.TEMPORARY_MAINTENANCE
2487
+ isTemporary: project.suspension.reason === formatters.SUSPENSION_REASONS.TEMPORARY_MAINTENANCE
2488
2488
  });
2489
2489
  if (project.expiry && project.expiry.isActive) return jsxRuntime.jsx(ProjectExpired, {});
2490
2490
  if (project.initialized === false) return jsxRuntime.jsx(ProjectNotInitialized, {});
@@ -2503,7 +2503,7 @@ var ProjectContainer = function ProjectContainer(props) {
2503
2503
  children: jsxRuntime.jsxs(jsxRuntime.Fragment, {
2504
2504
  children: [shouldShowNotificationForTrialExpired((_project$expiry$daysL = project.expiry.daysLeft) !== null && _project$expiry$daysL !== void 0 ? _project$expiry$daysL : undefined) && jsxRuntime.jsx(reactNotifications.Notifier, {
2505
2505
  kind: "warning",
2506
- domain: constants$1.DOMAINS.GLOBAL,
2506
+ domain: constants.DOMAINS.GLOBAL,
2507
2507
  text: intl.formatMessage(messages$1.trialDaysLeft, {
2508
2508
  daysLeft: project.expiry.daysLeft || 0
2509
2509
  })
@@ -2516,6 +2516,7 @@ var ProjectContainer = function ProjectContainer(props) {
2516
2516
  availableLocales: project.languages
2517
2517
  }), localeSwitcherNode), jsxRuntime.jsx(applicationEntryPoint.ApplicationEntryPoint, {
2518
2518
  environment: props.environment,
2519
+ disableRoutePermissionCheck: props.disableRoutePermissionCheck,
2519
2520
  render: props.render,
2520
2521
  children: props.children
2521
2522
  })]
@@ -2678,7 +2679,7 @@ var SetupFlopFlipProvider = function SetupFlopFlipProvider(props) {
2678
2679
  query: AllFeaturesQuery,
2679
2680
  errorPolicy: 'ignore',
2680
2681
  context: {
2681
- target: constants$1.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
2682
+ target: constants.GRAPHQL_TARGETS.MERCHANT_CENTER_BACKEND
2682
2683
  }
2683
2684
  });
2684
2685
 
@@ -2754,7 +2755,7 @@ var messages = reactIntl.defineMessages({
2754
2755
  });
2755
2756
 
2756
2757
  var useLoadingMenuLayoutEffect = function useLoadingMenuLayoutEffect() {
2757
- var cachedIsForcedMenuOpen = window.localStorage.getItem(constants.STORAGE_KEYS.IS_FORCED_MENU_OPEN);
2758
+ var cachedIsForcedMenuOpen = window.localStorage.getItem(formatters.STORAGE_KEYS.IS_FORCED_MENU_OPEN);
2758
2759
  var isForcedMenuOpen = isNil__default["default"](cachedIsForcedMenuOpen) ? null : JSON.parse(cachedIsForcedMenuOpen);
2759
2760
  react.useLayoutEffect(function () {
2760
2761
  if (isForcedMenuOpen) document.body.classList.add('body__menu-open');
@@ -2832,7 +2833,7 @@ var useNavbarStateManager = function useNavbarStateManager(props) {
2832
2833
  var _useMcQuery = useMcQuery(FetchProjectExtensionsNavbar, {
2833
2834
  skip: !props.environment.servedByProxy,
2834
2835
  context: {
2835
- target: constants$1.GRAPHQL_TARGETS.SETTINGS_SERVICE
2836
+ target: constants.GRAPHQL_TARGETS.SETTINGS_SERVICE
2836
2837
  },
2837
2838
  fetchPolicy: 'cache-and-network',
2838
2839
  onError: sentry.reportErrorToSentry
@@ -2908,7 +2909,7 @@ var useNavbarStateManager = function useNavbarStateManager(props) {
2908
2909
  })
2909
2910
  };
2910
2911
  })).call(_context4, nonNullable) : [];
2911
- var cachedIsForcedMenuOpen = window.localStorage.getItem(constants.STORAGE_KEYS.IS_FORCED_MENU_OPEN);
2912
+ var cachedIsForcedMenuOpen = window.localStorage.getItem(formatters.STORAGE_KEYS.IS_FORCED_MENU_OPEN);
2912
2913
  var isForcedMenuOpen = isNil__default["default"](cachedIsForcedMenuOpen) ? null : JSON.parse(cachedIsForcedMenuOpen);
2913
2914
 
2914
2915
  var _useReducer = react.useReducer(reducer, getInitialState(isForcedMenuOpen)),
@@ -2990,7 +2991,7 @@ var useNavbarStateManager = function useNavbarStateManager(props) {
2990
2991
  type: 'toggleIsMenuOpen'
2991
2992
  }); // Synchronize the menu state with local storage.
2992
2993
 
2993
- window.localStorage.setItem(constants.STORAGE_KEYS.IS_FORCED_MENU_OPEN, String(!state.isMenuOpen));
2994
+ window.localStorage.setItem(formatters.STORAGE_KEYS.IS_FORCED_MENU_OPEN, String(!state.isMenuOpen));
2994
2995
  }, [state.activeItemIndex, state.isMenuOpen]);
2995
2996
 
2996
2997
  var allApplicationNavbarMenu = _concatInstanceProperty__default["default"](_context7 = _concatInstanceProperty__default["default"](_context8 = applicationsNavBarMenu || []).call(_context8, legacyCustomAppsMenu)).call(_context7, organizationCustomAppsMenu);
@@ -3313,7 +3314,7 @@ var MenuLabel = function MenuLabel(props) {
3313
3314
  children: props.defaultLabel
3314
3315
  });
3315
3316
  return jsxRuntime.jsx(jsxRuntime.Fragment, {
3316
- children: constants$1.NO_VALUE_FALLBACK
3317
+ children: constants.NO_VALUE_FALLBACK
3317
3318
  });
3318
3319
  };
3319
3320
 
@@ -3515,7 +3516,7 @@ var NavBar = function NavBar(props) {
3515
3516
  },
3516
3517
  onMouseLeave: isMenuOpen ? undefined : shouldCloseMenuFly,
3517
3518
  children: jsxRuntime.jsx("a", {
3518
- href: constants$1.SUPPORT_PORTAL_URL,
3519
+ href: constants.SUPPORT_PORTAL_URL,
3519
3520
  rel: "noopener noreferrer",
3520
3521
  target: "_blank",
3521
3522
  children: jsxRuntime.jsxs("div", {
@@ -3603,7 +3604,7 @@ var pimIndexerStates = {
3603
3604
  };
3604
3605
 
3605
3606
  var QuickAccess = /*#__PURE__*/react.lazy(function () {
3606
- return Promise.resolve().then(function () { return require('./quick-access-72feb162.cjs.prod.js'
3607
+ return Promise.resolve().then(function () { return require('./quick-access-160ee728.cjs.prod.js'
3607
3608
  /* webpackChunkName: "quick-access" */
3608
3609
  ); });
3609
3610
  });
@@ -3780,7 +3781,6 @@ var RedirectToLogin = function RedirectToLogin() {
3780
3781
  // Additionally, we still send the `nonce` parameter as well.
3781
3782
 
3782
3783
  var sessionId = generateAndCacheNonceWithState({
3783
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3784
3784
  applicationId: window.app.applicationId,
3785
3785
  // Store query parameters to be used after the callback redirect
3786
3786
  query: {
@@ -3801,10 +3801,10 @@ var RedirectToLogin = function RedirectToLogin() {
3801
3801
  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
3802
  location: location,
3803
3803
  queryParams: {
3804
- reason: constants$1.LOGOUT_REASONS.UNAUTHORIZED,
3804
+ reason: constants.LOGOUT_REASONS.UNAUTHORIZED,
3805
3805
  // Query parameters for OIDC-lik workflow.
3806
3806
  client_id: window.app.applicationId,
3807
- response_type: constants.OIDC_RESPONSE_TYPES.ID_TOKEN,
3807
+ response_type: formatters.OIDC_RESPONSE_TYPES.ID_TOKEN,
3808
3808
  scope: requestedScope,
3809
3809
  state: sessionId,
3810
3810
  nonce: sessionId
@@ -3818,7 +3818,7 @@ var RedirectToLogin = function RedirectToLogin() {
3818
3818
  origin: mcOrigin,
3819
3819
  location: location,
3820
3820
  queryParams: {
3821
- reason: constants$1.LOGOUT_REASONS.UNAUTHORIZED,
3821
+ reason: constants.LOGOUT_REASONS.UNAUTHORIZED,
3822
3822
  redirectTo: urlUtils.trimLeadingAndTrailingSlashes(urlUtils.joinPaths(window.location.origin, location.pathname))
3823
3823
  }
3824
3824
  });
@@ -3851,7 +3851,7 @@ var RedirectToLogout = function RedirectToLogout(props) {
3851
3851
  origin: mcOrigin,
3852
3852
  location: location,
3853
3853
  queryParams: _objectSpread$1({
3854
- reason: (_props$reason = props.reason) !== null && _props$reason !== void 0 ? _props$reason : constants$1.LOGOUT_REASONS.USER
3854
+ reason: (_props$reason = props.reason) !== null && _props$reason !== void 0 ? _props$reason : constants.LOGOUT_REASONS.USER
3855
3855
  }, servedByProxy ? {} : {
3856
3856
  // This will be used after being logged in, to redirect to this location.
3857
3857
  redirectTo: window.location.origin
@@ -3938,7 +3938,7 @@ var RestrictedApplication = function RestrictedApplication(props) {
3938
3938
 
3939
3939
  if (hasUnauthorizedError || hasUserBeenDeletedError) {
3940
3940
  var logoutReason;
3941
- if (hasUnauthorizedError) logoutReason = constants$1.LOGOUT_REASONS.UNAUTHORIZED;else if (hasUserBeenDeletedError) logoutReason = constants$1.LOGOUT_REASONS.DELETED;
3941
+ if (hasUnauthorizedError) logoutReason = constants.LOGOUT_REASONS.UNAUTHORIZED;else if (hasUserBeenDeletedError) logoutReason = constants.LOGOUT_REASONS.DELETED;
3942
3942
  return jsxRuntime.jsx(RedirectToLogout, {
3943
3943
  reason: logoutReason
3944
3944
  });
@@ -4005,7 +4005,7 @@ var RestrictedApplication = function RestrictedApplication(props) {
4005
4005
  role: "global-notifications",
4006
4006
  css: _ref5,
4007
4007
  children: jsxRuntime.jsx(reactNotifications.NotificationsList, {
4008
- domain: constants$1.DOMAINS.GLOBAL
4008
+ domain: constants.DOMAINS.GLOBAL
4009
4009
  })
4010
4010
  }), jsxRuntime.jsx(reactRouterDom.Route, {
4011
4011
  children: function children() {
@@ -4092,9 +4092,9 @@ var RestrictedApplication = function RestrictedApplication(props) {
4092
4092
  }) : jsxRuntime.jsxs(MainContainer, {
4093
4093
  role: "main",
4094
4094
  children: [jsxRuntime.jsx(reactNotifications.NotificationsList, {
4095
- domain: constants$1.DOMAINS.PAGE
4095
+ domain: constants.DOMAINS.PAGE
4096
4096
  }), jsxRuntime.jsx(reactNotifications.NotificationsList, {
4097
- domain: constants$1.DOMAINS.SIDE
4097
+ domain: constants.DOMAINS.SIDE
4098
4098
  }), jsxRuntime.jsxs("div", {
4099
4099
  css: _ref2,
4100
4100
  children: [jsxRuntime.jsx(applicationComponents.PortalsContainer, {}), jsxRuntime.jsxs(reactRouterDom.Switch, {
@@ -4146,7 +4146,8 @@ var RestrictedApplication = function RestrictedApplication(props) {
4146
4146
  user: user,
4147
4147
  match: routerProps.match,
4148
4148
  location: routerProps.location,
4149
- environment: applicationEnvironment // This effectively renders the
4149
+ environment: applicationEnvironment,
4150
+ disableRoutePermissionCheck: props.disableRoutePermissionCheck // This effectively renders the
4150
4151
  // children, which is the application
4151
4152
  // specific part
4152
4153
  ,
@@ -4205,6 +4206,7 @@ var ApplicationShell = function ApplicationShell(props) {
4205
4206
  render: props.render,
4206
4207
  applicationMessages: props.applicationMessages,
4207
4208
  onMenuItemClick: props.onMenuItemClick,
4209
+ disableRoutePermissionCheck: props.disableRoutePermissionCheck,
4208
4210
  children: props.children
4209
4211
  })
4210
4212
  })]
@@ -0,0 +1,39 @@
1
+ import _toConsumableArray from '@babel/runtime-corejs3/helpers/esm/toConsumableArray';
2
+ import _concatInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/concat';
3
+ import _mapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/map';
4
+ import { O as OIDC_CLAIMS } from './formatters-1c23c0a9.esm.js';
5
+
6
+ var buildOidcScope = function buildOidcScope(options) {
7
+ var _context7;
8
+
9
+ var claims = [];
10
+
11
+ if (options.projectKey) {
12
+ var _context, _context2, _options$oAuthScopes$, _options$oAuthScopes, _context4, _options$oAuthScopes$2, _options$oAuthScopes2;
13
+
14
+ claims.push(_concatInstanceProperty(_context = "".concat(OIDC_CLAIMS.PROJECT_KEY, ":")).call(_context, options.projectKey));
15
+ claims.push.apply(claims, _toConsumableArray(_mapInstanceProperty(_context2 = (_options$oAuthScopes$ = (_options$oAuthScopes = options.oAuthScopes) === null || _options$oAuthScopes === void 0 ? void 0 : _options$oAuthScopes.view) !== null && _options$oAuthScopes$ !== void 0 ? _options$oAuthScopes$ : []).call(_context2, function (scope) {
16
+ var _context3;
17
+
18
+ return _concatInstanceProperty(_context3 = "".concat(OIDC_CLAIMS.VIEW, ":")).call(_context3, scope);
19
+ })));
20
+ claims.push.apply(claims, _toConsumableArray(_mapInstanceProperty(_context4 = (_options$oAuthScopes$2 = (_options$oAuthScopes2 = options.oAuthScopes) === null || _options$oAuthScopes2 === void 0 ? void 0 : _options$oAuthScopes2.manage) !== null && _options$oAuthScopes$2 !== void 0 ? _options$oAuthScopes$2 : []).call(_context4, function (scope) {
21
+ var _context5;
22
+
23
+ return _concatInstanceProperty(_context5 = "".concat(OIDC_CLAIMS.MANAGE, ":")).call(_context5, scope);
24
+ })));
25
+ }
26
+
27
+ var teamId = options.teamId;
28
+
29
+ if (teamId) {
30
+ var _context6;
31
+
32
+ claims.push(_concatInstanceProperty(_context6 = "".concat(OIDC_CLAIMS.TEAM_ID, ":")).call(_context6, teamId));
33
+ }
34
+
35
+ return _concatInstanceProperty(_context7 = [// This is required as per OIDC spec.
36
+ OIDC_CLAIMS.OPEN_ID]).call(_context7, claims).join(' ');
37
+ };
38
+
39
+ export { buildOidcScope as b };
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ var _toConsumableArray = require('@babel/runtime-corejs3/helpers/toConsumableArray');
4
+ var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
5
+ var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
6
+ var formatters = require('./formatters-e4b9b9dc.cjs.dev.js');
7
+
8
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
9
+
10
+ var _concatInstanceProperty__default = /*#__PURE__*/_interopDefault(_concatInstanceProperty);
11
+ var _mapInstanceProperty__default = /*#__PURE__*/_interopDefault(_mapInstanceProperty);
12
+
13
+ var buildOidcScope = function buildOidcScope(options) {
14
+ var _context7;
15
+
16
+ var claims = [];
17
+
18
+ if (options.projectKey) {
19
+ var _context, _context2, _options$oAuthScopes$, _options$oAuthScopes, _context4, _options$oAuthScopes$2, _options$oAuthScopes2;
20
+
21
+ claims.push(_concatInstanceProperty__default["default"](_context = "".concat(formatters.OIDC_CLAIMS.PROJECT_KEY, ":")).call(_context, options.projectKey));
22
+ claims.push.apply(claims, _toConsumableArray(_mapInstanceProperty__default["default"](_context2 = (_options$oAuthScopes$ = (_options$oAuthScopes = options.oAuthScopes) === null || _options$oAuthScopes === void 0 ? void 0 : _options$oAuthScopes.view) !== null && _options$oAuthScopes$ !== void 0 ? _options$oAuthScopes$ : []).call(_context2, function (scope) {
23
+ var _context3;
24
+
25
+ return _concatInstanceProperty__default["default"](_context3 = "".concat(formatters.OIDC_CLAIMS.VIEW, ":")).call(_context3, scope);
26
+ })));
27
+ claims.push.apply(claims, _toConsumableArray(_mapInstanceProperty__default["default"](_context4 = (_options$oAuthScopes$2 = (_options$oAuthScopes2 = options.oAuthScopes) === null || _options$oAuthScopes2 === void 0 ? void 0 : _options$oAuthScopes2.manage) !== null && _options$oAuthScopes$2 !== void 0 ? _options$oAuthScopes$2 : []).call(_context4, function (scope) {
28
+ var _context5;
29
+
30
+ return _concatInstanceProperty__default["default"](_context5 = "".concat(formatters.OIDC_CLAIMS.MANAGE, ":")).call(_context5, scope);
31
+ })));
32
+ }
33
+
34
+ var teamId = options.teamId;
35
+
36
+ if (teamId) {
37
+ var _context6;
38
+
39
+ claims.push(_concatInstanceProperty__default["default"](_context6 = "".concat(formatters.OIDC_CLAIMS.TEAM_ID, ":")).call(_context6, teamId));
40
+ }
41
+
42
+ return _concatInstanceProperty__default["default"](_context7 = [// This is required as per OIDC spec.
43
+ formatters.OIDC_CLAIMS.OPEN_ID]).call(_context7, claims).join(' ');
44
+ };
45
+
46
+ exports.buildOidcScope = buildOidcScope;
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ var _toConsumableArray = require('@babel/runtime-corejs3/helpers/toConsumableArray');
4
+ var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
5
+ var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
6
+ var formatters = require('./formatters-a5bb12eb.cjs.prod.js');
7
+
8
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
9
+
10
+ var _concatInstanceProperty__default = /*#__PURE__*/_interopDefault(_concatInstanceProperty);
11
+ var _mapInstanceProperty__default = /*#__PURE__*/_interopDefault(_mapInstanceProperty);
12
+
13
+ var buildOidcScope = function buildOidcScope(options) {
14
+ var _context7;
15
+
16
+ var claims = [];
17
+
18
+ if (options.projectKey) {
19
+ var _context, _context2, _options$oAuthScopes$, _options$oAuthScopes, _context4, _options$oAuthScopes$2, _options$oAuthScopes2;
20
+
21
+ claims.push(_concatInstanceProperty__default["default"](_context = "".concat(formatters.OIDC_CLAIMS.PROJECT_KEY, ":")).call(_context, options.projectKey));
22
+ claims.push.apply(claims, _toConsumableArray(_mapInstanceProperty__default["default"](_context2 = (_options$oAuthScopes$ = (_options$oAuthScopes = options.oAuthScopes) === null || _options$oAuthScopes === void 0 ? void 0 : _options$oAuthScopes.view) !== null && _options$oAuthScopes$ !== void 0 ? _options$oAuthScopes$ : []).call(_context2, function (scope) {
23
+ var _context3;
24
+
25
+ return _concatInstanceProperty__default["default"](_context3 = "".concat(formatters.OIDC_CLAIMS.VIEW, ":")).call(_context3, scope);
26
+ })));
27
+ claims.push.apply(claims, _toConsumableArray(_mapInstanceProperty__default["default"](_context4 = (_options$oAuthScopes$2 = (_options$oAuthScopes2 = options.oAuthScopes) === null || _options$oAuthScopes2 === void 0 ? void 0 : _options$oAuthScopes2.manage) !== null && _options$oAuthScopes$2 !== void 0 ? _options$oAuthScopes$2 : []).call(_context4, function (scope) {
28
+ var _context5;
29
+
30
+ return _concatInstanceProperty__default["default"](_context5 = "".concat(formatters.OIDC_CLAIMS.MANAGE, ":")).call(_context5, scope);
31
+ })));
32
+ }
33
+
34
+ var teamId = options.teamId;
35
+
36
+ if (teamId) {
37
+ var _context6;
38
+
39
+ claims.push(_concatInstanceProperty__default["default"](_context6 = "".concat(formatters.OIDC_CLAIMS.TEAM_ID, ":")).call(_context6, teamId));
40
+ }
41
+
42
+ return _concatInstanceProperty__default["default"](_context7 = [// This is required as per OIDC spec.
43
+ formatters.OIDC_CLAIMS.OPEN_ID]).call(_context7, claims).join(' ');
44
+ };
45
+
46
+ exports.buildOidcScope = buildOidcScope;
@@ -12,13 +12,13 @@ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
12
12
  var reactIntl = require('react-intl');
13
13
  var ProjectExpiredSVG = require('@commercetools-frontend/assets/images/hourglass.svg');
14
14
  var applicationComponents = require('@commercetools-frontend/application-components');
15
- var servicePageProjectSwitcher = require('./service-page-project-switcher-b5b1f738.cjs.prod.js');
15
+ var servicePageProjectSwitcher = require('./service-page-project-switcher-91dc2d6b.cjs.prod.js');
16
16
  var jsxRuntime = require('@emotion/react/jsx-runtime');
17
17
  require('@emotion/styled/base');
18
18
  require('react-router-dom');
19
19
  require('@commercetools-frontend/application-shell-connectors');
20
- require('./index-e270df38.cjs.prod.js');
21
- require('./application-entry-point-b89a7e84.cjs.prod.js');
20
+ require('./index-7a56bcf7.cjs.prod.js');
21
+ require('./application-entry-point-aeb8ef57.cjs.prod.js');
22
22
  require('@babel/runtime-corejs3/helpers/toConsumableArray');
23
23
  require('@babel/runtime-corejs3/helpers/slicedToArray');
24
24
  require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
@@ -32,7 +32,9 @@ require('omit-empty-es');
32
32
  require('@commercetools-frontend/notifications');
33
33
  require('@commercetools-frontend/sdk');
34
34
  require('@commercetools-frontend/constants');
35
- require('./constants-745aeeca.cjs.prod.js');
35
+ require('./formatters-a5bb12eb.cjs.prod.js');
36
+ require('@babel/runtime-corejs3/core-js-stable/instance/map');
37
+ require('lodash/upperFirst');
36
38
  require('@commercetools-frontend/react-notifications');
37
39
  require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
38
40
  require('@babel/runtime-corejs3/core-js-stable/instance/includes');
@@ -44,8 +46,6 @@ require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
44
46
  require('@babel/runtime-corejs3/core-js-stable/instance/slice');
45
47
  require('@commercetools-frontend/sentry');
46
48
  require('@babel/runtime-corejs3/core-js-stable/url');
47
- require('@babel/runtime-corejs3/core-js-stable/instance/map');
48
- require('lodash/upperFirst');
49
49
  require('@babel/runtime-corejs3/core-js-stable/instance/find');
50
50
  require('@apollo/client');
51
51
  require('@commercetools/http-user-agent');
@@ -64,6 +64,7 @@ require('@apollo/client/link/retry');
64
64
  require('prop-types');
65
65
  require('react');
66
66
  require('tiny-invariant');
67
+ require('@commercetools-frontend/permissions');
67
68
  require('@emotion/react');
68
69
  require('@commercetools-frontend/i18n');
69
70
  require('perfume.js');
@@ -71,7 +72,7 @@ require('@babel/runtime-corejs3/helpers/typeof');
71
72
  require('@babel/runtime-corejs3/core-js-stable/instance/reverse');
72
73
  require('lodash/camelCase');
73
74
  require('@apollo/client/react');
74
- require('./oidc-be09bd90.cjs.prod.js');
75
+ require('./oidc-f15b3576.cjs.prod.js');
75
76
  require('qss');
76
77
  require('jwt-decode');
77
78
  require('@commercetools-frontend/assets/images/locked-diamond.svg');
@@ -113,7 +114,6 @@ require('@babel/runtime-corejs3/core-js-stable/instance/every');
113
114
  require('classnames');
114
115
  require('@commercetools-uikit/icons/inline-svg');
115
116
  require('@commercetools-frontend/assets/images/diagonal-line.svg');
116
- require('@commercetools-frontend/permissions');
117
117
  require('lodash/throttle');
118
118
  require('@commercetools-frontend/url-utils');
119
119
  require('@commercetools-frontend/actions-global');