@commercetools-frontend/application-shell 0.0.0-CRAFT-1791-20251006162610
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/LICENSE +21 -0
- package/README.md +7 -0
- package/dist/application-entry-point-10a5e1a5.esm.js +82 -0
- package/dist/application-entry-point-8c4b8e53.cjs.prod.js +86 -0
- package/dist/application-entry-point-c87294b0.cjs.dev.js +96 -0
- package/dist/box-09bf50e1.cjs.prod.js +30 -0
- package/dist/box-4857aa65.cjs.dev.js +30 -0
- package/dist/box-9cf180c1.esm.js +17 -0
- package/dist/cart-645074db.cjs.prod.js +30 -0
- package/dist/cart-b0044279.cjs.dev.js +30 -0
- package/dist/cart-bb491ca1.esm.js +17 -0
- package/dist/commercetools-frontend-application-shell.cjs.d.ts +2 -0
- package/dist/commercetools-frontend-application-shell.cjs.dev.js +214 -0
- package/dist/commercetools-frontend-application-shell.cjs.js +7 -0
- package/dist/commercetools-frontend-application-shell.cjs.prod.js +214 -0
- package/dist/commercetools-frontend-application-shell.esm.js +82 -0
- package/dist/connected-square-2d046cb8.cjs.prod.js +30 -0
- package/dist/connected-square-a2fea344.cjs.dev.js +30 -0
- package/dist/connected-square-fe6a790f.esm.js +17 -0
- package/dist/custom-view-dev-host-864a12e2.cjs.dev.js +197 -0
- package/dist/custom-view-dev-host-8e2f6aa7.cjs.prod.js +197 -0
- package/dist/custom-view-dev-host-d9c410aa.esm.js +186 -0
- package/dist/declarations/src/components/application-page-title/application-page-title.d.ts +24 -0
- package/dist/declarations/src/components/application-page-title/index.d.ts +1 -0
- package/dist/declarations/src/components/application-shell/application-shell.d.ts +45 -0
- package/dist/declarations/src/components/application-shell/index.d.ts +1 -0
- package/dist/declarations/src/components/application-shell-provider/application-shell-provider.d.ts +17 -0
- package/dist/declarations/src/components/application-shell-provider/index.d.ts +1 -0
- package/dist/declarations/src/components/application-shell-provider/utils.d.ts +3 -0
- package/dist/declarations/src/components/configure-intl-provider/configure-intl-provider.d.ts +12 -0
- package/dist/declarations/src/components/configure-intl-provider/index.d.ts +1 -0
- package/dist/declarations/src/components/custom-view-shell/custom-view-shell.d.ts +12 -0
- package/dist/declarations/src/components/custom-view-shell/index.d.ts +1 -0
- package/dist/declarations/src/components/error-apologizer/index.d.ts +5 -0
- package/dist/declarations/src/components/fetch-user/fetch-user.d.ts +16 -0
- package/dist/declarations/src/components/fetch-user/index.d.ts +1 -0
- package/dist/declarations/src/components/inject-reducers/index.d.ts +1 -0
- package/dist/declarations/src/components/inject-reducers/inject-reducers.d.ts +13 -0
- package/dist/declarations/src/components/redirect-to-login/index.d.ts +5 -0
- package/dist/declarations/src/components/redirect-to-logout/index.d.ts +4 -0
- package/dist/declarations/src/components/route-catch-all/index.d.ts +2 -0
- package/dist/declarations/src/components/setup-flop-flip-provider/index.d.ts +1 -0
- package/dist/declarations/src/components/setup-flop-flip-provider/setup-flop-flip-provider.d.ts +17 -0
- package/dist/declarations/src/components/suspended-route/index.d.ts +3 -0
- package/dist/declarations/src/components/suspended-route/protected-route.d.ts +7 -0
- package/dist/declarations/src/components/suspended-route/suspended-protected-route.d.ts +7 -0
- package/dist/declarations/src/components/suspended-route/suspended-route.d.ts +10 -0
- package/dist/declarations/src/configure-store.d.ts +22 -0
- package/dist/declarations/src/export-types.d.ts +8 -0
- package/dist/declarations/src/hooks/use-routes-creator/index.d.ts +1 -0
- package/dist/declarations/src/hooks/use-routes-creator/use-routes-creator.d.ts +22 -0
- package/dist/declarations/src/index.d.ts +33 -0
- package/dist/declarations/src/ssr/index.d.ts +2 -0
- package/dist/declarations/src/test-utils/custom-views-utils.d.ts +21 -0
- package/dist/declarations/src/test-utils/index.d.ts +2 -0
- package/dist/declarations/src/test-utils/test-utils.d.ts +87 -0
- package/dist/declarations/src/types/generated/mc.d.ts +742 -0
- package/dist/declarations/src/utils/get-previous-project-key/get-previous-project-key.d.ts +2 -0
- package/dist/declarations/src/utils/get-previous-project-key/index.d.ts +1 -0
- package/dist/declarations/src/utils/oidc.d.ts +10 -0
- package/dist/declarations/src/utils/setup-global-error-listener/index.d.ts +1 -0
- package/dist/declarations/src/utils/setup-global-error-listener/setup-global-error-listener.d.ts +1 -0
- package/dist/declarations/src/version.d.ts +2 -0
- package/dist/declarations-connectors/dist/commercetools-frontend-application-shell-connectors.cjs.d.ts +2 -0
- package/dist/declarations-connectors/src/components/application-context/application-context.d.ts +109 -0
- package/dist/declarations-connectors/src/components/application-context/index.d.ts +10 -0
- package/dist/declarations-connectors/src/components/application-context/normalizers.d.ts +48 -0
- package/dist/declarations-connectors/src/components/custom-view-context/custom-view-context.d.ts +19 -0
- package/dist/declarations-connectors/src/components/custom-view-context/index.d.ts +4 -0
- package/dist/declarations-connectors/src/components/project-extension-image-regex/index.d.ts +3 -0
- package/dist/declarations-connectors/src/components/project-extension-image-regex/project-extension-image-regex.d.ts +37 -0
- package/dist/declarations-connectors/src/configure-apollo.d.ts +7 -0
- package/dist/declarations-connectors/src/export-types.d.ts +21 -0
- package/dist/declarations-connectors/src/hooks/apollo-hooks/apollo-hooks.d.ts +12 -0
- package/dist/declarations-connectors/src/hooks/apollo-hooks/index.d.ts +1 -0
- package/dist/declarations-connectors/src/hooks/custom-views/use-custom-view-parent-data-refresher.d.ts +5 -0
- package/dist/declarations-connectors/src/index.d.ts +12 -0
- package/dist/declarations-connectors/src/types/generated/mc.d.ts +742 -0
- package/dist/declarations-connectors/src/types/generated/settings.d.ts +2116 -0
- package/dist/declarations-connectors/src/utils/apollo-client-runtime-cache.d.ts +4 -0
- package/dist/declarations-connectors/src/utils/apollo-context.d.ts +16 -0
- package/dist/declarations-connectors/src/utils/get-correlation-id/get-correlation-id.d.ts +3 -0
- package/dist/declarations-connectors/src/utils/get-correlation-id/index.d.ts +1 -0
- package/dist/declarations-connectors/src/utils/get-mc-api-url/get-mc-api-url.d.ts +3 -0
- package/dist/declarations-connectors/src/utils/get-mc-api-url/index.d.ts +1 -0
- package/dist/declarations-connectors/src/utils/http-client.d.ts +107 -0
- package/dist/declarations-connectors/src/utils/index.d.ts +7 -0
- package/dist/declarations-connectors/src/utils/logger.d.ts +10 -0
- package/dist/declarations-connectors/src/utils/oidc-storage.d.ts +12 -0
- package/dist/declarations-connectors/src/utils/select-project-key-from-url/index.d.ts +1 -0
- package/dist/declarations-connectors/src/utils/select-project-key-from-url/select-project-key-from-url.d.ts +1 -0
- package/dist/declarations-connectors/src/utils/select-team-id-from-storage/index.d.ts +1 -0
- package/dist/declarations-connectors/src/utils/select-team-id-from-storage/select-team-id-from-storage.d.ts +1 -0
- package/dist/declarations-connectors/src/utils/select-user-id/index.d.ts +1 -0
- package/dist/declarations-connectors/src/utils/select-user-id/select-user-id.d.ts +1 -0
- package/dist/declarations-connectors/src/version.d.ts +2 -0
- package/dist/error-apologizer-76f087f4.esm.js +39 -0
- package/dist/error-apologizer-84dc825c.cjs.prod.js +53 -0
- package/dist/error-apologizer-f6793491.cjs.dev.js +53 -0
- package/dist/gear-4f7cde98.cjs.prod.js +30 -0
- package/dist/gear-ee90ba83.esm.js +17 -0
- package/dist/gear-f2668579.cjs.dev.js +30 -0
- package/dist/get-mc-origin-8f7a578c.cjs.prod.js +51 -0
- package/dist/get-mc-origin-a86dff20.cjs.dev.js +51 -0
- package/dist/get-mc-origin-fecfee07.esm.js +44 -0
- package/dist/heart-01f01038.cjs.prod.js +30 -0
- package/dist/heart-86f780f3.esm.js +17 -0
- package/dist/heart-e49dd92a.cjs.dev.js +30 -0
- package/dist/index-245e2980.cjs.prod.js +237 -0
- package/dist/index-60cd194b.cjs.prod.js +2053 -0
- package/dist/index-614accc4.cjs.dev.js +237 -0
- package/dist/index-86039df7.esm.js +211 -0
- package/dist/index-8637a317.esm.js +2072 -0
- package/dist/index-f0f4fbcd.cjs.dev.js +2134 -0
- package/dist/list-with-search-027ab8eb.cjs.dev.js +30 -0
- package/dist/list-with-search-6462447e.cjs.prod.js +30 -0
- package/dist/list-with-search-d2901e34.esm.js +17 -0
- package/dist/location-537e0660.cjs.prod.js +32 -0
- package/dist/location-c835b8df.cjs.dev.js +32 -0
- package/dist/location-f21dbc25.esm.js +30 -0
- package/dist/navbar-022383bd.cjs.dev.js +1364 -0
- package/dist/navbar-844d350d.esm.js +1332 -0
- package/dist/navbar-acc2cd1b.cjs.prod.js +1225 -0
- package/dist/oidc-8827f9fe.cjs.dev.js +98 -0
- package/dist/oidc-b2520905.esm.js +84 -0
- package/dist/oidc-callback-2800b1f0.cjs.prod.js +243 -0
- package/dist/oidc-callback-5213e755.cjs.dev.js +246 -0
- package/dist/oidc-callback-619f18d9.esm.js +232 -0
- package/dist/oidc-d74e6aa2.cjs.prod.js +98 -0
- package/dist/paperclip-005ec544.cjs.dev.js +30 -0
- package/dist/paperclip-a820ee87.esm.js +17 -0
- package/dist/paperclip-fe72a70d.cjs.prod.js +30 -0
- package/dist/plugin-81ae1044.cjs.prod.js +30 -0
- package/dist/plugin-c7bf9e53.esm.js +17 -0
- package/dist/plugin-feb22442.cjs.dev.js +30 -0
- package/dist/project-container-22619059.cjs.prod.js +378 -0
- package/dist/project-container-96f2d671.cjs.dev.js +378 -0
- package/dist/project-container-ef2dfb60.esm.js +357 -0
- package/dist/project-expired-8c4cd8a0.cjs.dev.js +137 -0
- package/dist/project-expired-9994ed78.cjs.prod.js +137 -0
- package/dist/project-expired-dc881501.esm.js +123 -0
- package/dist/project-not-found-3933434f.cjs.prod.js +130 -0
- package/dist/project-not-found-3a76e8d7.cjs.dev.js +130 -0
- package/dist/project-not-found-57a3a216.esm.js +116 -0
- package/dist/project-not-initialized-2eebb2c7.esm.js +123 -0
- package/dist/project-not-initialized-3cfd0aed.cjs.dev.js +137 -0
- package/dist/project-not-initialized-91af2604.cjs.prod.js +137 -0
- package/dist/project-suspended-0c98a90e.cjs.dev.js +135 -0
- package/dist/project-suspended-dddbda8b.cjs.prod.js +135 -0
- package/dist/project-suspended-eeb5f62e.esm.js +121 -0
- package/dist/quick-access-1475bad4.cjs.dev.js +1893 -0
- package/dist/quick-access-ba70983f.cjs.prod.js +1875 -0
- package/dist/quick-access-d2f9b458.esm.js +1865 -0
- package/dist/redirect-to-login-12f467b8.cjs.prod.js +117 -0
- package/dist/redirect-to-login-2944c890.esm.js +115 -0
- package/dist/redirect-to-login-3bee13ba.cjs.dev.js +117 -0
- package/dist/redirect-to-logout-4587f4ed.cjs.dev.js +126 -0
- package/dist/redirect-to-logout-7bb3eb45.esm.js +113 -0
- package/dist/redirect-to-logout-a96985ce.cjs.prod.js +126 -0
- package/dist/redirect-to-project-create-9249e554.esm.js +60 -0
- package/dist/redirect-to-project-create-e4ff7797.cjs.prod.js +68 -0
- package/dist/redirect-to-project-create-f4f01842.cjs.dev.js +68 -0
- package/dist/redirector-0c72d0a4.cjs.prod.js +61 -0
- package/dist/redirector-72ccfbc2.cjs.dev.js +61 -0
- package/dist/redirector-d856975f.esm.js +46 -0
- package/dist/requests-in-flight-loader-0594117d.cjs.dev.js +122 -0
- package/dist/requests-in-flight-loader-59e8fb86.esm.js +107 -0
- package/dist/requests-in-flight-loader-a8288906.cjs.prod.js +122 -0
- package/dist/rocket-3372731a.cjs.dev.js +30 -0
- package/dist/rocket-bacf24be.esm.js +17 -0
- package/dist/rocket-cb99be06.cjs.prod.js +30 -0
- package/dist/route-catch-all-7803b1fd.esm.js +42 -0
- package/dist/route-catch-all-8e71a93c.cjs.prod.js +44 -0
- package/dist/route-catch-all-b979e1fd.cjs.dev.js +44 -0
- package/dist/service-page-project-switcher-37faf2fb.cjs.prod.js +37 -0
- package/dist/service-page-project-switcher-47296fb1.esm.js +39 -0
- package/dist/service-page-project-switcher-6cdff717.cjs.dev.js +45 -0
- package/dist/speedometer-26f52e73.cjs.prod.js +30 -0
- package/dist/speedometer-4c8e0b9c.esm.js +17 -0
- package/dist/speedometer-c1ec5a1d.cjs.dev.js +30 -0
- package/dist/star-6b9a91d2.cjs.dev.js +30 -0
- package/dist/star-af90a9c6.esm.js +17 -0
- package/dist/star-e4902bbb.cjs.prod.js +30 -0
- package/dist/tag-multi-1c065f61.cjs.prod.js +30 -0
- package/dist/tag-multi-4c2742de.esm.js +17 -0
- package/dist/tag-multi-abef3e15.cjs.dev.js +30 -0
- package/dist/tree-structure-3ec98cce.cjs.prod.js +30 -0
- package/dist/tree-structure-96ab0b7e.cjs.dev.js +30 -0
- package/dist/tree-structure-ca0498a0.esm.js +17 -0
- package/dist/use-applications-menu-14a5a1f4.cjs.prod.js +172 -0
- package/dist/use-applications-menu-1514af11.esm.js +157 -0
- package/dist/use-applications-menu-823a2492.cjs.dev.js +172 -0
- package/dist/use-is-served-by-proxy-28f19a6f.cjs.dev.js +10 -0
- package/dist/use-is-served-by-proxy-480e8de8.cjs.prod.js +10 -0
- package/dist/use-is-served-by-proxy-a383da4b.esm.js +8 -0
- package/dist/user-filled-26f333b2.cjs.prod.js +30 -0
- package/dist/user-filled-34aeebcc.cjs.dev.js +30 -0
- package/dist/user-filled-61d8a81b.esm.js +17 -0
- package/dist/user-settings-menu-6113cdd3.cjs.dev.js +338 -0
- package/dist/user-settings-menu-d75f4958.cjs.prod.js +326 -0
- package/dist/user-settings-menu-f98bea89.esm.js +313 -0
- package/dist/world-22189397.cjs.prod.js +30 -0
- package/dist/world-500baeb2.cjs.dev.js +30 -0
- package/dist/world-523efd61.esm.js +17 -0
- package/package.json +144 -0
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.d.ts +2 -0
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +20 -0
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.js +7 -0
- package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +20 -0
- package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +4 -0
- package/ssr/package.json +4 -0
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.d.ts +2 -0
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.dev.js +554 -0
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.js +7 -0
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.cjs.prod.js +554 -0
- package/test-utils/dist/commercetools-frontend-application-shell-test-utils.esm.js +502 -0
- package/test-utils/package.json +4 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
4
|
+
var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
|
|
5
|
+
|
|
6
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
7
|
+
|
|
8
|
+
var _mapInstanceProperty__default = /*#__PURE__*/_interopDefault(_mapInstanceProperty);
|
|
9
|
+
var _forEachInstanceProperty__default = /*#__PURE__*/_interopDefault(_forEachInstanceProperty);
|
|
10
|
+
|
|
11
|
+
const DIMENSIONS = {
|
|
12
|
+
header: '56px'
|
|
13
|
+
};
|
|
14
|
+
const NAVBAR = {
|
|
15
|
+
expanderHeight: '50px',
|
|
16
|
+
expanderSize: '40px',
|
|
17
|
+
iconSize: '24px',
|
|
18
|
+
iconSizeHover: '28px',
|
|
19
|
+
itemSize: '48px',
|
|
20
|
+
itemHeight: '56px',
|
|
21
|
+
sublistIndentationWhenCollapsed: '72px',
|
|
22
|
+
sublistIndentationWhenExpanded: '248px',
|
|
23
|
+
sublistItemMinHeight: '50px',
|
|
24
|
+
sublistWidth: '272px',
|
|
25
|
+
leftNavigationTransition: 'all 150ms cubic-bezier(1, 0, 0.58, 1)',
|
|
26
|
+
widthLeftNavigation: '80px',
|
|
27
|
+
widthLeftNavigationWhenExpanded: '256px'
|
|
28
|
+
};
|
|
29
|
+
const WINDOW_SIZES = {
|
|
30
|
+
STANDARD: 1024,
|
|
31
|
+
WIDE: 1200
|
|
32
|
+
};
|
|
33
|
+
const CONTAINERS = {
|
|
34
|
+
LOCALE_SWITCHER: 'locale-switcher-container',
|
|
35
|
+
LEFT_OF_PROFILE: 'left-of-profile'
|
|
36
|
+
};
|
|
37
|
+
const SUSPENSION_REASONS = {
|
|
38
|
+
TEMPORARY_MAINTENANCE: 'TemporaryMaintenance',
|
|
39
|
+
PAYMENT: 'Payment',
|
|
40
|
+
OTHER: 'Other'
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
// OIDC params
|
|
44
|
+
const OIDC_RESPONSE_TYPES = {
|
|
45
|
+
ID_TOKEN: 'id_token'
|
|
46
|
+
};
|
|
47
|
+
const OIDC_CLAIMS = {
|
|
48
|
+
OPEN_ID: 'openid',
|
|
49
|
+
PROJECT_KEY: 'project_key',
|
|
50
|
+
TEAM_ID: 'team_id',
|
|
51
|
+
APPLICATION_ID: 'application_id',
|
|
52
|
+
VIEW: 'view',
|
|
53
|
+
MANAGE: 'manage'
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
const buildOidcScope = options => {
|
|
57
|
+
var _context, _context2;
|
|
58
|
+
const claims = [];
|
|
59
|
+
|
|
60
|
+
// Set the projectKey
|
|
61
|
+
if (options.projectKey) {
|
|
62
|
+
claims.push(`${OIDC_CLAIMS.PROJECT_KEY}:${options.projectKey}`);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Set the OAuth Scopes
|
|
66
|
+
claims.push(..._mapInstanceProperty__default["default"](_context = options.oAuthScopes?.view ?? []).call(_context, scope => `${OIDC_CLAIMS.VIEW}:${scope}`));
|
|
67
|
+
claims.push(..._mapInstanceProperty__default["default"](_context2 = options.oAuthScopes?.manage ?? []).call(_context2, scope => `${OIDC_CLAIMS.MANAGE}:${scope}`));
|
|
68
|
+
// Set additional OAuth scopes
|
|
69
|
+
if (options?.additionalOAuthScopes) {
|
|
70
|
+
var _context3;
|
|
71
|
+
_forEachInstanceProperty__default["default"](_context3 = options.additionalOAuthScopes).call(_context3, additionalOAuthScope => {
|
|
72
|
+
var _context4, _context5;
|
|
73
|
+
claims.push(..._mapInstanceProperty__default["default"](_context4 = additionalOAuthScope.view ?? []).call(_context4, viewOAuthScope => `view/${additionalOAuthScope.name}:${viewOAuthScope}`), ..._mapInstanceProperty__default["default"](_context5 = additionalOAuthScope.manage ?? []).call(_context5, manageOAuthScope => `manage/${additionalOAuthScope.name}:${manageOAuthScope}`));
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
// Set the teamId and applicationId
|
|
78
|
+
if (options.teamId) {
|
|
79
|
+
claims.push(`${OIDC_CLAIMS.TEAM_ID}:${options.teamId}`);
|
|
80
|
+
if (options.applicationId) {
|
|
81
|
+
claims.push(`${OIDC_CLAIMS.APPLICATION_ID}:${options.applicationId}`);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return [
|
|
85
|
+
// This is required as per OIDC spec.
|
|
86
|
+
OIDC_CLAIMS.OPEN_ID,
|
|
87
|
+
// Custom claims
|
|
88
|
+
...claims].join(' ');
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
exports.CONTAINERS = CONTAINERS;
|
|
92
|
+
exports.DIMENSIONS = DIMENSIONS;
|
|
93
|
+
exports.NAVBAR = NAVBAR;
|
|
94
|
+
exports.OIDC_CLAIMS = OIDC_CLAIMS;
|
|
95
|
+
exports.OIDC_RESPONSE_TYPES = OIDC_RESPONSE_TYPES;
|
|
96
|
+
exports.SUSPENSION_REASONS = SUSPENSION_REASONS;
|
|
97
|
+
exports.WINDOW_SIZES = WINDOW_SIZES;
|
|
98
|
+
exports.buildOidcScope = buildOidcScope;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import _mapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/map';
|
|
2
|
+
import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/for-each';
|
|
3
|
+
|
|
4
|
+
const DIMENSIONS = {
|
|
5
|
+
header: '56px'
|
|
6
|
+
};
|
|
7
|
+
const NAVBAR = {
|
|
8
|
+
expanderHeight: '50px',
|
|
9
|
+
expanderSize: '40px',
|
|
10
|
+
iconSize: '24px',
|
|
11
|
+
iconSizeHover: '28px',
|
|
12
|
+
itemSize: '48px',
|
|
13
|
+
itemHeight: '56px',
|
|
14
|
+
sublistIndentationWhenCollapsed: '72px',
|
|
15
|
+
sublistIndentationWhenExpanded: '248px',
|
|
16
|
+
sublistItemMinHeight: '50px',
|
|
17
|
+
sublistWidth: '272px',
|
|
18
|
+
leftNavigationTransition: 'all 150ms cubic-bezier(1, 0, 0.58, 1)',
|
|
19
|
+
widthLeftNavigation: '80px',
|
|
20
|
+
widthLeftNavigationWhenExpanded: '256px'
|
|
21
|
+
};
|
|
22
|
+
const WINDOW_SIZES = {
|
|
23
|
+
STANDARD: 1024,
|
|
24
|
+
WIDE: 1200
|
|
25
|
+
};
|
|
26
|
+
const CONTAINERS = {
|
|
27
|
+
LOCALE_SWITCHER: 'locale-switcher-container',
|
|
28
|
+
LEFT_OF_PROFILE: 'left-of-profile'
|
|
29
|
+
};
|
|
30
|
+
const SUSPENSION_REASONS = {
|
|
31
|
+
TEMPORARY_MAINTENANCE: 'TemporaryMaintenance',
|
|
32
|
+
PAYMENT: 'Payment',
|
|
33
|
+
OTHER: 'Other'
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
// OIDC params
|
|
37
|
+
const OIDC_RESPONSE_TYPES = {
|
|
38
|
+
ID_TOKEN: 'id_token'
|
|
39
|
+
};
|
|
40
|
+
const OIDC_CLAIMS = {
|
|
41
|
+
OPEN_ID: 'openid',
|
|
42
|
+
PROJECT_KEY: 'project_key',
|
|
43
|
+
TEAM_ID: 'team_id',
|
|
44
|
+
APPLICATION_ID: 'application_id',
|
|
45
|
+
VIEW: 'view',
|
|
46
|
+
MANAGE: 'manage'
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const buildOidcScope = options => {
|
|
50
|
+
var _context, _context2;
|
|
51
|
+
const claims = [];
|
|
52
|
+
|
|
53
|
+
// Set the projectKey
|
|
54
|
+
if (options.projectKey) {
|
|
55
|
+
claims.push(`${OIDC_CLAIMS.PROJECT_KEY}:${options.projectKey}`);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// Set the OAuth Scopes
|
|
59
|
+
claims.push(..._mapInstanceProperty(_context = options.oAuthScopes?.view ?? []).call(_context, scope => `${OIDC_CLAIMS.VIEW}:${scope}`));
|
|
60
|
+
claims.push(..._mapInstanceProperty(_context2 = options.oAuthScopes?.manage ?? []).call(_context2, scope => `${OIDC_CLAIMS.MANAGE}:${scope}`));
|
|
61
|
+
// Set additional OAuth scopes
|
|
62
|
+
if (options?.additionalOAuthScopes) {
|
|
63
|
+
var _context3;
|
|
64
|
+
_forEachInstanceProperty(_context3 = options.additionalOAuthScopes).call(_context3, additionalOAuthScope => {
|
|
65
|
+
var _context4, _context5;
|
|
66
|
+
claims.push(..._mapInstanceProperty(_context4 = additionalOAuthScope.view ?? []).call(_context4, viewOAuthScope => `view/${additionalOAuthScope.name}:${viewOAuthScope}`), ..._mapInstanceProperty(_context5 = additionalOAuthScope.manage ?? []).call(_context5, manageOAuthScope => `manage/${additionalOAuthScope.name}:${manageOAuthScope}`));
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// Set the teamId and applicationId
|
|
71
|
+
if (options.teamId) {
|
|
72
|
+
claims.push(`${OIDC_CLAIMS.TEAM_ID}:${options.teamId}`);
|
|
73
|
+
if (options.applicationId) {
|
|
74
|
+
claims.push(`${OIDC_CLAIMS.APPLICATION_ID}:${options.applicationId}`);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return [
|
|
78
|
+
// This is required as per OIDC spec.
|
|
79
|
+
OIDC_CLAIMS.OPEN_ID,
|
|
80
|
+
// Custom claims
|
|
81
|
+
...claims].join(' ');
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
export { CONTAINERS as C, DIMENSIONS as D, NAVBAR as N, OIDC_CLAIMS as O, SUSPENSION_REASONS as S, WINDOW_SIZES as W, OIDC_RESPONSE_TYPES as a, buildOidcScope as b };
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
4
|
+
var _URL = require('@babel/runtime-corejs3/core-js-stable/url');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var jwtDecode = require('jwt-decode');
|
|
7
|
+
var qss = require('qss');
|
|
8
|
+
var reactRouterDom = require('react-router-dom');
|
|
9
|
+
var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
|
|
10
|
+
var redirector = require('./redirector-0c72d0a4.cjs.prod.js');
|
|
11
|
+
var _styled = require('@emotion/styled/base');
|
|
12
|
+
var applicationComponents = require('@commercetools-frontend/application-components');
|
|
13
|
+
var FailedAuthenticationSVG = require('@commercetools-frontend/assets/images/doors-closed.svg');
|
|
14
|
+
var i18n = require('@commercetools-frontend/i18n');
|
|
15
|
+
var Card = require('@commercetools-uikit/card');
|
|
16
|
+
var Constraints = require('@commercetools-uikit/constraints');
|
|
17
|
+
var designSystem = require('@commercetools-uikit/design-system');
|
|
18
|
+
var FlatButton = require('@commercetools-uikit/flat-button');
|
|
19
|
+
var icons = require('@commercetools-uikit/icons');
|
|
20
|
+
var notifications = require('@commercetools-uikit/notifications');
|
|
21
|
+
var Spacings = require('@commercetools-uikit/spacings');
|
|
22
|
+
var Text = require('@commercetools-uikit/text');
|
|
23
|
+
var dist_commercetoolsFrontendApplicationShell = require('./index-60cd194b.cjs.prod.js');
|
|
24
|
+
var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
25
|
+
require('@babel/runtime-corejs3/core-js-stable/object/keys');
|
|
26
|
+
require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
|
|
27
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/filter');
|
|
28
|
+
require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
|
|
29
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
|
|
30
|
+
require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
|
|
31
|
+
require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
|
|
32
|
+
require('@babel/runtime-corejs3/core-js-stable/object/define-property');
|
|
33
|
+
require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
34
|
+
require('./location-537e0660.cjs.prod.js');
|
|
35
|
+
require('./index-245e2980.cjs.prod.js');
|
|
36
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/reduce');
|
|
37
|
+
require('@babel/runtime-corejs3/core-js-stable/object/entries');
|
|
38
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/concat');
|
|
39
|
+
require('@babel/runtime-corejs3/core-js-stable/reflect/has');
|
|
40
|
+
require('@reduxjs/toolkit');
|
|
41
|
+
require('lodash/mapValues');
|
|
42
|
+
require('omit-empty-es');
|
|
43
|
+
require('redux');
|
|
44
|
+
require('redux-thunk');
|
|
45
|
+
require('@commercetools-frontend/constants');
|
|
46
|
+
require('@commercetools-frontend/notifications');
|
|
47
|
+
require('@commercetools-frontend/sdk');
|
|
48
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/index-of');
|
|
49
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/slice');
|
|
50
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/includes');
|
|
51
|
+
require('@commercetools-frontend/sentry');
|
|
52
|
+
require('@commercetools-frontend/react-notifications');
|
|
53
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
|
|
54
|
+
require('redux-logger');
|
|
55
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
56
|
+
require('@babel/runtime-corejs3/core-js-stable/array/is-array');
|
|
57
|
+
require('@emotion/react');
|
|
58
|
+
require('./oidc-d74e6aa2.cjs.prod.js');
|
|
59
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
60
|
+
require('react-intl');
|
|
61
|
+
require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
|
|
62
|
+
require('memoize-one');
|
|
63
|
+
require('react-select');
|
|
64
|
+
require('@commercetools-uikit/accessible-hidden');
|
|
65
|
+
require('@commercetools-uikit/select-input');
|
|
66
|
+
require('@commercetools-frontend/assets/images/ct-logo.svg');
|
|
67
|
+
require('@commercetools-uikit/loading-spinner');
|
|
68
|
+
require('@commercetools-frontend/browser-history');
|
|
69
|
+
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
|
+
require('@babel/runtime-corejs3/core-js-stable/object/from-entries');
|
|
77
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/flags');
|
|
78
|
+
require('@apollo/client/react');
|
|
79
|
+
require('@flopflip/combine-adapters');
|
|
80
|
+
require('@flopflip/http-adapter');
|
|
81
|
+
require('@flopflip/launchdarkly-adapter');
|
|
82
|
+
require('@flopflip/react-broadcast');
|
|
83
|
+
require('@flopflip/types');
|
|
84
|
+
require('react-redux');
|
|
85
|
+
require('@commercetools-uikit/design-system/materials/resets.css');
|
|
86
|
+
require('@commercetools-frontend/application-config/ssr');
|
|
87
|
+
require('@commercetools-frontend/permissions');
|
|
88
|
+
require('@flopflip/memory-adapter');
|
|
89
|
+
require('@babel/runtime-corejs3/core-js-stable/json/stringify');
|
|
90
|
+
require('@babel/runtime-corejs3/core-js-stable/instance/some');
|
|
91
|
+
require('@commercetools-frontend/actions-global');
|
|
92
|
+
|
|
93
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
|
|
94
|
+
|
|
95
|
+
var _URL__default = /*#__PURE__*/_interopDefault(_URL);
|
|
96
|
+
var jwtDecode__default = /*#__PURE__*/_interopDefault(jwtDecode);
|
|
97
|
+
var _styled__default = /*#__PURE__*/_interopDefault(_styled);
|
|
98
|
+
var FailedAuthenticationSVG__default = /*#__PURE__*/_interopDefault(FailedAuthenticationSVG);
|
|
99
|
+
var Card__default = /*#__PURE__*/_interopDefault(Card);
|
|
100
|
+
var Constraints__default = /*#__PURE__*/_interopDefault(Constraints);
|
|
101
|
+
var FlatButton__default = /*#__PURE__*/_interopDefault(FlatButton);
|
|
102
|
+
var Spacings__default = /*#__PURE__*/_interopDefault(Spacings);
|
|
103
|
+
var Text__default = /*#__PURE__*/_interopDefault(Text);
|
|
104
|
+
|
|
105
|
+
const Divider = /*#__PURE__*/_styled__default["default"]("div", {
|
|
106
|
+
target: "e57nw7s0"
|
|
107
|
+
} )("box-sizing:border-box;width:100%;margin:0;border:0;border-style:solid;border-top-width:1px;border-top-color:", designSystem.customProperties.colorNeutral, ";" + ("" ));
|
|
108
|
+
const AuthCallbackErrorPage = props => {
|
|
109
|
+
const history = reactRouterDom.useHistory();
|
|
110
|
+
return jsxRuntime.jsx(i18n.AsyncLocaleData, {
|
|
111
|
+
locale: props.locale,
|
|
112
|
+
applicationMessages: props.applicationMessages,
|
|
113
|
+
children: _ref => {
|
|
114
|
+
let locale = _ref.locale,
|
|
115
|
+
messages = _ref.messages;
|
|
116
|
+
return jsxRuntime.jsxs(dist_commercetoolsFrontendApplicationShell.ConfigureIntlProvider, {
|
|
117
|
+
locale: locale,
|
|
118
|
+
messages: messages,
|
|
119
|
+
children: [jsxRuntime.jsx(designSystem.ThemeProvider, {
|
|
120
|
+
theme: "default",
|
|
121
|
+
themeOverrides: applicationComponents.themesOverrides.default
|
|
122
|
+
}), jsxRuntime.jsx(applicationComponents.PublicPageLayout, {
|
|
123
|
+
contentScale: "wide",
|
|
124
|
+
children: jsxRuntime.jsx(Spacings__default["default"].Inline, {
|
|
125
|
+
justifyContent: "center",
|
|
126
|
+
children: jsxRuntime.jsx(Constraints__default["default"].Horizontal, {
|
|
127
|
+
max: 11,
|
|
128
|
+
children: jsxRuntime.jsx(Card__default["default"], {
|
|
129
|
+
insetScale: "xl",
|
|
130
|
+
children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
131
|
+
scale: "l",
|
|
132
|
+
children: [jsxRuntime.jsx(Spacings__default["default"].Inline, {
|
|
133
|
+
justifyContent: "center",
|
|
134
|
+
children: jsxRuntime.jsx("img", {
|
|
135
|
+
width: "100%",
|
|
136
|
+
src: FailedAuthenticationSVG__default["default"],
|
|
137
|
+
alt: "Failed authentication"
|
|
138
|
+
})
|
|
139
|
+
}), jsxRuntime.jsx(Text__default["default"].Headline, {
|
|
140
|
+
as: "h2",
|
|
141
|
+
children: 'Authentication error'
|
|
142
|
+
}), jsxRuntime.jsx(notifications.ContentNotification, {
|
|
143
|
+
type: "error",
|
|
144
|
+
children: jsxRuntime.jsx(Spacings__default["default"].Stack, {
|
|
145
|
+
scale: "m",
|
|
146
|
+
children: jsxRuntime.jsx(Text__default["default"].Body, {
|
|
147
|
+
children: props.message
|
|
148
|
+
})
|
|
149
|
+
})
|
|
150
|
+
}), jsxRuntime.jsxs(Spacings__default["default"].Stack, {
|
|
151
|
+
scale: "m",
|
|
152
|
+
children: [jsxRuntime.jsx(Divider, {}), jsxRuntime.jsx(FlatButton__default["default"], {
|
|
153
|
+
label: "Try log in again",
|
|
154
|
+
icon: jsxRuntime.jsx(icons.AngleLeftIcon, {}),
|
|
155
|
+
onClick: () => {
|
|
156
|
+
history.push('/');
|
|
157
|
+
}
|
|
158
|
+
})]
|
|
159
|
+
})]
|
|
160
|
+
})
|
|
161
|
+
})
|
|
162
|
+
})
|
|
163
|
+
})
|
|
164
|
+
})]
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
};
|
|
169
|
+
AuthCallbackErrorPage.displayName = 'AuthCallbackErrorPage';
|
|
170
|
+
|
|
171
|
+
const OidcCallback = props => {
|
|
172
|
+
const location = reactRouterDom.useLocation();
|
|
173
|
+
const redirector$1 = redirector.useRedirector();
|
|
174
|
+
const _useState = react.useState(),
|
|
175
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
176
|
+
message = _useState2[0],
|
|
177
|
+
setMessage = _useState2[1];
|
|
178
|
+
const fragments = qss.decode(location.hash.substring(1));
|
|
179
|
+
const sessionToken = fragments.sessionToken;
|
|
180
|
+
react.useEffect(() => {
|
|
181
|
+
// Validate the nonce (coming as a `state` parameter)
|
|
182
|
+
// By trying to load the related session state, we can implicitly check if the nonce is correct or not.
|
|
183
|
+
const sessionState = applicationShellConnectors.oidcStorage.getSessionState(fragments.state);
|
|
184
|
+
let errorMessage;
|
|
185
|
+
let decodedSessionToken;
|
|
186
|
+
try {
|
|
187
|
+
if (sessionToken) {
|
|
188
|
+
decodedSessionToken = jwtDecode__default["default"](sessionToken);
|
|
189
|
+
} else {
|
|
190
|
+
errorMessage = 'Invalid client session (missing sessionToken)';
|
|
191
|
+
}
|
|
192
|
+
} catch (err) {
|
|
193
|
+
if (err instanceof Error) {
|
|
194
|
+
errorMessage = err.message;
|
|
195
|
+
} else {
|
|
196
|
+
errorMessage = 'Unknown error';
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
if (!errorMessage) {
|
|
200
|
+
const hasValidSessionId = decodedSessionToken?.nonce === fragments.state;
|
|
201
|
+
const hasValidApplicationId = window.app.applicationId === sessionState?.applicationId;
|
|
202
|
+
if (!sessionState || !hasValidSessionId || !hasValidApplicationId) {
|
|
203
|
+
errorMessage = 'Invalid client session';
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
if (errorMessage) {
|
|
207
|
+
setMessage(errorMessage);
|
|
208
|
+
} else {
|
|
209
|
+
applicationShellConnectors.oidcStorage.setActiveSession(sessionToken);
|
|
210
|
+
applicationShellConnectors.oidcStorage.removeSessionState(fragments.state);
|
|
211
|
+
if (sessionState?.query.redirectTo) {
|
|
212
|
+
try {
|
|
213
|
+
const redirectToUrl = new _URL__default["default"](sessionState.query.redirectTo);
|
|
214
|
+
redirector$1({
|
|
215
|
+
to: redirectToUrl.pathname
|
|
216
|
+
});
|
|
217
|
+
return;
|
|
218
|
+
} catch (error) {
|
|
219
|
+
console.warn(`Invalid "redirectTo" URL`, sessionState.query.redirectTo);
|
|
220
|
+
// ignore
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
redirector$1({
|
|
224
|
+
to: location.pathname.replace('/oidc/callback', '')
|
|
225
|
+
});
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
// Only execute once!
|
|
230
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
231
|
+
}, []);
|
|
232
|
+
if (message) {
|
|
233
|
+
return jsxRuntime.jsx(AuthCallbackErrorPage, {
|
|
234
|
+
message: message,
|
|
235
|
+
locale: props.locale,
|
|
236
|
+
applicationMessages: props.applicationMessages
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
return null;
|
|
240
|
+
};
|
|
241
|
+
OidcCallback.displayName = 'OidcCallback';
|
|
242
|
+
|
|
243
|
+
exports["default"] = OidcCallback;
|