@amboss/design-system 1.20.4 → 1.21.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.
- package/build/cjs/build-tokens/visualConfig.js +5 -0
- package/build/cjs/src/components/Popover/Popover.js +8 -3
- package/build/cjs/src/components/Sheet/Sheet.js +307 -0
- package/build/cjs/src/components/Toggletip/BasePopover.js +43 -8
- package/build/cjs/src/components/Tooltip/TooltipContent.js +3 -3
- package/build/cjs/src/index.js +2 -0
- package/build/cjs/src/shared/FocusTrapWrapper.js +41 -0
- package/build/cjs/src/shared/useDragDown.js +84 -0
- package/build/esm/build-tokens/visualConfig.d.ts +5 -0
- package/build/esm/build-tokens/visualConfig.js +5 -0
- package/build/esm/build-tokens/visualConfig.js.map +1 -1
- package/build/esm/src/components/Popover/Popover.d.ts +2 -3
- package/build/esm/src/components/Popover/Popover.js +8 -3
- package/build/esm/src/components/Popover/Popover.js.map +1 -1
- package/build/esm/src/components/Sheet/Sheet.d.ts +15 -0
- package/build/esm/src/components/Sheet/Sheet.js +300 -0
- package/build/esm/src/components/Sheet/Sheet.js.map +1 -0
- package/build/esm/src/components/Toggletip/BasePopover.d.ts +5 -5
- package/build/esm/src/components/Toggletip/BasePopover.js +43 -7
- package/build/esm/src/components/Toggletip/BasePopover.js.map +1 -1
- package/build/esm/src/components/Toggletip/Toggletip.d.ts +1 -1
- package/build/esm/src/components/Toggletip/Toggletip.js.map +1 -1
- package/build/esm/src/components/Tooltip/TooltipContent.js +3 -3
- package/build/esm/src/components/Tooltip/TooltipContent.js.map +1 -1
- package/build/esm/src/index.d.ts +1 -0
- package/build/esm/src/index.js +1 -0
- package/build/esm/src/index.js.map +1 -1
- package/build/esm/src/shared/FocusTrapWrapper.d.ts +10 -0
- package/build/esm/src/shared/FocusTrapWrapper.js +35 -0
- package/build/esm/src/shared/FocusTrapWrapper.js.map +1 -0
- package/build/esm/src/shared/useDragDown.d.ts +13 -0
- package/build/esm/src/shared/useDragDown.js +83 -0
- package/build/esm/src/shared/useDragDown.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
2
|
+
import _styled from '@emotion/styled/base';
|
|
3
|
+
import React, { useState, useRef, useLayoutEffect, useEffect, useCallback } from 'react';
|
|
4
|
+
import { createPortal } from 'react-dom';
|
|
5
|
+
import { keyframes, Global } from '@emotion/react';
|
|
6
|
+
import { FocusTrapWrapper } from '../../shared/FocusTrapWrapper.js';
|
|
7
|
+
import { Container } from '../Container/Container.js';
|
|
8
|
+
import { useDragDown } from '../../shared/useDragDown.js';
|
|
9
|
+
|
|
10
|
+
// Duration of slidein animation of sheet container
|
|
11
|
+
const ANIMATION_DURATION_ENTRY = 300;
|
|
12
|
+
// Duration of slideout animation of sheet container
|
|
13
|
+
const ANIMATION_DURATION_EXIT = 200; // duration
|
|
14
|
+
// Duration of fade in/out animation of content container
|
|
15
|
+
const ANIMATION_DURATION_CONTENT = 50;
|
|
16
|
+
// Max height of sheet content relative to viewport height
|
|
17
|
+
const MAX_HEIGHT_PERCENT = 80;
|
|
18
|
+
// Min drag distance to close sheet
|
|
19
|
+
const MIN_DRAG_DISTANCE = 150;
|
|
20
|
+
const fadeOut = keyframes({
|
|
21
|
+
from: {
|
|
22
|
+
opacity: 1
|
|
23
|
+
},
|
|
24
|
+
to: {
|
|
25
|
+
opacity: 0
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
const fadeIn = keyframes({
|
|
29
|
+
from: {
|
|
30
|
+
opacity: 0
|
|
31
|
+
},
|
|
32
|
+
to: {
|
|
33
|
+
opacity: 1
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
const StyledContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
37
|
+
target: "e1olca0n3"
|
|
38
|
+
} : {
|
|
39
|
+
target: "e1olca0n3",
|
|
40
|
+
label: "StyledContainer"
|
|
41
|
+
})(_ref => {
|
|
42
|
+
let {
|
|
43
|
+
theme,
|
|
44
|
+
containerHeight,
|
|
45
|
+
isClosing,
|
|
46
|
+
dragOffset = 0,
|
|
47
|
+
prevVisibleState
|
|
48
|
+
} = _ref;
|
|
49
|
+
let animation;
|
|
50
|
+
if (containerHeight) {
|
|
51
|
+
const slideOut = keyframes({
|
|
52
|
+
from: {
|
|
53
|
+
transform: `translateY(${dragOffset}px)`
|
|
54
|
+
},
|
|
55
|
+
to: {
|
|
56
|
+
transform: `translateY(${containerHeight}px)`
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
const slideIn = keyframes({
|
|
60
|
+
from: {
|
|
61
|
+
transform: `translateY(${containerHeight}px)`
|
|
62
|
+
},
|
|
63
|
+
to: {
|
|
64
|
+
transform: `translateY(0px)`
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
if (isClosing) {
|
|
68
|
+
animation = `${ANIMATION_DURATION_EXIT}ms ease-out forwards ${slideOut}`;
|
|
69
|
+
} else if (!prevVisibleState) {
|
|
70
|
+
// set entry animation only for the first time after sheet is visible
|
|
71
|
+
animation = `${ANIMATION_DURATION_ENTRY}ms ease-out forwards ${slideIn}`;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return {
|
|
75
|
+
position: "fixed",
|
|
76
|
+
left: 0,
|
|
77
|
+
bottom: 0,
|
|
78
|
+
width: "100vw",
|
|
79
|
+
transformOrigin: "bottom",
|
|
80
|
+
animation,
|
|
81
|
+
boxSizing: "border-box",
|
|
82
|
+
zIndex: theme.variables.zIndex.modal,
|
|
83
|
+
// Remove bottom border radius of DS Container
|
|
84
|
+
"> div": {
|
|
85
|
+
borderBottomLeftRadius: 0,
|
|
86
|
+
borderBottomRightRadius: 0
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1RXdCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
|
|
90
|
+
const StyledContentContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
91
|
+
target: "e1olca0n2"
|
|
92
|
+
} : {
|
|
93
|
+
target: "e1olca0n2",
|
|
94
|
+
label: "StyledContentContainer"
|
|
95
|
+
})(_ref2 => {
|
|
96
|
+
let {
|
|
97
|
+
isClosing
|
|
98
|
+
} = _ref2;
|
|
99
|
+
const animation = isClosing ? `${ANIMATION_DURATION_CONTENT}ms ease-out forwards ${fadeOut}` : `${ANIMATION_DURATION_CONTENT}ms ease-out ${ANIMATION_DURATION_ENTRY - ANIMATION_DURATION_CONTENT}ms forwards ${fadeIn}`;
|
|
100
|
+
return {
|
|
101
|
+
overflow: "auto",
|
|
102
|
+
maxHeight: `${MAX_HEIGHT_PERCENT}vh`,
|
|
103
|
+
boxSizing: "border-box",
|
|
104
|
+
overscrollBehavior: "none",
|
|
105
|
+
opacity: 0,
|
|
106
|
+
animation
|
|
107
|
+
};
|
|
108
|
+
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUEySCtCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
|
|
109
|
+
const StyledHandleContainer = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
110
|
+
target: "e1olca0n1"
|
|
111
|
+
} : {
|
|
112
|
+
target: "e1olca0n1",
|
|
113
|
+
label: "StyledHandleContainer"
|
|
114
|
+
})(_ref3 => {
|
|
115
|
+
let {
|
|
116
|
+
theme,
|
|
117
|
+
isContentContainerScrolled
|
|
118
|
+
} = _ref3;
|
|
119
|
+
return {
|
|
120
|
+
padding: `${theme.variables.size.spacing.xs} 0`,
|
|
121
|
+
display: "flex",
|
|
122
|
+
justifyContent: "center",
|
|
123
|
+
...(isContentContainerScrolled && {
|
|
124
|
+
boxShadow: theme.values.elevation.a
|
|
125
|
+
})
|
|
126
|
+
};
|
|
127
|
+
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpSjhCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
|
|
128
|
+
const StyledHandle = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
129
|
+
target: "e1olca0n0"
|
|
130
|
+
} : {
|
|
131
|
+
target: "e1olca0n0",
|
|
132
|
+
label: "StyledHandle"
|
|
133
|
+
})(_ref4 => {
|
|
134
|
+
let {
|
|
135
|
+
theme
|
|
136
|
+
} = _ref4;
|
|
137
|
+
return {
|
|
138
|
+
width: "80px",
|
|
139
|
+
height: "4px",
|
|
140
|
+
borderRadius: theme.variables.size.borderRadius.xs,
|
|
141
|
+
backgroundColor: theme.values.color.divider.primary
|
|
142
|
+
};
|
|
143
|
+
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlNoZWV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2SnFCIiwiZmlsZSI6IlNoZWV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICB1c2VSZWYsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlU3RhdGUsXG4gIHVzZUVmZmVjdCxcbiAgdXNlQ2FsbGJhY2ssXG59IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tIFwicmVhY3QtZG9tXCI7XG5pbXBvcnQgeyBrZXlmcmFtZXMsIEdsb2JhbCB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgRm9jdXNUcmFwV3JhcHBlciB9IGZyb20gXCIuLi8uLi9zaGFyZWQvRm9jdXNUcmFwV3JhcHBlclwiO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSBcIi4uL0NvbnRhaW5lci9Db250YWluZXJcIjtcbmltcG9ydCB7IHVzZURyYWdEb3duIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEcmFnRG93blwiO1xuXG5leHBvcnQgdHlwZSBTaGVldFByb3BzID0ge1xuICAvKiBJZCB0byBhc3NvY2lhdGUgd2l0aCBhIHRyaWdnZXIgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKiBjb250ZW50cyAqL1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICAvKiBDdXN0b20gcG9ydGFsIGNvbnRhaW5lciB0byByZW5kZXIgc2hlZXQgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgLyogdXNlZCB0byBzaG93IC8gaGlkZSBzaGVldCAqL1xuICBpc1Zpc2libGU6IGJvb2xlYW47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiBDYWxsZWQgd2hlbiBzaGVldCBuZWVkcyB0byBjbG9zZSwgb24gZXNjYXBlLCBvdXRzaWRlIGNsaWNrLCBzd2lwZSBkb3duLCBldGMuICovXG4gIG9uQ2xvc2U6ICgpID0+IHZvaWQ7XG4gIC8qIENhbGxlZCB3aGVuIHNoZWV0IGlzIHJlbW92ZWQgZnJvbSBET00gYWZ0ZXIgZXhpdCBhbmltYXRpb24uICovXG4gIG9uVW5tb3VudD86ICgpID0+IHZvaWQ7XG4gIC8qIENvbnRyb2xzIHdoZXRoZXIgU2hlZXQgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyogT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIHRyaWdnZXIgc2hvdWxkIHJlY2VpdmUgYmFjayB0aGUgZm9jdXMgb24gcG9wb3ZlciBjbG9zZSAqL1xuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI/OiBib29sZWFuO1xufTtcblxuLy8gRHVyYXRpb24gb2Ygc2xpZGVpbiBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgPSAzMDA7XG4vLyBEdXJhdGlvbiBvZiBzbGlkZW91dCBhbmltYXRpb24gb2Ygc2hlZXQgY29udGFpbmVyXG5jb25zdCBBTklNQVRJT05fRFVSQVRJT05fRVhJVCA9IDIwMDsgLy8gZHVyYXRpb25cbi8vIER1cmF0aW9uIG9mIGZhZGUgaW4vb3V0IGFuaW1hdGlvbiBvZiBjb250ZW50IGNvbnRhaW5lclxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlQgPSA1MDtcbi8vIE1heCBoZWlnaHQgb2Ygc2hlZXQgY29udGVudCByZWxhdGl2ZSB0byB2aWV3cG9ydCBoZWlnaHRcbmNvbnN0IE1BWF9IRUlHSFRfUEVSQ0VOVCA9IDgwO1xuLy8gTWluIGRyYWcgZGlzdGFuY2UgdG8gY2xvc2Ugc2hlZXRcbmNvbnN0IE1JTl9EUkFHX0RJU1RBTkNFID0gMTUwO1xuXG5jb25zdCBmYWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDEsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMCxcbiAgfSxcbn0pO1xuY29uc3QgZmFkZUluID0ga2V5ZnJhbWVzKHtcbiAgZnJvbToge1xuICAgIG9wYWNpdHk6IDAsXG4gIH0sXG4gIHRvOiB7XG4gICAgb3BhY2l0eTogMSxcbiAgfSxcbn0pO1xuXG50eXBlIFN0eWxlZENvbnRhaW5lclByb3BzID0gUGFydGlhbDxQaWNrPFNoZWV0UHJvcHMsIFwiaXNWaXNpYmxlXCI+PiAmIHtcbiAgY29udGFpbmVySGVpZ2h0PzogbnVtYmVyO1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xuICBkcmFnT2Zmc2V0PzogbnVtYmVyO1xuICBwcmV2VmlzaWJsZVN0YXRlPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgY29udGFpbmVySGVpZ2h0LCBpc0Nsb3NpbmcsIGRyYWdPZmZzZXQgPSAwLCBwcmV2VmlzaWJsZVN0YXRlIH0pID0+IHtcbiAgICBsZXQgYW5pbWF0aW9uO1xuICAgIGlmIChjb250YWluZXJIZWlnaHQpIHtcbiAgICAgIGNvbnN0IHNsaWRlT3V0ID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtkcmFnT2Zmc2V0fXB4KWAsXG4gICAgICAgIH0sXG4gICAgICAgIHRvOiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke2NvbnRhaW5lckhlaWdodH1weClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBjb25zdCBzbGlkZUluID0ga2V5ZnJhbWVzKHtcbiAgICAgICAgZnJvbToge1xuICAgICAgICAgIHRyYW5zZm9ybTogYHRyYW5zbGF0ZVkoJHtjb250YWluZXJIZWlnaHR9cHgpYCxcbiAgICAgICAgfSxcbiAgICAgICAgdG86IHtcbiAgICAgICAgICB0cmFuc2Zvcm06IGB0cmFuc2xhdGVZKDBweClgLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VYSVR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtzbGlkZU91dH1gO1xuICAgICAgfSBlbHNlIGlmICghcHJldlZpc2libGVTdGF0ZSkge1xuICAgICAgICAvLyBzZXQgZW50cnkgYW5pbWF0aW9uIG9ubHkgZm9yIHRoZSBmaXJzdCB0aW1lIGFmdGVyIHNoZWV0IGlzIHZpc2libGVcbiAgICAgICAgYW5pbWF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0VOVFJZfW1zIGVhc2Utb3V0IGZvcndhcmRzICR7c2xpZGVJbn1gO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGJvdHRvbTogMCxcbiAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICB0cmFuc2Zvcm1PcmlnaW46IFwiYm90dG9tXCIsXG4gICAgICBhbmltYXRpb24sXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgekluZGV4OiB0aGVtZS52YXJpYWJsZXMuekluZGV4Lm1vZGFsLFxuXG4gICAgICAvLyBSZW1vdmUgYm90dG9tIGJvcmRlciByYWRpdXMgb2YgRFMgQ29udGFpbmVyXG4gICAgICBcIj4gZGl2XCI6IHtcbiAgICAgICAgYm9yZGVyQm90dG9tTGVmdFJhZGl1czogMCxcbiAgICAgICAgYm9yZGVyQm90dG9tUmlnaHRSYWRpdXM6IDAsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzID0ge1xuICBpc0Nsb3Npbmc/OiBib29sZWFuO1xufTtcblxuY29uc3QgU3R5bGVkQ29udGVudENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGVudENvbnRhaW5lclByb3BzPihcbiAgKHsgaXNDbG9zaW5nIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb24gPSBpc0Nsb3NpbmdcbiAgICAgID8gYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHtmYWRlT3V0fWBcbiAgICAgIDogYCR7QU5JTUFUSU9OX0RVUkFUSU9OX0NPTlRFTlR9bXMgZWFzZS1vdXQgJHtcbiAgICAgICAgICBBTklNQVRJT05fRFVSQVRJT05fRU5UUlkgLSBBTklNQVRJT05fRFVSQVRJT05fQ09OVEVOVFxuICAgICAgICB9bXMgZm9yd2FyZHMgJHtmYWRlSW59YDtcblxuICAgIHJldHVybiB7XG4gICAgICBvdmVyZmxvdzogXCJhdXRvXCIsXG4gICAgICBtYXhIZWlnaHQ6IGAke01BWF9IRUlHSFRfUEVSQ0VOVH12aGAsXG4gICAgICBib3hTaXppbmc6IFwiYm9yZGVyLWJveFwiLFxuICAgICAgb3ZlcnNjcm9sbEJlaGF2aW9yOiBcIm5vbmVcIixcbiAgICAgIG9wYWNpdHk6IDAsXG4gICAgICBhbmltYXRpb24sXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRIYW5kbGVDb250YWluZXJQcm9wcyA9IHtcbiAgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQ/OiBib29sZWFuO1xufTtcbmNvbnN0IFN0eWxlZEhhbmRsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkSGFuZGxlQ29udGFpbmVyUHJvcHM+KFxuICAoeyB0aGVtZSwgaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQgfSkgPT4gKHtcbiAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAwYCxcbiAgICBkaXNwbGF5OiBcImZsZXhcIixcbiAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgIC4uLihpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCAmJiB7XG4gICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb24uYSxcbiAgICB9KSxcbiAgfSlcbik7XG5cbmNvbnN0IFN0eWxlZEhhbmRsZSA9IHN0eWxlZC5kaXYoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6IFwiODBweFwiLFxuICBoZWlnaHQ6IFwiNHB4XCIsXG4gIGJvcmRlclJhZGl1czogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzLFxuICBiYWNrZ3JvdW5kQ29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci5kaXZpZGVyLnByaW1hcnksXG59KSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBTaGVldCh7XG4gIGlkLFxuICBjaGlsZHJlbixcbiAgaXNWaXNpYmxlLFxuICBvbkNsb3NlLFxuICBvblVubW91bnQsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNoZWV0UHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCBbaXNDbG9zaW5nLCBzZXRDbG9zaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2NvbnRhaW5lckhlaWdodCwgc2V0Q29udGFpbmVySGVpZ2h0XSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbaXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQsIHNldENvbnRlbnRDb250YWluZXJTY3JvbGxlZF0gPVxuICAgIHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBjb250ZW50Q29udGFpbmVyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCBwcmV2VmlzaWJsZVN0YXRlID0gdXNlUmVmKGlzVmlzaWJsZSk7XG4gIGNvbnN0IGRyYWdPZmZzZXQgPSB1c2VSZWYoMCk7XG4gIGNvbnN0IGlzRHJhZ1N0YXJ0ZWQgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgICBzZXRDb250YWluZXJIZWlnaHQoY29udGFpbmVyUmVjdC5oZWlnaHQpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2hpbGRyZW5dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIFN0YXJ0IGNsb3Npbmcgc2hlZXQgaWYgcHJldmlvdXNseSBvcGVuZWRcbiAgICBpZiAoIWlzVmlzaWJsZSAmJiBwcmV2VmlzaWJsZVN0YXRlLmN1cnJlbnQpIHtcbiAgICAgIHNldENsb3NpbmcodHJ1ZSk7XG4gICAgfVxuICAgIHByZXZWaXNpYmxlU3RhdGUuY3VycmVudCA9IGlzVmlzaWJsZTtcbiAgfSwgW2lzVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiBpc0Nsb3NpbmcpIHtcbiAgICAgIC8vIFNvbWV0aW1lcywgcGFyZW50IGNvbXBvbmVudCBjYW4gcmUtb3BlbiBzaGVldCB3aGlsZSBpdCBpcyBzdGlsbCBjbG9zaW5nLiBUbyBwcmV2ZW50IHRoaXMsIHdlIGNhbGwgb25DbG9zZSBhZ2FpblxuICAgICAgb25DbG9zZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgaXNDbG9zaW5nLCBvbkNsb3NlXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZ1N0YXJ0ID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBpZiAoY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCA9PT0gMCkge1xuICAgICAgICAvLyBSZW1vdmUgZXhpc3RpbmcgYW5pbWF0aW9uLCBvdGhlcndpc2UgdHJhbnNmb3JtIGRvZXNuJ3Qgd29ya1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS5hbmltYXRpb24gPSBcIm5vbmVcIjtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNpdGlvbiA9IFwidHJhbnNmb3JtIDAuMXMgZWFzZVwiO1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBcInRyYW5zbGF0ZVkoMHB4KVwiO1xuICAgICAgICBkcmFnT2Zmc2V0LmN1cnJlbnQgPSAwO1xuICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJhZyA9IHVzZUNhbGxiYWNrKFxuICAgIChfLCBvZmZzZXRGcm9tU3RhcnQpID0+IHtcbiAgICAgIGNvbnN0IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPVxuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbiAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBpc0RyYWdTdGFydGVkLmN1cnJlbnQgJiZcbiAgICAgICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQuc2Nyb2xsVG9wID09PSAwICYmXG4gICAgICAgICAgb2Zmc2V0RnJvbVN0YXJ0IDwgY29udGFpbmVyQ3VycmVudEhlaWdodFxuICAgICAgICApIHtcbiAgICAgICAgICBjb250YWluZXJSZWYuY3VycmVudC5zdHlsZS50cmFuc2Zvcm0gPSBgdHJhbnNsYXRlWSgke29mZnNldEZyb21TdGFydH1weClgO1xuICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IG9mZnNldEZyb21TdGFydDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBjb250ZW50Q29udGFpbmVyUmVmXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdFbmQgPSB1c2VDYWxsYmFjayhcbiAgICAoXywgb2Zmc2V0RnJvbVN0YXJ0KSA9PiB7XG4gICAgICBjb25zdCBjb250YWluZXJDdXJyZW50SGVpZ2h0ID1cbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICAgICAgLy8gQ2xvc2Ugc2hlZXQgb25seSB3aGVuIGRyYWcgZGlzdGFuY2UgaXMgYSBxdWFydGVyIG9mIGNvbnRhaW5lciBoZWlnaHRcbiAgICAgIGNvbnN0IG1pbkRyYWdEaXN0YW5jZSA9XG4gICAgICAgIGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgPCBNSU5fRFJBR19ESVNUQU5DRSAqIDJcbiAgICAgICAgICA/IGNvbnRhaW5lckN1cnJlbnRIZWlnaHQgLyA0XG4gICAgICAgICAgOiBNSU5fRFJBR19ESVNUQU5DRTtcblxuICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgaWYgKGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCkge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIG9mZnNldEZyb21TdGFydCA+PSBtaW5EcmFnRGlzdGFuY2UgJiZcbiAgICAgICAgICAgIGNvbnRlbnRDb250YWluZXJSZWYuY3VycmVudC5zY3JvbGxUb3AgPT09IDBcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9uQ2xvc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgICAgIGRyYWdPZmZzZXQuY3VycmVudCA9IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgICAgfSk7XG4gICAgfSxcbiAgICBbY29udGFpbmVyUmVmLCBvbkNsb3NlXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyYWdDYW5jZWwgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGlmIChpc0RyYWdTdGFydGVkLmN1cnJlbnQpIHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQuc3R5bGUudHJhbnNmb3JtID0gXCJ0cmFuc2xhdGVZKDBweClcIjtcbiAgICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcbiAgICAgIH1cbiAgICAgIGlzRHJhZ1N0YXJ0ZWQuY3VycmVudCA9IGZhbHNlO1xuICAgIH0pO1xuICB9LCBbY29udGFpbmVyUmVmXSk7XG5cbiAgdXNlRHJhZ0Rvd24oe1xuICAgIHJlZjogY29udGFpbmVyUmVmLFxuICAgIGlzVmlzaWJsZTogaXNWaXNpYmxlICYmICFpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZCxcbiAgICBvbkRyYWdTdGFydDogaGFuZGxlRHJhZ1N0YXJ0LFxuICAgIG9uRHJhZzogaGFuZGxlRHJhZyxcbiAgICBvbkRyYWdFbmQ6IGhhbmRsZURyYWdFbmQsXG4gICAgb25EcmFnQ2FuY2VsOiBoYW5kbGVEcmFnQ2FuY2VsLFxuICB9KTtcblxuICBjb25zdCBoYW5kbGVFeGl0QW5pbWF0aW9uRW5kID0gKCkgPT4ge1xuICAgIGlmIChpc0Nsb3NpbmcpIHtcbiAgICAgIHNldENsb3NpbmcoZmFsc2UpO1xuICAgICAgZHJhZ09mZnNldC5jdXJyZW50ID0gMDtcblxuICAgICAgaWYgKG9uVW5tb3VudCkge1xuICAgICAgICBvblVubW91bnQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ29udGVudENvbnRhaW5lclNjcm9sbCA9ICgpID0+IHtcbiAgICBzZXRDb250ZW50Q29udGFpbmVyU2Nyb2xsZWQoXG4gICAgICBjb250ZW50Q29udGFpbmVyUmVmLmN1cnJlbnQgJiYgY29udGVudENvbnRhaW5lclJlZi5jdXJyZW50LnNjcm9sbFRvcCAhPT0gMFxuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2hvd1NoZWV0ID0gKGlzVmlzaWJsZSB8fCBpc0Nsb3NpbmcpICYmICEoaXNWaXNpYmxlICYmIGlzQ2xvc2luZyk7XG5cbiAgaWYgKCFzaG93U2hlZXQpIHJldHVybiBudWxsO1xuXG4gIGNvbnN0IGdsb2JhbFN0eWxlcyA9IHtcbiAgICBodG1sOiB7XG4gICAgICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgICAgIG92ZXJzY3JvbGxCZWhhdmlvcjogXCJub25lXCIsXG4gICAgfSxcbiAgfTtcblxuICBjb25zdCBpZFByb3AgPSBpZFxuICAgID8ge1xuICAgICAgICBpZCxcbiAgICAgIH1cbiAgICA6IHt9O1xuXG4gIGNvbnN0IHNoZWV0RWxtID0gKFxuICAgIDw+XG4gICAgICA8R2xvYmFsIHN0eWxlcz17Z2xvYmFsU3R5bGVzfSAvPlxuICAgICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICAgIGNsaWNrT3V0c2lkZURlYWN0aXZhdGVzOiBkaXNtaXNzT25PdXRzaWRlQ2xpY2ssXG4gICAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICAgIHJldHVybkZvY3VzT25EZWFjdGl2YXRlOiAhZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyLFxuICAgICAgICAgIGZhbGxiYWNrRm9jdXM6IGBbZGF0YS1kcy1pZD1cIlNoZWV0XCJdYCxcbiAgICAgICAgICBvblBvc3REZWFjdGl2YXRlOiAoKSA9PiB7XG4gICAgICAgICAgICBvbkNsb3NlKCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgIHsuLi5pZFByb3B9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgICAgZGF0YS1kcy1pZD1cIlNoZWV0XCJcbiAgICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgICBjb250YWluZXJIZWlnaHQ9e2NvbnRhaW5lckhlaWdodH1cbiAgICAgICAgICBpc0Nsb3Npbmc9e2lzQ2xvc2luZ31cbiAgICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgICBkcmFnT2Zmc2V0PXtkcmFnT2Zmc2V0LmN1cnJlbnR9XG4gICAgICAgICAgcHJldlZpc2libGVTdGF0ZT17cHJldlZpc2libGVTdGF0ZS5jdXJyZW50fVxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXtoYW5kbGVFeGl0QW5pbWF0aW9uRW5kfVxuICAgICAgICA+XG4gICAgICAgICAgPENvbnRhaW5lciBlbGV2YXRpb249ezR9PlxuICAgICAgICAgICAgPFN0eWxlZEhhbmRsZUNvbnRhaW5lclxuICAgICAgICAgICAgICBpc0NvbnRlbnRDb250YWluZXJTY3JvbGxlZD17aXNDb250ZW50Q29udGFpbmVyU2Nyb2xsZWR9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxTdHlsZWRIYW5kbGUgLz5cbiAgICAgICAgICAgIDwvU3R5bGVkSGFuZGxlQ29udGFpbmVyPlxuICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRDb250YWluZXJcbiAgICAgICAgICAgICAgaXNDbG9zaW5nPXtpc0Nsb3Npbmd9XG4gICAgICAgICAgICAgIHJlZj17Y29udGVudENvbnRhaW5lclJlZn1cbiAgICAgICAgICAgICAgb25TY3JvbGw9e2hhbmRsZUNvbnRlbnRDb250YWluZXJTY3JvbGx9XG4gICAgICAgICAgICAgIG9uQW5pbWF0aW9uRW5kPXsoZXZ0KSA9PiBldnQuc3RvcFByb3BhZ2F0aW9uKCl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudENvbnRhaW5lcj5cbiAgICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICAgPC8+XG4gICk7XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChzaGVldEVsbSwgcG9ydGFsQ29udGFpbmVyIHx8IGRvY3VtZW50LmJvZHkpO1xufVxuIl19 */");
|
|
144
|
+
function Sheet(_ref5) {
|
|
145
|
+
let {
|
|
146
|
+
id,
|
|
147
|
+
children,
|
|
148
|
+
isVisible,
|
|
149
|
+
onClose,
|
|
150
|
+
onUnmount,
|
|
151
|
+
portalContainer,
|
|
152
|
+
dismissOnOutsideClick = true,
|
|
153
|
+
disableInitialFocus,
|
|
154
|
+
disableReturnFocusToTrigger,
|
|
155
|
+
"data-e2e-test-id": dataE2eTestId
|
|
156
|
+
} = _ref5;
|
|
157
|
+
const [isClosing, setClosing] = useState(false);
|
|
158
|
+
const [containerHeight, setContainerHeight] = useState(0);
|
|
159
|
+
const [isContentContainerScrolled, setContentContainerScrolled] = useState(false);
|
|
160
|
+
const containerRef = useRef(null);
|
|
161
|
+
const contentContainerRef = useRef(null);
|
|
162
|
+
const prevVisibleState = useRef(isVisible);
|
|
163
|
+
const dragOffset = useRef(0);
|
|
164
|
+
const isDragStarted = useRef(false);
|
|
165
|
+
useLayoutEffect(() => {
|
|
166
|
+
if (isVisible && containerRef.current) {
|
|
167
|
+
const containerRect = containerRef.current.getBoundingClientRect();
|
|
168
|
+
setContainerHeight(containerRect.height);
|
|
169
|
+
}
|
|
170
|
+
}, [isVisible, children]);
|
|
171
|
+
useEffect(() => {
|
|
172
|
+
// Start closing sheet if previously opened
|
|
173
|
+
if (!isVisible && prevVisibleState.current) {
|
|
174
|
+
setClosing(true);
|
|
175
|
+
}
|
|
176
|
+
prevVisibleState.current = isVisible;
|
|
177
|
+
}, [isVisible]);
|
|
178
|
+
useEffect(() => {
|
|
179
|
+
if (isVisible && isClosing) {
|
|
180
|
+
// Sometimes, parent component can re-open sheet while it is still closing. To prevent this, we call onClose again
|
|
181
|
+
onClose();
|
|
182
|
+
}
|
|
183
|
+
}, [isVisible, isClosing, onClose]);
|
|
184
|
+
const handleDragStart = useCallback(() => {
|
|
185
|
+
requestAnimationFrame(() => {
|
|
186
|
+
if (contentContainerRef.current.scrollTop === 0) {
|
|
187
|
+
// Remove existing animation, otherwise transform doesn't work
|
|
188
|
+
containerRef.current.style.animation = "none";
|
|
189
|
+
containerRef.current.style.transition = "transform 0.1s ease";
|
|
190
|
+
containerRef.current.style.transform = "translateY(0px)";
|
|
191
|
+
dragOffset.current = 0;
|
|
192
|
+
isDragStarted.current = true;
|
|
193
|
+
}
|
|
194
|
+
});
|
|
195
|
+
}, [containerRef, contentContainerRef]);
|
|
196
|
+
const handleDrag = useCallback((_, offsetFromStart) => {
|
|
197
|
+
const containerCurrentHeight = containerRef.current.getBoundingClientRect().height;
|
|
198
|
+
requestAnimationFrame(() => {
|
|
199
|
+
if (isDragStarted.current && contentContainerRef.current.scrollTop === 0 && offsetFromStart < containerCurrentHeight) {
|
|
200
|
+
containerRef.current.style.transform = `translateY(${offsetFromStart}px)`;
|
|
201
|
+
dragOffset.current = offsetFromStart;
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
}, [containerRef, contentContainerRef]);
|
|
205
|
+
const handleDragEnd = useCallback((_, offsetFromStart) => {
|
|
206
|
+
const containerCurrentHeight = containerRef.current.getBoundingClientRect().height;
|
|
207
|
+
// Close sheet only when drag distance is a quarter of container height
|
|
208
|
+
const minDragDistance = containerCurrentHeight < MIN_DRAG_DISTANCE * 2 ? containerCurrentHeight / 4 : MIN_DRAG_DISTANCE;
|
|
209
|
+
requestAnimationFrame(() => {
|
|
210
|
+
if (isDragStarted.current) {
|
|
211
|
+
if (offsetFromStart >= minDragDistance && contentContainerRef.current.scrollTop === 0) {
|
|
212
|
+
onClose();
|
|
213
|
+
} else {
|
|
214
|
+
containerRef.current.style.transform = "translateY(0px)";
|
|
215
|
+
dragOffset.current = 0;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
isDragStarted.current = false;
|
|
219
|
+
});
|
|
220
|
+
}, [containerRef, onClose]);
|
|
221
|
+
const handleDragCancel = useCallback(() => {
|
|
222
|
+
requestAnimationFrame(() => {
|
|
223
|
+
if (isDragStarted.current) {
|
|
224
|
+
containerRef.current.style.transform = "translateY(0px)";
|
|
225
|
+
dragOffset.current = 0;
|
|
226
|
+
}
|
|
227
|
+
isDragStarted.current = false;
|
|
228
|
+
});
|
|
229
|
+
}, [containerRef]);
|
|
230
|
+
useDragDown({
|
|
231
|
+
ref: containerRef,
|
|
232
|
+
isVisible: isVisible && !isContentContainerScrolled,
|
|
233
|
+
onDragStart: handleDragStart,
|
|
234
|
+
onDrag: handleDrag,
|
|
235
|
+
onDragEnd: handleDragEnd,
|
|
236
|
+
onDragCancel: handleDragCancel
|
|
237
|
+
});
|
|
238
|
+
const handleExitAnimationEnd = () => {
|
|
239
|
+
if (isClosing) {
|
|
240
|
+
setClosing(false);
|
|
241
|
+
dragOffset.current = 0;
|
|
242
|
+
if (onUnmount) {
|
|
243
|
+
onUnmount();
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
};
|
|
247
|
+
const handleContentContainerScroll = () => {
|
|
248
|
+
setContentContainerScrolled(contentContainerRef.current && contentContainerRef.current.scrollTop !== 0);
|
|
249
|
+
};
|
|
250
|
+
const showSheet = (isVisible || isClosing) && !(isVisible && isClosing);
|
|
251
|
+
if (!showSheet) return null;
|
|
252
|
+
const globalStyles = {
|
|
253
|
+
html: {
|
|
254
|
+
overflow: "hidden",
|
|
255
|
+
overscrollBehavior: "none"
|
|
256
|
+
}
|
|
257
|
+
};
|
|
258
|
+
const idProp = id ? {
|
|
259
|
+
id
|
|
260
|
+
} : {};
|
|
261
|
+
const sheetElm = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Global, {
|
|
262
|
+
styles: globalStyles
|
|
263
|
+
}), /*#__PURE__*/React.createElement(FocusTrapWrapper, {
|
|
264
|
+
focusTrapOptions: {
|
|
265
|
+
clickOutsideDeactivates: dismissOnOutsideClick,
|
|
266
|
+
escapeDeactivates: true,
|
|
267
|
+
preventScroll: true,
|
|
268
|
+
initialFocus: () => !disableInitialFocus,
|
|
269
|
+
returnFocusOnDeactivate: !disableReturnFocusToTrigger,
|
|
270
|
+
fallbackFocus: `[data-ds-id="Sheet"]`,
|
|
271
|
+
onPostDeactivate: () => {
|
|
272
|
+
onClose();
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
}, /*#__PURE__*/React.createElement(StyledContainer, _extends({}, idProp, {
|
|
276
|
+
// eslint-disable-line react/jsx-props-no-spreading
|
|
277
|
+
"data-e2e-test-id": dataE2eTestId,
|
|
278
|
+
"data-ds-id": "Sheet",
|
|
279
|
+
isVisible: isVisible,
|
|
280
|
+
containerHeight: containerHeight,
|
|
281
|
+
isClosing: isClosing,
|
|
282
|
+
ref: containerRef,
|
|
283
|
+
dragOffset: dragOffset.current,
|
|
284
|
+
prevVisibleState: prevVisibleState.current,
|
|
285
|
+
onAnimationEnd: handleExitAnimationEnd
|
|
286
|
+
}), /*#__PURE__*/React.createElement(Container, {
|
|
287
|
+
elevation: 4
|
|
288
|
+
}, /*#__PURE__*/React.createElement(StyledHandleContainer, {
|
|
289
|
+
isContentContainerScrolled: isContentContainerScrolled
|
|
290
|
+
}, /*#__PURE__*/React.createElement(StyledHandle, null)), /*#__PURE__*/React.createElement(StyledContentContainer, {
|
|
291
|
+
isClosing: isClosing,
|
|
292
|
+
ref: contentContainerRef,
|
|
293
|
+
onScroll: handleContentContainerScroll,
|
|
294
|
+
onAnimationEnd: evt => evt.stopPropagation()
|
|
295
|
+
}, children)))));
|
|
296
|
+
return /*#__PURE__*/createPortal(sheetElm, portalContainer || document.body);
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
export { Sheet };
|
|
300
|
+
//# sourceMappingURL=Sheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sheet.js","sources":["../../../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["import React, {\n useRef,\n useLayoutEffect,\n useState,\n useEffect,\n useCallback,\n} from \"react\";\nimport styled from \"@emotion/styled\";\nimport { createPortal } from \"react-dom\";\nimport { keyframes, Global } from \"@emotion/react\";\nimport { FocusTrapWrapper } from \"../../shared/FocusTrapWrapper\";\nimport { Container } from \"../Container/Container\";\nimport { useDragDown } from \"../../shared/useDragDown\";\n\nexport type SheetProps = {\n /* Id to associate with a trigger */\n id?: string;\n /** contents */\n children: React.ReactNode;\n /* Custom portal container to render sheet into */\n portalContainer?: HTMLElement;\n /* used to show / hide sheet */\n isVisible: boolean;\n \"data-e2e-test-id\"?: string;\n /* Called when sheet needs to close, on escape, outside click, swipe down, etc. */\n onClose: () => void;\n /* Called when sheet is removed from DOM after exit animation. */\n onUnmount?: () => void;\n /* Controls whether Sheet closes on outside click */\n dismissOnOutsideClick?: boolean;\n /* Option for focus-trap, controls whether the first focuable item recieves focus */\n disableInitialFocus?: boolean;\n /* Option for focus-trap, controls whether the trigger should receive back the focus on popover close */\n disableReturnFocusToTrigger?: boolean;\n};\n\n// Duration of slidein animation of sheet container\nconst ANIMATION_DURATION_ENTRY = 300;\n// Duration of slideout animation of sheet container\nconst ANIMATION_DURATION_EXIT = 200; // duration\n// Duration of fade in/out animation of content container\nconst ANIMATION_DURATION_CONTENT = 50;\n// Max height of sheet content relative to viewport height\nconst MAX_HEIGHT_PERCENT = 80;\n// Min drag distance to close sheet\nconst MIN_DRAG_DISTANCE = 150;\n\nconst fadeOut = keyframes({\n from: {\n opacity: 1,\n },\n to: {\n opacity: 0,\n },\n});\nconst fadeIn = keyframes({\n from: {\n opacity: 0,\n },\n to: {\n opacity: 1,\n },\n});\n\ntype StyledContainerProps = Partial<Pick<SheetProps, \"isVisible\">> & {\n containerHeight?: number;\n isClosing?: boolean;\n dragOffset?: number;\n prevVisibleState?: boolean;\n};\n\nconst StyledContainer = styled.div<StyledContainerProps>(\n ({ theme, containerHeight, isClosing, dragOffset = 0, prevVisibleState }) => {\n let animation;\n if (containerHeight) {\n const slideOut = keyframes({\n from: {\n transform: `translateY(${dragOffset}px)`,\n },\n to: {\n transform: `translateY(${containerHeight}px)`,\n },\n });\n const slideIn = keyframes({\n from: {\n transform: `translateY(${containerHeight}px)`,\n },\n to: {\n transform: `translateY(0px)`,\n },\n });\n\n if (isClosing) {\n animation = `${ANIMATION_DURATION_EXIT}ms ease-out forwards ${slideOut}`;\n } else if (!prevVisibleState) {\n // set entry animation only for the first time after sheet is visible\n animation = `${ANIMATION_DURATION_ENTRY}ms ease-out forwards ${slideIn}`;\n }\n }\n\n return {\n position: \"fixed\",\n left: 0,\n bottom: 0,\n width: \"100vw\",\n transformOrigin: \"bottom\",\n animation,\n boxSizing: \"border-box\",\n zIndex: theme.variables.zIndex.modal,\n\n // Remove bottom border radius of DS Container\n \"> div\": {\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n },\n };\n }\n);\n\ntype StyledContentContainerProps = {\n isClosing?: boolean;\n};\n\nconst StyledContentContainer = styled.div<StyledContentContainerProps>(\n ({ isClosing }) => {\n const animation = isClosing\n ? `${ANIMATION_DURATION_CONTENT}ms ease-out forwards ${fadeOut}`\n : `${ANIMATION_DURATION_CONTENT}ms ease-out ${\n ANIMATION_DURATION_ENTRY - ANIMATION_DURATION_CONTENT\n }ms forwards ${fadeIn}`;\n\n return {\n overflow: \"auto\",\n maxHeight: `${MAX_HEIGHT_PERCENT}vh`,\n boxSizing: \"border-box\",\n overscrollBehavior: \"none\",\n opacity: 0,\n animation,\n };\n }\n);\n\ntype StyledHandleContainerProps = {\n isContentContainerScrolled?: boolean;\n};\nconst StyledHandleContainer = styled.div<StyledHandleContainerProps>(\n ({ theme, isContentContainerScrolled }) => ({\n padding: `${theme.variables.size.spacing.xs} 0`,\n display: \"flex\",\n justifyContent: \"center\",\n\n ...(isContentContainerScrolled && {\n boxShadow: theme.values.elevation.a,\n }),\n })\n);\n\nconst StyledHandle = styled.div(({ theme }) => ({\n width: \"80px\",\n height: \"4px\",\n borderRadius: theme.variables.size.borderRadius.xs,\n backgroundColor: theme.values.color.divider.primary,\n}));\n\nexport function Sheet({\n id,\n children,\n isVisible,\n onClose,\n onUnmount,\n portalContainer,\n dismissOnOutsideClick = true,\n disableInitialFocus,\n disableReturnFocusToTrigger,\n \"data-e2e-test-id\": dataE2eTestId,\n}: SheetProps): React.ReactElement {\n const [isClosing, setClosing] = useState(false);\n const [containerHeight, setContainerHeight] = useState(0);\n const [isContentContainerScrolled, setContentContainerScrolled] =\n useState(false);\n const containerRef = useRef(null);\n const contentContainerRef = useRef(null);\n const prevVisibleState = useRef(isVisible);\n const dragOffset = useRef(0);\n const isDragStarted = useRef(false);\n\n useLayoutEffect(() => {\n if (isVisible && containerRef.current) {\n const containerRect = containerRef.current.getBoundingClientRect();\n\n setContainerHeight(containerRect.height);\n }\n }, [isVisible, children]);\n\n useEffect(() => {\n // Start closing sheet if previously opened\n if (!isVisible && prevVisibleState.current) {\n setClosing(true);\n }\n prevVisibleState.current = isVisible;\n }, [isVisible]);\n\n useEffect(() => {\n if (isVisible && isClosing) {\n // Sometimes, parent component can re-open sheet while it is still closing. To prevent this, we call onClose again\n onClose();\n }\n }, [isVisible, isClosing, onClose]);\n\n const handleDragStart = useCallback(() => {\n requestAnimationFrame(() => {\n if (contentContainerRef.current.scrollTop === 0) {\n // Remove existing animation, otherwise transform doesn't work\n containerRef.current.style.animation = \"none\";\n containerRef.current.style.transition = \"transform 0.1s ease\";\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n isDragStarted.current = true;\n }\n });\n }, [containerRef, contentContainerRef]);\n\n const handleDrag = useCallback(\n (_, offsetFromStart) => {\n const containerCurrentHeight =\n containerRef.current.getBoundingClientRect().height;\n\n requestAnimationFrame(() => {\n if (\n isDragStarted.current &&\n contentContainerRef.current.scrollTop === 0 &&\n offsetFromStart < containerCurrentHeight\n ) {\n containerRef.current.style.transform = `translateY(${offsetFromStart}px)`;\n dragOffset.current = offsetFromStart;\n }\n });\n },\n [containerRef, contentContainerRef]\n );\n\n const handleDragEnd = useCallback(\n (_, offsetFromStart) => {\n const containerCurrentHeight =\n containerRef.current.getBoundingClientRect().height;\n // Close sheet only when drag distance is a quarter of container height\n const minDragDistance =\n containerCurrentHeight < MIN_DRAG_DISTANCE * 2\n ? containerCurrentHeight / 4\n : MIN_DRAG_DISTANCE;\n\n requestAnimationFrame(() => {\n if (isDragStarted.current) {\n if (\n offsetFromStart >= minDragDistance &&\n contentContainerRef.current.scrollTop === 0\n ) {\n onClose();\n } else {\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n }\n }\n isDragStarted.current = false;\n });\n },\n [containerRef, onClose]\n );\n\n const handleDragCancel = useCallback(() => {\n requestAnimationFrame(() => {\n if (isDragStarted.current) {\n containerRef.current.style.transform = \"translateY(0px)\";\n dragOffset.current = 0;\n }\n isDragStarted.current = false;\n });\n }, [containerRef]);\n\n useDragDown({\n ref: containerRef,\n isVisible: isVisible && !isContentContainerScrolled,\n onDragStart: handleDragStart,\n onDrag: handleDrag,\n onDragEnd: handleDragEnd,\n onDragCancel: handleDragCancel,\n });\n\n const handleExitAnimationEnd = () => {\n if (isClosing) {\n setClosing(false);\n dragOffset.current = 0;\n\n if (onUnmount) {\n onUnmount();\n }\n }\n };\n\n const handleContentContainerScroll = () => {\n setContentContainerScrolled(\n contentContainerRef.current && contentContainerRef.current.scrollTop !== 0\n );\n };\n\n const showSheet = (isVisible || isClosing) && !(isVisible && isClosing);\n\n if (!showSheet) return null;\n\n const globalStyles = {\n html: {\n overflow: \"hidden\",\n overscrollBehavior: \"none\",\n },\n };\n\n const idProp = id\n ? {\n id,\n }\n : {};\n\n const sheetElm = (\n <>\n <Global styles={globalStyles} />\n <FocusTrapWrapper\n focusTrapOptions={{\n clickOutsideDeactivates: dismissOnOutsideClick,\n escapeDeactivates: true,\n preventScroll: true,\n initialFocus: () => !disableInitialFocus,\n returnFocusOnDeactivate: !disableReturnFocusToTrigger,\n fallbackFocus: `[data-ds-id=\"Sheet\"]`,\n onPostDeactivate: () => {\n onClose();\n },\n }}\n >\n <StyledContainer\n {...idProp} // eslint-disable-line react/jsx-props-no-spreading\n data-e2e-test-id={dataE2eTestId}\n data-ds-id=\"Sheet\"\n isVisible={isVisible}\n containerHeight={containerHeight}\n isClosing={isClosing}\n ref={containerRef}\n dragOffset={dragOffset.current}\n prevVisibleState={prevVisibleState.current}\n onAnimationEnd={handleExitAnimationEnd}\n >\n <Container elevation={4}>\n <StyledHandleContainer\n isContentContainerScrolled={isContentContainerScrolled}\n >\n <StyledHandle />\n </StyledHandleContainer>\n <StyledContentContainer\n isClosing={isClosing}\n ref={contentContainerRef}\n onScroll={handleContentContainerScroll}\n onAnimationEnd={(evt) => evt.stopPropagation()}\n >\n {children}\n </StyledContentContainer>\n </Container>\n </StyledContainer>\n </FocusTrapWrapper>\n </>\n );\n\n return createPortal(sheetElm, portalContainer || document.body);\n}\n"],"names":["ANIMATION_DURATION_ENTRY","ANIMATION_DURATION_EXIT","ANIMATION_DURATION_CONTENT","MAX_HEIGHT_PERCENT","MIN_DRAG_DISTANCE","fadeOut","keyframes","from","opacity","to","fadeIn","StyledContainer","_styled","process","env","NODE_ENV","target","label","_ref","theme","containerHeight","isClosing","dragOffset","prevVisibleState","animation","slideOut","transform","slideIn","position","left","bottom","width","transformOrigin","boxSizing","zIndex","variables","modal","borderBottomLeftRadius","borderBottomRightRadius","StyledContentContainer","_ref2","overflow","maxHeight","overscrollBehavior","StyledHandleContainer","_ref3","isContentContainerScrolled","padding","size","spacing","xs","display","justifyContent","boxShadow","values","elevation","a","StyledHandle","_ref4","height","borderRadius","backgroundColor","color","divider","primary","Sheet","_ref5","id","children","isVisible","onClose","onUnmount","portalContainer","dismissOnOutsideClick","disableInitialFocus","disableReturnFocusToTrigger","dataE2eTestId","setClosing","useState","setContainerHeight","setContentContainerScrolled","containerRef","useRef","contentContainerRef","isDragStarted","useLayoutEffect","current","containerRect","getBoundingClientRect","useEffect","handleDragStart","useCallback","requestAnimationFrame","scrollTop","style","transition","handleDrag","_","offsetFromStart","containerCurrentHeight","handleDragEnd","minDragDistance","handleDragCancel","useDragDown","ref","onDragStart","onDrag","onDragEnd","onDragCancel","handleExitAnimationEnd","handleContentContainerScroll","showSheet","globalStyles","html","idProp","sheetElm","React","createElement","Fragment","Global","styles","FocusTrapWrapper","focusTrapOptions","clickOutsideDeactivates","escapeDeactivates","preventScroll","initialFocus","returnFocusOnDeactivate","fallbackFocus","onPostDeactivate","_extends","onAnimationEnd","Container","onScroll","evt","stopPropagation","createPortal","document","body"],"mappings":"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"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import React, { ReactElement } from "react";
|
|
2
2
|
import type { TooltipContentProps } from "../Tooltip/TooltipContent";
|
|
3
3
|
import { TooltipConditionalProps } from "../Tooltip/types";
|
|
4
|
-
type BaseProps = Pick<TooltipContentProps, "placement" | "portalContainer" | "maxWidth" | "contentPadding" | "hideArrow" | "hasInvertedSubTheme"> & {
|
|
4
|
+
type BaseProps = Pick<TooltipContentProps, "placement" | "portalContainer" | "maxWidth" | "contentPadding" | "hideArrow" | "hasInvertedSubTheme" | "defaultVerticalPlacement"> & {
|
|
5
5
|
name?: string;
|
|
6
6
|
content: ReactElement;
|
|
7
7
|
"data-e2e-test-id"?: string;
|
|
8
8
|
isVisible?: boolean;
|
|
9
|
-
onVisibilityChange?: (isVisible: boolean) => void;
|
|
9
|
+
onVisibilityChange?: (isVisible: boolean, reason: string) => void;
|
|
10
10
|
dismissOnOutsideClick?: boolean;
|
|
11
11
|
disableInitialFocus?: boolean;
|
|
12
12
|
disableReturnFocusToTrigger?: boolean;
|
|
13
|
+
renderAsSheetOnMobile?: boolean;
|
|
13
14
|
};
|
|
14
|
-
export type BasePopoverProps = BaseProps;
|
|
15
|
-
|
|
16
|
-
export declare function BasePopover({ placement, content, children, contentPadding, maxWidth, externalTriggerRef, portalContainer, name, isVisible: isPopoverVisible, dismissOnOutsideClick, "data-e2e-test-id": dataE2eTestId, hasInvertedSubTheme, defaultVerticalPlacement, onVisibilityChange, disableInitialFocus, disableReturnFocusToTrigger, ...restContentProps }: BasePopoverInternalProps): React.ReactElement;
|
|
15
|
+
export type BasePopoverProps = BaseProps & TooltipConditionalProps;
|
|
16
|
+
export declare function BasePopover({ placement, content, children, contentPadding, maxWidth, externalTriggerRef, portalContainer, name, isVisible: isPopoverVisible, dismissOnOutsideClick, "data-e2e-test-id": dataE2eTestId, hasInvertedSubTheme, defaultVerticalPlacement, onVisibilityChange, disableInitialFocus, disableReturnFocusToTrigger, renderAsSheetOnMobile, ...restContentProps }: BasePopoverProps): React.ReactElement;
|
|
17
17
|
export {};
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import _extends from '@babel/runtime/helpers/extends';
|
|
2
2
|
import React, { useMemo, useState, useRef, useCallback, useEffect } from 'react';
|
|
3
|
-
import FocusTrap from 'focus-trap-react';
|
|
4
3
|
import { TooltipContent } from '../Tooltip/TooltipContent.js';
|
|
4
|
+
import { Sheet } from '../Sheet/Sheet.js';
|
|
5
|
+
import { FocusTrapWrapper } from '../../shared/FocusTrapWrapper.js';
|
|
6
|
+
import breakpoints from '../../../build-tokens/_breakpoints.json.js';
|
|
5
7
|
|
|
6
8
|
const FocusTrapContent = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
7
9
|
let {
|
|
@@ -11,6 +13,10 @@ const FocusTrapContent = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
11
13
|
ref: ref
|
|
12
14
|
}, children);
|
|
13
15
|
});
|
|
16
|
+
const VisibilityChangeReason = {
|
|
17
|
+
triggerClick: "triggerClick",
|
|
18
|
+
outsideClick: "outsideClick"
|
|
19
|
+
};
|
|
14
20
|
function BasePopover(_ref2) {
|
|
15
21
|
let {
|
|
16
22
|
placement = "auto",
|
|
@@ -29,24 +35,27 @@ function BasePopover(_ref2) {
|
|
|
29
35
|
onVisibilityChange,
|
|
30
36
|
disableInitialFocus = false,
|
|
31
37
|
disableReturnFocusToTrigger = false,
|
|
38
|
+
renderAsSheetOnMobile = false,
|
|
32
39
|
...restContentProps
|
|
33
40
|
} = _ref2;
|
|
34
41
|
const tooltipId = useMemo(() => `DS${name}_${Math.floor(Date.now() * Math.random())}`, [name]);
|
|
35
42
|
const [isVisible, setVisible] = useState(isPopoverVisible);
|
|
43
|
+
const [isMobileBreakPoint, setIsMobileBreakpoint] = useState(false);
|
|
36
44
|
const internalTriggerRef = useRef(null);
|
|
37
45
|
const triggerRef = externalTriggerRef || internalTriggerRef;
|
|
38
46
|
const isOutsideClickOnTrigger = useRef(false);
|
|
39
|
-
const
|
|
47
|
+
const isPrevMobileBreakPointRef = useRef(false);
|
|
48
|
+
const toggleVisibility = useCallback((status, reason) => {
|
|
40
49
|
setVisible(status);
|
|
41
50
|
if (onVisibilityChange) {
|
|
42
|
-
onVisibilityChange(status);
|
|
51
|
+
onVisibilityChange(status, reason);
|
|
43
52
|
}
|
|
44
53
|
}, [onVisibilityChange]);
|
|
45
54
|
|
|
46
55
|
// Outside click is also fired when the Popover is open and trigger is clicked. `isOutsideClickOnTrigger` saves this condition and we check for it so as to not toggle the Popover twice.
|
|
47
56
|
const handleTriggerClick = useCallback(() => {
|
|
48
57
|
if (!isOutsideClickOnTrigger.current) {
|
|
49
|
-
toggleVisibility(!isVisible);
|
|
58
|
+
toggleVisibility(!isVisible, VisibilityChangeReason.triggerClick);
|
|
50
59
|
} else {
|
|
51
60
|
// reset this value so that Popover can open in next click
|
|
52
61
|
isOutsideClickOnTrigger.current = false;
|
|
@@ -58,9 +67,21 @@ function BasePopover(_ref2) {
|
|
|
58
67
|
}
|
|
59
68
|
return true;
|
|
60
69
|
}, [triggerRef, isOutsideClickOnTrigger]);
|
|
70
|
+
const handleSheetClose = useCallback(() => {
|
|
71
|
+
toggleVisibility(false, "sheetClose");
|
|
72
|
+
}, [toggleVisibility]);
|
|
61
73
|
useEffect(() => {
|
|
62
74
|
setVisible(isPopoverVisible);
|
|
63
75
|
}, [isPopoverVisible]);
|
|
76
|
+
useEffect(() => {
|
|
77
|
+
// Check if this is a mobile breakpoint
|
|
78
|
+
if (renderAsSheetOnMobile) {
|
|
79
|
+
setIsMobileBreakpoint(window.innerWidth <= breakpoints.medium.value);
|
|
80
|
+
}
|
|
81
|
+
}, [isVisible, renderAsSheetOnMobile]);
|
|
82
|
+
useEffect(() => {
|
|
83
|
+
isPrevMobileBreakPointRef.current = isMobileBreakPoint;
|
|
84
|
+
}, [isMobileBreakPoint]);
|
|
64
85
|
useEffect(() => {
|
|
65
86
|
let trigger;
|
|
66
87
|
if (externalTriggerRef?.current && !children) {
|
|
@@ -100,7 +121,21 @@ function BasePopover(_ref2) {
|
|
|
100
121
|
}
|
|
101
122
|
}
|
|
102
123
|
}) : null;
|
|
103
|
-
|
|
124
|
+
if (isMobileBreakPoint) {
|
|
125
|
+
// render as Sheet
|
|
126
|
+
const sheetElm = /*#__PURE__*/React.createElement(Sheet, {
|
|
127
|
+
id: tooltipId,
|
|
128
|
+
isVisible: isVisible,
|
|
129
|
+
onClose: handleSheetClose,
|
|
130
|
+
dismissOnOutsideClick: dismissOnOutsideClick,
|
|
131
|
+
disableInitialFocus: disableInitialFocus,
|
|
132
|
+
disableReturnFocusToTrigger: disableReturnFocusToTrigger
|
|
133
|
+
}, content);
|
|
134
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, triggerElm, sheetElm);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// render as Popover
|
|
138
|
+
const contentElm = /*#__PURE__*/React.createElement(FocusTrapWrapper, {
|
|
104
139
|
focusTrapOptions: {
|
|
105
140
|
clickOutsideDeactivates: dismissOnOutsideClick && handleClickOutsideDeactivates,
|
|
106
141
|
// de-active focus trap on outside click
|
|
@@ -109,8 +144,9 @@ function BasePopover(_ref2) {
|
|
|
109
144
|
// de-activate focus trap on escape key
|
|
110
145
|
fallbackFocus: `#${tooltipId}`,
|
|
111
146
|
// set focus to tooltip content container if it has no focusable element
|
|
112
|
-
|
|
113
|
-
|
|
147
|
+
onPostDeactivate: () => {
|
|
148
|
+
const reason = isOutsideClickOnTrigger.current ? VisibilityChangeReason.triggerClick : VisibilityChangeReason.outsideClick;
|
|
149
|
+
toggleVisibility(false, reason);
|
|
114
150
|
},
|
|
115
151
|
preventScroll: true,
|
|
116
152
|
initialFocus: () => !disableInitialFocus,
|