@commercetools-frontend/application-shell 27.6.3 → 27.8.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 (60) hide show
  1. package/dist/application-shell-splitter-62fabf2c.cjs.prod.js +110 -0
  2. package/dist/application-shell-splitter-dbae9dfc.esm.js +96 -0
  3. package/dist/application-shell-splitter-e87a060f.cjs.dev.js +110 -0
  4. package/dist/commercetools-frontend-application-shell.cjs.dev.js +4 -3
  5. package/dist/commercetools-frontend-application-shell.cjs.prod.js +4 -3
  6. package/dist/commercetools-frontend-application-shell.esm.js +3 -3
  7. package/dist/{custom-view-dev-host-7d26ea5e.cjs.prod.js → custom-view-dev-host-09ad216c.cjs.prod.js} +2 -2
  8. package/dist/{custom-view-dev-host-0d3644b8.esm.js → custom-view-dev-host-3652a0d6.esm.js} +2 -2
  9. package/dist/{custom-view-dev-host-dec81316.cjs.dev.js → custom-view-dev-host-fccf2c99.cjs.dev.js} +2 -2
  10. package/dist/declarations/src/components/application-shell-splitter/application-shell-splitter.d.ts +25 -0
  11. package/dist/declarations/src/constants.d.ts +45 -0
  12. package/dist/declarations/src/index.d.ts +2 -0
  13. package/dist/{index-371785f8.esm.js → index-2856f98e.esm.js} +52 -19
  14. package/dist/{index-70a737ae.cjs.dev.js → index-70e88ad7.cjs.dev.js} +50 -17
  15. package/dist/{index-b1e142f7.cjs.prod.js → index-d0c30fac.cjs.prod.js} +44 -11
  16. package/dist/{navbar-c51e0607.cjs.dev.js → navbar-59504b51.cjs.dev.js} +1 -1
  17. package/dist/{navbar-9a40ead9.esm.js → navbar-9eb6c972.esm.js} +1 -1
  18. package/dist/{navbar-e287ce25.cjs.prod.js → navbar-f4b2552d.cjs.prod.js} +1 -1
  19. package/dist/{oidc-8827f9fe.cjs.dev.js → oidc-0cba182b.cjs.prod.js} +4 -0
  20. package/dist/{oidc-d74e6aa2.cjs.prod.js → oidc-b9e7297c.cjs.dev.js} +4 -0
  21. package/dist/{oidc-callback-f98bc953.esm.js → oidc-callback-2d5be737.esm.js} +2 -2
  22. package/dist/{oidc-callback-77ab94f0.cjs.prod.js → oidc-callback-60c1e8e8.cjs.prod.js} +2 -2
  23. package/dist/{oidc-callback-c0236511.cjs.dev.js → oidc-callback-d8397df9.cjs.dev.js} +2 -2
  24. package/dist/{oidc-b2520905.esm.js → oidc-cb344fae.esm.js} +4 -1
  25. package/dist/{project-container-8338f683.esm.js → project-container-08fbe4b7.esm.js} +6 -6
  26. package/dist/{project-container-8e831c17.cjs.dev.js → project-container-31a4f3c6.cjs.dev.js} +6 -6
  27. package/dist/{project-container-efdfbc63.cjs.prod.js → project-container-e61a39a2.cjs.prod.js} +6 -6
  28. package/dist/{project-expired-5239b705.cjs.dev.js → project-expired-324758a8.cjs.dev.js} +3 -3
  29. package/dist/{project-expired-06af3b29.cjs.prod.js → project-expired-97aa9779.cjs.prod.js} +3 -3
  30. package/dist/{project-expired-61ae5e69.esm.js → project-expired-bb3b8866.esm.js} +3 -3
  31. package/dist/{project-not-found-69258167.cjs.prod.js → project-not-found-4190bacf.cjs.prod.js} +3 -3
  32. package/dist/{project-not-found-6f846278.esm.js → project-not-found-569f8569.esm.js} +3 -3
  33. package/dist/{project-not-found-4a52cdc9.cjs.dev.js → project-not-found-d2857df2.cjs.dev.js} +3 -3
  34. package/dist/{project-not-initialized-4e7ceb53.cjs.prod.js → project-not-initialized-c84c85da.cjs.prod.js} +3 -3
  35. package/dist/{project-not-initialized-7990c722.cjs.dev.js → project-not-initialized-d60bab15.cjs.dev.js} +3 -3
  36. package/dist/{project-not-initialized-1ef2bb46.esm.js → project-not-initialized-fe8d8e96.esm.js} +3 -3
  37. package/dist/{project-suspended-63b8de82.cjs.prod.js → project-suspended-18333595.cjs.prod.js} +3 -3
  38. package/dist/{project-suspended-c097d58e.esm.js → project-suspended-4bb66583.esm.js} +3 -3
  39. package/dist/{project-suspended-e3f2bc2e.cjs.dev.js → project-suspended-f4900a38.cjs.dev.js} +3 -3
  40. package/dist/{redirect-to-login-12f467b8.cjs.prod.js → redirect-to-login-6675c038.cjs.prod.js} +1 -1
  41. package/dist/{redirect-to-login-3bee13ba.cjs.dev.js → redirect-to-login-8a61864c.cjs.dev.js} +1 -1
  42. package/dist/{redirect-to-login-2944c890.esm.js → redirect-to-login-b79d0910.esm.js} +1 -1
  43. package/dist/{redirect-to-logout-ed396049.cjs.dev.js → redirect-to-logout-0646ed18.cjs.dev.js} +2 -2
  44. package/dist/{redirect-to-logout-f7ffd752.esm.js → redirect-to-logout-0e2cfb93.esm.js} +2 -2
  45. package/dist/{redirect-to-logout-08b3421c.cjs.prod.js → redirect-to-logout-31d43a03.cjs.prod.js} +2 -2
  46. package/dist/{requests-in-flight-loader-155d1c75.esm.js → requests-in-flight-loader-17158914.esm.js} +2 -2
  47. package/dist/{requests-in-flight-loader-fbcc7fd9.cjs.prod.js → requests-in-flight-loader-ab4d59f3.cjs.prod.js} +2 -2
  48. package/dist/{requests-in-flight-loader-1b9efeb0.cjs.dev.js → requests-in-flight-loader-fb5d3f6f.cjs.dev.js} +2 -2
  49. package/dist/{service-page-project-switcher-a871aaf3.cjs.dev.js → service-page-project-switcher-a4d1d6de.cjs.dev.js} +1 -1
  50. package/dist/{service-page-project-switcher-74cd62e6.esm.js → service-page-project-switcher-cb63edbf.esm.js} +1 -1
  51. package/dist/{service-page-project-switcher-442cbcbf.cjs.prod.js → service-page-project-switcher-e221eba8.cjs.prod.js} +1 -1
  52. package/dist/{user-settings-menu-013f0041.cjs.prod.js → user-settings-menu-2235add2.cjs.prod.js} +10 -3
  53. package/dist/user-settings-menu-a1d0ba8e.esm.js +320 -0
  54. package/dist/user-settings-menu-b8359b8b.cjs.dev.js +345 -0
  55. package/package.json +23 -16
  56. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.dev.js +1 -1
  57. package/ssr/dist/commercetools-frontend-application-shell-ssr.cjs.prod.js +1 -1
  58. package/ssr/dist/commercetools-frontend-application-shell-ssr.esm.js +1 -1
  59. package/dist/user-settings-menu-16e8d020.esm.js +0 -313
  60. package/dist/user-settings-menu-dc598434.cjs.dev.js +0 -338
