@koine/react 1.0.4 → 1.0.9
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 +5 -5
- package/Alert/Alert.js +16 -0
- package/Alert/index.d.ts +1 -1
- package/Alert/index.js +1 -0
- package/Alert/package.json +6 -0
- package/Animations/Reveal.d.ts +4 -4
- package/Animations/Reveal.js +15 -0
- package/Animations/Underline.d.ts +1 -1
- package/Animations/Underline.js +15 -0
- package/Animations/index.d.ts +3 -3
- package/Animations/index.js +3 -0
- package/Animations/package.json +6 -0
- package/Animations/useReveal.d.ts +33 -34
- package/Animations/useReveal.js +70 -0
- package/Autocomplete/AutocompleteDownshift.d.ts +1 -1
- package/Autocomplete/AutocompleteDownshift.js +158 -0
- package/Autocomplete/AutocompleteDownshiftMultiselect.d.ts +1 -1
- package/Autocomplete/AutocompleteDownshiftMultiselect.js +353 -0
- package/Autocomplete/AutocompleteMui.d.ts +47 -47
- package/Autocomplete/AutocompleteMui.js +177 -0
- package/Autocomplete/AutocompleteReach.d.ts +1 -1
- package/Autocomplete/AutocompleteReach.js +112 -0
- package/Autocomplete/components.d.ts +21 -21
- package/Autocomplete/components.js +89 -0
- package/Autocomplete/helpers.d.ts +3 -3
- package/Autocomplete/helpers.js +28 -0
- package/Autocomplete/index.d.ts +2 -2
- package/Autocomplete/index.js +3 -0
- package/Autocomplete/package.json +6 -0
- package/Bg/BgColor.d.ts +36 -36
- package/Bg/BgColor.js +31 -0
- package/Bg/BgPhoto.d.ts +13 -14
- package/Bg/BgPhoto.js +59 -0
- package/Bg/BgSvg.d.ts +7 -8
- package/Bg/BgSvg.js +15 -0
- package/Bg/index.d.ts +3 -3
- package/Bg/index.js +3 -0
- package/Bg/package.json +6 -0
- package/Breadcrumbs/Breadcrumbs.d.ts +13 -14
- package/Breadcrumbs/Breadcrumbs.js +67 -0
- package/Breadcrumbs/index.d.ts +1 -1
- package/Breadcrumbs/index.js +1 -0
- package/Breadcrumbs/package.json +6 -0
- package/Buttons/Button.d.ts +18 -18
- package/Buttons/Button.js +79 -0
- package/Buttons/ButtonComposite.d.ts +23 -23
- package/Buttons/ButtonComposite.js +49 -0
- package/Buttons/ButtonFab.d.ts +7 -7
- package/Buttons/ButtonFab.js +8 -0
- package/Buttons/ButtonLink.d.ts +8 -9
- package/Buttons/ButtonLink.js +10 -0
- package/Buttons/IconButton.d.ts +11 -11
- package/Buttons/IconButton.js +19 -0
- package/Buttons/index.d.ts +5 -5
- package/Buttons/index.js +5 -0
- package/Buttons/package.json +6 -0
- package/Calendar/CalendarDaygridCell.d.ts +36 -36
- package/Calendar/CalendarDaygridCell.js +51 -0
- package/Calendar/CalendarDaygridNav.d.ts +27 -28
- package/Calendar/CalendarDaygridNav.js +22 -0
- package/Calendar/CalendarDaygridTable.d.ts +25 -26
- package/Calendar/CalendarDaygridTable.js +55 -0
- package/Calendar/CalendarLegend.d.ts +19 -19
- package/Calendar/CalendarLegend.js +11 -0
- package/Calendar/calendar-api-google.d.ts +18 -18
- package/Calendar/calendar-api-google.js +94 -0
- package/Calendar/index.d.ts +6 -6
- package/Calendar/index.js +6 -0
- package/Calendar/package.json +6 -0
- package/Calendar/types.d.ts +81 -81
- package/Calendar/types.js +1 -0
- package/Calendar/useCalendar.d.ts +49 -50
- package/Calendar/useCalendar.js +182 -0
- package/Calendar/utils.d.ts +11 -11
- package/Calendar/utils.js +203 -0
- package/Carousel/Carousel.d.ts +1 -1
- package/Carousel/Carousel.js +378 -0
- package/Carousel/CarouselCss.d.ts +47 -47
- package/Carousel/CarouselCss.js +36 -0
- package/Carousel/index.d.ts +1 -1
- package/Carousel/index.js +1 -0
- package/Carousel/package.json +6 -0
- package/Collapsable/Collapsable.d.ts +1 -60
- package/Collapsable/Collapsable.js +1 -0
- package/Collapsable/CollapsableReach.d.ts +66 -0
- package/Collapsable/CollapsableReach.js +135 -0
- package/Collapsable/index.d.ts +1 -1
- package/Collapsable/index.js +1 -0
- package/Collapsable/package.json +6 -0
- package/Debug/Debug.d.ts +4 -5
- package/Debug/Debug.js +21 -0
- package/Debug/index.d.ts +1 -1
- package/Debug/index.js +1 -0
- package/Debug/package.json +6 -0
- package/Dialog/DialogMui.d.ts +139 -0
- package/Dialog/DialogMui.js +78 -0
- package/Dialog/css/bare.d.ts +145 -0
- package/Dialog/css/bare.js +19 -0
- package/Dialog/index.d.ts +2 -1
- package/Dialog/index.js +1 -0
- package/Dialog/m/bare.d.ts +56 -0
- package/Dialog/m/bare.js +48 -0
- package/Dialog/m/basic.d.ts +4 -0
- package/Dialog/m/basic.js +31 -0
- package/Dialog/m/index.d.ts +2 -0
- package/Dialog/m/index.js +4 -0
- package/Dialog/m/package.json +6 -0
- package/Dialog/package.json +6 -0
- package/Dialog/sc/bare.d.ts +105 -0
- package/Dialog/sc/bare.js +61 -0
- package/Dialog/sc/framer.d.ts +80 -0
- package/Dialog/sc/framer.js +16 -0
- package/Dialog/sc/framerMaterial.d.ts +79 -0
- package/Dialog/sc/framerMaterial.js +16 -0
- package/Dialog/sc/material.d.ts +94 -0
- package/Dialog/sc/material.js +41 -0
- package/Dialog/tw/bare.d.ts +196 -0
- package/Dialog/tw/bare.js +36 -0
- package/Dialog/tw/elegant.d.ts +244 -0
- package/Dialog/tw/elegant.js +18 -0
- package/Dialog/tw/framer.d.ts +112 -0
- package/Dialog/tw/framer.js +16 -0
- package/Dialog/tw/framerMaterial.d.ts +167 -0
- package/Dialog/tw/framerMaterial.js +16 -0
- package/Dialog/tw/material.d.ts +244 -0
- package/Dialog/tw/material.js +18 -0
- package/Editor/Editor--tiptap.d.ts +9 -10
- package/Editor/Editor--tiptap.js +23 -0
- package/Editor/components.d.ts +7 -8
- package/Editor/components.js +28 -0
- package/Editor/index.d.ts +1 -1
- package/Editor/index.js +1 -0
- package/Editor/package.json +6 -0
- package/Favicon/FaviconTags.d.ts +18 -19
- package/Favicon/FaviconTags.js +14 -0
- package/Favicon/index.d.ts +1 -1
- package/Favicon/index.js +1 -0
- package/Favicon/package.json +6 -0
- package/Forms/Checkbox/Checkbox.d.ts +11 -11
- package/Forms/Checkbox/Checkbox.js +24 -0
- package/Forms/Checkbox/index.d.ts +1 -1
- package/Forms/Checkbox/index.js +1 -0
- package/Forms/Checkbox/package.json +6 -0
- package/Forms/Feedback/Feedback.d.ts +5 -5
- package/Forms/Feedback/Feedback.js +10 -0
- package/Forms/Feedback/index.d.ts +1 -1
- package/Forms/Feedback/index.js +1 -0
- package/Forms/Feedback/package.json +6 -0
- package/Forms/Field/Field.d.ts +15 -16
- package/Forms/Field/Field.js +59 -0
- package/Forms/Field/FieldControl.d.ts +26 -26
- package/Forms/Field/FieldControl.js +43 -0
- package/Forms/Field/FieldHint.d.ts +1 -1
- package/Forms/Field/FieldHint.js +6 -0
- package/Forms/Field/index.d.ts +2 -2
- package/Forms/Field/index.js +2 -0
- package/Forms/Field/package.json +6 -0
- package/Forms/Form/Form.d.ts +31 -31
- package/Forms/Form/Form.js +62 -0
- package/Forms/Form/index.d.ts +1 -1
- package/Forms/Form/index.js +1 -0
- package/Forms/Form/package.json +6 -0
- package/Forms/Input/Input.d.ts +9 -9
- package/Forms/Input/Input.js +23 -0
- package/Forms/Input/index.d.ts +1 -1
- package/Forms/Input/index.js +1 -0
- package/Forms/Input/package.json +6 -0
- package/Forms/InputGroup/InputGroup.d.ts +13 -13
- package/Forms/InputGroup/InputGroup.js +42 -0
- package/Forms/InputGroup/index.d.ts +1 -1
- package/Forms/InputGroup/index.js +1 -0
- package/Forms/InputGroup/package.json +6 -0
- package/Forms/Label/Label.d.ts +3 -3
- package/Forms/Label/Label.js +24 -0
- package/Forms/Label/index.d.ts +1 -1
- package/Forms/Label/index.js +1 -0
- package/Forms/Label/package.json +6 -0
- package/Forms/Password/Password.d.ts +5 -5
- package/Forms/Password/Password.js +30 -0
- package/Forms/Password/index.d.ts +1 -1
- package/Forms/Password/index.js +1 -0
- package/Forms/Password/package.json +6 -0
- package/Forms/Radio/Radio.d.ts +12 -12
- package/Forms/Radio/Radio.js +28 -0
- package/Forms/Radio/index.d.ts +1 -1
- package/Forms/Radio/index.js +1 -0
- package/Forms/Radio/package.json +6 -0
- package/Forms/Switch/Switch.d.ts +9 -9
- package/Forms/Switch/Switch.js +50 -0
- package/Forms/Switch/index.d.ts +1 -1
- package/Forms/Switch/index.js +1 -0
- package/Forms/Switch/package.json +6 -0
- package/Forms/Textarea/Textarea.d.ts +5 -5
- package/Forms/Textarea/Textarea.js +13 -0
- package/Forms/Textarea/TextareaRich.d.ts +6 -6
- package/Forms/Textarea/TextareaRich.js +42 -0
- package/Forms/Textarea/index.d.ts +2 -2
- package/Forms/Textarea/index.js +2 -0
- package/Forms/Textarea/package.json +6 -0
- package/Forms/Toggle/Toggle.d.ts +19 -26
- package/Forms/Toggle/Toggle.js +79 -0
- package/Forms/Toggle/index.d.ts +1 -1
- package/Forms/Toggle/index.js +1 -0
- package/Forms/Toggle/package.json +6 -0
- package/Forms/Toggle/useToggle.d.ts +46 -46
- package/Forms/Toggle/useToggle.js +145 -0
- package/Forms/antispam.d.ts +24 -24
- package/Forms/antispam.js +56 -0
- package/Forms/helpers.d.ts +26 -26
- package/Forms/helpers.js +44 -0
- package/Forms/index.d.ts +16 -16
- package/Forms/index.js +17 -0
- package/Forms/package.json +6 -0
- package/Forms/styles.d.ts +19 -20
- package/Forms/styles.js +60 -0
- package/Gauge/Gauge.d.ts +5 -5
- package/Gauge/Gauge.js +102 -0
- package/Grid/Grid.d.ts +64 -60
- package/Grid/Grid.js +79 -0
- package/Grid/index.d.ts +1 -1
- package/Grid/index.js +1 -0
- package/Grid/package.json +6 -0
- package/Hamburger/Hamburger.d.ts +6 -6
- package/Hamburger/Hamburger.js +64 -0
- package/Hamburger/index.d.ts +1 -1
- package/Hamburger/index.js +1 -0
- package/Hamburger/package.json +6 -0
- package/Header/index.d.ts +1 -1
- package/Header/index.js +1 -0
- package/Header/package.json +6 -0
- package/Header/useHeader.d.ts +24 -20
- package/Header/useHeader.js +30 -0
- package/Hidden/Hidden.d.ts +6 -6
- package/Hidden/Hidden.js +14 -0
- package/Hidden/index.d.ts +1 -1
- package/Hidden/index.js +1 -0
- package/Hidden/package.json +6 -0
- package/Img/index.d.ts +1 -1
- package/Img/index.js +1 -0
- package/Img/package.json +6 -0
- package/Img/sc/bare.d.ts +2 -0
- package/Img/sc/bare.js +37 -0
- package/Img/types.d.ts +9 -0
- package/Img/types.js +1 -0
- package/Link/Link.d.ts +5 -5
- package/Link/Link.js +2 -0
- package/Link/LinkBlank.d.ts +8 -8
- package/Link/LinkBlank.js +26 -0
- package/Link/index.d.ts +2 -2
- package/Link/index.js +2 -0
- package/Link/package.json +6 -0
- package/Menu/Menu.d.ts +1 -1
- package/Menu/Menu.js +11 -0
- package/Menu/index.d.ts +1 -1
- package/Menu/index.js +1 -0
- package/Menu/package.json +6 -0
- package/MenuItem/MenuItem.d.ts +4 -4
- package/MenuItem/MenuItem.js +20 -0
- package/MenuItem/index.d.ts +1 -1
- package/MenuItem/index.js +1 -0
- package/MenuItem/package.json +6 -0
- package/Meta/Meta.d.ts +14 -15
- package/Meta/Meta.js +4 -0
- package/Meta/index.d.ts +1 -1
- package/Meta/index.js +1 -0
- package/Meta/package.json +6 -0
- package/NoJs/NoJs.d.ts +2 -3
- package/NoJs/NoJs.js +6 -0
- package/NoJs/index.d.ts +1 -1
- package/NoJs/index.js +1 -0
- package/NoJs/package.json +6 -0
- package/Pagination/PaginationNav.d.ts +22 -23
- package/Pagination/PaginationNav.js +83 -0
- package/Pagination/PaginationResults.d.ts +3 -3
- package/Pagination/PaginationResults.js +10 -0
- package/Pagination/index.d.ts +2 -2
- package/Pagination/index.js +2 -0
- package/Pagination/package.json +6 -0
- package/Pill/Pill.d.ts +5 -5
- package/Pill/Pill.js +37 -0
- package/Pill/index.d.ts +1 -1
- package/Pill/index.js +1 -0
- package/Pill/package.json +6 -0
- package/Progress/ProgressCircular.d.ts +19 -20
- package/Progress/ProgressCircular.js +36 -0
- package/Progress/ProgressLinear.d.ts +22 -23
- package/Progress/ProgressLinear.js +32 -0
- package/Progress/ProgressOverlay.d.ts +4 -5
- package/Progress/ProgressOverlay.js +40 -0
- package/Progress/index.d.ts +3 -3
- package/Progress/index.js +3 -0
- package/Progress/package.json +6 -0
- package/README.md +0 -0
- package/Rating/Rating.d.ts +35 -35
- package/Rating/Rating.js +90 -0
- package/Rating/index.d.ts +11 -11
- package/Rating/index.js +45 -0
- package/Rating/package.json +6 -0
- package/Select/SelectDownshift.d.ts +5 -5
- package/Select/SelectDownshift.js +38 -0
- package/Select/components.d.ts +6 -6
- package/Select/components.js +18 -0
- package/Select/index.d.ts +2 -2
- package/Select/index.js +3 -0
- package/Select/package.json +6 -0
- package/Sidebar/Sidebar.d.ts +3 -3
- package/Sidebar/Sidebar.js +48 -0
- package/Sidebar/index.d.ts +1 -1
- package/Sidebar/index.js +1 -0
- package/Sidebar/package.json +6 -0
- package/Spacing/Spacing.d.ts +30 -30
- package/Spacing/Spacing.js +45 -0
- package/Spacing/index.d.ts +1 -1
- package/Spacing/index.js +1 -0
- package/Spacing/package.json +6 -0
- package/Sticky/Sticky.d.ts +2 -2
- package/Sticky/Sticky.js +219 -0
- package/Sticky/StickyCss.d.ts +5 -5
- package/Sticky/StickyCss.js +4 -0
- package/Sticky/index.d.ts +1 -1
- package/Sticky/index.js +1 -0
- package/Sticky/package.json +6 -0
- package/Tabs/Tabs.d.ts +27 -25
- package/Tabs/Tabs.js +62 -0
- package/Tabs/index.d.ts +1 -1
- package/Tabs/index.js +1 -0
- package/Tabs/package.json +6 -0
- package/Typography/CopyPasteVisible.d.ts +1 -1
- package/Typography/CopyPasteVisible.js +6 -0
- package/Typography/Native.d.ts +10 -10
- package/Typography/Native.js +47 -0
- package/Typography/ReadMore.d.ts +12 -12
- package/Typography/ReadMore.js +69 -0
- package/Typography/TextLoop.d.ts +16 -16
- package/Typography/TextLoop.js +49 -0
- package/Typography/TypeStairs.d.ts +6 -6
- package/Typography/TypeStairs.js +46 -0
- package/Typography/index.d.ts +5 -5
- package/Typography/index.js +5 -0
- package/Typography/package.json +6 -0
- package/css/index.d.ts +2 -0
- package/css/index.js +30 -0
- package/css/package.json +6 -0
- package/helpers/classed.d.ts +22 -0
- package/helpers/classed.js +64 -0
- package/helpers/extend-component.d.ts +28 -0
- package/helpers/extend-component.js +12 -0
- package/helpers/index.d.ts +3 -1
- package/helpers/index.js +2 -0
- package/helpers/package.json +6 -0
- package/hooks/index.d.ts +6 -5
- package/hooks/index.js +7 -0
- package/hooks/package.json +6 -0
- package/hooks/useDateLocale.d.ts +7 -7
- package/hooks/useDateLocale.js +29 -0
- package/hooks/useFocus.d.ts +4 -5
- package/hooks/useFocus.js +11 -0
- package/hooks/usePrevious.d.ts +1 -1
- package/hooks/usePrevious.js +8 -0
- package/hooks/useScrollPosition.d.ts +15 -0
- package/hooks/useScrollPosition.js +75 -0
- package/hooks/useScrollTo.d.ts +1 -0
- package/hooks/useScrollTo.js +19 -0
- package/hooks/useTraceUpdate.d.ts +4 -4
- package/hooks/useTraceUpdate.js +20 -0
- package/hooks/useWindowSize.d.ts +1 -1
- package/hooks/useWindowSize.js +13 -0
- package/index.d.ts +1 -35
- package/index.js +5 -0
- package/m/MotionProvider.d.ts +37 -0
- package/m/MotionProvider.js +37 -0
- package/m/index.d.ts +6 -0
- package/m/index.js +6 -0
- package/m/lite.d.ts +2 -0
- package/m/lite.js +2 -0
- package/m/max.d.ts +2 -0
- package/m/max.js +2 -0
- package/m/package.json +6 -0
- package/node/Alert/Alert.js +21 -0
- package/node/Alert/index.js +4 -0
- package/node/Animations/Reveal.js +19 -0
- package/node/Animations/Underline.js +19 -0
- package/node/Animations/index.js +6 -0
- package/node/Animations/useReveal.js +74 -0
- package/node/Autocomplete/AutocompleteDownshift.js +161 -0
- package/node/Autocomplete/AutocompleteDownshiftMultiselect.js +356 -0
- package/node/Autocomplete/AutocompleteMui.js +175 -0
- package/node/Autocomplete/AutocompleteReach.js +115 -0
- package/node/Autocomplete/components.js +93 -0
- package/node/Autocomplete/helpers.js +32 -0
- package/node/Autocomplete/index.js +7 -0
- package/node/Bg/BgColor.js +36 -0
- package/node/Bg/BgPhoto.js +64 -0
- package/node/Bg/BgSvg.js +20 -0
- package/node/Bg/index.js +6 -0
- package/node/Breadcrumbs/Breadcrumbs.js +72 -0
- package/node/Breadcrumbs/index.js +4 -0
- package/node/Buttons/Button.js +83 -0
- package/node/Buttons/ButtonComposite.js +54 -0
- package/node/Buttons/ButtonFab.js +12 -0
- package/node/Buttons/ButtonLink.js +15 -0
- package/node/Buttons/IconButton.js +23 -0
- package/node/Buttons/index.js +8 -0
- package/node/Calendar/CalendarDaygridCell.js +55 -0
- package/node/Calendar/CalendarDaygridNav.js +27 -0
- package/node/Calendar/CalendarDaygridTable.js +60 -0
- package/node/Calendar/CalendarLegend.js +15 -0
- package/node/Calendar/calendar-api-google.js +99 -0
- package/node/Calendar/index.js +9 -0
- package/node/Calendar/types.js +2 -0
- package/node/Calendar/useCalendar.js +186 -0
- package/node/Calendar/utils.js +217 -0
- package/node/Carousel/Carousel.js +381 -0
- package/node/Carousel/CarouselCss.js +41 -0
- package/node/Carousel/index.js +4 -0
- package/node/Collapsable/Collapsable.js +4 -0
- package/node/Collapsable/CollapsableReach.js +141 -0
- package/node/Collapsable/index.js +4 -0
- package/node/Debug/Debug.js +26 -0
- package/node/Debug/index.js +4 -0
- package/node/Dialog/DialogMui.js +82 -0
- package/node/Dialog/css/bare.js +23 -0
- package/node/Dialog/index.js +5 -0
- package/node/Dialog/m/bare.js +51 -0
- package/node/Dialog/m/basic.js +35 -0
- package/node/Dialog/m/index.js +8 -0
- package/node/Dialog/sc/bare.js +65 -0
- package/node/Dialog/sc/framer.js +19 -0
- package/node/Dialog/sc/framerMaterial.js +19 -0
- package/node/Dialog/sc/material.js +45 -0
- package/node/Dialog/tw/bare.js +40 -0
- package/node/Dialog/tw/elegant.js +21 -0
- package/node/Dialog/tw/framer.js +19 -0
- package/node/Dialog/tw/framerMaterial.js +19 -0
- package/node/Dialog/tw/material.js +21 -0
- package/node/Editor/Editor--tiptap.js +29 -0
- package/node/Editor/components.js +34 -0
- package/node/Editor/index.js +4 -0
- package/node/Favicon/FaviconTags.js +18 -0
- package/node/Favicon/index.js +4 -0
- package/node/Forms/Checkbox/Checkbox.js +28 -0
- package/node/Forms/Checkbox/index.js +4 -0
- package/node/Forms/Feedback/Feedback.js +15 -0
- package/node/Forms/Feedback/index.js +4 -0
- package/node/Forms/Field/Field.js +64 -0
- package/node/Forms/Field/FieldControl.js +47 -0
- package/node/Forms/Field/FieldHint.js +10 -0
- package/node/Forms/Field/index.js +5 -0
- package/node/Forms/Form/Form.js +67 -0
- package/node/Forms/Form/index.js +4 -0
- package/node/Forms/Input/Input.js +27 -0
- package/node/Forms/Input/index.js +4 -0
- package/node/Forms/InputGroup/InputGroup.js +47 -0
- package/node/Forms/InputGroup/index.js +4 -0
- package/node/Forms/Label/Label.js +28 -0
- package/node/Forms/Label/index.js +4 -0
- package/node/Forms/Password/Password.js +34 -0
- package/node/Forms/Password/index.js +4 -0
- package/node/Forms/Radio/Radio.js +32 -0
- package/node/Forms/Radio/index.js +4 -0
- package/node/Forms/Switch/Switch.js +54 -0
- package/node/Forms/Switch/index.js +4 -0
- package/node/Forms/Textarea/Textarea.js +17 -0
- package/node/Forms/Textarea/TextareaRich.js +46 -0
- package/node/Forms/Textarea/index.js +5 -0
- package/node/Forms/Toggle/Toggle.js +85 -0
- package/node/Forms/Toggle/index.js +4 -0
- package/node/Forms/Toggle/useToggle.js +149 -0
- package/node/Forms/antispam.js +61 -0
- package/node/Forms/helpers.js +51 -0
- package/node/Forms/index.js +20 -0
- package/node/Forms/styles.js +64 -0
- package/node/Gauge/Gauge.js +106 -0
- package/node/Grid/Grid.js +83 -0
- package/node/Grid/index.js +4 -0
- package/node/Hamburger/Hamburger.js +69 -0
- package/node/Hamburger/index.js +4 -0
- package/node/Header/index.js +4 -0
- package/node/Header/useHeader.js +34 -0
- package/node/Hidden/Hidden.js +18 -0
- package/node/Hidden/index.js +4 -0
- package/node/Img/index.js +4 -0
- package/node/Img/sc/bare.js +41 -0
- package/node/Img/types.js +2 -0
- package/node/Link/Link.js +6 -0
- package/node/Link/LinkBlank.js +31 -0
- package/node/Link/index.js +5 -0
- package/node/Menu/Menu.js +15 -0
- package/node/Menu/index.js +4 -0
- package/node/MenuItem/MenuItem.js +24 -0
- package/node/MenuItem/index.js +4 -0
- package/node/Meta/Meta.js +8 -0
- package/node/Meta/index.js +4 -0
- package/node/NoJs/NoJs.js +10 -0
- package/node/NoJs/index.js +4 -0
- package/node/Pagination/PaginationNav.js +88 -0
- package/node/Pagination/PaginationResults.js +15 -0
- package/node/Pagination/index.js +5 -0
- package/node/Pill/Pill.js +41 -0
- package/node/Pill/index.js +4 -0
- package/node/Progress/ProgressCircular.js +41 -0
- package/node/Progress/ProgressLinear.js +37 -0
- package/node/Progress/ProgressOverlay.js +45 -0
- package/node/Progress/index.js +6 -0
- package/node/Rating/Rating.js +96 -0
- package/node/Rating/index.js +53 -0
- package/node/Select/SelectDownshift.js +41 -0
- package/node/Select/components.js +22 -0
- package/node/Select/index.js +7 -0
- package/node/Sidebar/Sidebar.js +53 -0
- package/node/Sidebar/index.js +4 -0
- package/node/Spacing/Spacing.js +50 -0
- package/node/Spacing/index.js +4 -0
- package/node/Sticky/Sticky.js +222 -0
- package/node/Sticky/StickyCss.js +8 -0
- package/node/Sticky/index.js +4 -0
- package/node/Tabs/Tabs.js +67 -0
- package/node/Tabs/index.js +4 -0
- package/node/Typography/CopyPasteVisible.js +10 -0
- package/node/Typography/Native.js +51 -0
- package/node/Typography/ReadMore.js +74 -0
- package/node/Typography/TextLoop.js +54 -0
- package/node/Typography/TypeStairs.js +49 -0
- package/node/Typography/index.js +8 -0
- package/node/css/index.js +35 -0
- package/node/helpers/classed.js +68 -0
- package/node/helpers/extend-component.js +16 -0
- package/node/helpers/index.js +5 -0
- package/node/hooks/index.js +10 -0
- package/node/hooks/useDateLocale.js +56 -0
- package/node/hooks/useFocus.js +15 -0
- package/node/hooks/usePrevious.js +12 -0
- package/node/hooks/useScrollPosition.js +80 -0
- package/node/hooks/useScrollTo.js +23 -0
- package/node/hooks/useTraceUpdate.js +24 -0
- package/node/hooks/useWindowSize.js +17 -0
- package/node/index.js +8 -0
- package/node/m/MotionProvider.js +41 -0
- package/node/m/index.js +9 -0
- package/node/m/lite.js +4 -0
- package/node/m/max.js +4 -0
- package/node/sc/index.js +35 -0
- package/node/scm/index.js +35 -0
- package/node/shared/index.js +11 -0
- package/node/styles/Body.js +21 -0
- package/node/styles/Global.js +53 -0
- package/node/styles/index.js +10 -0
- package/node/styles/media.js +156 -0
- package/node/styles/spacing.js +53 -0
- package/node/styles/styled.js +31 -0
- package/node/styles/theme--vanilla.js +59 -0
- package/node/styles/theme.js +45 -0
- package/node/tw/index.js +35 -0
- package/node/twm/index.js +35 -0
- package/node/types.js +2 -0
- package/package.json +9 -22
- package/sc/index.d.ts +29 -0
- package/sc/index.js +30 -0
- package/sc/package.json +6 -0
- package/scm/index.d.ts +29 -0
- package/scm/index.js +30 -0
- package/scm/package.json +6 -0
- package/shared/index.d.ts +8 -0
- package/shared/index.js +8 -0
- package/shared/package.json +6 -0
- package/styles/Body.d.ts +10 -10
- package/styles/Body.js +17 -0
- package/styles/Global.d.ts +15 -15
- package/styles/Global.js +50 -0
- package/styles/index.d.ts +7 -7
- package/styles/index.js +7 -0
- package/styles/media.d.ts +67 -67
- package/styles/media.js +150 -0
- package/styles/package.json +6 -0
- package/styles/spacing.d.ts +13 -13
- package/styles/spacing.js +46 -0
- package/styles/styled.d.ts +12 -12
- package/styles/styled.js +27 -0
- package/styles/theme--vanilla.d.ts +18 -18
- package/styles/theme--vanilla.js +53 -0
- package/styles/theme.d.ts +82 -89
- package/styles/theme.js +41 -0
- package/tw/index.d.ts +2 -0
- package/tw/index.js +30 -0
- package/tw/package.json +6 -0
- package/twm/index.d.ts +2 -0
- package/twm/index.js +30 -0
- package/twm/package.json +6 -0
- package/types.d.ts +10 -11
- package/types.js +1 -0
- package/typings.d.ts +21 -0
- package/Dialog/Dialog.d.ts +0 -23
- package/Img/Img.d.ts +0 -11
- package/index.esm.js +0 -9456
- package/index.umd.js +0 -9667
- package/styles/classed.d.ts +0 -4
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useMemo, useState } from "react";
|
|
3
|
+
import eachWeekOfInterval from "date-fns/eachWeekOfInterval";
|
|
4
|
+
import { useSwipeable } from "react-swipeable";
|
|
5
|
+
import { useDateLocale } from "../hooks";
|
|
6
|
+
import { processEventsInView } from "./utils";
|
|
7
|
+
import { CalendarDaygridCell, } from "./CalendarDaygridCell";
|
|
8
|
+
function getView(range) {
|
|
9
|
+
const [start, end] = range;
|
|
10
|
+
const weeks = eachWeekOfInterval({ start, end }, { weekStartsOn: 1 });
|
|
11
|
+
return {
|
|
12
|
+
month: start.getMonth(),
|
|
13
|
+
weeks,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export const KoineCalendarDaygridTable = ({ locale: localeCode, handlePrev, handleNext, events, dayLabels, view, range, eventClicked, setEventClicked, eventHovered, setEventHovered, calendarsMap = {}, maxEvents = 5, Table = "table", TableHead = "thead", TableHeadCell = "th", TableBody = "tbody", TableBodyRow = "tr", TableBodyCell = "td", TableBodyCellDate = "div", Cell, CellOverflow, CellEvent, CellEventBtn, CellEventTitle, CellEventStart, }) => {
|
|
17
|
+
const restKoine = {
|
|
18
|
+
Cell,
|
|
19
|
+
CellOverflow,
|
|
20
|
+
CellEvent,
|
|
21
|
+
CellEventBtn,
|
|
22
|
+
CellEventTitle,
|
|
23
|
+
CellEventStart,
|
|
24
|
+
};
|
|
25
|
+
const [days, setDays] = useState(dayLabels || [0, 1, 2, 3, 4, 5, 6]);
|
|
26
|
+
const [weeksEvents, setWeeksEvents] = useState([]);
|
|
27
|
+
// const [days, setDays] = useState(dayLabels || [...Array(7).keys()]);
|
|
28
|
+
const locale = useDateLocale(localeCode);
|
|
29
|
+
const { month, weeks } = useMemo(() => getView(range), [range]);
|
|
30
|
+
const swipeableHandlers = useSwipeable({
|
|
31
|
+
onSwipedLeft: handleNext,
|
|
32
|
+
onSwipedRight: handlePrev,
|
|
33
|
+
});
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
setWeeksEvents(processEventsInView(events, view, month, weeks));
|
|
36
|
+
}, [events, view, month, weeks]);
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
if (locale && locale.localize && !dayLabels) {
|
|
39
|
+
setDays([1, 2, 3, 4, 5, 6, 0].map(
|
|
40
|
+
// @ts-expect-error nevermind
|
|
41
|
+
(i) => locale.localize.day(i, { width: "abbreviated" })));
|
|
42
|
+
}
|
|
43
|
+
}, [locale, dayLabels]);
|
|
44
|
+
return (_jsxs(Table, { ...swipeableHandlers, children: [_jsx(TableHead, { children: _jsx("tr", { children: days.map((day) => (_jsx(TableHeadCell, { scope: "column", children: day }, day))) }) }), _jsx(TableBody, { children: weeksEvents.map((week, i) => (_jsx(TableBodyRow, { ...week.props, children: week.days.map((day) => (_jsxs(TableBodyCell, { ...day.props, children: [_jsx(TableBodyCellDate, { ...day.props, children: day.label }), day.events.length > 0 && (_jsx(CalendarDaygridCell, { ...{
|
|
45
|
+
eventClicked,
|
|
46
|
+
setEventClicked,
|
|
47
|
+
eventHovered,
|
|
48
|
+
setEventHovered,
|
|
49
|
+
view,
|
|
50
|
+
maxEvents,
|
|
51
|
+
events: day.events,
|
|
52
|
+
timestamp: day.timestamp,
|
|
53
|
+
calendarsMap,
|
|
54
|
+
}, ...restKoine }))] }))) }))) })] }));
|
|
55
|
+
};
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
|
-
import type { CalendarsMap } from "./types";
|
|
3
|
-
import type { KoineComponentProps, KoineComponent } from "../types";
|
|
4
|
-
export declare type KoineCalendarLegendProps = {
|
|
5
|
-
toggleCalendarVisibility: (id: string) => void;
|
|
6
|
-
calendarsMap: CalendarsMap;
|
|
7
|
-
};
|
|
8
|
-
export declare type CalendarLegendItemProps = React.ComponentPropsWithoutRef<"div"> & {
|
|
9
|
-
$color: string;
|
|
10
|
-
$empty: boolean;
|
|
11
|
-
disabled: boolean;
|
|
12
|
-
};
|
|
13
|
-
export declare type CalendarLegendProps = KoineComponentProps<KoineCalendarLegendProps, {
|
|
14
|
-
LegendItem?: KoineComponent<CalendarLegendItemProps>;
|
|
15
|
-
LegendItemStatus?: KoineComponent;
|
|
16
|
-
LegendItemLabel?: KoineComponent;
|
|
17
|
-
LegendItemEvents?: KoineComponent;
|
|
18
|
-
}>;
|
|
19
|
-
export declare const KoineCalendarLegend: ({ calendarsMap, toggleCalendarVisibility,
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { CalendarsMap } from "./types";
|
|
3
|
+
import type { KoineComponentProps, KoineComponent } from "../types";
|
|
4
|
+
export declare type KoineCalendarLegendProps = {
|
|
5
|
+
toggleCalendarVisibility: (id: string) => void;
|
|
6
|
+
calendarsMap: CalendarsMap;
|
|
7
|
+
};
|
|
8
|
+
export declare type CalendarLegendItemProps = React.ComponentPropsWithoutRef<"div"> & {
|
|
9
|
+
$color: string;
|
|
10
|
+
$empty: boolean;
|
|
11
|
+
disabled: boolean;
|
|
12
|
+
};
|
|
13
|
+
export declare type CalendarLegendProps = KoineComponentProps<KoineCalendarLegendProps, {
|
|
14
|
+
LegendItem?: KoineComponent<CalendarLegendItemProps>;
|
|
15
|
+
LegendItemStatus?: KoineComponent;
|
|
16
|
+
LegendItemLabel?: KoineComponent;
|
|
17
|
+
LegendItemEvents?: KoineComponent;
|
|
18
|
+
}>;
|
|
19
|
+
export declare const KoineCalendarLegend: ({ calendarsMap, toggleCalendarVisibility, LegendItem, LegendItemStatus, LegendItemLabel, LegendItemEvents, }: CalendarLegendProps) => JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
export const KoineCalendarLegend = ({ calendarsMap = {}, toggleCalendarVisibility, LegendItem = "div", LegendItemStatus = "span", LegendItemLabel = "span", LegendItemEvents = "span", }) => {
|
|
3
|
+
// const sorted = Object.entries(calendarsMap).sort((a, b) => {
|
|
4
|
+
// const { name: nameA } = a[1];
|
|
5
|
+
// const { name: nameB } = b[1];
|
|
6
|
+
// if (nameA < nameB) return -1;
|
|
7
|
+
// else if (nameA > nameB) return 1;
|
|
8
|
+
// else return 0;
|
|
9
|
+
// });
|
|
10
|
+
return (_jsx(_Fragment, { children: Object.entries(calendarsMap).map(([id, calendar]) => (_jsxs(LegendItem, { onClick: () => toggleCalendarVisibility(id), "$color": calendar.color, "$empty": calendar.events === 0, disabled: calendar.events === 0, children: [_jsx(LegendItemStatus, { children: calendar.on ? "\u2b24" : "\u2b58" }), _jsx(LegendItemLabel, { children: calendar.name }), _jsx(LegendItemEvents, { children: calendar.events })] }, "CalendarLegend." + id))) }));
|
|
11
|
+
};
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import type { Calendars, CalendarEventsMap } from "./types";
|
|
2
|
-
declare type GetCalendarsEventsFromGoogleOptions = {
|
|
3
|
-
/** Fall back to `process.env.GOOGLE_CALENDAR_API_KEY */
|
|
4
|
-
apiKey?: string;
|
|
5
|
-
/** Start gethering events from date */
|
|
6
|
-
start: Date;
|
|
7
|
-
/** End gethering events at date */
|
|
8
|
-
end: Date;
|
|
9
|
-
/**
|
|
10
|
-
* The default is the time zone of the calendar
|
|
11
|
-
* @see https://developers.google.com/calendar/api/v3/reference/events/list
|
|
12
|
-
*/
|
|
13
|
-
timeZone?: string;
|
|
14
|
-
/** The calendars settings */
|
|
15
|
-
calendars: Calendars;
|
|
16
|
-
};
|
|
17
|
-
export declare function getCalendarsEventsFromGoogle({ calendars, ...options }: GetCalendarsEventsFromGoogleOptions): Promise<CalendarEventsMap>;
|
|
18
|
-
export {};
|
|
1
|
+
import type { Calendars, CalendarEventsMap } from "./types";
|
|
2
|
+
declare type GetCalendarsEventsFromGoogleOptions = {
|
|
3
|
+
/** Fall back to `process.env.GOOGLE_CALENDAR_API_KEY */
|
|
4
|
+
apiKey?: string;
|
|
5
|
+
/** Start gethering events from date */
|
|
6
|
+
start: Date;
|
|
7
|
+
/** End gethering events at date */
|
|
8
|
+
end: Date;
|
|
9
|
+
/**
|
|
10
|
+
* The default is the time zone of the calendar
|
|
11
|
+
* @see https://developers.google.com/calendar/api/v3/reference/events/list
|
|
12
|
+
*/
|
|
13
|
+
timeZone?: string;
|
|
14
|
+
/** The calendars settings */
|
|
15
|
+
calendars: Calendars;
|
|
16
|
+
};
|
|
17
|
+
export declare function getCalendarsEventsFromGoogle({ calendars, ...options }: GetCalendarsEventsFromGoogleOptions): Promise<CalendarEventsMap>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { arrayToLookup, isString, isUndefined } from "@koine/utils";
|
|
2
|
+
import differenceInDays from "date-fns/differenceInDays";
|
|
3
|
+
import subDays from "date-fns/subDays";
|
|
4
|
+
import { getEventTimestamp, addCalendarEvents } from "./utils";
|
|
5
|
+
const baseURL = "https://www.googleapis.com/calendar/v3/calendars/";
|
|
6
|
+
export async function getCalendarsEventsFromGoogle({ calendars, ...options }) {
|
|
7
|
+
const allEvents = {};
|
|
8
|
+
await Promise.all(calendars.map(async (calendar) => {
|
|
9
|
+
const events = await getCalendarEventsFromGoogle({
|
|
10
|
+
calendar,
|
|
11
|
+
...options,
|
|
12
|
+
});
|
|
13
|
+
addCalendarEvents(events, allEvents);
|
|
14
|
+
}));
|
|
15
|
+
return allEvents;
|
|
16
|
+
}
|
|
17
|
+
async function getCalendarEventsFromGoogle({ apiKey, calendar, timeZone = "", start, end, }) {
|
|
18
|
+
const events = {};
|
|
19
|
+
const params = new URLSearchParams({
|
|
20
|
+
calendarId: calendar.id,
|
|
21
|
+
timeZone,
|
|
22
|
+
singleEvents: "true",
|
|
23
|
+
maxAttendees: "1",
|
|
24
|
+
maxResults: "9999",
|
|
25
|
+
sanitizeHtml: "true",
|
|
26
|
+
timeMin: start.toISOString(),
|
|
27
|
+
timeMax: end.toISOString(),
|
|
28
|
+
key: apiKey || process.env["GOOGLE_CALENDAR_API_KEY"] || "",
|
|
29
|
+
}).toString();
|
|
30
|
+
const url = baseURL + calendar.id + "/events?" + params;
|
|
31
|
+
try {
|
|
32
|
+
const response = await fetch(url, { method: "GET" });
|
|
33
|
+
const data = (await response.json());
|
|
34
|
+
calendar.name = calendar.name || data.summary;
|
|
35
|
+
data.items.forEach((googleEvent) => {
|
|
36
|
+
const event = transformCalendarEventFromGoogle(googleEvent, calendar);
|
|
37
|
+
events[event.uid] = event;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
catch (e) {
|
|
41
|
+
// if (onError) onError(e);
|
|
42
|
+
}
|
|
43
|
+
return events;
|
|
44
|
+
}
|
|
45
|
+
function transformCalendarEventFromGoogle(event, calendar) {
|
|
46
|
+
const created = new Date(event.created);
|
|
47
|
+
const link = event.htmlLink;
|
|
48
|
+
const title = event.summary;
|
|
49
|
+
const status = event.status;
|
|
50
|
+
const start = new Date(event.start.date || event.start.dateTime);
|
|
51
|
+
let end = new Date(event.end.date || event.end.dateTime);
|
|
52
|
+
const color = calendar.color;
|
|
53
|
+
const allDay = isUndefined(event.end.dateTime) && isString(event.end.date);
|
|
54
|
+
const location = event.location || "";
|
|
55
|
+
const description = event.description || ""; // FIXME: he.decode(event.description || '');
|
|
56
|
+
const uid = created.getTime() + "" + start.getTime();
|
|
57
|
+
// multi-days all day events has as end date the date after to what we actually
|
|
58
|
+
// mean, hence we subtract one day. @see https://support.google.com/calendar/thread/10074544/google-calendar-all-day-events-are-showing-up-as-a-24-hr-event-across-time-zones?hl=en
|
|
59
|
+
if (allDay && end > start) {
|
|
60
|
+
end = subDays(end, 1);
|
|
61
|
+
end.setHours(23, 59, 59);
|
|
62
|
+
}
|
|
63
|
+
const days = getDays();
|
|
64
|
+
const daysMap = arrayToLookup(days);
|
|
65
|
+
const multi = days.length > 1;
|
|
66
|
+
function getDays() {
|
|
67
|
+
const from = new Date(start);
|
|
68
|
+
const to = new Date(end);
|
|
69
|
+
const days = [getEventTimestamp(from)];
|
|
70
|
+
while (differenceInDays(to, from)) {
|
|
71
|
+
// console.log(title, differenceInDays(to, from))
|
|
72
|
+
from.setDate(from.getDate() + 1);
|
|
73
|
+
days.push(getEventTimestamp(from));
|
|
74
|
+
}
|
|
75
|
+
return days;
|
|
76
|
+
}
|
|
77
|
+
return {
|
|
78
|
+
calendar,
|
|
79
|
+
created,
|
|
80
|
+
link,
|
|
81
|
+
title,
|
|
82
|
+
status,
|
|
83
|
+
start,
|
|
84
|
+
end,
|
|
85
|
+
days,
|
|
86
|
+
daysMap,
|
|
87
|
+
multi,
|
|
88
|
+
color,
|
|
89
|
+
allDay,
|
|
90
|
+
location,
|
|
91
|
+
description,
|
|
92
|
+
uid,
|
|
93
|
+
};
|
|
94
|
+
}
|
package/Calendar/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from "./CalendarDaygridCell";
|
|
2
|
-
export * from "./CalendarDaygridNav";
|
|
3
|
-
export * from "./CalendarDaygridTable";
|
|
4
|
-
export * from "./CalendarLegend";
|
|
5
|
-
export * from "./useCalendar";
|
|
6
|
-
export * from "./types";
|
|
1
|
+
export * from "./CalendarDaygridCell";
|
|
2
|
+
export * from "./CalendarDaygridNav";
|
|
3
|
+
export * from "./CalendarDaygridTable";
|
|
4
|
+
export * from "./CalendarLegend";
|
|
5
|
+
export * from "./useCalendar";
|
|
6
|
+
export * from "./types";
|
package/Calendar/types.d.ts
CHANGED
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
export declare type Calendar = {
|
|
2
|
-
id: string;
|
|
3
|
-
color: string;
|
|
4
|
-
/**
|
|
5
|
-
* If not defined the name is gathered from the remote calendar response,
|
|
6
|
-
* for google calendars that comes from the `summary` value.
|
|
7
|
-
*/
|
|
8
|
-
name?: string;
|
|
9
|
-
};
|
|
10
|
-
export declare type Calendars = Calendar[];
|
|
11
|
-
export declare type CalendarsMap = Record<Calendar["id"], Required<Calendar> & {
|
|
12
|
-
on?: boolean;
|
|
13
|
-
events?: number;
|
|
14
|
-
}>;
|
|
15
|
-
export declare type CalendarRange = [Date, Date];
|
|
16
|
-
export declare type CalendarView = "month" | "week";
|
|
17
|
-
export declare type CalendarEvent = {
|
|
18
|
-
calendar: Calendar;
|
|
19
|
-
/**
|
|
20
|
-
* List of day timestamps across which the event spans
|
|
21
|
-
*/
|
|
22
|
-
days: number[];
|
|
23
|
-
/**
|
|
24
|
-
* Lookup object for day timestamps across which the event spans
|
|
25
|
-
*/
|
|
26
|
-
daysMap: Record<number, 1>;
|
|
27
|
-
/**
|
|
28
|
-
* Flag for events that spans across multiple days
|
|
29
|
-
*/
|
|
30
|
-
multi: boolean;
|
|
31
|
-
allDay: boolean;
|
|
32
|
-
link: string;
|
|
33
|
-
title: string;
|
|
34
|
-
status: string;
|
|
35
|
-
created: Date;
|
|
36
|
-
start: Date;
|
|
37
|
-
end: Date;
|
|
38
|
-
color: string;
|
|
39
|
-
location: string;
|
|
40
|
-
description: string;
|
|
41
|
-
uid: string;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Calendar events mapped by day `timestamp` number
|
|
45
|
-
*/
|
|
46
|
-
export declare type CalendarEventsByTimestamp = Record<number, CalendarEventsMap>;
|
|
47
|
-
/**
|
|
48
|
-
* Calendar events map by `uid`
|
|
49
|
-
*/
|
|
50
|
-
export declare type CalendarEventsMap = Record<CalendarEvent["uid"], CalendarEvent>;
|
|
51
|
-
export declare type CalendarViewWeeks = CalendarViewWeek[];
|
|
52
|
-
export declare type CalendarViewWeek = {
|
|
53
|
-
props: {
|
|
54
|
-
key: string;
|
|
55
|
-
};
|
|
56
|
-
days: CalendarViewDay[];
|
|
57
|
-
};
|
|
58
|
-
export declare type CalendarViewDay = {
|
|
59
|
-
props: {
|
|
60
|
-
key: string;
|
|
61
|
-
} & CalendarViewDayProps;
|
|
62
|
-
label: string;
|
|
63
|
-
timestamp: string;
|
|
64
|
-
events: CalendarViewEvent[];
|
|
65
|
-
};
|
|
66
|
-
export declare type CalendarViewDayProps = {
|
|
67
|
-
$isToday?: boolean;
|
|
68
|
-
$isOutOfRange?: boolean;
|
|
69
|
-
};
|
|
70
|
-
export declare type CalendarViewEvent = {
|
|
71
|
-
key: string;
|
|
72
|
-
placeholder: true;
|
|
73
|
-
top: number;
|
|
74
|
-
} | (CalendarEvent & CalendarViewDayProps & {
|
|
75
|
-
key: string;
|
|
76
|
-
placeholder?: false;
|
|
77
|
-
top: number;
|
|
78
|
-
width: number;
|
|
79
|
-
firstOfMulti?: boolean;
|
|
80
|
-
isPast?: boolean;
|
|
81
|
-
});
|
|
1
|
+
export declare type Calendar = {
|
|
2
|
+
id: string;
|
|
3
|
+
color: string;
|
|
4
|
+
/**
|
|
5
|
+
* If not defined the name is gathered from the remote calendar response,
|
|
6
|
+
* for google calendars that comes from the `summary` value.
|
|
7
|
+
*/
|
|
8
|
+
name?: string;
|
|
9
|
+
};
|
|
10
|
+
export declare type Calendars = Calendar[];
|
|
11
|
+
export declare type CalendarsMap = Record<Calendar["id"], Required<Calendar> & {
|
|
12
|
+
on?: boolean;
|
|
13
|
+
events?: number;
|
|
14
|
+
}>;
|
|
15
|
+
export declare type CalendarRange = [Date, Date];
|
|
16
|
+
export declare type CalendarView = "month" | "week";
|
|
17
|
+
export declare type CalendarEvent = {
|
|
18
|
+
calendar: Calendar;
|
|
19
|
+
/**
|
|
20
|
+
* List of day timestamps across which the event spans
|
|
21
|
+
*/
|
|
22
|
+
days: number[];
|
|
23
|
+
/**
|
|
24
|
+
* Lookup object for day timestamps across which the event spans
|
|
25
|
+
*/
|
|
26
|
+
daysMap: Record<number, 1>;
|
|
27
|
+
/**
|
|
28
|
+
* Flag for events that spans across multiple days
|
|
29
|
+
*/
|
|
30
|
+
multi: boolean;
|
|
31
|
+
allDay: boolean;
|
|
32
|
+
link: string;
|
|
33
|
+
title: string;
|
|
34
|
+
status: string;
|
|
35
|
+
created: Date;
|
|
36
|
+
start: Date;
|
|
37
|
+
end: Date;
|
|
38
|
+
color: string;
|
|
39
|
+
location: string;
|
|
40
|
+
description: string;
|
|
41
|
+
uid: string;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Calendar events mapped by day `timestamp` number
|
|
45
|
+
*/
|
|
46
|
+
export declare type CalendarEventsByTimestamp = Record<number, CalendarEventsMap>;
|
|
47
|
+
/**
|
|
48
|
+
* Calendar events map by `uid`
|
|
49
|
+
*/
|
|
50
|
+
export declare type CalendarEventsMap = Record<CalendarEvent["uid"], CalendarEvent>;
|
|
51
|
+
export declare type CalendarViewWeeks = CalendarViewWeek[];
|
|
52
|
+
export declare type CalendarViewWeek = {
|
|
53
|
+
props: {
|
|
54
|
+
key: string;
|
|
55
|
+
};
|
|
56
|
+
days: CalendarViewDay[];
|
|
57
|
+
};
|
|
58
|
+
export declare type CalendarViewDay = {
|
|
59
|
+
props: {
|
|
60
|
+
key: string;
|
|
61
|
+
} & CalendarViewDayProps;
|
|
62
|
+
label: string;
|
|
63
|
+
timestamp: string;
|
|
64
|
+
events: CalendarViewEvent[];
|
|
65
|
+
};
|
|
66
|
+
export declare type CalendarViewDayProps = {
|
|
67
|
+
$isToday?: boolean;
|
|
68
|
+
$isOutOfRange?: boolean;
|
|
69
|
+
};
|
|
70
|
+
export declare type CalendarViewEvent = {
|
|
71
|
+
key: string;
|
|
72
|
+
placeholder: true;
|
|
73
|
+
top: number;
|
|
74
|
+
} | (CalendarEvent & CalendarViewDayProps & {
|
|
75
|
+
key: string;
|
|
76
|
+
placeholder?: false;
|
|
77
|
+
top: number;
|
|
78
|
+
width: number;
|
|
79
|
+
firstOfMulti?: boolean;
|
|
80
|
+
isPast?: boolean;
|
|
81
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,50 +1,49 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
4
|
-
import type {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
*
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
*
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
export declare type
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
export declare
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
};
|
|
1
|
+
import type { Calendars, CalendarEvent, CalendarEventsMap, CalendarView } from "./types";
|
|
2
|
+
import type { KoineCalendarLegendProps } from "./CalendarLegend";
|
|
3
|
+
import type { KoineCalendarDaygridNavProps } from "./CalendarDaygridNav";
|
|
4
|
+
import type { KoineCalendarDaygridTableProps } from "./CalendarDaygridTable";
|
|
5
|
+
export declare type UseCalendarProps = {
|
|
6
|
+
/** The locale to format with `date-fns` */
|
|
7
|
+
locale: string;
|
|
8
|
+
/** Calendars infos to use */
|
|
9
|
+
calendars: Calendars;
|
|
10
|
+
/** Fall back to `process.env.GOOGLE_CALENDAR_API_KEY */
|
|
11
|
+
apiKey?: string;
|
|
12
|
+
/** The key is the event `uid` */
|
|
13
|
+
events?: CalendarEventsMap;
|
|
14
|
+
/** It defaults to the first of the current month */
|
|
15
|
+
start?: Date;
|
|
16
|
+
/** It defaults to the last day of the current month */
|
|
17
|
+
end?: Date;
|
|
18
|
+
/**
|
|
19
|
+
* The calendar view
|
|
20
|
+
* @default "month"
|
|
21
|
+
*/
|
|
22
|
+
view?: CalendarView;
|
|
23
|
+
/**
|
|
24
|
+
* The default is the time zone of the calendar
|
|
25
|
+
* @see https://developers.google.com/calendar/api/v3/reference/events/list
|
|
26
|
+
*/
|
|
27
|
+
timeZone?: string;
|
|
28
|
+
onError?: (e: any) => void;
|
|
29
|
+
};
|
|
30
|
+
export declare type UseCalendarReturn = ReturnType<typeof useCalendar>;
|
|
31
|
+
export declare type CalendarsUpdateActionEvents = {
|
|
32
|
+
type: "events";
|
|
33
|
+
payload: Record<string, number>;
|
|
34
|
+
};
|
|
35
|
+
export declare type CalendarsUpdateActionVisibility = {
|
|
36
|
+
type: "visibility";
|
|
37
|
+
payload: string | string[];
|
|
38
|
+
};
|
|
39
|
+
export declare type CalendarsUpdateAction = CalendarsUpdateActionEvents | CalendarsUpdateActionVisibility;
|
|
40
|
+
export declare function useCalendar({ locale, apiKey, calendars, events: initialEvents, start: initialStart, end: initialEnd, view: initialView, timeZone, onError, }: UseCalendarProps): {
|
|
41
|
+
view: "month" | "week";
|
|
42
|
+
eventClicked: CalendarEvent | null;
|
|
43
|
+
setEventClicked: import("react").Dispatch<import("react").SetStateAction<CalendarEvent | null>>;
|
|
44
|
+
eventHovered: CalendarEvent | null;
|
|
45
|
+
setEventHovered: import("react").Dispatch<import("react").SetStateAction<CalendarEvent | null>>;
|
|
46
|
+
getDaygridNavProps: () => KoineCalendarDaygridNavProps;
|
|
47
|
+
getDaygridTableProps: () => KoineCalendarDaygridTableProps;
|
|
48
|
+
getLegendProps: () => KoineCalendarLegendProps;
|
|
49
|
+
};
|