@artsy/palette 42.0.0 → 42.0.2
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/dist/elements/AutocompleteInput/AutocompleteInput.js +24 -5
- package/dist/elements/AutocompleteInput/AutocompleteInput.js.map +1 -1
- package/dist/elements/AutocompleteInput/AutocompleteInputOption.d.ts +5 -4
- package/dist/elements/AutocompleteInput/AutocompleteInputOption.js +1 -14
- package/dist/elements/AutocompleteInput/AutocompleteInputOption.js.map +1 -1
- package/dist/elements/Dropdown/Dropdown.js +12 -6
- package/dist/elements/Dropdown/Dropdown.js.map +1 -1
- package/dist/elements/Dropdown/Dropdown.story.js +7 -4
- package/dist/elements/Dropdown/Dropdown.story.js.map +1 -1
- package/dist/elements/ResponsiveBox/ResponsiveBox.story.js +1 -1
- package/dist/elements/ResponsiveBox/ResponsiveBox.story.js.map +1 -1
- package/package.json +2 -2
|
@@ -198,12 +198,32 @@ var AutocompleteInput = exports.AutocompleteInput = function AutocompleteInput(_
|
|
|
198
198
|
type: "OPEN"
|
|
199
199
|
});
|
|
200
200
|
};
|
|
201
|
+
|
|
202
|
+
// Records the latest mouse movement and, inside the `handleMouseEnter` callback,
|
|
203
|
+
// only treat the event as genuine if the mouse has moved very recently.
|
|
204
|
+
// Otherwise, the event is presumed to have been triggered by scrolling and is ignored.
|
|
205
|
+
var lastMouseMoveTimestamp = (0, _react.useRef)(0);
|
|
206
|
+
(0, _react.useEffect)(function () {
|
|
207
|
+
if (!isDropdownVisible) return;
|
|
208
|
+
var handleMouseMove = function handleMouseMove() {
|
|
209
|
+
lastMouseMoveTimestamp.current = performance.now();
|
|
210
|
+
};
|
|
211
|
+
window.addEventListener("mousemove", handleMouseMove);
|
|
212
|
+
return function () {
|
|
213
|
+
window.removeEventListener("mousemove", handleMouseMove);
|
|
214
|
+
};
|
|
215
|
+
}, [isDropdownVisible]);
|
|
201
216
|
var handleMouseEnter = function handleMouseEnter(i) {
|
|
202
217
|
return function () {
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
218
|
+
var now = performance.now();
|
|
219
|
+
|
|
220
|
+
// 50ms mouse move window
|
|
221
|
+
if (now - lastMouseMoveTimestamp.current < 50) {
|
|
222
|
+
set({
|
|
223
|
+
cursor: i,
|
|
224
|
+
interactive: true
|
|
225
|
+
});
|
|
226
|
+
}
|
|
207
227
|
};
|
|
208
228
|
};
|
|
209
229
|
var handleChange = function handleChange(event) {
|
|
@@ -380,7 +400,6 @@ var AutocompleteInput = exports.AutocompleteInput = function AutocompleteInput(_
|
|
|
380
400
|
"aria-setsize": options.length,
|
|
381
401
|
onMouseDown: handleMouseDown(option, i),
|
|
382
402
|
onMouseEnter: handleMouseEnter(i),
|
|
383
|
-
selected: i === index,
|
|
384
403
|
tabIndex: -1
|
|
385
404
|
}, renderOption(option, i));
|
|
386
405
|
})), /*#__PURE__*/_react.default.createElement("div", _extends({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutocompleteInput.js","names":["_composeReactRefs","_interopRequireDefault","require","_react","_interopRequireWildcard","_styledComponents","_useKeyboardListNavigation","_Spinner","_SearchIcon","_CloseIcon","_utils","_useWidthOf2","_Box","_Clickable","_LabeledInput","_VisuallyHidden","_AutocompleteInputOption","_AutocompleteInputOptionLabel","_themeGet","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","name","Array","from","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","reducer","state","action","type","open","query","payload","AutocompleteInput","exports","_ref","_staged$text","_ref$clamp","clamp","_ref$defaultValue","defaultValue","_ref$dropdownMaxHeigh","dropdownMaxHeight","_ref$flip","flip","footer","forwardedRef","forwardRef","header","height","id","loading","onChange","onClear","onClose","onKeyDown","onSelect","onSubmit","options","_ref$renderOption","renderOption","option","createElement","AutocompleteInputOptionLabel","rest","inputRef","useRef","containerRef","headerRef","footerRef","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_useReducer","useReducer","_useReducer2","dispatch","optionsWithRefs","useMemo","map","ref","createRef","resetUI","setTimeout","_inputRef$current","current","focus","reset","handleSelect","index","_inputRef$current2","text","_useKeyboardListNavig","useKeyboardListNavigation","list","waitForInteractive","onEnter","_ref2","element","event","preventDefault","stopPropagation","isDropdownVisible","useEffect","_usePosition","usePosition","active","offset","position","anchorRef","tooltipRef","_useWidthOf","useWidthOf","width","handleFocus","handleMouseDown","handleClick","handleMouseEnter","cursor","interactive","handleChange","currentTarget","handleClearOrSubmit","_inputRef$current3","handleClose","useCallback","ignoreFocusChangeRef","ignoreFocusChange","onMouseDown","onMouseUp","_option$ref","_option$ref$current","handleFocusChange","focused","_useContainsFocus","useContainsFocus","containsFocusRef","useClickOutside","onClickOutside","when","handleInputKeydown","_inputRef$current4","blur","handleContainerKeydown","_inputRef$current5","_inputRef$current6","staged","Box","composeRefs","LabeledInput","role","concat","label","Spinner","size","Clickable","onClick","display","alignItems","fill","onFocus","autoComplete","AutocompleteInputDropdown","AutocompleteInputOptions","maxHeight","_ref3","AutocompleteInputOption","onMouseEnter","selected","tabIndex","VisuallyHidden","displayName","styled","withConfig","componentId","themeGet"],"sources":["../../../src/elements/AutocompleteInput/AutocompleteInput.tsx"],"sourcesContent":["import composeRefs from \"@seznam/compose-react-refs\"\nimport React, {\n createRef,\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from \"react\"\nimport styled from \"styled-components\"\nimport { useKeyboardListNavigation } from \"use-keyboard-list-navigation\"\nimport { Spinner } from \"../Spinner\"\nimport SearchIcon from \"@artsy/icons/SearchIcon\"\nimport CloseIcon from \"@artsy/icons/CloseIcon\"\nimport { usePosition, useContainsFocus, useClickOutside } from \"../../utils\"\nimport { useWidthOf } from \"../../utils/useWidthOf\"\nimport { Box, splitBoxProps } from \"../Box\"\nimport { Clickable } from \"../Clickable\"\nimport { InputProps } from \"../Input\"\nimport { LabeledInput } from \"../LabeledInput\"\nimport { VisuallyHidden } from \"../VisuallyHidden\"\nimport { AutocompleteInputOption } from \"./AutocompleteInputOption\"\nimport { AutocompleteInputOptionLabel } from \"./AutocompleteInputOptionLabel\"\nimport { ResponsiveValue } from \"styled-system\"\nimport { themeGet } from \"@styled-system/theme-get\"\n\nexport interface AutocompleteFooterActions {\n /** Call to close dropdown */\n onClose(): void\n}\n\n/** Base option type — can be expanded */\nexport interface AutocompleteInputOptionType {\n text: string\n value: string\n}\n\ninterface State {\n open: boolean\n query: string\n}\n\ntype Action =\n | { type: \"OPEN\" }\n | { type: \"CLOSE\" }\n | { type: \"CLEAR\" }\n | { type: \"CHANGE\"; payload: { query: string } }\n | { type: \"SELECT\"; payload: { query: string } }\n\nconst reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case \"OPEN\":\n return { ...state, open: true }\n case \"CLOSE\":\n return { ...state, open: false }\n case \"CLEAR\":\n return { ...state, query: \"\" }\n case \"CHANGE\":\n return { ...state, query: action.payload.query, open: true }\n case \"SELECT\":\n return { ...state, query: action.payload.query, open: false }\n }\n}\n\nexport interface AutocompleteInputProps<T extends AutocompleteInputOptionType>\n extends Omit<InputProps, \"onSelect\" | \"onSubmit\"> {\n /** Optionally enable clamping (default: `false`) */\n clamp?: boolean\n defaultValue?: string\n dropdownMaxHeight?: ResponsiveValue<string | number>\n loading?: boolean\n header?: React.ReactNode\n /** Optionally disable flipping (default: `true`) */\n flip?: boolean\n footer?:\n | React.ReactNode\n | ((dropdownActions: AutocompleteFooterActions) => React.ReactNode)\n /** Ref to the input; workaround generics */\n forwardRef?: React.Ref<HTMLInputElement>\n /** on <enter> when no option is selected */\n onSubmit?(query: string): void\n /** on <click> or <enter> when an option is selected */\n onSelect?(option: T, index: number): void\n /** on <click> of the 'x' (clear) button */\n onClear?(): void\n /** Callback that runs when options are hidden */\n onClose?(): void\n options: T[]\n renderOption?(\n option: T,\n i: number\n ): React.ReactElement<any, string | React.JSXElementConstructor<any>>\n}\n\n/** AutocompleteInput */\nexport const AutocompleteInput = <T extends AutocompleteInputOptionType>({\n clamp = false,\n defaultValue = \"\",\n dropdownMaxHeight = 308, // 308 = roughly 5.5 options\n flip = true,\n footer,\n forwardRef: forwardedRef,\n header,\n height,\n id,\n loading,\n onChange,\n onClear,\n onClose,\n onKeyDown,\n onSelect,\n onSubmit,\n options,\n renderOption = (option) => <AutocompleteInputOptionLabel {...option} />,\n ...rest\n}: AutocompleteInputProps<T>) => {\n const inputRef = useRef<HTMLInputElement | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n const headerRef = useRef<HTMLDivElement | null>(null)\n const footerRef = useRef<HTMLDivElement | null>(null)\n\n const [boxProps, inputProps] = splitBoxProps(rest)\n\n const [state, dispatch] = useReducer(reducer, {\n open: false,\n query: defaultValue,\n })\n\n const optionsWithRefs = useMemo(() => {\n return options.map((option) => ({\n option,\n ref: createRef<HTMLButtonElement>(),\n }))\n }, [options])\n\n const resetUI = () => {\n setTimeout(() => {\n inputRef.current?.focus()\n reset()\n dispatch({ type: \"CLOSE\" })\n }, 100)\n }\n\n const handleSelect = (option: T, index: number) => {\n dispatch({ type: \"SELECT\", payload: { query: option.text } })\n inputRef.current?.focus()\n onSelect?.(option, index)\n }\n\n const { index, reset, set } = useKeyboardListNavigation({\n ref: containerRef,\n list: options,\n waitForInteractive: true,\n onEnter: ({ element: option, index: i, event }) => {\n event.preventDefault()\n event.stopPropagation()\n handleSelect(option, i)\n resetUI()\n },\n })\n\n const isDropdownVisible = state.open && options.length > 0\n\n // Reset keyboard navigation when options change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(reset, [options])\n\n // Reset keyboard navigation when query is empty\n useEffect(() => {\n if (state.query === \"\") reset()\n }, [reset, state.query])\n\n const { anchorRef, tooltipRef } = usePosition({\n active: isDropdownVisible,\n clamp,\n flip,\n key: options.length,\n offset: 10,\n position: \"bottom\",\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n const handleFocus = () => {\n reset()\n dispatch({ type: \"OPEN\" })\n }\n\n const handleMouseDown = (option: T, i: number) => () => {\n handleSelect(option, i)\n resetUI()\n }\n\n const handleClick = () => {\n dispatch({ type: \"OPEN\" })\n }\n\n const handleMouseEnter = (i: number) => () => {\n set({ cursor: i, interactive: true })\n }\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const {\n currentTarget: { value },\n } = event\n\n dispatch({ type: \"CHANGE\", payload: { query: value } })\n onChange?.(event)\n }\n\n const handleClearOrSubmit = () => {\n if (state.query === \"\") {\n onSubmit?.(state.query)\n return\n }\n\n dispatch({ type: \"CLEAR\" })\n inputRef.current?.focus()\n onClear?.()\n }\n\n const handleClose = useCallback(() => {\n dispatch({ type: \"CLOSE\" })\n reset()\n onClose?.()\n }, [onClose, reset])\n\n const ignoreFocusChangeRef = useRef<boolean>(false)\n const ignoreFocusChange = {\n onMouseDown: () => (ignoreFocusChangeRef.current = true),\n onMouseUp: () => (ignoreFocusChangeRef.current = false),\n }\n\n // Moves focus to different options when keyboard navigating using up/down\n useEffect(() => {\n const option = optionsWithRefs[index]\n option?.ref?.current?.focus()\n }, [index, optionsWithRefs])\n\n const handleFocusChange = useCallback(\n (focused: boolean) => {\n if (ignoreFocusChangeRef.current || focused || !isDropdownVisible) return\n\n handleClose()\n },\n\n [isDropdownVisible, handleClose]\n )\n\n // Handle closing the dropdown when clicking outside of the input\n // or when focus leaves the input completely\n const { ref: containsFocusRef } = useContainsFocus({\n onChange: handleFocusChange,\n })\n\n useClickOutside({\n ref: containsFocusRef,\n onClickOutside: handleClose,\n when: isDropdownVisible,\n type: \"click\",\n })\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.key) {\n // Handle <Enter> when nothing is selected\n case \"Enter\":\n if (state.query !== \"\" && index === -1) {\n onSubmit?.(state.query)\n resetUI()\n }\n return\n\n // <Esc> to close dropdown\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n\n return\n\n default:\n break\n }\n\n onKeyDown?.(event)\n }\n\n // Moves focus back to input when typing\n const handleContainerKeydown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ) => {\n switch (event.key) {\n case \"Alt\":\n case \"ArrowDown\":\n case \"ArrowUp\":\n case \"Control\":\n case \"Enter\":\n case \"Meta\":\n case \"Shift\":\n case \"Tab\":\n // Ignore\n return\n\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n reset()\n\n return\n\n default:\n inputRef.current?.focus()\n }\n }\n\n // Option that is being hovered or keyed into\n const staged = options[index]\n\n return (\n <Box\n ref={composeRefs(containerRef, containsFocusRef) as any}\n onKeyDown={handleContainerKeydown}\n {...boxProps}\n >\n <LabeledInput\n ref={composeRefs(inputRef, anchorRef, forwardedRef) as any}\n role=\"combobox\"\n aria-expanded={isDropdownVisible}\n aria-autocomplete=\"list\"\n {...(id ? { id, \"aria-describedby\": `${id}__assistiveHint` } : {})}\n label={\n loading ? (\n <Box width={18}>\n <Spinner size=\"small\" />\n </Box>\n ) : state.query ? (\n <Clickable\n onClick={handleClearOrSubmit}\n height=\"100%\"\n display=\"flex\"\n alignItems=\"center\"\n aria-label=\"Clear input\"\n >\n <CloseIcon fill=\"mono60\" aria-hidden />\n </Clickable>\n ) : (\n <SearchIcon fill=\"mono60\" aria-hidden />\n )\n }\n value={staged?.text ?? state.query}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeydown}\n onClick={handleClick}\n autoComplete=\"off\"\n height={height}\n {...inputProps}\n />\n\n {isDropdownVisible && (\n <AutocompleteInputDropdown\n ref={tooltipRef as any}\n role=\"listbox\"\n width={width}\n >\n <div ref={headerRef} {...ignoreFocusChange}>\n {header}\n </div>\n\n <AutocompleteInputOptions maxHeight={dropdownMaxHeight}>\n {optionsWithRefs.map(({ option, ref }, i) => {\n return (\n <AutocompleteInputOption\n key={i}\n ref={ref}\n role=\"option\"\n aria-selected={i === index}\n aria-posinset={i + 1}\n aria-setsize={options.length}\n onMouseDown={handleMouseDown(option, i)}\n onMouseEnter={handleMouseEnter(i)}\n selected={i === index}\n tabIndex={-1}\n >\n {renderOption(option, i)}\n </AutocompleteInputOption>\n )\n })}\n </AutocompleteInputOptions>\n\n <div ref={footerRef} {...ignoreFocusChange}>\n {typeof footer === \"function\"\n ? footer({ onClose: handleClose })\n : footer}\n </div>\n </AutocompleteInputDropdown>\n )}\n\n <VisuallyHidden {...(id ? { id: `${id}__assistiveHint` } : {})}>\n When autocomplete results are available use up and down arrows to review\n and enter to select. Touch device users, explore by touch or with swipe\n gestures.\n </VisuallyHidden>\n\n {isDropdownVisible && (\n <VisuallyHidden role=\"status\" aria-atomic=\"true\" aria-live=\"polite\">\n {options.length === 1\n ? `1 result is available`\n : `${options.length} results are available`}\n </VisuallyHidden>\n )}\n </Box>\n )\n}\n\nconst AutocompleteInputDropdown = styled(Box)`\n box-shadow: ${themeGet(\"effects.dropShadow\")};\n z-index: 1;\n`\n\nconst AutocompleteInputOptions = styled(Box)`\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AutocompleteInput.js","names":["_composeReactRefs","_interopRequireDefault","require","_react","_interopRequireWildcard","_styledComponents","_useKeyboardListNavigation","_Spinner","_SearchIcon","_CloseIcon","_utils","_useWidthOf2","_Box","_Clickable","_LabeledInput","_VisuallyHidden","_AutocompleteInputOption","_AutocompleteInputOptionLabel","_themeGet","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Symbol","iterator","constructor","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","name","Array","from","test","len","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ownKeys","object","enumerableOnly","symbols","filter","sym","enumerable","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","reducer","state","action","type","open","query","payload","AutocompleteInput","exports","_ref","_staged$text","_ref$clamp","clamp","_ref$defaultValue","defaultValue","_ref$dropdownMaxHeigh","dropdownMaxHeight","_ref$flip","flip","footer","forwardedRef","forwardRef","header","height","id","loading","onChange","onClear","onClose","onKeyDown","onSelect","onSubmit","options","_ref$renderOption","renderOption","option","createElement","AutocompleteInputOptionLabel","rest","inputRef","useRef","containerRef","headerRef","footerRef","_splitBoxProps","splitBoxProps","_splitBoxProps2","boxProps","inputProps","_useReducer","useReducer","_useReducer2","dispatch","optionsWithRefs","useMemo","map","ref","createRef","resetUI","setTimeout","_inputRef$current","current","focus","reset","handleSelect","index","_inputRef$current2","text","_useKeyboardListNavig","useKeyboardListNavigation","list","waitForInteractive","onEnter","_ref2","element","event","preventDefault","stopPropagation","isDropdownVisible","useEffect","_usePosition","usePosition","active","offset","position","anchorRef","tooltipRef","_useWidthOf","useWidthOf","width","handleFocus","handleMouseDown","handleClick","lastMouseMoveTimestamp","handleMouseMove","performance","now","window","addEventListener","removeEventListener","handleMouseEnter","cursor","interactive","handleChange","currentTarget","handleClearOrSubmit","_inputRef$current3","handleClose","useCallback","ignoreFocusChangeRef","ignoreFocusChange","onMouseDown","onMouseUp","_option$ref","_option$ref$current","handleFocusChange","focused","_useContainsFocus","useContainsFocus","containsFocusRef","useClickOutside","onClickOutside","when","handleInputKeydown","_inputRef$current4","blur","handleContainerKeydown","_inputRef$current5","_inputRef$current6","staged","Box","composeRefs","LabeledInput","role","concat","label","Spinner","size","Clickable","onClick","display","alignItems","fill","onFocus","autoComplete","AutocompleteInputDropdown","AutocompleteInputOptions","maxHeight","_ref3","AutocompleteInputOption","onMouseEnter","tabIndex","VisuallyHidden","displayName","styled","withConfig","componentId","themeGet"],"sources":["../../../src/elements/AutocompleteInput/AutocompleteInput.tsx"],"sourcesContent":["import composeRefs from \"@seznam/compose-react-refs\"\nimport React, {\n createRef,\n useCallback,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n} from \"react\"\nimport styled from \"styled-components\"\nimport { useKeyboardListNavigation } from \"use-keyboard-list-navigation\"\nimport { Spinner } from \"../Spinner\"\nimport SearchIcon from \"@artsy/icons/SearchIcon\"\nimport CloseIcon from \"@artsy/icons/CloseIcon\"\nimport { usePosition, useContainsFocus, useClickOutside } from \"../../utils\"\nimport { useWidthOf } from \"../../utils/useWidthOf\"\nimport { Box, splitBoxProps } from \"../Box\"\nimport { Clickable } from \"../Clickable\"\nimport { InputProps } from \"../Input\"\nimport { LabeledInput } from \"../LabeledInput\"\nimport { VisuallyHidden } from \"../VisuallyHidden\"\nimport { AutocompleteInputOption } from \"./AutocompleteInputOption\"\nimport { AutocompleteInputOptionLabel } from \"./AutocompleteInputOptionLabel\"\nimport { ResponsiveValue } from \"styled-system\"\nimport { themeGet } from \"@styled-system/theme-get\"\n\nexport interface AutocompleteFooterActions {\n /** Call to close dropdown */\n onClose(): void\n}\n\n/** Base option type — can be expanded */\nexport interface AutocompleteInputOptionType {\n text: string\n value: string\n}\n\ninterface State {\n open: boolean\n query: string\n}\n\ntype Action =\n | { type: \"OPEN\" }\n | { type: \"CLOSE\" }\n | { type: \"CLEAR\" }\n | { type: \"CHANGE\"; payload: { query: string } }\n | { type: \"SELECT\"; payload: { query: string } }\n\nconst reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case \"OPEN\":\n return { ...state, open: true }\n case \"CLOSE\":\n return { ...state, open: false }\n case \"CLEAR\":\n return { ...state, query: \"\" }\n case \"CHANGE\":\n return { ...state, query: action.payload.query, open: true }\n case \"SELECT\":\n return { ...state, query: action.payload.query, open: false }\n }\n}\n\nexport interface AutocompleteInputProps<T extends AutocompleteInputOptionType>\n extends Omit<InputProps, \"onSelect\" | \"onSubmit\"> {\n /** Optionally enable clamping (default: `false`) */\n clamp?: boolean\n defaultValue?: string\n dropdownMaxHeight?: ResponsiveValue<string | number>\n loading?: boolean\n header?: React.ReactNode\n /** Optionally disable flipping (default: `true`) */\n flip?: boolean\n footer?:\n | React.ReactNode\n | ((dropdownActions: AutocompleteFooterActions) => React.ReactNode)\n /** Ref to the input; workaround generics */\n forwardRef?: React.Ref<HTMLInputElement>\n /** on <enter> when no option is selected */\n onSubmit?(query: string): void\n /** on <click> or <enter> when an option is selected */\n onSelect?(option: T, index: number): void\n /** on <click> of the 'x' (clear) button */\n onClear?(): void\n /** Callback that runs when options are hidden */\n onClose?(): void\n options: T[]\n renderOption?(\n option: T,\n i: number\n ): React.ReactElement<any, string | React.JSXElementConstructor<any>>\n}\n\n/** AutocompleteInput */\nexport const AutocompleteInput = <T extends AutocompleteInputOptionType>({\n clamp = false,\n defaultValue = \"\",\n dropdownMaxHeight = 308, // 308 = roughly 5.5 options\n flip = true,\n footer,\n forwardRef: forwardedRef,\n header,\n height,\n id,\n loading,\n onChange,\n onClear,\n onClose,\n onKeyDown,\n onSelect,\n onSubmit,\n options,\n renderOption = (option) => <AutocompleteInputOptionLabel {...option} />,\n ...rest\n}: AutocompleteInputProps<T>) => {\n const inputRef = useRef<HTMLInputElement | null>(null)\n const containerRef = useRef<HTMLDivElement | null>(null)\n const headerRef = useRef<HTMLDivElement | null>(null)\n const footerRef = useRef<HTMLDivElement | null>(null)\n\n const [boxProps, inputProps] = splitBoxProps(rest)\n\n const [state, dispatch] = useReducer(reducer, {\n open: false,\n query: defaultValue,\n })\n\n const optionsWithRefs = useMemo(() => {\n return options.map((option) => ({\n option,\n ref: createRef<HTMLButtonElement>(),\n }))\n }, [options])\n\n const resetUI = () => {\n setTimeout(() => {\n inputRef.current?.focus()\n reset()\n dispatch({ type: \"CLOSE\" })\n }, 100)\n }\n\n const handleSelect = (option: T, index: number) => {\n dispatch({ type: \"SELECT\", payload: { query: option.text } })\n inputRef.current?.focus()\n onSelect?.(option, index)\n }\n\n const { index, reset, set } = useKeyboardListNavigation({\n ref: containerRef,\n list: options,\n waitForInteractive: true,\n onEnter: ({ element: option, index: i, event }) => {\n event.preventDefault()\n event.stopPropagation()\n handleSelect(option, i)\n resetUI()\n },\n })\n\n const isDropdownVisible = state.open && options.length > 0\n\n // Reset keyboard navigation when options change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(reset, [options])\n\n // Reset keyboard navigation when query is empty\n useEffect(() => {\n if (state.query === \"\") reset()\n }, [reset, state.query])\n\n const { anchorRef, tooltipRef } = usePosition({\n active: isDropdownVisible,\n clamp,\n flip,\n key: options.length,\n offset: 10,\n position: \"bottom\",\n })\n\n const { width } = useWidthOf({ ref: anchorRef })\n\n const handleFocus = () => {\n reset()\n dispatch({ type: \"OPEN\" })\n }\n\n const handleMouseDown = (option: T, i: number) => () => {\n handleSelect(option, i)\n resetUI()\n }\n\n const handleClick = () => {\n dispatch({ type: \"OPEN\" })\n }\n\n // Records the latest mouse movement and, inside the `handleMouseEnter` callback,\n // only treat the event as genuine if the mouse has moved very recently.\n // Otherwise, the event is presumed to have been triggered by scrolling and is ignored.\n const lastMouseMoveTimestamp = useRef<number>(0)\n\n useEffect(() => {\n if (!isDropdownVisible) return\n\n const handleMouseMove = () => {\n lastMouseMoveTimestamp.current = performance.now()\n }\n\n window.addEventListener(\"mousemove\", handleMouseMove)\n\n return () => {\n window.removeEventListener(\"mousemove\", handleMouseMove)\n }\n }, [isDropdownVisible])\n\n const handleMouseEnter = (i: number) => () => {\n const now = performance.now()\n\n // 50ms mouse move window\n if (now - lastMouseMoveTimestamp.current < 50) {\n set({ cursor: i, interactive: true })\n }\n }\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const {\n currentTarget: { value },\n } = event\n\n dispatch({ type: \"CHANGE\", payload: { query: value } })\n onChange?.(event)\n }\n\n const handleClearOrSubmit = () => {\n if (state.query === \"\") {\n onSubmit?.(state.query)\n return\n }\n\n dispatch({ type: \"CLEAR\" })\n inputRef.current?.focus()\n onClear?.()\n }\n\n const handleClose = useCallback(() => {\n dispatch({ type: \"CLOSE\" })\n reset()\n onClose?.()\n }, [onClose, reset])\n\n const ignoreFocusChangeRef = useRef<boolean>(false)\n const ignoreFocusChange = {\n onMouseDown: () => (ignoreFocusChangeRef.current = true),\n onMouseUp: () => (ignoreFocusChangeRef.current = false),\n }\n\n // Moves focus to different options when keyboard navigating using up/down\n useEffect(() => {\n const option = optionsWithRefs[index]\n option?.ref?.current?.focus()\n }, [index, optionsWithRefs])\n\n const handleFocusChange = useCallback(\n (focused: boolean) => {\n if (ignoreFocusChangeRef.current || focused || !isDropdownVisible) return\n\n handleClose()\n },\n\n [isDropdownVisible, handleClose]\n )\n\n // Handle closing the dropdown when clicking outside of the input\n // or when focus leaves the input completely\n const { ref: containsFocusRef } = useContainsFocus({\n onChange: handleFocusChange,\n })\n\n useClickOutside({\n ref: containsFocusRef,\n onClickOutside: handleClose,\n when: isDropdownVisible,\n type: \"click\",\n })\n\n const handleInputKeydown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n switch (event.key) {\n // Handle <Enter> when nothing is selected\n case \"Enter\":\n if (state.query !== \"\" && index === -1) {\n onSubmit?.(state.query)\n resetUI()\n }\n return\n\n // <Esc> to close dropdown\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n\n return\n\n default:\n break\n }\n\n onKeyDown?.(event)\n }\n\n // Moves focus back to input when typing\n const handleContainerKeydown = (\n event: React.KeyboardEvent<HTMLDivElement>\n ) => {\n switch (event.key) {\n case \"Alt\":\n case \"ArrowDown\":\n case \"ArrowUp\":\n case \"Control\":\n case \"Enter\":\n case \"Meta\":\n case \"Shift\":\n case \"Tab\":\n // Ignore\n return\n\n case \"Escape\":\n event.preventDefault()\n event.stopPropagation()\n\n dispatch({ type: \"CLOSE\" })\n inputRef.current?.blur()\n reset()\n\n return\n\n default:\n inputRef.current?.focus()\n }\n }\n\n // Option that is being hovered or keyed into\n const staged = options[index]\n\n return (\n <Box\n ref={composeRefs(containerRef, containsFocusRef) as any}\n onKeyDown={handleContainerKeydown}\n {...boxProps}\n >\n <LabeledInput\n ref={composeRefs(inputRef, anchorRef, forwardedRef) as any}\n role=\"combobox\"\n aria-expanded={isDropdownVisible}\n aria-autocomplete=\"list\"\n {...(id ? { id, \"aria-describedby\": `${id}__assistiveHint` } : {})}\n label={\n loading ? (\n <Box width={18}>\n <Spinner size=\"small\" />\n </Box>\n ) : state.query ? (\n <Clickable\n onClick={handleClearOrSubmit}\n height=\"100%\"\n display=\"flex\"\n alignItems=\"center\"\n aria-label=\"Clear input\"\n >\n <CloseIcon fill=\"mono60\" aria-hidden />\n </Clickable>\n ) : (\n <SearchIcon fill=\"mono60\" aria-hidden />\n )\n }\n value={staged?.text ?? state.query}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeydown}\n onClick={handleClick}\n autoComplete=\"off\"\n height={height}\n {...inputProps}\n />\n\n {isDropdownVisible && (\n <AutocompleteInputDropdown\n ref={tooltipRef as any}\n role=\"listbox\"\n width={width}\n >\n <div ref={headerRef} {...ignoreFocusChange}>\n {header}\n </div>\n\n <AutocompleteInputOptions maxHeight={dropdownMaxHeight}>\n {optionsWithRefs.map(({ option, ref }, i) => {\n return (\n <AutocompleteInputOption\n key={i}\n ref={ref}\n role=\"option\"\n aria-selected={i === index}\n aria-posinset={i + 1}\n aria-setsize={options.length}\n onMouseDown={handleMouseDown(option, i)}\n onMouseEnter={handleMouseEnter(i)}\n tabIndex={-1}\n >\n {renderOption(option, i)}\n </AutocompleteInputOption>\n )\n })}\n </AutocompleteInputOptions>\n\n <div ref={footerRef} {...ignoreFocusChange}>\n {typeof footer === \"function\"\n ? footer({ onClose: handleClose })\n : footer}\n </div>\n </AutocompleteInputDropdown>\n )}\n\n <VisuallyHidden {...(id ? { id: `${id}__assistiveHint` } : {})}>\n When autocomplete results are available use up and down arrows to review\n and enter to select. Touch device users, explore by touch or with swipe\n gestures.\n </VisuallyHidden>\n\n {isDropdownVisible && (\n <VisuallyHidden role=\"status\" aria-atomic=\"true\" aria-live=\"polite\">\n {options.length === 1\n ? `1 result is available`\n : `${options.length} results are available`}\n </VisuallyHidden>\n )}\n </Box>\n )\n}\n\nconst AutocompleteInputDropdown = styled(Box)`\n box-shadow: ${themeGet(\"effects.dropShadow\")};\n z-index: 1;\n`\n\nconst AutocompleteInputOptions = styled(Box)`\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n`\n"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { ClickableProps } from "../Clickable";
|
|
3
|
-
export
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
export type AutocompleteInputOptionProps = ClickableProps;
|
|
4
|
+
export declare const AutocompleteInputOption: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & import("..").BoxProps & {
|
|
5
|
+
cursor?: import("styled-system").ResponsiveValue<string>;
|
|
6
|
+
textDecoration?: import("styled-system").ResponsiveValue<string>;
|
|
7
|
+
} & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -10,7 +10,7 @@ var _themeGet = require("@styled-system/theme-get");
|
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
12
12
|
var _Clickable = require("../Clickable");
|
|
13
|
-
var _excluded = ["children"
|
|
13
|
+
var _excluded = ["children"];
|
|
14
14
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
15
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -19,21 +19,8 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
|
19
19
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
20
20
|
var AutocompleteInputOption = exports.AutocompleteInputOption = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, forwardedRef) {
|
|
21
21
|
var children = _ref.children,
|
|
22
|
-
selected = _ref.selected,
|
|
23
22
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
24
23
|
var ref = (0, _react.useRef)(null);
|
|
25
|
-
(0, _react.useEffect)(function () {
|
|
26
|
-
var _ref$current$scrollIn, _ref$current;
|
|
27
|
-
if (!ref.current || !selected) return;
|
|
28
|
-
|
|
29
|
-
// @ts-ignore
|
|
30
|
-
if (typeof ref.current.scrollIntoViewIfNeeded === "function") {
|
|
31
|
-
// @ts-ignore
|
|
32
|
-
ref.current.scrollIntoViewIfNeeded();
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
(_ref$current$scrollIn = (_ref$current = ref.current).scrollIntoView) === null || _ref$current$scrollIn === void 0 ? void 0 : _ref$current$scrollIn.call(_ref$current);
|
|
36
|
-
}, [selected]);
|
|
37
24
|
return /*#__PURE__*/_react.default.createElement(Container, _extends({
|
|
38
25
|
ref: (0, _composeReactRefs.default)(ref, forwardedRef),
|
|
39
26
|
bg: "mono0"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutocompleteInputOption.js","names":["_composeReactRefs","_interopRequireDefault","require","_themeGet","_react","_interopRequireWildcard","_styledComponents","_Clickable","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","AutocompleteInputOption","exports","forwardRef","_ref","forwardedRef","children","
|
|
1
|
+
{"version":3,"file":"AutocompleteInputOption.js","names":["_composeReactRefs","_interopRequireDefault","require","_themeGet","_react","_interopRequireWildcard","_styledComponents","_Clickable","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","AutocompleteInputOption","exports","forwardRef","_ref","forwardedRef","children","rest","ref","useRef","createElement","Container","composeRefs","bg","displayName","styled","Clickable","withConfig","componentId","themeGet"],"sources":["../../../src/elements/AutocompleteInput/AutocompleteInputOption.tsx"],"sourcesContent":["import composeRefs from \"@seznam/compose-react-refs\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport React, { forwardRef, useRef } from \"react\"\nimport styled from \"styled-components\"\nimport { Clickable, ClickableProps } from \"../Clickable\"\n\nexport type AutocompleteInputOptionProps = ClickableProps\n\nexport const AutocompleteInputOption = forwardRef<\n HTMLButtonElement,\n AutocompleteInputOptionProps\n>(({ children, ...rest }, forwardedRef) => {\n const ref = useRef<HTMLButtonElement | null>(null)\n\n return (\n <Container ref={composeRefs(ref, forwardedRef) as any} bg=\"mono0\" {...rest}>\n {children}\n </Container>\n )\n})\n\nAutocompleteInputOption.displayName = \"AutocompleteInputOption\"\n\nconst Container = styled(Clickable)`\n display: block;\n width: 100%;\n\n &:focus,\n &:active {\n outline: 0;\n background-color: ${themeGet(\"colors.mono5\")};\n }\n`\n"],"mappings":"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"}
|
|
@@ -37,7 +37,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
|
|
|
37
37
|
*/
|
|
38
38
|
var Dropdown = exports.Dropdown = function Dropdown(_ref) {
|
|
39
39
|
var _ref$placement = _ref.placement,
|
|
40
|
-
placement = _ref$placement === void 0 ? "
|
|
40
|
+
placement = _ref$placement === void 0 ? "bottom" : _ref$placement,
|
|
41
41
|
_ref$visible = _ref.visible,
|
|
42
42
|
_visible = _ref$visible === void 0 ? false : _ref$visible,
|
|
43
43
|
keepInDOM = _ref.keepInDOM,
|
|
@@ -158,9 +158,9 @@ var Dropdown = exports.Dropdown = function Dropdown(_ref) {
|
|
|
158
158
|
|
|
159
159
|
// Wait for next tick so that animation runs
|
|
160
160
|
(0, _react.useEffect)(function () {
|
|
161
|
-
|
|
161
|
+
requestAnimationFrame(function () {
|
|
162
162
|
setTransition(visible);
|
|
163
|
-
}
|
|
163
|
+
});
|
|
164
164
|
}, [visible]);
|
|
165
165
|
var translation = (0, _react.useMemo)(function () {
|
|
166
166
|
switch (placement) {
|
|
@@ -297,12 +297,14 @@ var Dropdown = exports.Dropdown = function Dropdown(_ref) {
|
|
|
297
297
|
noIsolation: true,
|
|
298
298
|
enabled: focusEnabled,
|
|
299
299
|
onClickOutside: onHide
|
|
300
|
+
}, /*#__PURE__*/_react.default.createElement(Pane, {
|
|
301
|
+
maxHeight: maxHeight
|
|
300
302
|
}, typeof dropdown === "function" ? dropdown({
|
|
301
303
|
onVisible: onVisible,
|
|
302
304
|
onHide: onHide,
|
|
303
305
|
setVisible: setVisible,
|
|
304
306
|
visible: visible
|
|
305
|
-
}) : dropdown)))));
|
|
307
|
+
}) : dropdown))))));
|
|
306
308
|
};
|
|
307
309
|
var Container = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
308
310
|
displayName: "Dropdown__Container",
|
|
@@ -311,10 +313,14 @@ var Container = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
|
311
313
|
var Panel = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
312
314
|
displayName: "Dropdown__Panel",
|
|
313
315
|
componentId: "sc-je1xqj-1"
|
|
314
|
-
})(["transition:", "
|
|
316
|
+
})(["transition:", ";"], function (_ref7) {
|
|
315
317
|
var transition = _ref7.transition;
|
|
316
318
|
return transition ? "opacity 250ms ease-out, transform 250ms ease-out" : "none";
|
|
317
|
-
}
|
|
319
|
+
});
|
|
320
|
+
var Pane = (0, _styledComponents.default)(_Box.Box).withConfig({
|
|
321
|
+
displayName: "Dropdown__Pane",
|
|
322
|
+
componentId: "sc-je1xqj-2"
|
|
323
|
+
})(["> div{max-height:", ";box-shadow:", ";background-color:", ";border:1px solid ", ";overflow-y:auto;}"], function (_ref8) {
|
|
318
324
|
var maxHeight = _ref8.maxHeight;
|
|
319
325
|
return maxHeight ? "".concat(maxHeight, "px") : "100vh";
|
|
320
326
|
}, (0, _themeGet.themeGet)("effects.flatShadow"), (0, _themeGet.themeGet)("colors.mono0"), (0, _themeGet.themeGet)("colors.mono10"));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_utils","_usePortal2","_Box","_reactFocusOn","_themeGet","_esToolkit","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Dropdown","exports","_ref","_ref$placement","placement","_ref$visible","visible","_visible","keepInDOM","children","_ref$offset","offset","dropdown","_ref$dropdownZIndex","dropdownZIndex","openDropdownByClick","_ref$transition","transition","_transition","_ref$flip","flip","rest","_useState","useState","_useState2","setVisible","useEffect","timeoutRef","useRef","setVisibility","useCallback","_ref2","_ref2$isPointer","isPointer","delay","current","clearTimeout","setTimeout","activeRef","pointerRef","onVisible","onHide","onToggleVisibility","_usePosition","usePosition","position","active","padding","anchorRef","panelRef","tooltipRef","isFlipped","state","handleKeyDown","event","handleKeyUp","document","activeElement","contains","handleClick","tagName","toLowerCase","isClosableElement","element","closest","addEventListener","removeEventListener","handleMouseEnter","handleMouseLeave","_useState3","_useState4","setTransition","translation","useMemo","handlePointerVisible","handlePointerHide","anchorProps","onClick","onMouseEnter","onMouseLeave","_usePortal","usePortal","createPortal","focusEnabled","_useState5","_useState6","maxHeight","setMaxHeight","calculate","debounce","nextMaxHeight","calculateMaxHeight","anchorRect","getBoundingClientRect","window","passive","createElement","Fragment","Container","tabIndex","ref","zIndex","display","style","visibility","Panel","opacity","transform","FocusOn","noIsolation","enabled","onClickOutside","styled","Box","withConfig","displayName","componentId","_ref7","_ref8","concat","themeGet"],"sources":["../../../src/elements/Dropdown/Dropdown.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { calculateMaxHeight, Position, usePosition } from \"../../utils\"\nimport { usePortal } from \"../../utils/usePortal\"\nimport { Box, BoxProps } from \"../Box\"\nimport { FocusOn } from \"react-focus-on\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport { debounce } from \"es-toolkit\"\n\nexport interface DropdownActions {\n /** Call to show dropdown */\n onVisible(): void\n /** Call to hide dropdown */\n onHide(): void\n /** Manipulate visible directly */\n setVisible(value: boolean): void\n /** Pass ref to element you want the dropdown to be anchored to */\n anchorRef: React.MutableRefObject<HTMLElement>\n /** Spread props on element you want the dropdown to be anchored to */\n anchorProps: React.HTMLAttributes<HTMLElement>\n /** Whether or not the dropdown is visible */\n visible: boolean\n}\n\ntype Children =\n | React.ReactNode\n | ((dropdownActions: DropdownActions) => React.ReactNode)\n\nexport interface DropdownProps extends Omit<BoxProps, \"children\"> {\n placement?: Position\n /** Intially visible by default? */\n visible?: boolean\n /** Whether or not we should animate the dropdown transition */\n transition?: boolean\n dropdown:\n | React.ReactNode\n | ((\n dropdownActions: Pick<\n DropdownActions,\n \"onHide\" | \"onVisible\" | \"setVisible\" | \"visible\"\n >\n ) => void)\n /** Custom zIndex to assign to the dropdown panel */\n dropdownZIndex?: number\n /** Distance in pixels from anchor */\n offset?: number\n /** Should the dropdown panel always be present in the DOM (vs removed when invisible) */\n keepInDOM?: boolean\n openDropdownByClick?: boolean\n children: Children\n /** Optionally disable flipping (default: `true`) */\n flip?: boolean\n}\n\n/**\n * A `Dropdown` is a small modal-type element which is anchored, and can be\n * positioned relative to, another element and designed to be transitioned in on hover or on click.\n */\nexport const Dropdown = ({\n placement = \"top\",\n visible: _visible = false,\n keepInDOM,\n children,\n offset = 10,\n dropdown,\n dropdownZIndex = 1,\n openDropdownByClick,\n transition: _transition = true,\n flip = true,\n ...rest\n}: DropdownProps) => {\n const [visible, setVisible] = useState(false)\n\n // If prop updates/set initial visibility.\n useEffect(() => {\n setVisible(_visible)\n }, [_visible])\n\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n\n // We need to keep the pointer state in sync with the visibility state, else we\n // wind up with focus isolation out of sync.\n const setVisibility = useCallback(\n ({\n visible,\n isPointer = false,\n }: {\n visible: boolean\n isPointer?: boolean\n }) => {\n const delay = _transition ? (visible ? 50 : 150) : visible ? 1 : 50\n\n timeoutRef.current && clearTimeout(timeoutRef.current)\n timeoutRef.current = setTimeout(() => {\n if (!visible && activeRef.current) return\n pointerRef.current = isPointer\n setVisible(visible)\n }, delay)\n },\n [_transition]\n )\n\n const onVisible = () => {\n setVisibility({ visible: true })\n }\n\n const onHide = useCallback(() => {\n setVisibility({ visible: false })\n }, [setVisibility])\n\n const onToggleVisibility = () => {\n if (visible) {\n return onHide()\n }\n\n onVisible()\n }\n\n const {\n anchorRef,\n tooltipRef: panelRef,\n state: { isFlipped },\n } = usePosition({\n position: placement,\n offset: 0,\n active: visible,\n flip,\n padding: offset,\n })\n\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n onHide()\n }\n }\n\n // Close dropdown when focus leaves element\n const handleKeyUp = (event: KeyboardEvent) => {\n if (!panelRef.current) return\n\n if (\n event.key === \"Tab\" &&\n !(\n panelRef.current === document.activeElement ||\n panelRef.current.contains(document.activeElement)\n )\n ) {\n onHide()\n }\n }\n\n const handleClick = (event: MouseEvent) => {\n if (!panelRef.current || !openDropdownByClick) return\n const target = event.target as Element\n const tagName = target.tagName.toLowerCase()\n let isClosableElement = tagName === \"a\"\n let element: Element | null = target\n\n // Find parent link element\n if (!isClosableElement) {\n element = target.closest(\"a\")\n isClosableElement = !!element\n }\n\n if (isClosableElement && element && panelRef.current.contains(element)) {\n onHide()\n }\n }\n\n document.addEventListener(\"keydown\", handleKeyDown)\n document.addEventListener(\"keyup\", handleKeyUp)\n document.addEventListener(\"click\", handleClick)\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown)\n document.removeEventListener(\"keyup\", handleKeyUp)\n document.removeEventListener(\"click\", handleClick)\n }\n }, [panelRef, openDropdownByClick, onHide])\n\n const activeRef = useRef(false)\n\n const handleMouseEnter = () => {\n activeRef.current = true\n }\n\n const handleMouseLeave = () => {\n activeRef.current = false\n onHide()\n }\n\n const [transition, setTransition] = useState(false)\n\n // Wait for next tick so that animation runs\n useEffect(() => {\n setTimeout(() => {\n setTransition(visible)\n }, 0)\n }, [visible])\n\n const translation = useMemo(() => {\n switch (placement) {\n case \"top-start\":\n case \"top\":\n case \"top-end\":\n return `translateY(10px)`\n case \"bottom-start\":\n case \"bottom\":\n case \"bottom-end\":\n return `translateY(-10px)`\n case \"left-start\":\n case \"left\":\n case \"left-end\":\n return `translateX(10px)`\n case \"right-start\":\n case \"right\":\n case \"right-end\":\n return `translateX(-10px)`\n }\n }, [placement])\n\n // Fills offset gap between anchor and panel to prevent mouseout\n const padding = useMemo(() => {\n switch (placement) {\n case \"top-start\":\n case \"top\":\n case \"top-end\":\n return { [isFlipped ? \"pt\" : \"pb\"]: offset }\n case \"bottom-start\":\n case \"bottom\":\n case \"bottom-end\":\n return { [isFlipped ? \"pb\" : \"pt\"]: offset }\n case \"left-start\":\n case \"left\":\n case \"left-end\":\n return { [isFlipped ? \"pl\" : \"pr\"]: offset }\n case \"right-start\":\n case \"right\":\n case \"right-end\":\n return { [isFlipped ? \"pr\" : \"pl\"]: offset }\n }\n }, [placement, isFlipped, offset])\n\n const pointerRef = useRef(false)\n\n const handlePointerVisible = () => {\n setVisibility({ visible: true, isPointer: true })\n }\n\n const handlePointerHide = () => {\n setVisibility({ visible: false, isPointer: false })\n }\n\n const anchorProps: React.HTMLAttributes<HTMLElement> = {\n \"aria-expanded\": visible,\n \"aria-haspopup\": true,\n ...(openDropdownByClick\n ? {\n onClick: onToggleVisibility,\n }\n : {\n onMouseEnter: handlePointerVisible,\n onMouseLeave: handlePointerHide,\n onClick: onVisible,\n }),\n }\n\n const { createPortal } = usePortal()\n\n const isPointer = !openDropdownByClick && pointerRef.current\n const focusEnabled = visible && !isPointer\n\n const [maxHeight, setMaxHeight] = useState(0)\n\n useEffect(() => {\n const calculate = debounce(() => {\n if (!anchorRef.current) return\n\n const nextMaxHeight = calculateMaxHeight({\n anchorRect: anchorRef.current.getBoundingClientRect(),\n position: placement,\n offset,\n })\n\n setMaxHeight(nextMaxHeight)\n }, 500)\n\n window.addEventListener(\"resize\", calculate, { passive: true })\n window.addEventListener(\"scroll\", calculate, { passive: true })\n calculate()\n\n return () => {\n window.removeEventListener(\"resize\", calculate)\n window.removeEventListener(\"scroll\", calculate)\n }\n }, [anchorRef, offset, placement, visible])\n\n return (\n <>\n {(children as any)?.({\n anchorRef: anchorRef as any,\n anchorProps,\n onVisible,\n onHide,\n setVisible,\n visible,\n })}\n\n {(visible || keepInDOM) &&\n createPortal(\n <Container\n aria-label=\"Press escape to close\"\n tabIndex={0}\n ref={panelRef as any}\n zIndex={dropdownZIndex}\n display=\"inline-block\"\n placement={placement}\n style={{\n ...(keepInDOM\n ? { visibility: visible ? \"visible\" : \"hidden\" }\n : {}),\n }}\n {...(openDropdownByClick\n ? {}\n : {\n onMouseEnter: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n })}\n maxHeight={maxHeight + offset}\n {...padding}\n {...rest}\n >\n <Panel\n transition={_transition}\n maxHeight={maxHeight}\n style={\n transition\n ? // In\n { opacity: 1, transform: \"translate(0)\" }\n : // Out\n {\n opacity: 0,\n transform: translation,\n }\n }\n >\n <FocusOn\n noIsolation\n enabled={focusEnabled}\n onClickOutside={onHide}\n >\n {typeof dropdown === \"function\"\n ? (dropdown as any)({\n onVisible,\n onHide,\n setVisible,\n visible,\n })\n : dropdown}\n </FocusOn>\n </Panel>\n </Container>\n )}\n </>\n )\n}\n\nconst Container = styled(Box)<{ placement: Position } & BoxProps>`\n position: fixed;\n text-align: left;\n outline: 0;\n`\n\nconst Panel = styled(Box)<{ transition: boolean; maxHeight: number }>`\n transition: ${({ transition }) =>\n transition ? \"opacity 250ms ease-out, transform 250ms ease-out\" : \"none\"};\n > div {\n max-height: ${({ maxHeight }) => (maxHeight ? `${maxHeight}px` : \"100vh\")};\n box-shadow: ${themeGet(\"effects.flatShadow\")};\n background-color: ${themeGet(\"colors.mono0\")};\n border: 1px solid ${themeGet(\"colors.mono10\")};\n overflow-y: auto;\n }\n`\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Dropdown.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_utils","_usePortal2","_Box","_reactFocusOn","_themeGet","_esToolkit","_excluded","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","err","return","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Dropdown","exports","_ref","_ref$placement","placement","_ref$visible","visible","_visible","keepInDOM","children","_ref$offset","offset","dropdown","_ref$dropdownZIndex","dropdownZIndex","openDropdownByClick","_ref$transition","transition","_transition","_ref$flip","flip","rest","_useState","useState","_useState2","setVisible","useEffect","timeoutRef","useRef","setVisibility","useCallback","_ref2","_ref2$isPointer","isPointer","delay","current","clearTimeout","setTimeout","activeRef","pointerRef","onVisible","onHide","onToggleVisibility","_usePosition","usePosition","position","active","padding","anchorRef","panelRef","tooltipRef","isFlipped","state","handleKeyDown","event","handleKeyUp","document","activeElement","contains","handleClick","tagName","toLowerCase","isClosableElement","element","closest","addEventListener","removeEventListener","handleMouseEnter","handleMouseLeave","_useState3","_useState4","setTransition","requestAnimationFrame","translation","useMemo","handlePointerVisible","handlePointerHide","anchorProps","onClick","onMouseEnter","onMouseLeave","_usePortal","usePortal","createPortal","focusEnabled","_useState5","_useState6","maxHeight","setMaxHeight","calculate","debounce","nextMaxHeight","calculateMaxHeight","anchorRect","getBoundingClientRect","window","passive","createElement","Fragment","Container","tabIndex","ref","zIndex","display","style","visibility","Panel","opacity","transform","FocusOn","noIsolation","enabled","onClickOutside","Pane","styled","Box","withConfig","displayName","componentId","_ref7","_ref8","concat","themeGet"],"sources":["../../../src/elements/Dropdown/Dropdown.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { calculateMaxHeight, Position, usePosition } from \"../../utils\"\nimport { usePortal } from \"../../utils/usePortal\"\nimport { Box, BoxProps } from \"../Box\"\nimport { FocusOn } from \"react-focus-on\"\nimport { themeGet } from \"@styled-system/theme-get\"\nimport { debounce } from \"es-toolkit\"\n\nexport interface DropdownActions {\n /** Call to show dropdown */\n onVisible(): void\n /** Call to hide dropdown */\n onHide(): void\n /** Manipulate visible directly */\n setVisible(value: boolean): void\n /** Pass ref to element you want the dropdown to be anchored to */\n anchorRef: React.MutableRefObject<HTMLElement>\n /** Spread props on element you want the dropdown to be anchored to */\n anchorProps: React.HTMLAttributes<HTMLElement>\n /** Whether or not the dropdown is visible */\n visible: boolean\n}\n\ntype Children =\n | React.ReactNode\n | ((dropdownActions: DropdownActions) => React.ReactNode)\n\nexport interface DropdownProps extends Omit<BoxProps, \"children\"> {\n placement?: Position\n /** Intially visible by default? */\n visible?: boolean\n /** Whether or not we should animate the dropdown transition */\n transition?: boolean\n dropdown:\n | React.ReactNode\n | ((\n dropdownActions: Pick<\n DropdownActions,\n \"onHide\" | \"onVisible\" | \"setVisible\" | \"visible\"\n >\n ) => void)\n /** Custom zIndex to assign to the dropdown panel */\n dropdownZIndex?: number\n /** Distance in pixels from anchor */\n offset?: number\n /** Should the dropdown panel always be present in the DOM (vs removed when invisible) */\n keepInDOM?: boolean\n openDropdownByClick?: boolean\n children: Children\n /** Optionally disable flipping (default: `true`) */\n flip?: boolean\n}\n\n/**\n * A `Dropdown` is a small modal-type element which is anchored, and can be\n * positioned relative to, another element and designed to be transitioned in on hover or on click.\n */\nexport const Dropdown = ({\n placement = \"bottom\",\n visible: _visible = false,\n keepInDOM,\n children,\n offset = 10,\n dropdown,\n dropdownZIndex = 1,\n openDropdownByClick,\n transition: _transition = true,\n flip = true,\n ...rest\n}: DropdownProps) => {\n const [visible, setVisible] = useState(false)\n\n // If prop updates/set initial visibility.\n useEffect(() => {\n setVisible(_visible)\n }, [_visible])\n\n const timeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n\n // We need to keep the pointer state in sync with the visibility state, else we\n // wind up with focus isolation out of sync.\n const setVisibility = useCallback(\n ({\n visible,\n isPointer = false,\n }: {\n visible: boolean\n isPointer?: boolean\n }) => {\n const delay = _transition ? (visible ? 50 : 150) : visible ? 1 : 50\n\n timeoutRef.current && clearTimeout(timeoutRef.current)\n timeoutRef.current = setTimeout(() => {\n if (!visible && activeRef.current) return\n pointerRef.current = isPointer\n setVisible(visible)\n }, delay)\n },\n [_transition]\n )\n\n const onVisible = () => {\n setVisibility({ visible: true })\n }\n\n const onHide = useCallback(() => {\n setVisibility({ visible: false })\n }, [setVisibility])\n\n const onToggleVisibility = () => {\n if (visible) {\n return onHide()\n }\n\n onVisible()\n }\n\n const {\n anchorRef,\n tooltipRef: panelRef,\n state: { isFlipped },\n } = usePosition({\n position: placement,\n offset: 0,\n active: visible,\n flip,\n padding: offset,\n })\n\n useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n onHide()\n }\n }\n\n // Close dropdown when focus leaves element\n const handleKeyUp = (event: KeyboardEvent) => {\n if (!panelRef.current) return\n\n if (\n event.key === \"Tab\" &&\n !(\n panelRef.current === document.activeElement ||\n panelRef.current.contains(document.activeElement)\n )\n ) {\n onHide()\n }\n }\n\n const handleClick = (event: MouseEvent) => {\n if (!panelRef.current || !openDropdownByClick) return\n const target = event.target as Element\n const tagName = target.tagName.toLowerCase()\n let isClosableElement = tagName === \"a\"\n let element: Element | null = target\n\n // Find parent link element\n if (!isClosableElement) {\n element = target.closest(\"a\")\n isClosableElement = !!element\n }\n\n if (isClosableElement && element && panelRef.current.contains(element)) {\n onHide()\n }\n }\n\n document.addEventListener(\"keydown\", handleKeyDown)\n document.addEventListener(\"keyup\", handleKeyUp)\n document.addEventListener(\"click\", handleClick)\n\n return () => {\n document.removeEventListener(\"keydown\", handleKeyDown)\n document.removeEventListener(\"keyup\", handleKeyUp)\n document.removeEventListener(\"click\", handleClick)\n }\n }, [panelRef, openDropdownByClick, onHide])\n\n const activeRef = useRef(false)\n\n const handleMouseEnter = () => {\n activeRef.current = true\n }\n\n const handleMouseLeave = () => {\n activeRef.current = false\n onHide()\n }\n\n const [transition, setTransition] = useState(false)\n\n // Wait for next tick so that animation runs\n useEffect(() => {\n requestAnimationFrame(() => {\n setTransition(visible)\n })\n }, [visible])\n\n const translation = useMemo(() => {\n switch (placement) {\n case \"top-start\":\n case \"top\":\n case \"top-end\":\n return `translateY(10px)`\n case \"bottom-start\":\n case \"bottom\":\n case \"bottom-end\":\n return `translateY(-10px)`\n case \"left-start\":\n case \"left\":\n case \"left-end\":\n return `translateX(10px)`\n case \"right-start\":\n case \"right\":\n case \"right-end\":\n return `translateX(-10px)`\n }\n }, [placement])\n\n // Fills offset gap between anchor and panel to prevent mouseout\n const padding = useMemo(() => {\n switch (placement) {\n case \"top-start\":\n case \"top\":\n case \"top-end\":\n return { [isFlipped ? \"pt\" : \"pb\"]: offset }\n case \"bottom-start\":\n case \"bottom\":\n case \"bottom-end\":\n return { [isFlipped ? \"pb\" : \"pt\"]: offset }\n case \"left-start\":\n case \"left\":\n case \"left-end\":\n return { [isFlipped ? \"pl\" : \"pr\"]: offset }\n case \"right-start\":\n case \"right\":\n case \"right-end\":\n return { [isFlipped ? \"pr\" : \"pl\"]: offset }\n }\n }, [placement, isFlipped, offset])\n\n const pointerRef = useRef(false)\n\n const handlePointerVisible = () => {\n setVisibility({ visible: true, isPointer: true })\n }\n\n const handlePointerHide = () => {\n setVisibility({ visible: false, isPointer: false })\n }\n\n const anchorProps: React.HTMLAttributes<HTMLElement> = {\n \"aria-expanded\": visible,\n \"aria-haspopup\": true,\n ...(openDropdownByClick\n ? {\n onClick: onToggleVisibility,\n }\n : {\n onMouseEnter: handlePointerVisible,\n onMouseLeave: handlePointerHide,\n onClick: onVisible,\n }),\n }\n\n const { createPortal } = usePortal()\n\n const isPointer = !openDropdownByClick && pointerRef.current\n const focusEnabled = visible && !isPointer\n\n const [maxHeight, setMaxHeight] = useState(0)\n\n useEffect(() => {\n const calculate = debounce(() => {\n if (!anchorRef.current) return\n\n const nextMaxHeight = calculateMaxHeight({\n anchorRect: anchorRef.current.getBoundingClientRect(),\n position: placement,\n offset,\n })\n\n setMaxHeight(nextMaxHeight)\n }, 500)\n\n window.addEventListener(\"resize\", calculate, { passive: true })\n window.addEventListener(\"scroll\", calculate, { passive: true })\n calculate()\n\n return () => {\n window.removeEventListener(\"resize\", calculate)\n window.removeEventListener(\"scroll\", calculate)\n }\n }, [anchorRef, offset, placement, visible])\n\n return (\n <>\n {(children as any)?.({\n anchorRef: anchorRef as any,\n anchorProps,\n onVisible,\n onHide,\n setVisible,\n visible,\n })}\n\n {(visible || keepInDOM) &&\n createPortal(\n <Container\n aria-label=\"Press escape to close\"\n tabIndex={0}\n ref={panelRef as any}\n zIndex={dropdownZIndex}\n display=\"inline-block\"\n placement={placement}\n style={{\n ...(keepInDOM\n ? { visibility: visible ? \"visible\" : \"hidden\" }\n : {}),\n }}\n {...(openDropdownByClick\n ? {}\n : {\n onMouseEnter: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n })}\n maxHeight={maxHeight + offset}\n {...padding}\n {...rest}\n >\n <Panel\n transition={_transition}\n maxHeight={maxHeight}\n style={\n transition\n ? // In\n { opacity: 1, transform: \"translate(0)\" }\n : // Out\n {\n opacity: 0,\n transform: translation,\n }\n }\n >\n <FocusOn\n noIsolation\n enabled={focusEnabled}\n onClickOutside={onHide}\n >\n <Pane maxHeight={maxHeight}>\n {typeof dropdown === \"function\"\n ? (dropdown as any)({\n onVisible,\n onHide,\n setVisible,\n visible,\n })\n : dropdown}\n </Pane>\n </FocusOn>\n </Panel>\n </Container>\n )}\n </>\n )\n}\n\nconst Container = styled(Box)<{ placement: Position } & BoxProps>`\n position: fixed;\n text-align: left;\n outline: 0;\n`\n\nconst Panel = styled(Box)<{ transition: boolean; maxHeight: number }>`\n transition: ${({ transition }) =>\n transition ? \"opacity 250ms ease-out, transform 250ms ease-out\" : \"none\"};\n`\n\nconst Pane = styled(Box)`\n > div {\n max-height: ${({ maxHeight }) => (maxHeight ? `${maxHeight}px` : \"100vh\")};\n box-shadow: ${themeGet(\"effects.flatShadow\")};\n background-color: ${themeGet(\"colors.mono0\")};\n border: 1px solid ${themeGet(\"colors.mono10\")};\n overflow-y: auto;\n }\n`\n"],"mappings":"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"}
|
|
@@ -116,7 +116,7 @@ var ChangeDimensions = exports.ChangeDimensions = function ChangeDimensions() {
|
|
|
116
116
|
}, 1000);
|
|
117
117
|
}, []);
|
|
118
118
|
return /*#__PURE__*/_react.default.createElement(_Dropdown.Dropdown, {
|
|
119
|
-
placement: "
|
|
119
|
+
placement: "bottom",
|
|
120
120
|
dropdown: /*#__PURE__*/_react.default.createElement(_Box.Box, {
|
|
121
121
|
height: height,
|
|
122
122
|
width: 300
|
|
@@ -152,7 +152,8 @@ var FocusOrder = exports.FocusOrder = function FocusOrder() {
|
|
|
152
152
|
px: 2
|
|
153
153
|
}, "Third"));
|
|
154
154
|
return /*#__PURE__*/_react.default.createElement(_Flex.Flex, null, /*#__PURE__*/_react.default.createElement(_Dropdown.Dropdown, {
|
|
155
|
-
dropdown: dropdown
|
|
155
|
+
dropdown: dropdown,
|
|
156
|
+
placement: "bottom"
|
|
156
157
|
}, function (_ref4) {
|
|
157
158
|
var anchorRef = _ref4.anchorRef,
|
|
158
159
|
anchorProps = _ref4.anchorProps;
|
|
@@ -163,7 +164,8 @@ var FocusOrder = exports.FocusOrder = function FocusOrder() {
|
|
|
163
164
|
mr: 1
|
|
164
165
|
}, anchorProps), "First Parent");
|
|
165
166
|
}), /*#__PURE__*/_react.default.createElement(_Dropdown.Dropdown, {
|
|
166
|
-
dropdown: dropdown
|
|
167
|
+
dropdown: dropdown,
|
|
168
|
+
placement: "bottom"
|
|
167
169
|
}, function (_ref5) {
|
|
168
170
|
var anchorRef = _ref5.anchorRef,
|
|
169
171
|
anchorProps = _ref5.anchorProps;
|
|
@@ -311,7 +313,8 @@ var DisabledTransition = exports.DisabledTransition = function DisabledTransitio
|
|
|
311
313
|
return /*#__PURE__*/_react.default.createElement(_Dropdown.Dropdown, {
|
|
312
314
|
key: num,
|
|
313
315
|
dropdown: dropdown,
|
|
314
|
-
transition: false
|
|
316
|
+
transition: false,
|
|
317
|
+
placement: "bottom"
|
|
315
318
|
}, function (_ref9) {
|
|
316
319
|
var anchorRef = _ref9.anchorRef,
|
|
317
320
|
anchorProps = _ref9.anchorProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.story.js","names":["_react","_interopRequireWildcard","require","_storybookStates","_utils","_Box","_Button","_Text","_Dropdown","_Clickable","_Flex","_Pill","_ChevronSmallDownIcon","_interopRequireDefault","_Spacer","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_extends","assign","bind","target","arguments","source","apply","_default","exports","title","Default","createElement","States","states","keys","POSITION","map","placement","Dropdown","visible","dropdown","Box","width","p","Text","as","display","variant","href","_ref","anchorRef","anchorProps","textAlign","Button","ref","size","displayName","story","parameters","chromatic","disable","KeepInDOM","keepInDOM","_ref2","ChangeDimensions","_useState","useState","_useState2","height","setHeight","useEffect","setInterval","Math","floor","random","_ref3","FocusOrder","Clickable","py","px","Flex","_ref4","mr","_ref5","OpenDropdownByClick","openDropdownByClick","_ref6","FilterExample","_ref7","Pill","Icon","ChevronSmallDownIcon","iconPosition","OverflowingContent","fill","_","_useState3","_useState4","setPlacement","Fragment","bg","Spacer","y","mb","selected","onClick","alignItems","justifyContent","_ref8","DisabledTransition","num","concat","transition","_ref9"],"sources":["../../../src/elements/Dropdown/Dropdown.story.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\"\nimport { States } from \"storybook-states\"\nimport { Position, POSITION } from \"../../utils\"\nimport { Box } from \"../Box\"\nimport { Button } from \"../Button\"\nimport { Text } from \"../Text\"\nimport { Dropdown, DropdownProps } from \"./Dropdown\"\nimport { Clickable } from \"../Clickable\"\nimport { Flex } from \"../Flex\"\nimport { Pill } from \"../Pill\"\nimport ChevronSmallDownIcon from \"@artsy/icons/ChevronSmallDownIcon\"\nimport { Spacer } from \"../Spacer\"\n\nexport default {\n title: \"Components/Dropdown\",\n}\n\nexport const Default = () => {\n return (\n <States<Partial<DropdownProps>>\n states={Object.keys(POSITION).map((placement) => ({\n placement: placement as Position,\n }))}\n >\n <Dropdown\n placement=\"bottom\"\n visible\n dropdown={\n <Box width={300} p={2}>\n <Text as=\"a\" display=\"block\" variant=\"sm\" href=\"#\">\n One\n </Text>\n\n <Text as=\"a\" display=\"block\" variant=\"sm\" href=\"#\">\n Two\n </Text>\n\n <Text as=\"a\" display=\"block\" variant=\"sm\" href=\"#\">\n Three\n </Text>\n </Box>\n }\n >\n {({ anchorRef, anchorProps }) => {\n return (\n <Box textAlign=\"center\">\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Hover to display dropdown\n </Button>\n </Box>\n )\n }}\n </Dropdown>\n </States>\n )\n}\n\nDefault.story = {\n parameters: { chromatic: { disable: true } },\n}\n\nexport const KeepInDOM = () => {\n return (\n <Dropdown\n placement=\"bottom\"\n keepInDOM\n dropdown={\n <Text p={2} variant=\"xs\">\n Content remains in DOM\n </Text>\n }\n >\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Hover to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n )\n}\n\nKeepInDOM.story = {\n parameters: { chromatic: { disable: true } },\n}\n\nexport const ChangeDimensions = () => {\n const [height, setHeight] = useState(10)\n\n useEffect(() => {\n setInterval(() => {\n setHeight(Math.floor(Math.random() * 100))\n }, 1000)\n }, [])\n\n return (\n <Dropdown placement=\"top\" dropdown={<Box height={height} width={300} />}>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Hover to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n )\n}\n\nexport const FocusOrder = () => {\n const dropdown = (\n <Text variant=\"sm-display\">\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n First\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Second\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Third\n </Clickable>\n </Text>\n )\n\n return (\n <Flex>\n <Dropdown dropdown={dropdown}>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n mr={1}\n {...anchorProps}\n >\n First Parent\n </Button>\n )\n }}\n </Dropdown>\n\n <Dropdown dropdown={dropdown}>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Second Parent\n </Button>\n )\n }}\n </Dropdown>\n </Flex>\n )\n}\n\nexport const OpenDropdownByClick = () => {\n const dropdown = (\n <Text variant=\"sm-display\">\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n First\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Second\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Third\n </Clickable>\n </Text>\n )\n\n return (\n <Flex>\n <Dropdown dropdown={dropdown} openDropdownByClick>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n mr={1}\n {...anchorProps}\n >\n Click to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n </Flex>\n )\n}\n\nexport const FilterExample = () => {\n return (\n <Dropdown\n dropdown={\n <Box p={1}>\n <Text variant=\"xs\">Example content</Text>\n </Box>\n }\n placement=\"bottom-start\"\n openDropdownByClick\n >\n {({ anchorRef, anchorProps }) => {\n return (\n <Pill\n ref={anchorRef as any}\n Icon={ChevronSmallDownIcon}\n iconPosition=\"right\"\n {...anchorProps}\n >\n Example\n </Pill>\n )\n }}\n </Dropdown>\n )\n}\n\nexport const OverflowingContent = () => {\n const dropdown = (\n <Text variant=\"sm-display\">\n {new Array(100).fill(null).map((_, i) => (\n <Clickable key={i} display=\"block\" width=\"100%\" py={1} px={2}>\n Item {i}\n </Clickable>\n ))}\n </Text>\n )\n\n const [placement, setPlacement] = useState<Position>(\"bottom\")\n\n return (\n <>\n <Box height={200} bg=\"mono10\" />\n\n <Spacer y={2} />\n\n {[\"bottom\", \"top\", \"left\", \"right\"].map((p) => {\n return (\n <Pill\n key={p}\n size=\"small\"\n mr={1}\n mb={1}\n selected={placement === p}\n onClick={() => setPlacement(p as Position)}\n >\n {p}\n </Pill>\n )\n })}\n\n <Spacer y={2} />\n\n <Flex alignItems=\"center\" justifyContent=\"center\">\n <Dropdown dropdown={dropdown} openDropdownByClick placement={placement}>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Click to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n </Flex>\n\n <Spacer y={2} />\n\n <Box height={5000} bg=\"mono10\" />\n </>\n )\n}\n\nexport const DisabledTransition = () => {\n return (\n <Flex>\n {[1, 2, 3].map((num) => {\n const dropdown = (\n <Text variant=\"sm-display\" width=\"100vw\" bg={`color-b${num}00`} p={2}>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Panel {num}: First Item\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Panel {num}: Second Item\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Panel {num}: Third Item\n </Clickable>\n </Text>\n )\n\n return (\n <Dropdown key={num} dropdown={dropdown} transition={false}>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n mr={1}\n {...anchorProps}\n >\n Hover for dropdown {num}\n </Button>\n )\n }}\n </Dropdown>\n )\n })}\n </Flex>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Dropdown.story.js","names":["_react","_interopRequireWildcard","require","_storybookStates","_utils","_Box","_Button","_Text","_Dropdown","_Clickable","_Flex","_Pill","_ChevronSmallDownIcon","_interopRequireDefault","_Spacer","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","_extends","assign","bind","target","arguments","source","apply","_default","exports","title","Default","createElement","States","states","keys","POSITION","map","placement","Dropdown","visible","dropdown","Box","width","p","Text","as","display","variant","href","_ref","anchorRef","anchorProps","textAlign","Button","ref","size","displayName","story","parameters","chromatic","disable","KeepInDOM","keepInDOM","_ref2","ChangeDimensions","_useState","useState","_useState2","height","setHeight","useEffect","setInterval","Math","floor","random","_ref3","FocusOrder","Clickable","py","px","Flex","_ref4","mr","_ref5","OpenDropdownByClick","openDropdownByClick","_ref6","FilterExample","_ref7","Pill","Icon","ChevronSmallDownIcon","iconPosition","OverflowingContent","fill","_","_useState3","_useState4","setPlacement","Fragment","bg","Spacer","y","mb","selected","onClick","alignItems","justifyContent","_ref8","DisabledTransition","num","concat","transition","_ref9"],"sources":["../../../src/elements/Dropdown/Dropdown.story.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\"\nimport { States } from \"storybook-states\"\nimport { Position, POSITION } from \"../../utils\"\nimport { Box } from \"../Box\"\nimport { Button } from \"../Button\"\nimport { Text } from \"../Text\"\nimport { Dropdown, DropdownProps } from \"./Dropdown\"\nimport { Clickable } from \"../Clickable\"\nimport { Flex } from \"../Flex\"\nimport { Pill } from \"../Pill\"\nimport ChevronSmallDownIcon from \"@artsy/icons/ChevronSmallDownIcon\"\nimport { Spacer } from \"../Spacer\"\n\nexport default {\n title: \"Components/Dropdown\",\n}\n\nexport const Default = () => {\n return (\n <States<Partial<DropdownProps>>\n states={Object.keys(POSITION).map((placement) => ({\n placement: placement as Position,\n }))}\n >\n <Dropdown\n placement=\"bottom\"\n visible\n dropdown={\n <Box width={300} p={2}>\n <Text as=\"a\" display=\"block\" variant=\"sm\" href=\"#\">\n One\n </Text>\n\n <Text as=\"a\" display=\"block\" variant=\"sm\" href=\"#\">\n Two\n </Text>\n\n <Text as=\"a\" display=\"block\" variant=\"sm\" href=\"#\">\n Three\n </Text>\n </Box>\n }\n >\n {({ anchorRef, anchorProps }) => {\n return (\n <Box textAlign=\"center\">\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Hover to display dropdown\n </Button>\n </Box>\n )\n }}\n </Dropdown>\n </States>\n )\n}\n\nDefault.story = {\n parameters: { chromatic: { disable: true } },\n}\n\nexport const KeepInDOM = () => {\n return (\n <Dropdown\n placement=\"bottom\"\n keepInDOM\n dropdown={\n <Text p={2} variant=\"xs\">\n Content remains in DOM\n </Text>\n }\n >\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Hover to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n )\n}\n\nKeepInDOM.story = {\n parameters: { chromatic: { disable: true } },\n}\n\nexport const ChangeDimensions = () => {\n const [height, setHeight] = useState(10)\n\n useEffect(() => {\n setInterval(() => {\n setHeight(Math.floor(Math.random() * 100))\n }, 1000)\n }, [])\n\n return (\n <Dropdown placement=\"bottom\" dropdown={<Box height={height} width={300} />}>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Hover to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n )\n}\n\nexport const FocusOrder = () => {\n const dropdown = (\n <Text variant=\"sm-display\">\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n First\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Second\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Third\n </Clickable>\n </Text>\n )\n\n return (\n <Flex>\n <Dropdown dropdown={dropdown} placement=\"bottom\">\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n mr={1}\n {...anchorProps}\n >\n First Parent\n </Button>\n )\n }}\n </Dropdown>\n\n <Dropdown dropdown={dropdown} placement=\"bottom\">\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Second Parent\n </Button>\n )\n }}\n </Dropdown>\n </Flex>\n )\n}\n\nexport const OpenDropdownByClick = () => {\n const dropdown = (\n <Text variant=\"sm-display\">\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n First\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Second\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Third\n </Clickable>\n </Text>\n )\n\n return (\n <Flex>\n <Dropdown dropdown={dropdown} openDropdownByClick>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n mr={1}\n {...anchorProps}\n >\n Click to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n </Flex>\n )\n}\n\nexport const FilterExample = () => {\n return (\n <Dropdown\n dropdown={\n <Box p={1}>\n <Text variant=\"xs\">Example content</Text>\n </Box>\n }\n placement=\"bottom-start\"\n openDropdownByClick\n >\n {({ anchorRef, anchorProps }) => {\n return (\n <Pill\n ref={anchorRef as any}\n Icon={ChevronSmallDownIcon}\n iconPosition=\"right\"\n {...anchorProps}\n >\n Example\n </Pill>\n )\n }}\n </Dropdown>\n )\n}\n\nexport const OverflowingContent = () => {\n const dropdown = (\n <Text variant=\"sm-display\">\n {new Array(100).fill(null).map((_, i) => (\n <Clickable key={i} display=\"block\" width=\"100%\" py={1} px={2}>\n Item {i}\n </Clickable>\n ))}\n </Text>\n )\n\n const [placement, setPlacement] = useState<Position>(\"bottom\")\n\n return (\n <>\n <Box height={200} bg=\"mono10\" />\n\n <Spacer y={2} />\n\n {[\"bottom\", \"top\", \"left\", \"right\"].map((p) => {\n return (\n <Pill\n key={p}\n size=\"small\"\n mr={1}\n mb={1}\n selected={placement === p}\n onClick={() => setPlacement(p as Position)}\n >\n {p}\n </Pill>\n )\n })}\n\n <Spacer y={2} />\n\n <Flex alignItems=\"center\" justifyContent=\"center\">\n <Dropdown dropdown={dropdown} openDropdownByClick placement={placement}>\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n {...anchorProps}\n >\n Click to display dropdown\n </Button>\n )\n }}\n </Dropdown>\n </Flex>\n\n <Spacer y={2} />\n\n <Box height={5000} bg=\"mono10\" />\n </>\n )\n}\n\nexport const DisabledTransition = () => {\n return (\n <Flex>\n {[1, 2, 3].map((num) => {\n const dropdown = (\n <Text variant=\"sm-display\" width=\"100vw\" bg={`color-b${num}00`} p={2}>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Panel {num}: First Item\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Panel {num}: Second Item\n </Clickable>\n <Clickable display=\"block\" width=\"100%\" py={1} px={2}>\n Panel {num}: Third Item\n </Clickable>\n </Text>\n )\n\n return (\n <Dropdown\n key={num}\n dropdown={dropdown}\n transition={false}\n placement=\"bottom\"\n >\n {({ anchorRef, anchorProps }) => {\n return (\n <Button\n ref={anchorRef}\n variant=\"secondaryBlack\"\n size=\"small\"\n mr={1}\n {...anchorProps}\n >\n Hover for dropdown {num}\n </Button>\n )\n }}\n </Dropdown>\n )\n })}\n </Flex>\n )\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResponsiveBox.story.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Box","_Text","_Image","_ResponsiveBox","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","Measure","props","_useState","useState","width","height","_useState2","dimensions","setDimensions","ref","useRef","check","current","offsetWidth","offsetHeight","useEffect","window","addEventListener","removeEventListener","createElement","Box","p","Text","variant","color","aspectWidth","aspectHeight","Fragment","maxHeight","maxWidth","join","displayName","EXAMPLE_ASPECTS","EXAMPLE_MAXIMUMS","_default","exports","title","Basic","map","aspect","maximum","j","ResponsiveBox","bg","my","MaxWidth100","story","Masonry","styled","withConfig","componentId","ColumnsWithResponsiveImages","fill","_","orientation","mb","Image","lazyLoad","src","concat","srcSet"],"sources":["../../../src/elements/ResponsiveBox/ResponsiveBox.story.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { Box } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Image } from \"../Image\"\nimport {\n ResponsiveBox,\n ResponsiveBoxAspectDimensions,\n ResponsiveBoxMaxDimensions,\n ResponsiveBoxProps,\n} from \"./ResponsiveBox\"\n\nconst Measure: React.FC<React.PropsWithChildren<ResponsiveBoxProps>> = (\n props\n) => {\n const [dimensions, setDimensions] = useState({ width: 0, height: 0 })\n\n const ref = useRef<null | HTMLDivElement>(null)\n\n const check = () => {\n if (!ref.current) return\n setDimensions({\n width: ref.current!.offsetWidth,\n height: ref.current!.offsetHeight,\n })\n }\n\n useEffect(() => {\n check()\n window.addEventListener(\"resize\", check)\n return () => {\n window.removeEventListener(\"resize\", check)\n }\n })\n\n return (\n <Box width=\"100%\" height=\"100%\" p={1} ref={ref as any}>\n <Text variant=\"xs\" color=\"mono0\">\n {props.aspectWidth}:{props.aspectHeight}\n <br />\n {(\"maxWidth\" in props || \"maxHeight\" in props) && (\n <>\n with max dimensions of{\" \"}\n {[\n (props as any).maxHeight || 0,\n (props as any).maxWidth || \"_\",\n ].join(\" × \")}\n <br />\n </>\n )}\n Renders @ {dimensions.width} × {dimensions.height}\n </Text>\n </Box>\n )\n}\n\nconst EXAMPLE_ASPECTS: ResponsiveBoxAspectDimensions[] = [\n { aspectWidth: 300, aspectHeight: 400 },\n { aspectWidth: 400, aspectHeight: 300 },\n]\n\nconst EXAMPLE_MAXIMUMS: ResponsiveBoxMaxDimensions[] = [\n { maxHeight: 200, maxWidth: 200 },\n { maxHeight: 400, maxWidth: 400 },\n { maxHeight: 400 },\n { maxWidth: 400 },\n { maxHeight: 600, maxWidth: 600 },\n { maxHeight: 100, maxWidth: 600 },\n { maxHeight: 1024, maxWidth: 1024 },\n]\n\nexport default { title: \"Components/ResponsiveBox\" }\n\nexport const Basic = () => {\n return (\n <>\n {EXAMPLE_ASPECTS.map((aspect, i) =>\n EXAMPLE_MAXIMUMS.map((maximum, j) => {\n return (\n <ResponsiveBox\n key={[i, j].join(\".\")}\n {...aspect}\n {...maximum}\n bg=\"brand\"\n my={2}\n >\n <Measure {...aspect} {...maximum} />\n </ResponsiveBox>\n )\n })\n )}\n </>\n )\n}\n\nexport const MaxWidth100 = () => {\n return (\n <>\n {EXAMPLE_ASPECTS.map((aspect, i) => {\n return (\n <ResponsiveBox key={i} {...aspect} maxWidth=\"100%\" bg=\"brand\" my={2}>\n <Measure {...aspect} maxWidth=\"100%\" />\n </ResponsiveBox>\n )\n })}\n </>\n )\n}\n\nMaxWidth100.story = {\n name: \"maxWidth: 100%\",\n}\n\nconst Masonry = styled(Box)`\n column-count: 3;\n\n * {\n break-inside: avoid;\n }\n`\n\nexport const ColumnsWithResponsiveImages = () => {\n return (\n <Masonry>\n {new Array(12).fill(0).map((_, i) => {\n const orientation = i % 3 === 0 ? \"portrait\" : \"landscape\"\n const width = orientation === \"portrait\" ? 200 : 300\n const height = orientation === \"portrait\" ? 300 : 200\n\n return (\n // Simply being wrapped in an extra `Box` causes a image loading bug in Chrome\n <Box key={i}>\n <ResponsiveBox\n aspectWidth={width}\n aspectHeight={height}\n maxWidth=\"100%\"\n bg=\"mono10\"\n mb={2}\n >\n <Image\n lazyLoad\n width=\"100%\"\n height=\"100%\"\n src={`https://picsum.photos/seed/${i}/${width}/${height}`}\n srcSet={`https://picsum.photos/seed/${i}/${width}/${height} 1x, https://picsum.photos/seed/${i}/${\n width * 2\n }/${height * 2} 2x`}\n />\n </ResponsiveBox>\n </Box>\n )\n })}\n </Masonry>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ResponsiveBox.story.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_Box","_Text","_Image","_ResponsiveBox","obj","__esModule","default","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","return","isArray","Measure","props","_useState","useState","width","height","_useState2","dimensions","setDimensions","ref","useRef","check","current","offsetWidth","offsetHeight","useEffect","requestAnimationFrame","window","addEventListener","removeEventListener","createElement","Box","p","Text","variant","color","aspectWidth","aspectHeight","Fragment","maxHeight","maxWidth","join","displayName","EXAMPLE_ASPECTS","EXAMPLE_MAXIMUMS","_default","exports","title","Basic","map","aspect","maximum","j","ResponsiveBox","bg","my","MaxWidth100","story","Masonry","styled","withConfig","componentId","ColumnsWithResponsiveImages","fill","_","orientation","mb","Image","lazyLoad","src","concat","srcSet"],"sources":["../../../src/elements/ResponsiveBox/ResponsiveBox.story.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { Box } from \"../Box\"\nimport { Text } from \"../Text\"\nimport { Image } from \"../Image\"\nimport {\n ResponsiveBox,\n ResponsiveBoxAspectDimensions,\n ResponsiveBoxMaxDimensions,\n ResponsiveBoxProps,\n} from \"./ResponsiveBox\"\n\nconst Measure: React.FC<React.PropsWithChildren<ResponsiveBoxProps>> = (\n props\n) => {\n const [dimensions, setDimensions] = useState({ width: 0, height: 0 })\n\n const ref = useRef<null | HTMLDivElement>(null)\n\n const check = () => {\n if (!ref.current) return\n setDimensions({\n width: ref.current!.offsetWidth,\n height: ref.current!.offsetHeight,\n })\n }\n\n useEffect(() => {\n requestAnimationFrame(check)\n window.addEventListener(\"resize\", check)\n return () => {\n window.removeEventListener(\"resize\", check)\n }\n })\n\n return (\n <Box width=\"100%\" height=\"100%\" p={1} ref={ref as any}>\n <Text variant=\"xs\" color=\"mono0\">\n {props.aspectWidth}:{props.aspectHeight}\n <br />\n {(\"maxWidth\" in props || \"maxHeight\" in props) && (\n <>\n with max dimensions of{\" \"}\n {[\n (props as any).maxHeight || 0,\n (props as any).maxWidth || \"_\",\n ].join(\" × \")}\n <br />\n </>\n )}\n Renders @ {dimensions.width} × {dimensions.height}\n </Text>\n </Box>\n )\n}\n\nconst EXAMPLE_ASPECTS: ResponsiveBoxAspectDimensions[] = [\n { aspectWidth: 300, aspectHeight: 400 },\n { aspectWidth: 400, aspectHeight: 300 },\n]\n\nconst EXAMPLE_MAXIMUMS: ResponsiveBoxMaxDimensions[] = [\n { maxHeight: 200, maxWidth: 200 },\n { maxHeight: 400, maxWidth: 400 },\n { maxHeight: 400 },\n { maxWidth: 400 },\n { maxHeight: 600, maxWidth: 600 },\n { maxHeight: 100, maxWidth: 600 },\n { maxHeight: 1024, maxWidth: 1024 },\n]\n\nexport default { title: \"Components/ResponsiveBox\" }\n\nexport const Basic = () => {\n return (\n <>\n {EXAMPLE_ASPECTS.map((aspect, i) =>\n EXAMPLE_MAXIMUMS.map((maximum, j) => {\n return (\n <ResponsiveBox\n key={[i, j].join(\".\")}\n {...aspect}\n {...maximum}\n bg=\"brand\"\n my={2}\n >\n <Measure {...aspect} {...maximum} />\n </ResponsiveBox>\n )\n })\n )}\n </>\n )\n}\n\nexport const MaxWidth100 = () => {\n return (\n <>\n {EXAMPLE_ASPECTS.map((aspect, i) => {\n return (\n <ResponsiveBox key={i} {...aspect} maxWidth=\"100%\" bg=\"brand\" my={2}>\n <Measure {...aspect} maxWidth=\"100%\" />\n </ResponsiveBox>\n )\n })}\n </>\n )\n}\n\nMaxWidth100.story = {\n name: \"maxWidth: 100%\",\n}\n\nconst Masonry = styled(Box)`\n column-count: 3;\n\n * {\n break-inside: avoid;\n }\n`\n\nexport const ColumnsWithResponsiveImages = () => {\n return (\n <Masonry>\n {new Array(12).fill(0).map((_, i) => {\n const orientation = i % 3 === 0 ? \"portrait\" : \"landscape\"\n const width = orientation === \"portrait\" ? 200 : 300\n const height = orientation === \"portrait\" ? 300 : 200\n\n return (\n // Simply being wrapped in an extra `Box` causes a image loading bug in Chrome\n <Box key={i}>\n <ResponsiveBox\n aspectWidth={width}\n aspectHeight={height}\n maxWidth=\"100%\"\n bg=\"mono10\"\n mb={2}\n >\n <Image\n lazyLoad\n width=\"100%\"\n height=\"100%\"\n src={`https://picsum.photos/seed/${i}/${width}/${height}`}\n srcSet={`https://picsum.photos/seed/${i}/${width}/${height} 1x, https://picsum.photos/seed/${i}/${\n width * 2\n }/${height * 2} 2x`}\n />\n </ResponsiveBox>\n </Box>\n )\n })}\n </Masonry>\n )\n}\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@artsy/palette",
|
|
3
|
-
"version": "42.0.
|
|
3
|
+
"version": "42.0.2",
|
|
4
4
|
"description": "Design system library for react components",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"publishConfig": {
|
|
@@ -195,5 +195,5 @@
|
|
|
195
195
|
"url": "http://localhost"
|
|
196
196
|
}
|
|
197
197
|
},
|
|
198
|
-
"gitHead": "
|
|
198
|
+
"gitHead": "73fcfc072cdf9f16f4ca08546c13357d94d24e37"
|
|
199
199
|
}
|