@@ -0,0 +1,110 @@
1
+ 'use strict';
2
+
3
+ var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
4
+ var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
5
+ var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
6
+ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
7
+ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
8
+ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
9
+ var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
10
+ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
11
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
12
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
13
+ var react = require('react');
14
+ var nimbus = require('@commercetools/nimbus');
15
+ var oidc = require('./oidc-0cba182b.cjs.prod.js');
16
+ var jsxRuntime = require('@emotion/react/jsx-runtime');
17
+ require('@babel/runtime-corejs3/core-js-stable/instance/map');
18
+
19
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
20
+
21
+ var _Object$keys__default = /*#__PURE__*/_interopDefault(_Object$keys);
22
+ var _Object$getOwnPropertySymbols__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertySymbols);
23
+ var _filterInstanceProperty__default = /*#__PURE__*/_interopDefault(_filterInstanceProperty);
24
+ var _Object$getOwnPropertyDescriptor__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptor);
25
+ var _forEachInstanceProperty__default = /*#__PURE__*/_interopDefault(_forEachInstanceProperty);
26
+ var _Object$getOwnPropertyDescriptors__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptors);
27
+ var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$defineProperties);
28
+ var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
29
+
30
+ function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
31
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
32
+ const hasNimbus = typeof nimbus.Splitter !== 'undefined';
33
+ // breakpoint-lg (1024) + sm (384) = 1408
34
+ // Below 1408px container: overlay — one panel visible at a time
35
+ // Above 1408px container: side-by-side — main ≥ 1024px, aside ≥ 384px
36
+ const OVERLAY_THRESHOLD = 1408;
37
+ const SPLITTER_ROOT_ID = 'mc-shell-splitter';
38
+ const SPLITTER_MAIN_ID = 'mc-shell-splitter-main';
39
+ const SPLITTER_ASIDE_ID = 'mc-shell-splitter-aside';
40
+ const ApplicationShellSplitter = props => {
41
+ const _useState = react.useState(false),
42
+ _useState2 = _slicedToArray(_useState, 2),
43
+ open = _useState2[0],
44
+ setOpen = _useState2[1];
45
+ const onCollapsedChange = react.useCallback(collapsed => {
46
+ setOpen(!collapsed);
47
+ }, []);
48
+ const _useResponsiveSplitte = nimbus.useResponsiveSplitterSizes({
49
+ orientation: 'horizontal',
50
+ persistKey: oidc.REGIONS.MC_RIGHT_PANEL,
51
+ size: {
52
+ 0: '100%',
53
+ [OVERLAY_THRESHOLD]: 'md'
54
+ },
55
+ minSize: {
56
+ 0: '100%',
57
+ [OVERLAY_THRESHOLD]: 'sm'
58
+ },
59
+ maxSize: {
60
+ 0: '100%',
61
+ [OVERLAY_THRESHOLD]: '50%'
62
+ },
63
+ onCollapsedChange
64
+ }),
65
+ rootProps = _useResponsiveSplitte.rootProps;
66
+
67
+ // Ref to the hook's composite handler for programmatic control.
68
+ // The hook's handler does persistence suppression + calls our onCollapsedChange.
69
+ const compositeHandlerRef = react.useRef(rootProps.onCollapsedChange);
70
+ compositeHandlerRef.current = rootProps.onCollapsedChange;
71
+ const openRef = react.useRef(open);
72
+ openRef.current = open;
73
+ const commands = react.useRef({
74
+ expand: () => compositeHandlerRef.current(false),
75
+ collapse: () => compositeHandlerRef.current(true),
76
+ toggle: () => compositeHandlerRef.current(openRef.current)
77
+ }).current;
78
+ const controller = react.useMemo(() => _objectSpread({
79
+ isCollapsed: !open
80
+ }, commands), [open, commands]);
81
+ return jsxRuntime.jsx(nimbus.NimbusProvider, {
82
+ locale: props.locale,
83
+ router: {
84
+ navigate: props.navigate
85
+ },
86
+ loadFonts: false,
87
+ children: jsxRuntime.jsxs(nimbus.Splitter.Root, _objectSpread(_objectSpread({}, rootProps), {}, {
88
+ id: SPLITTER_ROOT_ID,
89
+ collapsible: true,
90
+ collapsedSize: 0,
91
+ collapsed: !open,
92
+ children: [jsxRuntime.jsx(nimbus.Splitter.Main, {
93
+ id: SPLITTER_MAIN_ID,
94
+ containerType: "inline-size",
95
+ children: props.children
96
+ }), jsxRuntime.jsx(nimbus.Splitter.Handle, {
97
+ "aria-label": "Resize side panel"
98
+ }), jsxRuntime.jsx(nimbus.Splitter.Aside, {
99
+ id: SPLITTER_ASIDE_ID,
100
+ children: jsxRuntime.jsx(nimbus.Region, {
101
+ name: oidc.REGIONS.MC_RIGHT_PANEL,
102
+ value: controller
103
+ })
104
+ })]
105
+ }))
106
+ });
107
+ };
108
+
109
+ exports["default"] = ApplicationShellSplitter;
110
+ exports.hasNimbus = hasNimbus;
@@ -0,0 +1,96 @@
1
+ import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
2
+ import _Object$getOwnPropertySymbols from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols';
3
+ import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
4
+ import _Object$getOwnPropertyDescriptor from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor';
5
+ import _forEachInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/for-each';
6
+ import _Object$getOwnPropertyDescriptors from '@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors';
7
+ import _Object$defineProperties from '@babel/runtime-corejs3/core-js-stable/object/define-properties';
8
+ import _Object$defineProperty from '@babel/runtime-corejs3/core-js-stable/object/define-property';
9
+ import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
10
+ import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
11
+ import { useState, useCallback, useRef, useMemo } from 'react';
12
+ import { Splitter, useResponsiveSplitterSizes, NimbusProvider, Region } from '@commercetools/nimbus';
13
+ import { R as REGIONS } from './oidc-cb344fae.esm.js';
14
+ import { jsx, jsxs } from '@emotion/react/jsx-runtime';
15
+ import '@babel/runtime-corejs3/core-js-stable/instance/map';
16
+
17
+ function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
19
+ const hasNimbus = typeof Splitter !== 'undefined';
20
+ // breakpoint-lg (1024) + sm (384) = 1408
21
+ // Below 1408px container: overlay — one panel visible at a time
22
+ // Above 1408px container: side-by-side — main ≥ 1024px, aside ≥ 384px
23
+ const OVERLAY_THRESHOLD = 1408;
24
+ const SPLITTER_ROOT_ID = 'mc-shell-splitter';
25
+ const SPLITTER_MAIN_ID = 'mc-shell-splitter-main';
26
+ const SPLITTER_ASIDE_ID = 'mc-shell-splitter-aside';
27
+ const ApplicationShellSplitter = props => {
28
+ const _useState = useState(false),
29
+ _useState2 = _slicedToArray(_useState, 2),
30
+ open = _useState2[0],
31
+ setOpen = _useState2[1];
32
+ const onCollapsedChange = useCallback(collapsed => {
33
+ setOpen(!collapsed);
34
+ }, []);
35
+ const _useResponsiveSplitte = useResponsiveSplitterSizes({
36
+ orientation: 'horizontal',
37
+ persistKey: REGIONS.MC_RIGHT_PANEL,
38
+ size: {
39
+ 0: '100%',
40
+ [OVERLAY_THRESHOLD]: 'md'
41
+ },
42
+ minSize: {
43
+ 0: '100%',
44
+ [OVERLAY_THRESHOLD]: 'sm'
45
+ },
46
+ maxSize: {
47
+ 0: '100%',
48
+ [OVERLAY_THRESHOLD]: '50%'
49
+ },
50
+ onCollapsedChange
51
+ }),
52
+ rootProps = _useResponsiveSplitte.rootProps;
53
+
54
+ // Ref to the hook's composite handler for programmatic control.
55
+ // The hook's handler does persistence suppression + calls our onCollapsedChange.
56
+ const compositeHandlerRef = useRef(rootProps.onCollapsedChange);
57
+ compositeHandlerRef.current = rootProps.onCollapsedChange;
58
+ const openRef = useRef(open);
59
+ openRef.current = open;
60
+ const commands = useRef({
61
+ expand: () => compositeHandlerRef.current(false),
62
+ collapse: () => compositeHandlerRef.current(true),
63
+ toggle: () => compositeHandlerRef.current(openRef.current)
64
+ }).current;
65
+ const controller = useMemo(() => _objectSpread({
66
+ isCollapsed: !open
67
+ }, commands), [open, commands]);
68
+ return jsx(NimbusProvider, {
69
+ locale: props.locale,
70
+ router: {
71
+ navigate: props.navigate
72
+ },
73
+ loadFonts: false,
74
+ children: jsxs(Splitter.Root, _objectSpread(_objectSpread({}, rootProps), {}, {
75
+ id: SPLITTER_ROOT_ID,
76
+ collapsible: true,
77
+ collapsedSize: 0,
78
+ collapsed: !open,
79
+ children: [jsx(Splitter.Main, {
80
+ id: SPLITTER_MAIN_ID,
81
+ containerType: "inline-size",
82
+ children: props.children
83
+ }), jsx(Splitter.Handle, {
84
+ "aria-label": "Resize side panel"
85
+ }), jsx(Splitter.Aside, {
86
+ id: SPLITTER_ASIDE_ID,
87
+ children: jsx(Region, {
88
+ name: REGIONS.MC_RIGHT_PANEL,
89
+ value: controller
90
+ })
91
+ })]
92
+ }))
93
+ });
94
+ };
95
+
96
+ export { ApplicationShellSplitter as default, hasNimbus };
@@ -0,0 +1,110 @@
1
+ 'use strict';
2
+
3
+ var _Object$keys = require('@babel/runtime-corejs3/core-js-stable/object/keys');
4
+ var _Object$getOwnPropertySymbols = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols');
5
+ var _filterInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/filter');
6
+ var _Object$getOwnPropertyDescriptor = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor');
7
+ var _forEachInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/for-each');
8
+ var _Object$getOwnPropertyDescriptors = require('@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors');
9
+ var _Object$defineProperties = require('@babel/runtime-corejs3/core-js-stable/object/define-properties');
10
+ var _Object$defineProperty = require('@babel/runtime-corejs3/core-js-stable/object/define-property');
11
+ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
12
+ var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
13
+ var react = require('react');
14
+ var nimbus = require('@commercetools/nimbus');
15
+ var oidc = require('./oidc-b9e7297c.cjs.dev.js');
16
+ var jsxRuntime = require('@emotion/react/jsx-runtime');
17
+ require('@babel/runtime-corejs3/core-js-stable/instance/map');
18
+
19
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
20
+
21
+ var _Object$keys__default = /*#__PURE__*/_interopDefault(_Object$keys);
22
+ var _Object$getOwnPropertySymbols__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertySymbols);
23
+ var _filterInstanceProperty__default = /*#__PURE__*/_interopDefault(_filterInstanceProperty);
24
+ var _Object$getOwnPropertyDescriptor__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptor);
25
+ var _forEachInstanceProperty__default = /*#__PURE__*/_interopDefault(_forEachInstanceProperty);
26
+ var _Object$getOwnPropertyDescriptors__default = /*#__PURE__*/_interopDefault(_Object$getOwnPropertyDescriptors);
27
+ var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$defineProperties);
28
+ var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
29
+
30
+ function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
31
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
32
+ const hasNimbus = typeof nimbus.Splitter !== 'undefined';
33
+ // breakpoint-lg (1024) + sm (384) = 1408
34
+ // Below 1408px container: overlay — one panel visible at a time
35
+ // Above 1408px container: side-by-side — main ≥ 1024px, aside ≥ 384px
36
+ const OVERLAY_THRESHOLD = 1408;
37
+ const SPLITTER_ROOT_ID = 'mc-shell-splitter';
38
+ const SPLITTER_MAIN_ID = 'mc-shell-splitter-main';
39
+ const SPLITTER_ASIDE_ID = 'mc-shell-splitter-aside';
40
+ const ApplicationShellSplitter = props => {
41
+ const _useState = react.useState(false),
42
+ _useState2 = _slicedToArray(_useState, 2),
43
+ open = _useState2[0],
44
+ setOpen = _useState2[1];
45
+ const onCollapsedChange = react.useCallback(collapsed => {
46
+ setOpen(!collapsed);
47
+ }, []);
48
+ const _useResponsiveSplitte = nimbus.useResponsiveSplitterSizes({
49
+ orientation: 'horizontal',
50
+ persistKey: oidc.REGIONS.MC_RIGHT_PANEL,
51
+ size: {
52
+ 0: '100%',
53
+ [OVERLAY_THRESHOLD]: 'md'
54
+ },
55
+ minSize: {
56
+ 0: '100%',
57
+ [OVERLAY_THRESHOLD]: 'sm'
58
+ },
59
+ maxSize: {
60
+ 0: '100%',
61
+ [OVERLAY_THRESHOLD]: '50%'
62
+ },
63
+ onCollapsedChange
64
+ }),
65
+ rootProps = _useResponsiveSplitte.rootProps;
66
+
67
+ // Ref to the hook's composite handler for programmatic control.
68
+ // The hook's handler does persistence suppression + calls our onCollapsedChange.
69
+ const compositeHandlerRef = react.useRef(rootProps.onCollapsedChange);
70
+ compositeHandlerRef.current = rootProps.onCollapsedChange;
71
+ const openRef = react.useRef(open);
72
+ openRef.current = open;
73
+ const commands = react.useRef({
74
+ expand: () => compositeHandlerRef.current(false),
75
+ collapse: () => compositeHandlerRef.current(true),
76
+ toggle: () => compositeHandlerRef.current(openRef.current)
77
+ }).current;
78
+ const controller = react.useMemo(() => _objectSpread({
79
+ isCollapsed: !open
80
+ }, commands), [open, commands]);
81
+ return jsxRuntime.jsx(nimbus.NimbusProvider, {
82
+ locale: props.locale,
83
+ router: {
84
+ navigate: props.navigate
85
+ },
86
+ loadFonts: false,
87
+ children: jsxRuntime.jsxs(nimbus.Splitter.Root, _objectSpread(_objectSpread({}, rootProps), {}, {
88
+ id: SPLITTER_ROOT_ID,
89
+ collapsible: true,
90
+ collapsedSize: 0,
91
+ collapsed: !open,
92
+ children: [jsxRuntime.jsx(nimbus.Splitter.Main, {
93
+ id: SPLITTER_MAIN_ID,
94
+ containerType: "inline-size",
95
+ children: props.children
96
+ }), jsxRuntime.jsx(nimbus.Splitter.Handle, {
97
+ "aria-label": "Resize side panel"
98
+ }), jsxRuntime.jsx(nimbus.Splitter.Aside, {
99
+ id: SPLITTER_ASIDE_ID,
100
+ children: jsxRuntime.jsx(nimbus.Region, {
101
+ name: oidc.REGIONS.MC_RIGHT_PANEL,
102
+ value: controller
103
+ })
104
+ })]
105
+ }))
106
+ });
107
+ };
108
+
109
+ exports["default"] = ApplicationShellSplitter;
110
+ exports.hasNimbus = hasNimbus;
@@ -2,8 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var dist_commercetoolsFrontendApplicationShell = require('./index-70a737ae.cjs.dev.js');
5
+ var dist_commercetoolsFrontendApplicationShell = require('./index-70e88ad7.cjs.dev.js');
6
6
  var index = require('./index-614accc4.cjs.dev.js');
