@commercetools-frontend/application-shell 24.10.0 → 24.12.0

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 (77) hide show
  1. package/dist/{application-entry-point-c87294b0.cjs.dev.js → application-entry-point-18d8fba0.cjs.dev.js} +7 -4
  2. package/dist/{application-entry-point-10a5e1a5.esm.js → application-entry-point-1b23fb6b.esm.js} +6 -4
  3. package/dist/{application-entry-point-8c4b8e53.cjs.prod.js → application-entry-point-74a06151.cjs.prod.js} +4 -3
  4. package/dist/commercetools-frontend-application-shell.cjs.dev.js +12 -11
  5. package/dist/commercetools-frontend-application-shell.cjs.prod.js +12 -11
  6. package/dist/commercetools-frontend-application-shell.esm.js +12 -11
  7. package/dist/{custom-view-dev-host-5039dc1d.esm.js → custom-view-dev-host-091163ea.esm.js} +20 -16
  8. package/dist/{custom-view-dev-host-b5e3a16a.cjs.dev.js → custom-view-dev-host-17daf42a.cjs.dev.js} +21 -16
  9. package/dist/{custom-view-dev-host-21561a3a.cjs.prod.js → custom-view-dev-host-a682a499.cjs.prod.js} +21 -16
  10. package/dist/declarations-connectors/src/index.d.ts +1 -1
  11. package/dist/declarations-connectors/src/utils/index.d.ts +1 -0
  12. package/dist/declarations-connectors/src/utils/select-user-language-from-storage/index.d.ts +1 -0
  13. package/dist/declarations-connectors/src/utils/select-user-language-from-storage/select-user-language-from-storage.d.ts +1 -0
  14. package/dist/{index-17f02024.cjs.dev.js → index-1d1cc31f.cjs.dev.js} +225 -368
  15. package/dist/{index-e4de734f.esm.js → index-1dadca21.esm.js} +227 -368
  16. package/dist/{index-614accc4.cjs.dev.js → index-25183095.cjs.dev.js} +2 -2
  17. package/dist/{index-11b385bb.cjs.prod.js → index-3cfc1f1e.cjs.prod.js} +213 -348
  18. package/dist/{index-245e2980.cjs.prod.js → index-52c724ed.cjs.prod.js} +2 -2
  19. package/dist/{index-86039df7.esm.js → index-5aaa33bb.esm.js} +2 -2
  20. package/dist/{navbar-022383bd.cjs.dev.js → navbar-586f7774.cjs.dev.js} +111 -92
  21. package/dist/{navbar-844d350d.esm.js → navbar-88e0fd1f.esm.js} +110 -92
  22. package/dist/{navbar-acc2cd1b.cjs.prod.js → navbar-93183a2d.cjs.prod.js} +111 -92
  23. package/dist/oidc-258fc018.cjs.prod.js +115 -0
  24. package/dist/oidc-35e8e62a.esm.js +100 -0
  25. package/dist/oidc-87d116c1.cjs.dev.js +115 -0
  26. package/dist/{oidc-callback-c014b1b0.esm.js → oidc-callback-019d623d.esm.js} +16 -14
  27. package/dist/{oidc-callback-ad64d7f6.cjs.dev.js → oidc-callback-47743232.cjs.dev.js} +16 -14
  28. package/dist/{oidc-callback-9beece27.cjs.prod.js → oidc-callback-6bdb3c6f.cjs.prod.js} +16 -14
  29. package/dist/{project-container-3e3c7013.cjs.dev.js → project-container-2245f020.cjs.dev.js} +53 -19
  30. package/dist/{project-container-e11b2fc6.esm.js → project-container-7fce9e66.esm.js} +52 -19
  31. package/dist/{project-container-f1710162.cjs.prod.js → project-container-954dbf0f.cjs.prod.js} +53 -19
  32. package/dist/{project-expired-39589063.esm.js → project-expired-1b0845c5.esm.js} +12 -11
  33. package/dist/{project-expired-f29e6d47.cjs.dev.js → project-expired-c941b592.cjs.dev.js} +12 -11
  34. package/dist/{project-expired-59169760.cjs.prod.js → project-expired-ee8b232c.cjs.prod.js} +12 -11
  35. package/dist/{project-not-found-88730a64.esm.js → project-not-found-340217f6.esm.js} +11 -10
  36. package/dist/{project-not-found-d968ede6.cjs.dev.js → project-not-found-9b7cfe88.cjs.dev.js} +11 -10
  37. package/dist/{project-not-found-625f0e91.cjs.prod.js → project-not-found-9cee9625.cjs.prod.js} +11 -10
  38. package/dist/{project-not-initialized-6d69541c.esm.js → project-not-initialized-55fd8df4.esm.js} +12 -11
  39. package/dist/{project-not-initialized-22d54dab.cjs.prod.js → project-not-initialized-7a058b68.cjs.prod.js} +12 -11
  40. package/dist/{project-not-initialized-f346dc17.cjs.dev.js → project-not-initialized-7b3843a3.cjs.dev.js} +12 -11
  41. package/dist/{project-suspended-d48e7d51.cjs.prod.js → project-suspended-12618898.cjs.prod.js} +11 -10
  42. package/dist/{project-suspended-be2e3265.esm.js → project-suspended-529b09d6.esm.js} +11 -10
  43. package/dist/{project-suspended-6a886974.cjs.dev.js → project-suspended-78e94b85.cjs.dev.js} +11 -10
  44. package/dist/{redirect-to-login-12f467b8.cjs.prod.js → redirect-to-login-3e4a6434.cjs.prod.js} +13 -10
  45. package/dist/{redirect-to-login-3bee13ba.cjs.dev.js → redirect-to-login-66ea895a.cjs.dev.js} +13 -10
  46. package/dist/{redirect-to-login-2944c890.esm.js → redirect-to-login-edbfacbc.esm.js} +13 -10
  47. package/dist/{redirect-to-logout-645e12ca.cjs.prod.js → redirect-to-logout-52a7810f.cjs.prod.js} +14 -12
  48. package/dist/{redirect-to-logout-0196921c.esm.js → redirect-to-logout-5d5fc361.esm.js} +14 -12
  49. package/dist/{redirect-to-logout-477ea146.cjs.dev.js → redirect-to-logout-b331b037.cjs.dev.js} +14 -12
  50. package/dist/{redirector-72ccfbc2.cjs.dev.js → redirector-0efdd994.cjs.dev.js} +4 -3
  51. package/dist/{redirector-d856975f.esm.js → redirector-656c6ee7.esm.js} +4 -3
  52. package/dist/{redirector-0c72d0a4.cjs.prod.js → redirector-c858d578.cjs.prod.js} +4 -3
  53. package/dist/{requests-in-flight-loader-82b93073.esm.js → requests-in-flight-loader-20021ccc.esm.js} +11 -10
  54. package/dist/{requests-in-flight-loader-08cfa2ce.cjs.prod.js → requests-in-flight-loader-64d2e12d.cjs.prod.js} +11 -10
  55. package/dist/{requests-in-flight-loader-fb6a69f6.cjs.dev.js → requests-in-flight-loader-83cab813.cjs.dev.js} +11 -10
  56. package/dist/{service-page-project-switcher-2d65c6f7.cjs.dev.js → service-page-project-switcher-49dabe13.cjs.dev.js} +1 -1
  57. package/dist/{service-page-project-switcher-1e41f587.esm.js → service-page-project-switcher-6cdd506b.esm.js} +1 -1
  58. package/dist/{service-page-project-switcher-2746dbcc.cjs.prod.js → service-page-project-switcher-f1b43eb7.cjs.prod.js} +1 -1
  59. package/dist/{use-applications-menu-823a2492.cjs.dev.js → use-applications-menu-48d924bd.cjs.prod.js} +47 -39
  60. package/dist/{use-applications-menu-14a5a1f4.cjs.prod.js → use-applications-menu-7f548a7a.cjs.dev.js} +47 -39
  61. package/dist/{use-applications-menu-1514af11.esm.js → use-applications-menu-b871849c.esm.js} +44 -37
  62. package/dist/{user-settings-menu-d75f4958.cjs.prod.js → user-settings-menu-6660f508.cjs.prod.js} +29 -22
  63. package/dist/{user-settings-menu-f98bea89.esm.js → user-settings-menu-afa82f2a.esm.js} +29 -22
  64. package/dist/{user-settings-menu-6113cdd3.cjs.dev.js → user-settings-menu-f5c74042.cjs.dev.js} +29 -22
  65. package/package.json +22 -22
  66. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +2 -1
  67. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +2 -1
  68. package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +2 -1
  69. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +26 -22
  70. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +26 -22
  71. package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +20 -17
  72. package/dist/oidc-8827f9fe.cjs.dev.js +0 -98
  73. package/dist/oidc-b2520905.esm.js +0 -84
  74. package/dist/oidc-d74e6aa2.cjs.prod.js +0 -98
  75. package/dist/quick-access-67db2a39.cjs.dev.js +0 -1893
  76. package/dist/quick-access-8c34e976.esm.js +0 -1865
  77. package/dist/quick-access-9001b324.cjs.prod.js +0 -1875
