@artsy/palette 40.3.0 → 40.5.0-canary.1420.31535.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/Theme.d.ts +83 -0
- package/dist/elements/AutocompleteInput/AutocompleteInput.d.ts +37 -0
- package/dist/elements/AutocompleteInput/AutocompleteInput.story.d.ts +9 -0
- package/dist/elements/AutocompleteInput/AutocompleteInputOption.d.ts +6 -0
- package/dist/elements/AutocompleteInput/AutocompleteInputOptionLabel.d.ts +6 -0
- package/dist/elements/AutocompleteInput/index.d.ts +3 -0
- package/dist/elements/Avatar/Avatar.d.ts +11 -0
- package/dist/elements/Avatar/Avatar.story.d.ts +8 -0
- package/dist/elements/Avatar/index.d.ts +1 -0
- package/dist/elements/Banner/Banner.d.ts +32 -0
- package/dist/elements/Banner/Banner.story.d.ts +6 -0
- package/dist/elements/Banner/index.d.ts +1 -0
- package/dist/elements/BaseTabs/BaseTab.d.ts +31 -0
- package/dist/elements/BaseTabs/BaseTabs.d.ts +13 -0
- package/dist/elements/BaseTabs/BaseTabs.story.d.ts +39 -0
- package/dist/elements/BaseTabs/index.d.ts +2 -0
- package/dist/elements/BaseTabs/tokens.d.ts +6 -0
- package/dist/elements/BorderBox/BorderBox.d.ts +11 -0
- package/dist/elements/BorderBox/BorderBoxBase.d.ts +12 -0
- package/dist/elements/BorderBox/index.d.ts +2 -0
- package/dist/elements/BorderedRadio/BorderedRadio.d.ts +5 -0
- package/dist/elements/BorderedRadio/BorderedRadio.story.d.ts +6 -0
- package/dist/elements/BorderedRadio/index.d.ts +1 -0
- package/dist/elements/Box/Box.d.ts +16 -0
- package/dist/elements/Box/Box.story.d.ts +6 -0
- package/dist/elements/Box/index.d.ts +1 -0
- package/dist/elements/Breadcrumbs/Breadcrumbs.d.ts +11 -0
- package/dist/elements/Breadcrumbs/Breadcrumbs.story.d.ts +6 -0
- package/dist/elements/Breadcrumbs/index.d.ts +1 -0
- package/dist/elements/Button/Button.d.ts +35 -0
- package/dist/elements/Button/Button.story.d.ts +29 -0
- package/dist/elements/Button/index.d.ts +4 -0
- package/dist/elements/Button/tokens.d.ts +22 -0
- package/dist/elements/Button/types.d.ts +11 -0
- package/dist/elements/CSSGrid/CSSGrid.d.ts +14 -0
- package/dist/elements/CSSGrid/CSSGrid.story.d.ts +17 -0
- package/dist/elements/CSSGrid/index.d.ts +1 -0
- package/dist/elements/Cards/Card.d.ts +16 -0
- package/dist/elements/Cards/Cards.story.d.ts +25 -0
- package/dist/elements/Cards/TriptychCard.d.ts +19 -0
- package/dist/elements/Cards/index.d.ts +2 -0
- package/dist/elements/Carousel/Carousel.d.ts +45 -0
- package/dist/elements/Carousel/Carousel.story.d.ts +93 -0
- package/dist/elements/Carousel/CarouselNavigation.d.ts +22 -0
- package/dist/elements/Carousel/index.d.ts +3 -0
- package/dist/elements/Carousel/paginate.d.ts +31 -0
- package/dist/elements/CarouselBar/CarouselBar.d.ts +4 -0
- package/dist/elements/CarouselBar/CarouselBar.story.d.ts +6 -0
- package/dist/elements/CarouselBar/index.d.ts +1 -0
- package/dist/elements/Checkbox/Check.d.ts +10 -0
- package/dist/elements/Checkbox/Check.story.d.ts +6 -0
- package/dist/elements/Checkbox/Checkbox.d.ts +18 -0
- package/dist/elements/Checkbox/Checkbox.story.d.ts +8 -0
- package/dist/elements/Checkbox/index.d.ts +1 -0
- package/dist/elements/Checkbox/tokens.d.ts +30 -0
- package/dist/elements/CleanTag/CleanTag.d.ts +44 -0
- package/dist/elements/CleanTag/index.d.ts +1 -0
- package/dist/elements/Clickable/Clickable.d.ts +14 -0
- package/dist/elements/Clickable/Clickable.story.d.ts +12 -0
- package/dist/elements/Clickable/index.d.ts +1 -0
- package/dist/elements/Collapse/Collapse.d.ts +19 -0
- package/dist/elements/Collapse/index.d.ts +1 -0
- package/dist/elements/Drawer/Drawer.d.ts +8 -0
- package/dist/elements/Drawer/Drawer.story.d.ts +10 -0
- package/dist/elements/Drawer/index.d.ts +1 -0
- package/dist/elements/Dropdown/Dropdown.d.ts +40 -0
- package/dist/elements/Dropdown/Dropdown.js +4 -2
- package/dist/elements/Dropdown/Dropdown.js.map +1 -1
- package/dist/elements/Dropdown/Dropdown.story.d.ts +31 -0
- package/dist/elements/Dropdown/index.d.ts +1 -0
- package/dist/elements/EntityHeader/EntityHeader.d.ts +23 -0
- package/dist/elements/EntityHeader/EntityHeader.story.d.ts +6 -0
- package/dist/elements/EntityHeader/index.d.ts +1 -0
- package/dist/elements/Expandable/Expandable.d.ts +17 -0
- package/dist/elements/Expandable/Expandable.story.d.ts +7 -0
- package/dist/elements/Expandable/index.d.ts +1 -0
- package/dist/elements/FilterSelect/Components/FilterInput.d.ts +4 -0
- package/dist/elements/FilterSelect/Components/FilterSelectContext.d.ts +36 -0
- package/dist/elements/FilterSelect/Components/FilterSelectResultItem.d.ts +3 -0
- package/dist/elements/FilterSelect/FilterSelect.d.ts +5 -0
- package/dist/elements/FilterSelect/FilterSelect.story.d.ts +6 -0
- package/dist/elements/FilterSelect/index.d.ts +2 -0
- package/dist/elements/Flex/Flex.d.ts +12 -0
- package/dist/elements/Flex/index.d.ts +1 -0
- package/dist/elements/FullBleed/FullBleed.d.ts +10 -0
- package/dist/elements/FullBleed/FullBleed.story.d.ts +6 -0
- package/dist/elements/FullBleed/index.d.ts +1 -0
- package/dist/elements/GridColumns/GridColumns.d.ts +26 -0
- package/dist/elements/GridColumns/GridColumns.story.d.ts +23 -0
- package/dist/elements/GridColumns/calculateGridColumn.d.ts +23 -0
- package/dist/elements/GridColumns/index.d.ts +2 -0
- package/dist/elements/HTML/HTML.d.ts +20 -0
- package/dist/elements/HTML/HTML.story.d.ts +17 -0
- package/dist/elements/HTML/index.d.ts +1 -0
- package/dist/elements/HorizontalOverflow/HorizontalOverflow.d.ts +8 -0
- package/dist/elements/HorizontalOverflow/HorizontalOverflow.story.d.ts +7 -0
- package/dist/elements/HorizontalOverflow/index.d.ts +1 -0
- package/dist/elements/Image/Image.d.ts +16 -0
- package/dist/elements/Image/Image.story.d.ts +35 -0
- package/dist/elements/Image/LazyImage.d.ts +15 -0
- package/dist/elements/Image/index.d.ts +1 -0
- package/dist/elements/Input/Input.d.ts +16 -0
- package/dist/elements/Input/Input.story.d.ts +10 -0
- package/dist/elements/Input/index.d.ts +1 -0
- package/dist/elements/Input/tokens.d.ts +2 -0
- package/dist/elements/Input/types.d.ts +1 -0
- package/dist/elements/Join/Join.d.ts +26 -0
- package/dist/elements/Join/Join.story.d.ts +24 -0
- package/dist/elements/Join/index.d.ts +1 -0
- package/dist/elements/Label/Label.d.ts +22 -0
- package/dist/elements/Label/Label.story.d.ts +7 -0
- package/dist/elements/Label/index.d.ts +1 -0
- package/dist/elements/LabeledInput/LabeledInput.d.ts +8 -0
- package/dist/elements/LabeledInput/LabeledInput.story.d.ts +8 -0
- package/dist/elements/LabeledInput/index.d.ts +1 -0
- package/dist/elements/Link/Link.d.ts +13 -0
- package/dist/elements/Link/index.d.ts +1 -0
- package/dist/elements/Marquee/Marquee.d.ts +25 -0
- package/dist/elements/Marquee/Marquee.story.d.ts +6 -0
- package/dist/elements/Marquee/index.d.ts +1 -0
- package/dist/elements/Message/Message.d.ts +41 -0
- package/dist/elements/Message/Message.story.d.ts +6 -0
- package/dist/elements/Message/index.d.ts +1 -0
- package/dist/elements/Modal/ModalBase.d.ts +20 -0
- package/dist/elements/Modal/ModalBase.story.d.ts +9 -0
- package/dist/elements/Modal/index.d.ts +1 -0
- package/dist/elements/ModalDialog/ModalDialog.d.ts +8 -0
- package/dist/elements/ModalDialog/ModalDialog.story.d.ts +6 -0
- package/dist/elements/ModalDialog/ModalDialogContent.d.ts +16 -0
- package/dist/elements/ModalDialog/ModalDialogContent.story.d.ts +6 -0
- package/dist/elements/ModalDialog/index.d.ts +2 -0
- package/dist/elements/MultiSelect/MultiSelect.d.ts +19 -0
- package/dist/elements/MultiSelect/MultiSelect.story.d.ts +7 -0
- package/dist/elements/MultiSelect/index.d.ts +1 -0
- package/dist/elements/MultiSelect/tokens.d.ts +2 -0
- package/dist/elements/Pagination/Pagination.d.ts +33 -0
- package/dist/elements/Pagination/Pagination.story.d.ts +12 -0
- package/dist/elements/Pagination/index.d.ts +1 -0
- package/dist/elements/PasswordInput/PasswordInput.d.ts +6 -0
- package/dist/elements/PasswordInput/PasswordInput.story.d.ts +6 -0
- package/dist/elements/PasswordInput/index.d.ts +1 -0
- package/dist/elements/PhoneInput/PhoneInput.d.ts +31 -0
- package/dist/elements/PhoneInput/PhoneInput.story.d.ts +6 -0
- package/dist/elements/PhoneInput/index.d.ts +1 -0
- package/dist/elements/PhoneInput/tokens.d.ts +9 -0
- package/dist/elements/Pill/Pill.d.ts +48 -0
- package/dist/elements/Pill/Pill.story.d.ts +14 -0
- package/dist/elements/Pill/index.d.ts +1 -0
- package/dist/elements/Pill/tokens.d.ts +3 -0
- package/dist/elements/Pointer/Pointer.d.ts +23 -0
- package/dist/elements/Pointer/index.d.ts +1 -0
- package/dist/elements/Popover/Popover.d.ts +46 -0
- package/dist/elements/Popover/Popover.story.d.ts +27 -0
- package/dist/elements/Popover/index.d.ts +1 -0
- package/dist/elements/ProgressBar/ProgressBar.d.ts +11 -0
- package/dist/elements/ProgressBar/ProgressBar.story.d.ts +16 -0
- package/dist/elements/ProgressBar/index.d.ts +1 -0
- package/dist/elements/ProgressDots/ProgressDots.d.ts +26 -0
- package/dist/elements/ProgressDots/ProgressDots.story.d.ts +16 -0
- package/dist/elements/ProgressDots/index.d.ts +1 -0
- package/dist/elements/Radio/Radio.d.ts +30 -0
- package/dist/elements/Radio/Radio.story.d.ts +7 -0
- package/dist/elements/Radio/RadioDot.d.ts +11 -0
- package/dist/elements/Radio/index.d.ts +1 -0
- package/dist/elements/Radio/tokens.d.ts +39 -0
- package/dist/elements/RadioGroup/RadioGroup.d.ts +35 -0
- package/dist/elements/RadioGroup/RadioGroup.story.d.ts +13 -0
- package/dist/elements/RadioGroup/index.d.ts +1 -0
- package/dist/elements/Range/Range.d.ts +12 -0
- package/dist/elements/Range/Range.story.d.ts +18 -0
- package/dist/elements/Range/index.d.ts +1 -0
- package/dist/elements/ReadMore/ReadMore.d.ts +12 -0
- package/dist/elements/ReadMore/ReadMore.story.d.ts +53 -0
- package/dist/elements/ReadMore/index.d.ts +1 -0
- package/dist/elements/ResponsiveBox/ResponsiveBox.d.ts +21 -0
- package/dist/elements/ResponsiveBox/ResponsiveBox.story.d.ts +13 -0
- package/dist/elements/ResponsiveBox/index.d.ts +1 -0
- package/dist/elements/Select/Select.d.ts +23 -0
- package/dist/elements/Select/Select.story.d.ts +6 -0
- package/dist/elements/Select/index.d.ts +1 -0
- package/dist/elements/Select/tokens.d.ts +2 -0
- package/dist/elements/Select/types.d.ts +1 -0
- package/dist/elements/Separator/Separator.d.ts +8 -0
- package/dist/elements/Separator/Separator.story.d.ts +6 -0
- package/dist/elements/Separator/index.d.ts +1 -0
- package/dist/elements/Shelf/Shelf.d.ts +15 -0
- package/dist/elements/Shelf/Shelf.story.d.ts +18 -0
- package/dist/elements/Shelf/ShelfNavigation.d.ts +16 -0
- package/dist/elements/Shelf/ShelfScrollBar.d.ts +29 -0
- package/dist/elements/Shelf/index.d.ts +3 -0
- package/dist/elements/Shelf/useClickScroll.d.ts +10 -0
- package/dist/elements/Shelf/useDragScroll.d.ts +11 -0
- package/dist/elements/ShowMore/ShowMore.d.ts +12 -0
- package/dist/elements/ShowMore/ShowMore.story.d.ts +12 -0
- package/dist/elements/ShowMore/index.d.ts +1 -0
- package/dist/elements/Skeleton/Skeleton.d.ts +20 -0
- package/dist/elements/Skeleton/Skeleton.story.d.ts +9 -0
- package/dist/elements/Skeleton/index.d.ts +1 -0
- package/dist/elements/Skip/Skip.d.ts +16 -0
- package/dist/elements/Skip/Skip.story.d.ts +23 -0
- package/dist/elements/Skip/index.d.ts +1 -0
- package/dist/elements/Spacer/Spacer.d.ts +13 -0
- package/dist/elements/Spacer/Spacer.story.d.ts +11 -0
- package/dist/elements/Spacer/index.d.ts +1 -0
- package/dist/elements/Spinner/Spinner.d.ts +35 -0
- package/dist/elements/Spinner/Spinner.story.d.ts +18 -0
- package/dist/elements/Spinner/index.d.ts +1 -0
- package/dist/elements/Stack/Stack.d.ts +13 -0
- package/dist/elements/Stack/Stack.story.d.ts +6 -0
- package/dist/elements/Stack/index.d.ts +1 -0
- package/dist/elements/StackableBorderBox/StackableBorderBox.d.ts +9 -0
- package/dist/elements/StackableBorderBox/StackableBorderBox.story.d.ts +6 -0
- package/dist/elements/StackableBorderBox/index.d.ts +1 -0
- package/dist/elements/Stepper/Stepper.d.ts +17 -0
- package/dist/elements/Stepper/Stepper.story.d.ts +7 -0
- package/dist/elements/Stepper/index.d.ts +1 -0
- package/dist/elements/Sup/Sup.d.ts +15 -0
- package/dist/elements/Sup/Sup.story.d.ts +6 -0
- package/dist/elements/Sup/index.d.ts +1 -0
- package/dist/elements/Swiper/Swiper.d.ts +41 -0
- package/dist/elements/Swiper/Swiper.story.d.ts +72 -0
- package/dist/elements/Swiper/activeIndex.d.ts +9 -0
- package/dist/elements/Swiper/index.d.ts +1 -0
- package/dist/elements/Swiper/percentage.d.ts +12 -0
- package/dist/elements/Tabs/Tabs.d.ts +52 -0
- package/dist/elements/Tabs/Tabs.story.d.ts +30 -0
- package/dist/elements/Tabs/index.d.ts +1 -0
- package/dist/elements/Text/Text.d.ts +43 -0
- package/dist/elements/Text/Text.story.d.ts +9 -0
- package/dist/elements/Text/index.d.ts +1 -0
- package/dist/elements/TextArea/TextArea.d.ts +22 -0
- package/dist/elements/TextArea/TextArea.story.d.ts +7 -0
- package/dist/elements/TextArea/index.d.ts +1 -0
- package/dist/elements/TextArea/tokens.d.ts +2 -0
- package/dist/elements/TextArea/types.d.ts +1 -0
- package/dist/elements/Toasts/Toast.d.ts +33 -0
- package/dist/elements/Toasts/Toast.story.d.ts +6 -0
- package/dist/elements/Toasts/Toasts.d.ts +6 -0
- package/dist/elements/Toasts/Toasts.story.d.ts +9 -0
- package/dist/elements/Toasts/index.d.ts +3 -0
- package/dist/elements/Toasts/useToasts.d.ts +32 -0
- package/dist/elements/Toggle/Toggle.d.ts +14 -0
- package/dist/elements/Toggle/Toggle.story.d.ts +7 -0
- package/dist/elements/Toggle/index.d.ts +1 -0
- package/dist/elements/Toggle/tokens.d.ts +13 -0
- package/dist/elements/Tooltip/Tooltip.d.ts +29 -0
- package/dist/elements/Tooltip/Tooltip.story.d.ts +31 -0
- package/dist/elements/Tooltip/index.d.ts +1 -0
- package/dist/elements/VisuallyHidden/VisuallyHidden.d.ts +27 -0
- package/dist/elements/VisuallyHidden/index.d.ts +1 -0
- package/dist/elements/index.d.ts +70 -0
- package/dist/helpers/color.d.ts +8 -0
- package/dist/helpers/flattenChildren.d.ts +5 -0
- package/dist/helpers/index.d.ts +7 -0
- package/dist/helpers/injectGlobalStyles.d.ts +9 -0
- package/dist/helpers/isReactNative.d.ts +5 -0
- package/dist/helpers/isText.d.ts +5 -0
- package/dist/helpers/media.d.ts +21 -0
- package/dist/helpers/space.d.ts +8 -0
- package/dist/helpers/transition.d.ts +3 -0
- package/dist/helpers/visuallyDisableScrollbar.d.ts +4 -0
- package/dist/index.d.ts +4 -0
- package/dist/shared/RequiredField.d.ts +5 -0
- package/dist/themes/Themes.story.d.ts +14 -0
- package/dist/themes/index.d.ts +1 -0
- package/dist/themes/types.d.ts +1 -0
- package/dist/utils/FocusLocking.story.d.ts +8 -0
- package/dist/utils/index.d.ts +12 -0
- package/dist/utils/remapValue.d.ts +15 -0
- package/dist/utils/splitProps.d.ts +7 -0
- package/dist/utils/useClickOutside.d.ts +12 -0
- package/dist/utils/useContainsFocus.d.ts +6 -0
- package/dist/utils/useDidMount.d.ts +4 -0
- package/dist/utils/useInterval.d.ts +2 -0
- package/dist/utils/useIsomorphicLayoutEffect.d.ts +5 -0
- package/dist/utils/useLatest.d.ts +2 -0
- package/dist/utils/useMutationObserver.d.ts +15 -0
- package/dist/utils/usePortal.d.ts +4 -0
- package/dist/utils/usePosition.d.ts +68 -0
- package/dist/utils/usePrevious.d.ts +5 -0
- package/dist/utils/useResizeObserver.d.ts +9 -0
- package/dist/utils/useSentinelVisibility.d.ts +8 -0
- package/dist/utils/useUpdateEffect.d.ts +5 -0
- package/dist/utils/useWidthOf.d.ts +9 -0
- package/package.json +3 -2
- package/CHANGELOG.md +0 -7398
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dropdown.js","names":["_react","_interopRequireWildcard","require","_styledComponents","_interopRequireDefault","_utils","_usePortal2","_Box","_reactFocusOn","_themeGet","_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","_ref","_ref$placement","placement","_ref$visible","visible","_visible","keepInDOM","children","_ref$offset","offset","dropdown","openDropdownByClick","_ref$transition","transition","_transition","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","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","padding","handlePointerVisible","handlePointerHide","anchorProps","onClick","onMouseEnter","onMouseLeave","_usePortal","usePortal","createPortal","focusEnabled","createElement","Fragment","Container","tabIndex","ref","zIndex","display","style","visibility","Panel","bg","border","borderColor","opacity","transform","FocusOn","noIsolation","enabled","onClickOutside","exports","styled","Box","withConfig","displayName","componentId","_ref7","themeGet"],"sources":["../../../src/elements/Dropdown/Dropdown.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { 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\"\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 /** 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}\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 openDropdownByClick,\n transition: _transition = 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 })\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 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={1}\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 {...padding}\n {...rest}\n >\n <Panel\n bg=\"white100\"\n border=\"1px solid\"\n borderColor=\"black10\"\n transition={_transition}\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 }>`\n transition: ${({ transition }) =>\n transition ? \"opacity 250ms ease-out, transform 250ms ease-out\" : \"none\"};\n box-shadow: ${themeGet(\"effects.flatShadow\")};\n > div {\n max-height: 100vh;\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","_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","_ref","_ref$placement","placement","_ref$visible","visible","_visible","keepInDOM","children","_ref$offset","offset","dropdown","_ref$dropdownZIndex","dropdownZIndex","openDropdownByClick","_ref$transition","transition","_transition","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","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","padding","handlePointerVisible","handlePointerHide","anchorProps","onClick","onMouseEnter","onMouseLeave","_usePortal","usePortal","createPortal","focusEnabled","createElement","Fragment","Container","tabIndex","ref","zIndex","display","style","visibility","Panel","bg","border","borderColor","opacity","transform","FocusOn","noIsolation","enabled","onClickOutside","exports","styled","Box","withConfig","displayName","componentId","_ref7","themeGet"],"sources":["../../../src/elements/Dropdown/Dropdown.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from \"react\"\nimport styled from \"styled-components\"\nimport { 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\"\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}\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 ...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 })\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 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 {...padding}\n {...rest}\n >\n <Panel\n bg=\"white100\"\n border=\"1px solid\"\n borderColor=\"black10\"\n transition={_transition}\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 }>`\n transition: ${({ transition }) =>\n transition ? \"opacity 250ms ease-out, transform 250ms ease-out\" : \"none\"};\n box-shadow: ${themeGet(\"effects.flatShadow\")};\n > div {\n max-height: 100vh;\n overflow-y: auto;\n }\n`\n"],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
declare const _default: {
|
|
3
|
+
title: string;
|
|
4
|
+
};
|
|
5
|
+
export default _default;
|
|
6
|
+
export declare const Default: {
|
|
7
|
+
(): React.JSX.Element;
|
|
8
|
+
story: {
|
|
9
|
+
parameters: {
|
|
10
|
+
chromatic: {
|
|
11
|
+
disable: boolean;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export declare const KeepInDOM: {
|
|
17
|
+
(): React.JSX.Element;
|
|
18
|
+
story: {
|
|
19
|
+
parameters: {
|
|
20
|
+
chromatic: {
|
|
21
|
+
disable: boolean;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
export declare const ChangeDimensions: () => React.JSX.Element;
|
|
27
|
+
export declare const FocusOrder: () => React.JSX.Element;
|
|
28
|
+
export declare const OpenDropdownByClick: () => React.JSX.Element;
|
|
29
|
+
export declare const FilterExample: () => React.JSX.Element;
|
|
30
|
+
export declare const OverflowingContent: () => React.JSX.Element;
|
|
31
|
+
export declare const DisabledTransition: () => React.JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Dropdown";
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { LabelProps } from "../Label";
|
|
3
|
+
import { FlexProps } from "../Flex";
|
|
4
|
+
import { ImageProps } from "../Image";
|
|
5
|
+
export interface EntityHeaderProps extends FlexProps {
|
|
6
|
+
href?: string;
|
|
7
|
+
/** @deprecated: use `image` instead */
|
|
8
|
+
imageUrl?: string;
|
|
9
|
+
/** Pass props to the underlying `Image` in `Avatar` */
|
|
10
|
+
image?: Partial<ImageProps>;
|
|
11
|
+
initials?: string;
|
|
12
|
+
meta?: string;
|
|
13
|
+
name: string;
|
|
14
|
+
labels?: LabelProps[];
|
|
15
|
+
smallVariant?: boolean;
|
|
16
|
+
FollowButton?: JSX.Element;
|
|
17
|
+
onClick?: (event: React.MouseEvent<HTMLElement>) => void;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Component that is used as entity header that is paired with rich information about the entity.
|
|
21
|
+
* @deprecated: Use EntityHeader fragment container patterns within Force instead
|
|
22
|
+
*/
|
|
23
|
+
export declare const EntityHeader: React.FC<React.PropsWithChildren<EntityHeaderProps>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./EntityHeader";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { ClickableProps } from "../Clickable";
|
|
3
|
+
declare type ChildrenFunction = (props: {
|
|
4
|
+
setExpanded: React.Dispatch<React.SetStateAction<boolean | undefined>>;
|
|
5
|
+
expanded: boolean;
|
|
6
|
+
}) => React.ReactNode;
|
|
7
|
+
export interface ExpandableProps extends Omit<ClickableProps, "children"> {
|
|
8
|
+
label?: string | JSX.Element;
|
|
9
|
+
expanded?: boolean;
|
|
10
|
+
children: React.ReactNode | ChildrenFunction;
|
|
11
|
+
onToggle?: (isExpanded: boolean) => void;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A toggleable component used to show / hide content
|
|
15
|
+
*/
|
|
16
|
+
export declare const Expandable: ({ label, expanded: defaultExpanded, children, disabled, onClick, onToggle, borderColor, ...rest }: ExpandableProps) => React.JSX.Element;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Expandable";
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface Item {
|
|
3
|
+
label: string;
|
|
4
|
+
value: string;
|
|
5
|
+
[key: string]: string | number | boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare type Items = ReadonlyArray<Item>;
|
|
8
|
+
export interface FilterSelectChangeState {
|
|
9
|
+
items: FilterSelectContextProps["items"];
|
|
10
|
+
filteredItems: FilterSelectContextProps["filteredItems"];
|
|
11
|
+
selectedItems: FilterSelectContextProps["selectedItems"];
|
|
12
|
+
query: FilterSelectContextProps["query"];
|
|
13
|
+
}
|
|
14
|
+
interface FilterSelectContextProps {
|
|
15
|
+
enableSelectAll?: boolean;
|
|
16
|
+
filteredItems: Items;
|
|
17
|
+
initialItemsToShow: number;
|
|
18
|
+
isFiltered: boolean;
|
|
19
|
+
items: Items;
|
|
20
|
+
multiselect: boolean;
|
|
21
|
+
onChange: (state: FilterSelectChangeState) => void;
|
|
22
|
+
onSelectAll?: (state: FilterSelectChangeState) => void;
|
|
23
|
+
order: [string[], Array<"asc" | "desc">];
|
|
24
|
+
placeholder: string;
|
|
25
|
+
query: string;
|
|
26
|
+
renderItemLabel?: (item: any) => string;
|
|
27
|
+
searchableText?: (item: Item) => string;
|
|
28
|
+
selectedItems: Items;
|
|
29
|
+
setQuery: (query: string) => void;
|
|
30
|
+
setSelectedItems: (items: Items) => void;
|
|
31
|
+
toggleSelectedItem: (item: Item) => void;
|
|
32
|
+
}
|
|
33
|
+
export declare type FilterSelectState = Pick<FilterSelectContextProps, "enableSelectAll" | "filteredItems" | "initialItemsToShow" | "isFiltered" | "items" | "multiselect" | "onChange" | "onSelectAll" | "order" | "placeholder" | "query" | "renderItemLabel" | "searchableText" | "selectedItems">;
|
|
34
|
+
export declare const FilterSelectContextProvider: React.FC<React.PropsWithChildren<Partial<FilterSelectState>>>;
|
|
35
|
+
export declare const useFilterSelectContext: () => FilterSelectContextProps;
|
|
36
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { FilterSelectState } from "./Components/FilterSelectContext";
|
|
3
|
+
export declare type FilterSelectProps = Partial<FilterSelectState>;
|
|
4
|
+
export declare const FilterSelect: React.FC<React.PropsWithChildren<FilterSelectProps>>;
|
|
5
|
+
export declare const isBelowTheFoldSelected: (selectedItems: any, resultsSorted: any) => boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { BoxProps } from "../Box";
|
|
3
|
+
/**
|
|
4
|
+
* Flex is Box with display: flex
|
|
5
|
+
*/
|
|
6
|
+
export declare type FlexProps = BoxProps;
|
|
7
|
+
/**
|
|
8
|
+
* Flex is Box with display: flex
|
|
9
|
+
*/
|
|
10
|
+
export declare const Flex: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof BoxProps> & BoxProps, "ref"> & {
|
|
11
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
12
|
+
}, BoxProps>> & string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Flex";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { BoxProps } from "../Box";
|
|
3
|
+
/** FullBleedProps */
|
|
4
|
+
export declare type FullBleedProps = BoxProps;
|
|
5
|
+
/**
|
|
6
|
+
* Utility to break out of parent containers
|
|
7
|
+
*/
|
|
8
|
+
export declare const FullBleed: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof BoxProps> & BoxProps, "ref"> & {
|
|
9
|
+
ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
|
|
10
|
+
}, never>> & string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./FullBleed";
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { GridColumnProps } from "styled-system";
|
|
3
|
+
import { BoxProps } from "../Box";
|
|
4
|
+
import { CSSGridProps } from "../CSSGrid";
|
|
5
|
+
import { ColumnCell } from "./calculateGridColumn";
|
|
6
|
+
/** GridColumns implements `Box` and the common grid properties */
|
|
7
|
+
export declare type GridColumnsProps = Omit<CSSGridProps, "gridTemplateColumns">;
|
|
8
|
+
/**
|
|
9
|
+
* A 12-column fluid grid
|
|
10
|
+
*/
|
|
11
|
+
export declare const GridColumns: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<Omit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof BoxProps> & BoxProps, "ref"> & {
|
|
12
|
+
ref?: ((instance: HTMLDivElement | null) => void) | React.RefObject<HTMLDivElement> | null | undefined;
|
|
13
|
+
}, keyof CSSGridProps> & CSSGridProps, never>> & string;
|
|
14
|
+
declare type CellProps = ColumnCell & GridColumnProps & BoxProps;
|
|
15
|
+
/** Column implements `Box` and `gridColumn` */
|
|
16
|
+
export declare type ColumnProps = CellProps & {
|
|
17
|
+
/** denotes whether or not to break to a new row after column */
|
|
18
|
+
wrap?: boolean;
|
|
19
|
+
children?: React.ReactNode;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* A column sits within the GridColumns and spans the columns,
|
|
23
|
+
* sitting between gutters.
|
|
24
|
+
*/
|
|
25
|
+
export declare const Column: React.FC<React.PropsWithChildren<ColumnProps>>;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
declare const _default: {
|
|
3
|
+
title: string;
|
|
4
|
+
};
|
|
5
|
+
export default _default;
|
|
6
|
+
export declare const RealWorldExample: {
|
|
7
|
+
(): React.JSX.Element;
|
|
8
|
+
story: {
|
|
9
|
+
name: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare const KitchenSink: {
|
|
13
|
+
(): React.JSX.Element;
|
|
14
|
+
story: {
|
|
15
|
+
name: string;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export declare const CustomGutters: {
|
|
19
|
+
(): React.JSX.Element;
|
|
20
|
+
story: {
|
|
21
|
+
name: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Number of columns a cell may span */
|
|
2
|
+
export declare type ColumnSpan = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
|
|
3
|
+
/** Column number to begin a cell at */
|
|
4
|
+
export declare type ColumnStart = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
|
|
5
|
+
export interface ColumnCell {
|
|
6
|
+
/** number (between 1 and 12) of columns to span */
|
|
7
|
+
span?: ColumnSpan | ColumnSpan[];
|
|
8
|
+
/** number (between 1 and 12) of columns to begin at */
|
|
9
|
+
start?: ColumnStart | ColumnStart[];
|
|
10
|
+
}
|
|
11
|
+
/** The number of columns */
|
|
12
|
+
export declare const NUMBER_OF_COLUMNS = 12;
|
|
13
|
+
/** Position of the first column, 1-based */
|
|
14
|
+
export declare const FIRST_COLUMN_POSITION = 1;
|
|
15
|
+
/** Position of the last column, 1-based */
|
|
16
|
+
export declare const LAST_COLUMN_POSITION: number;
|
|
17
|
+
/**
|
|
18
|
+
* Builds a value for `gridColumn` based on the assumptions laid out
|
|
19
|
+
* by our 12-column grid.
|
|
20
|
+
*/
|
|
21
|
+
export declare const calculateGridColumn: ({ span: columnSpan, start: columnStart, }: ColumnCell) => string[];
|
|
22
|
+
/** Hardcoded list of full-width column spans */
|
|
23
|
+
export declare const GRID_COLUMN_FULL_WIDTHS: string[];
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React, { HTMLAttributes } from "react";
|
|
2
|
+
import { TextProps } from "../Text";
|
|
3
|
+
/**
|
|
4
|
+
* HTML
|
|
5
|
+
*/
|
|
6
|
+
export declare type HTMLProps = TextProps & HTMLAttributes<HTMLDivElement | HTMLHeadingElement | HTMLParagraphElement> & ({
|
|
7
|
+
html: string;
|
|
8
|
+
} | {
|
|
9
|
+
children: React.ReactNode;
|
|
10
|
+
});
|
|
11
|
+
/**
|
|
12
|
+
* Sets reasonable defaults for tags that we might encounter in Markdown output.
|
|
13
|
+
*/
|
|
14
|
+
export declare const htmlMixin: import("styled-components").RuleSet<object>;
|
|
15
|
+
/**
|
|
16
|
+
* Sets reasonable defaults for tags that we might encounter in Markdown output.
|
|
17
|
+
* If `html` prop is passed; it's set as innerHTML, otherwise contents are wrapped
|
|
18
|
+
* with default HTML styling.
|
|
19
|
+
*/
|
|
20
|
+
export declare const HTML: React.FC<React.PropsWithChildren<HTMLProps>>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
declare const _default: {
|
|
3
|
+
title: string;
|
|
4
|
+
};
|
|
5
|
+
export default _default;
|
|
6
|
+
export declare const Html: {
|
|
7
|
+
(): React.JSX.Element;
|
|
8
|
+
story: {
|
|
9
|
+
name: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare const DefaultHtmlStyling: {
|
|
13
|
+
(): React.JSX.Element;
|
|
14
|
+
story: {
|
|
15
|
+
name: string;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./HTML";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BoxProps } from "../Box";
|
|
3
|
+
export declare type HorizontalOverflowProps = BoxProps & {
|
|
4
|
+
children: React.ReactNode;
|
|
5
|
+
};
|
|
6
|
+
export declare const HorizontalOverflow: React.ForwardRefExoticComponent<BoxProps & {
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./HorizontalOverflow";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BorderRadiusProps, HeightProps, MaxHeightProps, SpaceProps, WidthProps } from "styled-system";
|
|
3
|
+
export interface ImageProps extends Omit<React.ImgHTMLAttributes<HTMLImageElement>, "width" | "height">, SpaceProps, WidthProps, HeightProps, MaxHeightProps, BorderRadiusProps {
|
|
4
|
+
/** Flag for if image should be lazy loaded */
|
|
5
|
+
lazyLoad?: boolean;
|
|
6
|
+
/** Flag indicating that right clicks should be prevented */
|
|
7
|
+
preventRightClick?: boolean;
|
|
8
|
+
/** Currently, this is used by clients for BlurHash data,
|
|
9
|
+
decoded and represented as a data URL */
|
|
10
|
+
placeHolderURL?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare const BaseImage: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<Omit<import("../CleanTag").TagProps & React.RefAttributes<any>, "ref"> & {
|
|
13
|
+
ref?: ((instance: any) => void) | React.RefObject<any> | null | undefined;
|
|
14
|
+
}, ImageProps>> & string & Omit<React.ForwardRefExoticComponent<import("../CleanTag").TagProps & React.RefAttributes<any>>, keyof React.Component<any, {}, any>>;
|
|
15
|
+
/** A web-only Image component. */
|
|
16
|
+
export declare const Image: ({ lazyLoad, preventRightClick, ...rest }: ImageProps) => React.JSX.Element;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
declare const _default: {
|
|
3
|
+
title: string;
|
|
4
|
+
};
|
|
5
|
+
export default _default;
|
|
6
|
+
export declare const Default: {
|
|
7
|
+
(): React.JSX.Element;
|
|
8
|
+
story: {
|
|
9
|
+
name: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export declare const ImageWSrcSet: {
|
|
13
|
+
(): React.JSX.Element;
|
|
14
|
+
story: {
|
|
15
|
+
name: string;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export declare const ImageLazyLoad: {
|
|
19
|
+
(): React.JSX.Element;
|
|
20
|
+
story: {
|
|
21
|
+
name: string;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
export declare const ImageLazyLoadSrcSet: {
|
|
25
|
+
(): React.JSX.Element;
|
|
26
|
+
story: {
|
|
27
|
+
name: string;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
export declare const ImageLazyLoadSrcSetPlaceHolderURL: {
|
|
31
|
+
(): React.JSX.Element;
|
|
32
|
+
story: {
|
|
33
|
+
name: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React, { CSSProperties } from "react";
|
|
2
|
+
import { BorderRadiusProps, HeightProps, WidthProps } from "styled-system";
|
|
3
|
+
import { ImageProps } from "./Image";
|
|
4
|
+
interface LazyImageProps extends ImageProps, WidthProps, HeightProps, BorderRadiusProps {
|
|
5
|
+
/** Eagerly load the image instead of lazy loading it */
|
|
6
|
+
preload?: boolean;
|
|
7
|
+
style?: CSSProperties;
|
|
8
|
+
/** The image component to render when preload is true */
|
|
9
|
+
imageComponent?: any;
|
|
10
|
+
onContextMenu?: (e: any) => void;
|
|
11
|
+
onError?: (event: React.SyntheticEvent<any, Event>) => void;
|
|
12
|
+
}
|
|
13
|
+
/** LazyImage */
|
|
14
|
+
export declare const LazyImage: React.FC<React.PropsWithChildren<LazyImageProps>>;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Image";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { BoxProps } from "../Box";
|
|
3
|
+
export interface InputProps extends BoxProps, Omit<React.InputHTMLAttributes<HTMLInputElement>, "size" | "width" | "height" | "capture"> {
|
|
4
|
+
active?: boolean;
|
|
5
|
+
description?: string;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
error?: string | boolean;
|
|
8
|
+
focus?: boolean;
|
|
9
|
+
hover?: boolean;
|
|
10
|
+
required?: boolean;
|
|
11
|
+
title?: string;
|
|
12
|
+
labelOffset?: number;
|
|
13
|
+
showCounter?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/** Input component */
|
|
16
|
+
export declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
declare const _default: {
|
|
3
|
+
title: string;
|
|
4
|
+
};
|
|
5
|
+
export default _default;
|
|
6
|
+
export declare const Default: () => React.JSX.Element;
|
|
7
|
+
export declare const Styled: () => React.JSX.Element;
|
|
8
|
+
export declare const Required: () => React.JSX.Element;
|
|
9
|
+
export declare const WithState: () => React.JSX.Element;
|
|
10
|
+
export declare const CustomHeight: () => React.JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Input";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type State = "active" | "default" | "disabled" | "error" | "focus" | "hover" | "completed";
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface JoinProps {
|
|
3
|
+
separator: React.ReactElement<any>;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* `Join` is a higher order component that renders a separator component
|
|
7
|
+
* between each of `Join`'s direct children.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
*
|
|
11
|
+
* <Join separator={<SomeComponent/>}>
|
|
12
|
+
* <child1/>
|
|
13
|
+
* <child2/>
|
|
14
|
+
* <child3/>
|
|
15
|
+
* </Join>
|
|
16
|
+
*
|
|
17
|
+
* which renders
|
|
18
|
+
*
|
|
19
|
+
* <child1/>
|
|
20
|
+
* <SomeComponent/>
|
|
21
|
+
* <child2/>
|
|
22
|
+
* <SomeComponent/>
|
|
23
|
+
* <child3/>
|
|
24
|
+
*/
|
|
25
|
+
export declare const Join: React.FC<React.PropsWithChildren<JoinProps>>;
|
|
26
|
+
export {};
|