7
+ var oidc = require('./oidc-b9e7297c.cjs.dev.js');
7
8
  var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
8
9
  var ssr = require('@commercetools-frontend/application-config/ssr');
9
10
  var reactBroadcast = require('@flopflip/react-broadcast');
@@ -29,8 +30,6 @@ require('@commercetools-frontend/constants');
29
30
  require('@commercetools-frontend/i18n');
30
31
  require('@commercetools-frontend/react-notifications');
31
32
  require('@commercetools-frontend/sentry');
32
- require('./oidc-8827f9fe.cjs.dev.js');
33
- require('@babel/runtime-corejs3/core-js-stable/instance/map');
34
33
  require('@babel/runtime-corejs3/core-js-stable/url');
35
34
  require('@commercetools-uikit/design-system');
36
35
  require('@commercetools-uikit/spacings');
@@ -40,6 +39,7 @@ require('@commercetools-uikit/icons');
40
39
  require('./location-c835b8df.cjs.dev.js');
41
40
  require('@emotion/react/jsx-runtime');
42
41
  require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
42
+ require('@babel/runtime-corejs3/core-js-stable/instance/map');
43
43
  require('memoize-one');
44
44
  require('react-select');
45
45
  require('@commercetools-uikit/accessible-hidden');
@@ -108,6 +108,7 @@ exports.useRoutesCreator = dist_commercetoolsFrontendApplicationShell.useRoutesC
108
108
  exports.version = dist_commercetoolsFrontendApplicationShell.version;