@@ -0,0 +1,115 @@
1
+ 'use strict';
2
+
3
+ var _concatInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/concat');
4
+ var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
5
+ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
6
+
7
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
8
+
9
+ var _concatInstanceProperty__default = /*#__PURE__*/_interopDefault(_concatInstanceProperty);
10
+ var _mapInstanceProperty__default = /*#__PURE__*/_interopDefault(_mapInstanceProperty);
11
+ var _forEachInstanceProperty__default = /*#__PURE__*/_interopDefault(_forEachInstanceProperty);
12
+
13
+ const DIMENSIONS = {
14
+ header: '56px'
15
+ };
16
+ const NAVBAR = {
17
+ expanderHeight: '50px',
18
+ expanderSize: '40px',
19
+ iconSize: '24px',
20
+ iconSizeHover: '28px',
21
+ itemSize: '48px',
22
+ itemHeight: '56px',
23
+ sublistIndentationWhenCollapsed: '72px',
24
+ sublistIndentationWhenExpanded: '248px',
25
+ sublistItemMinHeight: '50px',
26
+ sublistWidth: '272px',
27
+ leftNavigationTransition: 'all 150ms cubic-bezier(1, 0, 0.58, 1)',
28
+ widthLeftNavigation: '80px',
29
+ widthLeftNavigationWhenExpanded: '256px'
30
+ };
31
+ const WINDOW_SIZES = {
32
+ STANDARD: 1024,
33
+ WIDE: 1200
34
+ };
35
+ const CONTAINERS = {
36
+ LOCALE_SWITCHER: 'locale-switcher-container',
37
+ LEFT_OF_PROFILE: 'left-of-profile'
38
+ };
39
+ const SUSPENSION_REASONS = {
40
+ TEMPORARY_MAINTENANCE: 'TemporaryMaintenance',
41
+ PAYMENT: 'Payment',
42
+ OTHER: 'Other'
43
+ };
44
+
45
+ // OIDC params
46
+ const OIDC_RESPONSE_TYPES = {
47
+ ID_TOKEN: 'id_token'
48
+ };
49
+ const OIDC_CLAIMS = {
50
+ OPEN_ID: 'openid',
51
+ PROJECT_KEY: 'project_key',
52
+ TEAM_ID: 'team_id',
53
+ APPLICATION_ID: 'application_id',
54
+ VIEW: 'view',
55
+ MANAGE: 'manage'
56
+ };
57
+
58
+ const buildOidcScope = options => {
59
+ var _context2, _options$oAuthScopes$, _options$oAuthScopes, _context4, _options$oAuthScopes$2, _options$oAuthScopes2;
60
+ const claims = [];
61
+
62
+ // Set the projectKey
63
+ if (options.projectKey) {
64
+ var _context;
65
+ claims.push(_concatInstanceProperty__default["default"](_context = "".concat(OIDC_CLAIMS.PROJECT_KEY, ":")).call(_context, options.projectKey));
66
+ }
67
+
68
+ // Set the OAuth Scopes
69
+ claims.push(..._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, scope => {
70
+ var _context3;
71
+ return _concatInstanceProperty__default["default"](_context3 = "".concat(OIDC_CLAIMS.VIEW, ":")).call(_context3, scope);
72
+ }));
73
+ claims.push(..._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, scope => {
74
+ var _context5;
75
+ return _concatInstanceProperty__default["default"](_context5 = "".concat(OIDC_CLAIMS.MANAGE, ":")).call(_context5, scope);
76
+ }));
77
+ // Set additional OAuth scopes
78
+ if (options !== null && options !== void 0 && options.additionalOAuthScopes) {
79
+ var _context6;
80
+ _forEachInstanceProperty__default["default"](_context6 = options.additionalOAuthScopes).call(_context6, additionalOAuthScope => {
81
+ var _context7, _additionalOAuthScope, _context9, _additionalOAuthScope2;
82
+ claims.push(..._mapInstanceProperty__default["default"](_context7 = (_additionalOAuthScope = additionalOAuthScope.view) !== null && _additionalOAuthScope !== void 0 ? _additionalOAuthScope : []).call(_context7, viewOAuthScope => {
83
+ var _context8;
84
+ return _concatInstanceProperty__default["default"](_context8 = "view/".concat(additionalOAuthScope.name, ":")).call(_context8, viewOAuthScope);
85
+ }), ..._mapInstanceProperty__default["default"](_context9 = (_additionalOAuthScope2 = additionalOAuthScope.manage) !== null && _additionalOAuthScope2 !== void 0 ? _additionalOAuthScope2 : []).call(_context9, manageOAuthScope => {
86
+ var _context0;
87
+ return _concatInstanceProperty__default["default"](_context0 = "manage/".concat(additionalOAuthScope.name, ":")).call(_context0, manageOAuthScope);
88
+ }));
89
+ });
90
+ }
91
+
92
+ // Set the teamId and applicationId
93
+ if (options.teamId) {
94
+ var _context1;
95
+ claims.push(_concatInstanceProperty__default["default"](_context1 = "".concat(OIDC_CLAIMS.TEAM_ID, ":")).call(_context1, options.teamId));
96
+ if (options.applicationId) {
97
+ var _context10;
98
+ claims.push(_concatInstanceProperty__default["default"](_context10 = "".concat(OIDC_CLAIMS.APPLICATION_ID, ":")).call(_context10, options.applicationId));
99
+ }
100
+ }
101
+ return [
102
+ // This is required as per OIDC spec.
103
+ OIDC_CLAIMS.OPEN_ID,
104
+ // Custom claims
105
+ ...claims].join(' ');
106
+ };
107
+
108
+ exports.CONTAINERS = CONTAINERS;
109
+ exports.DIMENSIONS = DIMENSIONS;
110
+ exports.NAVBAR = NAVBAR;
111
+ exports.OIDC_CLAIMS = OIDC_CLAIMS;
112
+ exports.OIDC_RESPONSE_TYPES = OIDC_RESPONSE_TYPES;
113
+ exports.SUSPENSION_REASONS = SUSPENSION_REASONS;
114
+ exports.WINDOW_SIZES = WINDOW_SIZES;
115
+ exports.buildOidcScope = buildOidcScope;
@@ -5,7 +5,7 @@ import jwtDecode from 'jwt-decode';
5
5
  import { decode } from 'qss';
