@koine/react 2.0.0-beta.2 → 2.0.0-beta.20
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/Alert/Alert.d.ts +0 -0
- package/Alert/Alert.js +8 -12
- package/Alert/index.d.ts +1 -1
- package/Alert/index.js +1 -4
- package/Animations/Reveal.d.ts +1 -2
- package/Animations/Reveal.js +14 -19
- package/Animations/Underline.d.ts +1 -1
- package/Animations/Underline.js +4 -7
- package/Animations/index.d.ts +3 -3
- package/Animations/index.js +3 -6
- package/Animations/useReveal.d.ts +0 -21
- package/Animations/useReveal.js +8 -40
- package/Autocomplete/AutocompleteDownshift.d.ts +0 -0
- package/Autocomplete/AutocompleteDownshift.js +1 -161
- package/Autocomplete/AutocompleteDownshiftMultiselect.d.ts +0 -0
- package/Autocomplete/AutocompleteDownshiftMultiselect.js +1 -356
- package/Autocomplete/AutocompleteMui.d.ts +2 -27
- package/Autocomplete/AutocompleteMui.js +37 -124
- package/Autocomplete/AutocompleteReach.d.ts +0 -0
- package/Autocomplete/AutocompleteReach.js +1 -115
- package/Autocomplete/components.d.ts +12 -21
- package/Autocomplete/components.js +22 -33
- package/Autocomplete/helpers.d.ts +1 -1
- package/Autocomplete/helpers.js +5 -23
- package/Autocomplete/index.d.ts +2 -2
- package/Autocomplete/index.js +1 -7
- package/Bg/BgColor.d.ts +3 -27
- package/Bg/BgColor.js +10 -19
- package/Bg/BgPhoto.d.ts +1 -6
- package/Bg/BgPhoto.js +9 -13
- package/Bg/BgSvg.d.ts +0 -3
- package/Bg/BgSvg.js +6 -13
- package/Bg/index.d.ts +3 -3
- package/Bg/index.js +3 -6
- package/Breadcrumbs/Breadcrumbs.d.ts +1 -1
- package/Breadcrumbs/Breadcrumbs.js +18 -22
- package/Breadcrumbs/index.d.ts +1 -1
- package/Breadcrumbs/index.js +1 -4
- package/Buttons/Button.d.ts +1 -5
- package/Buttons/Button.js +9 -16
- package/Buttons/ButtonComposite.d.ts +3 -4
- package/Buttons/ButtonComposite.js +16 -20
- package/Buttons/ButtonFab.d.ts +2 -5
- package/Buttons/ButtonFab.js +5 -8
- package/Buttons/ButtonLink.d.ts +3 -3
- package/Buttons/ButtonLink.js +8 -12
- package/Buttons/IconButton.d.ts +2 -5
- package/Buttons/IconButton.js +6 -9
- package/Buttons/index.d.ts +5 -5
- package/Buttons/index.js +5 -8
- package/Calendar/CalendarDaygridCell.d.ts +3 -4
- package/Calendar/CalendarDaygridCell.js +13 -28
- package/Calendar/CalendarDaygridNav.d.ts +2 -2
- package/Calendar/CalendarDaygridNav.js +11 -15
- package/Calendar/CalendarDaygridTable.d.ts +3 -3
- package/Calendar/CalendarDaygridTable.js +21 -28
- package/Calendar/CalendarLegend.d.ts +2 -3
- package/Calendar/CalendarLegend.js +6 -16
- package/Calendar/calendar-api-google.d.ts +1 -9
- package/Calendar/calendar-api-google.js +29 -38
- package/Calendar/index.d.ts +6 -6
- package/Calendar/index.js +6 -9
- package/Calendar/types.d.ts +0 -19
- package/Calendar/types.js +1 -2
- package/Calendar/useCalendar.d.ts +4 -19
- package/Calendar/useCalendar.js +50 -61
- package/Calendar/utils.d.ts +1 -1
- package/Calendar/utils.js +31 -61
- package/Carousel/Carousel.d.ts +0 -0
- package/Carousel/Carousel.js +1 -381
- package/Carousel/CarouselCss.d.ts +3 -42
- package/Carousel/CarouselCss.js +13 -20
- package/Carousel/index.d.ts +1 -1
- package/Carousel/index.js +1 -4
- package/Collapsable/Collapsable.d.ts +0 -0
- package/Collapsable/Collapsable.js +1 -4
- package/Collapsable/CollapsableReach.d.ts +0 -6
- package/Collapsable/CollapsableReach.js +0 -251
- package/Collapsable/index.d.ts +1 -1
- package/Collapsable/index.js +1 -5
- package/Debug/Debug.d.ts +0 -0
- package/Debug/Debug.js +6 -10
- package/Debug/index.d.ts +1 -1
- package/Debug/index.js +1 -4
- package/Details/Details.d.ts +62 -68
- package/Details/Details.js +26 -40
- package/Details/index.d.ts +1 -1
- package/Details/index.js +1 -4
- package/Dialog/DialogMui.d.ts +19 -338
- package/Dialog/DialogMui.js +25 -69
- package/Dialog/css/bare.d.ts +18 -337
- package/Dialog/css/bare.js +19 -22
- package/Dialog/index.d.ts +2 -2
- package/Dialog/index.js +1 -5
- package/Dialog/m/bare.d.ts +2 -398
- package/Dialog/m/bare.js +3 -55
- package/Dialog/m/basic.d.ts +1 -1
- package/Dialog/m/basic.js +3 -10
- package/Dialog/m/index.d.ts +1 -2
- package/Dialog/m/index.js +3 -7
- package/Dialog/sc/bare.d.ts +31 -419
- package/Dialog/sc/bare.js +21 -36
- package/Dialog/sc/framer.d.ts +16 -424
- package/Dialog/sc/framer.js +15 -18
- package/Dialog/sc/framerMaterial.d.ts +15 -422
- package/Dialog/sc/framerMaterial.js +15 -18
- package/Dialog/sc/material.d.ts +30 -409
- package/Dialog/sc/material.js +19 -22
- package/Dialog/tw/bare.d.ts +16 -349
- package/Dialog/tw/bare.js +19 -35
- package/Dialog/tw/elegant.d.ts +15 -334
- package/Dialog/tw/elegant.js +19 -21
- package/Dialog/tw/framer.d.ts +6 -358
- package/Dialog/tw/framer.js +15 -18
- package/Dialog/tw/framerMaterial.d.ts +5 -356
- package/Dialog/tw/framerMaterial.js +15 -18
- package/Dialog/tw/material.d.ts +15 -334
- package/Dialog/tw/material.js +19 -21
- package/Editor/Editor--tiptap.d.ts +1 -1
- package/Editor/Editor--tiptap.js +15 -20
- package/Editor/components.d.ts +3 -5
- package/Editor/components.js +9 -14
- package/Editor/index.d.ts +1 -1
- package/Editor/index.js +1 -4
- package/{FaviconTags/FaviconTags.d.ts → FaviconTags.d.ts} +0 -10
- package/{FaviconTags/FaviconTags.mjs → FaviconTags.js} +0 -10
- package/Form/Form.d.ts +1 -14
- package/Form/Form.js +23 -28
- package/Form/index.d.ts +1 -1
- package/Form/index.js +1 -4
- package/Form/sc/bare.d.ts +12 -13
- package/Form/sc/bare.js +18 -21
- package/Forms/Checkbox/Checkbox.d.ts +5 -9
- package/Forms/Checkbox/Checkbox.js +13 -19
- package/Forms/Checkbox/index.d.ts +1 -1
- package/Forms/Checkbox/index.js +1 -4
- package/Forms/Feedback/Feedback.d.ts +0 -0
- package/Forms/Feedback/Feedback.js +6 -10
- package/Forms/Feedback/index.d.ts +1 -1
- package/Forms/Feedback/index.js +1 -4
- package/Forms/Field/Field.d.ts +3 -23
- package/Forms/Field/Field.js +10 -20
- package/Forms/Field/FieldControl.d.ts +2 -14
- package/Forms/Field/FieldControl.js +14 -30
- package/Forms/Field/FieldHint.d.ts +1 -1
- package/Forms/Field/FieldHint.js +3 -6
- package/Forms/Field/index.d.ts +2 -2
- package/Forms/Field/index.js +2 -5
- package/Forms/Input/Input.d.ts +6 -7
- package/Forms/Input/Input.js +14 -18
- package/Forms/Input/index.d.ts +1 -1
- package/Forms/Input/index.js +1 -4
- package/Forms/InputGroup/InputGroup.d.ts +5 -6
- package/Forms/InputGroup/InputGroup.js +13 -17
- package/Forms/InputGroup/index.d.ts +1 -1
- package/Forms/InputGroup/index.js +1 -4
- package/Forms/Label/Label.d.ts +1 -1
- package/Forms/Label/Label.js +5 -8
- package/Forms/Label/index.d.ts +1 -1
- package/Forms/Label/index.js +1 -4
- package/Forms/Password/Password.d.ts +2 -3
- package/Forms/Password/Password.js +14 -17
- package/Forms/Password/index.d.ts +1 -1
- package/Forms/Password/index.js +1 -4
- package/Forms/Radio/Radio.d.ts +1 -2
- package/Forms/Radio/Radio.js +19 -22
- package/Forms/Radio/index.d.ts +1 -1
- package/Forms/Radio/index.js +1 -4
- package/Forms/Switch/Switch.d.ts +3 -7
- package/Forms/Switch/Switch.js +13 -19
- package/Forms/Switch/index.d.ts +1 -1
- package/Forms/Switch/index.js +1 -4
- package/Forms/Textarea/Textarea.d.ts +2 -3
- package/Forms/Textarea/Textarea.js +10 -13
- package/Forms/Textarea/TextareaRich.d.ts +1 -2
- package/Forms/Textarea/TextareaRich.js +12 -17
- package/Forms/Textarea/index.d.ts +2 -2
- package/Forms/Textarea/index.js +2 -5
- package/Forms/Toggle/Toggle-tailwind.d.ts +0 -0
- package/Forms/Toggle/Toggle-tailwind.js +0 -98
- package/Forms/Toggle/Toggle.d.ts +7 -8
- package/Forms/Toggle/Toggle.js +21 -32
- package/Forms/Toggle/index.d.ts +1 -1
- package/Forms/Toggle/index.js +1 -4
- package/Forms/Toggle/useToggle-tailwind.d.ts +0 -0
- package/Forms/Toggle/useToggle-tailwind.js +0 -201
- package/Forms/Toggle/useToggle.d.ts +1 -31
- package/Forms/Toggle/useToggle.js +15 -79
- package/Forms/antispam.d.ts +0 -20
- package/Forms/antispam.js +8 -45
- package/Forms/helpers.d.ts +0 -8
- package/Forms/helpers.js +7 -26
- package/Forms/index.d.ts +15 -15
- package/Forms/index.js +15 -19
- package/Forms/styles.d.ts +3 -13
- package/Forms/styles.js +15 -28
- package/Gauge/Gauge.d.ts +0 -1
- package/Gauge/Gauge.js +1 -106
- package/Grid/Grid.d.ts +7 -39
- package/Grid/Grid.js +11 -15
- package/Grid/index.d.ts +1 -1
- package/Grid/index.js +1 -4
- package/Hamburger/Hamburger.d.ts +0 -1
- package/Hamburger/Hamburger.js +7 -16
- package/Hamburger/index.d.ts +1 -1
- package/Hamburger/index.js +1 -4
- package/Header/index.d.ts +1 -1
- package/Header/index.js +1 -4
- package/Header/useHeader.d.ts +0 -4
- package/Header/useHeader.js +15 -18
- package/Hidden/Hidden.d.ts +2 -2
- package/Hidden/Hidden.js +3 -6
- package/Hidden/index.d.ts +1 -1
- package/Hidden/index.js +1 -4
- package/Img/index.d.ts +1 -1
- package/Img/index.js +1 -4
- package/Img/sc/bare.d.ts +1 -1
- package/Img/sc/bare.js +3 -41
- package/Img/types.d.ts +0 -0
- package/Img/types.js +1 -2
- package/Link/Link.d.ts +1 -3
- package/Link/Link.js +3 -6
- package/Link/LinkBlank.d.ts +2 -5
- package/Link/LinkBlank.js +11 -17
- package/Link/index.d.ts +2 -2
- package/Link/index.js +2 -5
- package/Menu/Menu.d.ts +1 -1
- package/Menu/Menu.js +3 -6
- package/Menu/MenuMui.d.ts +0 -0
- package/Menu/MenuMui.js +0 -164
- package/Menu/index.d.ts +1 -1
- package/Menu/index.js +1 -4
- package/MenuItem/MenuItem.d.ts +1 -4
- package/MenuItem/MenuItem.js +3 -6
- package/MenuItem/MenuItemMui.d.ts +0 -0
- package/MenuItem/MenuItemMui.js +0 -31
- package/MenuItem/index.d.ts +1 -1
- package/MenuItem/index.js +1 -4
- package/MenuItem/useMenuItem.d.ts +0 -0
- package/MenuItem/useMenuItem.js +17 -39
- package/Meta.d.ts +5 -0
- package/{Meta/Meta.mjs → Meta.js} +0 -0
- package/{NoJs/NoJs.d.ts → NoJs.d.ts} +0 -0
- package/{NoJs/NoJs.mjs → NoJs.js} +0 -0
- package/Pagination/PaginationNav.d.ts +1 -9
- package/Pagination/PaginationNav.js +18 -35
- package/Pagination/PaginationResults.d.ts +0 -0
- package/Pagination/PaginationResults.js +8 -12
- package/Pagination/index.d.ts +2 -2
- package/Pagination/index.js +2 -5
- package/Pill/Pill.d.ts +4 -4
- package/Pill/Pill.js +6 -9
- package/Pill/index.d.ts +1 -1
- package/Pill/index.js +1 -4
- package/Progress/ProgressCircular.d.ts +1 -7
- package/Progress/ProgressCircular.js +10 -17
- package/Progress/ProgressLinear.d.ts +1 -8
- package/Progress/ProgressLinear.js +9 -16
- package/Progress/ProgressOverlay.d.ts +0 -0
- package/Progress/ProgressOverlay.js +16 -21
- package/Progress/index.d.ts +3 -3
- package/Progress/index.js +3 -6
- package/Rating/Rating.d.ts +5 -13
- package/Rating/Rating.js +20 -52
- package/Rating/index.d.ts +1 -4
- package/Rating/index.js +5 -17
- package/Select/SelectDownshift.d.ts +1 -1
- package/Select/SelectDownshift.js +1 -41
- package/Select/components.d.ts +1 -1
- package/Select/components.js +10 -13
- package/Select/index.d.ts +2 -2
- package/Select/index.js +1 -7
- package/Sidebar/Sidebar.d.ts +0 -0
- package/Sidebar/Sidebar.js +17 -21
- package/Sidebar/index.d.ts +1 -1
- package/Sidebar/index.js +1 -4
- package/Spacing/Spacing.d.ts +1 -14
- package/Spacing/Spacing.js +12 -29
- package/Spacing/index.d.ts +1 -1
- package/Spacing/index.js +1 -4
- package/Sticky/Sticky.d.ts +0 -0
- package/Sticky/Sticky.js +1 -222
- package/Sticky/StickyCss.d.ts +0 -0
- package/Sticky/StickyCss.js +5 -9
- package/Sticky/index.d.ts +1 -1
- package/Sticky/index.js +1 -5
- package/Tabs/TabsMui.d.ts +15 -305
- package/Tabs/TabsMui.js +27 -49
- package/Tabs/index.d.ts +1 -1
- package/Tabs/index.js +1 -4
- package/Tabs/sc/bare.d.ts +0 -5
- package/Tabs/sc/bare.js +0 -86
- package/Tabs/tw/bare.d.ts +12 -302
- package/Tabs/tw/bare.js +15 -18
- package/Tabs/tw/material.d.ts +9 -335
- package/Tabs/tw/material.js +15 -17
- package/Tabs/useTabs.d.ts +0 -22
- package/Tabs/useTabs.js +10 -13
- package/Typography/CopyPasteVisible.d.ts +1 -1
- package/Typography/CopyPasteVisible.js +3 -6
- package/Typography/Native.d.ts +5 -5
- package/Typography/Native.js +13 -16
- package/Typography/ReadMore.d.ts +0 -2
- package/Typography/ReadMore.js +24 -29
- package/Typography/TextLoop.d.ts +0 -0
- package/Typography/TextLoop.js +17 -23
- package/Typography/TypeStairs.d.ts +0 -0
- package/Typography/TypeStairs.js +7 -17
- package/Typography/index.d.ts +5 -5
- package/Typography/index.js +5 -8
- package/classed.d.ts +8 -0
- package/{helpers/classed.mjs → classed.js} +2 -33
- package/{helpers/createUseMediaQueryWidth.d.ts → createUseMediaQueryWidth.d.ts} +1 -7
- package/createUseMediaQueryWidth.js +39 -0
- package/css/index.d.ts +1 -2
- package/css/index.js +1 -36
- package/{helpers/extend-component.d.ts → extendComponent.d.ts} +0 -11
- package/{helpers/extend-component.mjs → extendComponent.js} +0 -4
- package/index.d.ts +25 -1
- package/index.js +24 -8
- package/m/MotionProvider.d.ts +0 -32
- package/m/MotionProvider.js +5 -41
- package/m/index.d.ts +1 -6
- package/m/index.js +1 -9
- package/m/lite.d.ts +0 -0
- package/m/lite.js +2 -4
- package/m/max.d.ts +0 -0
- package/m/max.js +2 -4
- package/{helpers/mergeRefs.d.ts → mergeRefs.d.ts} +0 -0
- package/{helpers/mergeRefs.mjs → mergeRefs.js} +0 -0
- package/package.json +610 -25
- package/sc/index.d.ts +29 -30
- package/sc/index.js +29 -37
- package/scm/index.d.ts +28 -29
- package/scm/index.js +28 -36
- package/shared/index.d.ts +7 -8
- package/shared/index.js +7 -11
- package/styles/Body.d.ts +2 -10
- package/styles/Body.js +4 -15
- package/styles/Global.d.ts +0 -13
- package/styles/Global.js +4 -20
- package/styles/index.d.ts +7 -7
- package/styles/index.js +7 -41
- package/styles/media.d.ts +1 -50
- package/styles/media.js +10 -96
- package/styles/spacing.d.ts +1 -2
- package/styles/spacing.js +4 -11
- package/styles/styled.d.ts +0 -4
- package/styles/styled.js +7 -15
- package/styles/theme--vanilla.d.ts +0 -0
- package/styles/theme--vanilla.js +19 -36
- package/styles/theme.d.ts +0 -29
- package/styles/theme.js +9 -24
- package/tw/index.d.ts +1 -2
- package/tw/index.js +1 -36
- package/twm/index.d.ts +1 -2
- package/twm/index.js +1 -36
- package/types.d.ts +3 -2
- package/types.js +1 -2
- package/typings.d.ts +1 -0
- package/{hooks/useAsyncFn.d.ts → useAsyncFn.d.ts} +1 -4
- package/{hooks/useAsyncFn.mjs → useAsyncFn.js} +4 -8
- package/useDateLocale.d.ts +2 -0
- package/{hooks/useDateLocale.mjs → useDateLocale.js} +5 -14
- package/useFirstMountState.d.ts +2 -0
- package/{hooks/useFirstMountState.mjs → useFirstMountState.js} +0 -3
- package/useFixedOffset.d.ts +3 -0
- package/{hooks/useFixedOffset.mjs → useFixedOffset.js} +3 -18
- package/{hooks/useFocus.d.ts → useFocus.d.ts} +0 -3
- package/{hooks/useFocus.mjs → useFocus.js} +0 -3
- package/useInterval.d.ts +2 -0
- package/{hooks/useInterval.mjs → useInterval.js} +3 -9
- package/useIsomorphicLayoutEffect.d.ts +3 -0
- package/{hooks/useIsomorphicLayoutEffect.mjs → useIsomorphicLayoutEffect.js} +1 -4
- package/{hooks/useKeyUp.d.ts → useKeyUp.d.ts} +0 -0
- package/{hooks/useKeyUp.mjs → useKeyUp.js} +3 -8
- package/{hooks/useMeasure.d.ts → useMeasure.d.ts} +0 -5
- package/{hooks/useMeasure.mjs → useMeasure.js} +14 -51
- package/useMountedState.d.ts +2 -0
- package/{hooks/useMountedState.mjs → useMountedState.js} +0 -3
- package/useNavigateAway.d.ts +3 -0
- package/useNavigateAway.js +25 -0
- package/usePrevious.d.ts +2 -0
- package/usePrevious.js +10 -0
- package/{hooks/usePreviousRef.d.ts → usePreviousRef.d.ts} +0 -0
- package/{hooks/usePreviousRef.mjs → usePreviousRef.js} +0 -0
- package/{hooks/useScrollPosition.d.ts → useScrollPosition.d.ts} +0 -7
- package/{hooks/useScrollPosition.mjs → useScrollPosition.js} +3 -10
- package/{hooks/useScrollThreshold.d.ts → useScrollThreshold.d.ts} +0 -0
- package/{hooks/useScrollThreshold.mjs → useScrollThreshold.js} +5 -6
- package/{hooks/useScrollTo.d.ts → useScrollTo.d.ts} +0 -0
- package/{hooks/useScrollTo.mjs → useScrollTo.js} +4 -3
- package/{hooks/useSmoothScroll.d.ts → useSmoothScroll.d.ts} +0 -6
- package/{hooks/useSmoothScroll.mjs → useSmoothScroll.js} +3 -10
- package/useSpinDelay.d.ts +2 -0
- package/{hooks/useSpinDelay.mjs → useSpinDelay.js} +3 -14
- package/{hooks/useTraceUpdate.d.ts → useTraceUpdate.d.ts} +0 -3
- package/{hooks/useTraceUpdate.mjs → useTraceUpdate.js} +2 -5
- package/{hooks/useUpdateEffect.d.ts → useUpdateEffect.d.ts} +0 -3
- package/{hooks/useUpdateEffect.mjs → useUpdateEffect.js} +1 -5
- package/useWindowSize.d.ts +3 -0
- package/{hooks/useWindowSize.mjs → useWindowSize.js} +4 -13
- package/Alert/Alert.mjs +0 -10
- package/Alert/index.mjs +0 -1
- package/Alert/package.json +0 -6
- package/Animations/Reveal.mjs +0 -17
- package/Animations/Underline.mjs +0 -5
- package/Animations/index.mjs +0 -3
- package/Animations/package.json +0 -6
- package/Animations/useReveal.mjs +0 -71
- package/Autocomplete/AutocompleteDownshift.mjs +0 -158
- package/Autocomplete/AutocompleteDownshiftMultiselect.mjs +0 -353
- package/Autocomplete/AutocompleteMui.mjs +0 -182
- package/Autocomplete/AutocompleteReach.mjs +0 -112
- package/Autocomplete/components.mjs +0 -34
- package/Autocomplete/helpers.mjs +0 -29
- package/Autocomplete/index.mjs +0 -3
- package/Autocomplete/package.json +0 -6
- package/Bg/BgColor.mjs +0 -21
- package/Bg/BgPhoto.mjs +0 -16
- package/Bg/BgSvg.mjs +0 -12
- package/Bg/index.mjs +0 -3
- package/Bg/package.json +0 -6
- package/Breadcrumbs/Breadcrumbs.mjs +0 -27
- package/Breadcrumbs/index.mjs +0 -1
- package/Breadcrumbs/package.json +0 -6
- package/Buttons/Button.mjs +0 -14
- package/Buttons/ButtonComposite.mjs +0 -28
- package/Buttons/ButtonFab.mjs +0 -6
- package/Buttons/ButtonLink.mjs +0 -11
- package/Buttons/IconButton.mjs +0 -7
- package/Buttons/index.mjs +0 -5
- package/Buttons/package.json +0 -6
- package/Calendar/CalendarDaygridCell.mjs +0 -57
- package/Calendar/CalendarDaygridNav.mjs +0 -23
- package/Calendar/CalendarDaygridTable.mjs +0 -48
- package/Calendar/CalendarLegend.mjs +0 -15
- package/Calendar/calendar-api-google.mjs +0 -129
- package/Calendar/index.mjs +0 -6
- package/Calendar/package.json +0 -6
- package/Calendar/types.mjs +0 -1
- package/Calendar/useCalendar.mjs +0 -183
- package/Calendar/utils.mjs +0 -202
- package/Carousel/Carousel.mjs +0 -378
- package/Carousel/CarouselCss.mjs +0 -22
- package/Carousel/index.mjs +0 -1
- package/Carousel/package.json +0 -6
- package/Collapsable/Collapsable.mjs +0 -1
- package/Collapsable/CollapsableReach.mjs +0 -252
- package/Collapsable/index.mjs +0 -2
- package/Collapsable/package.json +0 -6
- package/Debug/Debug.mjs +0 -9
- package/Debug/index.mjs +0 -1
- package/Debug/package.json +0 -6
- package/Details/Details.mjs +0 -63
- package/Details/index.mjs +0 -1
- package/Details/package.json +0 -6
- package/Dialog/DialogMui.mjs +0 -80
- package/Dialog/css/bare.mjs +0 -21
- package/Dialog/index.mjs +0 -1
- package/Dialog/m/bare.mjs +0 -52
- package/Dialog/m/basic.mjs +0 -31
- package/Dialog/m/index.mjs +0 -4
- package/Dialog/m/package.json +0 -6
- package/Dialog/package.json +0 -6
- package/Dialog/sc/bare.mjs +0 -43
- package/Dialog/sc/framer.mjs +0 -16
- package/Dialog/sc/framerMaterial.mjs +0 -16
- package/Dialog/sc/material.mjs +0 -21
- package/Dialog/tw/bare.mjs +0 -42
- package/Dialog/tw/elegant.mjs +0 -20
- package/Dialog/tw/framer.mjs +0 -16
- package/Dialog/tw/framerMaterial.mjs +0 -16
- package/Dialog/tw/material.mjs +0 -20
- package/Editor/Editor--tiptap.mjs +0 -26
- package/Editor/components.mjs +0 -10
- package/Editor/index.mjs +0 -1
- package/Editor/package.json +0 -6
- package/FaviconTags/FaviconTags.js +0 -20
- package/FaviconTags/index.d.ts +0 -2
- package/FaviconTags/index.js +0 -7
- package/FaviconTags/index.mjs +0 -2
- package/FaviconTags/package.json +0 -6
- package/Form/Form.mjs +0 -61
- package/Form/index.mjs +0 -1
- package/Form/package.json +0 -6
- package/Form/sc/bare.mjs +0 -20
- package/Forms/Checkbox/Checkbox.mjs +0 -18
- package/Forms/Checkbox/index.mjs +0 -1
- package/Forms/Checkbox/package.json +0 -6
- package/Forms/Feedback/Feedback.mjs +0 -9
- package/Forms/Feedback/index.mjs +0 -1
- package/Forms/Feedback/package.json +0 -6
- package/Forms/Field/Field.mjs +0 -31
- package/Forms/Field/FieldControl.mjs +0 -47
- package/Forms/Field/FieldHint.mjs +0 -4
- package/Forms/Field/index.mjs +0 -2
- package/Forms/Field/package.json +0 -6
- package/Forms/Input/Input.mjs +0 -17
- package/Forms/Input/index.mjs +0 -1
- package/Forms/Input/package.json +0 -6
- package/Forms/InputGroup/InputGroup.mjs +0 -15
- package/Forms/InputGroup/index.mjs +0 -1
- package/Forms/InputGroup/package.json +0 -6
- package/Forms/Label/Label.mjs +0 -6
- package/Forms/Label/index.mjs +0 -1
- package/Forms/Label/package.json +0 -6
- package/Forms/Password/Password.mjs +0 -17
- package/Forms/Password/index.mjs +0 -1
- package/Forms/Password/package.json +0 -6
- package/Forms/Radio/Radio.mjs +0 -25
- package/Forms/Radio/index.mjs +0 -1
- package/Forms/Radio/package.json +0 -6
- package/Forms/Switch/Switch.mjs +0 -20
- package/Forms/Switch/index.mjs +0 -1
- package/Forms/Switch/package.json +0 -6
- package/Forms/Textarea/Textarea.mjs +0 -12
- package/Forms/Textarea/TextareaRich.mjs +0 -28
- package/Forms/Textarea/index.mjs +0 -2
- package/Forms/Textarea/package.json +0 -6
- package/Forms/Toggle/Toggle-tailwind.mjs +0 -99
- package/Forms/Toggle/Toggle.mjs +0 -31
- package/Forms/Toggle/index.mjs +0 -1
- package/Forms/Toggle/package.json +0 -6
- package/Forms/Toggle/useToggle-tailwind.mjs +0 -202
- package/Forms/Toggle/useToggle.mjs +0 -145
- package/Forms/antispam.mjs +0 -60
- package/Forms/helpers.mjs +0 -46
- package/Forms/index.mjs +0 -16
- package/Forms/package.json +0 -6
- package/Forms/styles.mjs +0 -29
- package/Gauge/Gauge.mjs +0 -102
- package/Grid/Grid.mjs +0 -53
- package/Grid/index.mjs +0 -1
- package/Grid/package.json +0 -6
- package/Hamburger/Hamburger.mjs +0 -52
- package/Hamburger/index.mjs +0 -1
- package/Hamburger/package.json +0 -6
- package/Header/index.mjs +0 -1
- package/Header/package.json +0 -6
- package/Header/useHeader.mjs +0 -31
- package/Hidden/Hidden.mjs +0 -10
- package/Hidden/index.mjs +0 -1
- package/Hidden/package.json +0 -6
- package/Img/index.mjs +0 -1
- package/Img/package.json +0 -6
- package/Img/sc/bare.mjs +0 -39
- package/Img/types.mjs +0 -1
- package/Link/Link.mjs +0 -4
- package/Link/LinkBlank.mjs +0 -17
- package/Link/index.mjs +0 -2
- package/Link/package.json +0 -6
- package/Menu/Menu.mjs +0 -4
- package/Menu/MenuMui.mjs +0 -165
- package/Menu/index.mjs +0 -1
- package/Menu/package.json +0 -6
- package/MenuItem/MenuItem.mjs +0 -4
- package/MenuItem/MenuItemMui.mjs +0 -32
- package/MenuItem/index.mjs +0 -1
- package/MenuItem/package.json +0 -6
- package/MenuItem/useMenuItem.mjs +0 -60
- package/Meta/Meta.d.ts +0 -15
- package/Meta/Meta.js +0 -10
- package/Meta/index.d.ts +0 -2
- package/Meta/index.js +0 -7
- package/Meta/index.mjs +0 -2
- package/Meta/package.json +0 -6
- package/NoJs/NoJs.js +0 -11
- package/NoJs/index.d.ts +0 -2
- package/NoJs/index.js +0 -7
- package/NoJs/index.mjs +0 -2
- package/NoJs/package.json +0 -6
- package/Pagination/PaginationNav.mjs +0 -61
- package/Pagination/PaginationResults.mjs +0 -11
- package/Pagination/index.mjs +0 -2
- package/Pagination/package.json +0 -6
- package/Pill/Pill.mjs +0 -7
- package/Pill/index.mjs +0 -1
- package/Pill/package.json +0 -6
- package/Progress/ProgressCircular.mjs +0 -15
- package/Progress/ProgressLinear.mjs +0 -24
- package/Progress/ProgressOverlay.mjs +0 -24
- package/Progress/index.mjs +0 -3
- package/Progress/package.json +0 -6
- package/README.md +0 -1
- package/Rating/Rating.mjs +0 -70
- package/Rating/index.mjs +0 -49
- package/Rating/package.json +0 -6
- package/Select/SelectDownshift.mjs +0 -38
- package/Select/components.mjs +0 -12
- package/Select/index.mjs +0 -3
- package/Select/package.json +0 -6
- package/Sidebar/Sidebar.mjs +0 -23
- package/Sidebar/index.mjs +0 -1
- package/Sidebar/package.json +0 -6
- package/Spacing/Spacing.mjs +0 -45
- package/Spacing/index.mjs +0 -1
- package/Spacing/package.json +0 -6
- package/Sticky/Sticky.mjs +0 -219
- package/Sticky/StickyCss.mjs +0 -6
- package/Sticky/index.mjs +0 -1
- package/Sticky/package.json +0 -6
- package/Tabs/TabsMui.mjs +0 -49
- package/Tabs/index.mjs +0 -1
- package/Tabs/package.json +0 -6
- package/Tabs/sc/bare.mjs +0 -87
- package/Tabs/tw/bare.mjs +0 -17
- package/Tabs/tw/material.mjs +0 -18
- package/Tabs/useTabs.mjs +0 -43
- package/Typography/CopyPasteVisible.mjs +0 -4
- package/Typography/Native.mjs +0 -14
- package/Typography/ReadMore.mjs +0 -43
- package/Typography/TextLoop.mjs +0 -46
- package/Typography/TypeStairs.mjs +0 -49
- package/Typography/index.mjs +0 -5
- package/Typography/package.json +0 -6
- package/css/index.mjs +0 -31
- package/css/package.json +0 -6
- package/helpers/classed.d.ts +0 -27
- package/helpers/classed.js +0 -78
- package/helpers/createUseMediaQueryWidth.js +0 -183
- package/helpers/createUseMediaQueryWidth.mjs +0 -178
- package/helpers/extend-component.js +0 -17
- package/helpers/index.d.ts +0 -4
- package/helpers/index.js +0 -7
- package/helpers/index.mjs +0 -4
- package/helpers/mergeRefs.js +0 -17
- package/helpers/package.json +0 -6
- package/hooks/index.d.ts +0 -20
- package/hooks/index.js +0 -44
- package/hooks/index.mjs +0 -21
- package/hooks/package.json +0 -6
- package/hooks/types.d.ts +0 -8
- package/hooks/types.js +0 -2
- package/hooks/types.mjs +0 -1
- package/hooks/useAsyncFn.js +0 -41
- package/hooks/useDateLocale.d.ts +0 -8
- package/hooks/useDateLocale.js +0 -41
- package/hooks/useFirstMountState.d.ts +0 -5
- package/hooks/useFirstMountState.js +0 -17
- package/hooks/useFixedOffset.d.ts +0 -12
- package/hooks/useFixedOffset.js +0 -62
- package/hooks/useFocus.js +0 -16
- package/hooks/useInterval.d.ts +0 -7
- package/hooks/useInterval.js +0 -32
- package/hooks/useIsomorphicLayoutEffect.d.ts +0 -6
- package/hooks/useIsomorphicLayoutEffect.js +0 -13
- package/hooks/useKeyUp.js +0 -27
- package/hooks/useMeasure.js +0 -171
- package/hooks/useMountedState.d.ts +0 -5
- package/hooks/useMountedState.js +0 -20
- package/hooks/useNavigateAway.d.ts +0 -32
- package/hooks/useNavigateAway.js +0 -73
- package/hooks/useNavigateAway.mjs +0 -68
- package/hooks/usePrevious.d.ts +0 -5
- package/hooks/usePrevious.js +0 -16
- package/hooks/usePrevious.mjs +0 -12
- package/hooks/usePreviousRef.js +0 -13
- package/hooks/useScrollPosition.js +0 -73
- package/hooks/useScrollThreshold.js +0 -33
- package/hooks/useScrollTo.js +0 -27
- package/hooks/useSmoothScroll.js +0 -44
- package/hooks/useSpinDelay.d.ts +0 -14
- package/hooks/useSpinDelay.js +0 -54
- package/hooks/useTraceUpdate.js +0 -26
- package/hooks/useUpdateEffect.js +0 -19
- package/hooks/useWindowSize.d.ts +0 -12
- package/hooks/useWindowSize.js +0 -34
- package/index.mjs +0 -5
- package/m/MotionProvider.mjs +0 -39
- package/m/index.mjs +0 -6
- package/m/lite.mjs +0 -2
- package/m/max.mjs +0 -2
- package/m/package.json +0 -6
- package/sc/index.mjs +0 -31
- package/sc/package.json +0 -6
- package/scm/index.mjs +0 -31
- package/scm/package.json +0 -6
- package/shared/index.mjs +0 -8
- package/shared/package.json +0 -6
- package/styles/Body.mjs +0 -13
- package/styles/Global.mjs +0 -18
- package/styles/index.mjs +0 -7
- package/styles/media.mjs +0 -156
- package/styles/package.json +0 -6
- package/styles/spacing.mjs +0 -45
- package/styles/styled.mjs +0 -13
- package/styles/theme--vanilla.mjs +0 -58
- package/styles/theme.mjs +0 -41
- package/tw/index.mjs +0 -31
- package/tw/package.json +0 -6
- package/twm/index.mjs +0 -31
- package/twm/package.json +0 -6
- package/types.mjs +0 -1
package/Forms/Toggle/Toggle.js
CHANGED
|
@@ -1,36 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
exports.Toggle = styled_components_1.default.span(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"], ["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"])));
|
|
20
|
-
exports.ToggleLabel = styled_components_1.default.span(templateObject_2 || (templateObject_2 = tslib_1.__makeTemplateObject(["\n margin-left: 0.6em; /* rtl */\n"], ["\n margin-left: 0.6em; /* rtl */\n"])));
|
|
21
|
-
exports.ToggleLabelSub = styled_components_1.default.small(templateObject_3 || (templateObject_3 = tslib_1.__makeTemplateObject(["\n opacity: 0.7;\n font-size: 0.7em; ;\n"], ["\n opacity: 0.7;\n font-size: 0.7em; ;\n"])));
|
|
22
|
-
exports.ToggleIndicatorHolder = styled_components_1.default.span(templateObject_4 || (templateObject_4 = tslib_1.__makeTemplateObject(["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"], ["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"])), styled_1.stateFocus);
|
|
23
|
-
exports.ToggleIndicatorBgSquare = styled_components_1.default.svg(templateObject_5 || (templateObject_5 = tslib_1.__makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), exports.toggleIndicatorBgShape);
|
|
24
|
-
exports.ToggleIndicatorBgCircle = styled_components_1.default.svg(templateObject_6 || (templateObject_6 = tslib_1.__makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), exports.toggleIndicatorBgShape);
|
|
25
|
-
exports.ToggleIndicatorFg = styled_components_1.default.svg(templateObject_7 || (templateObject_7 = tslib_1.__makeTemplateObject(["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"], ["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"])), exports.toggleIndicatorFg, exports.ToggleIndicatorHolder);
|
|
26
|
-
var ToggleIndicatorSquared = function (props) {
|
|
27
|
-
return ((0, jsx_runtime_1.jsxs)(exports.ToggleIndicatorHolder, { children: [(0, jsx_runtime_1.jsx)(exports.ToggleIndicatorBgSquare, { viewBox: "0 0 24 24", children: (0, jsx_runtime_1.jsx)("rect", { width: "24", height: "24" }) }), (0, jsx_runtime_1.jsx)(exports.ToggleIndicatorFg, { viewBox: "0 0 24 24", children: (0, jsx_runtime_1.jsx)("path", { d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }) })] }));
|
|
1
|
+
import { __makeTemplateObject } from "tslib";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useId } from "react";
|
|
4
|
+
import styled from "styled-components";
|
|
5
|
+
import { stateFocus } from "../../styles/styled.js";
|
|
6
|
+
export var toggleBase = "\n border: 1px solid var(--forms-border-color);\n";
|
|
7
|
+
export var toggleIndicatorBg = "\n display: inline-block;\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n";
|
|
8
|
+
export var toggleIndicatorBgShape = "\n ".concat(toggleIndicatorBg, "\n fill: none;\n stroke-width: 2px;\n stroke: var(--forms-border-color);\n");
|
|
9
|
+
export var toggleIndicatorFg = "\n position: absolute;\n left: 0;\n width: 100%;\n height: 100%;\n fill: currentcolor;\n";
|
|
10
|
+
export var Toggle = styled.span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"], ["\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 2em;\n height: 2em;\n margin: 0 -0.3em; /* rtl */\n padding: 0.3em;\n"])));
|
|
11
|
+
export var ToggleLabel = styled.span(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n margin-left: 0.6em; /* rtl */\n"], ["\n margin-left: 0.6em; /* rtl */\n"])));
|
|
12
|
+
export var ToggleLabelSub = styled.small(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n opacity: 0.7;\n font-size: 0.7em;\n"], ["\n opacity: 0.7;\n font-size: 0.7em;\n"])));
|
|
13
|
+
export var ToggleIndicatorHolder = styled.span(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"], ["\n position: relative;\n display: flex;\n\n input:focus ~ & {\n ", "\n }\n"])), stateFocus);
|
|
14
|
+
export var ToggleIndicatorBgSquare = styled.svg(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), toggleIndicatorBgShape);
|
|
15
|
+
export var ToggleIndicatorBgCircle = styled.svg(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), toggleIndicatorBgShape);
|
|
16
|
+
export var ToggleIndicatorFg = styled.svg(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"], ["\n ", "\n transform: scale(0);\n transition: transform 0.18s ease;\n\n input:checked + ", " & {\n transform: scale(1);\n }\n"])), toggleIndicatorFg, ToggleIndicatorHolder);
|
|
17
|
+
export var ToggleIndicatorSquared = function (props) {
|
|
18
|
+
return (_jsxs(ToggleIndicatorHolder, { children: [_jsx(ToggleIndicatorBgSquare, { viewBox: "0 0 24 24", children: _jsx("rect", { width: "24", height: "24" }) }), _jsx(ToggleIndicatorFg, { viewBox: "0 0 24 24", children: _jsx("path", { d: "M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z" }) })] }));
|
|
28
19
|
};
|
|
29
|
-
|
|
30
|
-
var ToggleIndicatorRounded = function (_a) {
|
|
20
|
+
export var ToggleIndicatorRounded = function (_a) {
|
|
31
21
|
var _b = _a.r, r = _b === void 0 ? 6 : _b;
|
|
32
|
-
var id =
|
|
33
|
-
return ((
|
|
22
|
+
var id = useId();
|
|
23
|
+
return (_jsxs(ToggleIndicatorHolder, { children: [_jsxs(ToggleIndicatorBgCircle, { viewBox: "0 0 24 24", children: [_jsx("circle", { cy: "12", cx: "12", r: "12", id: "r_".concat(id), clipPath: "url(#c_".concat(id, ")") }), _jsx("clipPath", { id: "c_".concat(id), children: _jsx("use", { xlinkHref: "#r_".concat(id) }) })] }), _jsx(ToggleIndicatorFg, { viewBox: "0 0 24 24", children: _jsx("circle", { r: r, cx: "12", cy: "12" }) })] }));
|
|
34
24
|
};
|
|
35
|
-
exports.ToggleIndicatorRounded = ToggleIndicatorRounded;
|
|
36
25
|
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
|
package/Forms/Toggle/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "./Toggle";
|
|
1
|
+
export * from "./Toggle.js";
|
package/Forms/Toggle/index.js
CHANGED
|
File without changes
|
|
@@ -1,202 +1 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// import React, { useCallback, useId, useMemo } from "react";
|
|
3
|
-
// import type { Option } from "@koine/react";
|
|
4
|
-
// import type { FormControlElementProps } from "../FormControl";
|
|
5
|
-
// export type UseToggleProps = FormControlElementProps<React.FC> & {
|
|
6
|
-
// // defaultChecked?: boolean;
|
|
7
|
-
// value?: boolean;
|
|
8
|
-
// valueTrue?: string;
|
|
9
|
-
// valueFalse?: string;
|
|
10
|
-
// options?: Option[];
|
|
11
|
-
// };
|
|
12
|
-
// /**
|
|
13
|
-
// * This hook is meant to power Checkboxes, Switches and checkbox-like Radios
|
|
14
|
-
// * components, it works in fact in two modes:
|
|
15
|
-
// *
|
|
16
|
-
// * 1: behaviour as standard checkbox
|
|
17
|
-
// * yup validation would simply look like:
|
|
18
|
-
// *
|
|
19
|
-
// * ```ts
|
|
20
|
-
// * privacy: boolean().required(),
|
|
21
|
-
// * ```
|
|
22
|
-
// *
|
|
23
|
-
// * 1b: to make the checkbox required (either with `true` or `false`):
|
|
24
|
-
// * ```
|
|
25
|
-
// * privacy: boolean().oneOf([true]).required()
|
|
26
|
-
// * ```
|
|
27
|
-
// *
|
|
28
|
-
// * 2: beahviour as two radio for checkbox with custom true/false values as
|
|
29
|
-
// * strings yup validation would look like:
|
|
30
|
-
// *
|
|
31
|
-
// * ```ts
|
|
32
|
-
// * newsletter: string().oneOf(["yes", "no"]).required(),
|
|
33
|
-
// * // add `.nullable()` if you do not provide a string `defaultValue`
|
|
34
|
-
// *
|
|
35
|
-
// * // to do not make it required and avoid triggering an error when the input is
|
|
36
|
-
// * // untouched you need to set the default value of the input in the form
|
|
37
|
-
// * // initialization's `defaultValues` as such:
|
|
38
|
-
// *
|
|
39
|
-
// * useForm({ defaultValues: { newsletter: "no" }})
|
|
40
|
-
// * ```
|
|
41
|
-
// *
|
|
42
|
-
// * To enable this mode either pass the props `valueTrue` and `valueFalse` or
|
|
43
|
-
// * an array of options with the shape of `Option`
|
|
44
|
-
// */
|
|
45
|
-
// export function useToggle(
|
|
46
|
-
// props: UseToggleProps,
|
|
47
|
-
// ref: React.ForwardedRef<HTMLInputElement>
|
|
48
|
-
// ) {
|
|
49
|
-
// const {
|
|
50
|
-
// actions,
|
|
51
|
-
// form: { watch, register },
|
|
52
|
-
// name,
|
|
53
|
-
// state,
|
|
54
|
-
// strings: { label },
|
|
55
|
-
// options,
|
|
56
|
-
// value: propValue,
|
|
57
|
-
// ...restProps
|
|
58
|
-
// } = props;
|
|
59
|
-
// let {
|
|
60
|
-
// valueTrue,
|
|
61
|
-
// valueFalse,
|
|
62
|
-
// // defaultChecked,
|
|
63
|
-
// // defaultValue,
|
|
64
|
-
// // eslint-disable-next-line prefer-const
|
|
65
|
-
// // ...remainingInputProps
|
|
66
|
-
// } = restProps;
|
|
67
|
-
// // use options data convention to pass on the true/false values
|
|
68
|
-
// if (options) {
|
|
69
|
-
// valueTrue = options
|
|
70
|
-
// .filter((opt) => opt.value === "true")[0]
|
|
71
|
-
// .label.toString();
|
|
72
|
-
// valueFalse = options
|
|
73
|
-
// .filter((opt) => opt.value === "false")[0]
|
|
74
|
-
// .label.toString();
|
|
75
|
-
// }
|
|
76
|
-
// const id = useId();
|
|
77
|
-
// const idTrue = `${id}-true`;
|
|
78
|
-
// const idFalse = `${id}-false`;
|
|
79
|
-
// const isRadio = !!(valueTrue && valueFalse);
|
|
80
|
-
// // // manage default values for both toggle modes
|
|
81
|
-
// // defaultChecked = isUndefined(defaultChecked) ? false : defaultChecked;
|
|
82
|
-
// // // TODO: maybe throw an error if the defaultValue that arrives here is not
|
|
83
|
-
// // // a valid value
|
|
84
|
-
// // defaultValue =
|
|
85
|
-
// // defaultValue === valueTrue || defaultValue === valueFalse
|
|
86
|
-
// // ? defaultValue
|
|
87
|
-
// // : valueFalse;
|
|
88
|
-
// // get the value either from the uncontrolled watched input or from the given
|
|
89
|
-
// // prop to control the component
|
|
90
|
-
// let value = watch(name);
|
|
91
|
-
// if (propValue) {
|
|
92
|
-
// value = propValue;
|
|
93
|
-
// }
|
|
94
|
-
// /**
|
|
95
|
-
// * Accessibility.
|
|
96
|
-
// *
|
|
97
|
-
// * Fake the spacebar keyboard behaviour on the radio mode of the checkbox.
|
|
98
|
-
// * Without this *only* the arrow keys would change the checkbox state
|
|
99
|
-
// */
|
|
100
|
-
// const handleKeyDown: React.KeyboardEventHandler<HTMLInputElement> =
|
|
101
|
-
// useCallback(
|
|
102
|
-
// (event) => {
|
|
103
|
-
// if (event.key === " ") {
|
|
104
|
-
// event.preventDefault();
|
|
105
|
-
// event.stopPropagation();
|
|
106
|
-
// const firstInput = event.target as HTMLInputElement;
|
|
107
|
-
// const next = firstInput.nextElementSibling as HTMLInputElement;
|
|
108
|
-
// const prev = firstInput.previousElementSibling as HTMLInputElement;
|
|
109
|
-
// const secondInput = next?.tagName === "INPUT" ? next : prev;
|
|
110
|
-
// let target = firstInput;
|
|
111
|
-
// if (firstInput.checked) {
|
|
112
|
-
// target = secondInput;
|
|
113
|
-
// } else {
|
|
114
|
-
// if (!secondInput.checked) {
|
|
115
|
-
// target =
|
|
116
|
-
// firstInput.value === valueTrue ? firstInput : secondInput;
|
|
117
|
-
// }
|
|
118
|
-
// }
|
|
119
|
-
// if (target) target.click();
|
|
120
|
-
// }
|
|
121
|
-
// },
|
|
122
|
-
// [valueTrue]
|
|
123
|
-
// );
|
|
124
|
-
// // collect all the return values that are dependent on the current value
|
|
125
|
-
// // of the input
|
|
126
|
-
// const valueDependentProps = useMemo(
|
|
127
|
-
// () => ({
|
|
128
|
-
// rootProps: {
|
|
129
|
-
// htmlFor: isRadio
|
|
130
|
-
// ? !value || value === valueFalse
|
|
131
|
-
// ? idTrue
|
|
132
|
-
// : idFalse
|
|
133
|
-
// : id,
|
|
134
|
-
// },
|
|
135
|
-
// label: label ? label : value,
|
|
136
|
-
// value,
|
|
137
|
-
// }),
|
|
138
|
-
// [value, valueFalse, isRadio, id, idTrue, idFalse, label]
|
|
139
|
-
// );
|
|
140
|
-
// const Inputs = useMemo(
|
|
141
|
-
// () =>
|
|
142
|
-
// isRadio ? (
|
|
143
|
-
// <>
|
|
144
|
-
// <input
|
|
145
|
-
// className="peer sr-only"
|
|
146
|
-
// id={idFalse}
|
|
147
|
-
// {...register(name, {
|
|
148
|
-
// onBlur: () => actions.setFocused(false),
|
|
149
|
-
// })}
|
|
150
|
-
// onFocus={() => actions.setFocused(true)}
|
|
151
|
-
// // {...remainingInputProps}
|
|
152
|
-
// onKeyDown={handleKeyDown}
|
|
153
|
-
// type="radio"
|
|
154
|
-
// value={valueFalse}
|
|
155
|
-
// // defaultChecked={defaultValue === valueFalse}
|
|
156
|
-
// />
|
|
157
|
-
// <input
|
|
158
|
-
// className="peer sr-only"
|
|
159
|
-
// id={idTrue}
|
|
160
|
-
// {...register(name, {
|
|
161
|
-
// onBlur: () => actions.setFocused(false),
|
|
162
|
-
// })}
|
|
163
|
-
// onFocus={() => actions.setFocused(true)}
|
|
164
|
-
// // {...remainingInputProps}
|
|
165
|
-
// onKeyDown={handleKeyDown}
|
|
166
|
-
// type="radio"
|
|
167
|
-
// value={valueTrue}
|
|
168
|
-
// // defaultChecked={defaultValue === valueTrue}
|
|
169
|
-
// />
|
|
170
|
-
// </>
|
|
171
|
-
// ) : (
|
|
172
|
-
// <input
|
|
173
|
-
// className="peer sr-only"
|
|
174
|
-
// id={id}
|
|
175
|
-
// type="checkbox"
|
|
176
|
-
// {...register(name, { onBlur: () => actions.setFocused(false) })}
|
|
177
|
-
// onFocus={() => actions.setFocused(true)}
|
|
178
|
-
// // {...remainingInputProps}
|
|
179
|
-
// // defaultChecked={defaultChecked}
|
|
180
|
-
// />
|
|
181
|
-
// ),
|
|
182
|
-
// [
|
|
183
|
-
// name,
|
|
184
|
-
// actions,
|
|
185
|
-
// // remainingInputProps,
|
|
186
|
-
// handleKeyDown,
|
|
187
|
-
// isRadio,
|
|
188
|
-
// idFalse,
|
|
189
|
-
// idTrue,
|
|
190
|
-
// valueFalse,
|
|
191
|
-
// valueTrue,
|
|
192
|
-
// id,
|
|
193
|
-
// // defaultChecked,
|
|
194
|
-
// // defaultValue,
|
|
195
|
-
// ]
|
|
196
|
-
// );
|
|
197
|
-
// // console.log("useToggle: render", value);
|
|
198
|
-
// return {
|
|
199
|
-
// ...valueDependentProps,
|
|
200
|
-
// Inputs,
|
|
201
|
-
// };
|
|
202
|
-
// }
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import type { Option } from "../../types";
|
|
1
|
+
import type { Option } from "../../types.js";
|
|
3
2
|
import { FormControl } from "../helpers";
|
|
4
3
|
export type UseToggleProps = Omit<FormControl, "value"> & {
|
|
5
4
|
value?: boolean;
|
|
@@ -7,35 +6,6 @@ export type UseToggleProps = Omit<FormControl, "value"> & {
|
|
|
7
6
|
valueFalse?: string;
|
|
8
7
|
options?: Option[];
|
|
9
8
|
};
|
|
10
|
-
/**
|
|
11
|
-
* This hook is meant to power Checkboxes, Switches and checkbox-like Radios
|
|
12
|
-
* components, it works in fact in two modes:
|
|
13
|
-
*
|
|
14
|
-
* 1: behaviour as standard checkbox
|
|
15
|
-
* yup validation would simply look like:
|
|
16
|
-
*
|
|
17
|
-
* ```ts
|
|
18
|
-
* privacy: boolean().required(),
|
|
19
|
-
* // add `.nullable()` if you do not provide a boolean `defaultValue`
|
|
20
|
-
* ```
|
|
21
|
-
*
|
|
22
|
-
* 2: beahviour as two radio for checkbox with custom true/false values as
|
|
23
|
-
* strings yup validation would look like:
|
|
24
|
-
*
|
|
25
|
-
* ```ts
|
|
26
|
-
* newsletter: string().oneOf(["yes", "no"]).required(),
|
|
27
|
-
* // add `.nullable()` if you do not provide a string `defaultValue`
|
|
28
|
-
*
|
|
29
|
-
* // to do not make it required and avoid triggering an error when the input is
|
|
30
|
-
* // untouched you need to set the default value of the input in the form
|
|
31
|
-
* // initialization's `defaultValues` as such:
|
|
32
|
-
*
|
|
33
|
-
* useForm({ defaultValues: { newsletter: "no" }})
|
|
34
|
-
* ```
|
|
35
|
-
*
|
|
36
|
-
* To enable this mode either pass the props `valueTrue` and `valueFalse` or
|
|
37
|
-
* an array of options with the shape of `Option`
|
|
38
|
-
*/
|
|
39
9
|
export declare function useToggle(props: UseToggleProps, ref: React.ForwardedRef<HTMLInputElement>): {
|
|
40
10
|
Inputs: import("react/jsx-runtime").JSX.Element;
|
|
41
11
|
rootProps: {
|
|
@@ -1,48 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
/**
|
|
10
|
-
* This hook is meant to power Checkboxes, Switches and checkbox-like Radios
|
|
11
|
-
* components, it works in fact in two modes:
|
|
12
|
-
*
|
|
13
|
-
* 1: behaviour as standard checkbox
|
|
14
|
-
* yup validation would simply look like:
|
|
15
|
-
*
|
|
16
|
-
* ```ts
|
|
17
|
-
* privacy: boolean().required(),
|
|
18
|
-
* // add `.nullable()` if you do not provide a boolean `defaultValue`
|
|
19
|
-
* ```
|
|
20
|
-
*
|
|
21
|
-
* 2: beahviour as two radio for checkbox with custom true/false values as
|
|
22
|
-
* strings yup validation would look like:
|
|
23
|
-
*
|
|
24
|
-
* ```ts
|
|
25
|
-
* newsletter: string().oneOf(["yes", "no"]).required(),
|
|
26
|
-
* // add `.nullable()` if you do not provide a string `defaultValue`
|
|
27
|
-
*
|
|
28
|
-
* // to do not make it required and avoid triggering an error when the input is
|
|
29
|
-
* // untouched you need to set the default value of the input in the form
|
|
30
|
-
* // initialization's `defaultValues` as such:
|
|
31
|
-
*
|
|
32
|
-
* useForm({ defaultValues: { newsletter: "no" }})
|
|
33
|
-
* ```
|
|
34
|
-
*
|
|
35
|
-
* To enable this mode either pass the props `valueTrue` and `valueFalse` or
|
|
36
|
-
* an array of options with the shape of `Option`
|
|
37
|
-
*/
|
|
38
|
-
function useToggle(props, ref) {
|
|
39
|
-
var name = props.name, control = props.control, register = props.register, label = props.label, options = props.options, propValue = props.value, restProps = tslib_1.__rest(props, ["name", "control", "register", "label", "options", "value"]);
|
|
40
|
-
var id = restProps.id, valueTrue = restProps.valueTrue, valueFalse = restProps.valueFalse,
|
|
41
|
-
// defaultChecked,
|
|
42
|
-
// defaultValue,
|
|
43
|
-
// eslint-disable-next-line prefer-const
|
|
44
|
-
remainingInputProps = tslib_1.__rest(restProps, ["id", "valueTrue", "valueFalse"]);
|
|
45
|
-
// use options data convention to pass on the true/false values
|
|
1
|
+
import { __assign, __rest } from "tslib";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback, useMemo } from "react";
|
|
4
|
+
import { useWatch } from "react-hook-form";
|
|
5
|
+
import { InputInvisible } from "../styles.js";
|
|
6
|
+
export function useToggle(props, ref) {
|
|
7
|
+
var name = props.name, control = props.control, register = props.register, label = props.label, options = props.options, propValue = props.value, restProps = __rest(props, ["name", "control", "register", "label", "options", "value"]);
|
|
8
|
+
var id = restProps.id, valueTrue = restProps.valueTrue, valueFalse = restProps.valueFalse, remainingInputProps = __rest(restProps, ["id", "valueTrue", "valueFalse"]);
|
|
46
9
|
if (options) {
|
|
47
10
|
valueTrue = options
|
|
48
11
|
.filter(function (opt) { return opt.value === "true"; })[0]
|
|
@@ -55,29 +18,14 @@ function useToggle(props, ref) {
|
|
|
55
18
|
var idTrue = "".concat(id, "-true");
|
|
56
19
|
var idFalse = "".concat(id, "-false");
|
|
57
20
|
var isRadio = !!(valueTrue && valueFalse);
|
|
58
|
-
|
|
59
|
-
// defaultChecked = isUndefined(defaultChecked) ? false : defaultChecked;
|
|
60
|
-
// // TODO: maybe throw an error if the defaultValue that arrives here is not
|
|
61
|
-
// // a valid value
|
|
62
|
-
// defaultValue =
|
|
63
|
-
// defaultValue === valueTrue || defaultValue === valueFalse
|
|
64
|
-
// ? defaultValue
|
|
65
|
-
// : valueFalse;
|
|
66
|
-
// get the value either from the uncontrolled watched input or from the given
|
|
67
|
-
// prop to control the component
|
|
68
|
-
var value = (0, react_hook_form_1.useWatch)({
|
|
21
|
+
var value = useWatch({
|
|
69
22
|
name: name,
|
|
70
23
|
control: control,
|
|
71
|
-
// defaultValue: isRadio ? defaultValue : defaultChecked,
|
|
72
24
|
});
|
|
73
25
|
if (propValue) {
|
|
74
26
|
value = propValue;
|
|
75
27
|
}
|
|
76
|
-
|
|
77
|
-
// a `register` function, then check if we have a `control` object or just
|
|
78
|
-
// rely on the `name` prop and `ref`, they probably would be passed alongside
|
|
79
|
-
// an `onChange` prop that is spreaded on the inputs
|
|
80
|
-
var inputProps = (0, react_1.useMemo)(function () {
|
|
28
|
+
var inputProps = useMemo(function () {
|
|
81
29
|
return register
|
|
82
30
|
? register(name)
|
|
83
31
|
: control
|
|
@@ -87,13 +35,7 @@ function useToggle(props, ref) {
|
|
|
87
35
|
ref: ref,
|
|
88
36
|
};
|
|
89
37
|
}, [register, control, name, ref]);
|
|
90
|
-
|
|
91
|
-
* Accessibility.
|
|
92
|
-
*
|
|
93
|
-
* Fake the spacebar keyboard behaviour on the radio mode of the checkbox.
|
|
94
|
-
* Without this *only* the arrow keys would change the checkbox state
|
|
95
|
-
*/
|
|
96
|
-
var handleKeyDown = (0, react_1.useCallback)(function (event) {
|
|
38
|
+
var handleKeyDown = useCallback(function (event) {
|
|
97
39
|
if (event.key === " ") {
|
|
98
40
|
event.preventDefault();
|
|
99
41
|
event.stopPropagation();
|
|
@@ -115,9 +57,7 @@ function useToggle(props, ref) {
|
|
|
115
57
|
target.click();
|
|
116
58
|
}
|
|
117
59
|
}, [valueTrue]);
|
|
118
|
-
|
|
119
|
-
// of the input
|
|
120
|
-
var valueDependentProps = (0, react_1.useMemo)(function () { return ({
|
|
60
|
+
var valueDependentProps = useMemo(function () { return ({
|
|
121
61
|
rootProps: {
|
|
122
62
|
htmlFor: isRadio
|
|
123
63
|
? !value || value === valueFalse
|
|
@@ -128,8 +68,8 @@ function useToggle(props, ref) {
|
|
|
128
68
|
label: label ? label : value,
|
|
129
69
|
value: value,
|
|
130
70
|
}); }, [value, valueFalse, isRadio, id, idTrue, idFalse, label]);
|
|
131
|
-
var Inputs =
|
|
132
|
-
return isRadio ? ((
|
|
71
|
+
var Inputs = useMemo(function () {
|
|
72
|
+
return isRadio ? (_jsxs(_Fragment, { children: [_jsx(InputInvisible, __assign({ id: idFalse }, inputProps, remainingInputProps, { onKeyDown: handleKeyDown, type: "radio", value: valueFalse })), _jsx(InputInvisible, __assign({ id: idTrue }, inputProps, remainingInputProps, { onKeyDown: handleKeyDown, type: "radio", value: valueTrue }))] })) : (_jsx(InputInvisible, __assign({ id: id, type: "checkbox" }, inputProps, remainingInputProps)));
|
|
133
73
|
}, [
|
|
134
74
|
inputProps,
|
|
135
75
|
remainingInputProps,
|
|
@@ -140,10 +80,6 @@ function useToggle(props, ref) {
|
|
|
140
80
|
valueFalse,
|
|
141
81
|
valueTrue,
|
|
142
82
|
id,
|
|
143
|
-
// defaultChecked,
|
|
144
|
-
// defaultValue,
|
|
145
83
|
]);
|
|
146
|
-
|
|
147
|
-
return tslib_1.__assign(tslib_1.__assign({}, valueDependentProps), { Inputs: Inputs });
|
|
84
|
+
return __assign(__assign({}, valueDependentProps), { Inputs: Inputs });
|
|
148
85
|
}
|
|
149
|
-
exports.useToggle = useToggle;
|
package/Forms/antispam.d.ts
CHANGED
|
@@ -1,15 +1,4 @@
|
|
|
1
1
|
import { type ObjectShape } from "@kuus/yup";
|
|
2
|
-
/**
|
|
3
|
-
* Encode form
|
|
4
|
-
*
|
|
5
|
-
* Takes a record of yup validations and outputs a `yup` schema with encoded
|
|
6
|
-
* names (antispam technique) and a record of the encoded/decoded input `name`s.
|
|
7
|
-
*
|
|
8
|
-
* We skip the names prefixed wth an underscore which are considered programmatic
|
|
9
|
-
* form data not created by user input.
|
|
10
|
-
*
|
|
11
|
-
* FIXME: types https://github.com/jquense/yup/issues/1700
|
|
12
|
-
*/
|
|
13
2
|
export declare function encodeForm<T extends ObjectShape = {}>(validationRules: T): {
|
|
14
3
|
encodedSchema: import("@kuus/yup").ObjectSchema<{
|
|
15
4
|
[x: string]: T[keyof T] extends import("@kuus/yup").ISchema<any, any, any, any> ? T[keyof T]["__outputType"] : T[keyof T] extends {
|
|
@@ -35,13 +24,4 @@ export declare function encodeForm<T extends ObjectShape = {}>(validationRules:
|
|
|
35
24
|
}, "">;
|
|
36
25
|
encodedNames: Record<keyof T, string>;
|
|
37
26
|
};
|
|
38
|
-
/**
|
|
39
|
-
* Decode form data
|
|
40
|
-
*
|
|
41
|
-
* This function is meant to be used inside an api endpoint to gather an encoded
|
|
42
|
-
* form submit data and transform it to the decoded desired json data.
|
|
43
|
-
*
|
|
44
|
-
* Here too we skip encoding/decoding process for names prefixed wth an underscore
|
|
45
|
-
* which are considered programmatic form data not created by user input.
|
|
46
|
-
*/
|
|
47
27
|
export declare function decodeForm<ReturnAs extends Record<string, unknown> = {}, FormData extends Record<string, unknown> = {}>(formData: FormData): ReturnAs;
|
package/Forms/antispam.js
CHANGED
|
@@ -1,66 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var yup_1 = require("@kuus/yup");
|
|
6
|
-
var encode_1 = tslib_1.__importDefault(require("@koine/utils/encode"));
|
|
7
|
-
var decode_1 = tslib_1.__importDefault(require("@koine/utils/decode"));
|
|
8
|
-
var isUndefined_1 = tslib_1.__importDefault(require("@koine/utils/isUndefined"));
|
|
9
|
-
/**
|
|
10
|
-
* Encode form
|
|
11
|
-
*
|
|
12
|
-
* Takes a record of yup validations and outputs a `yup` schema with encoded
|
|
13
|
-
* names (antispam technique) and a record of the encoded/decoded input `name`s.
|
|
14
|
-
*
|
|
15
|
-
* We skip the names prefixed wth an underscore which are considered programmatic
|
|
16
|
-
* form data not created by user input.
|
|
17
|
-
*
|
|
18
|
-
* FIXME: types https://github.com/jquense/yup/issues/1700
|
|
19
|
-
*/
|
|
20
|
-
function encodeForm(validationRules) {
|
|
1
|
+
import { object } from "@kuus/yup";
|
|
2
|
+
import { decode, encode, isUndefined } from "@koine/utils";
|
|
3
|
+
export function encodeForm(validationRules) {
|
|
21
4
|
var encoded = {};
|
|
22
5
|
var encodedNames = {};
|
|
23
6
|
for (var name_1 in validationRules) {
|
|
24
7
|
if (!name_1.startsWith("_")) {
|
|
25
|
-
var encodedName = (
|
|
8
|
+
var encodedName = encode(name_1);
|
|
26
9
|
encoded[encodedName] = validationRules[name_1];
|
|
27
10
|
encodedNames[name_1] = encodedName;
|
|
28
11
|
}
|
|
29
12
|
}
|
|
30
|
-
|
|
31
|
-
// https://github.com/jquense/yup/issues/946
|
|
32
|
-
var encodedSchema = (0, yup_1.object)(encoded).required();
|
|
13
|
+
var encodedSchema = object(encoded).required();
|
|
33
14
|
return { encodedSchema: encodedSchema, encodedNames: encodedNames };
|
|
34
15
|
}
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Decode form data
|
|
38
|
-
*
|
|
39
|
-
* This function is meant to be used inside an api endpoint to gather an encoded
|
|
40
|
-
* form submit data and transform it to the decoded desired json data.
|
|
41
|
-
*
|
|
42
|
-
* Here too we skip encoding/decoding process for names prefixed wth an underscore
|
|
43
|
-
* which are considered programmatic form data not created by user input.
|
|
44
|
-
*/
|
|
45
|
-
function decodeForm(formData) {
|
|
16
|
+
export function decodeForm(formData) {
|
|
46
17
|
var json = {};
|
|
47
18
|
for (var encodedName in formData) {
|
|
48
|
-
var decodedName = (
|
|
49
|
-
// always add underscore prefixed names as they are treated as internal
|
|
50
|
-
// private inputs outside of the honeypot system, normalise them here removing
|
|
51
|
-
// the underscore prefix
|
|
19
|
+
var decodedName = decode(encodedName);
|
|
52
20
|
if (encodedName.startsWith("_")) {
|
|
53
|
-
// @ts-expect-error nevermind
|
|
54
21
|
json[encodedName.substring(1)] = formData[encodedName];
|
|
55
22
|
}
|
|
56
|
-
|
|
57
|
-
else if (!(0, isUndefined_1.default)(formData[encodedName]) &&
|
|
23
|
+
else if (!isUndefined(formData[encodedName]) &&
|
|
58
24
|
formData[decodedName] === "") {
|
|
59
|
-
// @ts-expect-error nevermind
|
|
60
25
|
json[decodedName] = formData[encodedName];
|
|
61
26
|
}
|
|
62
27
|
}
|
|
63
|
-
// console.log(formData, decoded, json);
|
|
64
28
|
return json;
|
|
65
29
|
}
|
|
66
|
-
exports.decodeForm = decodeForm;
|
package/Forms/helpers.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import type { Control, UseFormRegister, UseFormSetValue } from "react-hook-form";
|
|
3
2
|
import type { Option } from "../types";
|
|
4
3
|
type FormControlNativeType = "input" | "select" | "textarea";
|
|
@@ -14,13 +13,6 @@ export type FormControlProps<T extends FormControlFieldValues = any> = {
|
|
|
14
13
|
export type FormControl<TControlType extends FormControlNativeType = "input", TFieldValues extends FormControlFieldValues = any> = FormControlNative<TControlType> & FormControlProps<TFieldValues>;
|
|
15
14
|
export declare const normaliseOptions: (options?: (string | Option)[]) => Option[];
|
|
16
15
|
export declare function defaultOptionsFilterFn(options: Option[], inputValue?: string): Option[];
|
|
17
|
-
/**
|
|
18
|
-
* We are faking the native input `onChange` event
|
|
19
|
-
*/
|
|
20
16
|
export declare function triggerOnChange<T extends HTMLElement = HTMLInputElement>(onChange?: React.ChangeEventHandler<T>, name?: string, value?: any): void;
|
|
21
|
-
/**
|
|
22
|
-
* @see https://hustle.bizongo.in/simulate-react-on-change-on-controlled-components-baa336920e04
|
|
23
|
-
* @deprecated
|
|
24
|
-
*/
|
|
25
17
|
export declare function triggerChange(input: HTMLInputElement, value?: string): void;
|
|
26
18
|
export {};
|
package/Forms/helpers.js
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.triggerChange = exports.triggerOnChange = exports.defaultOptionsFilterFn = exports.normaliseOptions = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var isString_1 = tslib_1.__importDefault(require("@koine/utils/isString"));
|
|
6
|
-
var matchSorter_1 = tslib_1.__importDefault(require("@koine/utils/matchSorter"));
|
|
7
|
-
var normaliseOptions = function (options) {
|
|
1
|
+
import { isString, matchSorter } from "@koine/utils";
|
|
2
|
+
export var normaliseOptions = function (options) {
|
|
8
3
|
if (options === void 0) { options = []; }
|
|
9
4
|
return options.map(function (option) {
|
|
10
|
-
return (
|
|
5
|
+
return isString(option)
|
|
11
6
|
? {
|
|
12
7
|
label: option,
|
|
13
8
|
value: option,
|
|
@@ -15,28 +10,17 @@ var normaliseOptions = function (options) {
|
|
|
15
10
|
: option;
|
|
16
11
|
});
|
|
17
12
|
};
|
|
18
|
-
|
|
19
|
-
function defaultOptionsFilterFn(options, inputValue) {
|
|
13
|
+
export function defaultOptionsFilterFn(options, inputValue) {
|
|
20
14
|
if (!inputValue) {
|
|
21
15
|
return options;
|
|
22
16
|
}
|
|
23
|
-
return (
|
|
17
|
+
return matchSorter(options, inputValue, { keys: ["value", "label"] });
|
|
24
18
|
}
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* We are faking the native input `onChange` event
|
|
28
|
-
*/
|
|
29
|
-
function triggerOnChange(onChange, name, value) {
|
|
30
|
-
// @ts-expect-error nevermind
|
|
19
|
+
export function triggerOnChange(onChange, name, value) {
|
|
31
20
|
if (onChange)
|
|
32
21
|
onChange({ target: { name: name, value: value } });
|
|
33
22
|
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* @see https://hustle.bizongo.in/simulate-react-on-change-on-controlled-components-baa336920e04
|
|
37
|
-
* @deprecated
|
|
38
|
-
*/
|
|
39
|
-
function triggerChange(input, value) {
|
|
23
|
+
export function triggerChange(input, value) {
|
|
40
24
|
var obj = window.Object;
|
|
41
25
|
if (!obj) {
|
|
42
26
|
if (process.env["NODE_ENV"] !== "production") {
|
|
@@ -44,11 +28,8 @@ function triggerChange(input, value) {
|
|
|
44
28
|
}
|
|
45
29
|
return;
|
|
46
30
|
}
|
|
47
|
-
// @ts-expect-error nevermind
|
|
48
31
|
var nativeInputValueSetter = obj.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, "value").set;
|
|
49
|
-
// @ts-expect-error nevermind
|
|
50
32
|
nativeInputValueSetter.call(input, value);
|
|
51
33
|
var inputEvent = new Event("input", { bubbles: true });
|
|
52
34
|
input.dispatchEvent(inputEvent);
|
|
53
35
|
}
|
|
54
|
-
exports.triggerChange = triggerChange;
|