@os-design/core 1.0.219 → 1.0.220
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/cjs/Alert/index.js +1 -2
- package/dist/cjs/Alert/index.js.map +1 -1
- package/dist/cjs/Avatar/index.js +1 -2
- package/dist/cjs/Avatar/index.js.map +1 -1
- package/dist/cjs/Avatar/utils/nameToInitials.js +1 -2
- package/dist/cjs/Avatar/utils/nameToInitials.js.map +1 -1
- package/dist/cjs/Avatar/utils/strToHue.js +1 -2
- package/dist/cjs/Avatar/utils/strToHue.js.map +1 -1
- package/dist/cjs/AvatarSkeleton/index.js +1 -2
- package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
- package/dist/cjs/Breadcrumb/index.js +1 -2
- package/dist/cjs/Breadcrumb/index.js.map +1 -1
- package/dist/cjs/BreadcrumbItem/index.js +1 -2
- package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
- package/dist/cjs/Button/ButtonContent.js +1 -2
- package/dist/cjs/Button/ButtonContent.js.map +1 -1
- package/dist/cjs/Button/index.js +2 -4
- package/dist/cjs/Button/index.js.map +1 -1
- package/dist/cjs/Button/utils/useButtonColors.js +1 -2
- package/dist/cjs/Button/utils/useButtonColors.js.map +1 -1
- package/dist/cjs/Checkbox/index.js +1 -2
- package/dist/cjs/Checkbox/index.js.map +1 -1
- package/dist/cjs/CheckboxSkeleton/index.js +1 -2
- package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
- package/dist/cjs/DatePicker/DatePickerCalendar.js +1 -2
- package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
- package/dist/cjs/DatePicker/index.js +1 -2
- package/dist/cjs/DatePicker/index.js.map +1 -1
- package/dist/cjs/Drawer/index.js +2 -4
- package/dist/cjs/Drawer/index.js.map +1 -1
- package/dist/cjs/Form/FormConfigContext.js +1 -2
- package/dist/cjs/Form/FormConfigContext.js.map +1 -1
- package/dist/cjs/Form/index.js +1 -2
- package/dist/cjs/Form/index.js.map +1 -1
- package/dist/cjs/FormDivider/index.js +1 -2
- package/dist/cjs/FormDivider/index.js.map +1 -1
- package/dist/cjs/FormItem/index.js +1 -2
- package/dist/cjs/FormItem/index.js.map +1 -1
- package/dist/cjs/Gallery/Status.js +1 -2
- package/dist/cjs/Gallery/Status.js.map +1 -1
- package/dist/cjs/Gallery/index.js +1 -2
- package/dist/cjs/Gallery/index.js.map +1 -1
- package/dist/cjs/GlobalStyles/index.js +1 -2
- package/dist/cjs/GlobalStyles/index.js.map +1 -1
- package/dist/cjs/GlobalStyles/resetStyles.js +1 -2
- package/dist/cjs/GlobalStyles/resetStyles.js.map +1 -1
- package/dist/cjs/GlobalStyles/typographyStyles.js +1 -2
- package/dist/cjs/GlobalStyles/typographyStyles.js.map +1 -1
- package/dist/cjs/HeaderSkeleton/index.js +1 -2
- package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
- package/dist/cjs/Image/index.js +1 -2
- package/dist/cjs/Image/index.js.map +1 -1
- package/dist/cjs/ImageSkeleton/index.js +1 -2
- package/dist/cjs/ImageSkeleton/index.js.map +1 -1
- package/dist/cjs/Input/index.js +3 -6
- package/dist/cjs/Input/index.js.map +1 -1
- package/dist/cjs/Input/utils/getFocusableElements.js +1 -2
- package/dist/cjs/Input/utils/getFocusableElements.js.map +1 -1
- package/dist/cjs/InputNumber/index.js +1 -2
- package/dist/cjs/InputNumber/index.js.map +1 -1
- package/dist/cjs/InputNumber/utils/defaultLocale.js +1 -2
- package/dist/cjs/InputNumber/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/InputPassword/index.js +1 -2
- package/dist/cjs/InputPassword/index.js.map +1 -1
- package/dist/cjs/InputPassword/utils/defaultLocale.js +1 -2
- package/dist/cjs/InputPassword/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/InputSearch/index.js +1 -2
- package/dist/cjs/InputSearch/index.js.map +1 -1
- package/dist/cjs/InputSearch/utils/defaultLocale.js +1 -2
- package/dist/cjs/InputSearch/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/InputSkeleton/index.js +1 -2
- package/dist/cjs/InputSkeleton/index.js.map +1 -1
- package/dist/cjs/Layout/LayoutContext.js +1 -2
- package/dist/cjs/Layout/LayoutContext.js.map +1 -1
- package/dist/cjs/Layout/index.js +1 -2
- package/dist/cjs/Layout/index.js.map +1 -1
- package/dist/cjs/Link/index.js +1 -2
- package/dist/cjs/Link/index.js.map +1 -1
- package/dist/cjs/LinkButton/index.js +1 -2
- package/dist/cjs/LinkButton/index.js.map +1 -1
- package/dist/cjs/List/WindowScroller.js +2 -4
- package/dist/cjs/List/WindowScroller.js.map +1 -1
- package/dist/cjs/List/index.js +1 -2
- package/dist/cjs/List/index.js.map +1 -1
- package/dist/cjs/List/utils/bodyPointerEvents.js +3 -6
- package/dist/cjs/List/utils/bodyPointerEvents.js.map +1 -1
- package/dist/cjs/List/utils/frameTimeout.js +2 -4
- package/dist/cjs/List/utils/frameTimeout.js.map +1 -1
- package/dist/cjs/List/utils/useRWLoadNext.js +1 -2
- package/dist/cjs/List/utils/useRWLoadNext.js.map +1 -1
- package/dist/cjs/ListItem/index.js +1 -2
- package/dist/cjs/ListItem/index.js.map +1 -1
- package/dist/cjs/ListItemActions/index.js +1 -2
- package/dist/cjs/ListItemActions/index.js.map +1 -1
- package/dist/cjs/ListItemLink/index.js +1 -2
- package/dist/cjs/ListItemLink/index.js.map +1 -1
- package/dist/cjs/ListSkeleton/index.js +1 -2
- package/dist/cjs/ListSkeleton/index.js.map +1 -1
- package/dist/cjs/LogoLink/index.js +1 -2
- package/dist/cjs/LogoLink/index.js.map +1 -1
- package/dist/cjs/Menu/index.js +1 -2
- package/dist/cjs/Menu/index.js.map +1 -1
- package/dist/cjs/Menu/utils/useFocusWithArrows.js +1 -2
- package/dist/cjs/Menu/utils/useFocusWithArrows.js.map +1 -1
- package/dist/cjs/MenuDivider/index.js +1 -2
- package/dist/cjs/MenuDivider/index.js.map +1 -1
- package/dist/cjs/MenuGroup/index.js +1 -2
- package/dist/cjs/MenuGroup/index.js.map +1 -1
- package/dist/cjs/MenuItem/index.js +1 -2
- package/dist/cjs/MenuItem/index.js.map +1 -1
- package/dist/cjs/Modal/index.js +3 -6
- package/dist/cjs/Modal/index.js.map +1 -1
- package/dist/cjs/Modal/utils/defaultLocale.js +1 -2
- package/dist/cjs/Modal/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/Navigation/index.js +1 -2
- package/dist/cjs/Navigation/index.js.map +1 -1
- package/dist/cjs/Navigation/utils/useScrollFlags.js +1 -2
- package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
- package/dist/cjs/NavigationItem/index.js +1 -2
- package/dist/cjs/NavigationItem/index.js.map +1 -1
- package/dist/cjs/PageContent/index.js +1 -2
- package/dist/cjs/PageContent/index.js.map +1 -1
- package/dist/cjs/PageHeader/index.js +2 -4
- package/dist/cjs/PageHeader/index.js.map +1 -1
- package/dist/cjs/PageHeader/utils/defaultLocale.js +1 -2
- package/dist/cjs/PageHeader/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/PageHeaderInputSearch/index.js +1 -2
- package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
- package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js +1 -2
- package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/PageHeaderSkeleton/index.js +1 -2
- package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
- package/dist/cjs/ParagraphSkeleton/index.js +1 -2
- package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
- package/dist/cjs/Popover/index.js +1 -2
- package/dist/cjs/Popover/index.js.map +1 -1
- package/dist/cjs/Popover/utils/usePopoverPosition.js +1 -2
- package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
- package/dist/cjs/Progress/index.js +1 -2
- package/dist/cjs/Progress/index.js.map +1 -1
- package/dist/cjs/RadioGroup/index.js +1 -2
- package/dist/cjs/RadioGroup/index.js.map +1 -1
- package/dist/cjs/RadioGroupSkeleton/index.js +1 -2
- package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
- package/dist/cjs/Result/index.js +1 -2
- package/dist/cjs/Result/index.js.map +1 -1
- package/dist/cjs/ScrollButton/index.js +1 -2
- package/dist/cjs/ScrollButton/index.js.map +1 -1
- package/dist/cjs/ScrollButton/utils/useContainerPosition.js +1 -2
- package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
- package/dist/cjs/ScrollButton/utils/useVisibility.js +1 -2
- package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
- package/dist/cjs/Select/index.js +10 -20
- package/dist/cjs/Select/index.js.map +1 -1
- package/dist/cjs/Select/utils/defaultLocale.js +1 -2
- package/dist/cjs/Select/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/Skeleton/index.js +1 -2
- package/dist/cjs/Skeleton/index.js.map +1 -1
- package/dist/cjs/Switch/index.js +1 -2
- package/dist/cjs/Switch/index.js.map +1 -1
- package/dist/cjs/SwitchSkeleton/index.js +1 -2
- package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
- package/dist/cjs/Tag/index.js +4 -8
- package/dist/cjs/Tag/index.js.map +1 -1
- package/dist/cjs/TagLink/index.js +1 -2
- package/dist/cjs/TagLink/index.js.map +1 -1
- package/dist/cjs/TagList/index.js +1 -2
- package/dist/cjs/TagList/index.js.map +1 -1
- package/dist/cjs/TagListSkeleton/index.js +1 -2
- package/dist/cjs/TagListSkeleton/index.js.map +1 -1
- package/dist/cjs/TagSkeleton/index.js +1 -2
- package/dist/cjs/TagSkeleton/index.js.map +1 -1
- package/dist/cjs/TextArea/index.js +1 -2
- package/dist/cjs/TextArea/index.js.map +1 -1
- package/dist/cjs/TextAreaSkeleton/index.js +1 -2
- package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
- package/dist/cjs/ThemeSwitcher/index.js +1 -2
- package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
- package/dist/cjs/TimePicker/index.js +1 -2
- package/dist/cjs/TimePicker/index.js.map +1 -1
- package/dist/cjs/Video/index.js +1 -2
- package/dist/cjs/Video/index.js.map +1 -1
- package/dist/cjs/message/AlertIcon.js +1 -2
- package/dist/cjs/message/AlertIcon.js.map +1 -1
- package/dist/cjs/message/Message.js +2 -4
- package/dist/cjs/message/Message.js.map +1 -1
- package/dist/cjs/message/index.js +1 -2
- package/dist/cjs/message/index.js.map +1 -1
- package/dist/cjs/message/styles.js +3 -6
- package/dist/cjs/message/styles.js.map +1 -1
- package/dist/types/LinkButton/index.d.ts +53 -53
- package/dist/types/ThemeSwitcher/index.d.ts +53 -53
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_portal","_styles","_theming","_utils","_react2","_interopRequireWildcard","_usePopoverPosition2","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_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","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","Container","styled","omitEmotionProps","top","left","borderRadius","clr","popoverColorBg","popoverColorText","popoverColorBorder","popoverColorBoxShadow","sizeStyles","emptyRect","width","height","Popover","forwardRef","_ref","ref","trigger","_ref$placement","placement","_ref$gap","gap","_ref$flip","flip","_ref$visible","_ref$onClose","onClose","id","children","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","popoverRef","mergedPopoverRef","_useState","useState","_useState2","popoverRect","setPopoverRect","_useState3","_useState4","triggerRect","setTriggerRect","_useTheme","useTheme","mounted","useClosable","popoverResizeListener","useCallback","current","getBoundingClientRect","useResizeObserver","measuredPopoverRef","node","triggerResizeListener","window","requestAnimationFrame","_ref2","useBrowserLayoutEffect","useEvent","document","useEffect","undefined","popoverId","useMemo","concat","Math","random","_ref3","getAttribute","setAttribute","_ref4","_usePopoverPosition","usePopoverPosition","elementRect","useClickOutside","createElement","role","displayName","_default","exports"],"sources":["../../../src/Popover/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport Portal from '@os-design/portal';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { clr, useTheme } from '@os-design/theming';\nimport {\n omitEmotionProps,\n useBrowserLayoutEffect,\n useClickOutside,\n useClosable,\n useEvent,\n useForwardedRef,\n useResizeObserver,\n} from '@os-design/utils';\nimport React, {\n forwardRef,\n RefCallback,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport usePopoverPosition, {\n Placement,\n Rect,\n} from './utils/usePopoverPosition';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface PopoverProps extends JsxDivProps, WithSize {\n /**\n * The element next to which the popover appears.\n * @default undefined\n */\n trigger?: RefObject<Element> | Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.2\n */\n gap?: number;\n /**\n * Whether the popover to flip if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n /**\n * Whether the popover is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The close event handler.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface ContainerProps extends Pick<PopoverProps, 'visible' | 'size'> {\n top: number;\n left: number;\n}\nconst Container = styled(\n 'div',\n omitEmotionProps('top', 'left', 'visible', 'size')\n)<ContainerProps>`\n position: absolute;\n top: ${(p) => p.top}px;\n left: ${(p) => p.left}px;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n background-color: ${(p) => clr(p.theme.popoverColorBg)};\n color: ${(p) => clr(p.theme.popoverColorText)};\n border: 1px solid ${(p) => clr(p.theme.popoverColorBorder)};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.popoverColorBoxShadow)};\n z-index: 1000; // Greater than the z-index of the Drawer\n\n ${visibleStyles};\n ${invisibleStyles};\n ${sizeStyles};\n`;\n\nconst emptyRect: Rect = {\n top: 0,\n left: 0,\n width: 0,\n height: 0,\n};\n\n/**\n * The pop-up window located next to the element.\n */\nconst Popover = forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n trigger,\n placement = 'top',\n gap = 0.2,\n flip = true,\n visible = false,\n onClose = () => {},\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const [popoverRef, mergedPopoverRef] = useForwardedRef(ref);\n const [popoverRect, setPopoverRect] = useState(emptyRect);\n const [triggerRect, setTriggerRect] = useState(emptyRect);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Init the rect of the popover and update it when the popover size changes\n const popoverResizeListener = useCallback(() => {\n if (!popoverRef.current) return;\n setPopoverRect(popoverRef.current.getBoundingClientRect());\n }, [popoverRef]);\n useResizeObserver(\n popoverRef.current as HTMLDivElement,\n popoverResizeListener\n );\n\n const measuredPopoverRef = useCallback<RefCallback<HTMLDivElement>>(\n (node) => {\n if (node === null) return;\n setPopoverRect(node.getBoundingClientRect());\n mergedPopoverRef(node);\n },\n [mergedPopoverRef]\n );\n\n // Init the rect of the trigger and update it when the window was resized\n // or scrolled\n const triggerResizeListener = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n setTriggerRect(current.getBoundingClientRect());\n });\n }, [trigger]);\n useBrowserLayoutEffect(() => {\n if (!visible) return;\n triggerResizeListener();\n }, [triggerResizeListener, visible]);\n useResizeObserver(trigger as never, triggerResizeListener);\n useEvent(\n (typeof window === 'undefined' ? null : window) as never,\n 'resize',\n triggerResizeListener\n );\n useEvent(document, 'scroll', triggerResizeListener);\n\n useEffect(() => {\n if (!trigger || (trigger as RefObject<Element>).current !== undefined)\n return;\n setTriggerRect(trigger as Rect);\n }, [trigger]);\n\n const popoverId = useMemo(\n () => id || `popover-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n // Set the aria tags to support accessibility features\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n if (current.getAttribute('aria-haspopup') === null) {\n current.setAttribute('aria-haspopup', 'dialog');\n }\n current.setAttribute('aria-controls', popoverId);\n }, []);\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n current.setAttribute('aria-expanded', visible.toString());\n }, [visible]);\n\n // Get the popover coordinates\n const { top, left } = usePopoverPosition({\n elementRect: triggerRect,\n popoverRect,\n placement,\n gap,\n flip,\n });\n\n // Close the popover when the user clicks outside of it\n useClickOutside(popoverRef, onClose);\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <Container\n top={top}\n left={left}\n visible={visible}\n id={popoverId}\n role='dialog'\n {...rest}\n ref={measuredPopoverRef}\n >\n {children}\n </Container>\n </Portal>\n );\n }\n);\n\nPopover.displayName = 'Popover';\n\nexport default Popover;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_portal","_styles","_theming","_utils","_react2","_interopRequireWildcard","_usePopoverPosition2","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_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","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","Container","styled","omitEmotionProps","top","left","borderRadius","clr","popoverColorBg","popoverColorText","popoverColorBorder","popoverColorBoxShadow","sizeStyles","emptyRect","width","height","Popover","forwardRef","_ref","ref","trigger","_ref$placement","placement","_ref$gap","gap","_ref$flip","flip","_ref$visible","_ref$onClose","onClose","id","children","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","popoverRef","mergedPopoverRef","_useState","useState","_useState2","popoverRect","setPopoverRect","_useState3","_useState4","triggerRect","setTriggerRect","_useTheme","useTheme","mounted","useClosable","popoverResizeListener","useCallback","current","getBoundingClientRect","useResizeObserver","measuredPopoverRef","node","triggerResizeListener","window","requestAnimationFrame","_ref2","useBrowserLayoutEffect","useEvent","document","useEffect","undefined","popoverId","useMemo","concat","Math","random","_ref3","getAttribute","setAttribute","_ref4","_usePopoverPosition","usePopoverPosition","elementRect","useClickOutside","createElement","role","displayName","_default","exports"],"sources":["../../../src/Popover/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport Portal from '@os-design/portal';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { clr, useTheme } from '@os-design/theming';\nimport {\n omitEmotionProps,\n useBrowserLayoutEffect,\n useClickOutside,\n useClosable,\n useEvent,\n useForwardedRef,\n useResizeObserver,\n} from '@os-design/utils';\nimport React, {\n forwardRef,\n RefCallback,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useState,\n} from 'react';\nimport usePopoverPosition, {\n Placement,\n Rect,\n} from './utils/usePopoverPosition';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface PopoverProps extends JsxDivProps, WithSize {\n /**\n * The element next to which the popover appears.\n * @default undefined\n */\n trigger?: RefObject<Element> | Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.2\n */\n gap?: number;\n /**\n * Whether the popover to flip if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n /**\n * Whether the popover is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The close event handler.\n * @default undefined\n */\n onClose?: () => void;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface ContainerProps extends Pick<PopoverProps, 'visible' | 'size'> {\n top: number;\n left: number;\n}\nconst Container = styled(\n 'div',\n omitEmotionProps('top', 'left', 'visible', 'size')\n)<ContainerProps>`\n position: absolute;\n top: ${(p) => p.top}px;\n left: ${(p) => p.left}px;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n background-color: ${(p) => clr(p.theme.popoverColorBg)};\n color: ${(p) => clr(p.theme.popoverColorText)};\n border: 1px solid ${(p) => clr(p.theme.popoverColorBorder)};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.popoverColorBoxShadow)};\n z-index: 1000; // Greater than the z-index of the Drawer\n\n ${visibleStyles};\n ${invisibleStyles};\n ${sizeStyles};\n`;\n\nconst emptyRect: Rect = {\n top: 0,\n left: 0,\n width: 0,\n height: 0,\n};\n\n/**\n * The pop-up window located next to the element.\n */\nconst Popover = forwardRef<HTMLDivElement, PopoverProps>(\n (\n {\n trigger,\n placement = 'top',\n gap = 0.2,\n flip = true,\n visible = false,\n onClose = () => {},\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const [popoverRef, mergedPopoverRef] = useForwardedRef(ref);\n const [popoverRect, setPopoverRect] = useState(emptyRect);\n const [triggerRect, setTriggerRect] = useState(emptyRect);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Init the rect of the popover and update it when the popover size changes\n const popoverResizeListener = useCallback(() => {\n if (!popoverRef.current) return;\n setPopoverRect(popoverRef.current.getBoundingClientRect());\n }, [popoverRef]);\n useResizeObserver(\n popoverRef.current as HTMLDivElement,\n popoverResizeListener\n );\n\n const measuredPopoverRef = useCallback<RefCallback<HTMLDivElement>>(\n (node) => {\n if (node === null) return;\n setPopoverRect(node.getBoundingClientRect());\n mergedPopoverRef(node);\n },\n [mergedPopoverRef]\n );\n\n // Init the rect of the trigger and update it when the window was resized\n // or scrolled\n const triggerResizeListener = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n setTriggerRect(current.getBoundingClientRect());\n });\n }, [trigger]);\n useBrowserLayoutEffect(() => {\n if (!visible) return;\n triggerResizeListener();\n }, [triggerResizeListener, visible]);\n useResizeObserver(trigger as never, triggerResizeListener);\n useEvent(\n (typeof window === 'undefined' ? null : window) as never,\n 'resize',\n triggerResizeListener\n );\n useEvent(document, 'scroll', triggerResizeListener);\n\n useEffect(() => {\n if (!trigger || (trigger as RefObject<Element>).current !== undefined)\n return;\n setTriggerRect(trigger as Rect);\n }, [trigger]);\n\n const popoverId = useMemo(\n () => id || `popover-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n // Set the aria tags to support accessibility features\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n if (current.getAttribute('aria-haspopup') === null) {\n current.setAttribute('aria-haspopup', 'dialog');\n }\n current.setAttribute('aria-controls', popoverId);\n }, []);\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n current.setAttribute('aria-expanded', visible.toString());\n }, [visible]);\n\n // Get the popover coordinates\n const { top, left } = usePopoverPosition({\n elementRect: triggerRect,\n popoverRect,\n placement,\n gap,\n flip,\n });\n\n // Close the popover when the user clicks outside of it\n useClickOutside(popoverRef, onClose);\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <Container\n top={top}\n left={left}\n visible={visible}\n id={popoverId}\n role='dialog'\n {...rest}\n ref={measuredPopoverRef}\n >\n {children}\n </Container>\n </Portal>\n );\n }\n);\n\nPopover.displayName = 'Popover';\n\nexport default Popover;\n"],"mappings":"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"}
|
|
@@ -169,6 +169,5 @@ var usePopoverPosition = function usePopoverPosition(_ref5) {
|
|
|
169
169
|
flip: flip
|
|
170
170
|
}]));
|
|
171
171
|
};
|
|
172
|
-
var _default = usePopoverPosition;
|
|
173
|
-
exports["default"] = _default;
|
|
172
|
+
var _default = exports["default"] = usePopoverPosition;
|
|
174
173
|
//# sourceMappingURL=usePopoverPosition.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePopoverPosition.js","names":["_utils","require","_react","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","popoverPositionGetters","rectKey","sizeKey","windowSizeKey","windowOffsetKey","fitToWindow","start","_ref","elementRect","popoverRect","popoverStart","windowStart","window","windowEnd","elementStart","elementEnd","popoverEnd","before","options","gap","flip","afterPopoverStart","after","afterPopoverEnd","diffStart","diffEnd","beforePopoverStart","_ref2","end","_ref3","center","_ref4","getPopoverPosition","top","left","placementPositionKeysMap","bottom","right","usePopoverPosition","_ref5","_ref5$placement","placement","_ref5$gap","_ref5$flip","bodyFontSize","useFontSize","document","body","gapPx","useMemo","positionKeys","concat","_default","exports"],"sources":["../../../../src/Popover/utils/usePopoverPosition.ts"],"sourcesContent":["import { useFontSize } from '@os-design/utils';\nimport { useMemo } from 'react';\n\ntype Side = 'top' | 'left' | 'right' | 'bottom';\ntype Alignment = 'start' | 'end';\ntype AlignedPlacement = `${Side}-${Alignment}`;\n\nexport type Placement = Side | AlignedPlacement;\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\ninterface UsePopoverPositionProps {\n /**\n * The rect of the element.\n */\n elementRect: Rect;\n /**\n * The rect of the popover.\n */\n popoverRect: Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.5\n */\n gap?: number;\n /**\n * Whether to flip the popover if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n}\n\ninterface PopoverPositionGetterOptions {\n elementRect: Rect;\n popoverRect: Rect;\n gap: number;\n flip: boolean;\n}\ntype PositionKeys = 'before' | 'after' | 'start' | 'end' | 'center';\ntype PopoverPositionGetterFn = (\n options: PopoverPositionGetterOptions\n) => number;\ntype PopoverPositionGetters = Record<PositionKeys, PopoverPositionGetterFn>;\ntype FitToWindow = Pick<\n PopoverPositionGetterOptions,\n 'elementRect' | 'popoverRect'\n>;\n\nconst popoverPositionGetters = (\n rectKey: 'top' | 'left'\n): PopoverPositionGetters => {\n const sizeKey = rectKey === 'top' ? 'height' : 'width';\n const windowSizeKey = rectKey === 'top' ? 'innerHeight' : 'innerWidth';\n const windowOffsetKey = rectKey === 'top' ? 'pageYOffset' : 'pageXOffset';\n\n const fitToWindow = (\n start: number,\n { elementRect, popoverRect }: FitToWindow\n ): number => {\n let popoverStart = start;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n\n // Fit the popover to the end of the window\n if (popoverEnd > windowEnd) {\n if (elementEnd < windowEnd)\n popoverStart = windowEnd - popoverRect[sizeKey];\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementEnd - popoverRect[sizeKey];\n else if (windowEnd - elementStart > popoverRect[sizeKey])\n popoverStart = windowEnd - popoverRect[sizeKey];\n else popoverStart = elementStart;\n }\n\n // Fit the popover to the beginning of the window\n if (popoverStart < windowStart) {\n if (elementStart > windowStart) popoverStart = windowStart;\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementStart;\n else if (elementEnd - windowStart > popoverRect[sizeKey])\n popoverStart = windowStart;\n else popoverStart = elementEnd - popoverRect[sizeKey];\n }\n\n return popoverStart;\n };\n\n return {\n before(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart = elementStart - popoverRect[sizeKey] - gap;\n if (flip && popoverStart < windowStart) {\n const afterPopoverStart = this.after({ ...options, flip: false });\n const afterPopoverEnd = afterPopoverStart + popoverRect[sizeKey];\n const diffStart = windowStart - popoverStart;\n const diffEnd = afterPopoverEnd - windowEnd;\n if (afterPopoverEnd <= windowEnd || diffStart > diffEnd)\n return afterPopoverStart;\n }\n return popoverStart;\n },\n after(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd + gap;\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n if (flip && popoverEnd > windowEnd) {\n const beforePopoverStart = this.before({ ...options, flip: false });\n const diffStart = windowStart - beforePopoverStart;\n const diffEnd = popoverEnd - windowEnd;\n if (beforePopoverStart >= windowStart || diffEnd > diffStart)\n return beforePopoverStart;\n }\n return popoverStart;\n },\n start: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n return fitToWindow(elementStart, { elementRect, popoverRect });\n },\n end: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd - popoverRect[sizeKey];\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n center: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart =\n elementStart + (elementRect[sizeKey] - popoverRect[sizeKey]) / 2;\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n };\n};\n\nconst getPopoverPosition = (\n top: PositionKeys,\n left: PositionKeys,\n options: PopoverPositionGetterOptions\n) => ({\n top: popoverPositionGetters('top')[top](options),\n left: popoverPositionGetters('left')[left](options),\n});\n\ntype PlacementPositionKeysMap = Record<Placement, [PositionKeys, PositionKeys]>;\nconst placementPositionKeysMap: PlacementPositionKeysMap = {\n top: ['before', 'center'],\n bottom: ['after', 'center'],\n left: ['center', 'before'],\n right: ['center', 'after'],\n 'top-start': ['before', 'start'],\n 'top-end': ['before', 'end'],\n 'bottom-start': ['after', 'start'],\n 'bottom-end': ['after', 'end'],\n 'left-start': ['start', 'before'],\n 'left-end': ['end', 'before'],\n 'right-start': ['start', 'after'],\n 'right-end': ['end', 'after'],\n};\n\ninterface PopoverPosition {\n top: number;\n left: number;\n}\n\n/**\n * Computes the position of the popover.\n * Note that you must change the elementRect when the scroll and resize events of the parent scrollable container occur.\n * In most cases, it will be the window.\n */\nconst usePopoverPosition = ({\n elementRect,\n popoverRect,\n placement = 'top',\n gap = 0.5,\n flip = true,\n}: UsePopoverPositionProps): PopoverPosition => {\n const bodyFontSize = useFontSize(document.body);\n const gapPx = useMemo(() => gap * bodyFontSize, [gap, bodyFontSize]);\n\n const positionKeys = useMemo(() => {\n if (typeof placement === 'string' && !!placementPositionKeysMap[placement])\n return placementPositionKeysMap[placement];\n return placementPositionKeysMap.top;\n }, [placement]);\n\n return getPopoverPosition(...positionKeys, {\n elementRect,\n popoverRect,\n gap: gapPx,\n flip,\n });\n};\n\nexport default usePopoverPosition;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"usePopoverPosition.js","names":["_utils","require","_react","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","popoverPositionGetters","rectKey","sizeKey","windowSizeKey","windowOffsetKey","fitToWindow","start","_ref","elementRect","popoverRect","popoverStart","windowStart","window","windowEnd","elementStart","elementEnd","popoverEnd","before","options","gap","flip","afterPopoverStart","after","afterPopoverEnd","diffStart","diffEnd","beforePopoverStart","_ref2","end","_ref3","center","_ref4","getPopoverPosition","top","left","placementPositionKeysMap","bottom","right","usePopoverPosition","_ref5","_ref5$placement","placement","_ref5$gap","_ref5$flip","bodyFontSize","useFontSize","document","body","gapPx","useMemo","positionKeys","concat","_default","exports"],"sources":["../../../../src/Popover/utils/usePopoverPosition.ts"],"sourcesContent":["import { useFontSize } from '@os-design/utils';\nimport { useMemo } from 'react';\n\ntype Side = 'top' | 'left' | 'right' | 'bottom';\ntype Alignment = 'start' | 'end';\ntype AlignedPlacement = `${Side}-${Alignment}`;\n\nexport type Placement = Side | AlignedPlacement;\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\ninterface UsePopoverPositionProps {\n /**\n * The rect of the element.\n */\n elementRect: Rect;\n /**\n * The rect of the popover.\n */\n popoverRect: Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.5\n */\n gap?: number;\n /**\n * Whether to flip the popover if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n}\n\ninterface PopoverPositionGetterOptions {\n elementRect: Rect;\n popoverRect: Rect;\n gap: number;\n flip: boolean;\n}\ntype PositionKeys = 'before' | 'after' | 'start' | 'end' | 'center';\ntype PopoverPositionGetterFn = (\n options: PopoverPositionGetterOptions\n) => number;\ntype PopoverPositionGetters = Record<PositionKeys, PopoverPositionGetterFn>;\ntype FitToWindow = Pick<\n PopoverPositionGetterOptions,\n 'elementRect' | 'popoverRect'\n>;\n\nconst popoverPositionGetters = (\n rectKey: 'top' | 'left'\n): PopoverPositionGetters => {\n const sizeKey = rectKey === 'top' ? 'height' : 'width';\n const windowSizeKey = rectKey === 'top' ? 'innerHeight' : 'innerWidth';\n const windowOffsetKey = rectKey === 'top' ? 'pageYOffset' : 'pageXOffset';\n\n const fitToWindow = (\n start: number,\n { elementRect, popoverRect }: FitToWindow\n ): number => {\n let popoverStart = start;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n\n // Fit the popover to the end of the window\n if (popoverEnd > windowEnd) {\n if (elementEnd < windowEnd)\n popoverStart = windowEnd - popoverRect[sizeKey];\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementEnd - popoverRect[sizeKey];\n else if (windowEnd - elementStart > popoverRect[sizeKey])\n popoverStart = windowEnd - popoverRect[sizeKey];\n else popoverStart = elementStart;\n }\n\n // Fit the popover to the beginning of the window\n if (popoverStart < windowStart) {\n if (elementStart > windowStart) popoverStart = windowStart;\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementStart;\n else if (elementEnd - windowStart > popoverRect[sizeKey])\n popoverStart = windowStart;\n else popoverStart = elementEnd - popoverRect[sizeKey];\n }\n\n return popoverStart;\n };\n\n return {\n before(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart = elementStart - popoverRect[sizeKey] - gap;\n if (flip && popoverStart < windowStart) {\n const afterPopoverStart = this.after({ ...options, flip: false });\n const afterPopoverEnd = afterPopoverStart + popoverRect[sizeKey];\n const diffStart = windowStart - popoverStart;\n const diffEnd = afterPopoverEnd - windowEnd;\n if (afterPopoverEnd <= windowEnd || diffStart > diffEnd)\n return afterPopoverStart;\n }\n return popoverStart;\n },\n after(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd + gap;\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n if (flip && popoverEnd > windowEnd) {\n const beforePopoverStart = this.before({ ...options, flip: false });\n const diffStart = windowStart - beforePopoverStart;\n const diffEnd = popoverEnd - windowEnd;\n if (beforePopoverStart >= windowStart || diffEnd > diffStart)\n return beforePopoverStart;\n }\n return popoverStart;\n },\n start: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n return fitToWindow(elementStart, { elementRect, popoverRect });\n },\n end: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd - popoverRect[sizeKey];\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n center: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart =\n elementStart + (elementRect[sizeKey] - popoverRect[sizeKey]) / 2;\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n };\n};\n\nconst getPopoverPosition = (\n top: PositionKeys,\n left: PositionKeys,\n options: PopoverPositionGetterOptions\n) => ({\n top: popoverPositionGetters('top')[top](options),\n left: popoverPositionGetters('left')[left](options),\n});\n\ntype PlacementPositionKeysMap = Record<Placement, [PositionKeys, PositionKeys]>;\nconst placementPositionKeysMap: PlacementPositionKeysMap = {\n top: ['before', 'center'],\n bottom: ['after', 'center'],\n left: ['center', 'before'],\n right: ['center', 'after'],\n 'top-start': ['before', 'start'],\n 'top-end': ['before', 'end'],\n 'bottom-start': ['after', 'start'],\n 'bottom-end': ['after', 'end'],\n 'left-start': ['start', 'before'],\n 'left-end': ['end', 'before'],\n 'right-start': ['start', 'after'],\n 'right-end': ['end', 'after'],\n};\n\ninterface PopoverPosition {\n top: number;\n left: number;\n}\n\n/**\n * Computes the position of the popover.\n * Note that you must change the elementRect when the scroll and resize events of the parent scrollable container occur.\n * In most cases, it will be the window.\n */\nconst usePopoverPosition = ({\n elementRect,\n popoverRect,\n placement = 'top',\n gap = 0.5,\n flip = true,\n}: UsePopoverPositionProps): PopoverPosition => {\n const bodyFontSize = useFontSize(document.body);\n const gapPx = useMemo(() => gap * bodyFontSize, [gap, bodyFontSize]);\n\n const positionKeys = useMemo(() => {\n if (typeof placement === 'string' && !!placementPositionKeysMap[placement])\n return placementPositionKeysMap[placement];\n return placementPositionKeysMap.top;\n }, [placement]);\n\n return getPopoverPosition(...positionKeys, {\n elementRect,\n popoverRect,\n gap: gapPx,\n flip,\n });\n};\n\nexport default usePopoverPosition;\n"],"mappings":"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"}
|
|
@@ -76,6 +76,5 @@ var Progress = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
76
76
|
}, text));
|
|
77
77
|
});
|
|
78
78
|
Progress.displayName = 'Progress';
|
|
79
|
-
var _default = Progress;
|
|
80
|
-
exports["default"] = _default;
|
|
79
|
+
var _default = exports["default"] = Progress;
|
|
81
80
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_theming","_utils","_react","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","Container","styled","omitEmotionProps","sizeStyles","Trail","p","clr","theme","progressColorTrail","concat","height","Stroke","percent","progressColorStroke","progressColorStrokeSuccess","transitionStyles","Text","div","progressColorPercentage","Progress","forwardRef","_ref","ref","_ref$percent","text","_ref$height","rest","validPercent","useMemo","textId","Math","random","toString","createElement","role","id","displayName","_default","exports"],"sources":["../../../src/Progress/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { WithSize, sizeStyles, transitionStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef, useMemo } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ProgressProps extends JsxDivProps, WithSize {\n /**\n * The percentage of completion.\n * @default 0\n */\n percent?: number;\n /**\n * The text that is displayed to the right of the progress bar.\n * @default undefined\n */\n text?: string;\n /**\n * The height of the progress bar.\n * @default 0.5em\n */\n height?: string;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n align-items: center;\n ${sizeStyles};\n`;\n\ntype TrailProps = Required<Pick<ProgressProps, 'height'>>;\nconst Trail = styled('div', omitEmotionProps('height'))<TrailProps>`\n width: 100%;\n background-color: ${(p) => clr(p.theme.progressColorTrail)};\n border-radius: ${(p) => `calc(${p.height} / 2)`};\n overflow: hidden; // To hide the border of the progress bar\n`;\n\ntype StrokeProps = Required<Pick<ProgressProps, 'percent' | 'height'>>;\nconst Stroke = styled(\n 'div',\n omitEmotionProps('percent', 'height')\n)<StrokeProps>`\n width: ${(p) => p.percent}%;\n height: ${(p) => p.height};\n border-radius: 0 ${(p) => `calc(${p.height} / 2)`}\n ${(p) => `calc(${p.height} / 2)`} 0;\n background-color: ${(p) =>\n p.percent < 100\n ? clr(p.theme.progressColorStroke)\n : clr(p.theme.progressColorStrokeSuccess)};\n ${transitionStyles('width', 'background-color')};\n`;\n\nconst Text = styled.div`\n margin-left: 0.5em;\n color: ${(p) => clr(p.theme.progressColorPercentage)};\n line-height: 1;\n`;\n\n/**\n * The progress bar.\n */\nconst Progress = forwardRef<HTMLDivElement, ProgressProps>(\n ({ percent = 0, text, height = '0.5em', ...rest }, ref) => {\n const validPercent = useMemo(() => {\n if (percent < 0) return 0;\n if (percent > 100) return 100;\n return percent;\n }, [percent]);\n\n const textId = useMemo(\n () => `progress-bar-text-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n\n return (\n <Container\n role='progressbar'\n aria-valuenow={validPercent}\n aria-valuemin={0}\n aria-valuemax={100}\n aria-describedby={textId}\n {...rest}\n ref={ref}\n >\n <Trail height={height}>\n <Stroke percent={validPercent} height={height} />\n </Trail>\n {text && <Text id={textId}>{text}</Text>}\n </Container>\n );\n }\n);\n\nProgress.displayName = 'Progress';\n\nexport default Progress;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_theming","_utils","_react","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","Container","styled","omitEmotionProps","sizeStyles","Trail","p","clr","theme","progressColorTrail","concat","height","Stroke","percent","progressColorStroke","progressColorStrokeSuccess","transitionStyles","Text","div","progressColorPercentage","Progress","forwardRef","_ref","ref","_ref$percent","text","_ref$height","rest","validPercent","useMemo","textId","Math","random","toString","createElement","role","id","displayName","_default","exports"],"sources":["../../../src/Progress/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { WithSize, sizeStyles, transitionStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef, useMemo } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ProgressProps extends JsxDivProps, WithSize {\n /**\n * The percentage of completion.\n * @default 0\n */\n percent?: number;\n /**\n * The text that is displayed to the right of the progress bar.\n * @default undefined\n */\n text?: string;\n /**\n * The height of the progress bar.\n * @default 0.5em\n */\n height?: string;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n align-items: center;\n ${sizeStyles};\n`;\n\ntype TrailProps = Required<Pick<ProgressProps, 'height'>>;\nconst Trail = styled('div', omitEmotionProps('height'))<TrailProps>`\n width: 100%;\n background-color: ${(p) => clr(p.theme.progressColorTrail)};\n border-radius: ${(p) => `calc(${p.height} / 2)`};\n overflow: hidden; // To hide the border of the progress bar\n`;\n\ntype StrokeProps = Required<Pick<ProgressProps, 'percent' | 'height'>>;\nconst Stroke = styled(\n 'div',\n omitEmotionProps('percent', 'height')\n)<StrokeProps>`\n width: ${(p) => p.percent}%;\n height: ${(p) => p.height};\n border-radius: 0 ${(p) => `calc(${p.height} / 2)`}\n ${(p) => `calc(${p.height} / 2)`} 0;\n background-color: ${(p) =>\n p.percent < 100\n ? clr(p.theme.progressColorStroke)\n : clr(p.theme.progressColorStrokeSuccess)};\n ${transitionStyles('width', 'background-color')};\n`;\n\nconst Text = styled.div`\n margin-left: 0.5em;\n color: ${(p) => clr(p.theme.progressColorPercentage)};\n line-height: 1;\n`;\n\n/**\n * The progress bar.\n */\nconst Progress = forwardRef<HTMLDivElement, ProgressProps>(\n ({ percent = 0, text, height = '0.5em', ...rest }, ref) => {\n const validPercent = useMemo(() => {\n if (percent < 0) return 0;\n if (percent > 100) return 100;\n return percent;\n }, [percent]);\n\n const textId = useMemo(\n () => `progress-bar-text-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n\n return (\n <Container\n role='progressbar'\n aria-valuenow={validPercent}\n aria-valuemin={0}\n aria-valuemax={100}\n aria-describedby={textId}\n {...rest}\n ref={ref}\n >\n <Trail height={height}>\n <Stroke percent={validPercent} height={height} />\n </Trail>\n {text && <Text id={textId}>{text}</Text>}\n </Container>\n );\n }\n);\n\nProgress.displayName = 'Progress';\n\nexport default Progress;\n"],"mappings":"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"}
|
|
@@ -91,6 +91,5 @@ var RadioGroup = /*#__PURE__*/(0, _react2.forwardRef)(function (_ref, ref) {
|
|
|
91
91
|
})));
|
|
92
92
|
});
|
|
93
93
|
RadioGroup.displayName = 'RadioGroup';
|
|
94
|
-
var _default = RadioGroup;
|
|
95
|
-
exports["default"] = _default;
|
|
94
|
+
var _default = exports["default"] = RadioGroup;
|
|
96
95
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_excluded2","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_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","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","wideDefaultStyles","p","wide","css","m","max","xxs","wideAlwaysStyles","Container","styled","omitEmotionProps","theme","borderRadius","disabled","clr","buttonDisabledGhostColorText","colorPrimary","StyledButton","Button","RadioGroup","forwardRef","_ref","ref","_ref$options","options","_ref$wide","_ref$disabled","defaultValue","_ref$onChange","onChange","size","rest","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","createElement","map","_ref2","title","valueOption","disabledOption","_ref2$onClick","onClick","buttonRest","type","displayName","_default","exports"],"sources":["../../../src/RadioGroup/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface RadioGroupOption\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * The title of the option.\n */\n title: string;\n /**\n * The value of the option.\n */\n value: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface RadioGroupProps extends JsxDivProps, WithSize {\n /**\n * Options of the radio group.\n * @default undefined\n */\n options?: RadioGroupOption[];\n /**\n * Whether the radio group has full width.\n * Possible values:\n * `default` – the radio group has full width if the screen width is less than xs;\n * `always` – the radio group always has full width;\n * `never` – the radio group never has full width.\n * @default default\n */\n wide?: 'default' | 'always' | 'never';\n /**\n * Whether the radio group is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Selected option.\n * @default false\n */\n value?: string;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string) => void;\n}\n\nconst wideDefaultStyles = (p) =>\n p.wide === 'default' &&\n css`\n ${m.max.xxs} {\n width: 100%;\n & > button {\n flex: 1;\n }\n }\n `;\n\nconst wideAlwaysStyles = (p) =>\n p.wide === 'always' &&\n css`\n width: 100%;\n & > button {\n flex: 1;\n }\n `;\n\ntype ContainerProps = Required<Pick<RadioGroupProps, 'wide' | 'disabled'>>;\nconst Container = styled(\n 'div',\n omitEmotionProps('wide', 'disabled')\n)<ContainerProps>`\n display: inline-flex;\n flex-wrap: wrap;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n overflow: hidden;\n border: 1px solid\n ${(p) =>\n p.disabled\n ? clr(p.theme.buttonDisabledGhostColorText)\n : clr(p.theme.colorPrimary)};\n\n ${wideDefaultStyles};\n ${wideAlwaysStyles};\n`;\n\nconst StyledButton = styled(Button)`\n border-radius: 0;\n`;\n\n/**\n * The radio buttons that allow a user to select only one of a limited number of options.\n */\nconst RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (\n {\n options = [],\n wide = 'default',\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <div>\n <Container wide={wide} disabled={disabled} {...rest} ref={ref}>\n {options?.map(\n ({\n title,\n value: valueOption,\n disabled: disabledOption,\n onClick = () => {},\n ...buttonRest\n }) => (\n <StyledButton\n key={valueOption}\n type={forwardedValue === valueOption ? 'primary' : 'ghost'}\n wide='never'\n disabled={disabled || disabledOption}\n size={size}\n onClick={(e) => {\n setForwardedValue(valueOption);\n onClick(e);\n }}\n {...buttonRest}\n >\n {title}\n </StyledButton>\n )\n )}\n </Container>\n </div>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n\nexport default RadioGroup;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_excluded2","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_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","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","wideDefaultStyles","p","wide","css","m","max","xxs","wideAlwaysStyles","Container","styled","omitEmotionProps","theme","borderRadius","disabled","clr","buttonDisabledGhostColorText","colorPrimary","StyledButton","Button","RadioGroup","forwardRef","_ref","ref","_ref$options","options","_ref$wide","_ref$disabled","defaultValue","_ref$onChange","onChange","size","rest","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","createElement","map","_ref2","title","valueOption","disabledOption","_ref2$onClick","onClick","buttonRest","type","displayName","_default","exports"],"sources":["../../../src/RadioGroup/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface RadioGroupOption\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * The title of the option.\n */\n title: string;\n /**\n * The value of the option.\n */\n value: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface RadioGroupProps extends JsxDivProps, WithSize {\n /**\n * Options of the radio group.\n * @default undefined\n */\n options?: RadioGroupOption[];\n /**\n * Whether the radio group has full width.\n * Possible values:\n * `default` – the radio group has full width if the screen width is less than xs;\n * `always` – the radio group always has full width;\n * `never` – the radio group never has full width.\n * @default default\n */\n wide?: 'default' | 'always' | 'never';\n /**\n * Whether the radio group is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Selected option.\n * @default false\n */\n value?: string;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string) => void;\n}\n\nconst wideDefaultStyles = (p) =>\n p.wide === 'default' &&\n css`\n ${m.max.xxs} {\n width: 100%;\n & > button {\n flex: 1;\n }\n }\n `;\n\nconst wideAlwaysStyles = (p) =>\n p.wide === 'always' &&\n css`\n width: 100%;\n & > button {\n flex: 1;\n }\n `;\n\ntype ContainerProps = Required<Pick<RadioGroupProps, 'wide' | 'disabled'>>;\nconst Container = styled(\n 'div',\n omitEmotionProps('wide', 'disabled')\n)<ContainerProps>`\n display: inline-flex;\n flex-wrap: wrap;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n overflow: hidden;\n border: 1px solid\n ${(p) =>\n p.disabled\n ? clr(p.theme.buttonDisabledGhostColorText)\n : clr(p.theme.colorPrimary)};\n\n ${wideDefaultStyles};\n ${wideAlwaysStyles};\n`;\n\nconst StyledButton = styled(Button)`\n border-radius: 0;\n`;\n\n/**\n * The radio buttons that allow a user to select only one of a limited number of options.\n */\nconst RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (\n {\n options = [],\n wide = 'default',\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <div>\n <Container wide={wide} disabled={disabled} {...rest} ref={ref}>\n {options?.map(\n ({\n title,\n value: valueOption,\n disabled: disabledOption,\n onClick = () => {},\n ...buttonRest\n }) => (\n <StyledButton\n key={valueOption}\n type={forwardedValue === valueOption ? 'primary' : 'ghost'}\n wide='never'\n disabled={disabled || disabledOption}\n size={size}\n onClick={(e) => {\n setForwardedValue(valueOption);\n onClick(e);\n }}\n {...buttonRest}\n >\n {title}\n </StyledButton>\n )\n )}\n </Container>\n </div>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n\nexport default RadioGroup;\n"],"mappings":"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"}
|
|
@@ -37,6 +37,5 @@ var RadioGroupSkeleton = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref
|
|
|
37
37
|
}));
|
|
38
38
|
});
|
|
39
39
|
RadioGroupSkeleton.displayName = 'RadioGroupSkeleton';
|
|
40
|
-
var _default = RadioGroupSkeleton;
|
|
41
|
-
exports["default"] = _default;
|
|
40
|
+
var _default = exports["default"] = RadioGroupSkeleton;
|
|
42
41
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_utils","_react","_interopRequireWildcard","_Skeleton","_excluded","_templateObject","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","StyledRadioGroupSkeleton","styled","Skeleton","omitEmotionProps","p","theme","baseHeight","sizeStyles","RadioGroupSkeleton","forwardRef","_ref","ref","_ref$width","width","rest","createElement","displayName","_default","exports"],"sources":["../../../src/RadioGroupSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface RadioGroupSkeletonProps extends SkeletonProps, WithSize {\n /**\n * The width of the skeleton.\n * @default 10em\n */\n width?: string;\n}\n\nconst StyledRadioGroupSkeleton = styled(\n Skeleton,\n omitEmotionProps('size')\n)<WithSize>`\n height: calc(${(p) => p.theme.baseHeight}em + 2px);\n ${sizeStyles};\n`;\n\n/**\n * Provides a radio group placeholder while a user waits for the content to load.\n */\nconst RadioGroupSkeleton = forwardRef<HTMLDivElement, RadioGroupSkeletonProps>(\n ({ width = '10em', ...rest }, ref) => (\n <StyledRadioGroupSkeleton width={width} {...rest} ref={ref} />\n )\n);\n\nRadioGroupSkeleton.displayName = 'RadioGroupSkeleton';\n\nexport default RadioGroupSkeleton;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_styles","_utils","_react","_interopRequireWildcard","_Skeleton","_excluded","_templateObject","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","StyledRadioGroupSkeleton","styled","Skeleton","omitEmotionProps","p","theme","baseHeight","sizeStyles","RadioGroupSkeleton","forwardRef","_ref","ref","_ref$width","width","rest","createElement","displayName","_default","exports"],"sources":["../../../src/RadioGroupSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface RadioGroupSkeletonProps extends SkeletonProps, WithSize {\n /**\n * The width of the skeleton.\n * @default 10em\n */\n width?: string;\n}\n\nconst StyledRadioGroupSkeleton = styled(\n Skeleton,\n omitEmotionProps('size')\n)<WithSize>`\n height: calc(${(p) => p.theme.baseHeight}em + 2px);\n ${sizeStyles};\n`;\n\n/**\n * Provides a radio group placeholder while a user waits for the content to load.\n */\nconst RadioGroupSkeleton = forwardRef<HTMLDivElement, RadioGroupSkeletonProps>(\n ({ width = '10em', ...rest }, ref) => (\n <StyledRadioGroupSkeleton width={width} {...rest} ref={ref} />\n )\n);\n\nRadioGroupSkeleton.displayName = 'RadioGroupSkeleton';\n\nexport default RadioGroupSkeleton;\n"],"mappings":"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"}
|
package/dist/cjs/Result/index.js
CHANGED
|
@@ -54,6 +54,5 @@ var Result = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
|
|
54
54
|
}), icon && /*#__PURE__*/_react["default"].createElement(IconContainer, null, icon), /*#__PURE__*/_react["default"].createElement(Title, null, title), description && /*#__PURE__*/_react["default"].createElement(Description, null, description), actions && /*#__PURE__*/_react["default"].createElement(ActiveElements, null, actions), children && /*#__PURE__*/_react["default"].createElement(ChildrenContainer, null, children));
|
|
55
55
|
});
|
|
56
56
|
Result.displayName = 'Result';
|
|
57
|
-
var _default = Result;
|
|
58
|
-
exports["default"] = _default;
|
|
57
|
+
var _default = exports["default"] = Result;
|
|
59
58
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_media","_styles","_theming","_utils","_react","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","Container","styled","omitEmotionProps","p","clr","theme","colorText","sizeStyles","IconContainer","div","resultColorIcon","Text","Title","sizes","large","Description","small","resultColorDescription","ActiveElements","m","min","sm","ChildrenContainer","Result","forwardRef","_ref","ref","title","description","icon","actions","children","rest","createElement","displayName","_default","exports"],"sources":["../../../src/Result/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ResultProps extends JsxDivProps, WithSize {\n /**\n * The title of the result.\n */\n title: string;\n /**\n * The description that is under the title.\n * @default undefined\n */\n description?: string;\n /**\n * The icon that is located above the title.\n * @default undefined\n */\n icon?: React.ReactElement;\n /**\n * Active elements.\n * @default undefined\n */\n actions?: React.ReactNode;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n flex-direction: column;\n align-items: center;\n\n color: ${(p) => clr(p.theme.colorText)};\n padding: 2.6em 0;\n\n ${sizeStyles};\n`;\n\nconst IconContainer = styled.div`\n font-size: 6em;\n line-height: 1;\n color: ${(p) => clr(p.theme.resultColorIcon)};\n margin-bottom: 0.1em;\n`;\n\nconst Text = styled.div`\n text-align: center;\n max-width: 28em;\n`;\n\nconst Title = styled(Text)`\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n`;\n\nconst Description = styled(Text)`\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.resultColorDescription)};\n margin-top: 0.5em;\n`;\n\nconst ActiveElements = styled.div`\n margin-top: 2em;\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n\n & > *:not(:first-of-type) {\n margin-top: 0.5em;\n }\n\n ${m.min.sm} {\n flex-direction: row;\n\n & > *:not(:first-of-type) {\n margin-top: 0;\n margin-left: 0.5em;\n }\n }\n`;\n\nconst ChildrenContainer = styled.div`\n margin-top: 2em;\n`;\n\n/**\n * Used to give the user feedback instead of results.\n * For example, error happened, results not found, no results yet.\n */\nconst Result = forwardRef<HTMLDivElement, ResultProps>(\n ({ title, description, icon, actions, children, ...rest }, ref) => (\n <Container {...rest} ref={ref}>\n {icon && <IconContainer>{icon}</IconContainer>}\n <Title>{title}</Title>\n {description && <Description>{description}</Description>}\n {actions && <ActiveElements>{actions}</ActiveElements>}\n {children && <ChildrenContainer>{children}</ChildrenContainer>}\n </Container>\n )\n);\n\nResult.displayName = 'Result';\n\nexport default Result;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_media","_styles","_theming","_utils","_react","_interopRequireWildcard","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","Container","styled","omitEmotionProps","p","clr","theme","colorText","sizeStyles","IconContainer","div","resultColorIcon","Text","Title","sizes","large","Description","small","resultColorDescription","ActiveElements","m","min","sm","ChildrenContainer","Result","forwardRef","_ref","ref","title","description","icon","actions","children","rest","createElement","displayName","_default","exports"],"sources":["../../../src/Result/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ResultProps extends JsxDivProps, WithSize {\n /**\n * The title of the result.\n */\n title: string;\n /**\n * The description that is under the title.\n * @default undefined\n */\n description?: string;\n /**\n * The icon that is located above the title.\n * @default undefined\n */\n icon?: React.ReactElement;\n /**\n * Active elements.\n * @default undefined\n */\n actions?: React.ReactNode;\n}\n\nconst Container = styled('div', omitEmotionProps('size'))<WithSize>`\n display: flex;\n flex-direction: column;\n align-items: center;\n\n color: ${(p) => clr(p.theme.colorText)};\n padding: 2.6em 0;\n\n ${sizeStyles};\n`;\n\nconst IconContainer = styled.div`\n font-size: 6em;\n line-height: 1;\n color: ${(p) => clr(p.theme.resultColorIcon)};\n margin-bottom: 0.1em;\n`;\n\nconst Text = styled.div`\n text-align: center;\n max-width: 28em;\n`;\n\nconst Title = styled(Text)`\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n`;\n\nconst Description = styled(Text)`\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.resultColorDescription)};\n margin-top: 0.5em;\n`;\n\nconst ActiveElements = styled.div`\n margin-top: 2em;\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n\n & > *:not(:first-of-type) {\n margin-top: 0.5em;\n }\n\n ${m.min.sm} {\n flex-direction: row;\n\n & > *:not(:first-of-type) {\n margin-top: 0;\n margin-left: 0.5em;\n }\n }\n`;\n\nconst ChildrenContainer = styled.div`\n margin-top: 2em;\n`;\n\n/**\n * Used to give the user feedback instead of results.\n * For example, error happened, results not found, no results yet.\n */\nconst Result = forwardRef<HTMLDivElement, ResultProps>(\n ({ title, description, icon, actions, children, ...rest }, ref) => (\n <Container {...rest} ref={ref}>\n {icon && <IconContainer>{icon}</IconContainer>}\n <Title>{title}</Title>\n {description && <Description>{description}</Description>}\n {actions && <ActiveElements>{actions}</ActiveElements>}\n {children && <ChildrenContainer>{children}</ChildrenContainer>}\n </Container>\n )\n);\n\nResult.displayName = 'Result';\n\nexport default Result;\n"],"mappings":"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"}
|
|
@@ -105,6 +105,5 @@ var ScrollButton = /*#__PURE__*/(0, _react2.forwardRef)(function (_ref, ref) {
|
|
|
105
105
|
}), scrollTo === 'top' ? /*#__PURE__*/_react2["default"].createElement(_icons.Up, null) : /*#__PURE__*/_react2["default"].createElement(_icons.Down, null))));
|
|
106
106
|
});
|
|
107
107
|
ScrollButton.displayName = 'ScrollButton';
|
|
108
|
-
var _default = ScrollButton;
|
|
109
|
-
exports["default"] = _default;
|
|
108
|
+
var _default = exports["default"] = ScrollButton;
|
|
110
109
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_portal","_theming","_utils","_react2","_interopRequireWildcard","_Button","_useContainerPosition","_useVisibility","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","StyledButton","styled","Button","omitEmotionProps","containerPosition","right","concat","scrollButtonMargin","bottom","clr","scrollButtonColorBoxShadow","ScrollButton","forwardRef","_ref","ref","container","_ref$scrollTo","scrollTo","_ref$minOffset","minOffset","_ref$onClick","onClick","rest","useVisibility","useContainerPosition","_useTheme","useTheme","mounted","useClosable","clickHandler","useCallback","e","window","top","document","body","scrollHeight","containerElement","Element","current","createElement","ThemeOverrider","overrides","t","buttonPrimaryColorBg","scrollButtonColorBg","buttonPrimaryColorText","scrollButtonColorText","buttonPrimaryColorBgHover","scrollButtonColorBgHover","wide","size","Up","Down","displayName","_default","exports"],"sources":["../../../src/ScrollButton/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Down, Up } from '@os-design/icons';\nimport Portal from '@os-design/portal';\nimport { clr, ThemeOverrider, useTheme } from '@os-design/theming';\nimport { omitEmotionProps, useClosable } from '@os-design/utils';\nimport React, {\n forwardRef,\n MouseEventHandler,\n RefObject,\n useCallback,\n} from 'react';\nimport Button, { ButtonProps } from '../Button';\nimport useContainerPosition, {\n ContainerPosition,\n} from './utils/useContainerPosition';\nimport useVisibility from './utils/useVisibility';\n\nexport interface ScrollButtonProps extends Omit<ButtonProps, 'type' | 'wide'> {\n /**\n * The container that needs to be scrolled.\n * @default undefined\n */\n container?: Element | RefObject<Element>;\n /**\n * Where the container should be scrolled.\n * @default top\n */\n scrollTo?: 'top' | 'bottom';\n /**\n * The min scroll offset when the button is visible.\n * @default 500\n */\n minOffset?: number;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface StyledButtonProps {\n visible: boolean;\n containerPosition: ContainerPosition;\n}\nconst StyledButton = styled(\n Button,\n omitEmotionProps('visible', 'containerPosition')\n)<StyledButtonProps>`\n position: fixed;\n right: ${(p) =>\n p.containerPosition.right > 0\n ? `calc(${p.containerPosition.right}px + ${p.theme.scrollButtonMargin}em)`\n : `${p.theme.scrollButtonMargin}em`};\n bottom: ${(p) =>\n `calc(${\n p.containerPosition.bottom > 0 ? `${p.containerPosition.bottom}px + ` : ''\n }${p.theme.scrollButtonMargin}em + env(safe-area-inset-bottom))`};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.scrollButtonColorBoxShadow)};\n\n ${visibleStyles};\n ${invisibleStyles};\n`;\n\n/**\n * The button to scroll to either the top or bottom of the container.\n */\nconst ScrollButton = forwardRef<HTMLButtonElement, ScrollButtonProps>(\n (\n {\n container,\n scrollTo = 'top',\n minOffset = 500,\n onClick = () => {},\n ...rest\n },\n ref\n ) => {\n const visible = useVisibility({ container, scrollTo, minOffset });\n const containerPosition = useContainerPosition(container);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Scroll through the container when the user clicks the button\n const clickHandler = useCallback<MouseEventHandler<HTMLButtonElement>>(\n (e) => {\n // Scroll the window if the container is not defined\n if (!container) {\n window.scrollTo({\n top: scrollTo === 'top' ? 0 : document.body.scrollHeight,\n });\n return;\n }\n\n // Otherwise scroll the container\n const containerElement =\n container instanceof Element ? container : container.current;\n if (!containerElement) return;\n\n containerElement.scrollTo({\n top: scrollTo === 'top' ? 0 : containerElement.scrollHeight,\n });\n\n // Call the passed onClick handler\n onClick(e);\n },\n [container, scrollTo, onClick]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal container={container}>\n <ThemeOverrider\n overrides={(t) => ({\n buttonPrimaryColorBg: t.scrollButtonColorBg,\n buttonPrimaryColorText: t.scrollButtonColorText,\n buttonPrimaryColorBgHover: t.scrollButtonColorBgHover,\n })}\n >\n <StyledButton\n visible={visible}\n containerPosition={containerPosition}\n wide='never'\n size='small'\n onClick={clickHandler}\n aria-label={`Scroll to ${scrollTo}`}\n {...rest}\n ref={ref}\n >\n {scrollTo === 'top' ? <Up /> : <Down />}\n </StyledButton>\n </ThemeOverrider>\n </Portal>\n );\n }\n);\n\nScrollButton.displayName = 'ScrollButton';\n\nexport default ScrollButton;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_portal","_theming","_utils","_react2","_interopRequireWildcard","_Button","_useContainerPosition","_useVisibility","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","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","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","fadeIn","keyframes","fadeOut","visibleStyles","p","visible","css","theme","transitionDelay","invisibleStyles","StyledButton","styled","Button","omitEmotionProps","containerPosition","right","concat","scrollButtonMargin","bottom","clr","scrollButtonColorBoxShadow","ScrollButton","forwardRef","_ref","ref","container","_ref$scrollTo","scrollTo","_ref$minOffset","minOffset","_ref$onClick","onClick","rest","useVisibility","useContainerPosition","_useTheme","useTheme","mounted","useClosable","clickHandler","useCallback","e","window","top","document","body","scrollHeight","containerElement","Element","current","createElement","ThemeOverrider","overrides","t","buttonPrimaryColorBg","scrollButtonColorBg","buttonPrimaryColorText","scrollButtonColorText","buttonPrimaryColorBgHover","scrollButtonColorBgHover","wide","size","Up","Down","displayName","_default","exports"],"sources":["../../../src/ScrollButton/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Down, Up } from '@os-design/icons';\nimport Portal from '@os-design/portal';\nimport { clr, ThemeOverrider, useTheme } from '@os-design/theming';\nimport { omitEmotionProps, useClosable } from '@os-design/utils';\nimport React, {\n forwardRef,\n MouseEventHandler,\n RefObject,\n useCallback,\n} from 'react';\nimport Button, { ButtonProps } from '../Button';\nimport useContainerPosition, {\n ContainerPosition,\n} from './utils/useContainerPosition';\nimport useVisibility from './utils/useVisibility';\n\nexport interface ScrollButtonProps extends Omit<ButtonProps, 'type' | 'wide'> {\n /**\n * The container that needs to be scrolled.\n * @default undefined\n */\n container?: Element | RefObject<Element>;\n /**\n * Where the container should be scrolled.\n * @default top\n */\n scrollTo?: 'top' | 'bottom';\n /**\n * The min scroll offset when the button is visible.\n * @default 500\n */\n minOffset?: number;\n}\n\nconst fadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst fadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst visibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${fadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst invisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${fadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ninterface StyledButtonProps {\n visible: boolean;\n containerPosition: ContainerPosition;\n}\nconst StyledButton = styled(\n Button,\n omitEmotionProps('visible', 'containerPosition')\n)<StyledButtonProps>`\n position: fixed;\n right: ${(p) =>\n p.containerPosition.right > 0\n ? `calc(${p.containerPosition.right}px + ${p.theme.scrollButtonMargin}em)`\n : `${p.theme.scrollButtonMargin}em`};\n bottom: ${(p) =>\n `calc(${\n p.containerPosition.bottom > 0 ? `${p.containerPosition.bottom}px + ` : ''\n }${p.theme.scrollButtonMargin}em + env(safe-area-inset-bottom))`};\n box-shadow: 0 0.15em 0.8em ${(p) => clr(p.theme.scrollButtonColorBoxShadow)};\n\n ${visibleStyles};\n ${invisibleStyles};\n`;\n\n/**\n * The button to scroll to either the top or bottom of the container.\n */\nconst ScrollButton = forwardRef<HTMLButtonElement, ScrollButtonProps>(\n (\n {\n container,\n scrollTo = 'top',\n minOffset = 500,\n onClick = () => {},\n ...rest\n },\n ref\n ) => {\n const visible = useVisibility({ container, scrollTo, minOffset });\n const containerPosition = useContainerPosition(container);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n // Scroll through the container when the user clicks the button\n const clickHandler = useCallback<MouseEventHandler<HTMLButtonElement>>(\n (e) => {\n // Scroll the window if the container is not defined\n if (!container) {\n window.scrollTo({\n top: scrollTo === 'top' ? 0 : document.body.scrollHeight,\n });\n return;\n }\n\n // Otherwise scroll the container\n const containerElement =\n container instanceof Element ? container : container.current;\n if (!containerElement) return;\n\n containerElement.scrollTo({\n top: scrollTo === 'top' ? 0 : containerElement.scrollHeight,\n });\n\n // Call the passed onClick handler\n onClick(e);\n },\n [container, scrollTo, onClick]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal container={container}>\n <ThemeOverrider\n overrides={(t) => ({\n buttonPrimaryColorBg: t.scrollButtonColorBg,\n buttonPrimaryColorText: t.scrollButtonColorText,\n buttonPrimaryColorBgHover: t.scrollButtonColorBgHover,\n })}\n >\n <StyledButton\n visible={visible}\n containerPosition={containerPosition}\n wide='never'\n size='small'\n onClick={clickHandler}\n aria-label={`Scroll to ${scrollTo}`}\n {...rest}\n ref={ref}\n >\n {scrollTo === 'top' ? <Up /> : <Down />}\n </StyledButton>\n </ThemeOverrider>\n </Portal>\n );\n }\n);\n\nScrollButton.displayName = 'ScrollButton';\n\nexport default ScrollButton;\n"],"mappings":"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"}
|
|
@@ -44,6 +44,5 @@ var useContainerPosition = function useContainerPosition(container) {
|
|
|
44
44
|
(0, _utils.useResizeObserver)(container, updatePosition);
|
|
45
45
|
return position;
|
|
46
46
|
};
|
|
47
|
-
var _default = useContainerPosition;
|
|
48
|
-
exports["default"] = _default;
|
|
47
|
+
var _default = exports["default"] = useContainerPosition;
|
|
49
48
|
//# sourceMappingURL=useContainerPosition.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useContainerPosition.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useContainerPosition","container","_useState","useState","right","bottom","_useState2","position","setPosition","updatePosition","useCallback","element","Element","current","_element$getBoundingC","getBoundingClientRect","_window","window","innerWidth","innerHeight","useBrowserLayoutEffect","useResizeObserver","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useContainerPosition.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useResizeObserver } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\nexport interface ContainerPosition {\n right: number;\n bottom: number;\n}\n\n/**\n * Calculates the position of the container.\n */\nconst useContainerPosition = (\n container?: Element | RefObject<Element>\n): ContainerPosition => {\n const [position, setPosition] = useState<ContainerPosition>({\n right: 0,\n bottom: 0,\n });\n\n const updatePosition = useCallback(() => {\n if (!container) return;\n const element =\n container instanceof Element ? container : container.current;\n if (!element) return;\n\n const { right, bottom } = element.getBoundingClientRect();\n const { innerWidth, innerHeight } = window;\n\n setPosition({\n right: innerWidth - right,\n bottom: innerHeight - bottom,\n });\n }, [container]);\n\n useBrowserLayoutEffect(() => updatePosition(), [updatePosition]);\n useResizeObserver(container as never, updatePosition);\n\n return position;\n};\n\nexport default useContainerPosition;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"useContainerPosition.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useContainerPosition","container","_useState","useState","right","bottom","_useState2","position","setPosition","updatePosition","useCallback","element","Element","current","_element$getBoundingC","getBoundingClientRect","_window","window","innerWidth","innerHeight","useBrowserLayoutEffect","useResizeObserver","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useContainerPosition.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useResizeObserver } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\nexport interface ContainerPosition {\n right: number;\n bottom: number;\n}\n\n/**\n * Calculates the position of the container.\n */\nconst useContainerPosition = (\n container?: Element | RefObject<Element>\n): ContainerPosition => {\n const [position, setPosition] = useState<ContainerPosition>({\n right: 0,\n bottom: 0,\n });\n\n const updatePosition = useCallback(() => {\n if (!container) return;\n const element =\n container instanceof Element ? container : container.current;\n if (!element) return;\n\n const { right, bottom } = element.getBoundingClientRect();\n const { innerWidth, innerHeight } = window;\n\n setPosition({\n right: innerWidth - right,\n bottom: innerHeight - bottom,\n });\n }, [container]);\n\n useBrowserLayoutEffect(() => updatePosition(), [updatePosition]);\n useResizeObserver(container as never, updatePosition);\n\n return position;\n};\n\nexport default useContainerPosition;\n"],"mappings":"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"}
|
|
@@ -42,6 +42,5 @@ var useVisibility = function useVisibility(_ref) {
|
|
|
42
42
|
(0, _utils.useEvent)(container || (typeof window !== 'undefined' ? window : undefined), 'scroll', updateVisibility);
|
|
43
43
|
return visible;
|
|
44
44
|
};
|
|
45
|
-
var _default = useVisibility;
|
|
46
|
-
exports["default"] = _default;
|
|
45
|
+
var _default = exports["default"] = useVisibility;
|
|
47
46
|
//# sourceMappingURL=useVisibility.js.map
|