6
6
  import { useHistory, useLocation } from 'react-router-dom';
7
7
  import { oidcStorage } from '@commercetools-frontend/application-shell-connectors';
8
- import { u as useRedirector } from './redirector-d856975f.esm.js';
8
+ import { u as useRedirector } from './redirector-656c6ee7.esm.js';
9
9
  import _styled from '@emotion/styled/base';
10
10
  import { themesOverrides, PublicPageLayout } from '@commercetools-frontend/application-components';
11
11
  import FailedAuthenticationSVG from '@commercetools-frontend/assets/images/doors-closed.svg';
@@ -18,7 +18,7 @@ import { AngleLeftIcon } from '@commercetools-uikit/icons';
18
18
  import { ContentNotification } from '@commercetools-uikit/notifications';
19
19
  import Spacings from '@commercetools-uikit/spacings';
20
20
  import Text from '@commercetools-uikit/text';
21
- import { C as ConfigureIntlProvider } from './index-e4de734f.esm.js';
21
+ import { C as ConfigureIntlProvider } from './index-1dadca21.esm.js';
22
22
  import { jsx, jsxs } from '@emotion/react/jsx-runtime';
23
23
  import '@babel/runtime-corejs3/core-js-stable/object/keys';
24
24
  import '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
@@ -30,7 +30,7 @@ import '@babel/runtime-corejs3/core-js-stable/object/define-properties';
30
30
  import '@babel/runtime-corejs3/core-js-stable/object/define-property';
