@studio-helga/once-ui-core 1.7.8
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/README.md +54 -0
- package/dist/README.md +54 -0
- package/dist/components/Accordion.d.ts +25 -0
- package/dist/components/Accordion.d.ts.map +1 -0
- package/dist/components/Accordion.js +75 -0
- package/dist/components/Accordion.js.map +1 -0
- package/dist/components/Accordion.module.scss +5 -0
- package/dist/components/AccordionGroup.d.ts +16 -0
- package/dist/components/AccordionGroup.d.ts.map +1 -0
- package/dist/components/AccordionGroup.js +27 -0
- package/dist/components/AccordionGroup.js.map +1 -0
- package/dist/components/Animation.d.ts +34 -0
- package/dist/components/Animation.d.ts.map +1 -0
- package/dist/components/Animation.js +230 -0
- package/dist/components/Animation.js.map +1 -0
- package/dist/components/Arrow.d.ts +11 -0
- package/dist/components/Arrow.d.ts.map +1 -0
- package/dist/components/Arrow.js +33 -0
- package/dist/components/Arrow.js.map +1 -0
- package/dist/components/Arrow.module.scss +39 -0
- package/dist/components/ArrowNavigationContext.d.ts +33 -0
- package/dist/components/ArrowNavigationContext.d.ts.map +1 -0
- package/dist/components/ArrowNavigationContext.js +60 -0
- package/dist/components/ArrowNavigationContext.js.map +1 -0
- package/dist/components/AutoScroll.d.ts +14 -0
- package/dist/components/AutoScroll.d.ts.map +1 -0
- package/dist/components/AutoScroll.js +178 -0
- package/dist/components/AutoScroll.js.map +1 -0
- package/dist/components/AutoScroll.module.scss +9 -0
- package/dist/components/Avatar.d.ts +21 -0
- package/dist/components/Avatar.d.ts.map +1 -0
- package/dist/components/Avatar.js +54 -0
- package/dist/components/Avatar.js.map +1 -0
- package/dist/components/Avatar.module.scss +56 -0
- package/dist/components/AvatarGroup.d.ts +14 -0
- package/dist/components/AvatarGroup.d.ts.map +1 -0
- package/dist/components/AvatarGroup.js +20 -0
- package/dist/components/AvatarGroup.js.map +1 -0
- package/dist/components/AvatarGroup.module.scss +11 -0
- package/dist/components/Background.d.ts +49 -0
- package/dist/components/Background.d.ts.map +1 -0
- package/dist/components/Background.js +72 -0
- package/dist/components/Background.js.map +1 -0
- package/dist/components/Background.module.scss +23 -0
- package/dist/components/Badge.d.ts +17 -0
- package/dist/components/Badge.d.ts.map +1 -0
- package/dist/components/Badge.js +21 -0
- package/dist/components/Badge.js.map +1 -0
- package/dist/components/Badge.module.scss +67 -0
- package/dist/components/Banner.d.ts +6 -0
- package/dist/components/Banner.d.ts.map +1 -0
- package/dist/components/Banner.js +7 -0
- package/dist/components/Banner.js.map +1 -0
- package/dist/components/BlobFx.d.ts +8 -0
- package/dist/components/BlobFx.d.ts.map +1 -0
- package/dist/components/BlobFx.js +82 -0
- package/dist/components/BlobFx.js.map +1 -0
- package/dist/components/BlockQuote.d.ts +21 -0
- package/dist/components/BlockQuote.d.ts.map +1 -0
- package/dist/components/BlockQuote.js +10 -0
- package/dist/components/BlockQuote.js.map +1 -0
- package/dist/components/Button.d.ts +27 -0
- package/dist/components/Button.d.ts.map +1 -0
- package/dist/components/Button.js +25 -0
- package/dist/components/Button.js.map +1 -0
- package/dist/components/Button.module.scss +154 -0
- package/dist/components/Card.d.ts +13 -0
- package/dist/components/Card.d.ts.map +1 -0
- package/dist/components/Card.js +13 -0
- package/dist/components/Card.js.map +1 -0
- package/dist/components/Card.module.scss +7 -0
- package/dist/components/Carousel.d.ts +32 -0
- package/dist/components/Carousel.d.ts.map +1 -0
- package/dist/components/Carousel.js +156 -0
- package/dist/components/Carousel.js.map +1 -0
- package/dist/components/Carousel.module.scss +48 -0
- package/dist/components/CelebrationFx.d.ts +17 -0
- package/dist/components/CelebrationFx.d.ts.map +1 -0
- package/dist/components/CelebrationFx.js +314 -0
- package/dist/components/CelebrationFx.js.map +1 -0
- package/dist/components/Checkbox.d.ts +11 -0
- package/dist/components/Checkbox.d.ts.map +1 -0
- package/dist/components/Checkbox.js +56 -0
- package/dist/components/Checkbox.js.map +1 -0
- package/dist/components/Chip.d.ts +17 -0
- package/dist/components/Chip.d.ts.map +1 -0
- package/dist/components/Chip.js +43 -0
- package/dist/components/Chip.js.map +1 -0
- package/dist/components/Chip.module.scss +39 -0
- package/dist/components/ClientFlex.d.ts +13 -0
- package/dist/components/ClientFlex.d.ts.map +1 -0
- package/dist/components/ClientFlex.js +110 -0
- package/dist/components/ClientFlex.js.map +1 -0
- package/dist/components/ClientGrid.d.ts +13 -0
- package/dist/components/ClientGrid.d.ts.map +1 -0
- package/dist/components/ClientGrid.js +110 -0
- package/dist/components/ClientGrid.js.map +1 -0
- package/dist/components/ColorInput.d.ts +11 -0
- package/dist/components/ColorInput.d.ts.map +1 -0
- package/dist/components/ColorInput.js +78 -0
- package/dist/components/ColorInput.js.map +1 -0
- package/dist/components/Column.d.ts +7 -0
- package/dist/components/Column.d.ts.map +1 -0
- package/dist/components/Column.js +10 -0
- package/dist/components/Column.js.map +1 -0
- package/dist/components/CompareImage.d.ts +16 -0
- package/dist/components/CompareImage.d.ts.map +1 -0
- package/dist/components/CompareImage.js +58 -0
- package/dist/components/CompareImage.js.map +1 -0
- package/dist/components/CompareImage.module.scss +14 -0
- package/dist/components/ContextMenu.d.ts +22 -0
- package/dist/components/ContextMenu.d.ts.map +1 -0
- package/dist/components/ContextMenu.js +224 -0
- package/dist/components/ContextMenu.js.map +1 -0
- package/dist/components/ContextMenu.module.scss +15 -0
- package/dist/components/CountFx.d.ts +15 -0
- package/dist/components/CountFx.d.ts.map +1 -0
- package/dist/components/CountFx.js +203 -0
- package/dist/components/CountFx.js.map +1 -0
- package/dist/components/CountdownFx.d.ts +11 -0
- package/dist/components/CountdownFx.d.ts.map +1 -0
- package/dist/components/CountdownFx.js +49 -0
- package/dist/components/CountdownFx.js.map +1 -0
- package/dist/components/Cursor.d.ts +8 -0
- package/dist/components/Cursor.d.ts.map +1 -0
- package/dist/components/Cursor.js +79 -0
- package/dist/components/Cursor.js.map +1 -0
- package/dist/components/CursorCard.d.ts +13 -0
- package/dist/components/CursorCard.d.ts.map +1 -0
- package/dist/components/CursorCard.js +63 -0
- package/dist/components/CursorCard.js.map +1 -0
- package/dist/components/CursorCard.module.scss +12 -0
- package/dist/components/DateInput.d.ts +18 -0
- package/dist/components/DateInput.d.ts.map +1 -0
- package/dist/components/DateInput.js +43 -0
- package/dist/components/DateInput.js.map +1 -0
- package/dist/components/DatePicker.d.ts +33 -0
- package/dist/components/DatePicker.d.ts.map +1 -0
- package/dist/components/DatePicker.js +487 -0
- package/dist/components/DatePicker.js.map +1 -0
- package/dist/components/DatePicker.module.scss +194 -0
- package/dist/components/DateRangeInput.d.ts +15 -0
- package/dist/components/DateRangeInput.d.ts.map +1 -0
- package/dist/components/DateRangeInput.js +45 -0
- package/dist/components/DateRangeInput.js.map +1 -0
- package/dist/components/DateRangePicker.d.ts +17 -0
- package/dist/components/DateRangePicker.d.ts.map +1 -0
- package/dist/components/DateRangePicker.js +78 -0
- package/dist/components/DateRangePicker.js.map +1 -0
- package/dist/components/Dialog.d.ts +21 -0
- package/dist/components/Dialog.d.ts.map +1 -0
- package/dist/components/Dialog.js +230 -0
- package/dist/components/Dialog.js.map +1 -0
- package/dist/components/Dialog.module.scss +33 -0
- package/dist/components/Dropdown.d.ts +13 -0
- package/dist/components/Dropdown.d.ts.map +1 -0
- package/dist/components/Dropdown.js +21 -0
- package/dist/components/Dropdown.js.map +1 -0
- package/dist/components/DropdownWrapper.d.ts +29 -0
- package/dist/components/DropdownWrapper.d.ts.map +1 -0
- package/dist/components/DropdownWrapper.js +505 -0
- package/dist/components/DropdownWrapper.js.map +1 -0
- package/dist/components/DropdownWrapper.module.scss +15 -0
- package/dist/components/ElementType.d.ts +14 -0
- package/dist/components/ElementType.d.ts.map +1 -0
- package/dist/components/ElementType.js +21 -0
- package/dist/components/ElementType.js.map +1 -0
- package/dist/components/EmojiPicker.d.ts +16 -0
- package/dist/components/EmojiPicker.d.ts.map +1 -0
- package/dist/components/EmojiPicker.js +178 -0
- package/dist/components/EmojiPicker.js.map +1 -0
- package/dist/components/EmojiPicker.module.scss +14 -0
- package/dist/components/EmojiPickerDropdown.d.ts +11 -0
- package/dist/components/EmojiPickerDropdown.d.ts.map +1 -0
- package/dist/components/EmojiPickerDropdown.js +14 -0
- package/dist/components/EmojiPickerDropdown.js.map +1 -0
- package/dist/components/Fade.d.ts +19 -0
- package/dist/components/Fade.d.ts.map +1 -0
- package/dist/components/Fade.js +43 -0
- package/dist/components/Fade.js.map +1 -0
- package/dist/components/Fade.module.scss +6 -0
- package/dist/components/FadingLettersFx.d.ts +15 -0
- package/dist/components/FadingLettersFx.d.ts.map +1 -0
- package/dist/components/FadingLettersFx.js +27 -0
- package/dist/components/FadingLettersFx.js.map +1 -0
- package/dist/components/FadingLettersFx.module.scss +71 -0
- package/dist/components/Feedback.d.ts +16 -0
- package/dist/components/Feedback.d.ts.map +1 -0
- package/dist/components/Feedback.js +16 -0
- package/dist/components/Feedback.js.map +1 -0
- package/dist/components/Flex.d.ts +11 -0
- package/dist/components/Flex.d.ts.map +1 -0
- package/dist/components/Flex.js +31 -0
- package/dist/components/Flex.js.map +1 -0
- package/dist/components/FlipFx.d.ts +17 -0
- package/dist/components/FlipFx.d.ts.map +1 -0
- package/dist/components/FlipFx.js +76 -0
- package/dist/components/FlipFx.js.map +1 -0
- package/dist/components/FocusTrap.d.ts +16 -0
- package/dist/components/FocusTrap.d.ts.map +1 -0
- package/dist/components/FocusTrap.js +87 -0
- package/dist/components/FocusTrap.js.map +1 -0
- package/dist/components/GlitchFx.d.ts +12 -0
- package/dist/components/GlitchFx.d.ts.map +1 -0
- package/dist/components/GlitchFx.js +41 -0
- package/dist/components/GlitchFx.js.map +1 -0
- package/dist/components/GlitchFx.module.scss +92 -0
- package/dist/components/Grid.d.ts +11 -0
- package/dist/components/Grid.d.ts.map +1 -0
- package/dist/components/Grid.js +32 -0
- package/dist/components/Grid.js.map +1 -0
- package/dist/components/Heading.d.ts +9 -0
- package/dist/components/Heading.d.ts.map +1 -0
- package/dist/components/Heading.js +50 -0
- package/dist/components/Heading.js.map +1 -0
- package/dist/components/HoloFx.d.ts +32 -0
- package/dist/components/HoloFx.d.ts.map +1 -0
- package/dist/components/HoloFx.js +90 -0
- package/dist/components/HoloFx.js.map +1 -0
- package/dist/components/HoloFx.module.scss +32 -0
- package/dist/components/Hover.d.ts +14 -0
- package/dist/components/Hover.d.ts.map +1 -0
- package/dist/components/Hover.js +99 -0
- package/dist/components/Hover.js.map +1 -0
- package/dist/components/Hover.module.scss +12 -0
- package/dist/components/HoverCard.d.ts +5 -0
- package/dist/components/HoverCard.d.ts.map +1 -0
- package/dist/components/HoverCard.js +10 -0
- package/dist/components/HoverCard.js.map +1 -0
- package/dist/components/HoverCard.module.scss +12 -0
- package/dist/components/Icon.d.ts +18 -0
- package/dist/components/Icon.d.ts.map +1 -0
- package/dist/components/Icon.js +35 -0
- package/dist/components/Icon.js.map +1 -0
- package/dist/components/Icon.module.scss +19 -0
- package/dist/components/IconButton.d.ts +23 -0
- package/dist/components/IconButton.d.ts.map +1 -0
- package/dist/components/IconButton.js +23 -0
- package/dist/components/IconButton.js.map +1 -0
- package/dist/components/IconButton.module.scss +34 -0
- package/dist/components/InfiniteScroll.d.ts +16 -0
- package/dist/components/InfiniteScroll.d.ts.map +1 -0
- package/dist/components/InfiniteScroll.js +52 -0
- package/dist/components/InfiniteScroll.js.map +1 -0
- package/dist/components/InlineCode.d.ts +10 -0
- package/dist/components/InlineCode.d.ts.map +1 -0
- package/dist/components/InlineCode.js +12 -0
- package/dist/components/InlineCode.js.map +1 -0
- package/dist/components/InlineCode.module.scss +5 -0
- package/dist/components/Input.d.ts +24 -0
- package/dist/components/Input.d.ts.map +1 -0
- package/dist/components/Input.js +82 -0
- package/dist/components/Input.js.map +1 -0
- package/dist/components/Input.module.scss +196 -0
- package/dist/components/InteractiveDetails.d.ts +15 -0
- package/dist/components/InteractiveDetails.d.ts.map +1 -0
- package/dist/components/InteractiveDetails.js +10 -0
- package/dist/components/InteractiveDetails.js.map +1 -0
- package/dist/components/Kbd.d.ts +12 -0
- package/dist/components/Kbd.d.ts.map +1 -0
- package/dist/components/Kbd.js +7 -0
- package/dist/components/Kbd.js.map +1 -0
- package/dist/components/LetterFx.d.ts +13 -0
- package/dist/components/LetterFx.d.ts.map +1 -0
- package/dist/components/LetterFx.js +80 -0
- package/dist/components/LetterFx.js.map +1 -0
- package/dist/components/Line.d.ts +9 -0
- package/dist/components/Line.d.ts.map +1 -0
- package/dist/components/Line.js +10 -0
- package/dist/components/Line.js.map +1 -0
- package/dist/components/List.d.ts +11 -0
- package/dist/components/List.d.ts.map +1 -0
- package/dist/components/List.js +13 -0
- package/dist/components/List.js.map +1 -0
- package/dist/components/List.module.scss +5 -0
- package/dist/components/ListItem.d.ts +10 -0
- package/dist/components/ListItem.d.ts.map +1 -0
- package/dist/components/ListItem.js +13 -0
- package/dist/components/ListItem.js.map +1 -0
- package/dist/components/Logo.d.ts +18 -0
- package/dist/components/Logo.d.ts.map +1 -0
- package/dist/components/Logo.js +99 -0
- package/dist/components/Logo.js.map +1 -0
- package/dist/components/LogoCloud.d.ts +14 -0
- package/dist/components/LogoCloud.d.ts.map +1 -0
- package/dist/components/LogoCloud.js +38 -0
- package/dist/components/LogoCloud.js.map +1 -0
- package/dist/components/LogoCloud.module.scss +42 -0
- package/dist/components/Mask.d.ts +15 -0
- package/dist/components/Mask.d.ts.map +1 -0
- package/dist/components/Mask.js +107 -0
- package/dist/components/Mask.js.map +1 -0
- package/dist/components/Mask.module.scss +8 -0
- package/dist/components/MasonryGrid.d.ts +22 -0
- package/dist/components/MasonryGrid.d.ts.map +1 -0
- package/dist/components/MasonryGrid.js +53 -0
- package/dist/components/MasonryGrid.js.map +1 -0
- package/dist/components/MasonryGrid.module.scss +199 -0
- package/dist/components/MatrixFx.d.ts +27 -0
- package/dist/components/MatrixFx.d.ts.map +1 -0
- package/dist/components/MatrixFx.js +799 -0
- package/dist/components/MatrixFx.js.map +1 -0
- package/dist/components/Media.d.ts +26 -0
- package/dist/components/Media.d.ts.map +1 -0
- package/dist/components/Media.js +112 -0
- package/dist/components/Media.js.map +1 -0
- package/dist/components/Modal.d.ts +11 -0
- package/dist/components/Modal.d.ts.map +1 -0
- package/dist/components/Modal.js +72 -0
- package/dist/components/Modal.js.map +1 -0
- package/dist/components/NavIcon.d.ts +11 -0
- package/dist/components/NavIcon.d.ts.map +1 -0
- package/dist/components/NavIcon.js +11 -0
- package/dist/components/NavIcon.js.map +1 -0
- package/dist/components/NavIcon.module.scss +25 -0
- package/dist/components/NumberInput.d.ts +13 -0
- package/dist/components/NumberInput.d.ts.map +1 -0
- package/dist/components/NumberInput.js +44 -0
- package/dist/components/NumberInput.js.map +1 -0
- package/dist/components/NumberInput.module.scss +18 -0
- package/dist/components/OTPInput.d.ts +13 -0
- package/dist/components/OTPInput.d.ts.map +1 -0
- package/dist/components/OTPInput.js +71 -0
- package/dist/components/OTPInput.js.map +1 -0
- package/dist/components/OTPInput.module.scss +26 -0
- package/dist/components/OgCard.d.ts +34 -0
- package/dist/components/OgCard.d.ts.map +1 -0
- package/dist/components/OgCard.js +102 -0
- package/dist/components/OgCard.js.map +1 -0
- package/dist/components/Option.d.ts +21 -0
- package/dist/components/Option.d.ts.map +1 -0
- package/dist/components/Option.js +93 -0
- package/dist/components/Option.js.map +1 -0
- package/dist/components/Option.module.scss +47 -0
- package/dist/components/Particle.d.ts +21 -0
- package/dist/components/Particle.d.ts.map +1 -0
- package/dist/components/Particle.js +140 -0
- package/dist/components/Particle.js.map +1 -0
- package/dist/components/PasswordInput.d.ts +4 -0
- package/dist/components/PasswordInput.d.ts.map +1 -0
- package/dist/components/PasswordInput.js +12 -0
- package/dist/components/PasswordInput.js.map +1 -0
- package/dist/components/ProgressBar.d.ts +15 -0
- package/dist/components/ProgressBar.d.ts.map +1 -0
- package/dist/components/ProgressBar.js +12 -0
- package/dist/components/ProgressBar.js.map +1 -0
- package/dist/components/Pulse.d.ts +13 -0
- package/dist/components/Pulse.d.ts.map +1 -0
- package/dist/components/Pulse.js +11 -0
- package/dist/components/Pulse.js.map +1 -0
- package/dist/components/Pulse.module.scss +22 -0
- package/dist/components/RadioButton.d.ts +15 -0
- package/dist/components/RadioButton.d.ts.map +1 -0
- package/dist/components/RadioButton.js +45 -0
- package/dist/components/RadioButton.js.map +1 -0
- package/dist/components/RevealFx.d.ts +16 -0
- package/dist/components/RevealFx.d.ts.map +1 -0
- package/dist/components/RevealFx.js +83 -0
- package/dist/components/RevealFx.js.map +1 -0
- package/dist/components/RevealFx.module.scss +27 -0
- package/dist/components/Row.d.ts +7 -0
- package/dist/components/Row.d.ts.map +1 -0
- package/dist/components/Row.js +10 -0
- package/dist/components/Row.js.map +1 -0
- package/dist/components/ScrollContainer.d.ts +9 -0
- package/dist/components/ScrollContainer.d.ts.map +1 -0
- package/dist/components/ScrollContainer.js +67 -0
- package/dist/components/ScrollContainer.js.map +1 -0
- package/dist/components/ScrollLock.d.ts +8 -0
- package/dist/components/ScrollLock.d.ts.map +1 -0
- package/dist/components/ScrollLock.js +112 -0
- package/dist/components/ScrollLock.js.map +1 -0
- package/dist/components/ScrollToTop.d.ts +7 -0
- package/dist/components/ScrollToTop.d.ts.map +1 -0
- package/dist/components/ScrollToTop.js +24 -0
- package/dist/components/ScrollToTop.js.map +1 -0
- package/dist/components/ScrollToTop.module.scss +11 -0
- package/dist/components/Scroller.d.ts +14 -0
- package/dist/components/Scroller.d.ts.map +1 -0
- package/dist/components/Scroller.js +100 -0
- package/dist/components/Scroller.js.map +1 -0
- package/dist/components/Scroller.module.scss +20 -0
- package/dist/components/SegmentedControl.d.ts +18 -0
- package/dist/components/SegmentedControl.d.ts.map +1 -0
- package/dist/components/SegmentedControl.js +70 -0
- package/dist/components/SegmentedControl.js.map +1 -0
- package/dist/components/Select.d.ts +19 -0
- package/dist/components/Select.d.ts.map +1 -0
- package/dist/components/Select.js +170 -0
- package/dist/components/Select.js.map +1 -0
- package/dist/components/ServerFlex.d.ts +12 -0
- package/dist/components/ServerFlex.d.ts.map +1 -0
- package/dist/components/ServerFlex.js +282 -0
- package/dist/components/ServerFlex.js.map +1 -0
- package/dist/components/ServerGrid.d.ts +13 -0
- package/dist/components/ServerGrid.d.ts.map +1 -0
- package/dist/components/ServerGrid.js +207 -0
- package/dist/components/ServerGrid.js.map +1 -0
- package/dist/components/SharedInteractiveStyles.module.scss +91 -0
- package/dist/components/ShineFx.d.ts +13 -0
- package/dist/components/ShineFx.d.ts.map +1 -0
- package/dist/components/ShineFx.js +19 -0
- package/dist/components/ShineFx.js.map +1 -0
- package/dist/components/ShineFx.module.scss +50 -0
- package/dist/components/Skeleton.d.ts +13 -0
- package/dist/components/Skeleton.d.ts.map +1 -0
- package/dist/components/Skeleton.js +12 -0
- package/dist/components/Skeleton.js.map +1 -0
- package/dist/components/Skeleton.module.scss +120 -0
- package/dist/components/Slider.d.ts +17 -0
- package/dist/components/Slider.d.ts.map +1 -0
- package/dist/components/Slider.js +29 -0
- package/dist/components/Slider.js.map +1 -0
- package/dist/components/Slider.module.scss +75 -0
- package/dist/components/SmartLink.d.ts +18 -0
- package/dist/components/SmartLink.d.ts.map +1 -0
- package/dist/components/SmartLink.js +36 -0
- package/dist/components/SmartLink.js.map +1 -0
- package/dist/components/Spinner.d.ts +11 -0
- package/dist/components/Spinner.d.ts.map +1 -0
- package/dist/components/Spinner.js +11 -0
- package/dist/components/Spinner.js.map +1 -0
- package/dist/components/Spinner.module.scss +71 -0
- package/dist/components/SplitView.d.ts +16 -0
- package/dist/components/SplitView.d.ts.map +1 -0
- package/dist/components/SplitView.js +80 -0
- package/dist/components/SplitView.js.map +1 -0
- package/dist/components/SplitView.module.scss +18 -0
- package/dist/components/StatusIndicator.d.ts +12 -0
- package/dist/components/StatusIndicator.d.ts.map +1 -0
- package/dist/components/StatusIndicator.js +11 -0
- package/dist/components/StatusIndicator.js.map +1 -0
- package/dist/components/StatusIndicator.module.scss +72 -0
- package/dist/components/StyleOverlay.d.ts +10 -0
- package/dist/components/StyleOverlay.d.ts.map +1 -0
- package/dist/components/StyleOverlay.js +17 -0
- package/dist/components/StyleOverlay.js.map +1 -0
- package/dist/components/StyleOverlay.module.scss +18 -0
- package/dist/components/StylePanel.d.ts +8 -0
- package/dist/components/StylePanel.d.ts.map +1 -0
- package/dist/components/StylePanel.js +193 -0
- package/dist/components/StylePanel.js.map +1 -0
- package/dist/components/StylePanel.module.scss +127 -0
- package/dist/components/Swiper.d.ts +17 -0
- package/dist/components/Swiper.d.ts.map +1 -0
- package/dist/components/Swiper.js +170 -0
- package/dist/components/Swiper.js.map +1 -0
- package/dist/components/Swiper.module.scss +31 -0
- package/dist/components/Switch.d.ts +17 -0
- package/dist/components/Switch.d.ts.map +1 -0
- package/dist/components/Switch.js +33 -0
- package/dist/components/Switch.js.map +1 -0
- package/dist/components/Switch.module.scss +102 -0
- package/dist/components/Table.d.ts +16 -0
- package/dist/components/Table.d.ts.map +1 -0
- package/dist/components/Table.js +44 -0
- package/dist/components/Table.js.map +1 -0
- package/dist/components/Table.module.scss +5 -0
- package/dist/components/Tag.d.ts +16 -0
- package/dist/components/Tag.d.ts.map +1 -0
- package/dist/components/Tag.js +14 -0
- package/dist/components/Tag.js.map +1 -0
- package/dist/components/Tag.module.scss +10 -0
- package/dist/components/TagInput.d.ts +9 -0
- package/dist/components/TagInput.d.ts.map +1 -0
- package/dist/components/TagInput.js +36 -0
- package/dist/components/TagInput.js.map +1 -0
- package/dist/components/Text.d.ts +9 -0
- package/dist/components/Text.d.ts.map +1 -0
- package/dist/components/Text.js +50 -0
- package/dist/components/Text.js.map +1 -0
- package/dist/components/Textarea.d.ts +24 -0
- package/dist/components/Textarea.d.ts.map +1 -0
- package/dist/components/Textarea.js +109 -0
- package/dist/components/Textarea.js.map +1 -0
- package/dist/components/ThemeInit.d.ts +20 -0
- package/dist/components/ThemeInit.d.ts.map +1 -0
- package/dist/components/ThemeInit.js +46 -0
- package/dist/components/ThemeInit.js.map +1 -0
- package/dist/components/ThemeSwitcher.d.ts +4 -0
- package/dist/components/ThemeSwitcher.d.ts.map +1 -0
- package/dist/components/ThemeSwitcher.js +21 -0
- package/dist/components/ThemeSwitcher.js.map +1 -0
- package/dist/components/TiltFx.d.ts +10 -0
- package/dist/components/TiltFx.d.ts.map +1 -0
- package/dist/components/TiltFx.js +67 -0
- package/dist/components/TiltFx.js.map +1 -0
- package/dist/components/TiltFx.module.scss +11 -0
- package/dist/components/Timeline.d.ts +18 -0
- package/dist/components/Timeline.d.ts.map +1 -0
- package/dist/components/Timeline.js +72 -0
- package/dist/components/Timeline.js.map +1 -0
- package/dist/components/Toast.d.ts +12 -0
- package/dist/components/Toast.d.ts.map +1 -0
- package/dist/components/Toast.js +29 -0
- package/dist/components/Toast.js.map +1 -0
- package/dist/components/Toast.module.scss +11 -0
- package/dist/components/Toaster.d.ts +19 -0
- package/dist/components/Toaster.d.ts.map +1 -0
- package/dist/components/Toaster.js +47 -0
- package/dist/components/Toaster.js.map +1 -0
- package/dist/components/Toaster.module.scss +58 -0
- package/dist/components/ToggleButton.d.ts +25 -0
- package/dist/components/ToggleButton.d.ts.map +1 -0
- package/dist/components/ToggleButton.js +20 -0
- package/dist/components/ToggleButton.js.map +1 -0
- package/dist/components/ToggleButton.module.scss +73 -0
- package/dist/components/Tooltip.d.ts +13 -0
- package/dist/components/Tooltip.d.ts.map +1 -0
- package/dist/components/Tooltip.js +15 -0
- package/dist/components/Tooltip.js.map +1 -0
- package/dist/components/Tooltip.module.scss +14 -0
- package/dist/components/TypeFx.d.ts +15 -0
- package/dist/components/TypeFx.d.ts.map +1 -0
- package/dist/components/TypeFx.js +84 -0
- package/dist/components/TypeFx.js.map +1 -0
- package/dist/components/User.d.ts +16 -0
- package/dist/components/User.d.ts.map +1 -0
- package/dist/components/User.js +13 -0
- package/dist/components/User.js.map +1 -0
- package/dist/components/UserMenu.d.ts +13 -0
- package/dist/components/UserMenu.d.ts.map +1 -0
- package/dist/components/UserMenu.js +13 -0
- package/dist/components/UserMenu.js.map +1 -0
- package/dist/components/UserMenu.module.scss +14 -0
- package/dist/components/WeatherFx.d.ts +18 -0
- package/dist/components/WeatherFx.d.ts.map +1 -0
- package/dist/components/WeatherFx.js +864 -0
- package/dist/components/WeatherFx.js.map +1 -0
- package/dist/components/index.d.ts +121 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +121 -0
- package/dist/components/index.js.map +1 -0
- package/dist/contexts/DataThemeProvider.d.ts +26 -0
- package/dist/contexts/DataThemeProvider.d.ts.map +1 -0
- package/dist/contexts/DataThemeProvider.js +103 -0
- package/dist/contexts/DataThemeProvider.js.map +1 -0
- package/dist/contexts/IconProvider.d.ts +12 -0
- package/dist/contexts/IconProvider.d.ts.map +1 -0
- package/dist/contexts/IconProvider.js +20 -0
- package/dist/contexts/IconProvider.js.map +1 -0
- package/dist/contexts/LayoutProvider.d.ts +27 -0
- package/dist/contexts/LayoutProvider.d.ts.map +1 -0
- package/dist/contexts/LayoutProvider.js +96 -0
- package/dist/contexts/LayoutProvider.js.map +1 -0
- package/dist/contexts/ThemeProvider.d.ts +49 -0
- package/dist/contexts/ThemeProvider.d.ts.map +1 -0
- package/dist/contexts/ThemeProvider.js +285 -0
- package/dist/contexts/ThemeProvider.js.map +1 -0
- package/dist/contexts/ToastProvider.d.ts +24 -0
- package/dist/contexts/ToastProvider.d.ts.map +1 -0
- package/dist/contexts/ToastProvider.js +34 -0
- package/dist/contexts/ToastProvider.js.map +1 -0
- package/dist/contexts/index.d.ts +6 -0
- package/dist/contexts/index.d.ts.map +1 -0
- package/dist/contexts/index.js +6 -0
- package/dist/contexts/index.js.map +1 -0
- package/dist/css/styles.css +1 -0
- package/dist/css/styles.css.map +1 -0
- package/dist/css/tokens.css +1 -0
- package/dist/css/tokens.css.map +1 -0
- package/dist/data/emoji-data.json +16062 -0
- package/dist/hooks/index.d.ts +8 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +8 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/useArrowNavigation.d.ts +23 -0
- package/dist/hooks/useArrowNavigation.d.ts.map +1 -0
- package/dist/hooks/useArrowNavigation.js +205 -0
- package/dist/hooks/useArrowNavigation.js.map +1 -0
- package/dist/hooks/useDebounce.d.ts +2 -0
- package/dist/hooks/useDebounce.d.ts.map +1 -0
- package/dist/hooks/useDebounce.js +15 -0
- package/dist/hooks/useDebounce.js.map +1 -0
- package/dist/hooks/useFetchOg.d.ts +17 -0
- package/dist/hooks/useFetchOg.d.ts.map +1 -0
- package/dist/hooks/useFetchOg.js +63 -0
- package/dist/hooks/useFetchOg.js.map +1 -0
- package/dist/hooks/useHeadingLinks.d.ts +6 -0
- package/dist/hooks/useHeadingLinks.d.ts.map +1 -0
- package/dist/hooks/useHeadingLinks.js +17 -0
- package/dist/hooks/useHeadingLinks.js.map +1 -0
- package/dist/hooks/useInViewport.d.ts +3 -0
- package/dist/hooks/useInViewport.d.ts.map +1 -0
- package/dist/hooks/useInViewport.js +19 -0
- package/dist/hooks/useInViewport.js.map +1 -0
- package/dist/hooks/useReducedMotion.d.ts +8 -0
- package/dist/hooks/useReducedMotion.d.ts.map +1 -0
- package/dist/hooks/useReducedMotion.js +44 -0
- package/dist/hooks/useReducedMotion.js.map +1 -0
- package/dist/hooks/useResponsiveClasses.d.ts +9 -0
- package/dist/hooks/useResponsiveClasses.d.ts.map +1 -0
- package/dist/hooks/useResponsiveClasses.js +250 -0
- package/dist/hooks/useResponsiveClasses.js.map +1 -0
- package/dist/hooks/useStreamingData.d.ts +24 -0
- package/dist/hooks/useStreamingData.d.ts.map +1 -0
- package/dist/hooks/useStreamingData.js +89 -0
- package/dist/hooks/useStreamingData.js.map +1 -0
- package/dist/hooks/useStreamingViewport.d.ts +25 -0
- package/dist/hooks/useStreamingViewport.d.ts.map +1 -0
- package/dist/hooks/useStreamingViewport.js +120 -0
- package/dist/hooks/useStreamingViewport.js.map +1 -0
- package/dist/icons.d.ts +5 -0
- package/dist/icons.d.ts.map +1 -0
- package/dist/icons.js +56 -0
- package/dist/icons.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces.d.ts +177 -0
- package/dist/interfaces.d.ts.map +1 -0
- package/dist/interfaces.js +2 -0
- package/dist/interfaces.js.map +1 -0
- package/dist/modules/code/CodeBlock.d.ts +6 -0
- package/dist/modules/code/CodeBlock.d.ts.map +1 -0
- package/dist/modules/code/CodeBlock.impl.d.ts +34 -0
- package/dist/modules/code/CodeBlock.impl.d.ts.map +1 -0
- package/dist/modules/code/CodeBlock.impl.js +497 -0
- package/dist/modules/code/CodeBlock.impl.js.map +1 -0
- package/dist/modules/code/CodeBlock.js +14 -0
- package/dist/modules/code/CodeBlock.js.map +1 -0
- package/dist/modules/code/CodeBlock.module.scss +43 -0
- package/dist/modules/code/CodeDiff.css +175 -0
- package/dist/modules/code/CodeHighlight.css +116 -0
- package/dist/modules/code/LineNumber.css +34 -0
- package/dist/modules/data/BarChart.d.ts +6 -0
- package/dist/modules/data/BarChart.d.ts.map +1 -0
- package/dist/modules/data/BarChart.impl.d.ts +12 -0
- package/dist/modules/data/BarChart.impl.d.ts.map +1 -0
- package/dist/modules/data/BarChart.impl.js +129 -0
- package/dist/modules/data/BarChart.impl.js.map +1 -0
- package/dist/modules/data/BarChart.js +14 -0
- package/dist/modules/data/BarChart.js.map +1 -0
- package/dist/modules/data/ChartHeader.d.ts +14 -0
- package/dist/modules/data/ChartHeader.d.ts.map +1 -0
- package/dist/modules/data/ChartHeader.js +116 -0
- package/dist/modules/data/ChartHeader.js.map +1 -0
- package/dist/modules/data/ChartStatus.d.ts +10 -0
- package/dist/modules/data/ChartStatus.d.ts.map +1 -0
- package/dist/modules/data/ChartStatus.js +10 -0
- package/dist/modules/data/ChartStatus.js.map +1 -0
- package/dist/modules/data/DataTooltip.d.ts +16 -0
- package/dist/modules/data/DataTooltip.d.ts.map +1 -0
- package/dist/modules/data/DataTooltip.js +16 -0
- package/dist/modules/data/DataTooltip.js.map +1 -0
- package/dist/modules/data/Gauge.module.css +27 -0
- package/dist/modules/data/Gradient.d.ts +32 -0
- package/dist/modules/data/Gradient.d.ts.map +1 -0
- package/dist/modules/data/Gradient.js +56 -0
- package/dist/modules/data/Gradient.js.map +1 -0
- package/dist/modules/data/Legend.d.ts +15 -0
- package/dist/modules/data/Legend.d.ts.map +1 -0
- package/dist/modules/data/Legend.js +69 -0
- package/dist/modules/data/Legend.js.map +1 -0
- package/dist/modules/data/LineBarChart.d.ts +6 -0
- package/dist/modules/data/LineBarChart.d.ts.map +1 -0
- package/dist/modules/data/LineBarChart.impl.d.ts +12 -0
- package/dist/modules/data/LineBarChart.impl.d.ts.map +1 -0
- package/dist/modules/data/LineBarChart.impl.js +124 -0
- package/dist/modules/data/LineBarChart.impl.js.map +1 -0
- package/dist/modules/data/LineBarChart.js +14 -0
- package/dist/modules/data/LineBarChart.js.map +1 -0
- package/dist/modules/data/LineChart.d.ts +6 -0
- package/dist/modules/data/LineChart.d.ts.map +1 -0
- package/dist/modules/data/LineChart.impl.d.ts +17 -0
- package/dist/modules/data/LineChart.impl.d.ts.map +1 -0
- package/dist/modules/data/LineChart.impl.js +137 -0
- package/dist/modules/data/LineChart.impl.js.map +1 -0
- package/dist/modules/data/LineChart.js +14 -0
- package/dist/modules/data/LineChart.js.map +1 -0
- package/dist/modules/data/LinearGauge.d.ts +18 -0
- package/dist/modules/data/LinearGauge.d.ts.map +1 -0
- package/dist/modules/data/LinearGauge.js +78 -0
- package/dist/modules/data/LinearGauge.js.map +1 -0
- package/dist/modules/data/PieChart.d.ts +6 -0
- package/dist/modules/data/PieChart.d.ts.map +1 -0
- package/dist/modules/data/PieChart.impl.d.ts +18 -0
- package/dist/modules/data/PieChart.impl.d.ts.map +1 -0
- package/dist/modules/data/PieChart.impl.js +100 -0
- package/dist/modules/data/PieChart.impl.js.map +1 -0
- package/dist/modules/data/PieChart.js +14 -0
- package/dist/modules/data/PieChart.js.map +1 -0
- package/dist/modules/data/RadialGauge.d.ts +25 -0
- package/dist/modules/data/RadialGauge.d.ts.map +1 -0
- package/dist/modules/data/RadialGauge.js +94 -0
- package/dist/modules/data/RadialGauge.js.map +1 -0
- package/dist/modules/data/Swatch.d.ts +9 -0
- package/dist/modules/data/Swatch.d.ts.map +1 -0
- package/dist/modules/data/Swatch.js +44 -0
- package/dist/modules/data/Swatch.js.map +1 -0
- package/dist/modules/data/index.d.ts +14 -0
- package/dist/modules/data/index.d.ts.map +1 -0
- package/dist/modules/data/index.js +14 -0
- package/dist/modules/data/index.js.map +1 -0
- package/dist/modules/data/interfaces.d.ts +53 -0
- package/dist/modules/data/interfaces.d.ts.map +1 -0
- package/dist/modules/data/interfaces.js +2 -0
- package/dist/modules/data/interfaces.js.map +1 -0
- package/dist/modules/data/rechartsLoader.d.ts +2 -0
- package/dist/modules/data/rechartsLoader.d.ts.map +1 -0
- package/dist/modules/data/rechartsLoader.js +15 -0
- package/dist/modules/data/rechartsLoader.js.map +1 -0
- package/dist/modules/data/utils/colorDistribution.d.ts +10 -0
- package/dist/modules/data/utils/colorDistribution.d.ts.map +1 -0
- package/dist/modules/data/utils/colorDistribution.js +46 -0
- package/dist/modules/data/utils/colorDistribution.js.map +1 -0
- package/dist/modules/data/utils/formatDate.d.ts +12 -0
- package/dist/modules/data/utils/formatDate.d.ts.map +1 -0
- package/dist/modules/data/utils/formatDate.js +30 -0
- package/dist/modules/data/utils/formatDate.js.map +1 -0
- package/dist/modules/index.d.ts +6 -0
- package/dist/modules/index.d.ts.map +1 -0
- package/dist/modules/index.js +7 -0
- package/dist/modules/index.js.map +1 -0
- package/dist/modules/media/MediaUpload.d.ts +6 -0
- package/dist/modules/media/MediaUpload.d.ts.map +1 -0
- package/dist/modules/media/MediaUpload.impl.d.ts +24 -0
- package/dist/modules/media/MediaUpload.impl.d.ts.map +1 -0
- package/dist/modules/media/MediaUpload.impl.js +106 -0
- package/dist/modules/media/MediaUpload.impl.js.map +1 -0
- package/dist/modules/media/MediaUpload.js +14 -0
- package/dist/modules/media/MediaUpload.js.map +1 -0
- package/dist/modules/media/MediaUpload.module.scss +24 -0
- package/dist/modules/navigation/HeadingLink.d.ts +11 -0
- package/dist/modules/navigation/HeadingLink.d.ts.map +1 -0
- package/dist/modules/navigation/HeadingLink.js +39 -0
- package/dist/modules/navigation/HeadingLink.js.map +1 -0
- package/dist/modules/navigation/HeadingLink.module.scss +15 -0
- package/dist/modules/navigation/HeadingNav.d.ts +8 -0
- package/dist/modules/navigation/HeadingNav.d.ts.map +1 -0
- package/dist/modules/navigation/HeadingNav.js +168 -0
- package/dist/modules/navigation/HeadingNav.js.map +1 -0
- package/dist/modules/navigation/Kbar.d.ts +34 -0
- package/dist/modules/navigation/Kbar.d.ts.map +1 -0
- package/dist/modules/navigation/Kbar.js +192 -0
- package/dist/modules/navigation/Kbar.js.map +1 -0
- package/dist/modules/navigation/Kbar.module.scss +60 -0
- package/dist/modules/navigation/MegaMenu.d.ts +28 -0
- package/dist/modules/navigation/MegaMenu.d.ts.map +1 -0
- package/dist/modules/navigation/MegaMenu.js +182 -0
- package/dist/modules/navigation/MegaMenu.js.map +1 -0
- package/dist/modules/navigation/MegaMenu.module.scss +14 -0
- package/dist/modules/navigation/MobileMegaMenu.d.ts +28 -0
- package/dist/modules/navigation/MobileMegaMenu.d.ts.map +1 -0
- package/dist/modules/navigation/MobileMegaMenu.js +22 -0
- package/dist/modules/navigation/MobileMegaMenu.js.map +1 -0
- package/dist/modules/navigation/index.d.ts +6 -0
- package/dist/modules/navigation/index.d.ts.map +1 -0
- package/dist/modules/navigation/index.js +6 -0
- package/dist/modules/navigation/index.js.map +1 -0
- package/dist/modules/seo/Meta.d.ts +29 -0
- package/dist/modules/seo/Meta.d.ts.map +1 -0
- package/dist/modules/seo/Meta.js +53 -0
- package/dist/modules/seo/Meta.js.map +1 -0
- package/dist/modules/seo/Schema.d.ts +19 -0
- package/dist/modules/seo/Schema.d.ts.map +1 -0
- package/dist/modules/seo/Schema.js +65 -0
- package/dist/modules/seo/Schema.js.map +1 -0
- package/dist/package.json +130 -0
- package/dist/server/index.d.ts +2 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +2 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/og-utils.d.ts +20 -0
- package/dist/server/og-utils.d.ts.map +1 -0
- package/dist/server/og-utils.js +125 -0
- package/dist/server/og-utils.js.map +1 -0
- package/dist/styles/background.scss +423 -0
- package/dist/styles/border.scss +546 -0
- package/dist/styles/breakpoints.scss +28 -0
- package/dist/styles/color.scss +183 -0
- package/dist/styles/display.scss +391 -0
- package/dist/styles/flex.scss +518 -0
- package/dist/styles/global.scss +36 -0
- package/dist/styles/grid.scss +293 -0
- package/dist/styles/index.scss +14 -0
- package/dist/styles/position.scss +1549 -0
- package/dist/styles/shadow.scss +19 -0
- package/dist/styles/size.scss +53 -0
- package/dist/styles/spacing.scss +1505 -0
- package/dist/styles/typography.scss +215 -0
- package/dist/styles/utilities.scss +23 -0
- package/dist/test/dialogTestUtils.d.ts +2 -0
- package/dist/test/dialogTestUtils.d.ts.map +1 -0
- package/dist/test/dialogTestUtils.js +12 -0
- package/dist/test/dialogTestUtils.js.map +1 -0
- package/dist/test/setup.d.ts +2 -0
- package/dist/test/setup.d.ts.map +1 -0
- package/dist/test/setup.js +59 -0
- package/dist/test/setup.js.map +1 -0
- package/dist/tokens/border.scss +95 -0
- package/dist/tokens/data.scss +107 -0
- package/dist/tokens/function.scss +742 -0
- package/dist/tokens/index.scss +8 -0
- package/dist/tokens/layout.scss +275 -0
- package/dist/tokens/scheme.scss +352 -0
- package/dist/tokens/shadow.scss +7 -0
- package/dist/tokens/theme.scss +639 -0
- package/dist/tokens/typography.scss +116 -0
- package/dist/types.d.ts +25 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +16 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/MissingDependency.d.ts +7 -0
- package/dist/utils/MissingDependency.d.ts.map +1 -0
- package/dist/utils/MissingDependency.js +6 -0
- package/dist/utils/MissingDependency.js.map +1 -0
- package/dist/utils/devLogger.d.ts +13 -0
- package/dist/utils/devLogger.d.ts.map +1 -0
- package/dist/utils/devLogger.js +34 -0
- package/dist/utils/devLogger.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +3 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +155 -0
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useCallback, useEffect } from "react";
|
|
3
|
+
import { useRef } from "react";
|
|
4
|
+
// Helper function to get all possible class names for a property
|
|
5
|
+
const getPropertyClassNames = (property, baseDirection) => {
|
|
6
|
+
const classNames = [];
|
|
7
|
+
switch (property) {
|
|
8
|
+
case "position":
|
|
9
|
+
classNames.push("position-static", "position-relative", "position-absolute", "position-fixed", "position-sticky");
|
|
10
|
+
break;
|
|
11
|
+
case "direction":
|
|
12
|
+
classNames.push("flex-row", "flex-row-reverse", "flex-column", "flex-column-reverse");
|
|
13
|
+
break;
|
|
14
|
+
case "horizontal":
|
|
15
|
+
!baseDirection || baseDirection === "row" || baseDirection === "row-reverse"
|
|
16
|
+
? classNames.push("justify-start", "justify-end", "justify-center", "justify-between", "justify-around", "justify-evenly")
|
|
17
|
+
: classNames.push("align-start", "align-end", "align-center", "align-stretch");
|
|
18
|
+
break;
|
|
19
|
+
case "vertical":
|
|
20
|
+
!baseDirection || baseDirection === "row" || baseDirection === "row-reverse"
|
|
21
|
+
? classNames.push("align-start", "align-end", "align-center", "align-stretch")
|
|
22
|
+
: classNames.push("justify-start", "justify-end", "justify-center", "justify-between", "justify-around", "justify-evenly");
|
|
23
|
+
break;
|
|
24
|
+
case "overflow":
|
|
25
|
+
classNames.push("overflow-visible", "overflow-hidden", "overflow-scroll", "overflow-auto");
|
|
26
|
+
break;
|
|
27
|
+
case "overflowX":
|
|
28
|
+
classNames.push("overflow-x-visible", "overflow-x-hidden", "overflow-x-scroll", "overflow-x-auto");
|
|
29
|
+
break;
|
|
30
|
+
case "overflowY":
|
|
31
|
+
classNames.push("overflow-y-visible", "overflow-y-hidden", "overflow-y-scroll", "overflow-y-auto");
|
|
32
|
+
break;
|
|
33
|
+
case "columns":
|
|
34
|
+
// Generate common column numbers
|
|
35
|
+
for (let i = 1; i <= 12; i++) {
|
|
36
|
+
classNames.push(`columns-${i}`);
|
|
37
|
+
}
|
|
38
|
+
break;
|
|
39
|
+
case "flex":
|
|
40
|
+
// Generate common flex classes
|
|
41
|
+
for (let i = 1; i <= 12; i++) {
|
|
42
|
+
classNames.push(`flex-${i}`);
|
|
43
|
+
}
|
|
44
|
+
break;
|
|
45
|
+
case "wrap":
|
|
46
|
+
classNames.push("flex-wrap", "flex-nowrap", "flex-wrap-reverse");
|
|
47
|
+
break;
|
|
48
|
+
case "hide":
|
|
49
|
+
classNames.push("flex-hide", "flex-show");
|
|
50
|
+
break;
|
|
51
|
+
case "top":
|
|
52
|
+
classNames.push("top-0", "top-1", "top-2", "top-4", "top-8", "top-12", "top-16", "top-20", "top-24", "top-32", "top-40", "top-48", "top-56", "top-64", "top-80", "top-104", "top-128", "top-160");
|
|
53
|
+
break;
|
|
54
|
+
case "right":
|
|
55
|
+
classNames.push("right-0", "right-1", "right-2", "right-4", "right-8", "right-12", "right-16", "right-20", "right-24", "right-32", "right-40", "right-48", "right-56", "right-64", "right-80", "right-104", "right-128", "right-160");
|
|
56
|
+
break;
|
|
57
|
+
case "bottom":
|
|
58
|
+
classNames.push("bottom-0", "bottom-1", "bottom-2", "bottom-4", "bottom-8", "bottom-12", "bottom-16", "bottom-20", "bottom-24", "bottom-32", "bottom-40", "bottom-48", "bottom-56", "bottom-64", "bottom-80", "bottom-104", "bottom-128", "bottom-160");
|
|
59
|
+
break;
|
|
60
|
+
case "left":
|
|
61
|
+
classNames.push("left-0", "left-1", "left-2", "left-4", "left-8", "left-12", "left-16", "left-20", "left-24", "left-32", "left-40", "left-48", "left-56", "left-64", "left-80", "left-104", "left-128", "left-160");
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
return classNames;
|
|
65
|
+
};
|
|
66
|
+
export const useResponsiveClasses = (elementRef, baseDirection, responsiveProps, currentBreakpoint) => {
|
|
67
|
+
const appliedClasses = useRef(new Set());
|
|
68
|
+
const originalClasses = useRef([]);
|
|
69
|
+
const isInitialized = useRef(false);
|
|
70
|
+
const applyResponsiveClasses = useCallback(() => {
|
|
71
|
+
if (!elementRef || !elementRef.current)
|
|
72
|
+
return;
|
|
73
|
+
const element = elementRef.current;
|
|
74
|
+
// Store original classes on first run
|
|
75
|
+
if (!isInitialized.current) {
|
|
76
|
+
originalClasses.current = Array.from(element.classList);
|
|
77
|
+
isInitialized.current = true;
|
|
78
|
+
}
|
|
79
|
+
// Remove all previously applied responsive classes
|
|
80
|
+
appliedClasses.current.forEach((className) => {
|
|
81
|
+
element.classList.remove(className);
|
|
82
|
+
});
|
|
83
|
+
appliedClasses.current.clear();
|
|
84
|
+
// Helper function to get value with cascading fallback
|
|
85
|
+
const getValueWithCascading = (property) => {
|
|
86
|
+
const { xl, l, m, s, xs } = responsiveProps;
|
|
87
|
+
switch (currentBreakpoint) {
|
|
88
|
+
case "xl":
|
|
89
|
+
return xl?.[property];
|
|
90
|
+
case "l":
|
|
91
|
+
return l?.[property] !== undefined ? l[property] : xl?.[property];
|
|
92
|
+
case "m":
|
|
93
|
+
return m?.[property] !== undefined
|
|
94
|
+
? m[property]
|
|
95
|
+
: l?.[property] !== undefined
|
|
96
|
+
? l[property]
|
|
97
|
+
: xl?.[property];
|
|
98
|
+
case "s":
|
|
99
|
+
return s?.[property] !== undefined
|
|
100
|
+
? s[property]
|
|
101
|
+
: m?.[property] !== undefined
|
|
102
|
+
? m[property]
|
|
103
|
+
: l?.[property] !== undefined
|
|
104
|
+
? l[property]
|
|
105
|
+
: xl?.[property];
|
|
106
|
+
case "xs":
|
|
107
|
+
return xs?.[property] !== undefined
|
|
108
|
+
? xs[property]
|
|
109
|
+
: s?.[property] !== undefined
|
|
110
|
+
? s[property]
|
|
111
|
+
: m?.[property] !== undefined
|
|
112
|
+
? m[property]
|
|
113
|
+
: l?.[property] !== undefined
|
|
114
|
+
? l[property]
|
|
115
|
+
: xl?.[property];
|
|
116
|
+
default:
|
|
117
|
+
return undefined;
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
// Properties to check for responsive classes
|
|
121
|
+
const properties = [
|
|
122
|
+
"position",
|
|
123
|
+
"direction",
|
|
124
|
+
"horizontal",
|
|
125
|
+
"vertical",
|
|
126
|
+
// Display properties
|
|
127
|
+
"overflow",
|
|
128
|
+
"overflowX",
|
|
129
|
+
"overflowY",
|
|
130
|
+
// Grid properties
|
|
131
|
+
"columns",
|
|
132
|
+
// Flex properties
|
|
133
|
+
"flex",
|
|
134
|
+
"wrap",
|
|
135
|
+
"show",
|
|
136
|
+
"hide",
|
|
137
|
+
// Position offsets
|
|
138
|
+
"top",
|
|
139
|
+
"right",
|
|
140
|
+
"bottom",
|
|
141
|
+
"left",
|
|
142
|
+
];
|
|
143
|
+
properties.forEach((property) => {
|
|
144
|
+
const value = getValueWithCascading(property);
|
|
145
|
+
if (value !== undefined) {
|
|
146
|
+
// Remove all possible classes for this property
|
|
147
|
+
const possibleClasses = getPropertyClassNames(property, baseDirection);
|
|
148
|
+
possibleClasses.forEach((possibleClass) => {
|
|
149
|
+
if (element.classList.contains(possibleClass)) {
|
|
150
|
+
element.classList.remove(possibleClass);
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
let className = "";
|
|
154
|
+
switch (property) {
|
|
155
|
+
case "position":
|
|
156
|
+
className = `position-${value}`;
|
|
157
|
+
break;
|
|
158
|
+
case "direction":
|
|
159
|
+
className = `flex-${value}`;
|
|
160
|
+
break;
|
|
161
|
+
case "horizontal":
|
|
162
|
+
case "vertical":
|
|
163
|
+
const direction = getValueWithCascading("direction") || baseDirection;
|
|
164
|
+
const isRowDirection = !direction || direction === "row" || direction === "row-reverse";
|
|
165
|
+
className =
|
|
166
|
+
property === "horizontal"
|
|
167
|
+
? isRowDirection
|
|
168
|
+
? `justify-${value}`
|
|
169
|
+
: `align-${value}`
|
|
170
|
+
: isRowDirection
|
|
171
|
+
? `align-${value}`
|
|
172
|
+
: `justify-${value}`;
|
|
173
|
+
break;
|
|
174
|
+
// Display properties
|
|
175
|
+
case "overflow":
|
|
176
|
+
className = `overflow-${value}`;
|
|
177
|
+
break;
|
|
178
|
+
case "overflowX":
|
|
179
|
+
className = `overflow-x-${value}`;
|
|
180
|
+
break;
|
|
181
|
+
case "overflowY":
|
|
182
|
+
className = `overflow-y-${value}`;
|
|
183
|
+
break;
|
|
184
|
+
// Grid properties
|
|
185
|
+
case "columns":
|
|
186
|
+
className = `columns-${value}`;
|
|
187
|
+
break;
|
|
188
|
+
// Flex properties
|
|
189
|
+
case "flex":
|
|
190
|
+
className = `flex-${value}`;
|
|
191
|
+
break;
|
|
192
|
+
case "wrap":
|
|
193
|
+
className = `flex-${value}`;
|
|
194
|
+
break;
|
|
195
|
+
case "hide":
|
|
196
|
+
className = value ? "flex-hide" : "flex-show";
|
|
197
|
+
break;
|
|
198
|
+
// Position offsets
|
|
199
|
+
case "top":
|
|
200
|
+
className = `top-${value}`;
|
|
201
|
+
break;
|
|
202
|
+
case "right":
|
|
203
|
+
className = `right-${value}`;
|
|
204
|
+
break;
|
|
205
|
+
case "bottom":
|
|
206
|
+
className = `bottom-${value}`;
|
|
207
|
+
break;
|
|
208
|
+
case "left":
|
|
209
|
+
className = `left-${value}`;
|
|
210
|
+
break;
|
|
211
|
+
}
|
|
212
|
+
if (className) {
|
|
213
|
+
element.classList.add(className);
|
|
214
|
+
appliedClasses.current.add(className);
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
// If value is undefined, restore original classes for this property
|
|
219
|
+
const possibleClasses = getPropertyClassNames(property, baseDirection);
|
|
220
|
+
const originalClassesToRestore = originalClasses.current.filter((originalClass) => possibleClasses.includes(originalClass));
|
|
221
|
+
// First remove all possible classes for this property
|
|
222
|
+
possibleClasses.forEach((possibleClass) => {
|
|
223
|
+
if (element.classList.contains(possibleClass)) {
|
|
224
|
+
element.classList.remove(possibleClass);
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
// Then restore original classes for this property
|
|
228
|
+
originalClassesToRestore.forEach((originalClass) => {
|
|
229
|
+
if (!element.classList.contains(originalClass)) {
|
|
230
|
+
element.classList.add(originalClass);
|
|
231
|
+
}
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
});
|
|
235
|
+
}, [elementRef, responsiveProps, currentBreakpoint, baseDirection]);
|
|
236
|
+
useEffect(() => {
|
|
237
|
+
applyResponsiveClasses();
|
|
238
|
+
}, [applyResponsiveClasses]);
|
|
239
|
+
// Cleanup on unmount
|
|
240
|
+
useEffect(() => {
|
|
241
|
+
return () => {
|
|
242
|
+
if (elementRef.current) {
|
|
243
|
+
appliedClasses.current.forEach((className) => {
|
|
244
|
+
elementRef.current?.classList.remove(className);
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
};
|
|
248
|
+
}, []);
|
|
249
|
+
};
|
|
250
|
+
//# sourceMappingURL=useResponsiveClasses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useResponsiveClasses.js","sourceRoot":"","sources":["../../src/hooks/useResponsiveClasses.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
type NumericKeys<T> = Array<Extract<keyof T, string>>;
|
|
3
|
+
type StreamingTarget<T> = Partial<Record<Extract<keyof T, string>, number>>;
|
|
4
|
+
type StreamingOptions<T extends Record<string, any>> = {
|
|
5
|
+
initialData: T[];
|
|
6
|
+
windowSize: number;
|
|
7
|
+
intervalMs: number;
|
|
8
|
+
stepMs?: number;
|
|
9
|
+
xKey: Extract<keyof T, string>;
|
|
10
|
+
numericKeys: NumericKeys<T>;
|
|
11
|
+
getNextTarget: (ctx: {
|
|
12
|
+
lastPoint: T;
|
|
13
|
+
nextX: number;
|
|
14
|
+
}) => StreamingTarget<T>;
|
|
15
|
+
};
|
|
16
|
+
type StreamingResult<T> = {
|
|
17
|
+
data: T[];
|
|
18
|
+
running: boolean;
|
|
19
|
+
setRunning: React.Dispatch<React.SetStateAction<boolean>>;
|
|
20
|
+
reset: () => void;
|
|
21
|
+
};
|
|
22
|
+
export declare function useStreamingData<T extends Record<string, any>>(options: StreamingOptions<T>): StreamingResult<T>;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=useStreamingData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStreamingData.d.ts","sourceRoot":"","sources":["../../src/hooks/useStreamingData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,KAAK,WAAW,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtD,KAAK,eAAe,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAE5E,KAAK,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI;IACrD,WAAW,EAAE,CAAC,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAC5B,aAAa,EAAE,CAAC,GAAG,EAAE;QACnB,SAAS,EAAE,CAAC,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC;CAC1B,CAAC;AAEF,KAAK,eAAe,CAAC,CAAC,IAAI;IACxB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5D,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAC3B,eAAe,CAAC,CAAC,CAAC,CAiHpB"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import React from "react";
|
|
3
|
+
export function useStreamingData(options) {
|
|
4
|
+
const { initialData, windowSize, intervalMs, stepMs = 16, xKey, numericKeys, getNextTarget, } = options;
|
|
5
|
+
const initialDataRef = React.useRef(initialData);
|
|
6
|
+
React.useEffect(() => {
|
|
7
|
+
initialDataRef.current = initialData;
|
|
8
|
+
}, [initialData]);
|
|
9
|
+
const [running, setRunning] = React.useState(true);
|
|
10
|
+
const [data, setData] = React.useState(() => initialData.slice(-windowSize));
|
|
11
|
+
const rafIdRef = React.useRef(null);
|
|
12
|
+
const lastStepAtRef = React.useRef(0);
|
|
13
|
+
const cycleStartAtRef = React.useRef(0);
|
|
14
|
+
const cycleFromRef = React.useRef(null);
|
|
15
|
+
const cycleToRef = React.useRef(null);
|
|
16
|
+
const hasInProgressPointRef = React.useRef(false);
|
|
17
|
+
const reset = React.useCallback(() => {
|
|
18
|
+
const next = initialDataRef.current.slice(-windowSize);
|
|
19
|
+
setData(next);
|
|
20
|
+
cycleFromRef.current = null;
|
|
21
|
+
cycleToRef.current = null;
|
|
22
|
+
cycleStartAtRef.current = 0;
|
|
23
|
+
lastStepAtRef.current = 0;
|
|
24
|
+
hasInProgressPointRef.current = false;
|
|
25
|
+
}, [windowSize]);
|
|
26
|
+
React.useEffect(() => {
|
|
27
|
+
if (!running)
|
|
28
|
+
return;
|
|
29
|
+
const step = (now) => {
|
|
30
|
+
if (!lastStepAtRef.current)
|
|
31
|
+
lastStepAtRef.current = now;
|
|
32
|
+
if (!cycleStartAtRef.current)
|
|
33
|
+
cycleStartAtRef.current = now;
|
|
34
|
+
const shouldStep = now - lastStepAtRef.current >= stepMs;
|
|
35
|
+
const cycleElapsed = now - cycleStartAtRef.current;
|
|
36
|
+
const cycleProgress = intervalMs > 0 ? Math.min(1, cycleElapsed / intervalMs) : 1;
|
|
37
|
+
if (shouldStep) {
|
|
38
|
+
lastStepAtRef.current = now;
|
|
39
|
+
setData((prev) => {
|
|
40
|
+
if (!prev || prev.length === 0)
|
|
41
|
+
return prev;
|
|
42
|
+
const lastPoint = prev[prev.length - 1];
|
|
43
|
+
const lastXRaw = lastPoint[xKey];
|
|
44
|
+
const lastX = typeof lastXRaw === "number" ? lastXRaw : Number(lastXRaw);
|
|
45
|
+
const shouldStartNewCycle = !cycleFromRef.current || !hasInProgressPointRef.current || cycleElapsed >= intervalMs;
|
|
46
|
+
let nextData = prev;
|
|
47
|
+
if (shouldStartNewCycle) {
|
|
48
|
+
const nextX = Number.isFinite(lastX) ? lastX + 1 : prev.length;
|
|
49
|
+
cycleFromRef.current = lastPoint;
|
|
50
|
+
cycleToRef.current = getNextTarget({ lastPoint, nextX });
|
|
51
|
+
cycleStartAtRef.current = now;
|
|
52
|
+
hasInProgressPointRef.current = true;
|
|
53
|
+
const newPoint = { ...lastPoint, [xKey]: nextX };
|
|
54
|
+
numericKeys.forEach((k) => {
|
|
55
|
+
const fromVal = typeof lastPoint[k] === "number" ? lastPoint[k] : Number(lastPoint[k]);
|
|
56
|
+
newPoint[k] = fromVal;
|
|
57
|
+
});
|
|
58
|
+
nextData = [...prev, newPoint].slice(-windowSize);
|
|
59
|
+
}
|
|
60
|
+
if (!nextData || nextData.length === 0)
|
|
61
|
+
return nextData;
|
|
62
|
+
const currentLast = nextData[nextData.length - 1];
|
|
63
|
+
const from = cycleFromRef.current || currentLast;
|
|
64
|
+
const to = cycleToRef.current;
|
|
65
|
+
const updatedLast = { ...currentLast };
|
|
66
|
+
numericKeys.forEach((k) => {
|
|
67
|
+
const fromVal = typeof from[k] === "number" ? from[k] : Number(from[k]);
|
|
68
|
+
const toCandidate = to?.[k];
|
|
69
|
+
const toVal = typeof toCandidate === "number" ? toCandidate : fromVal;
|
|
70
|
+
const v = fromVal + (toVal - fromVal) * cycleProgress;
|
|
71
|
+
updatedLast[k] = v;
|
|
72
|
+
});
|
|
73
|
+
const out = nextData.slice(0, -1).concat(updatedLast);
|
|
74
|
+
return out;
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
rafIdRef.current = window.requestAnimationFrame(step);
|
|
78
|
+
};
|
|
79
|
+
rafIdRef.current = window.requestAnimationFrame(step);
|
|
80
|
+
return () => {
|
|
81
|
+
if (rafIdRef.current) {
|
|
82
|
+
window.cancelAnimationFrame(rafIdRef.current);
|
|
83
|
+
}
|
|
84
|
+
rafIdRef.current = null;
|
|
85
|
+
};
|
|
86
|
+
}, [getNextTarget, intervalMs, numericKeys, running, stepMs, windowSize, xKey]);
|
|
87
|
+
return { data, running, setRunning, reset };
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=useStreamingData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStreamingData.js","sourceRoot":"","sources":["../../src/hooks/useStreamingData.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
type NumericKeys<T> = Array<Extract<keyof T, string>>;
|
|
3
|
+
type StreamingTarget<T> = Partial<Record<Extract<keyof T, string>, number>>;
|
|
4
|
+
type StreamingViewportOptions<T extends Record<string, any>> = {
|
|
5
|
+
initialData: T[];
|
|
6
|
+
windowSize: number;
|
|
7
|
+
intervalMs: number;
|
|
8
|
+
stepMs?: number;
|
|
9
|
+
xKey: Extract<keyof T, string>;
|
|
10
|
+
numericKeys: NumericKeys<T>;
|
|
11
|
+
getNextTarget: (ctx: {
|
|
12
|
+
lastPoint: T;
|
|
13
|
+
nextX: number;
|
|
14
|
+
}) => StreamingTarget<T>;
|
|
15
|
+
};
|
|
16
|
+
type StreamingViewportResult<T> = {
|
|
17
|
+
data: T[];
|
|
18
|
+
xDomain: [number, number];
|
|
19
|
+
running: boolean;
|
|
20
|
+
setRunning: React.Dispatch<React.SetStateAction<boolean>>;
|
|
21
|
+
reset: () => void;
|
|
22
|
+
};
|
|
23
|
+
export declare function useStreamingViewport<T extends Record<string, any>>(options: StreamingViewportOptions<T>): StreamingViewportResult<T>;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=useStreamingViewport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStreamingViewport.d.ts","sourceRoot":"","sources":["../../src/hooks/useStreamingViewport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,KAAK,WAAW,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtD,KAAK,eAAe,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAE5E,KAAK,wBAAwB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI;IAC7D,WAAW,EAAE,CAAC,EAAE,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IAC/B,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAC5B,aAAa,EAAE,CAAC,GAAG,EAAE;QACnB,SAAS,EAAE,CAAC,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC;CAC1B,CAAC;AAEF,KAAK,uBAAuB,CAAC,CAAC,IAAI;IAChC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAChE,OAAO,EAAE,wBAAwB,CAAC,CAAC,CAAC,GACnC,uBAAuB,CAAC,CAAC,CAAC,CAoJ5B"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import React from "react";
|
|
3
|
+
export function useStreamingViewport(options) {
|
|
4
|
+
const { initialData, windowSize, intervalMs, stepMs = 16, xKey, numericKeys, getNextTarget, } = options;
|
|
5
|
+
const initialDataRef = React.useRef(initialData);
|
|
6
|
+
React.useEffect(() => {
|
|
7
|
+
initialDataRef.current = initialData;
|
|
8
|
+
}, [initialData]);
|
|
9
|
+
const [running, setRunning] = React.useState(true);
|
|
10
|
+
const [state, setState] = React.useState(() => {
|
|
11
|
+
const base = initialData.slice(-windowSize);
|
|
12
|
+
const last = base[base.length - 1];
|
|
13
|
+
const lastX = last ? Number(last[xKey]) : windowSize - 1;
|
|
14
|
+
const right = Number.isFinite(lastX) ? lastX : windowSize - 1;
|
|
15
|
+
return { data: base, xDomain: [right - (windowSize - 1), right] };
|
|
16
|
+
});
|
|
17
|
+
const rafIdRef = React.useRef(null);
|
|
18
|
+
const lastStepAtRef = React.useRef(0);
|
|
19
|
+
const cycleStartAtRef = React.useRef(0);
|
|
20
|
+
const lastRealRef = React.useRef(null);
|
|
21
|
+
const nextTargetRef = React.useRef(null);
|
|
22
|
+
const getNextTargetRef = React.useRef(getNextTarget);
|
|
23
|
+
const numericKeysRef = React.useRef(numericKeys);
|
|
24
|
+
React.useEffect(() => {
|
|
25
|
+
getNextTargetRef.current = getNextTarget;
|
|
26
|
+
numericKeysRef.current = numericKeys;
|
|
27
|
+
}, [getNextTarget, numericKeys]);
|
|
28
|
+
const maxPauseMs = Math.max(intervalMs * 2, 2000);
|
|
29
|
+
const reset = React.useCallback(() => {
|
|
30
|
+
const base = initialDataRef.current.slice(-windowSize);
|
|
31
|
+
const last = base[base.length - 1];
|
|
32
|
+
const lastX = last ? Number(last[xKey]) : windowSize - 1;
|
|
33
|
+
const right = Number.isFinite(lastX) ? lastX : windowSize - 1;
|
|
34
|
+
setState({ data: base, xDomain: [right - (windowSize - 1), right] });
|
|
35
|
+
lastStepAtRef.current = 0;
|
|
36
|
+
cycleStartAtRef.current = 0;
|
|
37
|
+
lastRealRef.current = null;
|
|
38
|
+
nextTargetRef.current = null;
|
|
39
|
+
}, [windowSize, xKey]);
|
|
40
|
+
React.useEffect(() => {
|
|
41
|
+
if (!running)
|
|
42
|
+
return;
|
|
43
|
+
const step = (now) => {
|
|
44
|
+
if (!lastStepAtRef.current)
|
|
45
|
+
lastStepAtRef.current = now;
|
|
46
|
+
if (!cycleStartAtRef.current)
|
|
47
|
+
cycleStartAtRef.current = now;
|
|
48
|
+
// If the tab was backgrounded (or the browser throttled timers), don't try to "catch up".
|
|
49
|
+
// We restart the cycle at the current time to keep motion consistent.
|
|
50
|
+
const pausedFor = now - lastStepAtRef.current;
|
|
51
|
+
if (pausedFor > maxPauseMs) {
|
|
52
|
+
lastStepAtRef.current = now;
|
|
53
|
+
cycleStartAtRef.current = now;
|
|
54
|
+
}
|
|
55
|
+
const elapsed = now - cycleStartAtRef.current;
|
|
56
|
+
const progress = intervalMs > 0 ? elapsed / intervalMs : 1;
|
|
57
|
+
// Only update when interval completes (once per intervalMs).
|
|
58
|
+
if (progress >= 1) {
|
|
59
|
+
lastStepAtRef.current = now;
|
|
60
|
+
setState((prev) => {
|
|
61
|
+
const prevData = prev.data;
|
|
62
|
+
if (!prevData || prevData.length === 0)
|
|
63
|
+
return prev;
|
|
64
|
+
let currentData = prevData.slice();
|
|
65
|
+
// Ensure we have exactly windowSize + 1 points.
|
|
66
|
+
if (currentData.length < windowSize + 1) {
|
|
67
|
+
const last = currentData[currentData.length - 1];
|
|
68
|
+
const lastX = Number(last?.[xKey]);
|
|
69
|
+
const nextX = (Number.isFinite(lastX) ? lastX : currentData.length - 1) + 1;
|
|
70
|
+
const target = getNextTargetRef.current({ lastPoint: last, nextX });
|
|
71
|
+
const nextPoint = { ...last, [xKey]: nextX };
|
|
72
|
+
numericKeysRef.current.forEach((k) => {
|
|
73
|
+
const v = target?.[k];
|
|
74
|
+
nextPoint[k] = typeof v === "number" ? v : last[k];
|
|
75
|
+
});
|
|
76
|
+
currentData.push(nextPoint);
|
|
77
|
+
}
|
|
78
|
+
// Shift window: remove oldest, add new point.
|
|
79
|
+
currentData.shift();
|
|
80
|
+
const last = currentData[currentData.length - 1];
|
|
81
|
+
const lastX = Number(last?.[xKey]);
|
|
82
|
+
const nextX = (Number.isFinite(lastX) ? lastX : currentData.length) + 1;
|
|
83
|
+
const target = getNextTargetRef.current({ lastPoint: last, nextX });
|
|
84
|
+
const newPoint = { ...last, [xKey]: nextX };
|
|
85
|
+
numericKeysRef.current.forEach((k) => {
|
|
86
|
+
const v = target?.[k];
|
|
87
|
+
newPoint[k] = typeof v === "number" ? v : last[k];
|
|
88
|
+
});
|
|
89
|
+
currentData.push(newPoint);
|
|
90
|
+
// Reset cycle timing for the next interval.
|
|
91
|
+
cycleStartAtRef.current = now - (elapsed - intervalMs);
|
|
92
|
+
// Domain uses integer bounds.
|
|
93
|
+
const firstX = Number(currentData[0]?.[xKey]);
|
|
94
|
+
const left = Number.isFinite(firstX) ? firstX : 0;
|
|
95
|
+
const right = left + windowSize;
|
|
96
|
+
return {
|
|
97
|
+
data: currentData,
|
|
98
|
+
xDomain: [left, right],
|
|
99
|
+
};
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
rafIdRef.current = window.requestAnimationFrame(step);
|
|
103
|
+
};
|
|
104
|
+
rafIdRef.current = window.requestAnimationFrame(step);
|
|
105
|
+
return () => {
|
|
106
|
+
if (rafIdRef.current) {
|
|
107
|
+
window.cancelAnimationFrame(rafIdRef.current);
|
|
108
|
+
}
|
|
109
|
+
rafIdRef.current = null;
|
|
110
|
+
};
|
|
111
|
+
}, [intervalMs, running, stepMs, windowSize, xKey]);
|
|
112
|
+
return {
|
|
113
|
+
data: state.data,
|
|
114
|
+
xDomain: state.xDomain,
|
|
115
|
+
running,
|
|
116
|
+
setRunning,
|
|
117
|
+
reset,
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=useStreamingViewport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useStreamingViewport.js","sourceRoot":"","sources":["../../src/hooks/useStreamingViewport.ts"],"names":[],"mappings":"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"}
|
package/dist/icons.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAsDvC,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAkDhD,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAC7C,MAAM,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC"}
|
package/dist/icons.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { HiChevronUp, HiChevronDown, HiChevronRight, HiChevronLeft, HiOutlineArrowPath, HiOutlineSun, HiOutlineMoon, HiOutlineEye, HiOutlineEyeSlash, HiOutlineClipboard, HiOutlineMagnifyingGlass, HiOutlineLink, HiArrowUpRight, HiOutlineShieldCheck, HiOutlineSparkles, HiOutlineComputerDesktop, HiOutlineQuestionMarkCircle, HiOutlineInformationCircle, HiOutlineExclamationTriangle, HiOutlineExclamationCircle, HiOutlineCheckCircle, HiOutlineXMark, HiOutlineUser, HiOutlineEyeDropper, HiOutlineMinus, HiOutlinePlus, HiOutlineCalendar, HiOutlineDocumentDuplicate, HiOutlineCheck, HiOutlineArrowsPointingIn, HiOutlineArrowsPointingOut, HiOutlineFaceSmile, HiOutlineArrowTurnDownLeft, HiOutlinePlay, HiOutlinePause, HiOutlineBars3BottomLeft, HiOutlineAdjustmentsHorizontal, } from "react-icons/hi2";
|
|
2
|
+
import { IoAtOutline, IoFastFoodOutline, IoFlagOutline, IoFootballOutline, IoGiftOutline, IoGlobeOutline, IoPawOutline, } from "react-icons/io5";
|
|
3
|
+
import { LuChevronsLeftRight, LuTextCursorInput } from "react-icons/lu";
|
|
4
|
+
import { PiBatteryFull, PiGauge } from "react-icons/pi";
|
|
5
|
+
export const iconLibrary = {
|
|
6
|
+
chevronUp: HiChevronUp,
|
|
7
|
+
chevronDown: HiChevronDown,
|
|
8
|
+
chevronRight: HiChevronRight,
|
|
9
|
+
chevronLeft: HiChevronLeft,
|
|
10
|
+
chevronsLeftRight: LuChevronsLeftRight,
|
|
11
|
+
refresh: HiOutlineArrowPath,
|
|
12
|
+
light: HiOutlineSun,
|
|
13
|
+
dark: HiOutlineMoon,
|
|
14
|
+
help: HiOutlineQuestionMarkCircle,
|
|
15
|
+
info: HiOutlineInformationCircle,
|
|
16
|
+
warning: HiOutlineExclamationTriangle,
|
|
17
|
+
danger: HiOutlineExclamationCircle,
|
|
18
|
+
checkbox: HiOutlineCheck,
|
|
19
|
+
check: HiOutlineCheckCircle,
|
|
20
|
+
copy: HiOutlineDocumentDuplicate,
|
|
21
|
+
eyeDropper: HiOutlineEyeDropper,
|
|
22
|
+
clipboard: HiOutlineClipboard,
|
|
23
|
+
person: HiOutlineUser,
|
|
24
|
+
close: HiOutlineXMark,
|
|
25
|
+
link: HiOutlineLink,
|
|
26
|
+
arrowUpRight: HiArrowUpRight,
|
|
27
|
+
minus: HiOutlineMinus,
|
|
28
|
+
plus: HiOutlinePlus,
|
|
29
|
+
calendar: HiOutlineCalendar,
|
|
30
|
+
eye: HiOutlineEye,
|
|
31
|
+
eyeOff: HiOutlineEyeSlash,
|
|
32
|
+
search: HiOutlineMagnifyingGlass,
|
|
33
|
+
security: HiOutlineShieldCheck,
|
|
34
|
+
sparkle: HiOutlineSparkles,
|
|
35
|
+
computer: HiOutlineComputerDesktop,
|
|
36
|
+
minimize: HiOutlineArrowsPointingIn,
|
|
37
|
+
maximize: HiOutlineArrowsPointingOut,
|
|
38
|
+
smiley: HiOutlineFaceSmile,
|
|
39
|
+
paw: IoPawOutline,
|
|
40
|
+
food: IoFastFoodOutline,
|
|
41
|
+
ball: IoFootballOutline,
|
|
42
|
+
world: IoGlobeOutline,
|
|
43
|
+
gift: IoGiftOutline,
|
|
44
|
+
symbol: IoAtOutline,
|
|
45
|
+
flag: IoFlagOutline,
|
|
46
|
+
wordmark: LuTextCursorInput,
|
|
47
|
+
enter: HiOutlineArrowTurnDownLeft,
|
|
48
|
+
play: HiOutlinePlay,
|
|
49
|
+
pause: HiOutlinePause,
|
|
50
|
+
screen: HiOutlineComputerDesktop,
|
|
51
|
+
document: HiOutlineBars3BottomLeft,
|
|
52
|
+
radialGauge: PiGauge,
|
|
53
|
+
linearGauge: PiBatteryFull,
|
|
54
|
+
opacity: HiOutlineAdjustmentsHorizontal
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=icons.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icons.js","sourceRoot":"","sources":["../src/icons.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,wBAAwB,EACxB,2BAA2B,EAC3B,0BAA0B,EAC1B,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAC1B,kBAAkB,EAClB,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACd,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,CAAC,MAAM,WAAW,GAA6B;IACnD,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,YAAY,EAAE,cAAc;IAC5B,WAAW,EAAE,aAAa;IAC1B,iBAAiB,EAAE,mBAAmB;IACtC,OAAO,EAAE,kBAAkB;IAC3B,KAAK,EAAE,YAAY;IACnB,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,0BAA0B;IAChC,OAAO,EAAE,4BAA4B;IACrC,MAAM,EAAE,0BAA0B;IAClC,QAAQ,EAAE,cAAc;IACxB,KAAK,EAAE,oBAAoB;IAC3B,IAAI,EAAE,0BAA0B;IAChC,UAAU,EAAE,mBAAmB;IAC/B,SAAS,EAAE,kBAAkB;IAC7B,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,cAAc;IACrB,IAAI,EAAE,aAAa;IACnB,YAAY,EAAE,cAAc;IAC5B,KAAK,EAAE,cAAc;IACrB,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,iBAAiB;IAC3B,GAAG,EAAE,YAAY;IACjB,MAAM,EAAE,iBAAiB;IACzB,MAAM,EAAE,wBAAwB;IAChC,QAAQ,EAAE,oBAAoB;IAC9B,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,wBAAwB;IAClC,QAAQ,EAAE,yBAAyB;IACnC,QAAQ,EAAE,0BAA0B;IACpC,MAAM,EAAE,kBAAkB;IAC1B,GAAG,EAAE,YAAY;IACjB,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,cAAc;IACrB,IAAI,EAAE,aAAa;IACnB,MAAM,EAAE,WAAW;IACnB,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,iBAAiB;IAC3B,KAAK,EAAE,0BAA0B;IACjC,IAAI,EAAE,aAAa;IACnB,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,wBAAwB;IAChC,QAAQ,EAAE,wBAAwB;IAClC,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,aAAa;IAC1B,OAAO,EAAE,8BAA8B;CACxC,CAAC"}
|