@koine/react 2.0.0-beta.1 → 2.0.0-beta.11
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.mjs +19 -7
- package/Alert/Alert.stories.mjs +18 -0
- package/Animations/Reveal.mjs +39 -13
- package/Animations/Underline.d.ts +1 -1
- package/Animations/Underline.mjs +14 -4
- package/Animations/useReveal.mjs +42 -40
- package/Autocomplete/AutocompleteDownshift.mjs +156 -157
- package/Autocomplete/AutocompleteDownshiftMultiselect.mjs +351 -352
- package/Autocomplete/AutocompleteMui.d.ts +1 -1
- package/Autocomplete/AutocompleteMui.mjs +126 -89
- package/Autocomplete/AutocompleteReach.mjs +110 -111
- package/Autocomplete/components.d.ts +12 -16
- package/Autocomplete/components.mjs +76 -23
- package/Autocomplete/helpers.mjs +11 -5
- package/Autocomplete/index.mjs +4 -3
- package/Bg/BgColor.d.ts +2 -7
- package/Bg/BgColor.mjs +36 -15
- package/Bg/BgPhoto.mjs +66 -11
- package/Bg/BgSvg.mjs +17 -7
- package/Breadcrumbs/Breadcrumbs.d.ts +1 -1
- package/Breadcrumbs/Breadcrumbs.mjs +82 -18
- package/Buttons/Button.d.ts +1 -1
- package/Buttons/Button.mjs +73 -9
- package/Buttons/ButtonComposite.d.ts +1 -1
- package/Buttons/ButtonComposite.mjs +99 -22
- package/Buttons/ButtonFab.d.ts +1 -3
- package/Buttons/ButtonFab.mjs +6 -4
- package/Buttons/ButtonLink.d.ts +1 -1
- package/Buttons/ButtonLink.mjs +14 -7
- package/Buttons/IconButton.d.ts +1 -3
- package/Buttons/IconButton.mjs +18 -6
- package/Calendar/CalendarDaygridCell.d.ts +2 -2
- package/Calendar/CalendarDaygridCell.mjs +64 -26
- package/Calendar/CalendarDaygridNav.d.ts +1 -1
- package/Calendar/CalendarDaygridNav.mjs +41 -12
- package/Calendar/CalendarDaygridTable.d.ts +3 -3
- package/Calendar/CalendarDaygridTable.mjs +97 -30
- package/Calendar/CalendarLegend.d.ts +1 -1
- package/Calendar/CalendarLegend.mjs +20 -6
- package/Calendar/calendar-api-google.d.ts +1 -1
- package/Calendar/calendar-api-google.mjs +75 -105
- package/Calendar/types.mjs +1 -1
- package/Calendar/useCalendar.d.ts +2 -2
- package/Calendar/useCalendar.mjs +184 -142
- package/Calendar/utils.mjs +101 -94
- package/Carousel/Carousel.mjs +377 -378
- package/Carousel/CarouselCss.d.ts +3 -20
- package/Carousel/CarouselCss.mjs +38 -16
- package/Collapsable/Collapsable.mjs +1 -1
- package/Collapsable/CollapsableReach.mjs +1 -3
- package/Collapsable/index.mjs +1 -2
- package/Debug/Debug.mjs +20 -6
- package/Details/Details.d.ts +5 -5
- package/Details/Details.mjs +64 -37
- package/Details/Details.stories.mjs +21 -0
- package/Dialog/DialogMui.d.ts +10 -327
- package/Dialog/DialogMui.mjs +50 -25
- package/Dialog/DialogMui.stories.mjs +20 -0
- package/Dialog/css/bare.d.ts +9 -327
- package/Dialog/css/bare.mjs +15 -17
- package/Dialog/css/index.stories.mjs +75 -0
- package/Dialog/m/bare.d.ts +2 -398
- package/Dialog/m/bare.mjs +114 -51
- package/Dialog/m/basic.mjs +10 -10
- package/Dialog/m/index.mjs +4 -4
- package/Dialog/sc/bare.d.ts +27 -405
- package/Dialog/sc/bare.mjs +40 -29
- package/Dialog/sc/framer.d.ts +15 -422
- package/Dialog/sc/framer.mjs +9 -9
- package/Dialog/sc/framerMaterial.d.ts +15 -422
- package/Dialog/sc/framerMaterial.mjs +9 -9
- package/Dialog/sc/index.stories.mjs +48 -0
- package/Dialog/sc/material.d.ts +27 -405
- package/Dialog/sc/material.mjs +37 -17
- package/Dialog/tw/bare.d.ts +9 -327
- package/Dialog/tw/bare.mjs +15 -28
- package/Dialog/tw/elegant.d.ts +9 -327
- package/Dialog/tw/elegant.mjs +15 -17
- package/Dialog/tw/framer.d.ts +3 -354
- package/Dialog/tw/framer.mjs +9 -9
- package/Dialog/tw/framerMaterial.d.ts +3 -354
- package/Dialog/tw/framerMaterial.mjs +9 -9
- package/Dialog/tw/index.stories.mjs +83 -0
- package/Dialog/tw/material.d.ts +9 -327
- package/Dialog/tw/material.mjs +15 -17
- package/Editor/Editor--tiptap.d.ts +1 -1
- package/Editor/Editor--tiptap.mjs +45 -18
- package/Editor/components.d.ts +3 -5
- package/Editor/components.mjs +26 -8
- package/FaviconTags.mjs +64 -0
- package/Form/Form.mjs +81 -47
- package/Form/sc/bare.d.ts +11 -11
- package/Form/sc/bare.mjs +21 -12
- package/Forms/Checkbox/Checkbox.d.ts +4 -4
- package/Forms/Checkbox/Checkbox.mjs +29 -11
- package/Forms/Feedback/Feedback.mjs +11 -6
- package/Forms/Field/Field.d.ts +2 -4
- package/Forms/Field/Field.mjs +35 -16
- package/Forms/Field/FieldControl.mjs +39 -19
- package/Forms/Field/FieldHint.d.ts +1 -1
- package/Forms/Field/FieldHint.mjs +5 -3
- package/Forms/Input/Input.d.ts +5 -5
- package/Forms/Input/Input.mjs +30 -11
- package/Forms/InputGroup/InputGroup.d.ts +4 -4
- package/Forms/InputGroup/InputGroup.mjs +52 -10
- package/Forms/Label/Label.d.ts +1 -1
- package/Forms/Label/Label.mjs +23 -5
- package/Forms/Password/Password.d.ts +1 -1
- package/Forms/Password/Password.mjs +48 -12
- package/Forms/Radio/Radio.mjs +50 -18
- package/Forms/Switch/Switch.d.ts +2 -2
- package/Forms/Switch/Switch.mjs +52 -12
- package/Forms/Textarea/Textarea.d.ts +1 -1
- package/Forms/Textarea/Textarea.mjs +21 -7
- package/Forms/Textarea/TextareaRich.mjs +39 -19
- package/Forms/Toggle/Toggle-tailwind.mjs +0 -1
- package/Forms/Toggle/Toggle.d.ts +7 -7
- package/Forms/Toggle/Toggle.mjs +113 -21
- package/Forms/Toggle/useToggle-tailwind.mjs +0 -1
- package/Forms/Toggle/useToggle.mjs +86 -68
- package/Forms/antispam.mjs +19 -21
- package/Forms/helpers.mjs +25 -19
- package/Forms/styles.d.ts +3 -7
- package/Forms/styles.mjs +50 -18
- package/Gauge/Gauge.mjs +99 -100
- package/Grid/Grid.d.ts +7 -30
- package/Grid/Grid.mjs +54 -32
- package/Hamburger/Hamburger.mjs +64 -37
- package/Header/useHeader.mjs +23 -18
- package/Hidden/Hidden.d.ts +1 -1
- package/Hidden/Hidden.mjs +9 -9
- package/Img/sc/bare.d.ts +1 -1
- package/Img/sc/bare.mjs +31 -34
- package/Img/types.mjs +1 -1
- package/Link/Link.d.ts +1 -3
- package/Link/Link.mjs +1 -3
- package/Link/LinkBlank.d.ts +2 -5
- package/Link/LinkBlank.mjs +25 -10
- package/Menu/Menu.d.ts +1 -1
- package/Menu/Menu.mjs +10 -3
- package/Menu/MenuMui.mjs +1 -2
- package/MenuItem/MenuItem.d.ts +1 -4
- package/MenuItem/MenuItem.mjs +19 -3
- package/MenuItem/MenuItemMui.mjs +0 -1
- package/MenuItem/useMenuItem.mjs +45 -27
- package/Meta/Meta.mjs +5 -3
- package/NoJs/NoJs.mjs +7 -4
- package/Pagination/PaginationNav.d.ts +1 -1
- package/Pagination/PaginationNav.mjs +90 -29
- package/Pagination/PaginationResults.mjs +31 -8
- package/Pill/Pill.d.ts +4 -4
- package/Pill/Pill.mjs +36 -6
- package/Progress/ProgressCircular.mjs +48 -10
- package/Progress/ProgressLinear.mjs +39 -19
- package/Progress/ProgressOverlay.mjs +56 -16
- package/Rating/Rating.d.ts +5 -5
- package/Rating/Rating.mjs +118 -34
- package/Rating/index.mjs +37 -24
- package/Select/SelectDownshift.mjs +37 -38
- package/Select/components.d.ts +1 -1
- package/Select/components.mjs +21 -8
- package/Select/index.mjs +2 -3
- package/Sidebar/Sidebar.mjs +57 -17
- package/Spacing/Spacing.d.ts +1 -1
- package/Spacing/Spacing.mjs +27 -17
- package/Sticky/Sticky.mjs +218 -219
- package/Sticky/StickyCss.mjs +8 -4
- package/Sticky/index.mjs +1 -1
- package/Tabs/TabsMui.d.ts +9 -298
- package/Tabs/TabsMui.mjs +39 -27
- package/Tabs/TabsMui.stories.mjs +20 -0
- package/Tabs/sc/bare.mjs +1 -3
- package/Tabs/sc/index.stories.mjs +0 -0
- package/Tabs/tw/bare.d.ts +7 -296
- package/Tabs/tw/bare.mjs +11 -13
- package/Tabs/tw/index.stories.mjs +25 -0
- package/Tabs/tw/material.d.ts +7 -332
- package/Tabs/tw/material.mjs +11 -15
- package/Tabs/useTabs.mjs +24 -21
- package/Typography/CopyPasteVisible.d.ts +1 -1
- package/Typography/CopyPasteVisible.mjs +5 -3
- package/Typography/Native.d.ts +5 -5
- package/Typography/Native.mjs +45 -12
- package/Typography/ReadMore.mjs +100 -29
- package/Typography/TextLoop.mjs +75 -31
- package/Typography/TypeStairs.mjs +36 -24
- package/css/index.mjs +20 -21
- package/helpers/classed.mjs +21 -30
- package/helpers/classed.stories.mjs +121 -0
- package/helpers/createUseMediaQueryWidth.mjs +140 -140
- package/helpers/extend-component.mjs +7 -7
- package/helpers/mergeRefs.mjs +3 -4
- package/hooks/index.mjs +3 -3
- package/hooks/types.mjs +3 -1
- package/hooks/useAsyncFn.mjs +28 -26
- package/hooks/useDateLocale.mjs +22 -22
- package/hooks/useFirstMountState.mjs +2 -3
- package/hooks/useFixedOffset.mjs +23 -24
- package/hooks/useFocus.mjs +7 -5
- package/hooks/useInterval.mjs +15 -14
- package/hooks/useIsomorphicLayoutEffect.mjs +1 -4
- package/hooks/useKeyUp.mjs +9 -11
- package/hooks/useMeasure.mjs +74 -67
- package/hooks/useMountedState.mjs +5 -6
- package/hooks/useNavigateAway.mjs +26 -25
- package/hooks/usePrevious.mjs +9 -4
- package/hooks/usePreviousRef.mjs +2 -2
- package/hooks/useScrollPosition.mjs +28 -26
- package/hooks/useScrollThreshold.mjs +18 -13
- package/hooks/useScrollTo.mjs +6 -8
- package/hooks/useSmoothScroll.mjs +12 -16
- package/hooks/useSpinDelay.mjs +24 -22
- package/hooks/useTraceUpdate.mjs +8 -7
- package/hooks/useUpdateEffect.mjs +4 -5
- package/hooks/useWindowSize.mjs +13 -10
- package/index.mjs +4 -5
- package/m/MotionProvider.mjs +5 -4
- package/m/index.mjs +1 -2
- package/package.json +17 -18
- package/shared/index.mjs +35 -0
- package/styles/Body.d.ts +2 -2
- package/styles/Body.mjs +8 -5
- package/styles/Global.mjs +36 -5
- package/styles/index.mjs +5 -5
- package/styles/media.mjs +63 -68
- package/styles/spacing.mjs +26 -25
- package/styles/styled.mjs +23 -10
- package/styles/theme--vanilla.mjs +26 -19
- package/styles/theme.mjs +16 -19
- package/tw/index.mjs +20 -21
- package/twm/index.mjs +20 -21
- package/types.mjs +1 -1
- package/typings.d.ts +1 -0
- package/Alert/Alert.js +0 -14
- package/Alert/index.js +0 -4
- package/Alert/package.json +0 -6
- package/Animations/Reveal.js +0 -21
- package/Animations/Underline.js +0 -8
- package/Animations/index.js +0 -6
- package/Animations/package.json +0 -6
- package/Animations/useReveal.js +0 -75
- package/Autocomplete/AutocompleteDownshift.js +0 -161
- package/Autocomplete/AutocompleteDownshiftMultiselect.js +0 -356
- package/Autocomplete/AutocompleteMui.js +0 -180
- package/Autocomplete/AutocompleteReach.js +0 -115
- package/Autocomplete/components.js +0 -37
- package/Autocomplete/helpers.js +0 -34
- package/Autocomplete/index.js +0 -7
- package/Autocomplete/package.json +0 -6
- package/Bg/BgColor.js +0 -25
- package/Bg/BgPhoto.js +0 -20
- package/Bg/BgSvg.js +0 -16
- package/Bg/index.js +0 -6
- package/Bg/package.json +0 -6
- package/Breadcrumbs/Breadcrumbs.js +0 -31
- package/Breadcrumbs/index.js +0 -4
- package/Breadcrumbs/package.json +0 -6
- package/Buttons/Button.js +0 -17
- package/Buttons/ButtonComposite.js +0 -32
- package/Buttons/ButtonFab.js +0 -9
- package/Buttons/ButtonLink.js +0 -15
- package/Buttons/IconButton.js +0 -10
- package/Buttons/index.js +0 -8
- package/Buttons/package.json +0 -6
- package/Calendar/CalendarDaygridCell.js +0 -61
- package/Calendar/CalendarDaygridNav.js +0 -28
- package/Calendar/CalendarDaygridTable.js +0 -52
- package/Calendar/CalendarLegend.js +0 -19
- package/Calendar/calendar-api-google.js +0 -133
- package/Calendar/index.js +0 -9
- package/Calendar/package.json +0 -6
- package/Calendar/types.js +0 -2
- package/Calendar/useCalendar.js +0 -187
- package/Calendar/utils.js +0 -215
- package/Carousel/Carousel.js +0 -381
- package/Carousel/CarouselCss.js +0 -26
- package/Carousel/index.js +0 -4
- package/Carousel/package.json +0 -6
- package/Collapsable/Collapsable.js +0 -4
- package/Collapsable/CollapsableReach.js +0 -252
- package/Collapsable/index.js +0 -5
- package/Collapsable/package.json +0 -6
- package/Debug/Debug.js +0 -13
- package/Debug/index.js +0 -4
- package/Debug/package.json +0 -6
- package/Details/Details.js +0 -66
- package/Details/index.js +0 -4
- package/Details/package.json +0 -6
- package/Dialog/DialogMui.js +0 -83
- package/Dialog/css/bare.js +0 -24
- package/Dialog/index.js +0 -5
- package/Dialog/m/bare.js +0 -55
- package/Dialog/m/basic.js +0 -35
- package/Dialog/m/index.js +0 -8
- package/Dialog/m/package.json +0 -6
- package/Dialog/package.json +0 -6
- package/Dialog/sc/bare.js +0 -46
- package/Dialog/sc/framer.js +0 -19
- package/Dialog/sc/framerMaterial.js +0 -19
- package/Dialog/sc/material.js +0 -24
- package/Dialog/tw/bare.js +0 -45
- package/Dialog/tw/elegant.js +0 -23
- package/Dialog/tw/framer.js +0 -19
- package/Dialog/tw/framerMaterial.js +0 -19
- package/Dialog/tw/material.js +0 -23
- package/Editor/Editor--tiptap.js +0 -31
- package/Editor/components.js +0 -15
- package/Editor/index.js +0 -4
- package/Editor/package.json +0 -6
- package/FaviconTags/FaviconTags.js +0 -20
- package/FaviconTags/FaviconTags.mjs +0 -16
- 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.js +0 -65
- package/Form/index.js +0 -4
- package/Form/package.json +0 -6
- package/Form/sc/bare.js +0 -23
- package/Forms/Checkbox/Checkbox.js +0 -21
- package/Forms/Checkbox/index.js +0 -4
- package/Forms/Checkbox/package.json +0 -6
- package/Forms/Feedback/Feedback.js +0 -13
- package/Forms/Feedback/index.js +0 -4
- package/Forms/Feedback/package.json +0 -6
- package/Forms/Field/Field.js +0 -35
- package/Forms/Field/FieldControl.js +0 -51
- package/Forms/Field/FieldHint.js +0 -7
- package/Forms/Field/index.js +0 -5
- package/Forms/Field/package.json +0 -6
- package/Forms/Input/Input.js +0 -20
- package/Forms/Input/index.js +0 -4
- package/Forms/Input/package.json +0 -6
- package/Forms/InputGroup/InputGroup.js +0 -19
- package/Forms/InputGroup/index.js +0 -4
- package/Forms/InputGroup/package.json +0 -6
- package/Forms/Label/Label.js +0 -9
- package/Forms/Label/index.js +0 -4
- package/Forms/Label/package.json +0 -6
- package/Forms/Password/Password.js +0 -20
- package/Forms/Password/index.js +0 -4
- package/Forms/Password/package.json +0 -6
- package/Forms/Radio/Radio.js +0 -28
- package/Forms/Radio/index.js +0 -4
- package/Forms/Radio/package.json +0 -6
- package/Forms/Switch/Switch.js +0 -23
- package/Forms/Switch/index.js +0 -4
- package/Forms/Switch/package.json +0 -6
- package/Forms/Textarea/Textarea.js +0 -15
- package/Forms/Textarea/TextareaRich.js +0 -31
- package/Forms/Textarea/index.js +0 -5
- package/Forms/Textarea/package.json +0 -6
- package/Forms/Toggle/Toggle-tailwind.js +0 -99
- package/Forms/Toggle/Toggle.js +0 -36
- package/Forms/Toggle/index.js +0 -4
- package/Forms/Toggle/package.json +0 -6
- package/Forms/Toggle/useToggle-tailwind.js +0 -202
- package/Forms/Toggle/useToggle.js +0 -149
- package/Forms/antispam.js +0 -66
- package/Forms/helpers.js +0 -54
- package/Forms/index.js +0 -19
- package/Forms/package.json +0 -6
- package/Forms/styles.js +0 -32
- package/Gauge/Gauge.js +0 -106
- package/Grid/Grid.js +0 -56
- package/Grid/index.js +0 -4
- package/Grid/package.json +0 -6
- package/Hamburger/Hamburger.js +0 -56
- package/Hamburger/index.js +0 -4
- package/Hamburger/package.json +0 -6
- package/Header/index.js +0 -4
- package/Header/package.json +0 -6
- package/Header/useHeader.js +0 -35
- package/Hidden/Hidden.js +0 -13
- package/Hidden/index.js +0 -4
- package/Hidden/package.json +0 -6
- package/Img/index.js +0 -4
- package/Img/package.json +0 -6
- package/Img/sc/bare.js +0 -42
- package/Img/types.js +0 -2
- package/Link/Link.js +0 -7
- package/Link/LinkBlank.js +0 -21
- package/Link/index.js +0 -5
- package/Link/package.json +0 -6
- package/Menu/Menu.js +0 -7
- package/Menu/MenuMui.js +0 -165
- package/Menu/index.js +0 -4
- package/Menu/package.json +0 -6
- package/MenuItem/MenuItem.js +0 -7
- package/MenuItem/MenuItemMui.js +0 -32
- package/MenuItem/index.js +0 -4
- package/MenuItem/package.json +0 -6
- package/MenuItem/useMenuItem.js +0 -64
- package/Meta/Meta.js +0 -10
- package/Meta/index.js +0 -7
- package/Meta/package.json +0 -6
- package/NoJs/NoJs.js +0 -11
- package/NoJs/index.js +0 -7
- package/NoJs/package.json +0 -6
- package/Pagination/PaginationNav.js +0 -65
- package/Pagination/PaginationResults.js +0 -15
- package/Pagination/index.js +0 -5
- package/Pagination/package.json +0 -6
- package/Pill/Pill.js +0 -10
- package/Pill/index.js +0 -4
- package/Pill/package.json +0 -6
- package/Progress/ProgressCircular.js +0 -19
- package/Progress/ProgressLinear.js +0 -28
- package/Progress/ProgressOverlay.js +0 -28
- package/Progress/index.js +0 -6
- package/Progress/package.json +0 -6
- package/Rating/Rating.js +0 -75
- package/Rating/index.js +0 -57
- package/Rating/package.json +0 -6
- package/Select/SelectDownshift.js +0 -41
- package/Select/components.js +0 -15
- package/Select/index.js +0 -7
- package/Select/package.json +0 -6
- package/Sidebar/Sidebar.js +0 -27
- package/Sidebar/index.js +0 -4
- package/Sidebar/package.json +0 -6
- package/Spacing/Spacing.js +0 -49
- package/Spacing/index.js +0 -4
- package/Spacing/package.json +0 -6
- package/Sticky/Sticky.js +0 -222
- package/Sticky/StickyCss.js +0 -10
- package/Sticky/index.js +0 -5
- package/Sticky/package.json +0 -6
- package/Tabs/TabsMui.js +0 -52
- package/Tabs/index.js +0 -4
- package/Tabs/package.json +0 -6
- package/Tabs/sc/bare.js +0 -87
- package/Tabs/tw/bare.js +0 -20
- package/Tabs/tw/material.js +0 -21
- package/Tabs/useTabs.js +0 -47
- package/Typography/CopyPasteVisible.js +0 -7
- package/Typography/Native.js +0 -17
- package/Typography/ReadMore.js +0 -47
- package/Typography/TextLoop.js +0 -51
- package/Typography/TypeStairs.js +0 -52
- package/Typography/index.js +0 -8
- package/Typography/package.json +0 -6
- package/css/index.js +0 -36
- package/css/package.json +0 -6
- package/helpers/classed.js +0 -78
- package/helpers/createUseMediaQueryWidth.js +0 -183
- package/helpers/extend-component.js +0 -17
- package/helpers/index.js +0 -7
- package/helpers/mergeRefs.js +0 -17
- package/helpers/package.json +0 -6
- package/hooks/index.js +0 -44
- package/hooks/package.json +0 -6
- package/hooks/types.js +0 -2
- package/hooks/useAsyncFn.js +0 -41
- package/hooks/useDateLocale.js +0 -41
- package/hooks/useFirstMountState.js +0 -17
- package/hooks/useFixedOffset.js +0 -62
- package/hooks/useFocus.js +0 -16
- package/hooks/useInterval.js +0 -32
- package/hooks/useIsomorphicLayoutEffect.js +0 -13
- package/hooks/useKeyUp.js +0 -27
- package/hooks/useMeasure.js +0 -171
- package/hooks/useMountedState.js +0 -20
- package/hooks/useNavigateAway.js +0 -73
- package/hooks/usePrevious.js +0 -16
- 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.js +0 -54
- package/hooks/useTraceUpdate.js +0 -26
- package/hooks/useUpdateEffect.js +0 -19
- package/hooks/useWindowSize.js +0 -34
- package/index.js +0 -8
- package/m/MotionProvider.js +0 -43
- package/m/index.js +0 -9
- package/m/lite.js +0 -4
- package/m/max.js +0 -4
- package/m/package.json +0 -6
- package/sc/index.js +0 -37
- package/sc/package.json +0 -6
- package/scm/index.js +0 -36
- package/scm/package.json +0 -6
- package/shared/index.js +0 -11
- package/shared/package.json +0 -6
- package/styles/Body.js +0 -16
- package/styles/Global.js +0 -21
- package/styles/index.js +0 -41
- package/styles/media.js +0 -161
- package/styles/package.json +0 -6
- package/styles/spacing.js +0 -52
- package/styles/styled.js +0 -17
- package/styles/theme--vanilla.js +0 -64
- package/styles/theme.js +0 -45
- package/tw/index.js +0 -36
- package/tw/package.json +0 -6
- package/twm/index.js +0 -36
- package/twm/package.json +0 -6
- package/types.js +0 -2
- /package/{FaviconTags/FaviconTags.d.ts → FaviconTags.d.ts} +0 -0
package/styles/spacing.mjs
CHANGED
|
@@ -1,26 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
// import type { DefaultTheme } from "styled-components";
|
|
2
|
+
function _spacing(theme, size = "md", factor = 1, property = "padding", direction = "top", devices = [
|
|
3
|
+
"mobile",
|
|
4
|
+
"tablet",
|
|
5
|
+
"desktop"
|
|
6
|
+
]) {
|
|
7
|
+
const { breakpoints, devices: DEVICES, spaces: SPACES } = theme;
|
|
8
|
+
let css = "";
|
|
9
|
+
const prop = `${property}-${direction}`;
|
|
10
10
|
if (!devices.length || devices[0] === "mobile") {
|
|
11
|
-
css +=
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
css += `@media(max-width: ${breakpoints[DEVICES.mobile]}px){
|
|
12
|
+
${prop}: ${SPACES["mobile"][size] * factor}px;
|
|
13
|
+
}`;
|
|
14
|
+
} else {
|
|
15
|
+
for(let index = 0; index < devices.length; index++){
|
|
16
|
+
const device = devices[index];
|
|
16
17
|
if (device === "mobile") {
|
|
17
|
-
css +=
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
else if (device === "desktop") {
|
|
23
|
-
css +=
|
|
18
|
+
css += `${prop}: ${SPACES[device][size] * factor}px;`;
|
|
19
|
+
} else if (device === "tablet") {
|
|
20
|
+
css += `@media(min-width: ${breakpoints[DEVICES.tablet]}px){
|
|
21
|
+
${prop}: ${SPACES["tablet"][size] * factor}px;
|
|
22
|
+
}`;
|
|
23
|
+
} else if (device === "desktop") {
|
|
24
|
+
css += `@media(min-width: ${breakpoints[DEVICES.desktop]}px){
|
|
25
|
+
${prop}: ${SPACES["desktop"][size] * factor}px;
|
|
26
|
+
}`;
|
|
24
27
|
}
|
|
25
28
|
}
|
|
26
29
|
}
|
|
@@ -28,8 +31,7 @@ function _spacing(theme, size, factor, property, direction, devices) {
|
|
|
28
31
|
}
|
|
29
32
|
export function spacing(size, factor, property, direction, devices) {
|
|
30
33
|
if (direction === "vertical") {
|
|
31
|
-
return
|
|
32
|
-
_spacing(this, size, factor, property, "bottom", devices));
|
|
34
|
+
return _spacing(this, size, factor, property, "top", devices) + _spacing(this, size, factor, property, "bottom", devices);
|
|
33
35
|
}
|
|
34
36
|
return _spacing(this, size, factor, property, direction, devices);
|
|
35
37
|
}
|
|
@@ -40,6 +42,5 @@ export function spacingBottom(size, factor, property, devices) {
|
|
|
40
42
|
return _spacing(this, size, factor, property, "bottom", devices);
|
|
41
43
|
}
|
|
42
44
|
export function spacingVertical(size, factor, property, devices) {
|
|
43
|
-
return
|
|
44
|
-
_spacing(this, size, factor, property, "bottom", devices));
|
|
45
|
+
return _spacing(this, size, factor, property, "top", devices) + _spacing(this, size, factor, property, "bottom", devices);
|
|
45
46
|
}
|
package/styles/styled.mjs
CHANGED
|
@@ -1,13 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import React from "react";
|
|
2
|
+
export const colStretch = (direction, bg)=>{
|
|
3
|
+
return `
|
|
4
|
+
background: ${bg};
|
|
5
|
+
position: relative;
|
|
6
|
+
|
|
7
|
+
&:before{
|
|
8
|
+
z-index: -1;
|
|
9
|
+
content: '';
|
|
10
|
+
position: absolute;
|
|
11
|
+
right: ${direction === "left" ? "100%" : "-100vw"};
|
|
12
|
+
left: ${direction === "right" ? "100%" : "-100vw"};
|
|
13
|
+
top: 0;
|
|
14
|
+
bottom: 0;
|
|
15
|
+
background: ${bg};
|
|
16
|
+
}
|
|
17
|
+
`;
|
|
3
18
|
};
|
|
4
|
-
/** @see https://caniuse.com/?search=inset */
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export
|
|
8
|
-
export var ellipsis = "overflow: hidden;text-overflow: ellipsis;white-space: nowrap;";
|
|
19
|
+
/** @see https://caniuse.com/?search=inset */ export const inset0 = `top:0;left:0;right:0;bottom:0;`;
|
|
20
|
+
export const overlay = `position: absolute;${inset0}`;
|
|
21
|
+
export const centered = `display: flex;align-items: center;justify-content: center;`;
|
|
22
|
+
export const ellipsis = `overflow: hidden;text-overflow: ellipsis;white-space: nowrap;`;
|
|
9
23
|
/**
|
|
10
24
|
* @see import("@mui/utils").visuallyHidden https://github.com/mui-org/material-ui/blob/master/packages/mui-utils/src/visuallyHidden.ts
|
|
11
|
-
*/
|
|
12
|
-
export
|
|
13
|
-
export var stateFocus = "outline: 0px;box-shadow: 0 0 0 0.2rem rgba(200, 200, 200, 0.25);";
|
|
25
|
+
*/ export const invisible = `border: 0;clip: rect(0 0 0 0);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;white-space: nowrap;width: 1px;`;
|
|
26
|
+
export const stateFocus = `outline: 0px;box-shadow: 0 0 0 0.2rem rgba(200, 200, 200, 0.25);`;
|
|
@@ -4,8 +4,8 @@ import isBrowser from "@koine/utils/isBrowser";
|
|
|
4
4
|
// import setCookie from "@koine/utils/setCookie";
|
|
5
5
|
// import parseCookie from "@koine/utils/parseCookie";
|
|
6
6
|
import useUpdateEffect from "../hooks/useUpdateEffect";
|
|
7
|
-
export
|
|
8
|
-
export
|
|
7
|
+
export const THEME_KEY = "theme";
|
|
8
|
+
export const THEME_DEFAULT = "light";
|
|
9
9
|
// export const getInitialThemeFromRequest = (
|
|
10
10
|
// cookie?: string
|
|
11
11
|
// ): ThemeVanillaValue => {
|
|
@@ -15,44 +15,51 @@ export var THEME_DEFAULT = "light";
|
|
|
15
15
|
// }
|
|
16
16
|
// return THEME_DEFAULT;
|
|
17
17
|
// };
|
|
18
|
-
export
|
|
18
|
+
export const getInitialThemeFromClient = ()=>{
|
|
19
19
|
if (typeof window !== "undefined" && window.localStorage) {
|
|
20
|
-
|
|
20
|
+
const storedPrefs = window.localStorage.getItem(THEME_KEY);
|
|
21
21
|
if (typeof storedPrefs === "string") {
|
|
22
22
|
return storedPrefs;
|
|
23
23
|
}
|
|
24
|
-
|
|
24
|
+
const userMedia = window.matchMedia("(prefers-color-scheme: dark)");
|
|
25
25
|
if (userMedia.matches) {
|
|
26
26
|
return "dark";
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
return THEME_DEFAULT;
|
|
30
30
|
};
|
|
31
|
-
export
|
|
31
|
+
export const ThemeVanillaContext = /*#__PURE__*/ createContext({
|
|
32
32
|
theme: "light",
|
|
33
|
-
setTheme: undefined
|
|
33
|
+
setTheme: undefined
|
|
34
34
|
});
|
|
35
|
-
export
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
var rawSetTheme = function (rawTheme) {
|
|
35
|
+
export const ThemeVanillaProvider = ({ initialTheme, children })=>{
|
|
36
|
+
const [theme, setTheme] = useState(initialTheme);
|
|
37
|
+
const rawSetTheme = (rawTheme)=>{
|
|
39
38
|
if (!rawTheme || !isBrowser) {
|
|
40
39
|
return;
|
|
41
40
|
}
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
const root = window.document.documentElement;
|
|
42
|
+
const isDark = rawTheme === "dark";
|
|
44
43
|
root.classList.remove(isDark ? "light" : "dark");
|
|
45
44
|
root.classList.add(rawTheme);
|
|
46
45
|
localStorage.setItem(THEME_KEY, rawTheme);
|
|
47
|
-
|
|
46
|
+
// setCookie(THEME_KEY, rawTheme);
|
|
48
47
|
};
|
|
49
|
-
useEffect(
|
|
50
|
-
|
|
48
|
+
useEffect(()=>{
|
|
49
|
+
const theme = getInitialThemeFromClient();
|
|
51
50
|
setTheme(theme);
|
|
52
51
|
rawSetTheme(theme);
|
|
53
52
|
}, []);
|
|
54
|
-
useUpdateEffect(
|
|
53
|
+
useUpdateEffect(()=>{
|
|
55
54
|
rawSetTheme(theme);
|
|
56
|
-
}, [
|
|
57
|
-
|
|
55
|
+
}, [
|
|
56
|
+
theme
|
|
57
|
+
]);
|
|
58
|
+
return /*#__PURE__*/ _jsx(ThemeVanillaContext.Provider, {
|
|
59
|
+
value: {
|
|
60
|
+
theme,
|
|
61
|
+
setTheme
|
|
62
|
+
},
|
|
63
|
+
children: children
|
|
64
|
+
});
|
|
58
65
|
};
|
package/styles/theme.mjs
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { __assign } from "tslib";
|
|
2
1
|
import { useTheme as _useTheme } from "styled-components";
|
|
3
|
-
|
|
2
|
+
const DEFAULT_BREAKPOINTS = {
|
|
4
3
|
xs: 0,
|
|
5
4
|
sm: 440,
|
|
6
5
|
md: 768,
|
|
7
6
|
lg: 1024,
|
|
8
7
|
xl: 1368,
|
|
9
|
-
xxl: 1690
|
|
8
|
+
xxl: 1690
|
|
10
9
|
};
|
|
11
10
|
/**
|
|
12
11
|
* You can override the default breakpoints through the .env variable
|
|
@@ -18,24 +17,22 @@ var DEFAULT_BREAKPOINTS = {
|
|
|
18
17
|
* ```.env
|
|
19
18
|
* BREAKPOINTS=xs:0,sm:440,md:768,lg:1024,xl:1368,xxl:1690
|
|
20
19
|
* ```
|
|
21
|
-
*/
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}, {})
|
|
28
|
-
: DEFAULT_BREAKPOINTS;
|
|
29
|
-
var themeDefault = {
|
|
20
|
+
*/ export const breakpoints = process.env["BREAKPOINTS"] ? process.env["BREAKPOINTS"].split(",").reduce((map, pair)=>{
|
|
21
|
+
const [key, value] = pair.split(":");
|
|
22
|
+
map[key] = parseFloat(value);
|
|
23
|
+
return map;
|
|
24
|
+
}, {}) : DEFAULT_BREAKPOINTS;
|
|
25
|
+
const themeDefault = {
|
|
30
26
|
maxWidth: breakpoints.xxl,
|
|
31
|
-
breakpoints
|
|
27
|
+
breakpoints,
|
|
32
28
|
devices: {
|
|
33
29
|
mobile: "sm",
|
|
34
30
|
tablet: "md",
|
|
35
|
-
desktop: "lg"
|
|
36
|
-
}
|
|
31
|
+
desktop: "lg"
|
|
32
|
+
}
|
|
37
33
|
};
|
|
38
|
-
export
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
34
|
+
export const createTheme = (options)=>({
|
|
35
|
+
...themeDefault,
|
|
36
|
+
...options
|
|
37
|
+
});
|
|
38
|
+
export const useTheme = _useTheme;
|
package/tw/index.mjs
CHANGED
|
@@ -8,24 +8,23 @@ export * from "../shared";
|
|
|
8
8
|
// export * from "../Carousel";
|
|
9
9
|
// export * from "../Collapsable";
|
|
10
10
|
// export * from "../Debug";
|
|
11
|
-
export { KoineDialog } from "../Dialog/tw/bare";
|
|
12
|
-
// export * from "../
|
|
13
|
-
// export * from "../
|
|
14
|
-
// export * from "../
|
|
15
|
-
// export * from "../
|
|
16
|
-
// export * from "../
|
|
17
|
-
// export * from "../
|
|
18
|
-
// export * from "../
|
|
19
|
-
// export * from "../
|
|
20
|
-
// export * from "../
|
|
21
|
-
// export * from "../
|
|
22
|
-
// export * from "../
|
|
23
|
-
// export * from "../
|
|
24
|
-
// export * from "../
|
|
25
|
-
|
|
26
|
-
// export * from "../
|
|
27
|
-
// export * from "../
|
|
28
|
-
// export * from "../
|
|
29
|
-
// export * from "../
|
|
30
|
-
// export * from "../
|
|
31
|
-
// export * from "../Typography";
|
|
11
|
+
export { KoineDialog } from "../Dialog/tw/bare"; // export * from "../Form";
|
|
12
|
+
// export * from "../Forms";
|
|
13
|
+
// export * from "../Grid";
|
|
14
|
+
// export * from "../Hamburger";
|
|
15
|
+
// export * from "../Header";
|
|
16
|
+
// export * from "../Hidden";
|
|
17
|
+
// export * from "../Img";
|
|
18
|
+
// export * from "../Link";
|
|
19
|
+
// export * from "../MenuItem";
|
|
20
|
+
// export * from "../Pagination";
|
|
21
|
+
// export * from "../Pill";
|
|
22
|
+
// export * from "../Progress";
|
|
23
|
+
// export * from "../Rating";
|
|
24
|
+
// // export * from "../Select";
|
|
25
|
+
// export * from "../Sidebar";
|
|
26
|
+
// export * from "../Spacing";
|
|
27
|
+
// export * from "../Sticky";
|
|
28
|
+
// export * from "../styles";
|
|
29
|
+
// export * from "../Tabs";
|
|
30
|
+
// export * from "../Typography";
|
package/twm/index.mjs
CHANGED
|
@@ -8,24 +8,23 @@ export * from "../shared";
|
|
|
8
8
|
// export * from "../Carousel";
|
|
9
9
|
// export * from "../Collapsable";
|
|
10
10
|
// export * from "../Debug";
|
|
11
|
-
export { KoineDialog } from "../Dialog/tw/framer";
|
|
12
|
-
// export * from "../
|
|
13
|
-
// export * from "../
|
|
14
|
-
// export * from "../
|
|
15
|
-
// export * from "../
|
|
16
|
-
// export * from "../
|
|
17
|
-
// export * from "../
|
|
18
|
-
// export * from "../
|
|
19
|
-
// export * from "../
|
|
20
|
-
// export * from "../
|
|
21
|
-
// export * from "../
|
|
22
|
-
// export * from "../
|
|
23
|
-
// export * from "../
|
|
24
|
-
// export * from "../
|
|
25
|
-
|
|
26
|
-
// export * from "../
|
|
27
|
-
// export * from "../
|
|
28
|
-
// export * from "../
|
|
29
|
-
// export * from "../
|
|
30
|
-
// export * from "../
|
|
31
|
-
// export * from "../Typography";
|
|
11
|
+
export { KoineDialog } from "../Dialog/tw/framer"; // export * from "../Form";
|
|
12
|
+
// export * from "../Forms";
|
|
13
|
+
// export * from "../Grid";
|
|
14
|
+
// export * from "../Hamburger";
|
|
15
|
+
// export * from "../Header";
|
|
16
|
+
// export * from "../Hidden";
|
|
17
|
+
// export * from "../Img";
|
|
18
|
+
// export * from "../Link";
|
|
19
|
+
// export * from "../MenuItem";
|
|
20
|
+
// export * from "../Pagination";
|
|
21
|
+
// export * from "../Pill";
|
|
22
|
+
// export * from "../Progress";
|
|
23
|
+
// export * from "../Rating";
|
|
24
|
+
// // export * from "../Select";
|
|
25
|
+
// export * from "../Sidebar";
|
|
26
|
+
// export * from "../Spacing";
|
|
27
|
+
// export * from "../Sticky";
|
|
28
|
+
// export * from "../styles";
|
|
29
|
+
// export * from "../Tabs";
|
|
30
|
+
// export * from "../Typography";
|
package/types.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export { };
|
package/typings.d.ts
CHANGED
package/Alert/Alert.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Alert = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
-
var styled_components_1 = tslib_1.__importDefault(require("styled-components"));
|
|
7
|
-
var AlertRoot = styled_components_1.default.div(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n font-size: 12px;\n ", "\n"], ["\n font-size: 12px;\n ", "\n"])), function (p) { return (p.$danger ? "color: var(--danger)" : ""); });
|
|
8
|
-
var AlertInner = styled_components_1.default.div(templateObject_2 || (templateObject_2 = tslib_1.__makeTemplateObject(["\n padding: 1em;\n background-color: rgba(0, 0, 0, 0.05);\n /* border: 1px solid var(--grey700); */\n /* background: pink; */\n /* color: red; */\n"], ["\n padding: 1em;\n background-color: rgba(0, 0, 0, 0.05);\n /* border: 1px solid var(--grey700); */\n /* background: pink; */\n /* color: red; */\n"])));
|
|
9
|
-
var Alert = function (_a) {
|
|
10
|
-
var $danger = _a.$danger, children = _a.children, props = tslib_1.__rest(_a, ["$danger", "children"]);
|
|
11
|
-
return ((0, jsx_runtime_1.jsx)(AlertRoot, tslib_1.__assign({ "$danger": $danger }, props, { children: (0, jsx_runtime_1.jsx)(AlertInner, { children: children }) })));
|
|
12
|
-
};
|
|
13
|
-
exports.Alert = Alert;
|
|
14
|
-
var templateObject_1, templateObject_2;
|
package/Alert/index.js
DELETED
package/Alert/package.json
DELETED
package/Animations/Reveal.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Reveal = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
-
var framer_motion_1 = require("framer-motion");
|
|
7
|
-
var useReveal_1 = require("./useReveal");
|
|
8
|
-
var Reveal = function (_a) {
|
|
9
|
-
var children = _a.children, direction = _a.direction, offsetStartY = _a.offsetStartY, offsetEndY = _a.offsetEndY, offsetStartX = _a.offsetStartX, props = tslib_1.__rest(_a, ["children", "direction", "offsetStartY", "offsetEndY", "offsetStartX"]);
|
|
10
|
-
var effectOptions = { direction: direction, offsetStartY: offsetStartY, offsetEndY: offsetEndY, offsetStartX: offsetStartX };
|
|
11
|
-
var prefersReducedMotion = (0, framer_motion_1.useReducedMotion)();
|
|
12
|
-
var _b = (0, useReveal_1.useReveal)(effectOptions), ref = _b.ref, startY = _b.startY, endY = _b.endY, startX = _b.startX;
|
|
13
|
-
var scrollYProgress = (0, framer_motion_1.useViewportScroll)().scrollYProgress;
|
|
14
|
-
var xRange = (0, framer_motion_1.useTransform)(scrollYProgress, [startY, endY], [startX, 0]);
|
|
15
|
-
var opacityRange = (0, framer_motion_1.useTransform)(scrollYProgress, [startY, endY], [0, 1]);
|
|
16
|
-
var x = (0, framer_motion_1.useSpring)(xRange, { stiffness: 400, damping: 90 });
|
|
17
|
-
var opacity = (0, framer_motion_1.useSpring)(opacityRange);
|
|
18
|
-
// console.log("start, end", startY, endY)
|
|
19
|
-
return ((0, jsx_runtime_1.jsx)(framer_motion_1.motion.div, tslib_1.__assign({}, props, { ref: ref, style: prefersReducedMotion ? {} : { x: x, opacity: opacity }, children: children })));
|
|
20
|
-
};
|
|
21
|
-
exports.Reveal = Reveal;
|
package/Animations/Underline.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UnderlineSkewed = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var styled_components_1 = tslib_1.__importDefault(require("styled-components"));
|
|
6
|
-
var framer_motion_1 = require("framer-motion");
|
|
7
|
-
exports.UnderlineSkewed = (0, styled_components_1.default)(framer_motion_1.m.i)(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject(["\n display: block;\n position: absolute;\n top: 50%;\n left: 15%;\n right: 15%;\n height: 20px;\n margin-top: -10px;\n z-index: 0;\n pointer-events: none;\n background: var(--accent400);\n transform: skewY(-5deg);\n"], ["\n display: block;\n position: absolute;\n top: 50%;\n left: 15%;\n right: 15%;\n height: 20px;\n margin-top: -10px;\n z-index: 0;\n pointer-events: none;\n background: var(--accent400);\n transform: skewY(-5deg);\n"])));
|
|
8
|
-
var templateObject_1;
|
package/Animations/index.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
|
-
tslib_1.__exportStar(require("./Reveal"), exports);
|
|
5
|
-
tslib_1.__exportStar(require("./Underline"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./useReveal"), exports);
|
package/Animations/package.json
DELETED
package/Animations/useReveal.js
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useReveal = void 0;
|
|
4
|
-
var react_1 = require("react");
|
|
5
|
-
function useReveal(_a) {
|
|
6
|
-
var _b = _a.direction, direction = _b === void 0 ? "left" : _b, _c = _a.offsetStartY, offsetStartY = _c === void 0 ? -2 : _c, _d = _a.offsetEndY, offsetEndY = _d === void 0 ? 0 : _d, _e = _a.offsetStartX, offsetStartX = _e === void 0 ? "all" : _e;
|
|
7
|
-
var ref = (0, react_1.useRef)(null);
|
|
8
|
-
var _f = (0, react_1.useState)(0), startY = _f[0], setStartY = _f[1];
|
|
9
|
-
var _g = (0, react_1.useState)(0), endY = _g[0], setEndY = _g[1];
|
|
10
|
-
var _h = (0, react_1.useState)(0), startX = _h[0], setStartX = _h[1];
|
|
11
|
-
(0, react_1.useEffect)(function () {
|
|
12
|
-
if (!ref.current) {
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
var rect = ref.current.getBoundingClientRect();
|
|
16
|
-
// scroll position from top of the window
|
|
17
|
-
var scrollTop = window.scrollY || document.documentElement.scrollTop;
|
|
18
|
-
var elementHeight = rect.height;
|
|
19
|
-
// rect.top is the distance from the currently visible viewport to the top
|
|
20
|
-
// of the given element
|
|
21
|
-
// so distanceTop is the distance between the top edge of the window and the
|
|
22
|
-
// top edge of the given element
|
|
23
|
-
var elementTop = rect.top;
|
|
24
|
-
var distanceTop = elementTop + scrollTop;
|
|
25
|
-
var offsetTop = offsetStartY ? elementHeight * offsetStartY : 0;
|
|
26
|
-
var offsetBottom = offsetEndY ? elementHeight * offsetEndY : offsetTop;
|
|
27
|
-
// the distance of the element from the top divided by the full height
|
|
28
|
-
// of the window gives back the start position of the given element in
|
|
29
|
-
// a scale from 0 to 1
|
|
30
|
-
var startY = (distanceTop + offsetTop) / document.body.clientHeight;
|
|
31
|
-
// same for the end, we just add the given element height to the first value
|
|
32
|
-
var endY = (distanceTop + elementHeight + offsetBottom) / document.body.clientHeight;
|
|
33
|
-
var startX;
|
|
34
|
-
if (offsetStartX === "all") {
|
|
35
|
-
startX = direction === "left" ? -rect.right : rect.left;
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
startX = rect.width * offsetStartX;
|
|
39
|
-
startX = direction === "left" ? -startX : startX;
|
|
40
|
-
}
|
|
41
|
-
// addMarker(startY + "px");
|
|
42
|
-
// addMarker(endY + "px");
|
|
43
|
-
// console.log("start", startY, "end", endY, "startX", startX)
|
|
44
|
-
setStartY(startY);
|
|
45
|
-
setEndY(endY);
|
|
46
|
-
setStartX(startX);
|
|
47
|
-
// addMarker(startY * 100 + "%", "blue", "fixed");
|
|
48
|
-
// addMarker(endY * 100 + "%", "blue", "fixed");
|
|
49
|
-
}, [
|
|
50
|
-
setStartY,
|
|
51
|
-
setEndY,
|
|
52
|
-
setStartX,
|
|
53
|
-
offsetStartY,
|
|
54
|
-
offsetEndY,
|
|
55
|
-
offsetStartX,
|
|
56
|
-
direction,
|
|
57
|
-
]);
|
|
58
|
-
return { ref: ref, startY: startY, endY: endY, startX: startX };
|
|
59
|
-
}
|
|
60
|
-
exports.useReveal = useReveal;
|
|
61
|
-
// function addMarker(top: string, color = "red", position = "absolute") {
|
|
62
|
-
// const div = document.createElement("div");
|
|
63
|
-
// div.setAttribute(
|
|
64
|
-
// "style",
|
|
65
|
-
// `
|
|
66
|
-
// position: ${position};
|
|
67
|
-
// top: ${top};
|
|
68
|
-
// left: 0;
|
|
69
|
-
// right: 0;
|
|
70
|
-
// height: 1px;
|
|
71
|
-
// background: ${color};
|
|
72
|
-
// `
|
|
73
|
-
// );
|
|
74
|
-
// document.body.appendChild(div);
|
|
75
|
-
// }
|