109
109
  exports.RouteCatchAll = index.RouteCatchAll;
110
110
  exports.applyDefaultMiddlewares = index.applyDefaultMiddlewares;
111
+ exports.REGIONS = oidc.REGIONS;
111
112
  Object.defineProperty(exports, 'buildApiUrl', {
112
113
  enumerable: true,
113
114
  get: function () { return applicationShellConnectors.buildApiUrl; }
@@ -2,8 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var dist_commercetoolsFrontendApplicationShell = require('./index-b1e142f7.cjs.prod.js');
5
+ var dist_commercetoolsFrontendApplicationShell = require('./index-d0c30fac.cjs.prod.js');
6
6
  var index = require('./index-245e2980.cjs.prod.js');
7
+ var oidc = require('./oidc-0cba182b.cjs.prod.js');
7
8
  var applicationShellConnectors = require('@commercetools-frontend/application-shell-connectors');
8
9
  var ssr = require('@commercetools-frontend/application-config/ssr');
9
10
  var reactBroadcast = require('@flopflip/react-broadcast');
@@ -29,8 +30,6 @@ require('@commercetools-frontend/constants');
29
30
  require('@commercetools-frontend/i18n');
30
31
  require('@commercetools-frontend/react-notifications');
31
32
  require('@commercetools-frontend/sentry');
32
- require('./oidc-d74e6aa2.cjs.prod.js');
33
- require('@babel/runtime-corejs3/core-js-stable/instance/map');
34
33
  require('@babel/runtime-corejs3/core-js-stable/url');
35
34
  require('@commercetools-uikit/design-system');
36
35
  require('@commercetools-uikit/spacings');
@@ -40,6 +39,7 @@ require('@commercetools-uikit/icons');
40
39
  require('./location-537e0660.cjs.prod.js');
41
40
  require('@emotion/react/jsx-runtime');
42
41
  require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
42
+ require('@babel/runtime-corejs3/core-js-stable/instance/map');
43
43
  require('memoize-one');
44
44
  require('react-select');
45
45
  require('@commercetools-uikit/accessible-hidden');
@@ -108,6 +108,7 @@ exports.useRoutesCreator = dist_commercetoolsFrontendApplicationShell.useRoutesC
108
108
  exports.version = dist_commercetoolsFrontendApplicationShell.version;
109
109
  exports.RouteCatchAll = index.RouteCatchAll;
110
110
  exports.applyDefaultMiddlewares = index.applyDefaultMiddlewares;
111
+ exports.REGIONS = oidc.REGIONS;
111
112
  Object.defineProperty(exports, 'buildApiUrl', {
112
113
  enumerable: true,
113
114
  get: function () { return applicationShellConnectors.buildApiUrl; }
@@ -1,5 +1,6 @@
1
- export { e as ApplicationPageTitle, A as ApplicationShell, d as ApplicationShellProvider, C as ConfigureIntlProvider, f as CustomViewShell, i as ErrorApologizer, h as FetchUser, I as InjectReducers, l as ProtectedRoute, R as RedirectToLogin, j as RedirectToLogout, S as SetupFlopFlipProvider, m as SuspendedProtectedRoute, k as SuspendedRoute, g as getBrowserLocale, n as getPreviousProjectKey, s as setupGlobalErrorListener, u as useRoutesCreator, v as version } from './index-371785f8.esm.js';
1
+ export { e as ApplicationPageTitle, A as ApplicationShell, d as ApplicationShellProvider, C as ConfigureIntlProvider, f as CustomViewShell, i as ErrorApologizer, h as FetchUser, I as InjectReducers, l as ProtectedRoute, R as RedirectToLogin, j as RedirectToLogout, S as SetupFlopFlipProvider, m as SuspendedProtectedRoute, k as SuspendedRoute, g as getBrowserLocale, n as getPreviousProjectKey, s as setupGlobalErrorListener, u as useRoutesCreator, v as version } from './index-2856f98e.esm.js';
2
2
  export { R as RouteCatchAll, a as applyDefaultMiddlewares } from './index-86039df7.esm.js';
3
+ export { R as REGIONS } from './oidc-cb344fae.esm.js';
3
4
  export { buildApiUrl, createApolloClient, createApolloContextForProxyForwardTo, createHttpClientOptions, executeHttpClientRequest, getMcApiUrl, selectProjectKeyFromUrl, selectUserId, useMcLazyQuery, useMcMutation, useMcQuery } from '@commercetools-frontend/application-shell-connectors';
4
5
  export { entryPointUriPathToPermissionKeys, entryPointUriPathToResourceAccesses } from '@commercetools-frontend/application-config/ssr';
5
6
  export { ConfigureFlopFlip, ReconfigureFlopFlip, ToggleFeature, branchOnFeatureToggle, injectFeatureToggle, injectFeatureToggles, useAdapterReconfiguration, useAdapterStatus, useFeatureToggle, useFeatureToggles, useFlagVariation, useFlagVariations } from '@flopflip/react-broadcast';
@@ -25,8 +26,6 @@ import '@commercetools-frontend/constants';
25
26
  import '@commercetools-frontend/i18n';
26
27
  import '@commercetools-frontend/react-notifications';
27
28
  import '@commercetools-frontend/sentry';
28
- import './oidc-b2520905.esm.js';
29
- import '@babel/runtime-corejs3/core-js-stable/instance/map';
30
29
  import '@babel/runtime-corejs3/core-js-stable/url';
31
30
  import '@commercetools-uikit/design-system';
32
31
  import '@commercetools-uikit/spacings';
@@ -36,6 +35,7 @@ import '@commercetools-uikit/icons';
36
35
  import './location-f21dbc25.esm.js';
37
36
  import '@emotion/react/jsx-runtime';
38
37
  import '@babel/runtime-corejs3/helpers/objectWithoutProperties';
38
+ import '@babel/runtime-corejs3/core-js-stable/instance/map';
39
39
  import 'memoize-one';
40
40
  import 'react-select';
41
41
  import '@commercetools-uikit/accessible-hidden';
@@ -10,7 +10,7 @@ var Constraints = require('@commercetools-uikit/constraints');
10
10
  var PrimaryButton = require('@commercetools-uikit/primary-button');
11
11
  var Spacings = require('@commercetools-uikit/spacings');
12
12
  var Text = require('@commercetools-uikit/text');
13
- var dist_commercetoolsFrontendApplicationShell = require('./index-b1e142f7.cjs.prod.js');
13
+ var dist_commercetoolsFrontendApplicationShell = require('./index-d0c30fac.cjs.prod.js');
14
14
  var jsxRuntime = require('@emotion/react/jsx-runtime');
15
15
  require('./index-245e2980.cjs.prod.js');
16
16
  require('@babel/runtime-corejs3/core-js-stable/object/keys');
@@ -47,7 +47,7 @@ require('@babel/runtime-corejs3/core-js-stable/instance/find');
47
47
  require('@babel/runtime-corejs3/core-js-stable/array/is-array');
48
48
  require('@emotion/react');
49
49
  require('@commercetools-frontend/i18n');
50
- require('./oidc-d74e6aa2.cjs.prod.js');
50
+ require('./oidc-0cba182b.cjs.prod.js');
51
51
  require('@babel/runtime-corejs3/core-js-stable/url');
52
52
  require('@commercetools-uikit/design-system');
53
53
  require('react-intl');
@@ -8,7 +8,7 @@ import Constraints from '@commercetools-uikit/constraints';
8
8
  import PrimaryButton from '@commercetools-uikit/primary-button';
9
9
  import Spacings from '@commercetools-uikit/spacings';
10
10
  import Text from '@commercetools-uikit/text';
11
- import { A as ApplicationShell } from './index-371785f8.esm.js';
11
+ import { A as ApplicationShell } from './index-2856f98e.esm.js';
12
12
  import { jsx, jsxs, Fragment } from '@emotion/react/jsx-runtime';
13
13
  import './index-86039df7.esm.js';
14
14
  import '@babel/runtime-corejs3/core-js-stable/object/keys';
@@ -45,7 +45,7 @@ import '@babel/runtime-corejs3/core-js-stable/instance/find';
45
45
  import '@babel/runtime-corejs3/core-js-stable/array/is-array';
46
46
  import '@emotion/react';
47
47
  import '@commercetools-frontend/i18n';
48
- import './oidc-b2520905.esm.js';
48
+ import './oidc-cb344fae.esm.js';
49
49
  import '@babel/runtime-corejs3/core-js-stable/url';
50
50
  import '@commercetools-uikit/design-system';
51
51
  import 'react-intl';
@@ -10,7 +10,7 @@ var Constraints = require('@commercetools-uikit/constraints');
10
10
  var PrimaryButton = require('@commercetools-uikit/primary-button');
11
11
  var Spacings = require('@commercetools-uikit/spacings');
12
12
  var Text = require('@commercetools-uikit/text');
13
- var dist_commercetoolsFrontendApplicationShell = require('./index-70a737ae.cjs.dev.js');
13
+ var dist_commercetoolsFrontendApplicationShell = require('./index-70e88ad7.cjs.dev.js');
14
14
  var jsxRuntime = require('@emotion/react/jsx-runtime');
15
15
  require('./index-614accc4.cjs.dev.js');
16
16
  require('@babel/runtime-corejs3/core-js-stable/object/keys');
@@ -47,7 +47,7 @@ require('@babel/runtime-corejs3/core-js-stable/instance/find');
47
47
  require('@babel/runtime-corejs3/core-js-stable/array/is-array');
48
48
  require('@emotion/react');
49
49
  require('@commercetools-frontend/i18n');
50
- require('./oidc-8827f9fe.cjs.dev.js');
50
+ require('./oidc-b9e7297c.cjs.dev.js');
51
51
  require('@babel/runtime-corejs3/core-js-stable/url');
52
52
  require('@commercetools-uikit/design-system');
53
53
  require('react-intl');
@@ -0,0 +1,25 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { NimbusRouterConfig } from '@commercetools/nimbus';
3
+ /**
4
+ * Whether `@commercetools/nimbus` actually resolved at build time. When an app
5
+ * has not installed Nimbus, the mc-scripts bundler fallback stubs the import to
6
+ * an empty module, so the bindings above are `undefined`. The async wrapper
7
+ * reads this flag and renders a passthrough instead of mounting the splitter, so
8
+ * Nimbus hooks (e.g. `useResponsiveSplitterSizes`) are never called without
9
+ * Nimbus present. See nimbus `home-bundler-plugins.mdx` ("shared code is
10
+ * responsible for checking whether Nimbus is available before rendering").
11
+ */
12
+ export declare const hasNimbus: boolean;
13
+ type TApplicationShellSplitterProps = {
14
+ children: ReactNode;
15
+ locale: string;
16
+ navigate: NimbusRouterConfig['navigate'];
17
+ };
18
+ export type TApplicationShellSplitterValue = {
19
+ isCollapsed: boolean;
20
+ expand: () => void;
21
+ collapse: () => void;
22
+ toggle: () => void;
23
+ };
24
+ declare const ApplicationShellSplitter: (props: TApplicationShellSplitterProps) => import("@emotion/react/jsx-runtime").JSX.Element;
25
+ export default ApplicationShellSplitter;
@@ -0,0 +1,45 @@
1
+ export declare const DIMENSIONS: {
2
+ readonly header: "56px";
3
+ };
4
+ export declare const NAVBAR: {
5
+ readonly expanderHeight: "50px";
6
+ readonly expanderSize: "40px";
7
+ readonly iconSize: "24px";
8
+ readonly iconSizeHover: "28px";
9
+ readonly itemSize: "48px";
10
+ readonly itemHeight: "56px";
11
+ readonly sublistIndentationWhenCollapsed: "72px";
12
+ readonly sublistIndentationWhenExpanded: "248px";
13
+ readonly sublistItemMinHeight: "50px";
14
+ readonly sublistWidth: "272px";
15
+ readonly leftNavigationTransition: "all 150ms cubic-bezier(1, 0, 0.58, 1)";
16
+ readonly widthLeftNavigation: "80px";
17
+ readonly widthLeftNavigationWhenExpanded: "256px";
18
+ };
19
+ export declare const WINDOW_SIZES: {
20
+ readonly STANDARD: 1024;
21
+ readonly WIDE: 1200;
22
+ };
23
+ export declare const CONTAINERS: {
24
+ readonly LOCALE_SWITCHER: "locale-switcher-container";
25
+ readonly LEFT_OF_PROFILE: "left-of-profile";
26
+ };
27
+ export declare const REGIONS: {
28
+ readonly MC_RIGHT_PANEL: "mc:right-panel";
29
+ };
30
+ export declare const SUSPENSION_REASONS: {
31
+ readonly TEMPORARY_MAINTENANCE: "TemporaryMaintenance";
32
+ readonly PAYMENT: "Payment";
33
+ readonly OTHER: "Other";
34
+ };
35
+ export declare const OIDC_RESPONSE_TYPES: {
36
+ readonly ID_TOKEN: "id_token";
37
+ };
38
+ export declare const OIDC_CLAIMS: {
39
+ readonly OPEN_ID: "openid";
40
+ readonly PROJECT_KEY: "project_key";
41
+ readonly TEAM_ID: "team_id";
42
+ readonly APPLICATION_ID: "application_id";
43
+ readonly VIEW: "view";
44
+ readonly MANAGE: "manage";
45
+ };
@@ -15,6 +15,8 @@ export { default as RouteCatchAll } from "./components/route-catch-all/index.js"
15
15
  export { default as SetupFlopFlipProvider } from "./components/setup-flop-flip-provider/index.js";
16
16
  export { default as ConfigureIntlProvider } from "./components/configure-intl-provider/index.js";
17
17
  export { SuspendedRoute, ProtectedRoute, SuspendedProtectedRoute, } from "./components/suspended-route/index.js";
18
+ export { REGIONS } from "./constants.js";
19
+ export type { TApplicationShellSplitterValue } from "./components/application-shell-splitter/application-shell-splitter.js";
18
20
  export { default as getPreviousProjectKey } from "./utils/get-previous-project-key/index.js";
19
21
  export { default as setupGlobalErrorListener } from "./utils/setup-global-error-listener/index.js";
20
22
  export { default as useRoutesCreator } from "./hooks/use-routes-creator/index.js";