@os-design/core 1.0.228 → 1.0.230
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 +2 -2
- package/dist/cjs/Alert/index.js.map +1 -1
- package/dist/cjs/Avatar/index.js +2 -2
- package/dist/cjs/Avatar/index.js.map +1 -1
- package/dist/cjs/AvatarSkeleton/index.js +2 -2
- package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
- package/dist/cjs/Breadcrumb/index.js +2 -2
- package/dist/cjs/Breadcrumb/index.js.map +1 -1
- package/dist/cjs/BreadcrumbItem/index.js +2 -2
- package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
- package/dist/cjs/Button/ButtonContent.js +1 -1
- package/dist/cjs/Button/ButtonContent.js.map +1 -1
- package/dist/cjs/Button/index.js +4 -4
- package/dist/cjs/Button/index.js.map +1 -1
- package/dist/cjs/Button/utils/useButtonColors.js +1 -1
- package/dist/cjs/Button/utils/useButtonColors.js.map +1 -1
- package/dist/cjs/ButtonLink/index.js +89 -0
- package/dist/cjs/ButtonLink/index.js.map +1 -0
- package/dist/cjs/Checkbox/index.js +2 -2
- package/dist/cjs/Checkbox/index.js.map +1 -1
- package/dist/cjs/CheckboxSkeleton/index.js +2 -2
- package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
- package/dist/cjs/DatePicker/DatePickerCalendar.js +2 -2
- package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
- package/dist/cjs/DatePicker/index.js +2 -2
- package/dist/cjs/DatePicker/index.js.map +1 -1
- package/dist/cjs/Drawer/index.js +2 -2
- package/dist/cjs/Drawer/index.js.map +1 -1
- package/dist/cjs/Form/index.js +2 -2
- package/dist/cjs/Form/index.js.map +1 -1
- package/dist/cjs/FormDivider/index.js +2 -2
- package/dist/cjs/FormDivider/index.js.map +1 -1
- package/dist/cjs/FormItem/index.js +2 -2
- package/dist/cjs/FormItem/index.js.map +1 -1
- package/dist/cjs/Gallery/index.js +2 -2
- package/dist/cjs/Gallery/index.js.map +1 -1
- package/dist/cjs/HeaderSkeleton/index.js +2 -2
- package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
- package/dist/cjs/Image/index.js +2 -2
- package/dist/cjs/Image/index.js.map +1 -1
- package/dist/cjs/ImageSkeleton/index.js +2 -2
- package/dist/cjs/ImageSkeleton/index.js.map +1 -1
- package/dist/cjs/Input/index.js +2 -2
- package/dist/cjs/Input/index.js.map +1 -1
- package/dist/cjs/InputNumber/index.js +2 -2
- package/dist/cjs/InputNumber/index.js.map +1 -1
- package/dist/cjs/InputPassword/index.js +2 -2
- package/dist/cjs/InputPassword/index.js.map +1 -1
- package/dist/cjs/InputSearch/index.js +2 -2
- package/dist/cjs/InputSearch/index.js.map +1 -1
- package/dist/cjs/InputSkeleton/index.js +2 -2
- package/dist/cjs/InputSkeleton/index.js.map +1 -1
- package/dist/cjs/Layout/index.js +2 -2
- package/dist/cjs/Layout/index.js.map +1 -1
- package/dist/cjs/Link/index.js +5 -16
- package/dist/cjs/Link/index.js.map +1 -1
- package/dist/cjs/LinkButton/index.js +19 -60
- package/dist/cjs/LinkButton/index.js.map +1 -1
- package/dist/cjs/List/WindowScroller.js +2 -2
- package/dist/cjs/List/WindowScroller.js.map +1 -1
- package/dist/cjs/List/index.js +2 -2
- package/dist/cjs/List/index.js.map +1 -1
- package/dist/cjs/ListItem/index.js +2 -2
- package/dist/cjs/ListItem/index.js.map +1 -1
- package/dist/cjs/ListItemActions/index.js +2 -2
- package/dist/cjs/ListItemActions/index.js.map +1 -1
- package/dist/cjs/ListItemLink/index.js +2 -2
- package/dist/cjs/ListItemLink/index.js.map +1 -1
- package/dist/cjs/ListSkeleton/index.js +2 -2
- package/dist/cjs/ListSkeleton/index.js.map +1 -1
- package/dist/cjs/LogoLink/index.js +2 -2
- package/dist/cjs/LogoLink/index.js.map +1 -1
- package/dist/cjs/Menu/index.js +2 -2
- package/dist/cjs/Menu/index.js.map +1 -1
- package/dist/cjs/MenuDivider/index.js +2 -2
- package/dist/cjs/MenuDivider/index.js.map +1 -1
- package/dist/cjs/MenuGroup/index.js +2 -2
- package/dist/cjs/MenuGroup/index.js.map +1 -1
- package/dist/cjs/MenuItem/index.js +2 -2
- package/dist/cjs/MenuItem/index.js.map +1 -1
- package/dist/cjs/Modal/index.js +2 -2
- package/dist/cjs/Modal/index.js.map +1 -1
- package/dist/cjs/Navigation/index.js +2 -2
- package/dist/cjs/Navigation/index.js.map +1 -1
- package/dist/cjs/NavigationItem/index.js +2 -2
- package/dist/cjs/NavigationItem/index.js.map +1 -1
- package/dist/cjs/PageContent/index.js +2 -2
- package/dist/cjs/PageContent/index.js.map +1 -1
- package/dist/cjs/PageHeader/index.js +2 -2
- package/dist/cjs/PageHeader/index.js.map +1 -1
- package/dist/cjs/PageHeaderInputSearch/index.js +2 -2
- package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
- package/dist/cjs/PageHeaderSkeleton/index.js +2 -2
- package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
- package/dist/cjs/ParagraphSkeleton/index.js +2 -2
- package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
- package/dist/cjs/Popover/index.js +2 -2
- package/dist/cjs/Popover/index.js.map +1 -1
- package/dist/cjs/Progress/index.js +2 -2
- package/dist/cjs/Progress/index.js.map +1 -1
- package/dist/cjs/RadioGroup/index.js +2 -2
- package/dist/cjs/RadioGroup/index.js.map +1 -1
- package/dist/cjs/RadioGroupSkeleton/index.js +2 -2
- package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
- package/dist/cjs/Result/index.js +2 -2
- package/dist/cjs/Result/index.js.map +1 -1
- package/dist/cjs/ScrollButton/index.js +2 -2
- package/dist/cjs/ScrollButton/index.js.map +1 -1
- package/dist/cjs/Select/index.js +9 -4
- package/dist/cjs/Select/index.js.map +1 -1
- package/dist/cjs/Skeleton/index.js +2 -2
- package/dist/cjs/Skeleton/index.js.map +1 -1
- package/dist/cjs/Switch/index.js +2 -2
- package/dist/cjs/Switch/index.js.map +1 -1
- package/dist/cjs/SwitchSkeleton/index.js +2 -2
- package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
- package/dist/cjs/Tag/index.js +2 -2
- package/dist/cjs/Tag/index.js.map +1 -1
- package/dist/cjs/TagLink/index.js +2 -2
- package/dist/cjs/TagLink/index.js.map +1 -1
- package/dist/cjs/TagList/index.js +2 -2
- package/dist/cjs/TagList/index.js.map +1 -1
- package/dist/cjs/TagListSkeleton/index.js +2 -2
- package/dist/cjs/TagListSkeleton/index.js.map +1 -1
- package/dist/cjs/TagSkeleton/index.js +2 -2
- package/dist/cjs/TagSkeleton/index.js.map +1 -1
- package/dist/cjs/TextArea/index.js +2 -2
- package/dist/cjs/TextArea/index.js.map +1 -1
- package/dist/cjs/TextAreaSkeleton/index.js +2 -2
- package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
- package/dist/cjs/ThemeSwitcher/index.js +2 -2
- package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
- package/dist/cjs/TimePicker/index.js +2 -2
- package/dist/cjs/TimePicker/index.js.map +1 -1
- package/dist/cjs/Video/index.js +2 -2
- package/dist/cjs/Video/index.js.map +1 -1
- package/dist/cjs/index.js +21 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/message/Message.js +2 -2
- package/dist/cjs/message/Message.js.map +1 -1
- package/dist/cjs/message/index.js +2 -2
- package/dist/cjs/message/index.js.map +1 -1
- package/dist/esm/Button/ButtonContent.js +1 -1
- package/dist/esm/Button/ButtonContent.js.map +1 -1
- package/dist/esm/Button/index.js +2 -2
- package/dist/esm/Button/index.js.map +1 -1
- package/dist/esm/Button/utils/useButtonColors.js +1 -1
- package/dist/esm/Button/utils/useButtonColors.js.map +1 -1
- package/dist/esm/ButtonLink/index.js +73 -0
- package/dist/esm/ButtonLink/index.js.map +1 -0
- package/dist/esm/Link/index.js +2 -13
- package/dist/esm/Link/index.js.map +1 -1
- package/dist/esm/LinkButton/index.js +25 -59
- package/dist/esm/LinkButton/index.js.map +1 -1
- package/dist/esm/Select/index.js +7 -2
- package/dist/esm/Select/index.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/types/ButtonLink/index.d.ts +286 -0
- package/dist/types/ButtonLink/index.d.ts.map +1 -0
- package/dist/types/Link/index.d.ts +2 -0
- package/dist/types/Link/index.d.ts.map +1 -1
- package/dist/types/LinkButton/index.d.ts +6 -283
- package/dist/types/LinkButton/index.d.ts.map +1 -1
- package/dist/types/Select/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +8 -8
- package/src/Button/ButtonContent.tsx +1 -1
- package/src/Button/index.tsx +2 -2
- package/src/Button/utils/useButtonColors.ts +1 -1
- package/src/ButtonLink/index.tsx +96 -0
- package/src/Link/index.tsx +2 -11
- package/src/LinkButton/index.tsx +38 -81
- package/src/Select/index.tsx +7 -2
- package/src/index.ts +2 -0
package/dist/cjs/Menu/index.js
CHANGED
|
@@ -16,8 +16,8 @@ var _Popover = _interopRequireDefault(require("../Popover"));
|
|
|
16
16
|
var _useFocusWithArrows = _interopRequireDefault(require("./utils/useFocusWithArrows"));
|
|
17
17
|
var _excluded = ["closeOnSelect", "modalTitle", "trigger", "placement", "visible", "onClose", "size", "className", "id", "children"];
|
|
18
18
|
var _templateObject, _templateObject2;
|
|
19
|
-
function _getRequireWildcardCache(
|
|
20
|
-
function _interopRequireWildcard(
|
|
19
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
21
21
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
22
22
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
23
23
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_media","_menuUtils","_styles","_utils","_react","_interopRequireWildcard","_Modal","_Popover","_useFocusWithArrows","_excluded","_templateObject","_templateObject2","_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","StyledPopover","styled","Popover","p","theme","menuPaddingVertical","menuMinWidth","menuMaxHeight","enableScrollingStyles","StyledModal","Modal","Menu","forwardRef","_ref","ref","_ref$closeOnSelect","closeOnSelect","modalTitle","trigger","_ref$placement","placement","visible","_ref$onClose","onClose","size","className","id","children","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","containerRef","mergedContainerRef","useFocusWithArrows","useKeyPress","window","undefined","isMinXs","useIsMinWidth","menuId","useMemo","concat","Math","random","useBrowserLayoutEffect","_ref2","current","setAttribute","contextValue","createElement","MenuContext","Provider","role","title","footer","displayName","_default","exports"],"sources":["../../../src/Menu/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { useIsMinWidth } from '@os-design/media';\nimport { MenuContext } from '@os-design/menu-utils';\nimport { enableScrollingStyles } from '@os-design/styles';\nimport {\n useBrowserLayoutEffect,\n useForwardedRef,\n useKeyPress,\n} from '@os-design/utils';\nimport React, { forwardRef, RefObject, useMemo } from 'react';\nimport Modal from '../Modal';\nimport Popover, { PopoverProps } from '../Popover';\nimport useFocusWithArrows from './utils/useFocusWithArrows';\n\nexport interface MenuProps extends PopoverProps {\n /**\n * Whether the menu closes when the user selects a menu item.\n * @default true\n */\n closeOnSelect?: boolean;\n /**\n * The title of the modal.\n * @default undefined\n */\n modalTitle?: string;\n}\n\nconst StyledPopover = styled(Popover)`\n padding: ${(p) => p.theme.menuPaddingVertical}em 0;\n min-width: ${(p) => p.theme.menuMinWidth}em;\n max-height: ${(p) => p.theme.menuMaxHeight}em;\n overflow: hidden;\n ${enableScrollingStyles('y')};\n`;\n\nconst StyledModal = styled(Modal)`\n padding-left: 0;\n padding-right: 0;\n`;\n\n/**\n * The dropdown menu.\n */\nconst Menu = forwardRef<HTMLDivElement, MenuProps>(\n (\n {\n closeOnSelect = true,\n modalTitle,\n trigger,\n placement = 'bottom-start',\n visible,\n onClose = () => {},\n size,\n className,\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const [containerRef, mergedContainerRef] = useForwardedRef(ref);\n useFocusWithArrows(containerRef);\n useKeyPress(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'Escape',\n onClose\n );\n const isMinXs = useIsMinWidth('xs');\n\n const menuId = useMemo(\n () => id || `menu-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n // Replace the aria-haspopup attribute from true to menu\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n current.setAttribute('aria-haspopup', 'menu');\n current.setAttribute('aria-controls', menuId);\n }, [menuId]);\n\n const contextValue = useMemo(\n () => ({ closeOnSelect, onClose }),\n [closeOnSelect, onClose]\n );\n\n return (\n <MenuContext.Provider value={contextValue}>\n {isMinXs ? (\n <StyledPopover\n trigger={trigger}\n placement={placement}\n visible={visible}\n onClose={onClose}\n size={size}\n className={className}\n id={menuId}\n role='menu'\n {...rest}\n ref={mergedContainerRef}\n >\n {children}\n </StyledPopover>\n ) : (\n <StyledModal\n title={modalTitle}\n footer={null}\n visible={visible}\n onClose={onClose}\n size={size}\n className={className}\n id={menuId}\n role='menu'\n ref={mergedContainerRef}\n >\n {children}\n </StyledModal>\n )}\n </MenuContext.Provider>\n );\n }\n);\n\nMenu.displayName = 'Menu';\n\nexport default Menu;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_media","_menuUtils","_styles","_utils","_react","_interopRequireWildcard","_Modal","_Popover","_useFocusWithArrows","_excluded","_templateObject","_templateObject2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","toString","slice","constructor","name","Array","from","test","len","arr2","l","Symbol","iterator","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","StyledPopover","styled","Popover","p","theme","menuPaddingVertical","menuMinWidth","menuMaxHeight","enableScrollingStyles","StyledModal","Modal","Menu","forwardRef","_ref","ref","_ref$closeOnSelect","closeOnSelect","modalTitle","trigger","_ref$placement","placement","visible","_ref$onClose","onClose","size","className","id","children","rest","_useForwardedRef","useForwardedRef","_useForwardedRef2","containerRef","mergedContainerRef","useFocusWithArrows","useKeyPress","window","undefined","isMinXs","useIsMinWidth","menuId","useMemo","concat","Math","random","useBrowserLayoutEffect","_ref2","current","setAttribute","contextValue","createElement","MenuContext","Provider","role","title","footer","displayName","_default","exports"],"sources":["../../../src/Menu/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { useIsMinWidth } from '@os-design/media';\nimport { MenuContext } from '@os-design/menu-utils';\nimport { enableScrollingStyles } from '@os-design/styles';\nimport {\n useBrowserLayoutEffect,\n useForwardedRef,\n useKeyPress,\n} from '@os-design/utils';\nimport React, { forwardRef, RefObject, useMemo } from 'react';\nimport Modal from '../Modal';\nimport Popover, { PopoverProps } from '../Popover';\nimport useFocusWithArrows from './utils/useFocusWithArrows';\n\nexport interface MenuProps extends PopoverProps {\n /**\n * Whether the menu closes when the user selects a menu item.\n * @default true\n */\n closeOnSelect?: boolean;\n /**\n * The title of the modal.\n * @default undefined\n */\n modalTitle?: string;\n}\n\nconst StyledPopover = styled(Popover)`\n padding: ${(p) => p.theme.menuPaddingVertical}em 0;\n min-width: ${(p) => p.theme.menuMinWidth}em;\n max-height: ${(p) => p.theme.menuMaxHeight}em;\n overflow: hidden;\n ${enableScrollingStyles('y')};\n`;\n\nconst StyledModal = styled(Modal)`\n padding-left: 0;\n padding-right: 0;\n`;\n\n/**\n * The dropdown menu.\n */\nconst Menu = forwardRef<HTMLDivElement, MenuProps>(\n (\n {\n closeOnSelect = true,\n modalTitle,\n trigger,\n placement = 'bottom-start',\n visible,\n onClose = () => {},\n size,\n className,\n id,\n children,\n ...rest\n },\n ref\n ) => {\n const [containerRef, mergedContainerRef] = useForwardedRef(ref);\n useFocusWithArrows(containerRef);\n useKeyPress(\n (typeof window !== 'undefined' ? window : undefined) as EventTarget,\n 'Escape',\n onClose\n );\n const isMinXs = useIsMinWidth('xs');\n\n const menuId = useMemo(\n () => id || `menu-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n // Replace the aria-haspopup attribute from true to menu\n useBrowserLayoutEffect(() => {\n if (!trigger) return;\n const { current } = trigger as RefObject<Element>;\n if (!current) return;\n current.setAttribute('aria-haspopup', 'menu');\n current.setAttribute('aria-controls', menuId);\n }, [menuId]);\n\n const contextValue = useMemo(\n () => ({ closeOnSelect, onClose }),\n [closeOnSelect, onClose]\n );\n\n return (\n <MenuContext.Provider value={contextValue}>\n {isMinXs ? (\n <StyledPopover\n trigger={trigger}\n placement={placement}\n visible={visible}\n onClose={onClose}\n size={size}\n className={className}\n id={menuId}\n role='menu'\n {...rest}\n ref={mergedContainerRef}\n >\n {children}\n </StyledPopover>\n ) : (\n <StyledModal\n title={modalTitle}\n footer={null}\n visible={visible}\n onClose={onClose}\n size={size}\n className={className}\n id={menuId}\n role='menu'\n ref={mergedContainerRef}\n >\n {children}\n </StyledModal>\n )}\n </MenuContext.Provider>\n );\n }\n);\n\nMenu.displayName = 'Menu';\n\nexport default Menu;\n"],"mappings":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAKA,IAAAK,MAAA,GAAAC,uBAAA,CAAAN,OAAA;AACA,IAAAO,MAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,QAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,mBAAA,GAAAV,sBAAA,CAAAC,OAAA;AAA4D,IAAAU,SAAA;AAAA,IAAAC,eAAA,EAAAC,gBAAA;AAAA,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAvB,uBAAAmC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAhB,UAAA,GAAAgB,GAAA,gBAAAA,GAAA;AAAA,SAAAC,SAAA,IAAAA,QAAA,GAAAV,MAAA,CAAAW,MAAA,GAAAX,MAAA,CAAAW,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAN,CAAA,MAAAA,CAAA,GAAAO,SAAA,CAAAC,MAAA,EAAAR,CAAA,UAAAS,MAAA,GAAAF,SAAA,CAAAP,CAAA,YAAAU,GAAA,IAAAD,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAC,GAAA,KAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,gBAAAJ,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAJ,SAAA;AAAA,SAAAK,eAAAC,GAAA,EAAAb,CAAA,WAAAc,eAAA,CAAAD,GAAA,KAAAE,qBAAA,CAAAF,GAAA,EAAAb,CAAA,KAAAgB,2BAAA,CAAAH,GAAA,EAAAb,CAAA,KAAAiB,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAA9B,CAAA,GAAAG,MAAA,CAAAI,SAAA,CAAAyB,QAAA,CAAAvB,IAAA,CAAAoB,CAAA,EAAAI,KAAA,aAAAjC,CAAA,iBAAA6B,CAAA,CAAAK,WAAA,EAAAlC,CAAA,GAAA6B,CAAA,CAAAK,WAAA,CAAAC,IAAA,MAAAnC,CAAA,cAAAA,CAAA,mBAAAoC,KAAA,CAAAC,IAAA,CAAAR,CAAA,OAAA7B,CAAA,+DAAAsC,IAAA,CAAAtC,CAAA,UAAA+B,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAAR,GAAA,EAAAgB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAAhB,GAAA,CAAAL,MAAA,EAAAqB,GAAA,GAAAhB,GAAA,CAAAL,MAAA,WAAAR,CAAA,MAAA8B,IAAA,OAAAJ,KAAA,CAAAG,GAAA,GAAA7B,CAAA,GAAA6B,GAAA,EAAA7B,CAAA,IAAA8B,IAAA,CAAA9B,CAAA,IAAAa,GAAA,CAAAb,CAAA,UAAA8B,IAAA;AAAA,SAAAf,sBAAA/B,CAAA,EAAA+C,CAAA,QAAA9C,CAAA,WAAAD,CAAA,gCAAAgD,MAAA,IAAAhD,CAAA,CAAAgD,MAAA,CAAAC,QAAA,KAAAjD,CAAA,4BAAAC,CAAA,QAAAH,CAAA,EAAAQ,CAAA,EAAAU,CAAA,EAAAJ,CAAA,EAAAJ,CAAA,OAAA0C,CAAA,OAAAf,CAAA,iBAAAnB,CAAA,IAAAf,CAAA,GAAAA,CAAA,CAAAc,IAAA,CAAAf,CAAA,GAAAmD,IAAA,QAAAJ,CAAA,QAAAtC,MAAA,CAAAR,CAAA,MAAAA,CAAA,UAAAiD,CAAA,uBAAAA,CAAA,IAAApD,CAAA,GAAAkB,CAAA,CAAAD,IAAA,CAAAd,CAAA,GAAAmD,IAAA,MAAA5C,CAAA,CAAA6C,IAAA,CAAAvD,CAAA,CAAAwD,KAAA,GAAA9C,CAAA,CAAAgB,MAAA,KAAAuB,CAAA,GAAAG,CAAA,iBAAAlD,CAAA,IAAAmC,CAAA,OAAA7B,CAAA,GAAAN,CAAA,yBAAAkD,CAAA,YAAAjD,CAAA,eAAAW,CAAA,GAAAX,CAAA,cAAAQ,MAAA,CAAAG,CAAA,MAAAA,CAAA,2BAAAuB,CAAA,QAAA7B,CAAA,aAAAE,CAAA;AAAA,SAAAsB,gBAAAD,GAAA,QAAAa,KAAA,CAAAa,OAAA,CAAA1B,GAAA,UAAAA,GAAA;AAAA,SAAA2B,yBAAA/B,MAAA,EAAAgC,QAAA,QAAAhC,MAAA,yBAAAH,MAAA,GAAAoC,6BAAA,CAAAjC,MAAA,EAAAgC,QAAA,OAAA/B,GAAA,EAAAV,CAAA,MAAAP,MAAA,CAAAkD,qBAAA,QAAAC,gBAAA,GAAAnD,MAAA,CAAAkD,qBAAA,CAAAlC,MAAA,QAAAT,CAAA,MAAAA,CAAA,GAAA4C,gBAAA,CAAApC,MAAA,EAAAR,CAAA,MAAAU,GAAA,GAAAkC,gBAAA,CAAA5C,CAAA,OAAAyC,QAAA,CAAAI,OAAA,CAAAnC,GAAA,uBAAAjB,MAAA,CAAAI,SAAA,CAAAiD,oBAAA,CAAA/C,IAAA,CAAAU,MAAA,EAAAC,GAAA,aAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,cAAAJ,MAAA;AAAA,SAAAoC,8BAAAjC,MAAA,EAAAgC,QAAA,QAAAhC,MAAA,yBAAAH,MAAA,WAAAyC,UAAA,GAAAtD,MAAA,CAAAuD,IAAA,CAAAvC,MAAA,OAAAC,GAAA,EAAAV,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAA+C,UAAA,CAAAvC,MAAA,EAAAR,CAAA,MAAAU,GAAA,GAAAqC,UAAA,CAAA/C,CAAA,OAAAyC,QAAA,CAAAI,OAAA,CAAAnC,GAAA,kBAAAJ,MAAA,CAAAI,GAAA,IAAAD,MAAA,CAAAC,GAAA,YAAAJ,MAAA;AAAA,SAAA2C,uBAAAC,OAAA,EAAAC,GAAA,SAAAA,GAAA,IAAAA,GAAA,GAAAD,OAAA,CAAA3B,KAAA,cAAA9B,MAAA,CAAA2D,MAAA,CAAA3D,MAAA,CAAA4D,gBAAA,CAAAH,OAAA,IAAAC,GAAA,IAAAb,KAAA,EAAA7C,MAAA,CAAA2D,MAAA,CAAAD,GAAA;AAe5D,IAAMG,aAAa,GAAG,IAAAC,kBAAM,EAACC,mBAAO,CAAC,CAAA7E,eAAA,KAAAA,eAAA,GAAAsE,sBAAA,4GACxB,UAACQ,CAAC;EAAA,OAAKA,CAAC,CAACC,KAAK,CAACC,mBAAmB;AAAA,GAChC,UAACF,CAAC;EAAA,OAAKA,CAAC,CAACC,KAAK,CAACE,YAAY;AAAA,GAC1B,UAACH,CAAC;EAAA,OAAKA,CAAC,CAACC,KAAK,CAACG,aAAa;AAAA,GAExC,IAAAC,6BAAqB,EAAC,GAAG,CAAC,CAC7B;AAED,IAAMC,WAAW,GAAG,IAAAR,kBAAM,EAACS,iBAAK,CAAC,CAAApF,gBAAA,KAAAA,gBAAA,GAAAqE,sBAAA,mDAGhC;;AAED;AACA;AACA;AACA,IAAMgB,IAAI,gBAAG,IAAAC,iBAAU,EACrB,UAAAC,IAAA,EAcEC,GAAG,EACA;EAAA,IAAAC,kBAAA,GAAAF,IAAA,CAbDG,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,IAAI,GAAAA,kBAAA;IACpBE,UAAU,GAAAJ,IAAA,CAAVI,UAAU;IACVC,OAAO,GAAAL,IAAA,CAAPK,OAAO;IAAAC,cAAA,GAAAN,IAAA,CACPO,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,cAAc,GAAAA,cAAA;IAC1BE,OAAO,GAAAR,IAAA,CAAPQ,OAAO;IAAAC,YAAA,GAAAT,IAAA,CACPU,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,YAAA;IAClBE,IAAI,GAAAX,IAAA,CAAJW,IAAI;IACJC,SAAS,GAAAZ,IAAA,CAATY,SAAS;IACTC,EAAE,GAAAb,IAAA,CAAFa,EAAE;IACFC,QAAQ,GAAAd,IAAA,CAARc,QAAQ;IACLC,IAAI,GAAA1C,wBAAA,CAAA2B,IAAA,EAAAzF,SAAA;EAIT,IAAAyG,gBAAA,GAA2C,IAAAC,sBAAe,EAAChB,GAAG,CAAC;IAAAiB,iBAAA,GAAAzE,cAAA,CAAAuE,gBAAA;IAAxDG,YAAY,GAAAD,iBAAA;IAAEE,kBAAkB,GAAAF,iBAAA;EACvC,IAAAG,8BAAkB,EAACF,YAAY,CAAC;EAChC,IAAAG,kBAAW,EACR,OAAOC,MAAM,KAAK,WAAW,GAAGA,MAAM,GAAGC,SAAS,EACnD,QAAQ,EACRd,OACF,CAAC;EACD,IAAMe,OAAO,GAAG,IAAAC,oBAAa,EAAC,IAAI,CAAC;EAEnC,IAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB;IAAA,OAAMf,EAAE,YAAAgB,MAAA,CAAYC,IAAI,CAACC,MAAM,CAAC,CAAC,CAAC5E,QAAQ,CAAC,EAAE,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE;EAAA,GAC7D,CAACyD,EAAE,CACL,CAAC;;EAED;EACA,IAAAmB,6BAAsB,EAAC,YAAM;IAC3B,IAAI,CAAC3B,OAAO,EAAE;IACd,IAAA4B,KAAA,GAAoB5B,OAAO;MAAnB6B,OAAO,GAAAD,KAAA,CAAPC,OAAO;IACf,IAAI,CAACA,OAAO,EAAE;IACdA,OAAO,CAACC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;IAC7CD,OAAO,CAACC,YAAY,CAAC,eAAe,EAAER,MAAM,CAAC;EAC/C,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,IAAMS,YAAY,GAAG,IAAAR,cAAO,EAC1B;IAAA,OAAO;MAAEzB,aAAa,EAAbA,aAAa;MAAEO,OAAO,EAAPA;IAAQ,CAAC;EAAA,CAAC,EAClC,CAACP,aAAa,EAAEO,OAAO,CACzB,CAAC;EAED,oBACExG,MAAA,YAAAmI,aAAA,CAACtI,UAAA,CAAAuI,WAAW,CAACC,QAAQ;IAACpE,KAAK,EAAEiE;EAAa,GACvCX,OAAO,gBACNvH,MAAA,YAAAmI,aAAA,CAAClD,aAAa,EAAAnD,QAAA;IACZqE,OAAO,EAAEA,OAAQ;IACjBE,SAAS,EAAEA,SAAU;IACrBC,OAAO,EAAEA,OAAQ;IACjBE,OAAO,EAAEA,OAAQ;IACjBC,IAAI,EAAEA,IAAK;IACXC,SAAS,EAAEA,SAAU;IACrBC,EAAE,EAAEc,MAAO;IACXa,IAAI,EAAC;EAAM,GACPzB,IAAI;IACRd,GAAG,EAAEmB;EAAmB,IAEvBN,QACY,CAAC,gBAEhB5G,MAAA,YAAAmI,aAAA,CAACzC,WAAW;IACV6C,KAAK,EAAErC,UAAW;IAClBsC,MAAM,EAAE,IAAK;IACblC,OAAO,EAAEA,OAAQ;IACjBE,OAAO,EAAEA,OAAQ;IACjBC,IAAI,EAAEA,IAAK;IACXC,SAAS,EAAEA,SAAU;IACrBC,EAAE,EAAEc,MAAO;IACXa,IAAI,EAAC,MAAM;IACXvC,GAAG,EAAEmB;EAAmB,GAEvBN,QACU,CAEK,CAAC;AAE3B,CACF,CAAC;AAEDhB,IAAI,CAAC6C,WAAW,GAAG,MAAM;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEX/C,IAAI"}
|
|
@@ -9,8 +9,8 @@ var _styled = _interopRequireDefault(require("@emotion/styled"));
|
|
|
9
9
|
var _theming = require("@os-design/theming");
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _templateObject;
|
|
12
|
-
function _getRequireWildcardCache(
|
|
13
|
-
function _interopRequireWildcard(
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
15
15
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
16
16
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_theming","_react","_interopRequireWildcard","_templateObject","_getRequireWildcardCache","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_theming","_react","_interopRequireWildcard","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","Container","styled","div","p","clr","theme","menuDividerColor","MenuDivider","forwardRef","props","ref","createElement","role","displayName","_default","exports"],"sources":["../../../src/MenuDivider/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\nimport React, { forwardRef } from 'react';\n\nexport type MenuDividerProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\n\nconst Container = styled.div`\n padding-top: 0.4em;\n border-bottom: 1px solid ${(p) => clr(p.theme.menuDividerColor)};\n margin-bottom: 0.4em;\n`;\n\n/**\n * The divider of menu items.\n */\nconst MenuDivider = forwardRef<HTMLDivElement, MenuDividerProps>(\n (props, ref) => <Container role='separator' {...props} ref={ref} />\n);\n\nMenuDivider.displayName = 'MenuDivider';\n\nexport default MenuDivider;\n"],"mappings":"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"}
|
|
@@ -15,8 +15,8 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
15
15
|
var _MenuItem = _interopRequireDefault(require("../MenuItem"));
|
|
16
16
|
var _excluded = ["title", "multiple", "maxSelectedItems", "value", "defaultValue", "onChange", "children"];
|
|
17
17
|
var _templateObject, _templateObject2;
|
|
18
|
-
function _getRequireWildcardCache(
|
|
19
|
-
function _interopRequireWildcard(
|
|
18
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
19
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
21
21
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
22
22
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_media","_menuUtils","_styles","_theming","_utils","_react","_interopRequireWildcard","_MenuItem","_excluded","_templateObject","_templateObject2","_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","ownKeys","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","n","toString","slice","constructor","name","test","len","arr2","l","u","a","f","next","done","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_taggedTemplateLiteral","strings","raw","freeze","Title","styled","div","p","theme","sizes","small","clr","menuGroupColorTitle","modalBodyPaddingHorizontal","m","min","xs","ellipsisStyles","Container","menuGroupColorDivider","modalBodyPaddingVertical","MenuGroup","forwardRef","_ref","ref","title","_ref$multiple","multiple","_ref$maxSelectedItems","maxSelectedItems","defaultValue","_ref$onChange","onChange","children","rest","_useContext","useContext","MenuContext","closeOnSelect","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","onSelect","useCallback","v","includes","item","concat","menuItems","useMemo","React","Children","map","child","isValidElement","type","MenuItem","_child$props","props","childValue","childOnClick","onClick","selected","cloneElement","role","createElement","displayName","_default","exports"],"sources":["../../../src/MenuGroup/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { MenuContext } from '@os-design/menu-utils';\nimport { ellipsisStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { useForwardedState } from '@os-design/utils';\nimport React, { forwardRef, useCallback, useContext, useMemo } from 'react';\nimport MenuItem from '../MenuItem';\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'defaultValue' | 'value' | 'onChange' | 'ref'\n>;\ninterface BaseMenuGroupProps<T> extends JsxDivProps {\n /**\n * The title of the menu group.\n * @default undefined\n */\n title?: string;\n /**\n * The max number of options that the user can select. Zero means unlimited.\n * Works only when multiple is true.\n * @default 0\n */\n maxSelectedItems?: number;\n /**\n * Selected menu items.\n * @default undefined\n */\n value?: T;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: T;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: T) => void;\n}\ninterface MenuGroupNotMultipleProps extends BaseMenuGroupProps<string | null> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple?: false;\n}\ninterface MenuGroupMultipleProps extends BaseMenuGroupProps<string[]> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple: true;\n}\nexport type MenuGroupProps = MenuGroupNotMultipleProps | MenuGroupMultipleProps;\n\nconst Title = styled.div`\n font-weight: 500;\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.menuGroupColorTitle)};\n margin-bottom: 0.4em;\n\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n ${m.min.xs} {\n padding: 0 0.8em;\n }\n\n ${ellipsisStyles};\n`;\n\nconst Container = styled.div`\n &:not(:last-of-type) {\n padding-bottom: 0.4em;\n border-bottom: 1px solid ${(p) => clr(p.theme.menuGroupColorDivider)};\n }\n &:not(:first-of-type) {\n margin-top: ${(p) => p.theme.modalBodyPaddingVertical[0]}em;\n ${m.min.xs} {\n margin-top: 0.4em;\n }\n }\n`;\n\n/**\n * The group of menu items.\n */\nconst MenuGroup = forwardRef<HTMLDivElement, MenuGroupProps>(\n (\n {\n title,\n multiple = false,\n maxSelectedItems = 0,\n value,\n defaultValue,\n onChange = () => {},\n children,\n ...rest\n },\n ref\n ) => {\n const { closeOnSelect } = useContext(MenuContext);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [forwardedValue, setForwardedValue] = useForwardedState<any>({\n value,\n defaultValue,\n onChange,\n });\n\n const onSelect = useCallback(\n (v: string) => {\n if (multiple) {\n // Delete the value because it was already selected\n if ((forwardedValue || []).includes(v)) {\n setForwardedValue(\n (forwardedValue || []).filter((item) => item !== v)\n );\n return;\n }\n\n // Add a new value if the number of selected items is less than max\n if (\n maxSelectedItems === 0 ||\n (forwardedValue || []).length < maxSelectedItems\n ) {\n setForwardedValue([...(forwardedValue || []), v]);\n return;\n }\n return;\n }\n setForwardedValue(v);\n },\n [forwardedValue, maxSelectedItems, multiple, setForwardedValue]\n );\n\n const menuItems = useMemo(\n () =>\n React.Children.map(children, (child) => {\n if (!React.isValidElement(child) || child.type !== MenuItem)\n return child;\n const { value: childValue, onClick: childOnClick } = child.props;\n const selected =\n (multiple && (forwardedValue || []).includes(childValue)) ||\n (!multiple && forwardedValue === childValue);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return React.cloneElement<any>(child, {\n key: childValue,\n selected,\n onClick: (e) => {\n if (!childValue) return;\n onSelect(childValue);\n if (childOnClick) childOnClick(e);\n },\n ...(!closeOnSelect\n ? {\n role:\n maxSelectedItems === 1\n ? 'menuitemradio'\n : 'menuitemcheckbox',\n 'aria-checked': selected,\n }\n : {}),\n });\n }),\n [\n children,\n closeOnSelect,\n forwardedValue,\n maxSelectedItems,\n multiple,\n onSelect,\n ]\n );\n\n return (\n <Container\n role={maxSelectedItems === 1 ? 'radiogroup' : 'group'}\n {...rest}\n ref={ref}\n >\n {title && <Title>{title}</Title>}\n {menuItems}\n </Container>\n );\n }\n);\n\nMenuGroup.displayName = 'MenuGroup';\n\nexport default MenuGroup;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_styled","_interopRequireDefault","require","_media","_menuUtils","_styles","_theming","_utils","_react","_interopRequireWildcard","_MenuItem","_excluded","_templateObject","_templateObject2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","slice","constructor","name","test","len","arr2","l","f","next","done","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_taggedTemplateLiteral","strings","raw","freeze","Title","styled","div","p","theme","sizes","small","clr","menuGroupColorTitle","modalBodyPaddingHorizontal","m","min","xs","ellipsisStyles","Container","menuGroupColorDivider","modalBodyPaddingVertical","MenuGroup","forwardRef","_ref","ref","title","_ref$multiple","multiple","_ref$maxSelectedItems","maxSelectedItems","defaultValue","_ref$onChange","onChange","children","rest","_useContext","useContext","MenuContext","closeOnSelect","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","onSelect","useCallback","v","includes","item","concat","menuItems","useMemo","React","Children","map","child","isValidElement","type","MenuItem","_child$props","props","childValue","childOnClick","onClick","selected","cloneElement","role","createElement","displayName","_default","exports"],"sources":["../../../src/MenuGroup/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { MenuContext } from '@os-design/menu-utils';\nimport { ellipsisStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { useForwardedState } from '@os-design/utils';\nimport React, { forwardRef, useCallback, useContext, useMemo } from 'react';\nimport MenuItem from '../MenuItem';\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'defaultValue' | 'value' | 'onChange' | 'ref'\n>;\ninterface BaseMenuGroupProps<T> extends JsxDivProps {\n /**\n * The title of the menu group.\n * @default undefined\n */\n title?: string;\n /**\n * The max number of options that the user can select. Zero means unlimited.\n * Works only when multiple is true.\n * @default 0\n */\n maxSelectedItems?: number;\n /**\n * Selected menu items.\n * @default undefined\n */\n value?: T;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: T;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: T) => void;\n}\ninterface MenuGroupNotMultipleProps extends BaseMenuGroupProps<string | null> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple?: false;\n}\ninterface MenuGroupMultipleProps extends BaseMenuGroupProps<string[]> {\n /**\n * Is it possible to select multiple values.\n * @default false\n */\n multiple: true;\n}\nexport type MenuGroupProps = MenuGroupNotMultipleProps | MenuGroupMultipleProps;\n\nconst Title = styled.div`\n font-weight: 500;\n font-size: ${(p) => p.theme.sizes.small}em;\n color: ${(p) => clr(p.theme.menuGroupColorTitle)};\n margin-bottom: 0.4em;\n\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n ${m.min.xs} {\n padding: 0 0.8em;\n }\n\n ${ellipsisStyles};\n`;\n\nconst Container = styled.div`\n &:not(:last-of-type) {\n padding-bottom: 0.4em;\n border-bottom: 1px solid ${(p) => clr(p.theme.menuGroupColorDivider)};\n }\n &:not(:first-of-type) {\n margin-top: ${(p) => p.theme.modalBodyPaddingVertical[0]}em;\n ${m.min.xs} {\n margin-top: 0.4em;\n }\n }\n`;\n\n/**\n * The group of menu items.\n */\nconst MenuGroup = forwardRef<HTMLDivElement, MenuGroupProps>(\n (\n {\n title,\n multiple = false,\n maxSelectedItems = 0,\n value,\n defaultValue,\n onChange = () => {},\n children,\n ...rest\n },\n ref\n ) => {\n const { closeOnSelect } = useContext(MenuContext);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const [forwardedValue, setForwardedValue] = useForwardedState<any>({\n value,\n defaultValue,\n onChange,\n });\n\n const onSelect = useCallback(\n (v: string) => {\n if (multiple) {\n // Delete the value because it was already selected\n if ((forwardedValue || []).includes(v)) {\n setForwardedValue(\n (forwardedValue || []).filter((item) => item !== v)\n );\n return;\n }\n\n // Add a new value if the number of selected items is less than max\n if (\n maxSelectedItems === 0 ||\n (forwardedValue || []).length < maxSelectedItems\n ) {\n setForwardedValue([...(forwardedValue || []), v]);\n return;\n }\n return;\n }\n setForwardedValue(v);\n },\n [forwardedValue, maxSelectedItems, multiple, setForwardedValue]\n );\n\n const menuItems = useMemo(\n () =>\n React.Children.map(children, (child) => {\n if (!React.isValidElement(child) || child.type !== MenuItem)\n return child;\n const { value: childValue, onClick: childOnClick } = child.props;\n const selected =\n (multiple && (forwardedValue || []).includes(childValue)) ||\n (!multiple && forwardedValue === childValue);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return React.cloneElement<any>(child, {\n key: childValue,\n selected,\n onClick: (e) => {\n if (!childValue) return;\n onSelect(childValue);\n if (childOnClick) childOnClick(e);\n },\n ...(!closeOnSelect\n ? {\n role:\n maxSelectedItems === 1\n ? 'menuitemradio'\n : 'menuitemcheckbox',\n 'aria-checked': selected,\n }\n : {}),\n });\n }),\n [\n children,\n closeOnSelect,\n forwardedValue,\n maxSelectedItems,\n multiple,\n onSelect,\n ]\n );\n\n return (\n <Container\n role={maxSelectedItems === 1 ? 'radiogroup' : 'group'}\n {...rest}\n ref={ref}\n >\n {title && <Title>{title}</Title>}\n {menuItems}\n </Container>\n );\n }\n);\n\nMenuGroup.displayName = 'MenuGroup';\n\nexport default MenuGroup;\n"],"mappings":"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"}
|
|
@@ -16,8 +16,8 @@ var _react2 = _interopRequireWildcard(require("react"));
|
|
|
16
16
|
var _Button = _interopRequireDefault(require("../Button"));
|
|
17
17
|
var _excluded = ["selected", "value", "right", "onClick"];
|
|
18
18
|
var _templateObject, _templateObject2, _templateObject3;
|
|
19
|
-
function _getRequireWildcardCache(
|
|
20
|
-
function _interopRequireWildcard(
|
|
19
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
20
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
21
21
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
22
22
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
23
23
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_media","_menuUtils","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_templateObject","_templateObject2","_templateObject3","_getRequireWildcardCache","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_media","_menuUtils","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_templateObject","_templateObject2","_templateObject3","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","selectedStyles","p","selected","css","clr","theme","menuItemSelectedColorBg","StyledButton","styled","Button","omitEmotionProps","menuItemHeight","menuItemPaddingHorizontal","m","min","xs","SelectedIcon","Check","menuItemSelectedColorIcon","MenuItem","forwardRef","_ref","ref","_ref$selected","right","_ref$onClick","onClick","rest","_useContext","useContext","MenuContext","closeOnSelect","onClose","onClickRef","useRef","useEffect","current","clickHandler","useCallback","createElement","ThemeOverrider","overrides","buttonGhostColorText","colorText","type","wide","role","displayName","_default","exports"],"sources":["../../../src/MenuItem/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Check } from '@os-design/icons';\nimport { m } from '@os-design/media';\nimport { MenuContext } from '@os-design/menu-utils';\nimport { ThemeOverrider, clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, {\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useRef,\n} from 'react';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface MenuItemProps\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * Whether the menu item is selected.\n * @default false\n */\n selected?: boolean;\n /**\n * The value of the menu item.\n * @default undefined\n */\n value?: string;\n}\n\nconst selectedStyles = (p) =>\n p.selected &&\n css`\n background-color: ${clr(p.theme.menuItemSelectedColorBg)};\n `;\n\ntype StyledButtonProps = Pick<MenuItemProps, 'selected'>;\nconst StyledButton = styled(\n Button,\n omitEmotionProps('selected')\n)<StyledButtonProps>`\n display: flex;\n font-weight: normal;\n border-radius: 0;\n height: ${(p) => p.theme.menuItemHeight}em;\n\n & > span {\n flex: 1;\n text-align: left;\n overflow: hidden;\n line-height: 1.5;\n }\n\n padding: 0 ${(p) => p.theme.menuItemPaddingHorizontal[0]}em;\n ${m.min.xs} {\n padding: 0 ${(p) => p.theme.menuItemPaddingHorizontal[1]}em;\n }\n\n ${selectedStyles};\n`;\n\nconst SelectedIcon = styled(Check)`\n color: ${(p) => clr(p.theme.menuItemSelectedColorIcon)};\n`;\n\n/**\n * The base menu item.\n */\nconst MenuItem = forwardRef<HTMLButtonElement, MenuItemProps>(\n ({ selected = false, value, right, onClick = () => {}, ...rest }, ref) => {\n const { closeOnSelect, onClose } = useContext(MenuContext);\n const onClickRef = useRef<MenuItemProps['onClick']>();\n\n useEffect(() => {\n onClickRef.current = onClick;\n }, [onClick]);\n\n const clickHandler = useCallback(\n (e) => {\n if (onClickRef.current) onClickRef.current(e);\n if (closeOnSelect) onClose();\n },\n [closeOnSelect, onClose]\n );\n\n return (\n <ThemeOverrider\n overrides={(theme) => ({ buttonGhostColorText: theme.colorText })}\n >\n <StyledButton\n selected={selected}\n right={selected ? <SelectedIcon /> : right}\n type='ghost'\n wide='always'\n onClick={clickHandler}\n role='menuitem'\n {...rest}\n ref={ref}\n />\n </ThemeOverrider>\n );\n }\n);\n\nMenuItem.displayName = 'MenuItem';\n\nexport default MenuItem;\n"],"mappings":"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"}
|
package/dist/cjs/Modal/index.js
CHANGED
|
@@ -19,8 +19,8 @@ var _Button = _interopRequireDefault(require("../Button"));
|
|
|
19
19
|
var _defaultLocale = _interopRequireDefault(require("./utils/defaultLocale"));
|
|
20
20
|
var _excluded = ["title", "okText", "okDanger", "okLoading", "okDisabled", "header", "footer", "visible", "locale", "onClose", "onOk", "size", "id", "onClick", "children"];
|
|
21
21
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
|
|
22
|
-
function _getRequireWildcardCache(
|
|
23
|
-
function _interopRequireWildcard(
|
|
22
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
23
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
24
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
25
25
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
26
26
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_media","_portal","_styles","_theming","_utils","_react2","_interopRequireWildcard","_reactFocusLock","_Button","_defaultLocale","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_templateObject13","_templateObject14","_templateObject15","_templateObject16","_templateObject17","_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","MODAL_CONTAINER_Z_INDEX","MODAL_BOX_SHADOW_SIZE_EM","maskFadeIn","keyframes","maskFadeOut","maskVisibleStyles","p","visible","css","theme","transitionDelay","maskInvisibleStyles","ModalMask","exports","styled","omitEmotionProps","clr","modalMaskColorBg","Container","div","m","min","xs","enableScrollingStyles","contentFadeIn","contentFadeOut","contentFadeInXs","contentFadeOutXs","contentVisibleStyles","contentInvisibleStyles","Content","colorBg","colorText","modalColorBoxShadow","borderRadius","modalWidth","sizeStyles","Header","modalHeaderHeight","modalHeaderColorBorderBottom","modalBodyPaddingHorizontal","Math","max","buttonPaddingHorizontal","Title","sizes","large","ellipsisStyles","Body","modalBodyPaddingVertical","Footer","CloseModalContext","React","createContext","useCloseModal","useContext","Modal","forwardRef","_ref","ref","title","_ref$okText","okText","_ref$okDanger","okDanger","_ref$okLoading","okLoading","_ref$okDisabled","okDisabled","header","footer","_ref$visible","_ref$locale","locale","defaultLocale","_ref$onClose","onClose","onOk","size","id","_ref$onClick","onClick","children","rest","contentRef","useRef","_useTheme","useTheme","mounted","useClosable","useBodyScroll","titleId","useMemo","concat","random","toString","bodyId","containerClickHandler","useCallback","e","stopPropagation","contentClickHandler","contentKeyDownHandler","ariaLabelledBy","undefined","createElement","autoFocus","Provider","tabIndex","onKeyDown","role","ThemeOverrider","overrides","t","modalCloseButtonPaddingHorizontal","type","wide","closeLabel","Close","danger","loading","disabled","displayName","_default"],"sources":["../../../src/Modal/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Close } from '@os-design/icons';\nimport { m } from '@os-design/media';\nimport Portal from '@os-design/portal';\nimport {\n WithSize,\n ellipsisStyles,\n enableScrollingStyles,\n sizeStyles,\n} from '@os-design/styles';\nimport { ThemeOverrider, clr, useTheme } from '@os-design/theming';\nimport { omitEmotionProps, useBodyScroll, useClosable } from '@os-design/utils';\nimport React, {\n KeyboardEvent,\n MouseEvent,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n useRef,\n} from 'react';\nimport FocusLock from 'react-focus-lock';\nimport Button from '../Button';\nimport defaultLocale, { ModalLocale } from './utils/defaultLocale';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ModalProps extends JsxDivProps, WithSize {\n /**\n * The title of the modal.\n * @default undefined\n */\n title?: string;\n /**\n * The text of the OK button.\n * @default OK\n */\n okText?: string;\n /**\n * Sets the danger styles to the OK button.\n * @default false\n */\n okDanger?: boolean;\n /**\n * Whether the OK button is loading.\n * @default false\n */\n okLoading?: boolean;\n /**\n * Whether the OK button is disabled.\n * @default false\n */\n okDisabled?: boolean;\n /**\n * The header component.\n * Set as null if you don't need the default header.\n * @default undefined\n */\n header?: React.ReactNode;\n /**\n * The footer component.\n * Set as null if you don't need the default footer.\n * @default undefined\n */\n footer?: React.ReactNode;\n /**\n * Whether the modal is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The locale of the modal.\n * @default undefined\n */\n locale?: ModalLocale;\n /**\n * Specifies a callback that will be called when a user clicks the mask or\n * the close button. The callback should set the visible state to false.\n * @default undefined\n */\n onClose?: () => void;\n /**\n * Specifies a callback that will be called when a user clicks the OK button.\n * @default undefined\n */\n onOk?: () => void;\n}\n\nconst MODAL_CONTAINER_Z_INDEX = 1000;\nconst MODAL_BOX_SHADOW_SIZE_EM = 1;\n\nconst maskFadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst maskFadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst maskVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${maskFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst maskInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${maskFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ntype MaskProps = Pick<ModalProps, 'visible'>;\nexport const ModalMask = styled('div', omitEmotionProps('visible'))<MaskProps>`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n background-color: ${(p) => clr(p.theme.modalMaskColorBg)};\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n ${maskVisibleStyles};\n ${maskInvisibleStyles};\n`;\n\nconst Container = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n\n ${m.min.xs} {\n ${enableScrollingStyles('y')};\n }\n`;\n\nconst contentFadeIn = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n`;\n\nconst contentFadeOut = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentFadeInXs = keyframes`\n from { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(6em); }\n`;\n\nconst contentFadeOutXs = keyframes`\n from { transform: translateY(6em); }\n to { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${contentFadeIn} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeInXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\nconst contentInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${contentFadeOut} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeOutXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\ntype ContentProps = Pick<ModalProps, 'visible' | 'size'>;\nconst Content = styled(\n 'div',\n omitEmotionProps('visible', 'size')\n)<ContentProps>`\n position: absolute;\n display: flex;\n flex-direction: column;\n padding-bottom: env(safe-area-inset-bottom);\n\n background-color: ${(p) => clr(p.theme.colorBg)};\n color: ${(p) => clr(p.theme.colorText)};\n box-shadow: 0 0 ${MODAL_BOX_SHADOW_SIZE_EM}em\n ${(p) => clr(p.theme.modalColorBoxShadow)};\n\n width: 100%;\n max-height: 100%;\n border-radius: ${(p) => p.theme.borderRadius}em\n ${(p) => p.theme.borderRadius}em 0 0;\n\n ${m.min.xs} {\n width: ${(p) => p.theme.modalWidth}em;\n max-height: unset;\n border-radius: ${(p) => p.theme.borderRadius}em;\n\n left: 50%;\n margin-left: ${(p) => -p.theme.modalWidth / 2}em;\n }\n\n ${contentVisibleStyles};\n ${contentInvisibleStyles}\n ${sizeStyles};\n`;\n\nconst Header = styled.div`\n flex-shrink: 0;\n height: ${(p) => p.theme.modalHeaderHeight}em;\n border-bottom: 1px solid ${(p) => clr(p.theme.modalHeaderColorBorderBottom)};\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n\n ${m.min.xs} {\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n }\n`;\n\nconst Title = styled.div`\n flex: 1;\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n ${ellipsisStyles};\n`;\n\nconst Body = styled.div`\n flex-grow: 1;\n\n padding: ${(p) => p.theme.modalBodyPaddingVertical[0]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n\n ${m.min.xs} {\n padding: ${(p) => p.theme.modalBodyPaddingVertical[1]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n }\n\n ${enableScrollingStyles('y')};\n`;\n\nconst Footer = styled.div`\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em\n ${(p) => p.theme.modalBodyPaddingVertical[0]}em;\n\n ${m.min.xs} {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em\n ${(p) => p.theme.modalBodyPaddingVertical[1]}em;\n }\n`;\n\nconst CloseModalContext = React.createContext<() => void>(() => {});\n\nexport const useCloseModal = () => useContext(CloseModalContext);\n\n/**\n * The base pop-up window.\n */\nconst Modal = forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n title,\n okText = 'OK',\n okDanger = false,\n okLoading = false,\n okDisabled = false,\n header,\n footer,\n visible = false,\n locale = defaultLocale,\n onClose = () => {},\n onOk,\n size,\n id,\n onClick = () => {},\n children,\n ...rest\n },\n ref\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n useBodyScroll(!visible);\n\n const titleId = useMemo(\n () => `modal-title-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n const bodyId = useMemo(\n () => id || `modal-body-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n const containerClickHandler = useCallback(\n (e: MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onClose();\n },\n [onClose]\n );\n\n const contentClickHandler = useCallback(\n (e: MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onClick(e);\n },\n [onClick]\n );\n\n const contentKeyDownHandler = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onClose();\n }\n },\n [onClose]\n );\n\n const ariaLabelledBy = useMemo(\n () => (header === undefined ? titleId : undefined),\n [header, titleId]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <ModalMask visible={visible} />\n <Container onClick={containerClickHandler}>\n <FocusLock autoFocus>\n <CloseModalContext.Provider value={onClose}>\n <Content\n visible={visible}\n size={size}\n tabIndex={-1}\n onKeyDown={contentKeyDownHandler}\n onClick={contentClickHandler}\n role='dialog'\n aria-modal\n aria-labelledby={ariaLabelledBy}\n aria-describedby={bodyId}\n ref={contentRef}\n >\n {header === undefined ? (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal:\n t.modalCloseButtonPaddingHorizontal,\n })}\n >\n <Header>\n <Title id={titleId}>{title}</Title>\n <Button\n type='ghost'\n wide='never'\n onClick={onClose}\n aria-label={locale.closeLabel}\n >\n <Close />\n </Button>\n </Header>\n </ThemeOverrider>\n ) : (\n header\n )}\n\n <Body id={bodyId} {...rest} ref={ref}>\n {children}\n </Body>\n\n {footer === undefined ? (\n <Footer>\n <Button\n danger={okDanger}\n loading={okLoading}\n disabled={okDisabled}\n onClick={onOk}\n >\n {okText}\n </Button>\n </Footer>\n ) : (\n footer\n )}\n </Content>\n </CloseModalContext.Provider>\n </FocusLock>\n </Container>\n </Portal>\n );\n }\n);\n\nModal.displayName = 'Modal';\n\nexport default Modal;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AAMA,IAAAO,QAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,OAAA,GAAAC,uBAAA,CAAAV,OAAA;AASA,IAAAW,eAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,OAAA,GAAAV,sBAAA,CAAAF,OAAA;AACA,IAAAa,cAAA,GAAAX,sBAAA,CAAAF,OAAA;AAAmE,IAAAc,SAAA;AAAA,IAAAC,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,iBAAA;AAAA,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAvB,wBAAA2B,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAAA,SAAAzC,uBAAAmC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAiB,SAAA,IAAAA,QAAA,GAAAT,MAAA,CAAAU,MAAA,GAAAV,MAAA,CAAAU,MAAA,CAAAC,IAAA,eAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,GAAAF,SAAA,CAAAD,CAAA,YAAAV,GAAA,IAAAa,MAAA,QAAAhB,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAU,MAAA,EAAAb,GAAA,KAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,gBAAAS,MAAA,YAAAH,QAAA,CAAAQ,KAAA,OAAAH,SAAA;AAAA,SAAAI,yBAAAF,MAAA,EAAAG,QAAA,QAAAH,MAAA,yBAAAJ,MAAA,GAAAQ,6BAAA,CAAAJ,MAAA,EAAAG,QAAA,OAAAhB,GAAA,EAAAU,CAAA,MAAAb,MAAA,CAAAqB,qBAAA,QAAAC,gBAAA,GAAAtB,MAAA,CAAAqB,qBAAA,CAAAL,MAAA,QAAAH,CAAA,MAAAA,CAAA,GAAAS,gBAAA,CAAAP,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAmB,gBAAA,CAAAT,CAAA,OAAAM,QAAA,CAAAI,OAAA,CAAApB,GAAA,uBAAAH,MAAA,CAAAI,SAAA,CAAAoB,oBAAA,CAAAlB,IAAA,CAAAU,MAAA,EAAAb,GAAA,aAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,cAAAS,MAAA;AAAA,SAAAQ,8BAAAJ,MAAA,EAAAG,QAAA,QAAAH,MAAA,yBAAAJ,MAAA,WAAAa,UAAA,GAAAzB,MAAA,CAAA0B,IAAA,CAAAV,MAAA,OAAAb,GAAA,EAAAU,CAAA,OAAAA,CAAA,MAAAA,CAAA,GAAAY,UAAA,CAAAV,MAAA,EAAAF,CAAA,MAAAV,GAAA,GAAAsB,UAAA,CAAAZ,CAAA,OAAAM,QAAA,CAAAI,OAAA,CAAApB,GAAA,kBAAAS,MAAA,CAAAT,GAAA,IAAAa,MAAA,CAAAb,GAAA,YAAAS,MAAA;AAAA,SAAAe,uBAAAC,OAAA,EAAAC,GAAA,SAAAA,GAAA,IAAAA,GAAA,GAAAD,OAAA,CAAAE,KAAA,cAAA9B,MAAA,CAAA+B,MAAA,CAAA/B,MAAA,CAAAgC,gBAAA,CAAAJ,OAAA,IAAAC,GAAA,IAAAI,KAAA,EAAAjC,MAAA,CAAA+B,MAAA,CAAAF,GAAA;AAgEnE,IAAMK,uBAAuB,GAAG,IAAI;AACpC,IAAMC,wBAAwB,GAAG,CAAC;AAElC,IAAMC,UAAU,OAAGC,gBAAS,EAAAnE,eAAA,KAAAA,eAAA,GAAAyD,sBAAA,wDAG3B;AAED,IAAMW,WAAW,OAAGD,gBAAS,EAAAlE,gBAAA,KAAAA,gBAAA,GAAAwD,sBAAA,wDAG5B;AAED,IAAMY,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,CAAC;EAAA,OAC1BA,CAAC,CAACC,OAAO,QACTC,UAAG,EAAAtE,gBAAA,KAAAA,gBAAA,GAAAuD,sBAAA,mDACYS,UAAU,EAAII,CAAC,CAACG,KAAK,CAACC,eAAe,CACnD;AAAA;AAEH,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIL,CAAC;EAAA,OAC5B,CAACA,CAAC,CAACC,OAAO,QACVC,UAAG,EAAArE,gBAAA,KAAAA,gBAAA,GAAAsD,sBAAA,mDACYW,WAAW,EAAIE,CAAC,CAACG,KAAK,CAACC,eAAe,CACpD;AAAA;AAGI,IAAME,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,IAAAE,kBAAM,EAAC,KAAK,EAAE,IAAAC,uBAAgB,EAAC,SAAS,CAAC,CAAC,CAAA3E,gBAAA,KAAAA,gBAAA,GAAAqD,sBAAA,mJAM7C,UAACa,CAAC;EAAA,OAAK,IAAAU,YAAG,EAACV,CAAC,CAACG,KAAK,CAACQ,gBAAgB,CAAC;AAAA,GAC7CjB,uBAAuB,EAChCK,iBAAiB,EACjBM,mBAAmB,CACtB;AAED,IAAMO,SAAS,GAAGJ,kBAAM,CAACK,GAAG,CAAA9E,gBAAA,KAAAA,gBAAA,GAAAoD,sBAAA,kIAMfO,uBAAuB,EAEhCoB,QAAC,CAACC,GAAG,CAACC,EAAE,EACN,IAAAC,6BAAqB,EAAC,GAAG,CAAC,CAE/B;AAED,IAAMC,aAAa,OAAGrB,gBAAS,EAAA7D,gBAAA,KAAAA,gBAAA,GAAAmD,sBAAA,uJAC8BQ,wBAAwB,CAEpF;AAED,IAAMwB,cAAc,OAAGtB,gBAAS,EAAA5D,gBAAA,KAAAA,gBAAA,GAAAkD,sBAAA,uJAE2BQ,wBAAwB,CAClF;AAED,IAAMyB,eAAe,OAAGvB,gBAAS,EAAA3D,gBAAA,KAAAA,gBAAA,GAAAiD,sBAAA,0GACaQ,wBAAwB,CAErE;AAED,IAAM0B,gBAAgB,OAAGxB,gBAAS,EAAA1D,iBAAA,KAAAA,iBAAA,GAAAgD,sBAAA,0GAEUQ,wBAAwB,CACnE;AAED,IAAM2B,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAItB,CAAC;EAAA,OAC7BA,CAAC,CAACC,OAAO,QACTC,UAAG,EAAA9D,iBAAA,KAAAA,iBAAA,GAAA+C,sBAAA,8GACY+B,aAAa,EAAIlB,CAAC,CAACG,KAAK,CAACC,eAAe,EACnDU,QAAC,CAACC,GAAG,CAACC,EAAE,EACKI,eAAe,EAAIpB,CAAC,CAACG,KAAK,CAACC,eAAe,CAE1D;AAAA;AAEH,IAAMmB,sBAAsB,GAAG,SAAzBA,sBAAsBA,CAAIvB,CAAC;EAAA,OAC/B,CAACA,CAAC,CAACC,OAAO,QACVC,UAAG,EAAA7D,iBAAA,KAAAA,iBAAA,GAAA8C,sBAAA,8GACYgC,cAAc,EAAInB,CAAC,CAACG,KAAK,CAACC,eAAe,EACpDU,QAAC,CAACC,GAAG,CAACC,EAAE,EACKK,gBAAgB,EAAIrB,CAAC,CAACG,KAAK,CAACC,eAAe,CAE3D;AAAA;AAGH,IAAMoB,OAAO,GAAG,IAAAhB,kBAAM,EACpB,KAAK,EACL,IAAAC,uBAAgB,EAAC,SAAS,EAAE,MAAM,CACpC,CAAC,CAAAnE,iBAAA,KAAAA,iBAAA,GAAA6C,sBAAA,mcAMqB,UAACa,CAAC;EAAA,OAAK,IAAAU,YAAG,EAACV,CAAC,CAACG,KAAK,CAACsB,OAAO,CAAC;AAAA,GACtC,UAACzB,CAAC;EAAA,OAAK,IAAAU,YAAG,EAACV,CAAC,CAACG,KAAK,CAACuB,SAAS,CAAC;AAAA,GACpB/B,wBAAwB,EACtC,UAACK,CAAC;EAAA,OAAK,IAAAU,YAAG,EAACV,CAAC,CAACG,KAAK,CAACwB,mBAAmB,CAAC;AAAA,GAI1B,UAAC3B,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACyB,YAAY;AAAA,GACxC,UAAC5B,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACyB,YAAY;AAAA,GAE7Bd,QAAC,CAACC,GAAG,CAACC,EAAE,EACC,UAAChB,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC0B,UAAU;AAAA,GAEjB,UAAC7B,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACyB,YAAY;AAAA,GAG7B,UAAC5B,CAAC;EAAA,OAAK,CAACA,CAAC,CAACG,KAAK,CAAC0B,UAAU,GAAG,CAAC;AAAA,GAG7CP,oBAAoB,EACpBC,sBAAsB,EACtBO,kBAAU,CACb;AAED,IAAMC,MAAM,GAAGvB,kBAAM,CAACK,GAAG,CAAAtE,iBAAA,KAAAA,iBAAA,GAAA4C,sBAAA,uRAEb,UAACa,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC6B,iBAAiB;AAAA,GACf,UAAChC,CAAC;EAAA,OAAK,IAAAU,YAAG,EAACV,CAAC,CAACG,KAAK,CAAC8B,4BAA4B,CAAC;AAAA,GAM3D,UAACjC,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC;AAAA,GAC3C,UAAClC,CAAC;EAAA,OACjBmC,IAAI,CAACC,GAAG,CACNpC,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC,GAAGlC,CAAC,CAACG,KAAK,CAACkC,uBAAuB,EACvE,CACF,CAAC;AAAA,GAEDvB,QAAC,CAACC,GAAG,CAACC,EAAE,EACQ,UAAChB,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC;AAAA,GAC3C,UAAClC,CAAC;EAAA,OACjBmC,IAAI,CAACC,GAAG,CACNpC,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC,GAAGlC,CAAC,CAACG,KAAK,CAACkC,uBAAuB,EACvE,CACF,CAAC;AAAA,EAEN;AAED,IAAMC,KAAK,GAAG9B,kBAAM,CAACK,GAAG,CAAArE,iBAAA,KAAAA,iBAAA,GAAA2C,sBAAA,2EAET,UAACa,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACoC,KAAK,CAACC,KAAK;AAAA,GAErCC,sBAAc,CACjB;AAED,IAAMC,IAAI,GAAGlC,kBAAM,CAACK,GAAG,CAAApE,iBAAA,KAAAA,iBAAA,GAAA0C,sBAAA,8HAGV,UAACa,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACwC,wBAAwB,CAAC,CAAC,CAAC;AAAA,GACjD,UAAC3C,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC;AAAA,GAE9CpB,QAAC,CAACC,GAAG,CAACC,EAAE,EACG,UAAChB,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACwC,wBAAwB,CAAC,CAAC,CAAC;AAAA,GACjD,UAAC3C,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC;AAAA,GAGhD,IAAAjB,6BAAqB,EAAC,GAAG,CAAC,CAC7B;AAED,IAAM2B,MAAM,GAAGpC,kBAAM,CAACK,GAAG,CAAAnE,iBAAA,KAAAA,iBAAA,GAAAyC,sBAAA,oLACV,UAACa,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC;AAAA,GACrD,UAAClC,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACwC,wBAAwB,CAAC,CAAC,CAAC;AAAA,GAE5C7B,QAAC,CAACC,GAAG,CAACC,EAAE,EAKK,UAAChB,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAAC+B,0BAA0B,CAAC,CAAC,CAAC;AAAA,GACrD,UAAClC,CAAC;EAAA,OAAKA,CAAC,CAACG,KAAK,CAACwC,wBAAwB,CAAC,CAAC,CAAC;AAAA,EAEjD;AAED,IAAME,iBAAiB,gBAAGC,kBAAK,CAACC,aAAa,CAAa,YAAM,CAAC,CAAC,CAAC;AAE5D,IAAMC,aAAa,GAAAzC,OAAA,CAAAyC,aAAA,GAAG,SAAhBA,aAAaA,CAAA;EAAA,OAAS,IAAAC,kBAAU,EAACJ,iBAAiB,CAAC;AAAA;;AAEhE;AACA;AACA;AACA,IAAMK,KAAK,gBAAG,IAAAC,kBAAU,EACtB,UAAAC,IAAA,EAmBEC,GAAG,EACA;EAAA,IAlBDC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAAC,WAAA,GAAAH,IAAA,CACLI,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAG,IAAI,GAAAA,WAAA;IAAAE,aAAA,GAAAL,IAAA,CACbM,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,KAAK,GAAAA,aAAA;IAAAE,cAAA,GAAAP,IAAA,CAChBQ,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,KAAK,GAAAA,cAAA;IAAAE,eAAA,GAAAT,IAAA,CACjBU,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,KAAK,GAAAA,eAAA;IAClBE,MAAM,GAAAX,IAAA,CAANW,MAAM;IACNC,MAAM,GAAAZ,IAAA,CAANY,MAAM;IAAAC,YAAA,GAAAb,IAAA,CACNnD,OAAO;IAAPA,OAAO,GAAAgE,YAAA,cAAG,KAAK,GAAAA,YAAA;IAAAC,WAAA,GAAAd,IAAA,CACfe,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAGE,yBAAa,GAAAF,WAAA;IAAAG,YAAA,GAAAjB,IAAA,CACtBkB,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,YAAA;IAClBE,IAAI,GAAAnB,IAAA,CAAJmB,IAAI;IACJC,IAAI,GAAApB,IAAA,CAAJoB,IAAI;IACJC,EAAE,GAAArB,IAAA,CAAFqB,EAAE;IAAAC,YAAA,GAAAtB,IAAA,CACFuB,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,YAAA;IAClBE,QAAQ,GAAAxB,IAAA,CAARwB,QAAQ;IACLC,IAAI,GAAAnG,wBAAA,CAAA0E,IAAA,EAAA3H,SAAA;EAIT,IAAMqJ,UAAU,GAAG,IAAAC,cAAM,EAAiB,IAAI,CAAC;EAC/C,IAAAC,SAAA,GAAkB,IAAAC,iBAAQ,EAAC,CAAC;IAApB9E,KAAK,GAAA6E,SAAA,CAAL7E,KAAK;EACb,IAAM+E,OAAO,GAAG,IAAAC,kBAAW,EAAClF,OAAO,EAAEE,KAAK,CAACC,eAAe,CAAC;EAE3D,IAAAgF,oBAAa,EAAC,CAACnF,OAAO,CAAC;EAEvB,IAAMoF,OAAO,GAAG,IAAAC,eAAO,EACrB;IAAA,sBAAAC,MAAA,CAAqBpD,IAAI,CAACqD,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACnG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;EAAA,CAAE,EAC9D,EACF,CAAC;EACD,IAAMoG,MAAM,GAAG,IAAAJ,eAAO,EACpB;IAAA,OAAMb,EAAE,kBAAAc,MAAA,CAAkBpD,IAAI,CAACqD,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACnG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE;EAAA,GACnE,CAACmF,EAAE,CACL,CAAC;EAED,IAAMkB,qBAAqB,GAAG,IAAAC,mBAAW,EACvC,UAACC,CAA6B,EAAK;IACjCA,CAAC,CAACC,eAAe,CAAC,CAAC;IACnBxB,OAAO,CAAC,CAAC;EACX,CAAC,EACD,CAACA,OAAO,CACV,CAAC;EAED,IAAMyB,mBAAmB,GAAG,IAAAH,mBAAW,EACrC,UAACC,CAA6B,EAAK;IACjCA,CAAC,CAACC,eAAe,CAAC,CAAC;IACnBnB,OAAO,CAACkB,CAAC,CAAC;EACZ,CAAC,EACD,CAAClB,OAAO,CACV,CAAC;EAED,IAAMqB,qBAAqB,GAAG,IAAAJ,mBAAW,EACvC,UAACC,CAAgC,EAAK;IACpC,IAAIA,CAAC,CAAClI,GAAG,KAAK,QAAQ,EAAE;MACtBkI,CAAC,CAACC,eAAe,CAAC,CAAC;MACnBxB,OAAO,CAAC,CAAC;IACX;EACF,CAAC,EACD,CAACA,OAAO,CACV,CAAC;EAED,IAAM2B,cAAc,GAAG,IAAAX,eAAO,EAC5B;IAAA,OAAOvB,MAAM,KAAKmC,SAAS,GAAGb,OAAO,GAAGa,SAAS;EAAA,CAAC,EAClD,CAACnC,MAAM,EAAEsB,OAAO,CAClB,CAAC;EAED,IAAI,CAACH,OAAO,EAAE,OAAO,IAAI;EAEzB,oBACE9J,OAAA,YAAA+K,aAAA,CAACnL,OAAA,WAAM,qBACLI,OAAA,YAAA+K,aAAA,CAAC7F,SAAS;IAACL,OAAO,EAAEA;EAAQ,CAAE,CAAC,eAC/B7E,OAAA,YAAA+K,aAAA,CAACvF,SAAS;IAAC+D,OAAO,EAAEgB;EAAsB,gBACxCvK,OAAA,YAAA+K,aAAA,CAAC7K,eAAA,WAAS;IAAC8K,SAAS;EAAA,gBAClBhL,OAAA,YAAA+K,aAAA,CAACtD,iBAAiB,CAACwD,QAAQ;IAAC5G,KAAK,EAAE6E;EAAQ,gBACzClJ,OAAA,YAAA+K,aAAA,CAAC3E,OAAO;IACNvB,OAAO,EAAEA,OAAQ;IACjBuE,IAAI,EAAEA,IAAK;IACX8B,QAAQ,EAAE,CAAC,CAAE;IACbC,SAAS,EAAEP,qBAAsB;IACjCrB,OAAO,EAAEoB,mBAAoB;IAC7BS,IAAI,EAAC,QAAQ;IACb,kBAAU;IACV,mBAAiBP,cAAe;IAChC,oBAAkBP,MAAO;IACzBrC,GAAG,EAAEyB;EAAW,GAEff,MAAM,KAAKmC,SAAS,gBACnB9K,OAAA,YAAA+K,aAAA,CAACjL,QAAA,CAAAuL,cAAc;IACbC,SAAS,EAAE,SAAAA,UAACC,CAAC;MAAA,OAAM;QACjBtE,uBAAuB,EACrBsE,CAAC,CAACC;MACN,CAAC;IAAA;EAAE,gBAEHxL,OAAA,YAAA+K,aAAA,CAACpE,MAAM,qBACL3G,OAAA,YAAA+K,aAAA,CAAC7D,KAAK;IAACmC,EAAE,EAAEY;EAAQ,GAAE/B,KAAa,CAAC,eACnClI,OAAA,YAAA+K,aAAA,CAAC5K,OAAA,WAAM;IACLsL,IAAI,EAAC,OAAO;IACZC,IAAI,EAAC,OAAO;IACZnC,OAAO,EAAEL,OAAQ;IACjB,cAAYH,MAAM,CAAC4C;EAAW,gBAE9B3L,OAAA,YAAA+K,aAAA,CAACrL,MAAA,CAAAkM,KAAK,MAAE,CACF,CACF,CACM,CAAC,GAEjBjD,MACD,eAED3I,OAAA,YAAA+K,aAAA,CAACzD,IAAI,EAAAzE,QAAA;IAACwG,EAAE,EAAEiB;EAAO,GAAKb,IAAI;IAAExB,GAAG,EAAEA;EAAI,IAClCuB,QACG,CAAC,EAENZ,MAAM,KAAKkC,SAAS,gBACnB9K,OAAA,YAAA+K,aAAA,CAACvD,MAAM,qBACLxH,OAAA,YAAA+K,aAAA,CAAC5K,OAAA,WAAM;IACL0L,MAAM,EAAEvD,QAAS;IACjBwD,OAAO,EAAEtD,SAAU;IACnBuD,QAAQ,EAAErD,UAAW;IACrBa,OAAO,EAAEJ;EAAK,GAEbf,MACK,CACF,CAAC,GAETQ,MAEK,CACiB,CACnB,CACF,CACL,CAAC;AAEb,CACF,CAAC;AAEDd,KAAK,CAACkE,WAAW,GAAG,OAAO;AAAC,IAAAC,QAAA,GAAA9G,OAAA,cAEb2C,KAAK"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_icons","_media","_portal","_styles","_theming","_utils","_react2","_interopRequireWildcard","_reactFocusLock","_Button","_defaultLocale","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","_templateObject11","_templateObject12","_templateObject13","_templateObject14","_templateObject15","_templateObject16","_templateObject17","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","MODAL_CONTAINER_Z_INDEX","MODAL_BOX_SHADOW_SIZE_EM","maskFadeIn","keyframes","maskFadeOut","maskVisibleStyles","p","visible","css","theme","transitionDelay","maskInvisibleStyles","ModalMask","exports","styled","omitEmotionProps","clr","modalMaskColorBg","Container","div","m","min","xs","enableScrollingStyles","contentFadeIn","contentFadeOut","contentFadeInXs","contentFadeOutXs","contentVisibleStyles","contentInvisibleStyles","Content","colorBg","colorText","modalColorBoxShadow","borderRadius","modalWidth","sizeStyles","Header","modalHeaderHeight","modalHeaderColorBorderBottom","modalBodyPaddingHorizontal","Math","max","buttonPaddingHorizontal","Title","sizes","large","ellipsisStyles","Body","modalBodyPaddingVertical","Footer","CloseModalContext","React","createContext","useCloseModal","useContext","Modal","forwardRef","_ref","ref","title","_ref$okText","okText","_ref$okDanger","okDanger","_ref$okLoading","okLoading","_ref$okDisabled","okDisabled","header","footer","_ref$visible","_ref$locale","locale","defaultLocale","_ref$onClose","onClose","onOk","size","id","_ref$onClick","onClick","children","rest","contentRef","useRef","_useTheme","useTheme","mounted","useClosable","useBodyScroll","titleId","useMemo","concat","random","toString","bodyId","containerClickHandler","useCallback","stopPropagation","contentClickHandler","contentKeyDownHandler","ariaLabelledBy","undefined","createElement","autoFocus","Provider","tabIndex","onKeyDown","role","ThemeOverrider","overrides","modalCloseButtonPaddingHorizontal","type","wide","closeLabel","Close","danger","loading","disabled","displayName","_default"],"sources":["../../../src/Modal/index.tsx"],"sourcesContent":["import { css, keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { Close } from '@os-design/icons';\nimport { m } from '@os-design/media';\nimport Portal from '@os-design/portal';\nimport {\n WithSize,\n ellipsisStyles,\n enableScrollingStyles,\n sizeStyles,\n} from '@os-design/styles';\nimport { ThemeOverrider, clr, useTheme } from '@os-design/theming';\nimport { omitEmotionProps, useBodyScroll, useClosable } from '@os-design/utils';\nimport React, {\n KeyboardEvent,\n MouseEvent,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n useRef,\n} from 'react';\nimport FocusLock from 'react-focus-lock';\nimport Button from '../Button';\nimport defaultLocale, { ModalLocale } from './utils/defaultLocale';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface ModalProps extends JsxDivProps, WithSize {\n /**\n * The title of the modal.\n * @default undefined\n */\n title?: string;\n /**\n * The text of the OK button.\n * @default OK\n */\n okText?: string;\n /**\n * Sets the danger styles to the OK button.\n * @default false\n */\n okDanger?: boolean;\n /**\n * Whether the OK button is loading.\n * @default false\n */\n okLoading?: boolean;\n /**\n * Whether the OK button is disabled.\n * @default false\n */\n okDisabled?: boolean;\n /**\n * The header component.\n * Set as null if you don't need the default header.\n * @default undefined\n */\n header?: React.ReactNode;\n /**\n * The footer component.\n * Set as null if you don't need the default footer.\n * @default undefined\n */\n footer?: React.ReactNode;\n /**\n * Whether the modal is visible.\n * @default false\n */\n visible?: boolean;\n /**\n * The locale of the modal.\n * @default undefined\n */\n locale?: ModalLocale;\n /**\n * Specifies a callback that will be called when a user clicks the mask or\n * the close button. The callback should set the visible state to false.\n * @default undefined\n */\n onClose?: () => void;\n /**\n * Specifies a callback that will be called when a user clicks the OK button.\n * @default undefined\n */\n onOk?: () => void;\n}\n\nconst MODAL_CONTAINER_Z_INDEX = 1000;\nconst MODAL_BOX_SHADOW_SIZE_EM = 1;\n\nconst maskFadeIn = keyframes`\n from { opacity: 0; }\n to { opacity: 1; }\n`;\n\nconst maskFadeOut = keyframes`\n from { opacity: 1; }\n to { opacity: 0; }\n`;\n\nconst maskVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${maskFadeIn} ${p.theme.transitionDelay}ms forwards;\n `;\n\nconst maskInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${maskFadeOut} ${p.theme.transitionDelay}ms forwards;\n `;\n\ntype MaskProps = Pick<ModalProps, 'visible'>;\nexport const ModalMask = styled('div', omitEmotionProps('visible'))<MaskProps>`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n background-color: ${(p) => clr(p.theme.modalMaskColorBg)};\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n ${maskVisibleStyles};\n ${maskInvisibleStyles};\n`;\n\nconst Container = styled.div`\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n height: 100%;\n z-index: ${MODAL_CONTAINER_Z_INDEX};\n\n ${m.min.xs} {\n ${enableScrollingStyles('y')};\n }\n`;\n\nconst contentFadeIn = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n`;\n\nconst contentFadeOut = keyframes`\n from { transform: translateY(calc(var(--vh, 1vh) * 100 - 100%)); }\n to { transform: translateY(calc(var(--vh, 1vh) * 100 + ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentFadeInXs = keyframes`\n from { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n to { transform: translateY(6em); }\n`;\n\nconst contentFadeOutXs = keyframes`\n from { transform: translateY(6em); }\n to { transform: translateY(calc(-100% - ${MODAL_BOX_SHADOW_SIZE_EM}em)); }\n`;\n\nconst contentVisibleStyles = (p) =>\n p.visible &&\n css`\n animation: ${contentFadeIn} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeInXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\nconst contentInvisibleStyles = (p) =>\n !p.visible &&\n css`\n animation: ${contentFadeOut} ${p.theme.transitionDelay}ms forwards;\n ${m.min.xs} {\n animation: ${contentFadeOutXs} ${p.theme.transitionDelay}ms forwards;\n }\n `;\n\ntype ContentProps = Pick<ModalProps, 'visible' | 'size'>;\nconst Content = styled(\n 'div',\n omitEmotionProps('visible', 'size')\n)<ContentProps>`\n position: absolute;\n display: flex;\n flex-direction: column;\n padding-bottom: env(safe-area-inset-bottom);\n\n background-color: ${(p) => clr(p.theme.colorBg)};\n color: ${(p) => clr(p.theme.colorText)};\n box-shadow: 0 0 ${MODAL_BOX_SHADOW_SIZE_EM}em\n ${(p) => clr(p.theme.modalColorBoxShadow)};\n\n width: 100%;\n max-height: 100%;\n border-radius: ${(p) => p.theme.borderRadius}em\n ${(p) => p.theme.borderRadius}em 0 0;\n\n ${m.min.xs} {\n width: ${(p) => p.theme.modalWidth}em;\n max-height: unset;\n border-radius: ${(p) => p.theme.borderRadius}em;\n\n left: 50%;\n margin-left: ${(p) => -p.theme.modalWidth / 2}em;\n }\n\n ${contentVisibleStyles};\n ${contentInvisibleStyles}\n ${sizeStyles};\n`;\n\nconst Header = styled.div`\n flex-shrink: 0;\n height: ${(p) => p.theme.modalHeaderHeight}em;\n border-bottom: 1px solid ${(p) => clr(p.theme.modalHeaderColorBorderBottom)};\n box-sizing: border-box;\n\n display: flex;\n align-items: center;\n\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n\n ${m.min.xs} {\n padding-left: ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n padding-right: ${(p) =>\n Math.max(\n p.theme.modalBodyPaddingHorizontal[1] - p.theme.buttonPaddingHorizontal,\n 0\n )}em;\n }\n`;\n\nconst Title = styled.div`\n flex: 1;\n font-size: ${(p) => p.theme.sizes.large}em;\n font-weight: 500;\n ${ellipsisStyles};\n`;\n\nconst Body = styled.div`\n flex-grow: 1;\n\n padding: ${(p) => p.theme.modalBodyPaddingVertical[0]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em;\n\n ${m.min.xs} {\n padding: ${(p) => p.theme.modalBodyPaddingVertical[1]}em\n ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em;\n }\n\n ${enableScrollingStyles('y')};\n`;\n\nconst Footer = styled.div`\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[0]}em\n ${(p) => p.theme.modalBodyPaddingVertical[0]}em;\n\n ${m.min.xs} {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n\n padding: 0 ${(p) => p.theme.modalBodyPaddingHorizontal[1]}em\n ${(p) => p.theme.modalBodyPaddingVertical[1]}em;\n }\n`;\n\nconst CloseModalContext = React.createContext<() => void>(() => {});\n\nexport const useCloseModal = () => useContext(CloseModalContext);\n\n/**\n * The base pop-up window.\n */\nconst Modal = forwardRef<HTMLDivElement, ModalProps>(\n (\n {\n title,\n okText = 'OK',\n okDanger = false,\n okLoading = false,\n okDisabled = false,\n header,\n footer,\n visible = false,\n locale = defaultLocale,\n onClose = () => {},\n onOk,\n size,\n id,\n onClick = () => {},\n children,\n ...rest\n },\n ref\n ) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { theme } = useTheme();\n const mounted = useClosable(visible, theme.transitionDelay);\n\n useBodyScroll(!visible);\n\n const titleId = useMemo(\n () => `modal-title-${Math.random().toString(36).slice(2, 11)}`,\n []\n );\n const bodyId = useMemo(\n () => id || `modal-body-${Math.random().toString(36).slice(2, 11)}`,\n [id]\n );\n\n const containerClickHandler = useCallback(\n (e: MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onClose();\n },\n [onClose]\n );\n\n const contentClickHandler = useCallback(\n (e: MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n onClick(e);\n },\n [onClick]\n );\n\n const contentKeyDownHandler = useCallback(\n (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n onClose();\n }\n },\n [onClose]\n );\n\n const ariaLabelledBy = useMemo(\n () => (header === undefined ? titleId : undefined),\n [header, titleId]\n );\n\n if (!mounted) return null;\n\n return (\n <Portal>\n <ModalMask visible={visible} />\n <Container onClick={containerClickHandler}>\n <FocusLock autoFocus>\n <CloseModalContext.Provider value={onClose}>\n <Content\n visible={visible}\n size={size}\n tabIndex={-1}\n onKeyDown={contentKeyDownHandler}\n onClick={contentClickHandler}\n role='dialog'\n aria-modal\n aria-labelledby={ariaLabelledBy}\n aria-describedby={bodyId}\n ref={contentRef}\n >\n {header === undefined ? (\n <ThemeOverrider\n overrides={(t) => ({\n buttonPaddingHorizontal:\n t.modalCloseButtonPaddingHorizontal,\n })}\n >\n <Header>\n <Title id={titleId}>{title}</Title>\n <Button\n type='ghost'\n wide='never'\n onClick={onClose}\n aria-label={locale.closeLabel}\n >\n <Close />\n </Button>\n </Header>\n </ThemeOverrider>\n ) : (\n header\n )}\n\n <Body id={bodyId} {...rest} ref={ref}>\n {children}\n </Body>\n\n {footer === undefined ? (\n <Footer>\n <Button\n danger={okDanger}\n loading={okLoading}\n disabled={okDisabled}\n onClick={onOk}\n >\n {okText}\n </Button>\n </Footer>\n ) : (\n footer\n )}\n </Content>\n </CloseModalContext.Provider>\n </FocusLock>\n </Container>\n </Portal>\n );\n }\n);\n\nModal.displayName = 'Modal';\n\nexport default Modal;\n"],"mappings":"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"}
|
|
@@ -15,8 +15,8 @@ var _react2 = _interopRequireWildcard(require("react"));
|
|
|
15
15
|
var _useScrollFlags2 = _interopRequireDefault(require("./utils/useScrollFlags"));
|
|
16
16
|
var _excluded = ["sideTop", "sideBottom", "children"];
|
|
17
17
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
|
|
18
|
-
function _getRequireWildcardCache(
|
|
19
|
-
function _interopRequireWildcard(
|
|
18
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
19
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
21
21
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
22
22
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_styles","_theming","_utils","_react2","_interopRequireWildcard","_useScrollFlags2","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_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","div","p","clr","theme","navigationColorBg","navigationColorText","navigationTabHeight","navigationColorBorder","m","min","md","navigationSideWidth","notHasSideTopStyles","hasSideTop","css","pageHeaderHeight","hasPrevStyles","hasPrev","hasNext","navigationMaskImageSize","hasNextStyles","hasPrevNextStyles","Content","omitEmotionProps","enableScrollingStyles","Addon","BottomAddon","Navigation","forwardRef","_ref","ref","sideTop","sideBottom","children","rest","contentRef","useRef","_useScrollFlags","useScrollFlags","createElement","role","displayName","_default","exports"],"sources":["../../../src/Navigation/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { enableScrollingStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef, useRef } from 'react';\nimport useScrollFlags from './utils/useScrollFlags';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface NavigationProps extends JsxDivProps {\n /**\n * The top component in the side navigator.\n * E.g. the user avatar.\n * @default undefined\n */\n sideTop?: React.ReactNode;\n /**\n * The bottom component in the side navigator.\n * E.g. the current tariff.\n * @default undefined\n */\n sideBottom?: React.ReactNode;\n}\n\nconst Container = styled.div`\n position: fixed;\n box-sizing: border-box;\n z-index: 101;\n\n background-color: ${(p) => clr(p.theme.navigationColorBg)};\n color: ${(p) => clr(p.theme.navigationColorText)};\n\n // Tab navigator\n bottom: 0;\n left: 0;\n right: 0;\n height: calc(\n ${(p) => p.theme.navigationTabHeight}em + env(safe-area-inset-bottom)\n );\n border-top: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n\n // Side navigator\n ${m.min.md} {\n // Reset tab navigator styles\n right: unset;\n height: unset;\n border-top: unset;\n\n left: 0;\n top: 0;\n bottom: 0;\n width: ${(p) => p.theme.navigationSideWidth}em;\n border-right: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n }\n`;\n\nconst notHasSideTopStyles = (p) =>\n !p.hasSideTop &&\n css`\n padding-top: ${p.theme.pageHeaderHeight[1]}em;\n `;\n\nconst hasPrevStyles = (p) =>\n p.hasPrev &&\n !p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasNextStyles = (p) =>\n !p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to left,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to top,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasPrevNextStyles = (p) =>\n p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n }\n `;\n\ninterface ContentProps {\n hasSideTop: boolean;\n hasPrev: boolean;\n hasNext: boolean;\n}\nconst Content = styled(\n 'div',\n omitEmotionProps('hasSideTop', 'hasPrev', 'hasNext')\n)<ContentProps>`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: flex-start;\n &::before,\n &::after {\n content: ''; // Insert space before the first item and after the last one\n }\n\n overflow-y: hidden;\n ${enableScrollingStyles('x', false)};\n\n ${m.min.md} {\n // Reset tab navigator styles\n justify-content: unset;\n align-items: unset;\n\n flex-direction: column;\n\n overflow-x: hidden;\n ${enableScrollingStyles('y', false)};\n\n ${notHasSideTopStyles};\n }\n\n ${hasPrevStyles};\n ${hasNextStyles};\n ${hasPrevNextStyles};\n`;\n\nconst Addon = styled.div`\n display: none;\n ${m.min.md} {\n display: block;\n }\n`;\n\nconst BottomAddon = styled(Addon)`\n margin-top: auto;\n`;\n\n/**\n * The main navigation.\n */\nconst Navigation = forwardRef<HTMLDivElement, NavigationProps>(\n ({ sideTop, sideBottom, children, ...rest }, ref) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { hasPrev, hasNext } = useScrollFlags(contentRef);\n\n return (\n <Container\n role='navigation'\n aria-label='Main navigation'\n {...rest}\n ref={ref}\n >\n <Content\n hasSideTop={!!sideTop}\n hasPrev={hasPrev}\n hasNext={hasNext}\n ref={contentRef}\n role='list'\n >\n {sideTop && <Addon>{sideTop}</Addon>}\n {children}\n {sideBottom && <BottomAddon>{sideBottom}</BottomAddon>}\n </Content>\n </Container>\n );\n }\n);\n\nNavigation.displayName = 'Navigation';\n\nexport default Navigation;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_styles","_theming","_utils","_react2","_interopRequireWildcard","_useScrollFlags2","_excluded","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","slice","freeze","defineProperties","value","Container","styled","div","p","clr","theme","navigationColorBg","navigationColorText","navigationTabHeight","navigationColorBorder","m","min","md","navigationSideWidth","notHasSideTopStyles","hasSideTop","css","pageHeaderHeight","hasPrevStyles","hasPrev","hasNext","navigationMaskImageSize","hasNextStyles","hasPrevNextStyles","Content","omitEmotionProps","enableScrollingStyles","Addon","BottomAddon","Navigation","forwardRef","_ref","ref","sideTop","sideBottom","children","rest","contentRef","useRef","_useScrollFlags","useScrollFlags","createElement","role","displayName","_default","exports"],"sources":["../../../src/Navigation/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { enableScrollingStyles } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport React, { forwardRef, useRef } from 'react';\nimport useScrollFlags from './utils/useScrollFlags';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface NavigationProps extends JsxDivProps {\n /**\n * The top component in the side navigator.\n * E.g. the user avatar.\n * @default undefined\n */\n sideTop?: React.ReactNode;\n /**\n * The bottom component in the side navigator.\n * E.g. the current tariff.\n * @default undefined\n */\n sideBottom?: React.ReactNode;\n}\n\nconst Container = styled.div`\n position: fixed;\n box-sizing: border-box;\n z-index: 101;\n\n background-color: ${(p) => clr(p.theme.navigationColorBg)};\n color: ${(p) => clr(p.theme.navigationColorText)};\n\n // Tab navigator\n bottom: 0;\n left: 0;\n right: 0;\n height: calc(\n ${(p) => p.theme.navigationTabHeight}em + env(safe-area-inset-bottom)\n );\n border-top: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n\n // Side navigator\n ${m.min.md} {\n // Reset tab navigator styles\n right: unset;\n height: unset;\n border-top: unset;\n\n left: 0;\n top: 0;\n bottom: 0;\n width: ${(p) => p.theme.navigationSideWidth}em;\n border-right: 1px solid ${(p) => clr(p.theme.navigationColorBorder)};\n }\n`;\n\nconst notHasSideTopStyles = (p) =>\n !p.hasSideTop &&\n css`\n padding-top: ${p.theme.pageHeaderHeight[1]}em;\n `;\n\nconst hasPrevStyles = (p) =>\n p.hasPrev &&\n !p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasNextStyles = (p) =>\n !p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to left,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to top,\n transparent,\n white ${p.theme.navigationMaskImageSize}em\n );\n }\n `;\n\nconst hasPrevNextStyles = (p) =>\n p.hasPrev &&\n p.hasNext &&\n css`\n mask-image: linear-gradient(\n to right,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n ${m.min.md} {\n mask-image: linear-gradient(\n to bottom,\n transparent,\n white ${p.theme.navigationMaskImageSize}em,\n white calc(100% - ${p.theme.navigationMaskImageSize}em),\n transparent\n );\n }\n `;\n\ninterface ContentProps {\n hasSideTop: boolean;\n hasPrev: boolean;\n hasNext: boolean;\n}\nconst Content = styled(\n 'div',\n omitEmotionProps('hasSideTop', 'hasPrev', 'hasNext')\n)<ContentProps>`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: flex-start;\n &::before,\n &::after {\n content: ''; // Insert space before the first item and after the last one\n }\n\n overflow-y: hidden;\n ${enableScrollingStyles('x', false)};\n\n ${m.min.md} {\n // Reset tab navigator styles\n justify-content: unset;\n align-items: unset;\n\n flex-direction: column;\n\n overflow-x: hidden;\n ${enableScrollingStyles('y', false)};\n\n ${notHasSideTopStyles};\n }\n\n ${hasPrevStyles};\n ${hasNextStyles};\n ${hasPrevNextStyles};\n`;\n\nconst Addon = styled.div`\n display: none;\n ${m.min.md} {\n display: block;\n }\n`;\n\nconst BottomAddon = styled(Addon)`\n margin-top: auto;\n`;\n\n/**\n * The main navigation.\n */\nconst Navigation = forwardRef<HTMLDivElement, NavigationProps>(\n ({ sideTop, sideBottom, children, ...rest }, ref) => {\n const contentRef = useRef<HTMLDivElement>(null);\n const { hasPrev, hasNext } = useScrollFlags(contentRef);\n\n return (\n <Container\n role='navigation'\n aria-label='Main navigation'\n {...rest}\n ref={ref}\n >\n <Content\n hasSideTop={!!sideTop}\n hasPrev={hasPrev}\n hasNext={hasNext}\n ref={contentRef}\n role='list'\n >\n {sideTop && <Addon>{sideTop}</Addon>}\n {children}\n {sideBottom && <BottomAddon>{sideBottom}</BottomAddon>}\n </Content>\n </Container>\n );\n }\n);\n\nNavigation.displayName = 'Navigation';\n\nexport default Navigation;\n"],"mappings":"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"}
|