@activecollab/components 2.0.444 → 2.0.446

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/cjs/components/Menu/Menu.js +43 -5
  2. package/dist/cjs/components/Menu/Menu.js.map +1 -1
  3. package/dist/cjs/components/Sheet/Sheet.js +11 -4
  4. package/dist/cjs/components/Sheet/Sheet.js.map +1 -1
  5. package/dist/cjs/components/Sheet/Styles.js +7 -5
  6. package/dist/cjs/components/Sheet/Styles.js.map +1 -1
  7. package/dist/cjs/presentation/whiteboard/canvasElements.js +15 -17
  8. package/dist/cjs/presentation/whiteboard/canvasElements.js.map +1 -1
  9. package/dist/cjs/presentation/whiteboard/projectElements.js +76 -16
  10. package/dist/cjs/presentation/whiteboard/projectElements.js.map +1 -1
  11. package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
  12. package/dist/esm/components/Menu/Menu.js +41 -5
  13. package/dist/esm/components/Menu/Menu.js.map +1 -1
  14. package/dist/esm/components/Sheet/Sheet.d.ts.map +1 -1
  15. package/dist/esm/components/Sheet/Sheet.js +12 -5
  16. package/dist/esm/components/Sheet/Sheet.js.map +1 -1
  17. package/dist/esm/components/Sheet/Styles.d.ts +2 -0
  18. package/dist/esm/components/Sheet/Styles.d.ts.map +1 -1
  19. package/dist/esm/components/Sheet/Styles.js +3 -1
  20. package/dist/esm/components/Sheet/Styles.js.map +1 -1
  21. package/dist/esm/presentation/whiteboard/canvasElements.d.ts.map +1 -1
  22. package/dist/esm/presentation/whiteboard/canvasElements.js +11 -9
  23. package/dist/esm/presentation/whiteboard/canvasElements.js.map +1 -1
  24. package/dist/esm/presentation/whiteboard/projectElements.d.ts +12 -3
  25. package/dist/esm/presentation/whiteboard/projectElements.d.ts.map +1 -1
  26. package/dist/esm/presentation/whiteboard/projectElements.js +76 -16
  27. package/dist/esm/presentation/whiteboard/projectElements.js.map +1 -1
  28. package/dist/index.js +59 -13
  29. package/dist/index.js.map +1 -1
  30. package/dist/index.min.js +1 -1
  31. package/dist/index.min.js.map +1 -1
  32. package/package.json +1 -1
@@ -62,6 +62,16 @@ var Menu = exports.Menu = function Menu(_ref) {
62
62
  setChildNode = _useState6[1];
63
63
  var elementRef = (0, _react.useRef)(null);
64
64
  var isOpenAtLeastOnce = (0, _react.useRef)(false);
65
+ var wasOpen = (0, _react.useRef)(open);
66
+ var focusBeforeOpen = (0, _react.useRef)(null);
67
+ var returnFocusTo = (0, _react.useRef)(null);
68
+ var popperRef = (0, _react.useRef)(null);
69
+
70
+ // Read on the render that opens the menu, before the focus lock moves the focus inside it.
71
+ if (open && !wasOpen.current && typeof document !== "undefined") {
72
+ focusBeforeOpen.current = document.activeElement;
73
+ }
74
+ wasOpen.current = open;
65
75
  (0, _react.useEffect)(function () {
66
76
  setOpen(defaultOpen);
67
77
  }, [defaultOpen]);
@@ -99,17 +109,41 @@ var Menu = exports.Menu = function Menu(_ref) {
99
109
  if (open) {
100
110
  isOpenAtLeastOnce.current = true;
101
111
  } else if (!open && isOpenAtLeastOnce.current) {
102
- var _elementRef$current;
103
- (_elementRef$current = elementRef.current) === null || _elementRef$current === void 0 || _elementRef$current.focus();
112
+ var previous = focusBeforeOpen.current;
113
+ var returnTo = previous instanceof HTMLElement && previous.isConnected ? previous : elementRef.current;
114
+ returnFocusTo.current = returnTo;
115
+ returnTo === null || returnTo === void 0 || returnTo.focus();
104
116
  isOpenAtLeastOnce.current = false;
105
117
  }
106
118
  }, [open]);