31
31
  import '@babel/runtime-corejs3/helpers/defineProperty';
32
32
  import './location-f21dbc25.esm.js';
33
- import './index-86039df7.esm.js';
33
+ import './index-5aaa33bb.esm.js';
34
34
  import '@babel/runtime-corejs3/core-js-stable/instance/reduce';
35
35
  import '@babel/runtime-corejs3/core-js-stable/object/entries';
36
36
  import '@babel/runtime-corejs3/core-js-stable/instance/concat';
@@ -53,9 +53,10 @@ import 'redux-logger';
53
53
  import '@babel/runtime-corejs3/core-js-stable/instance/find';
54
54
  import '@babel/runtime-corejs3/core-js-stable/array/is-array';
55
55
  import '@emotion/react';
56
- import './oidc-b2520905.esm.js';
56
+ import './oidc-35e8e62a.esm.js';
57
57
  import '@babel/runtime-corejs3/core-js-stable/instance/map';
58
58
  import 'react-intl';
59
+ import '@babel/runtime-corejs3/helpers/taggedTemplateLiteral';
59
60
  import '@babel/runtime-corejs3/helpers/objectWithoutProperties';
60
61
  import 'memoize-one';
61
62
  import 'react-select';
@@ -65,12 +66,6 @@ import '@commercetools-frontend/assets/images/ct-logo.svg';
65
66
  import '@commercetools-uikit/loading-spinner';
66
67
  import '@commercetools-frontend/browser-history';
67
68
  import '@commercetools-frontend/l10n';
68
- import '@babel/runtime-corejs3/core-js-stable/reflect/construct';
69
- import '@babel/runtime-corejs3/helpers/classCallCheck';
70
- import '@babel/runtime-corejs3/helpers/createClass';
71
- import '@babel/runtime-corejs3/helpers/possibleConstructorReturn';
72
- import '@babel/runtime-corejs3/helpers/getPrototypeOf';
73
- import '@babel/runtime-corejs3/helpers/inherits';
74
69
  import '@babel/runtime-corejs3/core-js-stable/object/from-entries';
75
70
  import '@babel/runtime-corejs3/core-js-stable/instance/flags';
76
71
  import '@apollo/client/react';
@@ -80,6 +75,12 @@ import '@flopflip/launchdarkly-adapter';
80
75
  import '@flopflip/react-broadcast';
81
76
  import '@flopflip/types';
82
77
  import 'react-redux';
78
+ import '@babel/runtime-corejs3/core-js-stable/reflect/construct';
79
+ import '@babel/runtime-corejs3/helpers/classCallCheck';
80
+ import '@babel/runtime-corejs3/helpers/createClass';
81
+ import '@babel/runtime-corejs3/helpers/possibleConstructorReturn';
82
+ import '@babel/runtime-corejs3/helpers/getPrototypeOf';
83
+ import '@babel/runtime-corejs3/helpers/inherits';
83
84
  import '@commercetools-uikit/design-system/materials/resets.css';
84
85
  import '@commercetools-frontend/application-config/ssr';
85
86
  import '@commercetools-frontend/permissions';
@@ -186,8 +187,9 @@ const OidcCallback = props => {
186
187
  }
187
188
  }
