@os-design/core 1.0.156 → 1.0.158
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 +4 -30
- package/dist/cjs/Alert/index.js.map +1 -1
- package/dist/cjs/Avatar/index.js +15 -39
- package/dist/cjs/Avatar/index.js.map +1 -1
- package/dist/cjs/Avatar/utils/nameToInitials.js +1 -3
- package/dist/cjs/Avatar/utils/nameToInitials.js.map +1 -1
- package/dist/cjs/Avatar/utils/strToHue.js +0 -4
- package/dist/cjs/Avatar/utils/strToHue.js.map +1 -1
- package/dist/cjs/AvatarSkeleton/index.js +3 -20
- package/dist/cjs/AvatarSkeleton/index.js.map +1 -1
- package/dist/cjs/Breadcrumb/index.js +4 -30
- package/dist/cjs/Breadcrumb/index.js.map +1 -1
- package/dist/cjs/BreadcrumbItem/index.js +8 -28
- package/dist/cjs/BreadcrumbItem/index.js.map +1 -1
- package/dist/cjs/Button/ButtonContent.js +7 -20
- package/dist/cjs/Button/ButtonContent.js.map +1 -1
- package/dist/cjs/Button/index.js +23 -53
- package/dist/cjs/Button/index.js.map +1 -1
- package/dist/cjs/Button/utils/useButtonColors.js +3 -12
- package/dist/cjs/Button/utils/useButtonColors.js.map +1 -1
- package/dist/cjs/Checkbox/index.js +20 -59
- package/dist/cjs/Checkbox/index.js.map +1 -1
- package/dist/cjs/CheckboxSkeleton/index.js +2 -22
- package/dist/cjs/CheckboxSkeleton/index.js.map +1 -1
- package/dist/cjs/DatePicker/DatePickerCalendar.js +11 -48
- package/dist/cjs/DatePicker/DatePickerCalendar.js.map +1 -1
- package/dist/cjs/DatePicker/index.js +32 -68
- package/dist/cjs/DatePicker/index.js.map +1 -1
- package/dist/cjs/Drawer/index.js +14 -44
- package/dist/cjs/Drawer/index.js.map +1 -1
- package/dist/cjs/Form/FormConfigContext.js +0 -4
- package/dist/cjs/Form/FormConfigContext.js.map +1 -1
- package/dist/cjs/Form/index.js +3 -20
- package/dist/cjs/Form/index.js.map +1 -1
- package/dist/cjs/FormDivider/index.js +3 -24
- package/dist/cjs/FormDivider/index.js.map +1 -1
- package/dist/cjs/FormItem/index.js +12 -42
- package/dist/cjs/FormItem/index.js.map +1 -1
- package/dist/cjs/FormItem/utils/firstChildHasType.js +0 -5
- package/dist/cjs/FormItem/utils/firstChildHasType.js.map +1 -1
- package/dist/cjs/Gallery/Status.js +2 -12
- package/dist/cjs/Gallery/Status.js.map +1 -1
- package/dist/cjs/Gallery/index.js +27 -61
- package/dist/cjs/Gallery/index.js.map +1 -1
- package/dist/cjs/GlobalStyles/index.js +0 -8
- package/dist/cjs/GlobalStyles/index.js.map +1 -1
- package/dist/cjs/GlobalStyles/resetStyles.js +0 -5
- package/dist/cjs/GlobalStyles/resetStyles.js.map +1 -1
- package/dist/cjs/GlobalStyles/typographyStyles.js +0 -11
- package/dist/cjs/GlobalStyles/typographyStyles.js.map +1 -1
- package/dist/cjs/HeaderSkeleton/index.js +7 -26
- package/dist/cjs/HeaderSkeleton/index.js.map +1 -1
- package/dist/cjs/Image/index.js +11 -31
- package/dist/cjs/Image/index.js.map +1 -1
- package/dist/cjs/ImageSkeleton/index.js +1 -12
- package/dist/cjs/ImageSkeleton/index.js.map +1 -1
- package/dist/cjs/Input/index.js +23 -57
- package/dist/cjs/Input/index.js.map +1 -1
- package/dist/cjs/Input/utils/getFocusableElements.js +0 -8
- package/dist/cjs/Input/utils/getFocusableElements.js.map +1 -1
- package/dist/cjs/InputNumber/index.js +49 -72
- package/dist/cjs/InputNumber/index.js.map +1 -1
- package/dist/cjs/InputNumber/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/InputPassword/index.js +39 -77
- package/dist/cjs/InputPassword/index.js.map +1 -1
- package/dist/cjs/InputPassword/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/InputSearch/index.js +22 -51
- package/dist/cjs/InputSearch/index.js.map +1 -1
- package/dist/cjs/InputSearch/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/InputSkeleton/index.js +1 -14
- package/dist/cjs/InputSkeleton/index.js.map +1 -1
- package/dist/cjs/Layout/LayoutContext.js +0 -4
- package/dist/cjs/Layout/LayoutContext.js.map +1 -1
- package/dist/cjs/Layout/index.js +4 -12
- package/dist/cjs/Layout/index.js.map +1 -1
- package/dist/cjs/Link/index.js +8 -30
- package/dist/cjs/Link/index.js.map +1 -1
- package/dist/cjs/LinkButton/index.js +26 -49
- package/dist/cjs/LinkButton/index.js.map +1 -1
- package/dist/cjs/List/WindowScroller.js +4 -12
- package/dist/cjs/List/WindowScroller.js.map +1 -1
- package/dist/cjs/List/index.js +35 -68
- package/dist/cjs/List/index.js.map +1 -1
- package/dist/cjs/List/utils/bodyPointerEvents.js +0 -9
- package/dist/cjs/List/utils/bodyPointerEvents.js.map +1 -1
- package/dist/cjs/List/utils/frameTimeout.js +1 -8
- package/dist/cjs/List/utils/frameTimeout.js.map +1 -1
- package/dist/cjs/List/utils/useRWLoadNext.js +6 -9
- package/dist/cjs/List/utils/useRWLoadNext.js.map +1 -1
- package/dist/cjs/ListItem/ListItemContent.js +12 -44
- package/dist/cjs/ListItem/ListItemContent.js.map +1 -1
- package/dist/cjs/ListItem/index.js +15 -39
- package/dist/cjs/ListItem/index.js.map +1 -1
- package/dist/cjs/ListItemLink/index.js +18 -51
- package/dist/cjs/ListItemLink/index.js.map +1 -1
- package/dist/cjs/ListSkeleton/index.js +11 -32
- package/dist/cjs/ListSkeleton/index.js.map +1 -1
- package/dist/cjs/LogoLink/index.js +6 -27
- package/dist/cjs/LogoLink/index.js.map +1 -1
- package/dist/cjs/Menu/index.js +20 -47
- package/dist/cjs/Menu/index.js.map +1 -1
- package/dist/cjs/Menu/utils/useFocusWithArrows.js +1 -13
- package/dist/cjs/Menu/utils/useFocusWithArrows.js.map +1 -1
- package/dist/cjs/MenuDivider/index.js +1 -13
- package/dist/cjs/MenuDivider/index.js.map +1 -1
- package/dist/cjs/MenuGroup/index.js +19 -52
- package/dist/cjs/MenuGroup/index.js.map +1 -1
- package/dist/cjs/MenuItem/index.js +9 -32
- package/dist/cjs/MenuItem/index.js.map +1 -1
- package/dist/cjs/Modal/index.js +25 -65
- package/dist/cjs/Modal/index.js.map +1 -1
- package/dist/cjs/Modal/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/Navigation/index.js +6 -35
- package/dist/cjs/Navigation/index.js.map +1 -1
- package/dist/cjs/Navigation/utils/useScrollFlags.js +6 -19
- package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
- package/dist/cjs/NavigationItem/index.js +8 -32
- package/dist/cjs/NavigationItem/index.js.map +1 -1
- package/dist/cjs/PageContent/index.js +6 -30
- package/dist/cjs/PageContent/index.js.map +1 -1
- package/dist/cjs/PageHeader/index.js +13 -46
- package/dist/cjs/PageHeader/index.js.map +1 -1
- package/dist/cjs/PageHeader/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/PageHeaderInputSearch/index.js +10 -46
- package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
- package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js +0 -7
- package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/PageHeaderSkeleton/index.js +3 -18
- package/dist/cjs/PageHeaderSkeleton/index.js.map +1 -1
- package/dist/cjs/ParagraphSkeleton/index.js +7 -25
- package/dist/cjs/ParagraphSkeleton/index.js.map +1 -1
- package/dist/cjs/Popover/index.js +46 -77
- package/dist/cjs/Popover/index.js.map +1 -1
- package/dist/cjs/Popover/utils/usePopoverPosition.js +21 -43
- package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
- package/dist/cjs/Progress/index.js +6 -25
- package/dist/cjs/Progress/index.js.map +1 -1
- package/dist/cjs/RadioGroup/index.js +25 -55
- package/dist/cjs/RadioGroup/index.js.map +1 -1
- package/dist/cjs/RadioGroupSkeleton/index.js +3 -20
- package/dist/cjs/RadioGroupSkeleton/index.js.map +1 -1
- package/dist/cjs/Result/index.js +6 -30
- package/dist/cjs/Result/index.js.map +1 -1
- package/dist/cjs/ScrollButton/index.js +15 -40
- package/dist/cjs/ScrollButton/index.js.map +1 -1
- package/dist/cjs/ScrollButton/utils/useContainerPosition.js +10 -23
- package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
- package/dist/cjs/ScrollButton/utils/useVisibility.js +6 -19
- package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
- package/dist/cjs/Select/SelectList.js +27 -53
- package/dist/cjs/Select/SelectList.js.map +1 -1
- package/dist/cjs/Select/SelectToggle.js +17 -52
- package/dist/cjs/Select/SelectToggle.js.map +1 -1
- package/dist/cjs/Select/index.js +60 -103
- package/dist/cjs/Select/index.js.map +1 -1
- package/dist/cjs/Select/utils/defaultLocale.js.map +1 -1
- package/dist/cjs/Skeleton/index.js +3 -20
- package/dist/cjs/Skeleton/index.js.map +1 -1
- package/dist/cjs/Switch/index.js +17 -52
- package/dist/cjs/Switch/index.js.map +1 -1
- package/dist/cjs/SwitchSkeleton/index.js +1 -14
- package/dist/cjs/SwitchSkeleton/index.js.map +1 -1
- package/dist/cjs/Tag/index.js +4 -26
- package/dist/cjs/Tag/index.js.map +1 -1
- package/dist/cjs/TagLink/index.js +7 -25
- package/dist/cjs/TagLink/index.js.map +1 -1
- package/dist/cjs/TagList/index.js +8 -38
- package/dist/cjs/TagList/index.js.map +1 -1
- package/dist/cjs/TagListSkeleton/index.js +4 -17
- package/dist/cjs/TagListSkeleton/index.js.map +1 -1
- package/dist/cjs/TagSkeleton/index.js +3 -20
- package/dist/cjs/TagSkeleton/index.js.map +1 -1
- package/dist/cjs/TextArea/index.js +6 -21
- package/dist/cjs/TextArea/index.js.map +1 -1
- package/dist/cjs/TextAreaSkeleton/index.js +1 -12
- package/dist/cjs/TextAreaSkeleton/index.js.map +1 -1
- package/dist/cjs/ThemeSwitcher/index.js +4 -20
- package/dist/cjs/ThemeSwitcher/index.js.map +1 -1
- package/dist/cjs/TimePicker/index.js +140 -0
- package/dist/cjs/TimePicker/index.js.map +1 -0
- package/dist/cjs/Video/index.js +2 -18
- package/dist/cjs/Video/index.js.map +1 -1
- package/dist/cjs/index.js +0 -126
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/message/AlertIcon.js +15 -26
- package/dist/cjs/message/AlertIcon.js.map +1 -1
- package/dist/cjs/message/Message.js +1 -17
- package/dist/cjs/message/Message.js.map +1 -1
- package/dist/cjs/message/index.js +7 -21
- package/dist/cjs/message/index.js.map +1 -1
- package/dist/cjs/message/styles.js +2 -12
- package/dist/cjs/message/styles.js.map +1 -1
- package/dist/esm/Alert/index.js +1 -10
- package/dist/esm/Alert/index.js.map +1 -1
- package/dist/esm/Avatar/index.js +5 -4
- package/dist/esm/Avatar/index.js.map +1 -1
- package/dist/esm/Avatar/utils/nameToInitials.js +0 -1
- package/dist/esm/Avatar/utils/nameToInitials.js.map +1 -1
- package/dist/esm/Avatar/utils/strToHue.js +0 -3
- package/dist/esm/Avatar/utils/strToHue.js.map +1 -1
- package/dist/esm/AvatarSkeleton/index.js +1 -2
- package/dist/esm/AvatarSkeleton/index.js.map +1 -1
- package/dist/esm/Breadcrumb/index.js +3 -5
- package/dist/esm/Breadcrumb/index.js.map +1 -1
- package/dist/esm/BreadcrumbItem/index.js +1 -2
- package/dist/esm/BreadcrumbItem/index.js.map +1 -1
- package/dist/esm/Button/ButtonContent.js +2 -2
- package/dist/esm/Button/ButtonContent.js.map +1 -1
- package/dist/esm/Button/index.js +1 -10
- package/dist/esm/Button/index.js.map +1 -1
- package/dist/esm/Button/utils/useButtonColors.js +0 -5
- package/dist/esm/Button/utils/useButtonColors.js.map +1 -1
- package/dist/esm/Checkbox/index.js +1 -15
- package/dist/esm/Checkbox/index.js.map +1 -1
- package/dist/esm/CheckboxSkeleton/index.js +1 -2
- package/dist/esm/CheckboxSkeleton/index.js.map +1 -1
- package/dist/esm/DatePicker/DatePickerCalendar.js +0 -7
- package/dist/esm/DatePicker/DatePickerCalendar.js.map +1 -1
- package/dist/esm/DatePicker/index.js +0 -5
- package/dist/esm/DatePicker/index.js.map +1 -1
- package/dist/esm/Drawer/index.js +1 -7
- package/dist/esm/Drawer/index.js.map +1 -1
- package/dist/esm/Form/FormConfigContext.js.map +1 -1
- package/dist/esm/Form/index.js +1 -2
- package/dist/esm/Form/index.js.map +1 -1
- package/dist/esm/FormDivider/index.js +1 -2
- package/dist/esm/FormDivider/index.js.map +1 -1
- package/dist/esm/FormItem/index.js +1 -4
- package/dist/esm/FormItem/index.js.map +1 -1
- package/dist/esm/FormItem/utils/firstChildHasType.js +0 -2
- package/dist/esm/FormItem/utils/firstChildHasType.js.map +1 -1
- package/dist/esm/Gallery/Status.js +0 -2
- package/dist/esm/Gallery/Status.js.map +1 -1
- package/dist/esm/Gallery/index.js +3 -7
- package/dist/esm/Gallery/index.js.map +1 -1
- package/dist/esm/GlobalStyles/index.js +0 -2
- package/dist/esm/GlobalStyles/index.js.map +1 -1
- package/dist/esm/GlobalStyles/resetStyles.js +0 -2
- package/dist/esm/GlobalStyles/resetStyles.js.map +1 -1
- package/dist/esm/GlobalStyles/typographyStyles.js +0 -4
- package/dist/esm/GlobalStyles/typographyStyles.js.map +1 -1
- package/dist/esm/HeaderSkeleton/index.js +1 -4
- package/dist/esm/HeaderSkeleton/index.js.map +1 -1
- package/dist/esm/Image/index.js +1 -6
- package/dist/esm/Image/index.js.map +1 -1
- package/dist/esm/ImageSkeleton/index.js +1 -2
- package/dist/esm/ImageSkeleton/index.js.map +1 -1
- package/dist/esm/Input/index.js +1 -10
- package/dist/esm/Input/index.js.map +1 -1
- package/dist/esm/Input/utils/getFocusableElements.js +0 -1
- package/dist/esm/Input/utils/getFocusableElements.js.map +1 -1
- package/dist/esm/InputNumber/index.js +10 -7
- package/dist/esm/InputNumber/index.js.map +1 -1
- package/dist/esm/InputNumber/utils/defaultLocale.js.map +1 -1
- package/dist/esm/InputPassword/index.js +3 -8
- package/dist/esm/InputPassword/index.js.map +1 -1
- package/dist/esm/InputPassword/utils/defaultLocale.js.map +1 -1
- package/dist/esm/InputSearch/index.js +1 -2
- package/dist/esm/InputSearch/index.js.map +1 -1
- package/dist/esm/InputSearch/utils/defaultLocale.js.map +1 -1
- package/dist/esm/InputSkeleton/index.js +1 -2
- package/dist/esm/InputSkeleton/index.js.map +1 -1
- package/dist/esm/Layout/LayoutContext.js.map +1 -1
- package/dist/esm/Layout/index.js +0 -2
- package/dist/esm/Layout/index.js.map +1 -1
- package/dist/esm/Link/index.js +3 -8
- package/dist/esm/Link/index.js.map +1 -1
- package/dist/esm/LinkButton/index.js +1 -4
- package/dist/esm/LinkButton/index.js.map +1 -1
- package/dist/esm/List/WindowScroller.js +2 -4
- package/dist/esm/List/WindowScroller.js.map +1 -1
- package/dist/esm/List/index.js +10 -9
- package/dist/esm/List/index.js.map +1 -1
- package/dist/esm/List/utils/bodyPointerEvents.js +0 -1
- package/dist/esm/List/utils/bodyPointerEvents.js.map +1 -1
- package/dist/esm/List/utils/frameTimeout.js +1 -4
- package/dist/esm/List/utils/frameTimeout.js.map +1 -1
- package/dist/esm/List/utils/useRWLoadNext.js +0 -2
- package/dist/esm/List/utils/useRWLoadNext.js.map +1 -1
- package/dist/esm/ListItem/ListItemContent.js +2 -6
- package/dist/esm/ListItem/ListItemContent.js.map +1 -1
- package/dist/esm/ListItem/index.js +1 -2
- package/dist/esm/ListItem/index.js.map +1 -1
- package/dist/esm/ListItemLink/index.js +1 -4
- package/dist/esm/ListItemLink/index.js.map +1 -1
- package/dist/esm/ListSkeleton/index.js +1 -2
- package/dist/esm/ListSkeleton/index.js.map +1 -1
- package/dist/esm/LogoLink/index.js +1 -4
- package/dist/esm/LogoLink/index.js.map +1 -1
- package/dist/esm/Menu/index.js +3 -3
- package/dist/esm/Menu/index.js.map +1 -1
- package/dist/esm/Menu/utils/useFocusWithArrows.js +0 -4
- package/dist/esm/Menu/utils/useFocusWithArrows.js.map +1 -1
- package/dist/esm/MenuDivider/index.js +1 -2
- package/dist/esm/MenuDivider/index.js.map +1 -1
- package/dist/esm/MenuGroup/index.js +1 -2
- package/dist/esm/MenuGroup/index.js.map +1 -1
- package/dist/esm/MenuItem/index.js +1 -4
- package/dist/esm/MenuItem/index.js.map +1 -1
- package/dist/esm/Modal/index.js +1 -8
- package/dist/esm/Modal/index.js.map +1 -1
- package/dist/esm/Modal/utils/defaultLocale.js.map +1 -1
- package/dist/esm/Navigation/index.js +1 -7
- package/dist/esm/Navigation/index.js.map +1 -1
- package/dist/esm/Navigation/utils/useScrollFlags.js +0 -2
- package/dist/esm/Navigation/utils/useScrollFlags.js.map +1 -1
- package/dist/esm/NavigationItem/index.js +1 -4
- package/dist/esm/NavigationItem/index.js.map +1 -1
- package/dist/esm/PageContent/index.js +1 -7
- package/dist/esm/PageContent/index.js.map +1 -1
- package/dist/esm/PageHeader/index.js +1 -8
- package/dist/esm/PageHeader/index.js.map +1 -1
- package/dist/esm/PageHeader/utils/defaultLocale.js.map +1 -1
- package/dist/esm/PageHeaderInputSearch/index.js +1 -5
- package/dist/esm/PageHeaderInputSearch/index.js.map +1 -1
- package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js +2 -1
- package/dist/esm/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
- package/dist/esm/PageHeaderSkeleton/index.js +0 -2
- package/dist/esm/PageHeaderSkeleton/index.js.map +1 -1
- package/dist/esm/ParagraphSkeleton/index.js +1 -4
- package/dist/esm/ParagraphSkeleton/index.js.map +1 -1
- package/dist/esm/Popover/index.js +12 -13
- package/dist/esm/Popover/index.js.map +1 -1
- package/dist/esm/Popover/utils/usePopoverPosition.js +8 -19
- package/dist/esm/Popover/utils/usePopoverPosition.js.map +1 -1
- package/dist/esm/Progress/index.js +1 -2
- package/dist/esm/Progress/index.js.map +1 -1
- package/dist/esm/RadioGroup/index.js +1 -5
- package/dist/esm/RadioGroup/index.js.map +1 -1
- package/dist/esm/RadioGroupSkeleton/index.js +1 -2
- package/dist/esm/RadioGroupSkeleton/index.js.map +1 -1
- package/dist/esm/Result/index.js +1 -2
- package/dist/esm/Result/index.js.map +1 -1
- package/dist/esm/ScrollButton/index.js +7 -9
- package/dist/esm/ScrollButton/index.js.map +1 -1
- package/dist/esm/ScrollButton/utils/useContainerPosition.js +0 -2
- package/dist/esm/ScrollButton/utils/useContainerPosition.js.map +1 -1
- package/dist/esm/ScrollButton/utils/useVisibility.js +2 -5
- package/dist/esm/ScrollButton/utils/useVisibility.js.map +1 -1
- package/dist/esm/Select/SelectList.js +11 -12
- package/dist/esm/Select/SelectList.js.map +1 -1
- package/dist/esm/Select/SelectToggle.js +0 -14
- package/dist/esm/Select/SelectToggle.js.map +1 -1
- package/dist/esm/Select/index.js +4 -10
- package/dist/esm/Select/index.js.map +1 -1
- package/dist/esm/Select/utils/defaultLocale.js.map +1 -1
- package/dist/esm/Skeleton/index.js +1 -2
- package/dist/esm/Skeleton/index.js.map +1 -1
- package/dist/esm/Switch/index.js +1 -11
- package/dist/esm/Switch/index.js.map +1 -1
- package/dist/esm/SwitchSkeleton/index.js +1 -2
- package/dist/esm/SwitchSkeleton/index.js.map +1 -1
- package/dist/esm/Tag/index.js +1 -2
- package/dist/esm/Tag/index.js.map +1 -1
- package/dist/esm/TagLink/index.js +1 -2
- package/dist/esm/TagLink/index.js.map +1 -1
- package/dist/esm/TagList/index.js +1 -4
- package/dist/esm/TagList/index.js.map +1 -1
- package/dist/esm/TagListSkeleton/index.js +1 -2
- package/dist/esm/TagListSkeleton/index.js.map +1 -1
- package/dist/esm/TagSkeleton/index.js +1 -2
- package/dist/esm/TagSkeleton/index.js.map +1 -1
- package/dist/esm/TextArea/index.js +1 -2
- package/dist/esm/TextArea/index.js.map +1 -1
- package/dist/esm/TextAreaSkeleton/index.js +1 -2
- package/dist/esm/TextAreaSkeleton/index.js.map +1 -1
- package/dist/esm/ThemeSwitcher/index.js +0 -2
- package/dist/esm/ThemeSwitcher/index.js.map +1 -1
- package/dist/esm/TimePicker/index.js +105 -0
- package/dist/esm/TimePicker/index.js.map +1 -0
- package/dist/esm/Video/index.js +1 -2
- package/dist/esm/Video/index.js.map +1 -1
- package/dist/esm/emotion.d.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/message/AlertIcon.js +0 -2
- package/dist/esm/message/AlertIcon.js.map +1 -1
- package/dist/esm/message/Message.js.map +1 -1
- package/dist/esm/message/index.js +7 -9
- package/dist/esm/message/index.js.map +1 -1
- package/dist/esm/message/styles.js.map +1 -1
- package/dist/types/TimePicker/index.d.ts +11 -0
- package/dist/types/TimePicker/index.d.ts.map +1 -0
- package/package.json +3 -2
package/dist/esm/Switch/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import React, { forwardRef } from 'react';
|
|
4
3
|
import styled from '@emotion/styled';
|
|
5
4
|
import { css } from '@emotion/react';
|
|
@@ -7,29 +6,24 @@ import { resetButtonStyles, sizeStyles, transitionStyles } from '@os-design/styl
|
|
|
7
6
|
import { omitEmotionProps, useForwardedState } from '@os-design/utils';
|
|
8
7
|
import { clr } from '@os-design/theming';
|
|
9
8
|
const FRACTION_DIGITS = 4;
|
|
10
|
-
|
|
11
9
|
const uncheckedStyles = p => !p.checked && css`
|
|
12
10
|
background-color: ${clr(p.theme.switchUncheckedColorBg)};
|
|
13
11
|
&::after {
|
|
14
12
|
left: ${+((p.theme.switchHeight - p.theme.switchCircleSize) / 2).toFixed(FRACTION_DIGITS)}em;
|
|
15
13
|
}
|
|
16
14
|
`;
|
|
17
|
-
|
|
18
15
|
const checkedStyles = p => p.checked && css`
|
|
19
16
|
background-color: ${clr(p.theme.switchCheckedColorBg)};
|
|
20
17
|
&::after {
|
|
21
18
|
left: ${+(p.theme.switchWidth - p.theme.switchCircleSize - (p.theme.switchHeight - p.theme.switchCircleSize) / 2).toFixed(FRACTION_DIGITS)}em;
|
|
22
19
|
}
|
|
23
20
|
`;
|
|
24
|
-
|
|
25
21
|
const hoverUncheckedStyles = p => !p.checked && css`
|
|
26
22
|
background-color: ${clr(p.theme.switchUncheckedColorBgHover)};
|
|
27
23
|
`;
|
|
28
|
-
|
|
29
24
|
const hoverCheckedStyles = p => p.checked && css`
|
|
30
25
|
background-color: ${clr(p.theme.switchCheckedColorBgHover)};
|
|
31
26
|
`;
|
|
32
|
-
|
|
33
27
|
const hoverStyles = p => !p.disabled && css`
|
|
34
28
|
@media (hover: hover) {
|
|
35
29
|
&:hover,
|
|
@@ -39,21 +33,17 @@ const hoverStyles = p => !p.disabled && css`
|
|
|
39
33
|
}
|
|
40
34
|
}
|
|
41
35
|
`;
|
|
42
|
-
|
|
43
36
|
const disabledUncheckedStyles = p => !p.checked && css`
|
|
44
37
|
background-color: ${clr(p.theme.switchDisabledUncheckedColorBg)};
|
|
45
38
|
`;
|
|
46
|
-
|
|
47
39
|
const disabledCheckedStyles = p => p.checked && css`
|
|
48
40
|
background-color: ${clr(p.theme.switchDisabledCheckedColorBg)};
|
|
49
41
|
`;
|
|
50
|
-
|
|
51
42
|
const disabledStyles = p => p.disabled && css`
|
|
52
43
|
cursor: not-allowed;
|
|
53
44
|
${disabledUncheckedStyles(p)};
|
|
54
45
|
${disabledCheckedStyles(p)};
|
|
55
46
|
`;
|
|
56
|
-
|
|
57
47
|
const StyledSwitch = styled('button', omitEmotionProps('size', 'checked'))`
|
|
58
48
|
${resetButtonStyles};
|
|
59
49
|
position: relative;
|
|
@@ -87,10 +77,10 @@ const StyledSwitch = styled('button', omitEmotionProps('size', 'checked'))`
|
|
|
87
77
|
${sizeStyles};
|
|
88
78
|
${transitionStyles('background-color')};
|
|
89
79
|
`;
|
|
80
|
+
|
|
90
81
|
/**
|
|
91
82
|
* The switch that can be enabled or disabled.
|
|
92
83
|
*/
|
|
93
|
-
|
|
94
84
|
const Switch = /*#__PURE__*/forwardRef(({
|
|
95
85
|
disabled = false,
|
|
96
86
|
value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","styled","css","resetButtonStyles","sizeStyles","transitionStyles","omitEmotionProps","useForwardedState","clr","FRACTION_DIGITS","uncheckedStyles","p","checked","theme","switchUncheckedColorBg","switchHeight","switchCircleSize","toFixed","checkedStyles","switchCheckedColorBg","switchWidth","hoverUncheckedStyles","switchUncheckedColorBgHover","hoverCheckedStyles","switchCheckedColorBgHover","hoverStyles","disabled","disabledUncheckedStyles","switchDisabledUncheckedColorBg","disabledCheckedStyles","switchDisabledCheckedColorBg","disabledStyles","StyledSwitch","switchColorCircleBg","Switch","value","defaultValue","onChange","size","onMouseDown","rest","ref","forwardedValue","setForwardedValue","e","preventDefault","displayName"],"sources":["../../../src/Switch/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\nimport {\n resetButtonStyles,\n sizeStyles,\n transitionStyles,\n WithSize,\n} from '@os-design/styles';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport { clr } from '@os-design/theming';\n\ntype JsxButtonProps = Omit<\n JSX.IntrinsicElements['button'],\n 'value' | 'defaultValue' | 'onChange' | 'onClick' | 'ref'\n>;\nexport interface SwitchProps extends JsxButtonProps, WithSize {\n /**\n * Whether the switch is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Whether the switch is checked.\n * @default false\n */\n value?: boolean;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: boolean;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: boolean) => void;\n}\n\nconst FRACTION_DIGITS = 4;\n\nconst uncheckedStyles = (p) =>\n !p.checked &&\n css`\n background-color: ${clr(p.theme.switchUncheckedColorBg)};\n &::after {\n left: ${+((p.theme.switchHeight - p.theme.switchCircleSize) / 2).toFixed(\n FRACTION_DIGITS\n )}em;\n }\n `;\n\nconst checkedStyles = (p) =>\n p.checked &&\n css`\n background-color: ${clr(p.theme.switchCheckedColorBg)};\n &::after {\n left: ${+(\n p.theme.switchWidth -\n p.theme.switchCircleSize -\n (p.theme.switchHeight - p.theme.switchCircleSize) / 2\n ).toFixed(FRACTION_DIGITS)}em;\n }\n `;\n\nconst hoverUncheckedStyles = (p) =>\n !p.checked &&\n css`\n background-color: ${clr(p.theme.switchUncheckedColorBgHover)};\n `;\n\nconst hoverCheckedStyles = (p) =>\n p.checked &&\n css`\n background-color: ${clr(p.theme.switchCheckedColorBgHover)};\n `;\n\nconst hoverStyles = (p) =>\n !p.disabled &&\n css`\n @media (hover: hover) {\n &:hover,\n &:focus {\n ${hoverUncheckedStyles(p)};\n ${hoverCheckedStyles(p)};\n }\n }\n `;\n\nconst disabledUncheckedStyles = (p) =>\n !p.checked &&\n css`\n background-color: ${clr(p.theme.switchDisabledUncheckedColorBg)};\n `;\n\nconst disabledCheckedStyles = (p) =>\n p.checked &&\n css`\n background-color: ${clr(p.theme.switchDisabledCheckedColorBg)};\n `;\n\nconst disabledStyles = (p) =>\n p.disabled &&\n css`\n cursor: not-allowed;\n ${disabledUncheckedStyles(p)};\n ${disabledCheckedStyles(p)};\n `;\n\ninterface StyledSwitchProps extends Pick<SwitchProps, 'disabled' | 'size'> {\n checked: SwitchProps['value'];\n}\nconst StyledSwitch = styled(\n 'button',\n omitEmotionProps('size', 'checked')\n)<StyledSwitchProps>`\n ${resetButtonStyles};\n position: relative;\n cursor: pointer;\n user-select: none;\n display: block;\n\n width: ${(p) => p.theme.switchWidth}em;\n height: ${(p) => p.theme.switchHeight}em;\n border-radius: ${(p) => p.theme.switchHeight / 2}em;\n\n &::after {\n position: absolute;\n top: ${(p) =>\n +((p.theme.switchHeight - p.theme.switchCircleSize) / 2).toFixed(\n FRACTION_DIGITS\n )}em;\n\n width: ${(p) => p.theme.switchCircleSize}em;\n height: ${(p) => p.theme.switchCircleSize}em;\n border-radius: 50%;\n\n background-color: ${(p) => clr(p.theme.switchColorCircleBg)};\n content: ' ';\n\n ${transitionStyles('left')};\n }\n\n ${uncheckedStyles};\n ${checkedStyles};\n ${hoverStyles};\n ${disabledStyles};\n\n ${sizeStyles};\n ${transitionStyles('background-color')};\n`;\n\n/**\n * The switch that can be enabled or disabled.\n */\nconst Switch = forwardRef<HTMLButtonElement, SwitchProps>(\n (\n {\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n onMouseDown = () => {},\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <StyledSwitch\n disabled={disabled}\n checked={forwardedValue}\n size={size}\n onClick={() => {\n if (disabled) return;\n setForwardedValue(!forwardedValue);\n }}\n onMouseDown={(e) => {\n onMouseDown(e);\n e.preventDefault();\n }}\n role='switch'\n aria-checked={forwardedValue}\n {...rest}\n ref={ref}\n />\n );\n }\n);\n\nSwitch.displayName = 'Switch';\n\nexport default Switch;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","styled","css","resetButtonStyles","sizeStyles","transitionStyles","omitEmotionProps","useForwardedState","clr","FRACTION_DIGITS","uncheckedStyles","p","checked","theme","switchUncheckedColorBg","switchHeight","switchCircleSize","toFixed","checkedStyles","switchCheckedColorBg","switchWidth","hoverUncheckedStyles","switchUncheckedColorBgHover","hoverCheckedStyles","switchCheckedColorBgHover","hoverStyles","disabled","disabledUncheckedStyles","switchDisabledUncheckedColorBg","disabledCheckedStyles","switchDisabledCheckedColorBg","disabledStyles","StyledSwitch","switchColorCircleBg","Switch","value","defaultValue","onChange","size","onMouseDown","rest","ref","forwardedValue","setForwardedValue","e","preventDefault","displayName"],"sources":["../../../src/Switch/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\nimport {\n resetButtonStyles,\n sizeStyles,\n transitionStyles,\n WithSize,\n} from '@os-design/styles';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport { clr } from '@os-design/theming';\n\ntype JsxButtonProps = Omit<\n JSX.IntrinsicElements['button'],\n 'value' | 'defaultValue' | 'onChange' | 'onClick' | 'ref'\n>;\nexport interface SwitchProps extends JsxButtonProps, WithSize {\n /**\n * Whether the switch is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Whether the switch is checked.\n * @default false\n */\n value?: boolean;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: boolean;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: boolean) => void;\n}\n\nconst FRACTION_DIGITS = 4;\n\nconst uncheckedStyles = (p) =>\n !p.checked &&\n css`\n background-color: ${clr(p.theme.switchUncheckedColorBg)};\n &::after {\n left: ${+((p.theme.switchHeight - p.theme.switchCircleSize) / 2).toFixed(\n FRACTION_DIGITS\n )}em;\n }\n `;\n\nconst checkedStyles = (p) =>\n p.checked &&\n css`\n background-color: ${clr(p.theme.switchCheckedColorBg)};\n &::after {\n left: ${+(\n p.theme.switchWidth -\n p.theme.switchCircleSize -\n (p.theme.switchHeight - p.theme.switchCircleSize) / 2\n ).toFixed(FRACTION_DIGITS)}em;\n }\n `;\n\nconst hoverUncheckedStyles = (p) =>\n !p.checked &&\n css`\n background-color: ${clr(p.theme.switchUncheckedColorBgHover)};\n `;\n\nconst hoverCheckedStyles = (p) =>\n p.checked &&\n css`\n background-color: ${clr(p.theme.switchCheckedColorBgHover)};\n `;\n\nconst hoverStyles = (p) =>\n !p.disabled &&\n css`\n @media (hover: hover) {\n &:hover,\n &:focus {\n ${hoverUncheckedStyles(p)};\n ${hoverCheckedStyles(p)};\n }\n }\n `;\n\nconst disabledUncheckedStyles = (p) =>\n !p.checked &&\n css`\n background-color: ${clr(p.theme.switchDisabledUncheckedColorBg)};\n `;\n\nconst disabledCheckedStyles = (p) =>\n p.checked &&\n css`\n background-color: ${clr(p.theme.switchDisabledCheckedColorBg)};\n `;\n\nconst disabledStyles = (p) =>\n p.disabled &&\n css`\n cursor: not-allowed;\n ${disabledUncheckedStyles(p)};\n ${disabledCheckedStyles(p)};\n `;\n\ninterface StyledSwitchProps extends Pick<SwitchProps, 'disabled' | 'size'> {\n checked: SwitchProps['value'];\n}\nconst StyledSwitch = styled(\n 'button',\n omitEmotionProps('size', 'checked')\n)<StyledSwitchProps>`\n ${resetButtonStyles};\n position: relative;\n cursor: pointer;\n user-select: none;\n display: block;\n\n width: ${(p) => p.theme.switchWidth}em;\n height: ${(p) => p.theme.switchHeight}em;\n border-radius: ${(p) => p.theme.switchHeight / 2}em;\n\n &::after {\n position: absolute;\n top: ${(p) =>\n +((p.theme.switchHeight - p.theme.switchCircleSize) / 2).toFixed(\n FRACTION_DIGITS\n )}em;\n\n width: ${(p) => p.theme.switchCircleSize}em;\n height: ${(p) => p.theme.switchCircleSize}em;\n border-radius: 50%;\n\n background-color: ${(p) => clr(p.theme.switchColorCircleBg)};\n content: ' ';\n\n ${transitionStyles('left')};\n }\n\n ${uncheckedStyles};\n ${checkedStyles};\n ${hoverStyles};\n ${disabledStyles};\n\n ${sizeStyles};\n ${transitionStyles('background-color')};\n`;\n\n/**\n * The switch that can be enabled or disabled.\n */\nconst Switch = forwardRef<HTMLButtonElement, SwitchProps>(\n (\n {\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n onMouseDown = () => {},\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <StyledSwitch\n disabled={disabled}\n checked={forwardedValue}\n size={size}\n onClick={() => {\n if (disabled) return;\n setForwardedValue(!forwardedValue);\n }}\n onMouseDown={(e) => {\n onMouseDown(e);\n e.preventDefault();\n }}\n role='switch'\n aria-checked={forwardedValue}\n {...rest}\n ref={ref}\n />\n );\n }\n);\n\nSwitch.displayName = 'Switch';\n\nexport default Switch;\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,SAASC,GAAG,QAAQ,gBAAgB;AACpC,SACEC,iBAAiB,EACjBC,UAAU,EACVC,gBAAgB,QAEX,mBAAmB;AAC1B,SAASC,gBAAgB,EAAEC,iBAAiB,QAAQ,kBAAkB;AACtE,SAASC,GAAG,QAAQ,oBAAoB;AA6BxC,MAAMC,eAAe,GAAG,CAAC;AAEzB,MAAMC,eAAe,GAAIC,CAAC,IACxB,CAACA,CAAC,CAACC,OAAO,IACVV,GAAI;AACN,wBAAwBM,GAAG,CAACG,CAAC,CAACE,KAAK,CAACC,sBAAsB,CAAE;AAC5D;AACA,cAAc,CAAC,CAAC,CAACH,CAAC,CAACE,KAAK,CAACE,YAAY,GAAGJ,CAAC,CAACE,KAAK,CAACG,gBAAgB,IAAI,CAAC,EAAEC,OAAO,CACtER,eAAe,CACf;AACR;AACA,GAAG;AAEH,MAAMS,aAAa,GAAIP,CAAC,IACtBA,CAAC,CAACC,OAAO,IACTV,GAAI;AACN,wBAAwBM,GAAG,CAACG,CAAC,CAACE,KAAK,CAACM,oBAAoB,CAAE;AAC1D;AACA,cAAc,CAAC,CACPR,CAAC,CAACE,KAAK,CAACO,WAAW,GACnBT,CAAC,CAACE,KAAK,CAACG,gBAAgB,GACxB,CAACL,CAAC,CAACE,KAAK,CAACE,YAAY,GAAGJ,CAAC,CAACE,KAAK,CAACG,gBAAgB,IAAI,CAAC,EACrDC,OAAO,CAACR,eAAe,CAAE;AACjC;AACA,GAAG;AAEH,MAAMY,oBAAoB,GAAIV,CAAC,IAC7B,CAACA,CAAC,CAACC,OAAO,IACVV,GAAI;AACN,wBAAwBM,GAAG,CAACG,CAAC,CAACE,KAAK,CAACS,2BAA2B,CAAE;AACjE,GAAG;AAEH,MAAMC,kBAAkB,GAAIZ,CAAC,IAC3BA,CAAC,CAACC,OAAO,IACTV,GAAI;AACN,wBAAwBM,GAAG,CAACG,CAAC,CAACE,KAAK,CAACW,yBAAyB,CAAE;AAC/D,GAAG;AAEH,MAAMC,WAAW,GAAId,CAAC,IACpB,CAACA,CAAC,CAACe,QAAQ,IACXxB,GAAI;AACN;AACA;AACA;AACA,UAAUmB,oBAAoB,CAACV,CAAC,CAAE;AAClC,UAAUY,kBAAkB,CAACZ,CAAC,CAAE;AAChC;AACA;AACA,GAAG;AAEH,MAAMgB,uBAAuB,GAAIhB,CAAC,IAChC,CAACA,CAAC,CAACC,OAAO,IACVV,GAAI;AACN,wBAAwBM,GAAG,CAACG,CAAC,CAACE,KAAK,CAACe,8BAA8B,CAAE;AACpE,GAAG;AAEH,MAAMC,qBAAqB,GAAIlB,CAAC,IAC9BA,CAAC,CAACC,OAAO,IACTV,GAAI;AACN,wBAAwBM,GAAG,CAACG,CAAC,CAACE,KAAK,CAACiB,4BAA4B,CAAE;AAClE,GAAG;AAEH,MAAMC,cAAc,GAAIpB,CAAC,IACvBA,CAAC,CAACe,QAAQ,IACVxB,GAAI;AACN;AACA,MAAMyB,uBAAuB,CAAChB,CAAC,CAAE;AACjC,MAAMkB,qBAAqB,CAAClB,CAAC,CAAE;AAC/B,GAAG;AAKH,MAAMqB,YAAY,GAAG/B,MAAM,CACzB,QAAQ,EACRK,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAChB;AACrB,IAAIH,iBAAkB;AACtB;AACA;AACA;AACA;AACA;AACA,WAAYQ,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACO,WAAY;AACtC,YAAaT,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACE,YAAa;AACxC,mBAAoBJ,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACE,YAAY,GAAG,CAAE;AACnD;AACA;AACA;AACA,WAAYJ,CAAC,IACP,CAAC,CAAC,CAACA,CAAC,CAACE,KAAK,CAACE,YAAY,GAAGJ,CAAC,CAACE,KAAK,CAACG,gBAAgB,IAAI,CAAC,EAAEC,OAAO,CAC9DR,eAAe,CACf;AACR;AACA,aAAcE,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACG,gBAAiB;AAC7C,cAAeL,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACG,gBAAiB;AAC9C;AACA;AACA,wBAAyBL,CAAC,IAAKH,GAAG,CAACG,CAAC,CAACE,KAAK,CAACoB,mBAAmB,CAAE;AAChE;AACA;AACA,MAAM5B,gBAAgB,CAAC,MAAM,CAAE;AAC/B;AACA;AACA,IAAIK,eAAgB;AACpB,IAAIQ,aAAc;AAClB,IAAIO,WAAY;AAChB,IAAIM,cAAe;AACnB;AACA,IAAI3B,UAAW;AACf,IAAIC,gBAAgB,CAAC,kBAAkB,CAAE;AACzC,CAAC;;AAED;AACA;AACA;AACA,MAAM6B,MAAM,gBAAGlC,UAAU,CACvB,CACE;EACE0B,QAAQ,GAAG,KAAK;EAChBS,KAAK;EACLC,YAAY;EACZC,QAAQ,GAAG,MAAM,CAAC,CAAC;EACnBC,IAAI;EACJC,WAAW,GAAG,MAAM,CAAC,CAAC;EACtB,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAGpC,iBAAiB,CAAC;IAC5D4B,KAAK;IACLC,YAAY;IACZC;EACF,CAAC,CAAC;EAEF,oBACE,oBAAC,YAAY;IACX,QAAQ,EAAEX,QAAS;IACnB,OAAO,EAAEgB,cAAe;IACxB,IAAI,EAAEJ,IAAK;IACX,OAAO,EAAE,MAAM;MACb,IAAIZ,QAAQ,EAAE;MACdiB,iBAAiB,CAAC,CAACD,cAAc,CAAC;IACpC,CAAE;IACF,WAAW,EAAGE,CAAC,IAAK;MAClBL,WAAW,CAACK,CAAC,CAAC;MACdA,CAAC,CAACC,cAAc,EAAE;IACpB,CAAE;IACF,IAAI,EAAC,QAAQ;IACb,gBAAcH;EAAe,GACzBF,IAAI;IACR,GAAG,EAAEC;EAAI,GACT;AAEN,CAAC,CACF;AAEDP,MAAM,CAACY,WAAW,GAAG,QAAQ;AAE7B,eAAeZ,MAAM"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import styled from '@emotion/styled';
|
|
4
3
|
import React, { forwardRef } from 'react';
|
|
5
4
|
import { sizeStyles } from '@os-design/styles';
|
|
@@ -11,10 +10,10 @@ const StyledSwitchSkeleton = styled(Skeleton, omitEmotionProps('size'))`
|
|
|
11
10
|
border-radius: ${p => p.theme.switchHeight / 2}em;
|
|
12
11
|
${sizeStyles};
|
|
13
12
|
`;
|
|
13
|
+
|
|
14
14
|
/**
|
|
15
15
|
* Provides a switch placeholder while a user waits for the content to load.
|
|
16
16
|
*/
|
|
17
|
-
|
|
18
17
|
const SwitchSkeleton = /*#__PURE__*/forwardRef((props, ref) => /*#__PURE__*/React.createElement(StyledSwitchSkeleton, _extends({
|
|
19
18
|
width: "100%"
|
|
20
19
|
}, props, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["styled","React","forwardRef","sizeStyles","omitEmotionProps","Skeleton","StyledSwitchSkeleton","p","theme","switchWidth","switchHeight","SwitchSkeleton","props","ref","displayName"],"sources":["../../../src/SwitchSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport type SwitchSkeletonProps = Omit<SkeletonProps, 'width'> & WithSize;\n\nconst StyledSwitchSkeleton = styled(\n Skeleton,\n omitEmotionProps('size')\n)<WithSize>`\n width: ${(p) => p.theme.switchWidth}em;\n height: ${(p) => p.theme.switchHeight}em;\n border-radius: ${(p) => p.theme.switchHeight / 2}em;\n ${sizeStyles};\n`;\n\n/**\n * Provides a switch placeholder while a user waits for the content to load.\n */\nconst SwitchSkeleton = forwardRef<HTMLDivElement, SwitchSkeletonProps>(\n (props, ref) => <StyledSwitchSkeleton width='100%' {...props} ref={ref} />\n);\n\nSwitchSkeleton.displayName = 'SwitchSkeleton';\n\nexport default SwitchSkeleton;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["styled","React","forwardRef","sizeStyles","omitEmotionProps","Skeleton","StyledSwitchSkeleton","p","theme","switchWidth","switchHeight","SwitchSkeleton","props","ref","displayName"],"sources":["../../../src/SwitchSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport type SwitchSkeletonProps = Omit<SkeletonProps, 'width'> & WithSize;\n\nconst StyledSwitchSkeleton = styled(\n Skeleton,\n omitEmotionProps('size')\n)<WithSize>`\n width: ${(p) => p.theme.switchWidth}em;\n height: ${(p) => p.theme.switchHeight}em;\n border-radius: ${(p) => p.theme.switchHeight / 2}em;\n ${sizeStyles};\n`;\n\n/**\n * Provides a switch placeholder while a user waits for the content to load.\n */\nconst SwitchSkeleton = forwardRef<HTMLDivElement, SwitchSkeletonProps>(\n (props, ref) => <StyledSwitchSkeleton width='100%' {...props} ref={ref} />\n);\n\nSwitchSkeleton.displayName = 'SwitchSkeleton';\n\nexport default SwitchSkeleton;\n"],"mappings":";AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,OAAOC,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,UAAU,QAAkB,mBAAmB;AACxD,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,OAAOC,QAAQ,MAAyB,aAAa;AAIrD,MAAMC,oBAAoB,GAAGN,MAAM,CACjCK,QAAQ,EACRD,gBAAgB,CAAC,MAAM,CAAC,CACd;AACZ,WAAYG,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,WAAY;AACtC,YAAaF,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACE,YAAa;AACxC,mBAAoBH,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACE,YAAY,GAAG,CAAE;AACnD,IAAIP,UAAW;AACf,CAAC;;AAED;AACA;AACA;AACA,MAAMQ,cAAc,gBAAGT,UAAU,CAC/B,CAACU,KAAK,EAAEC,GAAG,kBAAK,oBAAC,oBAAoB;EAAC,KAAK,EAAC;AAAM,GAAKD,KAAK;EAAE,GAAG,EAAEC;AAAI,GAAG,CAC3E;AAEDF,cAAc,CAACG,WAAW,GAAG,gBAAgB;AAE7C,eAAeH,cAAc"}
|
package/dist/esm/Tag/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import React, { forwardRef } from 'react';
|
|
4
3
|
import styled from '@emotion/styled';
|
|
5
4
|
import { ellipsisStyles, sizeStyles, transitionStyles } from '@os-design/styles';
|
|
@@ -31,10 +30,10 @@ export const RightAddon = styled.div`
|
|
|
31
30
|
display: inherit;
|
|
32
31
|
padding-left: ${p => p.theme.tagAddonPaddingHorizontal}em;
|
|
33
32
|
`;
|
|
33
|
+
|
|
34
34
|
/**
|
|
35
35
|
* The component to display a label, tag, or category.
|
|
36
36
|
*/
|
|
37
|
-
|
|
38
37
|
const Tag = /*#__PURE__*/forwardRef(({
|
|
39
38
|
left,
|
|
40
39
|
right,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","styled","ellipsisStyles","sizeStyles","transitionStyles","omitEmotionProps","clr","TagContainer","p","theme","tagColorBg","tagColorText","borderRadius","tagPaddingVertical","tagPaddingHorizontal","Content","div","LeftAddon","tagAddonPaddingHorizontal","RightAddon","Tag","left","right","children","rest","ref","displayName"],"sources":["../../../src/Tag/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport {\n ellipsisStyles,\n sizeStyles,\n transitionStyles,\n WithSize,\n} from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { clr } from '@os-design/theming';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\n\nexport interface BaseTagProps extends WithSize {\n /**\n * The component located on the left side.\n * @default undefined\n */\n left?: React.ReactNode;\n /**\n * The component located on the right side.\n * @default undefined\n */\n right?: React.ReactNode;\n}\n\nexport type TagProps = JsxDivProps & BaseTagProps;\n\nexport const TagContainer = styled('div', omitEmotionProps('size'))<WithSize>`\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n\n background-color: ${(p) => clr(p.theme.tagColorBg)};\n color: ${(p) => clr(p.theme.tagColorText)};\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n padding: ${(p) => p.theme.tagPaddingVertical}em\n ${(p) => p.theme.tagPaddingHorizontal}em;\n\n ${sizeStyles};\n ${transitionStyles('background-color')};\n`;\n\nconst Content = styled.div`\n ${ellipsisStyles};\n`;\n\nexport const LeftAddon = styled.div`\n display: inherit;\n padding-right: ${(p) => p.theme.tagAddonPaddingHorizontal}em;\n`;\n\nexport const RightAddon = styled.div`\n display: inherit;\n padding-left: ${(p) => p.theme.tagAddonPaddingHorizontal}em;\n`;\n\n/**\n * The component to display a label, tag, or category.\n */\nconst Tag = forwardRef<HTMLDivElement, TagProps>(\n ({ left, right, children, ...rest }, ref) => (\n <TagContainer {...rest} ref={ref}>\n {left && <LeftAddon>{left}</LeftAddon>}\n <Content>{children}</Content>\n {right && <RightAddon>{right}</RightAddon>}\n </TagContainer>\n )\n);\n\nTag.displayName = 'Tag';\n\nexport default Tag;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","styled","ellipsisStyles","sizeStyles","transitionStyles","omitEmotionProps","clr","TagContainer","p","theme","tagColorBg","tagColorText","borderRadius","tagPaddingVertical","tagPaddingHorizontal","Content","div","LeftAddon","tagAddonPaddingHorizontal","RightAddon","Tag","left","right","children","rest","ref","displayName"],"sources":["../../../src/Tag/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport {\n ellipsisStyles,\n sizeStyles,\n transitionStyles,\n WithSize,\n} from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { clr } from '@os-design/theming';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\n\nexport interface BaseTagProps extends WithSize {\n /**\n * The component located on the left side.\n * @default undefined\n */\n left?: React.ReactNode;\n /**\n * The component located on the right side.\n * @default undefined\n */\n right?: React.ReactNode;\n}\n\nexport type TagProps = JsxDivProps & BaseTagProps;\n\nexport const TagContainer = styled('div', omitEmotionProps('size'))<WithSize>`\n display: inline-flex;\n align-items: center;\n overflow: hidden;\n\n background-color: ${(p) => clr(p.theme.tagColorBg)};\n color: ${(p) => clr(p.theme.tagColorText)};\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n padding: ${(p) => p.theme.tagPaddingVertical}em\n ${(p) => p.theme.tagPaddingHorizontal}em;\n\n ${sizeStyles};\n ${transitionStyles('background-color')};\n`;\n\nconst Content = styled.div`\n ${ellipsisStyles};\n`;\n\nexport const LeftAddon = styled.div`\n display: inherit;\n padding-right: ${(p) => p.theme.tagAddonPaddingHorizontal}em;\n`;\n\nexport const RightAddon = styled.div`\n display: inherit;\n padding-left: ${(p) => p.theme.tagAddonPaddingHorizontal}em;\n`;\n\n/**\n * The component to display a label, tag, or category.\n */\nconst Tag = forwardRef<HTMLDivElement, TagProps>(\n ({ left, right, children, ...rest }, ref) => (\n <TagContainer {...rest} ref={ref}>\n {left && <LeftAddon>{left}</LeftAddon>}\n <Content>{children}</Content>\n {right && <RightAddon>{right}</RightAddon>}\n </TagContainer>\n )\n);\n\nTag.displayName = 'Tag';\n\nexport default Tag;\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,SACEC,cAAc,EACdC,UAAU,EACVC,gBAAgB,QAEX,mBAAmB;AAC1B,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,SAASC,GAAG,QAAQ,oBAAoB;AAmBxC,OAAO,MAAMC,YAAY,GAAGN,MAAM,CAAC,KAAK,EAAEI,gBAAgB,CAAC,MAAM,CAAC,CAAY;AAC9E;AACA;AACA;AACA;AACA,sBAAuBG,CAAC,IAAKF,GAAG,CAACE,CAAC,CAACC,KAAK,CAACC,UAAU,CAAE;AACrD,WAAYF,CAAC,IAAKF,GAAG,CAACE,CAAC,CAACC,KAAK,CAACE,YAAY,CAAE;AAC5C;AACA,mBAAoBH,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACG,YAAa;AAC/C,aAAcJ,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACI,kBAAmB;AAC/C,MAAOL,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACK,oBAAqB;AAC1C;AACA,IAAIX,UAAW;AACf,IAAIC,gBAAgB,CAAC,kBAAkB,CAAE;AACzC,CAAC;AAED,MAAMW,OAAO,GAAGd,MAAM,CAACe,GAAI;AAC3B,IAAId,cAAe;AACnB,CAAC;AAED,OAAO,MAAMe,SAAS,GAAGhB,MAAM,CAACe,GAAI;AACpC;AACA,mBAAoBR,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACS,yBAA0B;AAC5D,CAAC;AAED,OAAO,MAAMC,UAAU,GAAGlB,MAAM,CAACe,GAAI;AACrC;AACA,kBAAmBR,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACS,yBAA0B;AAC3D,CAAC;;AAED;AACA;AACA;AACA,MAAME,GAAG,gBAAGpB,UAAU,CACpB,CAAC;EAAEqB,IAAI;EAAEC,KAAK;EAAEC,QAAQ;EAAE,GAAGC;AAAK,CAAC,EAAEC,GAAG,kBACtC,oBAAC,YAAY,eAAKD,IAAI;EAAE,GAAG,EAAEC;AAAI,IAC9BJ,IAAI,iBAAI,oBAAC,SAAS,QAAEA,IAAI,CAAa,eACtC,oBAAC,OAAO,QAAEE,QAAQ,CAAW,EAC5BD,KAAK,iBAAI,oBAAC,UAAU,QAAEA,KAAK,CAAc,CAE7C,CACF;AAEDF,GAAG,CAACM,WAAW,GAAG,KAAK;AAEvB,eAAeN,GAAG"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import React, { forwardRef } from 'react';
|
|
4
3
|
import styled from '@emotion/styled';
|
|
5
4
|
import { clr } from '@os-design/theming';
|
|
@@ -16,10 +15,10 @@ const StyledTagLink = styled(TagContainer.withComponent('a'), omitEmotionProps('
|
|
|
16
15
|
}
|
|
17
16
|
}
|
|
18
17
|
`;
|
|
18
|
+
|
|
19
19
|
/**
|
|
20
20
|
* The tag component with a link.
|
|
21
21
|
*/
|
|
22
|
-
|
|
23
22
|
const TagLink = /*#__PURE__*/forwardRef(({
|
|
24
23
|
left,
|
|
25
24
|
right,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","styled","clr","omitEmotionProps","TagContainer","LeftAddon","RightAddon","StyledTagLink","withComponent","p","theme","tagColorBgHover","TagLink","left","right","as","onMouseDown","children","rest","ref","e","preventDefault","displayName"],"sources":["../../../src/TagLink/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { BaseTagProps, TagContainer, LeftAddon, RightAddon } from '../Tag';\nimport { LinkProps, ReactRouterLinkProps } from '../Link';\n\ntype JsxAProps = Omit<JSX.IntrinsicElements['a'], 'ref'>;\nexport type TagLinkProps = JsxAProps &\n ReactRouterLinkProps &\n Pick<LinkProps, 'as'> &\n BaseTagProps;\n\nconst StyledTagLink = styled(\n TagContainer.withComponent('a'),\n omitEmotionProps('as')\n)`\n cursor: pointer;\n text-decoration: none;\n\n @media (hover: hover) {\n &:hover,\n &:focus {\n background-color: ${(p) => clr(p.theme.tagColorBgHover)};\n }\n }\n`;\n\n/**\n * The tag component with a link.\n */\nconst TagLink = forwardRef<HTMLAnchorElement, TagLinkProps>(\n ({ left, right, as, onMouseDown = () => {}, children, ...rest }, ref) => (\n <StyledTagLink\n as={as}\n onMouseDown={(e) => {\n onMouseDown(e);\n e.preventDefault();\n }}\n {...rest}\n ref={ref}\n >\n {left && <LeftAddon>{left}</LeftAddon>}\n {children}\n {right && <RightAddon>{right}</RightAddon>}\n </StyledTagLink>\n )\n);\n\nTagLink.displayName = 'TagLink';\n\nexport default TagLink;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","styled","clr","omitEmotionProps","TagContainer","LeftAddon","RightAddon","StyledTagLink","withComponent","p","theme","tagColorBgHover","TagLink","left","right","as","onMouseDown","children","rest","ref","e","preventDefault","displayName"],"sources":["../../../src/TagLink/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps } from '@os-design/utils';\nimport { BaseTagProps, TagContainer, LeftAddon, RightAddon } from '../Tag';\nimport { LinkProps, ReactRouterLinkProps } from '../Link';\n\ntype JsxAProps = Omit<JSX.IntrinsicElements['a'], 'ref'>;\nexport type TagLinkProps = JsxAProps &\n ReactRouterLinkProps &\n Pick<LinkProps, 'as'> &\n BaseTagProps;\n\nconst StyledTagLink = styled(\n TagContainer.withComponent('a'),\n omitEmotionProps('as')\n)`\n cursor: pointer;\n text-decoration: none;\n\n @media (hover: hover) {\n &:hover,\n &:focus {\n background-color: ${(p) => clr(p.theme.tagColorBgHover)};\n }\n }\n`;\n\n/**\n * The tag component with a link.\n */\nconst TagLink = forwardRef<HTMLAnchorElement, TagLinkProps>(\n ({ left, right, as, onMouseDown = () => {}, children, ...rest }, ref) => (\n <StyledTagLink\n as={as}\n onMouseDown={(e) => {\n onMouseDown(e);\n e.preventDefault();\n }}\n {...rest}\n ref={ref}\n >\n {left && <LeftAddon>{left}</LeftAddon>}\n {children}\n {right && <RightAddon>{right}</RightAddon>}\n </StyledTagLink>\n )\n);\n\nTagLink.displayName = 'TagLink';\n\nexport default TagLink;\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,MAAM,MAAM,iBAAiB;AACpC,SAASC,GAAG,QAAQ,oBAAoB;AACxC,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,SAAuBC,YAAY,EAAEC,SAAS,EAAEC,UAAU,QAAQ,QAAQ;AAS1E,MAAMC,aAAa,GAAGN,MAAM,CAC1BG,YAAY,CAACI,aAAa,CAAC,GAAG,CAAC,EAC/BL,gBAAgB,CAAC,IAAI,CAAC,CACtB;AACF;AACA;AACA;AACA;AACA;AACA;AACA,0BAA2BM,CAAC,IAAKP,GAAG,CAACO,CAAC,CAACC,KAAK,CAACC,eAAe,CAAE;AAC9D;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,MAAMC,OAAO,gBAAGZ,UAAU,CACxB,CAAC;EAAEa,IAAI;EAAEC,KAAK;EAAEC,EAAE;EAAEC,WAAW,GAAG,MAAM,CAAC,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAK,CAAC,EAAEC,GAAG,kBAClE,oBAAC,aAAa;EACZ,EAAE,EAAEJ,EAAG;EACP,WAAW,EAAGK,CAAC,IAAK;IAClBJ,WAAW,CAACI,CAAC,CAAC;IACdA,CAAC,CAACC,cAAc,EAAE;EACpB;AAAE,GACEH,IAAI;EACR,GAAG,EAAEC;AAAI,IAERN,IAAI,iBAAI,oBAAC,SAAS,QAAEA,IAAI,CAAa,EACrCI,QAAQ,EACRH,KAAK,iBAAI,oBAAC,UAAU,QAAEA,KAAK,CAAc,CAE7C,CACF;AAEDF,OAAO,CAACU,WAAW,GAAG,SAAS;AAE/B,eAAeV,OAAO"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import React, { forwardRef, useState } from 'react';
|
|
4
3
|
import styled from '@emotion/styled';
|
|
5
4
|
import { css } from '@emotion/react';
|
|
@@ -7,12 +6,10 @@ import { Down, Up } from '@os-design/icons';
|
|
|
7
6
|
import { sizeStyles } from '@os-design/styles';
|
|
8
7
|
import { omitEmotionProps } from '@os-design/utils';
|
|
9
8
|
import Button from '../Button';
|
|
10
|
-
|
|
11
9
|
const collapsibleStyles = p => p.collapsible && !p.opened && css`
|
|
12
10
|
// The height of the tag
|
|
13
11
|
height: ${p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;
|
|
14
12
|
`;
|
|
15
|
-
|
|
16
13
|
const Container = styled('div', omitEmotionProps('opened', 'collapsible', 'size'))`
|
|
17
14
|
display: flex;
|
|
18
15
|
overflow: hidden;
|
|
@@ -37,10 +34,10 @@ const OpenButton = styled(Button)`
|
|
|
37
34
|
height: ${p => p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;
|
|
38
35
|
padding: 0 0.5em;
|
|
39
36
|
`;
|
|
37
|
+
|
|
40
38
|
/**
|
|
41
39
|
* The component to display a list of tags.
|
|
42
40
|
*/
|
|
43
|
-
|
|
44
41
|
const TagList = /*#__PURE__*/forwardRef(({
|
|
45
42
|
collapsible = false,
|
|
46
43
|
size,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","useState","styled","css","Down","Up","sizeStyles","omitEmotionProps","Button","collapsibleStyles","p","collapsible","opened","theme","lineHeight","tagPaddingVertical","Container","Content","div","tagListGap","Control","OpenButton","TagList","size","children","rest","ref","setOpened","displayName"],"sources":["../../../src/TagList/index.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\nimport { Down, Up } from '@os-design/icons';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport Button from '../Button';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface TagListProps extends JsxDivProps, WithSize {\n /**\n * Whether the tag list is collapsible.\n * @default false\n */\n collapsible?: boolean;\n}\n\nconst collapsibleStyles = (p) =>\n p.collapsible &&\n !p.opened &&\n css`\n // The height of the tag\n height: ${p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;\n `;\n\ninterface ContainerProps extends Pick<TagListProps, 'collapsible' | 'size'> {\n opened: boolean;\n}\nconst Container = styled(\n 'div',\n omitEmotionProps('opened', 'collapsible', 'size')\n)<ContainerProps>`\n display: flex;\n overflow: hidden;\n ${collapsibleStyles};\n ${sizeStyles};\n`;\n\nconst Content = styled.div`\n display: flex;\n flex-wrap: wrap;\n flex-grow: 1;\n\n margin: ${(p) => -p.theme.tagListGap}em 0 0 ${(p) => -p.theme.tagListGap}em;\n & > * {\n margin: ${(p) => p.theme.tagListGap}em 0 0 ${(p) => p.theme.tagListGap}em;\n }\n`;\n\nconst Control = styled.div`\n margin-left: 0.2em;\n`;\n\nconst OpenButton = styled(Button)`\n // The height of the tag\n height: ${(p) => p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;\n padding: 0 0.5em;\n`;\n\n/**\n * The component to display a list of tags.\n */\nconst TagList = forwardRef<HTMLDivElement, TagListProps>(\n ({ collapsible = false, size, children, ...rest }, ref) => {\n const [opened, setOpened] = useState(false);\n\n return (\n <Container\n opened={opened}\n collapsible={collapsible}\n size={size}\n {...rest}\n ref={ref}\n >\n <Content>{children}</Content>\n\n {collapsible && (\n <Control>\n <OpenButton\n type='ghost'\n wide='never'\n onClick={() => setOpened(!opened)}\n >\n {opened ? <Up /> : <Down />}\n </OpenButton>\n </Control>\n )}\n </Container>\n );\n }\n);\n\nTagList.displayName = 'TagList';\n\nexport default TagList;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","useState","styled","css","Down","Up","sizeStyles","omitEmotionProps","Button","collapsibleStyles","p","collapsible","opened","theme","lineHeight","tagPaddingVertical","Container","Content","div","tagListGap","Control","OpenButton","TagList","size","children","rest","ref","setOpened","displayName"],"sources":["../../../src/TagList/index.tsx"],"sourcesContent":["import React, { forwardRef, useState } from 'react';\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\nimport { Down, Up } from '@os-design/icons';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport Button from '../Button';\n\ntype JsxDivProps = Omit<JSX.IntrinsicElements['div'], 'ref'>;\nexport interface TagListProps extends JsxDivProps, WithSize {\n /**\n * Whether the tag list is collapsible.\n * @default false\n */\n collapsible?: boolean;\n}\n\nconst collapsibleStyles = (p) =>\n p.collapsible &&\n !p.opened &&\n css`\n // The height of the tag\n height: ${p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;\n `;\n\ninterface ContainerProps extends Pick<TagListProps, 'collapsible' | 'size'> {\n opened: boolean;\n}\nconst Container = styled(\n 'div',\n omitEmotionProps('opened', 'collapsible', 'size')\n)<ContainerProps>`\n display: flex;\n overflow: hidden;\n ${collapsibleStyles};\n ${sizeStyles};\n`;\n\nconst Content = styled.div`\n display: flex;\n flex-wrap: wrap;\n flex-grow: 1;\n\n margin: ${(p) => -p.theme.tagListGap}em 0 0 ${(p) => -p.theme.tagListGap}em;\n & > * {\n margin: ${(p) => p.theme.tagListGap}em 0 0 ${(p) => p.theme.tagListGap}em;\n }\n`;\n\nconst Control = styled.div`\n margin-left: 0.2em;\n`;\n\nconst OpenButton = styled(Button)`\n // The height of the tag\n height: ${(p) => p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;\n padding: 0 0.5em;\n`;\n\n/**\n * The component to display a list of tags.\n */\nconst TagList = forwardRef<HTMLDivElement, TagListProps>(\n ({ collapsible = false, size, children, ...rest }, ref) => {\n const [opened, setOpened] = useState(false);\n\n return (\n <Container\n opened={opened}\n collapsible={collapsible}\n size={size}\n {...rest}\n ref={ref}\n >\n <Content>{children}</Content>\n\n {collapsible && (\n <Control>\n <OpenButton\n type='ghost'\n wide='never'\n onClick={() => setOpened(!opened)}\n >\n {opened ? <Up /> : <Down />}\n </OpenButton>\n </Control>\n )}\n </Container>\n );\n }\n);\n\nTagList.displayName = 'TagList';\n\nexport default TagList;\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,QAAQ,QAAQ,OAAO;AACnD,OAAOC,MAAM,MAAM,iBAAiB;AACpC,SAASC,GAAG,QAAQ,gBAAgB;AACpC,SAASC,IAAI,EAAEC,EAAE,QAAQ,kBAAkB;AAC3C,SAASC,UAAU,QAAkB,mBAAmB;AACxD,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,OAAOC,MAAM,MAAM,WAAW;AAW9B,MAAMC,iBAAiB,GAAIC,CAAC,IAC1BA,CAAC,CAACC,WAAW,IACb,CAACD,CAAC,CAACE,MAAM,IACTT,GAAI;AACN;AACA,cAAcO,CAAC,CAACG,KAAK,CAACC,UAAU,GAAGJ,CAAC,CAACG,KAAK,CAACE,kBAAkB,GAAG,CAAE;AAClE,GAAG;AAKH,MAAMC,SAAS,GAAGd,MAAM,CACtB,KAAK,EACLK,gBAAgB,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,CACjC;AAClB;AACA;AACA,IAAIE,iBAAkB;AACtB,IAAIH,UAAW;AACf,CAAC;AAED,MAAMW,OAAO,GAAGf,MAAM,CAACgB,GAAI;AAC3B;AACA;AACA;AACA;AACA,YAAaR,CAAC,IAAK,CAACA,CAAC,CAACG,KAAK,CAACM,UAAW,UAAUT,CAAC,IAAK,CAACA,CAAC,CAACG,KAAK,CAACM,UAAW;AAC3E;AACA,cAAeT,CAAC,IAAKA,CAAC,CAACG,KAAK,CAACM,UAAW,UAAUT,CAAC,IAAKA,CAAC,CAACG,KAAK,CAACM,UAAW;AAC3E;AACA,CAAC;AAED,MAAMC,OAAO,GAAGlB,MAAM,CAACgB,GAAI;AAC3B;AACA,CAAC;AAED,MAAMG,UAAU,GAAGnB,MAAM,CAACM,MAAM,CAAE;AAClC;AACA,YAAaE,CAAC,IAAKA,CAAC,CAACG,KAAK,CAACC,UAAU,GAAGJ,CAAC,CAACG,KAAK,CAACE,kBAAkB,GAAG,CAAE;AACvE;AACA,CAAC;;AAED;AACA;AACA;AACA,MAAMO,OAAO,gBAAGtB,UAAU,CACxB,CAAC;EAAEW,WAAW,GAAG,KAAK;EAAEY,IAAI;EAAEC,QAAQ;EAAE,GAAGC;AAAK,CAAC,EAAEC,GAAG,KAAK;EACzD,MAAM,CAACd,MAAM,EAAEe,SAAS,CAAC,GAAG1B,QAAQ,CAAC,KAAK,CAAC;EAE3C,oBACE,oBAAC,SAAS;IACR,MAAM,EAAEW,MAAO;IACf,WAAW,EAAED,WAAY;IACzB,IAAI,EAAEY;EAAK,GACPE,IAAI;IACR,GAAG,EAAEC;EAAI,iBAET,oBAAC,OAAO,QAAEF,QAAQ,CAAW,EAE5Bb,WAAW,iBACV,oBAAC,OAAO,qBACN,oBAAC,UAAU;IACT,IAAI,EAAC,OAAO;IACZ,IAAI,EAAC,OAAO;IACZ,OAAO,EAAE,MAAMgB,SAAS,CAAC,CAACf,MAAM;EAAE,GAEjCA,MAAM,gBAAG,oBAAC,EAAE,OAAG,gBAAG,oBAAC,IAAI,OAAG,CAChB,CAEhB,CACS;AAEhB,CAAC,CACF;AAEDU,OAAO,CAACM,WAAW,GAAG,SAAS;AAE/B,eAAeN,OAAO"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import React, { forwardRef } from 'react';
|
|
4
3
|
import TagList from '../TagList';
|
|
5
4
|
import TagSkeleton from '../TagSkeleton';
|
|
6
5
|
let tagIndex = 0;
|
|
6
|
+
|
|
7
7
|
/**
|
|
8
8
|
* Provides a tag list placeholder while a user waits for the content to load.
|
|
9
9
|
*/
|
|
10
|
-
|
|
11
10
|
const TagListSkeleton = /*#__PURE__*/forwardRef(({
|
|
12
11
|
width,
|
|
13
12
|
tagsCount = 3,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","TagList","TagSkeleton","tagIndex","TagListSkeleton","width","tagsCount","rest","ref","Array","fill","map","displayName"],"sources":["../../../src/TagListSkeleton/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport TagList, { TagListProps } from '../TagList';\nimport TagSkeleton from '../TagSkeleton';\n\nexport interface TagListSkeletonProps extends TagListProps {\n /**\n * The width of the tag skeleton.\n * @default undefined\n */\n width?: string;\n /**\n * The number of tag skeletons.\n * @default 3\n */\n tagsCount?: number;\n}\n\nlet tagIndex = 0;\n\n/**\n * Provides a tag list placeholder while a user waits for the content to load.\n */\nconst TagListSkeleton = forwardRef<HTMLDivElement, TagListSkeletonProps>(\n ({ width, tagsCount = 3, ...rest }, ref) => (\n <TagList {...rest} ref={ref}>\n {Array(tagsCount)\n .fill({})\n .map(() => {\n tagIndex += 1;\n return <TagSkeleton key={tagIndex} width={width} />;\n })}\n </TagList>\n )\n);\n\nTagListSkeleton.displayName = 'TagListSkeleton';\n\nexport default TagListSkeleton;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","TagList","TagSkeleton","tagIndex","TagListSkeleton","width","tagsCount","rest","ref","Array","fill","map","displayName"],"sources":["../../../src/TagListSkeleton/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport TagList, { TagListProps } from '../TagList';\nimport TagSkeleton from '../TagSkeleton';\n\nexport interface TagListSkeletonProps extends TagListProps {\n /**\n * The width of the tag skeleton.\n * @default undefined\n */\n width?: string;\n /**\n * The number of tag skeletons.\n * @default 3\n */\n tagsCount?: number;\n}\n\nlet tagIndex = 0;\n\n/**\n * Provides a tag list placeholder while a user waits for the content to load.\n */\nconst TagListSkeleton = forwardRef<HTMLDivElement, TagListSkeletonProps>(\n ({ width, tagsCount = 3, ...rest }, ref) => (\n <TagList {...rest} ref={ref}>\n {Array(tagsCount)\n .fill({})\n .map(() => {\n tagIndex += 1;\n return <TagSkeleton key={tagIndex} width={width} />;\n })}\n </TagList>\n )\n);\n\nTagListSkeleton.displayName = 'TagListSkeleton';\n\nexport default TagListSkeleton;\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,OAAO,MAAwB,YAAY;AAClD,OAAOC,WAAW,MAAM,gBAAgB;AAexC,IAAIC,QAAQ,GAAG,CAAC;;AAEhB;AACA;AACA;AACA,MAAMC,eAAe,gBAAGJ,UAAU,CAChC,CAAC;EAAEK,KAAK;EAAEC,SAAS,GAAG,CAAC;EAAE,GAAGC;AAAK,CAAC,EAAEC,GAAG,kBACrC,oBAAC,OAAO,eAAKD,IAAI;EAAE,GAAG,EAAEC;AAAI,IACzBC,KAAK,CAACH,SAAS,CAAC,CACdI,IAAI,CAAC,CAAC,CAAC,CAAC,CACRC,GAAG,CAAC,MAAM;EACTR,QAAQ,IAAI,CAAC;EACb,oBAAO,oBAAC,WAAW;IAAC,GAAG,EAAEA,QAAS;IAAC,KAAK,EAAEE;EAAM,EAAG;AACrD,CAAC,CAAC,CAEP,CACF;AAEDD,eAAe,CAACQ,WAAW,GAAG,iBAAiB;AAE/C,eAAeR,eAAe"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import styled from '@emotion/styled';
|
|
4
3
|
import React, { forwardRef } from 'react';
|
|
5
4
|
import { sizeStyles } from '@os-design/styles';
|
|
@@ -10,10 +9,10 @@ const StyledTagSkeleton = styled(Skeleton, omitEmotionProps('width', 'size'))`
|
|
|
10
9
|
height: ${p => p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;
|
|
11
10
|
${sizeStyles};
|
|
12
11
|
`;
|
|
12
|
+
|
|
13
13
|
/**
|
|
14
14
|
* Provides a tag placeholder while a user waits for the content to load.
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
16
|
const TagSkeleton = /*#__PURE__*/forwardRef(({
|
|
18
17
|
width = '6em',
|
|
19
18
|
...rest
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["styled","React","forwardRef","sizeStyles","omitEmotionProps","Skeleton","StyledTagSkeleton","p","width","theme","lineHeight","tagPaddingVertical","TagSkeleton","rest","ref","displayName"],"sources":["../../../src/TagSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface TagSkeletonProps\n extends Omit<SkeletonProps, 'width'>,\n WithSize {\n /**\n * The width of the skeleton.\n * @default 6em\n */\n width?: string;\n}\n\ntype StyledTagSkeletonProps = Pick<TagSkeletonProps, 'width' | 'size'>;\nconst StyledTagSkeleton = styled(\n Skeleton,\n omitEmotionProps('width', 'size')\n)<StyledTagSkeletonProps>`\n width: ${(p) => p.width};\n height: ${(p) => p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;\n ${sizeStyles};\n`;\n\n/**\n * Provides a tag placeholder while a user waits for the content to load.\n */\nconst TagSkeleton = forwardRef<HTMLDivElement, TagSkeletonProps>(\n ({ width = '6em', ...rest }, ref) => (\n <StyledTagSkeleton width={width} {...rest} ref={ref} />\n )\n);\n\nTagSkeleton.displayName = 'TagSkeleton';\n\nexport default TagSkeleton;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["styled","React","forwardRef","sizeStyles","omitEmotionProps","Skeleton","StyledTagSkeleton","p","width","theme","lineHeight","tagPaddingVertical","TagSkeleton","rest","ref","displayName"],"sources":["../../../src/TagSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport { sizeStyles, WithSize } from '@os-design/styles';\nimport { omitEmotionProps } from '@os-design/utils';\nimport Skeleton, { SkeletonProps } from '../Skeleton';\n\nexport interface TagSkeletonProps\n extends Omit<SkeletonProps, 'width'>,\n WithSize {\n /**\n * The width of the skeleton.\n * @default 6em\n */\n width?: string;\n}\n\ntype StyledTagSkeletonProps = Pick<TagSkeletonProps, 'width' | 'size'>;\nconst StyledTagSkeleton = styled(\n Skeleton,\n omitEmotionProps('width', 'size')\n)<StyledTagSkeletonProps>`\n width: ${(p) => p.width};\n height: ${(p) => p.theme.lineHeight + p.theme.tagPaddingVertical * 2}em;\n ${sizeStyles};\n`;\n\n/**\n * Provides a tag placeholder while a user waits for the content to load.\n */\nconst TagSkeleton = forwardRef<HTMLDivElement, TagSkeletonProps>(\n ({ width = '6em', ...rest }, ref) => (\n <StyledTagSkeleton width={width} {...rest} ref={ref} />\n )\n);\n\nTagSkeleton.displayName = 'TagSkeleton';\n\nexport default TagSkeleton;\n"],"mappings":";AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,OAAOC,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,UAAU,QAAkB,mBAAmB;AACxD,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,OAAOC,QAAQ,MAAyB,aAAa;AAarD,MAAMC,iBAAiB,GAAGN,MAAM,CAC9BK,QAAQ,EACRD,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CACT;AAC1B,WAAYG,CAAC,IAAKA,CAAC,CAACC,KAAM;AAC1B,YAAaD,CAAC,IAAKA,CAAC,CAACE,KAAK,CAACC,UAAU,GAAGH,CAAC,CAACE,KAAK,CAACE,kBAAkB,GAAG,CAAE;AACvE,IAAIR,UAAW;AACf,CAAC;;AAED;AACA;AACA;AACA,MAAMS,WAAW,gBAAGV,UAAU,CAC5B,CAAC;EAAEM,KAAK,GAAG,KAAK;EAAE,GAAGK;AAAK,CAAC,EAAEC,GAAG,kBAC9B,oBAAC,iBAAiB;EAAC,KAAK,EAAEN;AAAM,GAAKK,IAAI;EAAE,GAAG,EAAEC;AAAI,GACrD,CACF;AAEDF,WAAW,CAACG,WAAW,GAAG,aAAa;AAEvC,eAAeH,WAAW"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import React, { forwardRef } from 'react';
|
|
4
3
|
import styled from '@emotion/styled';
|
|
5
4
|
import { InputContainer, StyledInput } from '../Input';
|
|
@@ -11,10 +10,10 @@ const TextAreaField = styled(StyledInput.withComponent('textarea'))`
|
|
|
11
10
|
padding-bottom: ${p => p.theme.textAreaPaddingVertical}em;
|
|
12
11
|
line-height: ${p => p.theme.lineHeight};
|
|
13
12
|
`;
|
|
13
|
+
|
|
14
14
|
/**
|
|
15
15
|
* The multiline input component.
|
|
16
16
|
*/
|
|
17
|
-
|
|
18
17
|
const TextArea = /*#__PURE__*/forwardRef(({
|
|
19
18
|
disabled = false,
|
|
20
19
|
size,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","styled","InputContainer","StyledInput","TextAreaContainer","p","theme","textAreaHeight","TextAreaField","withComponent","textAreaPaddingVertical","lineHeight","TextArea","disabled","size","onChange","rest","ref","e","target","value","displayName"],"sources":["../../../src/TextArea/index.tsx"],"sourcesContent":["import React, { ChangeEvent, forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { WithSize } from '@os-design/styles';\nimport { InputContainer, StyledInput } from '../Input';\n\ntype JsxTextAreaProps = Omit<\n JSX.IntrinsicElements['textarea'],\n 'value' | 'onChange' | 'ref'\n>;\nexport interface TextAreaProps extends JsxTextAreaProps, WithSize {\n /**\n * Whether the textarea is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * The textarea value.\n * @default undefined\n */\n value?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string, e: ChangeEvent<HTMLTextAreaElement>) => void;\n}\n\nconst TextAreaContainer = styled(InputContainer)`\n height: ${(p) => p.theme.textAreaHeight}em;\n`;\n\nconst TextAreaField = styled(StyledInput.withComponent('textarea'))`\n padding-top: ${(p) => p.theme.textAreaPaddingVertical}em;\n padding-bottom: ${(p) => p.theme.textAreaPaddingVertical}em;\n line-height: ${(p) => p.theme.lineHeight};\n`;\n\n/**\n * The multiline input component.\n */\nconst TextArea = forwardRef<HTMLTextAreaElement, TextAreaProps>(\n ({ disabled = false, size, onChange = () => {}, ...rest }, ref) => (\n <TextAreaContainer disabled={disabled} size={size}>\n <TextAreaField\n disabled={disabled}\n onChange={(e) => onChange(e.target.value, e)}\n {...rest}\n ref={ref}\n />\n </TextAreaContainer>\n )\n);\n\nTextArea.displayName = 'TextArea';\n\nexport default TextArea;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","styled","InputContainer","StyledInput","TextAreaContainer","p","theme","textAreaHeight","TextAreaField","withComponent","textAreaPaddingVertical","lineHeight","TextArea","disabled","size","onChange","rest","ref","e","target","value","displayName"],"sources":["../../../src/TextArea/index.tsx"],"sourcesContent":["import React, { ChangeEvent, forwardRef } from 'react';\nimport styled from '@emotion/styled';\nimport { WithSize } from '@os-design/styles';\nimport { InputContainer, StyledInput } from '../Input';\n\ntype JsxTextAreaProps = Omit<\n JSX.IntrinsicElements['textarea'],\n 'value' | 'onChange' | 'ref'\n>;\nexport interface TextAreaProps extends JsxTextAreaProps, WithSize {\n /**\n * Whether the textarea is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * The textarea value.\n * @default undefined\n */\n value?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string, e: ChangeEvent<HTMLTextAreaElement>) => void;\n}\n\nconst TextAreaContainer = styled(InputContainer)`\n height: ${(p) => p.theme.textAreaHeight}em;\n`;\n\nconst TextAreaField = styled(StyledInput.withComponent('textarea'))`\n padding-top: ${(p) => p.theme.textAreaPaddingVertical}em;\n padding-bottom: ${(p) => p.theme.textAreaPaddingVertical}em;\n line-height: ${(p) => p.theme.lineHeight};\n`;\n\n/**\n * The multiline input component.\n */\nconst TextArea = forwardRef<HTMLTextAreaElement, TextAreaProps>(\n ({ disabled = false, size, onChange = () => {}, ...rest }, ref) => (\n <TextAreaContainer disabled={disabled} size={size}>\n <TextAreaField\n disabled={disabled}\n onChange={(e) => onChange(e.target.value, e)}\n {...rest}\n ref={ref}\n />\n </TextAreaContainer>\n )\n);\n\nTextArea.displayName = 'TextArea';\n\nexport default TextArea;\n"],"mappings":";AAAA,OAAOA,KAAK,IAAiBC,UAAU,QAAQ,OAAO;AACtD,OAAOC,MAAM,MAAM,iBAAiB;AAEpC,SAASC,cAAc,EAAEC,WAAW,QAAQ,UAAU;AAwBtD,MAAMC,iBAAiB,GAAGH,MAAM,CAACC,cAAc,CAAE;AACjD,YAAaG,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,cAAe;AAC1C,CAAC;AAED,MAAMC,aAAa,GAAGP,MAAM,CAACE,WAAW,CAACM,aAAa,CAAC,UAAU,CAAC,CAAE;AACpE,iBAAkBJ,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACI,uBAAwB;AACxD,oBAAqBL,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACI,uBAAwB;AAC3D,iBAAkBL,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACK,UAAW;AAC3C,CAAC;;AAED;AACA;AACA;AACA,MAAMC,QAAQ,gBAAGZ,UAAU,CACzB,CAAC;EAAEa,QAAQ,GAAG,KAAK;EAAEC,IAAI;EAAEC,QAAQ,GAAG,MAAM,CAAC,CAAC;EAAE,GAAGC;AAAK,CAAC,EAAEC,GAAG,kBAC5D,oBAAC,iBAAiB;EAAC,QAAQ,EAAEJ,QAAS;EAAC,IAAI,EAAEC;AAAK,gBAChD,oBAAC,aAAa;EACZ,QAAQ,EAAED,QAAS;EACnB,QAAQ,EAAGK,CAAC,IAAKH,QAAQ,CAACG,CAAC,CAACC,MAAM,CAACC,KAAK,EAAEF,CAAC;AAAE,GACzCF,IAAI;EACR,GAAG,EAAEC;AAAI,GACT,CAEL,CACF;AAEDL,QAAQ,CAACS,WAAW,GAAG,UAAU;AAEjC,eAAeT,QAAQ"}
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import styled from '@emotion/styled';
|
|
4
3
|
import React, { forwardRef } from 'react';
|
|
5
4
|
import InputSkeleton from '../InputSkeleton';
|
|
6
5
|
const StyledTextAreaSkeleton = styled(InputSkeleton)`
|
|
7
6
|
height: ${p => p.theme.textAreaHeight}em;
|
|
8
7
|
`;
|
|
8
|
+
|
|
9
9
|
/**
|
|
10
10
|
* Provides a textarea placeholder while a user waits for the content to load.
|
|
11
11
|
*/
|
|
12
|
-
|
|
13
12
|
const TextAreaSkeleton = /*#__PURE__*/forwardRef((props, ref) => /*#__PURE__*/React.createElement(StyledTextAreaSkeleton, _extends({}, props, {
|
|
14
13
|
ref: ref
|
|
15
14
|
})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["styled","React","forwardRef","InputSkeleton","StyledTextAreaSkeleton","p","theme","textAreaHeight","TextAreaSkeleton","props","ref","displayName"],"sources":["../../../src/TextAreaSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport InputSkeleton, { InputSkeletonProps } from '../InputSkeleton';\n\nexport type TextAreaSkeletonProps = InputSkeletonProps;\n\nconst StyledTextAreaSkeleton = styled(InputSkeleton)`\n height: ${(p) => p.theme.textAreaHeight}em;\n`;\n\n/**\n * Provides a textarea placeholder while a user waits for the content to load.\n */\nconst TextAreaSkeleton = forwardRef<HTMLDivElement, TextAreaSkeletonProps>(\n (props, ref) => <StyledTextAreaSkeleton {...props} ref={ref} />\n);\n\nTextAreaSkeleton.displayName = 'TextAreaSkeleton';\n\nexport default TextAreaSkeleton;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["styled","React","forwardRef","InputSkeleton","StyledTextAreaSkeleton","p","theme","textAreaHeight","TextAreaSkeleton","props","ref","displayName"],"sources":["../../../src/TextAreaSkeleton/index.tsx"],"sourcesContent":["import styled from '@emotion/styled';\nimport React, { forwardRef } from 'react';\nimport InputSkeleton, { InputSkeletonProps } from '../InputSkeleton';\n\nexport type TextAreaSkeletonProps = InputSkeletonProps;\n\nconst StyledTextAreaSkeleton = styled(InputSkeleton)`\n height: ${(p) => p.theme.textAreaHeight}em;\n`;\n\n/**\n * Provides a textarea placeholder while a user waits for the content to load.\n */\nconst TextAreaSkeleton = forwardRef<HTMLDivElement, TextAreaSkeletonProps>(\n (props, ref) => <StyledTextAreaSkeleton {...props} ref={ref} />\n);\n\nTextAreaSkeleton.displayName = 'TextAreaSkeleton';\n\nexport default TextAreaSkeleton;\n"],"mappings":";AAAA,OAAOA,MAAM,MAAM,iBAAiB;AACpC,OAAOC,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,OAAOC,aAAa,MAA8B,kBAAkB;AAIpE,MAAMC,sBAAsB,GAAGJ,MAAM,CAACG,aAAa,CAAE;AACrD,YAAaE,CAAC,IAAKA,CAAC,CAACC,KAAK,CAACC,cAAe;AAC1C,CAAC;;AAED;AACA;AACA;AACA,MAAMC,gBAAgB,gBAAGN,UAAU,CACjC,CAACO,KAAK,EAAEC,GAAG,kBAAK,oBAAC,sBAAsB,eAAKD,KAAK;EAAE,GAAG,EAAEC;AAAI,GAAG,CAChE;AAEDF,gBAAgB,CAACG,WAAW,GAAG,kBAAkB;AAEjD,eAAeH,gBAAgB"}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
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); }
|
|
2
|
-
|
|
3
2
|
import React, { forwardRef } from 'react';
|
|
4
3
|
import { useTheme } from '@os-design/theming';
|
|
5
4
|
import { Moon, Sun } from '@os-design/icons';
|
|
6
5
|
import Button from '../Button';
|
|
7
|
-
|
|
8
6
|
/**
|
|
9
7
|
* The button to switch the current theme.
|
|
10
8
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","forwardRef","useTheme","Moon","Sun","Button","ThemeSwitcher","onClick","rest","ref","activeTheme","setActiveTheme","e","displayName"],"sources":["../../../src/ThemeSwitcher/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useTheme } from '@os-design/theming';\nimport { Moon, Sun } from '@os-design/icons';\nimport Button, { ButtonProps } from '../Button';\n\nexport type ThemeSwitcherProps = ButtonProps;\n\n/**\n * The button to switch the current theme.\n */\nconst ThemeSwitcher = forwardRef<HTMLButtonElement, ThemeSwitcherProps>(\n ({ onClick = () => {}, ...rest }, ref) => {\n const { activeTheme, setActiveTheme } = useTheme();\n\n return (\n <Button\n type='ghost'\n wide='never'\n onClick={(e) => {\n setActiveTheme(activeTheme === 'light' ? 'dark' : 'light');\n onClick(e);\n }}\n role='switch'\n aria-checked={activeTheme === 'dark'}\n aria-label='Dark theme'\n {...rest}\n ref={ref}\n >\n {activeTheme === 'light' ? <Moon /> : <Sun />}\n </Button>\n );\n }\n);\n\nThemeSwitcher.displayName = 'ThemeSwitcher';\n\nexport default ThemeSwitcher;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","forwardRef","useTheme","Moon","Sun","Button","ThemeSwitcher","onClick","rest","ref","activeTheme","setActiveTheme","e","displayName"],"sources":["../../../src/ThemeSwitcher/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport { useTheme } from '@os-design/theming';\nimport { Moon, Sun } from '@os-design/icons';\nimport Button, { ButtonProps } from '../Button';\n\nexport type ThemeSwitcherProps = ButtonProps;\n\n/**\n * The button to switch the current theme.\n */\nconst ThemeSwitcher = forwardRef<HTMLButtonElement, ThemeSwitcherProps>(\n ({ onClick = () => {}, ...rest }, ref) => {\n const { activeTheme, setActiveTheme } = useTheme();\n\n return (\n <Button\n type='ghost'\n wide='never'\n onClick={(e) => {\n setActiveTheme(activeTheme === 'light' ? 'dark' : 'light');\n onClick(e);\n }}\n role='switch'\n aria-checked={activeTheme === 'dark'}\n aria-label='Dark theme'\n {...rest}\n ref={ref}\n >\n {activeTheme === 'light' ? <Moon /> : <Sun />}\n </Button>\n );\n }\n);\n\nThemeSwitcher.displayName = 'ThemeSwitcher';\n\nexport default ThemeSwitcher;\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,IAAI,EAAEC,GAAG,QAAQ,kBAAkB;AAC5C,OAAOC,MAAM,MAAuB,WAAW;AAI/C;AACA;AACA;AACA,MAAMC,aAAa,gBAAGL,UAAU,CAC9B,CAAC;EAAEM,OAAO,GAAG,MAAM,CAAC,CAAC;EAAE,GAAGC;AAAK,CAAC,EAAEC,GAAG,KAAK;EACxC,MAAM;IAAEC,WAAW;IAAEC;EAAe,CAAC,GAAGT,QAAQ,EAAE;EAElD,oBACE,oBAAC,MAAM;IACL,IAAI,EAAC,OAAO;IACZ,IAAI,EAAC,OAAO;IACZ,OAAO,EAAGU,CAAC,IAAK;MACdD,cAAc,CAACD,WAAW,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;MAC1DH,OAAO,CAACK,CAAC,CAAC;IACZ,CAAE;IACF,IAAI,EAAC,QAAQ;IACb,gBAAcF,WAAW,KAAK,MAAO;IACrC,cAAW;EAAY,GACnBF,IAAI;IACR,GAAG,EAAEC;EAAI,IAERC,WAAW,KAAK,OAAO,gBAAG,oBAAC,IAAI,OAAG,gBAAG,oBAAC,GAAG,OAAG,CACtC;AAEb,CAAC,CACF;AAEDJ,aAAa,CAACO,WAAW,GAAG,eAAe;AAE3C,eAAeP,aAAa"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
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); }
|
|
2
|
+
import { isDigitKey, replaceChar, timeToDate } from '@os-design/time-picker-utils';
|
|
3
|
+
import { useForwardedRef, useForwardedState } from '@os-design/utils';
|
|
4
|
+
import React, { forwardRef, useCallback, useEffect, useMemo, useState } from 'react';
|
|
5
|
+
import Button from '../Button';
|
|
6
|
+
import Input from '../Input';
|
|
7
|
+
/**
|
|
8
|
+
* The component to choose a time.
|
|
9
|
+
*/
|
|
10
|
+
const TimePicker = /*#__PURE__*/forwardRef(({
|
|
11
|
+
notation = '12-hour',
|
|
12
|
+
value,
|
|
13
|
+
defaultValue,
|
|
14
|
+
onChange = () => {},
|
|
15
|
+
onSelect = () => {},
|
|
16
|
+
right,
|
|
17
|
+
...rest
|
|
18
|
+
}, ref) => {
|
|
19
|
+
const [inputRef, mergedInputRef] = useForwardedRef(ref);
|
|
20
|
+
const [forwardedValue, setForwardedValue] = useForwardedState({
|
|
21
|
+
value,
|
|
22
|
+
defaultValue,
|
|
23
|
+
onChange
|
|
24
|
+
});
|
|
25
|
+
const [selection, setSelection] = useState({
|
|
26
|
+
start: 0,
|
|
27
|
+
end: 0
|
|
28
|
+
});
|
|
29
|
+
const [period, setPeriod] = useState(null);
|
|
30
|
+
useEffect(() => {
|
|
31
|
+
if (notation === '12-hour') {
|
|
32
|
+
setPeriod('AM');
|
|
33
|
+
}
|
|
34
|
+
}, [notation]);
|
|
35
|
+
|
|
36
|
+
// Update the selection
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
if (!inputRef.current) return;
|
|
39
|
+
inputRef.current.setSelectionRange(selection.start, selection.end);
|
|
40
|
+
}, [inputRef, selection]);
|
|
41
|
+
const time = useMemo(() => {
|
|
42
|
+
if (!forwardedValue) return notation === '12-hour' ? '12:00' : '00:00';
|
|
43
|
+
const hour = forwardedValue.getHours().toString().padStart(2, '0');
|
|
44
|
+
const minute = forwardedValue.getMinutes().toString().padStart(2, '0');
|
|
45
|
+
return `${hour}:${minute}`;
|
|
46
|
+
}, [forwardedValue, notation]);
|
|
47
|
+
const onKeyDown = useCallback(e => {
|
|
48
|
+
let nextCaret = selection.start;
|
|
49
|
+
if (e.key === 'ArrowUp' || e.key === 'ArrowLeft' && e.metaKey) {
|
|
50
|
+
nextCaret = 0;
|
|
51
|
+
} else if (e.key === 'ArrowDown' || e.key === 'ArrowRight' && e.metaKey) {
|
|
52
|
+
nextCaret = 5;
|
|
53
|
+
} else if (e.key === 'ArrowLeft') {
|
|
54
|
+
nextCaret = selection.start > 0 ? selection.start - 1 : 0;
|
|
55
|
+
} else if (e.key === 'ArrowRight') {
|
|
56
|
+
nextCaret = selection.start < 5 ? selection.start + 1 : 5;
|
|
57
|
+
} else if (e.key === 'Backspace') {
|
|
58
|
+
setForwardedValue(timeToDate('00:00', period));
|
|
59
|
+
nextCaret = 0;
|
|
60
|
+
} else if (isDigitKey(e.key)) {
|
|
61
|
+
let pos = selection.start === 2 ? 3 : selection.start;
|
|
62
|
+
if (pos === 5) pos = 0;
|
|
63
|
+
const nextTime = replaceChar(time, pos, e.key);
|
|
64
|
+
setForwardedValue(timeToDate(nextTime, period));
|
|
65
|
+
nextCaret = pos < 5 ? pos + 1 : 5;
|
|
66
|
+
}
|
|
67
|
+
setSelection({
|
|
68
|
+
start: nextCaret,
|
|
69
|
+
end: nextCaret
|
|
70
|
+
});
|
|
71
|
+
e.preventDefault();
|
|
72
|
+
}, [period, selection.start, setForwardedValue, time]);
|
|
73
|
+
return /*#__PURE__*/React.createElement(Input, _extends({
|
|
74
|
+
type: "text",
|
|
75
|
+
inputMode: "decimal",
|
|
76
|
+
role: "spinbutton",
|
|
77
|
+
minLength: 5,
|
|
78
|
+
maxLength: 5,
|
|
79
|
+
value: time,
|
|
80
|
+
right: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, {
|
|
81
|
+
type: "ghost",
|
|
82
|
+
wide: "never",
|
|
83
|
+
size: "small",
|
|
84
|
+
onClick: () => setPeriod(period === 'AM' ? 'PM' : 'AM')
|
|
85
|
+
}, period), right),
|
|
86
|
+
onSelect: e => {
|
|
87
|
+
// Update the selection state.
|
|
88
|
+
const {
|
|
89
|
+
selectionStart,
|
|
90
|
+
selectionEnd
|
|
91
|
+
} = e.currentTarget;
|
|
92
|
+
setSelection({
|
|
93
|
+
start: selectionStart || 0,
|
|
94
|
+
end: selectionEnd || 0
|
|
95
|
+
});
|
|
96
|
+
onSelect(e);
|
|
97
|
+
},
|
|
98
|
+
onKeyDown: onKeyDown
|
|
99
|
+
}, rest, {
|
|
100
|
+
ref: mergedInputRef
|
|
101
|
+
}));
|
|
102
|
+
});
|
|
103
|
+
TimePicker.displayName = 'TimePicker';
|
|
104
|
+
export default TimePicker;
|
|
105
|
+
//# sourceMappingURL=index.js.map
|