119
+
120
+ // A fading menu is already closed. Its content can still reach for the focus, and would take it away
121
+ // with it when it unmounts, so the focus goes straight back to where the menu returned it.
122
+ (0, _react.useEffect)(function () {
123
+ if (open || exited) {
124
+ return undefined;
125
+ }
126
+ var keepFocusOut = function keepFocusOut(event) {
127
+ var _popperRef$current;
128
+ if ((_popperRef$current = popperRef.current) !== null && _popperRef$current !== void 0 && _popperRef$current.contains(event.target)) {
129
+ var _returnFocusTo$curren;
130
+ (_returnFocusTo$curren = returnFocusTo.current) === null || _returnFocusTo$curren === void 0 || _returnFocusTo$curren.focus();
131
+ }
132
+ };
133
+ document.addEventListener("focusin", keepFocusOut, true);
134
+ return function () {
135
+ return document.removeEventListener("focusin", keepFocusOut, true);
136
+ };
137
+ }, [open, exited]);
107
138
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, target && /*#__PURE__*/_react.default.cloneElement(target, targetProps), open || !exited ? /*#__PURE__*/_react.default.createElement(_Window.Window, {
108
139
  onClose: handleClose,
109
140
  disableScrollLock: !handleScroll
110
- // A closing menu hands the focus back at once, it does not hold it for the length of the fade.
141
+ // The menu returns the focus itself at once, so a late returnFocus cannot undo a caller's move.
142
+ ,
143
+ disableFocusLock: disableFocusLock || !open
144
+ // A fading menu is already closed, so an escape pressed meanwhile belongs to the page behind it.
111
145
  ,
112
- disableFocusLock: disableFocusLock || !open,
146
+ disableCloseOnEsc: !open,
113
147
  style: {
114
148
  position: windowAbsolutelyPositioned ? "absolute" : "fixed"
115
149
  }
@@ -119,6 +153,7 @@ var Menu = exports.Menu = function Menu(_ref) {
119
153
  tabIndex: -1,
120
154
  disableBackgroundColor: true
121
155
  }) : null, /*#__PURE__*/_react.default.createElement(_Popper.Popper, {
156
+ ref: popperRef,
122
157
  anchorEl: childNode,
123
158
  open: childNode ? open : false,
124
159
  placement: position,
@@ -141,7 +176,10 @@ var Menu = exports.Menu = function Menu(_ref) {
141
176
  }, /*#__PURE__*/_react.default.createElement(_Styles.StyledMenu, {
142
177
  className: (0, _classnames.default)("c-simple-menu__paper", "c-simple-menu__".concat(mode), menuClassName, className),
143
178
  $mode: mode,
144
- onMouseDown: onMenuClick
179
+ onMouseDown: onMenuClick,
180
+ style: open ? undefined : {
181
+ pointerEvents: "none"
182
+ }
145
183
  }, /*#__PURE__*/_react.default.createElement(_context.MenuContextProvider, {
146
184
  value: {
147
185
  open,
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_context","_Styles","_useForkRef","_Overlay","_Popper","_Transitions","_Window","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","return","isArray","Menu","exports","_ref","children","_ref$disableFocusLock","disableFocusLock","onMenuClick","_ref$handleScroll","handleScroll","_ref$mode","mode","_ref$open","open","defaultOpen","onOpen","onClose","onBeforeClose","_ref$position","position","target","className","menuClassName","popperClassName","backgroundElementClass","_ref$windowAbsolutely","windowAbsolutelyPositioned","onPopperOpen","_useState","useState","_useState2","setOpen","_useState3","_useState4","exited","setExited","_useState5","_useState6","childNode","setChildNode","elementRef","useRef","isOpenAtLeastOnce","useEffect","handleRefRef","useForkRef","ref","undefined","handleRef","handleOpen","useCallback","event","_target$props","preventDefault","stopPropagation","props","onClick","handleClose","childProps","forceClose","targetProps","current","_elementRef$current","focus","createElement","Fragment","React","cloneElement","Window","disableScrollLock","style","Overlay","tabIndex","disableBackgroundColor","Popper","anchorEl","placement","afterWrite","transition","_ref2","transitionProps","Grow","in","onEnter","onExited","_transitionProps$onEx","StyledMenu","classnames","concat","$mode","onMouseDown","MenuContextProvider","displayName"],"sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import React, {\n useRef,\n FC,\n ReactNode,\n MouseEvent,\n useState,\n useCallback,\n useEffect,\n ReactElement,\n Ref,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\n\nimport { MenuContextProvider } from \"./context\";\nimport { StyledMenu } from \"./Styles\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Overlay } from \"../Overlay\";\nimport { Popper } from \"../Popper\";\nimport { Grow } from \"../Transitions\";\nimport { Window } from \"../Window\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\n// source: https://twitter.com/mattpocockuk/status/1671908303918473217/photo/1\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type MenuMode = \"normal\" | \"wider\" | \"tiny\" | \"widest\";\n\nexport interface IMenu {\n /** Menu content */\n children:\n | ReactNode\n | ((childProps: { forceClose: () => void }) => JSX.Element);\n /** On menu element click */\n onMenuClick?: (event: MouseEvent<HTMLElement>) => void;\n /** Handle scroll bar */\n handleScroll?: boolean;\n /** Disable Focus Lock */\n disableFocusLock?: boolean;\n /** Menu width mode */\n mode?: MenuMode;\n /** Should menu be open when it's mounted */\n open?: boolean;\n /** Callback triggered when modal has been opened */\n onOpen?: () => void;\n /** Callback triggered when modal has been closed */\n onClose?: () => void;\n /** Before close callback */\n onBeforeClose?: () => boolean;\n /** Position Menu */\n position?: Placement;\n /** Target element */\n target?: ElementWithRef<Element>;\n className?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Should Window be positioned absolutely */\n windowAbsolutelyPositioned?: boolean;\n /** Popper on open */\n onPopperOpen?: (...args) => void;\n}\n\nexport const Menu: FC<IMenu> = ({\n children,\n disableFocusLock = false,\n onMenuClick,\n handleScroll = true,\n mode = \"normal\",\n open: defaultOpen = false,\n onOpen,\n onClose,\n onBeforeClose,\n position = \"bottom-start\",\n target,\n className,\n menuClassName,\n popperClassName,\n backgroundElementClass,\n windowAbsolutelyPositioned = false,\n onPopperOpen,\n}) => {\n const [open, setOpen] = useState(defaultOpen);\n const [exited, setExited] = useState(!defaultOpen);\n const [childNode, setChildNode] = useState<Element | null>();\n const elementRef = useRef<HTMLElement | null>(null);\n const isOpenAtLeastOnce = useRef(false);\n\n useEffect(() => {\n setOpen(defaultOpen);\n }, [defaultOpen]);\n\n useEffect(() => {\n if (open) {\n setExited(false);\n }\n }, [open]);\n\n const handleRefRef = useForkRef(\n target ? target.ref : undefined,\n setChildNode\n );\n const handleRef = useForkRef(handleRefRef, elementRef);\n\n const handleOpen = useCallback(\n (\n event: Pick<MouseEvent<Element>, \"preventDefault\" | \"stopPropagation\">\n ) => {\n event?.preventDefault();\n event?.stopPropagation();\n setOpen(true);\n typeof onOpen === \"function\" && onOpen();\n typeof target?.props?.onClick === \"function\" &&\n target.props.onClick(event);\n },\n [onOpen, target?.props]\n );\n\n const handleClose = useCallback(() => {\n if (typeof onBeforeClose === \"function\" && !onBeforeClose()) {\n return;\n }\n setOpen(false);\n typeof onClose === \"function\" && onClose();\n }, [onClose, onBeforeClose]);\n\n const childProps = {\n forceClose: handleClose,\n };\n\n const targetProps = {\n open,\n ref: handleRef,\n onClick: handleOpen,\n };\n\n useEffect(() => {\n if (open) {\n isOpenAtLeastOnce.current = true;\n } else if (!open && isOpenAtLeastOnce.current) {\n elementRef.current?.focus();\n isOpenAtLeastOnce.current = false;\n }\n }, [open]);\n\n return (\n <>\n {target && React.cloneElement(target, targetProps)}\n {open || !exited ? (\n <Window\n onClose={handleClose}\n disableScrollLock={!handleScroll}\n // A closing menu hands the focus back at once, it does not hold it for the length of the fade.\n disableFocusLock={disableFocusLock || !open}\n style={{\n position: windowAbsolutelyPositioned ? \"absolute\" : \"fixed\",\n }}\n >\n {/* A closing menu must not swallow the click that lands while it fades out. */}\n {open ? (\n <Overlay\n className={backgroundElementClass}\n onClick={handleClose}\n tabIndex={-1}\n disableBackgroundColor\n />\n ) : null}\n <Popper\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={position}\n className={popperClassName}\n tabIndex={-1}\n afterWrite={onPopperOpen}\n transition\n >\n {({ placement, transitionProps }) => (\n <Grow\n placement={placement}\n in={transitionProps?.in}\n onEnter={transitionProps?.onEnter}\n onExited={() => {\n setExited(true);\n transitionProps?.onExited?.();\n }}\n >\n <StyledMenu\n className={classnames(\n \"c-simple-menu__paper\",\n `c-simple-menu__${mode}`,\n menuClassName,\n className\n )}\n $mode={mode}\n onMouseDown={onMenuClick}\n >\n <MenuContextProvider value={{ open, setOpen }}>\n {typeof children === \"function\"\n ? children(childProps)\n : children}\n </MenuContextProvider>\n </StyledMenu>\n </Grow>\n )}\n </Popper>\n </Window>\n ) : null}\n </>\n );\n};\n\nMenu.displayName = \"Menu\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Menu.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_context","_Styles","_useForkRef","_Overlay","_Popper","_Transitions","_Window","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","length","l","Symbol","iterator","u","next","done","push","value","return","isArray","Menu","exports","_ref","children","_ref$disableFocusLock","disableFocusLock","onMenuClick","_ref$handleScroll","handleScroll","_ref$mode","mode","_ref$open","open","defaultOpen","onOpen","onClose","onBeforeClose","_ref$position","position","target","className","menuClassName","popperClassName","backgroundElementClass","_ref$windowAbsolutely","windowAbsolutelyPositioned","onPopperOpen","_useState","useState","_useState2","setOpen","_useState3","_useState4","exited","setExited","_useState5","_useState6","childNode","setChildNode","elementRef","useRef","isOpenAtLeastOnce","wasOpen","focusBeforeOpen","returnFocusTo","popperRef","current","document","activeElement","useEffect","handleRefRef","useForkRef","ref","undefined","handleRef","handleOpen","useCallback","event","_target$props","preventDefault","stopPropagation","props","onClick","handleClose","childProps","forceClose","targetProps","previous","returnTo","HTMLElement","isConnected","focus","keepFocusOut","_popperRef$current","contains","_returnFocusTo$curren","addEventListener","removeEventListener","createElement","Fragment","React","cloneElement","Window","disableScrollLock","disableCloseOnEsc","style","Overlay","tabIndex","disableBackgroundColor","Popper","anchorEl","placement","afterWrite","transition","_ref2","transitionProps","Grow","in","onEnter","onExited","_transitionProps$onEx","StyledMenu","classnames","concat","$mode","onMouseDown","pointerEvents","MenuContextProvider","displayName"],"sources":["../../../../src/components/Menu/Menu.tsx"],"sourcesContent":["import React, {\n useRef,\n FC,\n ReactNode,\n MouseEvent,\n useState,\n useCallback,\n useEffect,\n ReactElement,\n Ref,\n} from \"react\";\n\nimport { Placement } from \"@popperjs/core\";\nimport classnames from \"classnames\";\n\nimport { MenuContextProvider } from \"./context\";\nimport { StyledMenu } from \"./Styles\";\nimport useForkRef from \"../../utils/useForkRef\";\nimport { Overlay } from \"../Overlay\";\nimport { Popper } from \"../Popper\";\nimport { Grow } from \"../Transitions\";\nimport { Window } from \"../Window\";\n\ninterface ElementWithRef<T> extends ReactElement {\n ref?: Ref<T>;\n}\n\n// source: https://twitter.com/mattpocockuk/status/1671908303918473217/photo/1\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type MenuMode = \"normal\" | \"wider\" | \"tiny\" | \"widest\";\n\nexport interface IMenu {\n /** Menu content */\n children:\n | ReactNode\n | ((childProps: { forceClose: () => void }) => JSX.Element);\n /** On menu element click */\n onMenuClick?: (event: MouseEvent<HTMLElement>) => void;\n /** Handle scroll bar */\n handleScroll?: boolean;\n /** Disable Focus Lock */\n disableFocusLock?: boolean;\n /** Menu width mode */\n mode?: MenuMode;\n /** Should menu be open when it's mounted */\n open?: boolean;\n /** Callback triggered when modal has been opened */\n onOpen?: () => void;\n /** Callback triggered when modal has been closed */\n onClose?: () => void;\n /** Before close callback */\n onBeforeClose?: () => boolean;\n /** Position Menu */\n position?: Placement;\n /** Target element */\n target?: ElementWithRef<Element>;\n className?: string;\n /** Menu classes */\n menuClassName?: string;\n /** Popper class name*/\n popperClassName?: string;\n /** Background style for clickable element after the menu is open (opacity, color, etc...) */\n backgroundElementClass?: string;\n /** Should Window be positioned absolutely */\n windowAbsolutelyPositioned?: boolean;\n /** Popper on open */\n onPopperOpen?: (...args) => void;\n}\n\nexport const Menu: FC<IMenu> = ({\n children,\n disableFocusLock = false,\n onMenuClick,\n handleScroll = true,\n mode = \"normal\",\n open: defaultOpen = false,\n onOpen,\n onClose,\n onBeforeClose,\n position = \"bottom-start\",\n target,\n className,\n menuClassName,\n popperClassName,\n backgroundElementClass,\n windowAbsolutelyPositioned = false,\n onPopperOpen,\n}) => {\n const [open, setOpen] = useState(defaultOpen);\n const [exited, setExited] = useState(!defaultOpen);\n const [childNode, setChildNode] = useState<Element | null>();\n const elementRef = useRef<HTMLElement | null>(null);\n const isOpenAtLeastOnce = useRef(false);\n const wasOpen = useRef(open);\n const focusBeforeOpen = useRef<Element | null>(null);\n const returnFocusTo = useRef<HTMLElement | null>(null);\n const popperRef = useRef<HTMLDivElement | null>(null);\n\n // Read on the render that opens the menu, before the focus lock moves the focus inside it.\n if (open && !wasOpen.current && typeof document !== \"undefined\") {\n focusBeforeOpen.current = document.activeElement;\n }\n wasOpen.current = open;\n\n useEffect(() => {\n setOpen(defaultOpen);\n }, [defaultOpen]);\n\n useEffect(() => {\n if (open) {\n setExited(false);\n }\n }, [open]);\n\n const handleRefRef = useForkRef(\n target ? target.ref : undefined,\n setChildNode\n );\n const handleRef = useForkRef(handleRefRef, elementRef);\n\n const handleOpen = useCallback(\n (\n event: Pick<MouseEvent<Element>, \"preventDefault\" | \"stopPropagation\">\n ) => {\n event?.preventDefault();\n event?.stopPropagation();\n setOpen(true);\n typeof onOpen === \"function\" && onOpen();\n typeof target?.props?.onClick === \"function\" &&\n target.props.onClick(event);\n },\n [onOpen, target?.props]\n );\n\n const handleClose = useCallback(() => {\n if (typeof onBeforeClose === \"function\" && !onBeforeClose()) {\n return;\n }\n setOpen(false);\n typeof onClose === \"function\" && onClose();\n }, [onClose, onBeforeClose]);\n\n const childProps = {\n forceClose: handleClose,\n };\n\n const targetProps = {\n open,\n ref: handleRef,\n onClick: handleOpen,\n };\n\n useEffect(() => {\n if (open) {\n isOpenAtLeastOnce.current = true;\n } else if (!open && isOpenAtLeastOnce.current) {\n const previous = focusBeforeOpen.current;\n const returnTo =\n previous instanceof HTMLElement && previous.isConnected\n ? previous\n : elementRef.current;\n\n returnFocusTo.current = returnTo;\n returnTo?.focus();\n isOpenAtLeastOnce.current = false;\n }\n }, [open]);\n\n // A fading menu is already closed. Its content can still reach for the focus, and would take it away\n // with it when it unmounts, so the focus goes straight back to where the menu returned it.\n useEffect(() => {\n if (open || exited) {\n return undefined;\n }\n\n const keepFocusOut = (event: FocusEvent) => {\n if (popperRef.current?.contains(event.target as Node)) {\n returnFocusTo.current?.focus();\n }\n };\n\n document.addEventListener(\"focusin\", keepFocusOut, true);\n\n return () => document.removeEventListener(\"focusin\", keepFocusOut, true);\n }, [open, exited]);\n\n return (\n <>\n {target && React.cloneElement(target, targetProps)}\n {open || !exited ? (\n <Window\n onClose={handleClose}\n disableScrollLock={!handleScroll}\n // The menu returns the focus itself at once, so a late returnFocus cannot undo a caller's move.\n disableFocusLock={disableFocusLock || !open}\n // A fading menu is already closed, so an escape pressed meanwhile belongs to the page behind it.\n disableCloseOnEsc={!open}\n style={{\n position: windowAbsolutelyPositioned ? \"absolute\" : \"fixed\",\n }}\n >\n {/* A closing menu must not swallow the click that lands while it fades out. */}\n {open ? (\n <Overlay\n className={backgroundElementClass}\n onClick={handleClose}\n tabIndex={-1}\n disableBackgroundColor\n />\n ) : null}\n <Popper\n ref={popperRef}\n anchorEl={childNode}\n open={childNode ? open : false}\n placement={position}\n className={popperClassName}\n tabIndex={-1}\n afterWrite={onPopperOpen}\n transition\n >\n {({ placement, transitionProps }) => (\n <Grow\n placement={placement}\n in={transitionProps?.in}\n onEnter={transitionProps?.onEnter}\n onExited={() => {\n setExited(true);\n transitionProps?.onExited?.();\n }}\n >\n <StyledMenu\n className={classnames(\n \"c-simple-menu__paper\",\n `c-simple-menu__${mode}`,\n menuClassName,\n className\n )}\n $mode={mode}\n onMouseDown={onMenuClick}\n style={open ? undefined : { pointerEvents: \"none\" }}\n >\n <MenuContextProvider value={{ open, setOpen }}>\n {typeof children === \"function\"\n ? children(childProps)\n : children}\n </MenuContextProvider>\n </StyledMenu>\n </Grow>\n )}\n </Popper>\n </Window>\n ) : null}\n </>\n );\n};\n\nMenu.displayName = \"Menu\";\n"],"mappings":"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","ignoreList":[]}
@@ -10,6 +10,7 @@ var _Styles = require("./Styles");
10
10
  var _IconButton = require("../IconButton");
11
11
  var _Overlay = require("../Overlay");
12
12
  var _Tooltip = require("../Tooltip");
13
+ var _Transitions = require("../Transitions");
13
14
  var _Window = require("../Window");
14
15
  var _excluded = ["children", "onClose", "controls", "open", "animation", "position", "mode", "disableFocusLock", "disableScrollLock", "disableBackgroundColor", "bodyStyle", "bodyClassName", "disableBackgroundClick"];
15
16
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
@@ -86,10 +87,16 @@ var Sheet = exports.Sheet = /*#__PURE__*/(0, _react.forwardRef)(function (_ref,
86
87
  onClose: handleClose,
87
88
  disableFocusLock: disableFocusLock,
88
89
  disableScrollLock: disableScrollLock
89
- }), open && /*#__PURE__*/_react.default.createElement(_Overlay.Overlay, {
90
+ }), /*#__PURE__*/_react.default.createElement(_Transitions.Fade, {
91
+ in: open,
92
+ timeout: open ? _Styles.SHEET_ENTER_MS : _Styles.SHEET_EXIT_MS
93
+ }, /*#__PURE__*/_react.default.createElement(_Overlay.Overlay, {
90
94
  onClick: handleBackgroundClick,
91
- disableBackgroundColor: disableBackgroundColor
92
- }), /*#__PURE__*/_react.default.createElement(_Styles.StyledSheetWrapper, {
95
+ disableBackgroundColor: disableBackgroundColor,
96
+ style: {
97
+ pointerEvents: open ? undefined : "none"
98
+ }
99
+ })), /*#__PURE__*/_react.default.createElement(_Styles.StyledSheetWrapper, {
93
100
  className: (0, _classnames.default)("c-sheet__wrapper", bodyClassName),
94
101
  style: bodyStyle,
95
102
  $position: position,
@@ -97,7 +104,7 @@ var Sheet = exports.Sheet = /*#__PURE__*/(0, _react.forwardRef)(function (_ref,
97
104
  }, /*#__PURE__*/_react.default.createElement(_Styles.StyledCssTransition, {
98
105
  appear: true,
99
106
  in: open,
100
- timeout: 400,
107
+ timeout: _Styles.SHEET_ENTER_MS,
101
108
  classNames: "c-sheet__animation",
102
109
  $direction: animation,
103
110
  onEnter: handleEnter,
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_IconButton","_Overlay","_Tooltip","_Window","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","Sheet","exports","forwardRef","_ref","ref","children","onClose","_ref$controls","controls","_ref$open","open","defaultOpen","_ref$animation","animation","_ref$position","position","_ref$mode","mode","_ref$disableFocusLock","disableFocusLock","_ref$disableScrollLoc","disableScrollLock","_ref$disableBackgroun","disableBackgroundColor","bodyStyle","bodyClassName","_ref$disableBackgroun2","disableBackgroundClick","rest","_useState","useState","_useState2","setOpen","_useState3","_useState4","exited","setExited","useEffect","handleEnter","useCallback","handleExited","handleClose","handleBackgroundClick","event","preventDefault","useImperativeHandle","close","createElement","Window","Overlay","onClick","StyledSheetWrapper","className","classnames","style","$position","$mode","StyledCssTransition","appear","in","timeout","classNames","$direction","onEnter","onExited","StyledSheetSurface","StyledSheetIcons","map","_ref2","index","IconComponent","icon","tooltip","disabled","Tooltip","title","disable","key","concat","StyledAnimatedSpan","$disabled","StyledSheetWrapperPaper","paperClass","StyledHeader","StyledIconsWrapperSmall","_ref3","IconButton","variant","StyledListSeparator","displayName"],"sources":["../../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n forwardRef,\n HTMLAttributes,\n useState,\n CSSProperties,\n MouseEvent,\n useImperativeHandle,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport {\n StyledAnimatedSpan,\n StyledCssTransition,\n StyledHeader,\n StyledIconsWrapperSmall,\n StyledListSeparator,\n StyledSheetIcons,\n StyledSheetWrapper,\n StyledSheetSurface,\n StyledSheetWrapperPaper,\n} from \"./Styles\";\nimport { IconButton } from \"../IconButton\";\nimport { Overlay } from \"../Overlay\";\nimport { Tooltip } from \"../Tooltip\";\nimport { Window } from \"../Window\";\n\ninterface ControlProps {\n onClick: () => void;\n icon: React.ReactElement;\n tooltip: string;\n disabled: boolean;\n className: string;\n}\n\ninterface ISheet {\n onClose?: () => void;\n controls?: ControlProps[];\n open?: boolean;\n animation?: \"top\" | \"bottom\" | \"left\" | \"right\";\n position?: \"center\" | \"left\" | \"right\";\n mode?: \"normal\" | \"stretch\";\n disableFocusLock?: boolean;\n disableScrollLock?: boolean;\n disableBackgroundColor?: boolean;\n bodyStyle?: CSSProperties;\n bodyClassName?: string;\n disableBackgroundClick?: boolean;\n}\n\nexport interface SheetMethods {\n close: () => void;\n}\n\ntype SheetProps = ISheet & HTMLAttributes<HTMLDivElement>;\n\nexport const Sheet = forwardRef<SheetMethods, SheetProps>(\n (\n {\n children,\n onClose,\n controls = [],\n open: defaultOpen = false,\n animation = \"top\",\n position = \"center\",\n mode = \"normal\",\n disableFocusLock = false,\n disableScrollLock = false,\n disableBackgroundColor = false,\n bodyStyle,\n bodyClassName,\n disableBackgroundClick = false,\n ...rest\n },\n ref\n ) => {\n const [open, setOpen] = useState(defaultOpen);\n const [exited, setExited] = useState(true);\n\n useEffect(() => {\n setOpen(defaultOpen);\n }, [defaultOpen]);\n\n const handleEnter = useCallback(() => {\n setExited(false);\n }, []);\n\n const handleExited = useCallback(() => {\n setExited(true);\n onClose?.();\n }, [onClose]);\n\n const handleClose = useCallback(() => {\n setOpen(false);\n }, []);\n\n const handleBackgroundClick = useCallback(\n (event: MouseEvent<HTMLDivElement>) => {\n if (!disableBackgroundClick) {\n event.preventDefault();\n handleClose();\n }\n },\n [disableBackgroundClick, handleClose]\n );\n\n useImperativeHandle(ref, () => ({\n close: handleClose,\n }));\n\n if (!open && exited) {\n return null;\n }\n\n return (\n <Window\n {...rest}\n onClose={handleClose}\n disableFocusLock={disableFocusLock}\n disableScrollLock={disableScrollLock}\n >\n {open && (\n <Overlay\n onClick={handleBackgroundClick}\n disableBackgroundColor={disableBackgroundColor}\n />\n )}\n <StyledSheetWrapper\n className={classnames(\"c-sheet__wrapper\", bodyClassName)}\n style={bodyStyle}\n $position={position}\n $mode={mode}\n >\n <StyledCssTransition\n appear\n in={open}\n timeout={400}\n classNames=\"c-sheet__animation\"\n $direction={animation}\n onEnter={handleEnter}\n onExited={handleExited}\n >\n <StyledSheetSurface>\n {controls.length > 0 && (\n <StyledSheetIcons>\n {controls.map(\n (\n {\n icon: IconComponent,\n tooltip,\n onClick,\n disabled,\n className,\n },\n index\n ) => (\n <Tooltip\n title={tooltip}\n disable={!tooltip || disabled}\n key={`c-sheet-control-${index}`}\n >\n <StyledAnimatedSpan\n onClick={onClick}\n $disabled={disabled}\n className={className}\n >\n {IconComponent}\n </StyledAnimatedSpan>\n </Tooltip>\n )\n )}\n </StyledSheetIcons>\n )}\n <StyledSheetWrapperPaper paperClass=\"c-sheet__wrapper__paper\">\n {controls.length > 0 && (\n <StyledHeader>\n <StyledIconsWrapperSmall>\n {controls.map(\n (\n {\n icon: IconComponent,\n tooltip,\n onClick,\n disabled,\n className,\n },\n index\n ) => (\n <Tooltip\n title={tooltip}\n disable={!tooltip || disabled}\n key={index}\n >\n <IconButton\n onClick={onClick}\n disabled={disabled}\n className={className}\n variant=\"text gray\"\n >\n {IconComponent}\n </IconButton>\n </Tooltip>\n )\n )}\n </StyledIconsWrapperSmall>\n <StyledListSeparator />\n </StyledHeader>\n )}\n {children}\n </StyledSheetWrapperPaper>\n </StyledSheetSurface>\n </StyledCssTransition>\n </StyledSheetWrapper>\n </Window>\n );\n }\n);\n\nSheet.displayName = \"Sheet\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Sheet.js","names":["_react","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_Styles","_IconButton","_Overlay","_Tooltip","_Transitions","_Window","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","l","Symbol","iterator","u","next","done","push","value","return","isArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","Sheet","exports","forwardRef","_ref","ref","children","onClose","_ref$controls","controls","_ref$open","open","defaultOpen","_ref$animation","animation","_ref$position","position","_ref$mode","mode","_ref$disableFocusLock","disableFocusLock","_ref$disableScrollLoc","disableScrollLock","_ref$disableBackgroun","disableBackgroundColor","bodyStyle","bodyClassName","_ref$disableBackgroun2","disableBackgroundClick","rest","_useState","useState","_useState2","setOpen","_useState3","_useState4","exited","setExited","useEffect","handleEnter","useCallback","handleExited","handleClose","handleBackgroundClick","event","preventDefault","useImperativeHandle","close","createElement","Window","Fade","in","timeout","SHEET_ENTER_MS","SHEET_EXIT_MS","Overlay","onClick","style","pointerEvents","undefined","StyledSheetWrapper","className","classnames","$position","$mode","StyledCssTransition","appear","classNames","$direction","onEnter","onExited","StyledSheetSurface","StyledSheetIcons","map","_ref2","index","IconComponent","icon","tooltip","disabled","Tooltip","title","disable","key","concat","StyledAnimatedSpan","$disabled","StyledSheetWrapperPaper","paperClass","StyledHeader","StyledIconsWrapperSmall","_ref3","IconButton","variant","StyledListSeparator","displayName"],"sources":["../../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n forwardRef,\n HTMLAttributes,\n useState,\n CSSProperties,\n MouseEvent,\n useImperativeHandle,\n} from \"react\";\n\nimport classnames from \"classnames\";\n\nimport {\n StyledAnimatedSpan,\n StyledCssTransition,\n StyledHeader,\n StyledIconsWrapperSmall,\n StyledListSeparator,\n StyledSheetIcons,\n StyledSheetWrapper,\n SHEET_ENTER_MS,\n SHEET_EXIT_MS,\n StyledSheetSurface,\n StyledSheetWrapperPaper,\n} from \"./Styles\";\nimport { IconButton } from \"../IconButton\";\nimport { Overlay } from \"../Overlay\";\nimport { Tooltip } from \"../Tooltip\";\nimport { Fade } from \"../Transitions\";\nimport { Window } from \"../Window\";\n\ninterface ControlProps {\n onClick: () => void;\n icon: React.ReactElement;\n tooltip: string;\n disabled: boolean;\n className: string;\n}\n\ninterface ISheet {\n onClose?: () => void;\n controls?: ControlProps[];\n open?: boolean;\n animation?: \"top\" | \"bottom\" | \"left\" | \"right\";\n position?: \"center\" | \"left\" | \"right\";\n mode?: \"normal\" | \"stretch\";\n disableFocusLock?: boolean;\n disableScrollLock?: boolean;\n disableBackgroundColor?: boolean;\n bodyStyle?: CSSProperties;\n bodyClassName?: string;\n disableBackgroundClick?: boolean;\n}\n\nexport interface SheetMethods {\n close: () => void;\n}\n\ntype SheetProps = ISheet & HTMLAttributes<HTMLDivElement>;\n\nexport const Sheet = forwardRef<SheetMethods, SheetProps>(\n (\n {\n children,\n onClose,\n controls = [],\n open: defaultOpen = false,\n animation = \"top\",\n position = \"center\",\n mode = \"normal\",\n disableFocusLock = false,\n disableScrollLock = false,\n disableBackgroundColor = false,\n bodyStyle,\n bodyClassName,\n disableBackgroundClick = false,\n ...rest\n },\n ref\n ) => {\n const [open, setOpen] = useState(defaultOpen);\n const [exited, setExited] = useState(true);\n\n useEffect(() => {\n setOpen(defaultOpen);\n }, [defaultOpen]);\n\n const handleEnter = useCallback(() => {\n setExited(false);\n }, []);\n\n const handleExited = useCallback(() => {\n setExited(true);\n onClose?.();\n }, [onClose]);\n\n const handleClose = useCallback(() => {\n setOpen(false);\n }, []);\n\n const handleBackgroundClick = useCallback(\n (event: MouseEvent<HTMLDivElement>) => {\n if (!disableBackgroundClick) {\n event.preventDefault();\n handleClose();\n }\n },\n [disableBackgroundClick, handleClose]\n );\n\n useImperativeHandle(ref, () => ({\n close: handleClose,\n }));\n\n if (!open && exited) {\n return null;\n }\n\n return (\n <Window\n {...rest}\n onClose={handleClose}\n disableFocusLock={disableFocusLock}\n disableScrollLock={disableScrollLock}\n >\n <Fade in={open} timeout={open ? SHEET_ENTER_MS : SHEET_EXIT_MS}>\n <Overlay\n onClick={handleBackgroundClick}\n disableBackgroundColor={disableBackgroundColor}\n style={{ pointerEvents: open ? undefined : \"none\" }}\n />\n </Fade>\n <StyledSheetWrapper\n className={classnames(\"c-sheet__wrapper\", bodyClassName)}\n style={bodyStyle}\n $position={position}\n $mode={mode}\n >\n <StyledCssTransition\n appear\n in={open}\n timeout={SHEET_ENTER_MS}\n classNames=\"c-sheet__animation\"\n $direction={animation}\n onEnter={handleEnter}\n onExited={handleExited}\n >\n <StyledSheetSurface>\n {controls.length > 0 && (\n <StyledSheetIcons>\n {controls.map(\n (\n {\n icon: IconComponent,\n tooltip,\n onClick,\n disabled,\n className,\n },\n index\n ) => (\n <Tooltip\n title={tooltip}\n disable={!tooltip || disabled}\n key={`c-sheet-control-${index}`}\n >\n <StyledAnimatedSpan\n onClick={onClick}\n $disabled={disabled}\n className={className}\n >\n {IconComponent}\n </StyledAnimatedSpan>\n </Tooltip>\n )\n )}\n </StyledSheetIcons>\n )}\n <StyledSheetWrapperPaper paperClass=\"c-sheet__wrapper__paper\">\n {controls.length > 0 && (\n <StyledHeader>\n <StyledIconsWrapperSmall>\n {controls.map(\n (\n {\n icon: IconComponent,\n tooltip,\n onClick,\n disabled,\n className,\n },\n index\n ) => (\n <Tooltip\n title={tooltip}\n disable={!tooltip || disabled}\n key={index}\n >\n <IconButton\n onClick={onClick}\n disabled={disabled}\n className={className}\n variant=\"text gray\"\n >\n {IconComponent}\n </IconButton>\n </Tooltip>\n )\n )}\n </StyledIconsWrapperSmall>\n <StyledListSeparator />\n </StyledHeader>\n )}\n {children}\n </StyledSheetWrapperPaper>\n </StyledSheetSurface>\n </StyledCssTransition>\n </StyledSheetWrapper>\n </Window>\n );\n }\n);\n\nSheet.displayName = \"Sheet\";\n"],"mappings":"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","ignoreList":[]}
@@ -3,13 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.StyledSheetWrapperPaper = exports.StyledSheetWrapper = exports.StyledSheetSurface = exports.StyledSheetIcons = exports.StyledListSeparator = exports.StyledIconsWrapperSmall = exports.StyledHeader = exports.StyledCssTransition = exports.StyledAnimatedSpan = void 0;
6
+ exports.StyledSheetWrapperPaper = exports.StyledSheetWrapper = exports.StyledSheetSurface = exports.StyledSheetIcons = exports.StyledListSeparator = exports.StyledIconsWrapperSmall = exports.StyledHeader = exports.StyledCssTransition = exports.StyledAnimatedSpan = exports.SHEET_EXIT_MS = exports.SHEET_ENTER_MS = void 0;
7
7
  var _reactTransitionGroup = require("react-transition-group");
8
8
  var _styledComponents = _interopRequireWildcard(require("styled-components"));
9
9
  var _BoxSizingStyle = require("../BoxSizingStyle");
10
10
  var _FontStyle = require("../FontStyle");
11
11
  var _List = require("../List");
12
12
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
13
+ var SHEET_ENTER_MS = exports.SHEET_ENTER_MS = 400;
14
+ var SHEET_EXIT_MS = exports.SHEET_EXIT_MS = 200;
13
15
  var StyledSheetIcons = exports.StyledSheetIcons = _styledComponents.default.div.withConfig({
14
16
  displayName: "Styles__StyledSheetIcons",
15
17
  componentId: "sc-144eyxd-0"
@@ -70,13 +72,13 @@ var StyledCssTransition = exports.StyledCssTransition = (0, _styledComponents.de
70
72
  displayName: "Styles__StyledCssTransition",
71
73
  componentId: "sc-144eyxd-5"
72
74
  })(["", " ", " ", " ", ""], function (props) {
73
- return props.$direction === "top" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateY(-100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateY(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-appear{opacity:0;transform:translateY(-100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateY(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateY(-100%);transition:opacity 200ms,transform 200ms;}"]);
75
+ return props.$direction === "top" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateY(-100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateY(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-appear{opacity:0;transform:translateY(-100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateY(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateY(-100%);transition:opacity ", "ms,transform ", "ms;}"], SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_EXIT_MS, SHEET_EXIT_MS);
74
76
  }, function (props) {
75
- return props.$direction === "bottom" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateY(100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateY(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-appear{opacity:0;transform:translateY(100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateY(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateY(100%);transition:opacity 200ms,transform 200ms;}"]);
77
+ return props.$direction === "bottom" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateY(100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateY(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-appear{opacity:0;transform:translateY(100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateY(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateY(100%);transition:opacity ", "ms,transform ", "ms;}"], SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_EXIT_MS, SHEET_EXIT_MS);
76
78
  }, function (props) {
77
- return props.$direction === "left" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateX(-100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateX(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-appear{opacity:0;transform:translateX(-100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateX(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateX(-100%);transition:opacity 200ms,transform 200ms;}"]);
79
+ return props.$direction === "left" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateX(-100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateX(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-appear{opacity:0;transform:translateX(-100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateX(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateX(-100%);transition:opacity ", "ms,transform ", "ms;}"], SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_EXIT_MS, SHEET_EXIT_MS);
78
80
  }, function (props) {
79
- return props.$direction === "right" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateX(100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateX(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-appear{opacity:0;transform:translateX(100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateX(0);transition:opacity 400ms,transform 400ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateX(100%);transition:opacity 200ms,transform 200ms;}"]);
81
+ return props.$direction === "right" && (0, _styledComponents.css)(["&.c-sheet__animation-enter{opacity:0;transform:translateX(100%);}&.c-sheet__animation-enter-active{opacity:1;transform:translateX(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-appear{opacity:0;transform:translateX(100%);}&.c-sheet__animation-appear-active{opacity:1;transform:translateX(0);transition:opacity ", "ms,transform ", "ms;}&.c-sheet__animation-exit{opacity:1;}&.c-sheet__animation-exit-active{opacity:0;transform:translateX(100%);transition:opacity ", "ms,transform ", "ms;}"], SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_ENTER_MS, SHEET_EXIT_MS, SHEET_EXIT_MS);
80
82
  });
81
83
  StyledCssTransition.displayName = "StyledCssTransition";
82
84
  var StyledListSeparator = exports.StyledListSeparator = (0, _styledComponents.default)(_List.ListSeparator).withConfig({
@@ -1 +1 @@
1
- {"version":3,"file":"Styles.js","names":["_reactTransitionGroup","require","_styledComponents","_interopRequireWildcard","_BoxSizingStyle","_FontStyle","_List","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","StyledSheetIcons","exports","styled","div","withConfig","displayName","componentId","StyledSheetWrapper","BoxSizingStyle","FontStyle","props","$mode","css","$position","StyledSheetSurface","StyledSheetWrapperPaper","attrs","className","paperClass","StyledAnimatedSpan","span","$disabled","StyledCssTransition","CSSTransition","$direction","StyledListSeparator","ListSeparator","StyledIconsWrapperSmall","StyledHeader"],"sources":["../../../../src/components/Sheet/Styles.ts"],"sourcesContent":["import { CSSTransition } from \"react-transition-group\";\n\nimport styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { FontStyle } from \"../FontStyle\";\nimport { ListSeparator } from \"../List\";\n\nexport const StyledSheetIcons = styled.div`\n display: flex;\n height: 0;\n position: relative;\n\n span {\n position: relative;\n background-color: var(--page-paper-main);\n box-shadow: var(--shadow-secondary);\n cursor: pointer;\n border-radius: 100%;\n width: 40px;\n height: 40px;\n display: flex;\n justify-content: center;\n align-items: center;\n & > * {\n height: 40px;\n width: 40px;\n padding: 8px;\n fill: var(--color-theme-600);\n }\n }\n\n @media (max-width: 640px) {\n display: none;\n }\n`;\n\nStyledSheetIcons.displayName = \"StyledSheetIcons\";\n\ninterface IStyledSheetWrapper {\n $position?: \"center\" | \"left\" | \"right\";\n $mode?: \"normal\" | \"stretch\";\n}\n\nexport const StyledSheetWrapper = styled.div<IStyledSheetWrapper>`\n ${BoxSizingStyle}\n ${FontStyle}\n\n position: relative;\n max-width: 95vw;\n display: flex;\n flex-direction: row;\n\n ${(props) =>\n props.$mode === \"stretch\"\n ? css`\n margin-top: 8px;\n height: calc(100vh - 16px);\n width: calc(100vw - 100px);\n max-width: 1000px;\n ${StyledSheetIcons} {\n flex-direction: column;\n width: 0;\n height: calc(100vh - 32px);\n & > * {\n margin-bottom: 8px;\n }\n span {\n top: 8px;\n }\n }\n `\n : css`\n max-height: calc(100vh - 156px);\n margin-top: 126px;\n margin-bottom: 30px;\n width: 540px;\n flex-direction: column;\n\n ${StyledSheetIcons} {\n flex-direction: row-reverse;\n & > * {\n margin-left: 8px;\n }\n span {\n top: -48px;\n right: 8px;\n }\n }\n `}\n\n ${(props) =>\n props.$mode === \"stretch\" &&\n css`\n @media (max-width: 640px) {\n width: 100%;\n height: 100%;\n }\n `}\n\n ${(props) =>\n props.$position === \"center\" &&\n css`\n ${tw`tw-mx-auto`}\n `}\n\n ${(props) =>\n props.$position === \"left\" &&\n css`\n ${tw`tw-ml-2 tw-mr-auto`}\n `}\n\n ${(props) =>\n props.$position === \"right\" &&\n css`\n ${tw`tw-mr-2 tw-ml-auto`}\n `}\n\n ${(props) =>\n props.$mode === \"stretch\" &&\n props.$position !== \"left\" &&\n css`\n ${StyledSheetIcons} {\n span {\n right: 48px;\n }\n }\n `}\n\n ${(props) =>\n props.$mode === \"stretch\" &&\n props.$position === \"left\" &&\n css`\n flex-direction: row-reverse;\n\n ${StyledSheetIcons} {\n span {\n right: -8px;\n }\n }\n `}\n`;\n\nStyledSheetWrapper.displayName = \"StyledSheetWrapper\";\n\ninterface IStyledSheetWrapperPaper {\n paperClass?: string;\n}\n\nexport const StyledSheetSurface = styled.div`\n display: flex;\n flex-direction: inherit;\n flex: 1 1 auto;\n min-width: 0;\n min-height: 0;\n`;\n\nStyledSheetSurface.displayName = \"StyledSheetSurface\";\n\nexport const StyledSheetWrapperPaper = styled.div.attrs<IStyledSheetWrapperPaper>(\n (props) => ({\n className: props.paperClass,\n })\n)<IStyledSheetWrapperPaper>`\n background-color: var(--page-paper-main);\n color: var(--color-theme-900);\n box-shadow: var(--shadow-primary);\n border-radius: 6px;\n overflow: auto;\n animation: 0.3s linear ease-out;\n /* Scrolling here must not dirty the blurred overlays below, which already clip to this box. */\n transform: translateZ(0);\n contain: paint;\n /* A scroll that runs off the end must stop here. Chained to the page, it moves what the blur samples. */\n overscroll-behavior: contain;\n\n ${tw`tw-flex-auto`}\n`;\n\nStyledSheetWrapperPaper.displayName = \"StyledSheetWrapperPaper\";\n\ninterface IStyledAnimatedSpan {\n $disabled?: boolean;\n}\n\nexport const StyledAnimatedSpan = styled.span<IStyledAnimatedSpan>`\n &:hover svg {\n fill: var(--color-primary);\n }\n\n ${(props) =>\n props.$disabled &&\n css`\n pointer-events: none;\n\n svg {\n opacity: 0.5;\n }\n `}\n`;\n\nStyledAnimatedSpan.displayName = \"StyledAnimatedSpan\";\n\nexport const StyledCssTransition = styled(CSSTransition)<{\n $direction: string;\n}>`\n ${(props) =>\n props.$direction === \"top\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateY(-100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateY(-100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateY(-100%);\n transition: opacity 200ms, transform 200ms;\n }\n `}\n\n ${(props) =>\n props.$direction === \"bottom\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateY(100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateY(100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateY(100%);\n transition: opacity 200ms, transform 200ms;\n }\n `}\n\n ${(props) =>\n props.$direction === \"left\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateX(-100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateX(-100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateX(-100%);\n transition: opacity 200ms, transform 200ms;\n }\n `}\n\n ${(props) =>\n props.$direction === \"right\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateX(100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateX(100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity 400ms, transform 400ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateX(100%);\n transition: opacity 200ms, transform 200ms;\n }\n `}\n`;\n\nStyledCssTransition.displayName = \"StyledCssTransition\";\n\nexport const StyledListSeparator = styled(ListSeparator)`\n margin: 0;\n`;\n\nStyledListSeparator.displayName = \"StyledListSeparator\";\n\nexport const StyledIconsWrapperSmall = styled.div`\n height: 40px;\n display: flex;\n gap: 8px;\n padding-left: 16px;\n padding-right: 16px;\n align-items: center;\n place-content: end;\n flex-direction: row-reverse;\n`;\n\nStyledIconsWrapperSmall.displayName = \"StyledIconsWrapperSmall\";\n\nexport const StyledHeader = styled.div`\n @media (min-width: 640px) {\n display: none;\n }\n`;\n\nStyledHeader.displayName = \"StyledHeader\";\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Styles.js","names":["_reactTransitionGroup","require","_styledComponents","_interopRequireWildcard","_BoxSizingStyle","_FontStyle","_List","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","SHEET_ENTER_MS","exports","SHEET_EXIT_MS","StyledSheetIcons","styled","div","withConfig","displayName","componentId","StyledSheetWrapper","BoxSizingStyle","FontStyle","props","$mode","css","$position","StyledSheetSurface","StyledSheetWrapperPaper","attrs","className","paperClass","StyledAnimatedSpan","span","$disabled","StyledCssTransition","CSSTransition","$direction","StyledListSeparator","ListSeparator","StyledIconsWrapperSmall","StyledHeader"],"sources":["../../../../src/components/Sheet/Styles.ts"],"sourcesContent":["import { CSSTransition } from \"react-transition-group\";\n\nimport styled, { css } from \"styled-components\";\nimport tw from \"twin.macro\";\n\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { FontStyle } from \"../FontStyle\";\nimport { ListSeparator } from \"../List\";\n\nexport const SHEET_ENTER_MS = 400;\nexport const SHEET_EXIT_MS = 200;\n\nexport const StyledSheetIcons = styled.div`\n display: flex;\n height: 0;\n position: relative;\n\n span {\n position: relative;\n background-color: var(--page-paper-main);\n box-shadow: var(--shadow-secondary);\n cursor: pointer;\n border-radius: 100%;\n width: 40px;\n height: 40px;\n display: flex;\n justify-content: center;\n align-items: center;\n & > * {\n height: 40px;\n width: 40px;\n padding: 8px;\n fill: var(--color-theme-600);\n }\n }\n\n @media (max-width: 640px) {\n display: none;\n }\n`;\n\nStyledSheetIcons.displayName = \"StyledSheetIcons\";\n\ninterface IStyledSheetWrapper {\n $position?: \"center\" | \"left\" | \"right\";\n $mode?: \"normal\" | \"stretch\";\n}\n\nexport const StyledSheetWrapper = styled.div<IStyledSheetWrapper>`\n ${BoxSizingStyle}\n ${FontStyle}\n\n position: relative;\n max-width: 95vw;\n display: flex;\n flex-direction: row;\n\n ${(props) =>\n props.$mode === \"stretch\"\n ? css`\n margin-top: 8px;\n height: calc(100vh - 16px);\n width: calc(100vw - 100px);\n max-width: 1000px;\n ${StyledSheetIcons} {\n flex-direction: column;\n width: 0;\n height: calc(100vh - 32px);\n & > * {\n margin-bottom: 8px;\n }\n span {\n top: 8px;\n }\n }\n `\n : css`\n max-height: calc(100vh - 156px);\n margin-top: 126px;\n margin-bottom: 30px;\n width: 540px;\n flex-direction: column;\n\n ${StyledSheetIcons} {\n flex-direction: row-reverse;\n & > * {\n margin-left: 8px;\n }\n span {\n top: -48px;\n right: 8px;\n }\n }\n `}\n\n ${(props) =>\n props.$mode === \"stretch\" &&\n css`\n @media (max-width: 640px) {\n width: 100%;\n height: 100%;\n }\n `}\n\n ${(props) =>\n props.$position === \"center\" &&\n css`\n ${tw`tw-mx-auto`}\n `}\n\n ${(props) =>\n props.$position === \"left\" &&\n css`\n ${tw`tw-ml-2 tw-mr-auto`}\n `}\n\n ${(props) =>\n props.$position === \"right\" &&\n css`\n ${tw`tw-mr-2 tw-ml-auto`}\n `}\n\n ${(props) =>\n props.$mode === \"stretch\" &&\n props.$position !== \"left\" &&\n css`\n ${StyledSheetIcons} {\n span {\n right: 48px;\n }\n }\n `}\n\n ${(props) =>\n props.$mode === \"stretch\" &&\n props.$position === \"left\" &&\n css`\n flex-direction: row-reverse;\n\n ${StyledSheetIcons} {\n span {\n right: -8px;\n }\n }\n `}\n`;\n\nStyledSheetWrapper.displayName = \"StyledSheetWrapper\";\n\ninterface IStyledSheetWrapperPaper {\n paperClass?: string;\n}\n\nexport const StyledSheetSurface = styled.div`\n display: flex;\n flex-direction: inherit;\n flex: 1 1 auto;\n min-width: 0;\n min-height: 0;\n`;\n\nStyledSheetSurface.displayName = \"StyledSheetSurface\";\n\nexport const StyledSheetWrapperPaper = styled.div.attrs<IStyledSheetWrapperPaper>(\n (props) => ({\n className: props.paperClass,\n })\n)<IStyledSheetWrapperPaper>`\n background-color: var(--page-paper-main);\n color: var(--color-theme-900);\n box-shadow: var(--shadow-primary);\n border-radius: 6px;\n overflow: auto;\n animation: 0.3s linear ease-out;\n /* Scrolling here must not dirty the blurred overlays below, which already clip to this box. */\n transform: translateZ(0);\n contain: paint;\n /* A scroll that runs off the end must stop here. Chained to the page, it moves what the blur samples. */\n overscroll-behavior: contain;\n\n ${tw`tw-flex-auto`}\n`;\n\nStyledSheetWrapperPaper.displayName = \"StyledSheetWrapperPaper\";\n\ninterface IStyledAnimatedSpan {\n $disabled?: boolean;\n}\n\nexport const StyledAnimatedSpan = styled.span<IStyledAnimatedSpan>`\n &:hover svg {\n fill: var(--color-primary);\n }\n\n ${(props) =>\n props.$disabled &&\n css`\n pointer-events: none;\n\n svg {\n opacity: 0.5;\n }\n `}\n`;\n\nStyledAnimatedSpan.displayName = \"StyledAnimatedSpan\";\n\nexport const StyledCssTransition = styled(CSSTransition)<{\n $direction: string;\n}>`\n ${(props) =>\n props.$direction === \"top\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateY(-100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateY(-100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateY(-100%);\n transition: opacity ${SHEET_EXIT_MS}ms, transform ${SHEET_EXIT_MS}ms;\n }\n `}\n\n ${(props) =>\n props.$direction === \"bottom\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateY(100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateY(100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateY(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateY(100%);\n transition: opacity ${SHEET_EXIT_MS}ms, transform ${SHEET_EXIT_MS}ms;\n }\n `}\n\n ${(props) =>\n props.$direction === \"left\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateX(-100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateX(-100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateX(-100%);\n transition: opacity ${SHEET_EXIT_MS}ms, transform ${SHEET_EXIT_MS}ms;\n }\n `}\n\n ${(props) =>\n props.$direction === \"right\" &&\n css`\n &.c-sheet__animation-enter {\n opacity: 0;\n transform: translateX(100%);\n }\n &.c-sheet__animation-enter-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-appear {\n opacity: 0;\n transform: translateX(100%);\n }\n &.c-sheet__animation-appear-active {\n opacity: 1;\n transform: translateX(0);\n transition: opacity ${SHEET_ENTER_MS}ms, transform ${SHEET_ENTER_MS}ms;\n }\n &.c-sheet__animation-exit {\n opacity: 1;\n }\n &.c-sheet__animation-exit-active {\n opacity: 0;\n transform: translateX(100%);\n transition: opacity ${SHEET_EXIT_MS}ms, transform ${SHEET_EXIT_MS}ms;\n }\n `}\n`;\n\nStyledCssTransition.displayName = \"StyledCssTransition\";\n\nexport const StyledListSeparator = styled(ListSeparator)`\n margin: 0;\n`;\n\nStyledListSeparator.displayName = \"StyledListSeparator\";\n\nexport const StyledIconsWrapperSmall = styled.div`\n height: 40px;\n display: flex;\n gap: 8px;\n padding-left: 16px;\n padding-right: 16px;\n align-items: center;\n place-content: end;\n flex-direction: row-reverse;\n`;\n\nStyledIconsWrapperSmall.displayName = \"StyledIconsWrapperSmall\";\n\nexport const StyledHeader = styled.div`\n @media (min-width: 640px) {\n display: none;\n }\n`;\n\nStyledHeader.displayName = \"StyledHeader\";\n"],"mappings":"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","ignoreList":[]}
@@ -573,20 +573,19 @@ var CanvasElements = exports.CanvasElements = function CanvasElements(_ref) {
573
573
  resolveTimersRef.current.push(timer);
574
574
  }, [setProjectElements]);
575
575
 
576
- /* Esc, or a click on the overlay. The placeholder was only ever the first
577
- half of the gesture, so cancelling throws it away rather than leaving a
578
- blank card on the board. */
579
- var cancelProjectElement = (0, _react.useCallback)(function (id) {
576
+ /* Esc, or a click on the overlay. The drawn box stays on the board as a
577
+ placeholder, selected where it was drawn; a click on it opens the picker
578
+ again. Deleting it is the element's own Delete, like any other element. */
579
+ var cancelProjectElement = (0, _react.useCallback)(function () {
580
580
  setPickerFor(null);
581
- setProjectElements(function (current) {
582
- return current.filter(function (entry) {
583
- return entry.id !== id;
584
- });
585
- });
586
- setSelectedId(function (selected) {
587
- return selected === id ? null : selected;
588
- });
589
- }, [setProjectElements, setSelectedId]);
581
+ }, []);
582
+
583
+ /* A placeholder's own frame reopens its picker. */
584
+ var pickForPlaceholder = (0, _react.useCallback)(function (entry) {
585
+ return entry.status === "placeholder" && !entry.limited ? function () {
586
+ return setPickerFor(entry.id);
587
+ } : undefined;
588
+ }, []);
590
589
  var pickerElement = (_projectElements$find = projectElements.find(function (entry) {
591
590
  return entry.id === pickerFor;
592
591
  })) !== null && _projectElements$find !== void 0 ? _projectElements$find : null;
@@ -1017,7 +1016,8 @@ var CanvasElements = exports.CanvasElements = function CanvasElements(_ref) {
1017
1016
  }
1018
1017
  }, /*#__PURE__*/_react.default.createElement(_projectElements.ProjectElementNode, {
1019
1018
  element: entry,
1020
- selected: selected
1019
+ selected: selected,
1020
+ onPick: pickForPlaceholder(entry)
1021
1021
  }), selected && entry.kind === "person" && entry.status === "resolved" && !entry.limited && entry.person ? /*#__PURE__*/_react.default.createElement(_entityCardActions.PersonCardToolbar, {
1022
1022
  onDetails: function onDetails() {
1023
1023
  return setDetailsId(entry.id);
@@ -1146,9 +1146,7 @@ var CanvasElements = exports.CanvasElements = function CanvasElements(_ref) {
1146
1146
  person
1147
1147
  });
1148
1148
  },
1149
- onCancel: function onCancel() {
1150
- return cancelProjectElement(pickerElement.id);
1151
- }
1149
+ onCancel: cancelProjectElement
1152
1150
  }) : null);
1153
1151
  };
1154
1152
  //# sourceMappingURL=canvasElements.js.map