188
189
  if (!errorMessage) {
189
- const hasValidSessionId = decodedSessionToken?.nonce === fragments.state;
190
- const hasValidApplicationId = window.app.applicationId === sessionState?.applicationId;
190
+ var _decodedSessionToken;
191
+ const hasValidSessionId = ((_decodedSessionToken = decodedSessionToken) === null || _decodedSessionToken === void 0 ? void 0 : _decodedSessionToken.nonce) === fragments.state;
192
+ const hasValidApplicationId = window.app.applicationId === (sessionState === null || sessionState === void 0 ? void 0 : sessionState.applicationId);
191
193
  if (!sessionState || !hasValidSessionId || !hasValidApplicationId) {
192
194
  errorMessage = 'Invalid client session';
193
195
  }
@@ -197,7 +199,7 @@ const OidcCallback = props => {
197
199
  } else {
198
200
  oidcStorage.setActiveSession(sessionToken);
199
201
  oidcStorage.removeSessionState(fragments.state);
200
- if (sessionState?.query.redirectTo) {
202
+ if (sessionState !== null && sessionState !== void 0 && sessionState.query.redirectTo) {
201
203
  try {
202
204
  const redirectToUrl = new _URL(sessionState.query.redirectTo);
203
205
  redirector({
@@ -205,7 +207,7 @@ const OidcCallback = props => {
205
207
  });
206
208
  return;
207
209
  } catch (error) {
208
- console.warn(`Invalid "redirectTo" URL`, sessionState.query.redirectTo);
210
+ console.warn("Invalid \"redirectTo\" URL", sessionState.query.redirectTo);
209
211
  // ignore
210
212
  }
211
213
  }
@@ -7,7 +7,7 @@ var jwtDecode = require('jwt-decode');
7
7
  var qss = require('qss');
8
8
  var reactRouterDom = require('react-router-dom');
9
9
  var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
10
- var redirector = require('./redirector-72ccfbc2.cjs.dev.js');
10
+ var redirector = require('./redirector-0efdd994.cjs.dev.js');
11
11
  var _styled = require('@emotion/styled/base');
12
12
  var applicationComponents = require('@commercetools-frontend/application-components');
13
13
  var FailedAuthenticationSVG = require('@commercetools-frontend/assets/images/doors-closed.svg');
@@ -20,7 +20,7 @@ var icons = require('@commercetools-uikit/icons');
20
20
  var notifications = require('@commercetools-uikit/notifications');
21
21
  var Spacings = require('@commercetools-uikit/spacings');
22
22
  var Text = require('@commercetools-uikit/text');
23
- var dist_commercetoolsFrontendApplicationShell = require('./index-17f02024.cjs.dev.js');
23
+ var dist_commercetoolsFrontendApplicationShell = require('./index-1d1cc31f.cjs.dev.js');
24
24
  var jsxRuntime = require('@emotion/react/jsx-runtime');
25
25
  require('@babel/runtime-corejs3/core-js-stable/object/keys');
26
26
  require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
@@ -32,7 +32,7 @@ require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
32
32
  require('@babel/runtime-corejs3/core-js-stable/object/define-property');
33
33
  require('@babel/runtime-corejs3/helpers/defineProperty');
34
34
  require('./location-c835b8df.cjs.dev.js');
35
- require('./index-614accc4.cjs.dev.js');
35
+ require('./index-25183095.cjs.dev.js');
36
36
  require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
37
37
  require('@babel/runtime-corejs3/core-js-stable/object/entries');
38
38
  require('@babel/runtime-corejs3/core-js-stable/instance/concat');
@@ -55,9 +55,10 @@ require('redux-logger');
55
55
  require('@babel/runtime-corejs3/core-js-stable/instance/find');
56
56
  require('@babel/runtime-corejs3/core-js-stable/array/is-array');
57
57
  require('@emotion/react');
58
- require('./oidc-8827f9fe.cjs.dev.js');
58
+ require('./oidc-87d116c1.cjs.dev.js');
59
59
  require('@babel/runtime-corejs3/core-js-stable/instance/map');
60
60
  require('react-intl');
61
+ require('@babel/runtime-corejs3/helpers/taggedTemplateLiteral');
61
62
  require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
62
63
  require('memoize-one');
63
64
  require('react-select');
@@ -67,12 +68,6 @@ require('@commercetools-frontend/assets/images/ct-logo.svg');
67
68
  require('@commercetools-uikit/loading-spinner');
68
69
  require('@commercetools-frontend/browser-history');
69
70
  require('@commercetools-frontend/l10n');
70
- require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
71
- require('@babel/runtime-corejs3/helpers/classCallCheck');
72
- require('@babel/runtime-corejs3/helpers/createClass');
73
- require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
74
- require('@babel/runtime-corejs3/helpers/getPrototypeOf');
75
- require('@babel/runtime-corejs3/helpers/inherits');
76
71
  require('@babel/runtime-corejs3/core-js-stable/object/from-entries');
77
72
  require('@babel/runtime-corejs3/core-js-stable/instance/flags');
78
73
  require('@apollo/client/react');
@@ -82,6 +77,12 @@ require('@flopflip/launchdarkly-adapter');
82
77
  require('@flopflip/react-broadcast');
83
78
  require('@flopflip/types');
84
79
  require('react-redux');
80
+ require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
81
+ require('@babel/runtime-corejs3/helpers/classCallCheck');
82
+ require('@babel/runtime-corejs3/helpers/createClass');
83
+ require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
84
+ require('@babel/runtime-corejs3/helpers/getPrototypeOf');
85
+ require('@babel/runtime-corejs3/helpers/inherits');
85
86
  require('@commercetools-uikit/design-system/materials/resets.css');
86
87
  require('@commercetools-frontend/application-config/ssr');
87
88
  require('@commercetools-frontend/permissions');
@@ -200,8 +201,9 @@ const OidcCallback = props => {
200
201
  }
201
202
  }
202
203
  if (!errorMessage) {
203
- const hasValidSessionId = decodedSessionToken?.nonce === fragments.state;
204
- const hasValidApplicationId = window.app.applicationId === sessionState?.applicationId;
204
+ var _decodedSessionToken;
205
+ const hasValidSessionId = ((_decodedSessionToken = decodedSessionToken) === null || _decodedSessionToken === void 0 ? void 0 : _decodedSessionToken.nonce) === fragments.state;
206
+ const hasValidApplicationId = window.app.applicationId === (sessionState === null || sessionState === void 0 ? void 0 : sessionState.applicationId);
205
207
  if (!sessionState || !hasValidSessionId || !hasValidApplicationId) {
206
208
  errorMessage = 'Invalid client session';
207
209
  }
@@ -211,7 +213,7 @@ const OidcCallback = props => {
211
213
  } else {
212
214
  applicationShellConnectors.oidcStorage.setActiveSession(sessionToken);
213
215
  applicationShellConnectors.oidcStorage.removeSessionState(fragments.state);
214
- if (sessionState?.query.redirectTo) {
216
+ if (sessionState !== null && sessionState !== void 0 && sessionState.query.redirectTo) {
215
217
  try {
216
218
  const redirectToUrl = new _URL__default["default"](sessionState.query.redirectTo);
217
219
  redirector$1({
@@ -219,7 +221,7 @@ const OidcCallback = props => {
219
221
  });
220
222
  return;
221
223
  } catch (error) {
222
- console.warn(`Invalid "redirectTo" URL`, sessionState.query.redirectTo);
224
+ console.warn("Invalid \"redirectTo\" URL", sessionState.query.redirectTo);
223
225
  // ignore
224
226
  }
225
227
  }
@@ -7,7 +7,7 @@ var jwtDecode = require('jwt-decode');
7
7
  var qss = require('qss');
8
8
  var reactRouterDom = require('react-router-dom');
9
9
  var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
10
- var redirector = require('./redirector-0c72d0a4.cjs.prod.js');
10
+ var redirector = require('./redirector-c858d578.cjs.prod.js');
11
11
  var _styled = require('@emotion/styled/base');
12
12
  var applicationComponents = require('@commercetools-frontend/application-components');
13
13
  var FailedAuthenticationSVG = require('@commercetools-frontend/assets/images/doors-closed.svg');
@@ -20,7 +20,7 @@ var icons = require('@commercetools-uikit/icons');
20
20
  var notifications = require('@commercetools-uikit/notifications');
21
21
  var Spacings = require('@commercetools-uikit/spacings');
22
22
  var Text = require('@commercetools-uikit/text');
23
- var dist_commercetoolsFrontendApplicationShell = require('./index-11b385bb.cjs.prod.js');
23
+ var dist_commercetoolsFrontendApplicationShell = require('./index-3cfc1f1e.cjs.prod.js');
24
24
  var jsxRuntime = require('@emotion/react/jsx-runtime');
25
25
  require('@babel/runtime-corejs3/core-js-stable/object/keys');
26
26
  require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
@@ -32,7 +32,7 @@ require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
32
32
  require('@babel/runtime-corejs3/core-js-stable/object/define-property');
33
33
  require('@babel/runtime-corejs3/helpers/defineProperty');
34
34
  require('./location-537e0660.cjs.prod.js');
35
- require('./index-245e2980.cjs.prod.js');
35
+ require('./index-52c724ed.cjs.prod.js');
36
36
  require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
37
37
  require('@babel/runtime-corejs3/core-js-stable/object/entries');
38
38
  require('@babel/runtime-corejs3/core-js-stable/instance/concat');
@@ -55,9 +55,10 @@ require('redux-logger');
55
55
  require('@babel/runtime-corejs3/core-js-stable/instance/find');
56
56
  require('@babel/runtime-corejs3/core-js-stable/array/is-array');
57
57
  require('@emotion/react');
58
- require('./oidc-d74e6aa2.cjs.prod.js');
58
+ require('./oidc-258fc018.cjs.prod.js');
59
59
  require('@babel/runtime-corejs3/core-js-stable/instance/map');
60
60
  require('react-intl');
61
+ require('@babel/runtime-corejs3/helpers/taggedTemplateLiteral');
61
62
  require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
62
63
  require('memoize-one');
63
64
  require('react-select');
@@ -67,12 +68,6 @@ require('@commercetools-frontend/assets/images/ct-logo.svg');
67
68
  require('@commercetools-uikit/loading-spinner');
68
69
  require('@commercetools-frontend/browser-history');
69
70
  require('@commercetools-frontend/l10n');
70
- require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
71
- require('@babel/runtime-corejs3/helpers/classCallCheck');
72
- require('@babel/runtime-corejs3/helpers/createClass');
73
- require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
74
- require('@babel/runtime-corejs3/helpers/getPrototypeOf');
75
- require('@babel/runtime-corejs3/helpers/inherits');
76
71
  require('@babel/runtime-corejs3/core-js-stable/object/from-entries');
77
72
  require('@babel/runtime-corejs3/core-js-stable/instance/flags');
78
73
  require('@apollo/client/react');
@@ -82,6 +77,12 @@ require('@flopflip/launchdarkly-adapter');
82
77
  require('@flopflip/react-broadcast');
83
78
  require('@flopflip/types');
84
79
  require('react-redux');
80
+ require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
81
+ require('@babel/runtime-corejs3/helpers/classCallCheck');
82
+ require('@babel/runtime-corejs3/helpers/createClass');
83
+ require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
84
+ require('@babel/runtime-corejs3/helpers/getPrototypeOf');
85
+ require('@babel/runtime-corejs3/helpers/inherits');
85
86
  require('@commercetools-uikit/design-system/materials/resets.css');
86
87
  require('@commercetools-frontend/application-config/ssr');
87
88
  require('@commercetools-frontend/permissions');
@@ -197,8 +198,9 @@ const OidcCallback = props => {
197
198
  }
198
199
  }
199
200
  if (!errorMessage) {
200
- const hasValidSessionId = decodedSessionToken?.nonce === fragments.state;
201
- const hasValidApplicationId = window.app.applicationId === sessionState?.applicationId;
201
+ var _decodedSessionToken;
202
+ const hasValidSessionId = ((_decodedSessionToken = decodedSessionToken) === null || _decodedSessionToken === void 0 ? void 0 : _decodedSessionToken.nonce) === fragments.state;
203
+ const hasValidApplicationId = window.app.applicationId === (sessionState === null || sessionState === void 0 ? void 0 : sessionState.applicationId);
202
204
  if (!sessionState || !hasValidSessionId || !hasValidApplicationId) {
203
205
  errorMessage = 'Invalid client session';
204
206
  }
@@ -208,7 +210,7 @@ const OidcCallback = props => {
208
210
  } else {
209
211
  applicationShellConnectors.oidcStorage.setActiveSession(sessionToken);
210
212
  applicationShellConnectors.oidcStorage.removeSessionState(fragments.state);
211
- if (sessionState?.query.redirectTo) {
213
+ if (sessionState !== null && sessionState !== void 0 && sessionState.query.redirectTo) {
212
214
  try {
213
215
  const redirectToUrl = new _URL__default["default"](sessionState.query.redirectTo);
214
216
  redirector$1({
@@ -216,7 +218,7 @@ const OidcCallback = props => {
216
218
  });
217
219
  return;
218
220
  } catch (error) {
219
- console.warn(`Invalid "redirectTo" URL`, sessionState.query.redirectTo);
221
+ console.warn("Invalid \"redirectTo\" URL", sessionState.query.redirectTo);
220
222
  // ignore
221
223
  }
222
224
  }
@@ -9,9 +9,9 @@ var reactRouterDom = require('react-router-dom');
9
9
  var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
10
10
  var constants = require('@commercetools-frontend/constants');
11
11
  var reactNotifications = require('@commercetools-frontend/react-notifications');
12
- var oidc = require('./oidc-8827f9fe.cjs.dev.js');
13
- var applicationEntryPoint = require('./application-entry-point-c87294b0.cjs.dev.js');
14
- var dist_commercetoolsFrontendApplicationShell = require('./index-17f02024.cjs.dev.js');
12
+ var oidc = require('./oidc-87d116c1.cjs.dev.js');
13
+ var applicationEntryPoint = require('./application-entry-point-18d8fba0.cjs.dev.js');
14
+ var dist_commercetoolsFrontendApplicationShell = require('./index-1d1cc31f.cjs.dev.js');
15
15
  var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
16
16
  var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
17
17
  var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
@@ -33,13 +33,14 @@ var SelectInput = require('@commercetools-uikit/select-input');
33
33
  var Spacings = require('@commercetools-uikit/spacings');
34
34
  var Text = require('@commercetools-uikit/text');
35
35
  var jsxRuntime = require('@emotion/react/jsx-runtime');
36
+ var _includesInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/includes');
37
+ require('@babel/runtime-corejs3/core-js-stable/instance/concat');
36
38
  require('tiny-invariant');
37
39
  require('@commercetools-frontend/application-config/ssr');
38
40
  require('@commercetools-frontend/permissions');
39
- require('./index-614accc4.cjs.dev.js');
41
+ require('./index-25183095.cjs.dev.js');
40
42
  require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
41
43
  require('@babel/runtime-corejs3/core-js-stable/object/entries');
42
- require('@babel/runtime-corejs3/core-js-stable/instance/concat');
43
44
  require('@babel/runtime-corejs3/core-js-stable/reflect/has');
44
45
  require('@reduxjs/toolkit');
45
46
  require('lodash/mapValues');
@@ -50,7 +51,6 @@ require('@commercetools-frontend/notifications');
50
51
  require('@commercetools-frontend/sdk');
51
52
  require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
52
53
  require('@babel/runtime-corejs3/core-js-stable/instance/slice');
53
- require('@babel/runtime-corejs3/core-js-stable/instance/includes');
54
54
  require('@commercetools-frontend/sentry');
55
55
  require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
56
56
  require('redux-logger');
@@ -62,17 +62,12 @@ require('@commercetools-frontend/i18n');
62
62
  require('@babel/runtime-corejs3/core-js-stable/url');
63
63
  require('@commercetools-uikit/flat-button');
64
64
  require('./location-c835b8df.cjs.dev.js');
65
+ require('@babel/runtime-corejs3/helpers/taggedTemplateLiteral');
65
66
  require('memoize-one');
66
67
  require('@commercetools-frontend/assets/images/ct-logo.svg');
67
68
  require('@commercetools-uikit/loading-spinner');
68
69
  require('@commercetools-frontend/browser-history');
69
70
  require('@commercetools-frontend/l10n');
70
- require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
71
- require('@babel/runtime-corejs3/helpers/classCallCheck');
72
- require('@babel/runtime-corejs3/helpers/createClass');
73
- require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
74
- require('@babel/runtime-corejs3/helpers/getPrototypeOf');
75
- require('@babel/runtime-corejs3/helpers/inherits');
76
71
  require('@babel/runtime-corejs3/core-js-stable/object/from-entries');
77
72
  require('@babel/runtime-corejs3/core-js-stable/instance/flags');
78
73
  require('@apollo/client/react');
@@ -82,6 +77,12 @@ require('@flopflip/launchdarkly-adapter');
82
77
  require('@flopflip/react-broadcast');
83
78
  require('@flopflip/types');
84
79
  require('react-redux');
80
+ require('@babel/runtime-corejs3/core-js-stable/reflect/construct');
81
+ require('@babel/runtime-corejs3/helpers/classCallCheck');
82
+ require('@babel/runtime-corejs3/helpers/createClass');
83
+ require('@babel/runtime-corejs3/helpers/possibleConstructorReturn');
84
+ require('@babel/runtime-corejs3/helpers/getPrototypeOf');
85
+ require('@babel/runtime-corejs3/helpers/inherits');
85
86
  require('@commercetools-uikit/design-system/materials/resets.css');
86
87
  require('@flopflip/memory-adapter');
87
88
  require('@babel/runtime-corejs3/core-js-stable/json/stringify');
@@ -106,6 +107,7 @@ var IconButton__default = /*#__PURE__*/_interopDefault(IconButton);
106
107
  var SelectInput__default = /*#__PURE__*/_interopDefault(SelectInput);
107
108
  var Spacings__default = /*#__PURE__*/_interopDefault(Spacings);
108
109
  var Text__default = /*#__PURE__*/_interopDefault(Text);
110
+ var _includesInstanceProperty__default = /*#__PURE__*/_interopDefault(_includesInstanceProperty);
109
111
 
110
112
  var messages$1 = reactIntl.defineMessages({
111
113
  localesLabel: {
@@ -238,13 +240,43 @@ const LocaleSwitcher = props => {
238
240
  });
239
241
  };
240
242
 
241
- const ProjectExpired = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-expired-f29e6d47.cjs.dev.js' /* webpackChunkName: "project-expired" */); }));
243
+ const getSelectedDataLocaleForProject = projectLocales => {
244
+ const cachedDataLocale = window.localStorage.getItem(constants.STORAGE_KEYS.SELECTED_DATA_LOCALE);
245
+ // Make sure the cached locale is listed in the selected project
246
+ const isCachedDataLocaleIncludedInProjectLanguages = _includesInstanceProperty__default["default"](projectLocales).call(projectLocales, cachedDataLocale || '');
247
+ if (cachedDataLocale && isCachedDataLocaleIncludedInProjectLanguages) return cachedDataLocale;
248
+ // Pick the first locale from the list
249
+ const defaultDataLocaleForProject = projectLocales[0];
250
+ // Cache it
251
+ window.localStorage.setItem(constants.STORAGE_KEYS.SELECTED_DATA_LOCALE, defaultDataLocaleForProject);
252
+ return defaultDataLocaleForProject;
253
+ };
254
+ const ProjectDataLocale = props => {
255
+ const _useState = react.useState(getSelectedDataLocaleForProject(props.locales)),
256
+ _useState2 = _slicedToArray(_useState, 2),
257
+ locale = _useState2[0],
258
+ setLocale = _useState2[1];
259
+ const handleSetProjectDataLocale = react.useCallback(locale => {
260
+ setLocale(locale);
261
+ // Cache it
262
+ window.localStorage.setItem(constants.STORAGE_KEYS.SELECTED_DATA_LOCALE, locale);
263
+ }, []);
264
+ return jsxRuntime.jsx(jsxRuntime.Fragment, {
265
+ children: props.children({
266
+ locale,
267
+ setProjectDataLocale: handleSetProjectDataLocale
268
+ })
269
+ });
270
+ };
271
+ ProjectDataLocale.displayName = 'ProjectDataLocale';
272
+
273
+ const ProjectExpired = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-expired-c941b592.cjs.dev.js' /* webpackChunkName: "project-expired" */); }));
242
274
 
243
- const ProjectNotFound = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-not-found-d968ede6.cjs.dev.js' /* webpackChunkName: "project-not-found" */); }));
275
+ const ProjectNotFound = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-not-found-9b7cfe88.cjs.dev.js' /* webpackChunkName: "project-not-found" */); }));
244
276
 
245
- const ProjectNotInitialized = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-not-initialized-f346dc17.cjs.dev.js' /* webpackChunkName: "project-not-initialized" */); }));
277
+ const ProjectNotInitialized = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-not-initialized-7b3843a3.cjs.dev.js' /* webpackChunkName: "project-not-initialized" */); }));
246
278
 
247
- const ProjectSuspended = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-suspended-6a886974.cjs.dev.js' /* webpackChunkName: "project-suspended" */); }));
279
+ const ProjectSuspended = /*#__PURE__*/react.lazy(() => Promise.resolve().then(function () { return require('./project-suspended-78e94b85.cjs.dev.js' /* webpackChunkName: "project-suspended" */); }));
248
280
 
249
281
  var messages = reactIntl.defineMessages({
250
282
  trialDaysLeft: {
@@ -295,10 +327,11 @@ const ProjectContainer = props => {
295
327
  }, [projectKey]);
296
328
  const hasNoProjects = props.user && props.user.projects.results.length === 0;
297
329
  if (hasNoProjects) {
330
+ var _props$render;
298
331
  return jsxRuntime.jsxs(reactRouterDom.Switch, {
299
332
  children: [jsxRuntime.jsx(reactRouterDom.Route, {
300
333
  path: "/account",
301
- children: props.render?.()
334
+ children: (_props$render = props.render) === null || _props$render === void 0 ? void 0 : _props$render.call(props)
302
335
  }), jsxRuntime.jsx(reactRouterDom.Route, {
303
336
  children: jsxRuntime.jsx(dist_commercetoolsFrontendApplicationShell.RedirectToProjectCreate, {})
304
337
  })]
@@ -332,9 +365,10 @@ const ProjectContainer = props => {
332
365
  if (project.initialized === false) {
333
366
  return jsxRuntime.jsx(ProjectNotInitialized, {});
334
367
  }
335
- return jsxRuntime.jsx(dist_commercetoolsFrontendApplicationShell.ProjectDataLocale, {
368
+ return jsxRuntime.jsx(ProjectDataLocale, {
336
369
  locales: project.languages,
337
370
  children: _ref2 => {
371
+ var _project$expiry$daysL;
338
372
  let locale = _ref2.locale,
339
373
  setProjectDataLocale = _ref2.setProjectDataLocale;
340
374
  return jsxRuntime.jsx(applicationShellConnectors.ApplicationContextProvider, {
@@ -343,7 +377,7 @@ const ProjectContainer = props => {
343
377
  projectDataLocale: locale,
344
378
  environment: props.environment,
345
379
  children: jsxRuntime.jsxs(jsxRuntime.Fragment, {
346
- children: [shouldShowNotificationForTrialExpired(project.expiry.daysLeft ?? undefined) && jsxRuntime.jsx(reactNotifications.Notifier, {
380
+ children: [shouldShowNotificationForTrialExpired((_project$expiry$daysL = project.expiry.daysLeft) !== null && _project$expiry$daysL !== void 0 ? _project$expiry$daysL : undefined) && jsxRuntime.jsx(reactNotifications.Notifier, {
347
381
  kind: "warning",
348
382
  domain: constants.DOMAINS.GLOBAL,
349
383
  text: intl.formatMessage(messages.trialDaysLeft, {