@mindlogic-ai/logician-ui 4.0.0-alpha.9 → 4.0.0
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/USAGE.md +17 -0
- package/dist/components/Appear/Appear.d.ts +45 -0
- package/dist/components/Appear/Appear.d.ts.map +1 -0
- package/dist/components/Appear/Appear.js +61 -0
- package/dist/components/Appear/Appear.js.map +1 -0
- package/dist/components/Appear/Appear.mjs +59 -0
- package/dist/components/Appear/Appear.mjs.map +1 -0
- package/dist/components/Appear/Appear.styles.d.ts +18 -0
- package/dist/components/Appear/Appear.styles.d.ts.map +1 -0
- package/dist/components/Appear/Appear.styles.js +32 -0
- package/dist/components/Appear/Appear.styles.js.map +1 -0
- package/dist/components/Appear/Appear.styles.mjs +30 -0
- package/dist/components/Appear/Appear.styles.mjs.map +1 -0
- package/dist/components/Appear/Appear.types.d.ts +18 -0
- package/dist/components/Appear/Appear.types.d.ts.map +1 -0
- package/dist/components/Appear/index.d.ts +3 -0
- package/dist/components/Appear/index.d.ts.map +1 -0
- package/dist/components/Badge/Badge.d.ts +2 -15
- package/dist/components/Badge/Badge.d.ts.map +1 -1
- package/dist/components/Badge/Badge.js +5 -2
- package/dist/components/Badge/Badge.js.map +1 -1
- package/dist/components/Badge/Badge.mjs +5 -2
- package/dist/components/Badge/Badge.mjs.map +1 -1
- package/dist/components/Badge/Badge.types.d.ts +15 -2
- package/dist/components/Badge/Badge.types.d.ts.map +1 -1
- package/dist/components/Badge/index.d.ts +1 -1
- package/dist/components/Badge/index.d.ts.map +1 -1
- package/dist/components/Banner/Banner.js +2 -1
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Banner/Banner.mjs +2 -1
- package/dist/components/Banner/Banner.mjs.map +1 -1
- package/dist/components/BottomSheet/BottomSheet.d.ts +28 -0
- package/dist/components/BottomSheet/BottomSheet.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.js +38 -0
- package/dist/components/BottomSheet/BottomSheet.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.mjs +36 -0
- package/dist/components/BottomSheet/BottomSheet.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.styles.d.ts +32 -0
- package/dist/components/BottomSheet/BottomSheet.styles.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.styles.js +164 -0
- package/dist/components/BottomSheet/BottomSheet.styles.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.styles.mjs +161 -0
- package/dist/components/BottomSheet/BottomSheet.styles.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheet.types.d.ts +43 -0
- package/dist/components/BottomSheet/BottomSheet.types.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetBody.d.ts +8 -0
- package/dist/components/BottomSheet/BottomSheetBody.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetBody.js +17 -0
- package/dist/components/BottomSheet/BottomSheetBody.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheetBody.mjs +15 -0
- package/dist/components/BottomSheet/BottomSheetBody.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheetCloseButton.d.ts +11 -0
- package/dist/components/BottomSheet/BottomSheetCloseButton.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetCloseButton.js +27 -0
- package/dist/components/BottomSheet/BottomSheetCloseButton.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheetCloseButton.mjs +25 -0
- package/dist/components/BottomSheet/BottomSheetCloseButton.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheetContent.d.ts +12 -0
- package/dist/components/BottomSheet/BottomSheetContent.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetContent.js +25 -0
- package/dist/components/BottomSheet/BottomSheetContent.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheetContent.mjs +23 -0
- package/dist/components/BottomSheet/BottomSheetContent.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheetContext.d.ts +28 -0
- package/dist/components/BottomSheet/BottomSheetContext.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetContext.js +53 -0
- package/dist/components/BottomSheet/BottomSheetContext.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheetContext.mjs +40 -0
- package/dist/components/BottomSheet/BottomSheetContext.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheetFooter.d.ts +4 -0
- package/dist/components/BottomSheet/BottomSheetFooter.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetFooter.js +13 -0
- package/dist/components/BottomSheet/BottomSheetFooter.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheetFooter.mjs +11 -0
- package/dist/components/BottomSheet/BottomSheetFooter.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheetHeader.d.ts +8 -0
- package/dist/components/BottomSheet/BottomSheetHeader.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetHeader.js +19 -0
- package/dist/components/BottomSheet/BottomSheetHeader.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheetHeader.mjs +17 -0
- package/dist/components/BottomSheet/BottomSheetHeader.mjs.map +1 -0
- package/dist/components/BottomSheet/BottomSheetOverlay.d.ts +8 -0
- package/dist/components/BottomSheet/BottomSheetOverlay.d.ts.map +1 -0
- package/dist/components/BottomSheet/BottomSheetOverlay.js +17 -0
- package/dist/components/BottomSheet/BottomSheetOverlay.js.map +1 -0
- package/dist/components/BottomSheet/BottomSheetOverlay.mjs +15 -0
- package/dist/components/BottomSheet/BottomSheetOverlay.mjs.map +1 -0
- package/dist/components/BottomSheet/index.d.ts +11 -0
- package/dist/components/BottomSheet/index.d.ts.map +1 -0
- package/dist/components/Button/Button.d.ts +2 -18
- package/dist/components/Button/Button.d.ts.map +1 -1
- package/dist/components/Button/Button.js +66 -4
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/Button/Button.mjs +67 -5
- package/dist/components/Button/Button.mjs.map +1 -1
- package/dist/components/Button/Button.styles.d.ts +1 -0
- package/dist/components/Button/Button.styles.d.ts.map +1 -1
- package/dist/components/Button/Button.styles.js +123 -42
- package/dist/components/Button/Button.styles.js.map +1 -1
- package/dist/components/Button/Button.styles.mjs +123 -43
- package/dist/components/Button/Button.styles.mjs.map +1 -1
- package/dist/components/Button/Button.types.d.ts +38 -1
- package/dist/components/Button/Button.types.d.ts.map +1 -1
- package/dist/components/Button/index.d.ts +1 -1
- package/dist/components/Button/index.d.ts.map +1 -1
- package/dist/components/Card/Card.d.ts +2 -5
- package/dist/components/Card/Card.d.ts.map +1 -1
- package/dist/components/Card/Card.js +12 -4
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/Card/Card.mjs +12 -4
- package/dist/components/Card/Card.mjs.map +1 -1
- package/dist/components/Card/Card.styles.d.ts +26 -3
- package/dist/components/Card/Card.styles.d.ts.map +1 -1
- package/dist/components/Card/Card.styles.js +36 -5
- package/dist/components/Card/Card.styles.js.map +1 -1
- package/dist/components/Card/Card.styles.mjs +36 -5
- package/dist/components/Card/Card.styles.mjs.map +1 -1
- package/dist/components/Card/Card.types.d.ts +20 -2
- package/dist/components/Card/Card.types.d.ts.map +1 -1
- package/dist/components/Card/index.d.ts +1 -1
- package/dist/components/Card/index.d.ts.map +1 -1
- package/dist/components/Checkbox/Checkbox.styles.d.ts +16 -0
- package/dist/components/Checkbox/Checkbox.styles.d.ts.map +1 -0
- package/dist/components/Checkbox/Checkbox.styles.js +30 -0
- package/dist/components/Checkbox/Checkbox.styles.js.map +1 -0
- package/dist/components/Checkbox/Checkbox.styles.mjs +28 -0
- package/dist/components/Checkbox/Checkbox.styles.mjs.map +1 -0
- package/dist/components/Checkbox/CheckboxControl.d.ts.map +1 -1
- package/dist/components/Checkbox/CheckboxControl.js +6 -1
- package/dist/components/Checkbox/CheckboxControl.js.map +1 -1
- package/dist/components/Checkbox/CheckboxControl.mjs +6 -1
- package/dist/components/Checkbox/CheckboxControl.mjs.map +1 -1
- package/dist/components/Chip/Chip.d.ts +3 -16
- package/dist/components/Chip/Chip.d.ts.map +1 -1
- package/dist/components/Chip/Chip.js +5 -2
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/Chip/Chip.mjs +5 -2
- package/dist/components/Chip/Chip.mjs.map +1 -1
- package/dist/components/Chip/Chip.types.d.ts +11 -2
- package/dist/components/Chip/Chip.types.d.ts.map +1 -1
- package/dist/components/Chip/index.d.ts +1 -1
- package/dist/components/Chip/index.d.ts.map +1 -1
- package/dist/components/CodeTabs/CodeTabs.js +1 -0
- package/dist/components/CodeTabs/CodeTabs.js.map +1 -1
- package/dist/components/CodeTabs/CodeTabs.mjs +1 -0
- package/dist/components/CodeTabs/CodeTabs.mjs.map +1 -1
- package/dist/components/Collapsible/CollapsibleContent.d.ts.map +1 -1
- package/dist/components/Collapsible/CollapsibleContent.js +5 -1
- package/dist/components/Collapsible/CollapsibleContent.js.map +1 -1
- package/dist/components/Collapsible/CollapsibleContent.mjs +5 -1
- package/dist/components/Collapsible/CollapsibleContent.mjs.map +1 -1
- package/dist/components/ColorMode/ColorModeToggle.d.ts.map +1 -1
- package/dist/components/ColorMode/ColorModeToggle.js +4 -2
- package/dist/components/ColorMode/ColorModeToggle.js.map +1 -1
- package/dist/components/ColorMode/ColorModeToggle.mjs +5 -3
- package/dist/components/ColorMode/ColorModeToggle.mjs.map +1 -1
- package/dist/components/Confetti/Confetti.d.ts +50 -0
- package/dist/components/Confetti/Confetti.d.ts.map +1 -0
- package/dist/components/Confetti/Confetti.js +149 -0
- package/dist/components/Confetti/Confetti.js.map +1 -0
- package/dist/components/Confetti/Confetti.mjs +147 -0
- package/dist/components/Confetti/Confetti.mjs.map +1 -0
- package/dist/components/Confetti/Confetti.styles.d.ts +32 -0
- package/dist/components/Confetti/Confetti.styles.d.ts.map +1 -0
- package/dist/components/Confetti/Confetti.styles.js +60 -0
- package/dist/components/Confetti/Confetti.styles.js.map +1 -0
- package/dist/components/Confetti/Confetti.styles.mjs +58 -0
- package/dist/components/Confetti/Confetti.styles.mjs.map +1 -0
- package/dist/components/Confetti/Confetti.types.d.ts +13 -0
- package/dist/components/Confetti/Confetti.types.d.ts.map +1 -0
- package/dist/components/Confetti/index.d.ts +3 -0
- package/dist/components/Confetti/index.d.ts.map +1 -0
- package/dist/components/Container/Container.d.ts +3 -4
- package/dist/components/Container/Container.d.ts.map +1 -1
- package/dist/components/Container/Container.js +5 -1
- package/dist/components/Container/Container.js.map +1 -1
- package/dist/components/Container/Container.mjs +5 -1
- package/dist/components/Container/Container.mjs.map +1 -1
- package/dist/components/Container/Container.types.d.ts +16 -0
- package/dist/components/Container/Container.types.d.ts.map +1 -0
- package/dist/components/Container/index.d.ts +1 -0
- package/dist/components/Container/index.d.ts.map +1 -1
- package/dist/components/CopyableCode/CopyableCode.d.ts +6 -0
- package/dist/components/CopyableCode/CopyableCode.d.ts.map +1 -1
- package/dist/components/CopyableCode/CopyableCode.js +49 -1
- package/dist/components/CopyableCode/CopyableCode.js.map +1 -1
- package/dist/components/CopyableCode/CopyableCode.mjs +50 -2
- package/dist/components/CopyableCode/CopyableCode.mjs.map +1 -1
- package/dist/components/CountUp/CountUp.d.ts +30 -0
- package/dist/components/CountUp/CountUp.d.ts.map +1 -0
- package/dist/components/CountUp/CountUp.js +95 -0
- package/dist/components/CountUp/CountUp.js.map +1 -0
- package/dist/components/CountUp/CountUp.mjs +93 -0
- package/dist/components/CountUp/CountUp.mjs.map +1 -0
- package/dist/components/CountUp/CountUp.types.d.ts +19 -0
- package/dist/components/CountUp/CountUp.types.d.ts.map +1 -0
- package/dist/components/CountUp/index.d.ts +3 -0
- package/dist/components/CountUp/index.d.ts.map +1 -0
- package/dist/components/ErrorFallback/ErrorFallback.d.ts.map +1 -1
- package/dist/components/ErrorFallback/ErrorFallback.js +17 -2
- package/dist/components/ErrorFallback/ErrorFallback.js.map +1 -1
- package/dist/components/ErrorFallback/ErrorFallback.mjs +17 -2
- package/dist/components/ErrorFallback/ErrorFallback.mjs.map +1 -1
- package/dist/components/ExpandableText/ExpandableText.d.ts +31 -10
- package/dist/components/ExpandableText/ExpandableText.d.ts.map +1 -1
- package/dist/components/ExpandableText/ExpandableText.js +22 -3
- package/dist/components/ExpandableText/ExpandableText.js.map +1 -1
- package/dist/components/ExpandableText/ExpandableText.mjs +22 -3
- package/dist/components/ExpandableText/ExpandableText.mjs.map +1 -1
- package/dist/components/ExpandableText/useExpandableText.d.ts +28 -3
- package/dist/components/ExpandableText/useExpandableText.d.ts.map +1 -1
- package/dist/components/ExpandableText/useExpandableText.js +74 -72
- package/dist/components/ExpandableText/useExpandableText.js.map +1 -1
- package/dist/components/ExpandableText/useExpandableText.mjs +75 -73
- package/dist/components/ExpandableText/useExpandableText.mjs.map +1 -1
- package/dist/components/FileInput/FileInput.d.ts.map +1 -1
- package/dist/components/FileInput/FileInput.js +11 -1
- package/dist/components/FileInput/FileInput.js.map +1 -1
- package/dist/components/FileInput/FileInput.mjs +12 -2
- package/dist/components/FileInput/FileInput.mjs.map +1 -1
- package/dist/components/FileItem/FileItem.js +2 -1
- package/dist/components/FileItem/FileItem.js.map +1 -1
- package/dist/components/FileItem/FileItem.mjs +3 -2
- package/dist/components/FileItem/FileItem.mjs.map +1 -1
- package/dist/components/FileList/FileList.d.ts +1 -1
- package/dist/components/FileList/FileList.d.ts.map +1 -1
- package/dist/components/FileList/FileList.js +11 -3
- package/dist/components/FileList/FileList.js.map +1 -1
- package/dist/components/FileList/FileList.mjs +12 -4
- package/dist/components/FileList/FileList.mjs.map +1 -1
- package/dist/components/FileList/FileList.types.d.ts +9 -0
- package/dist/components/FileList/FileList.types.d.ts.map +1 -1
- package/dist/components/FlyTo/FlyTo.d.ts +35 -0
- package/dist/components/FlyTo/FlyTo.d.ts.map +1 -0
- package/dist/components/FlyTo/FlyTo.js +69 -0
- package/dist/components/FlyTo/FlyTo.js.map +1 -0
- package/dist/components/FlyTo/FlyTo.mjs +67 -0
- package/dist/components/FlyTo/FlyTo.mjs.map +1 -0
- package/dist/components/FlyTo/FlyTo.styles.d.ts +19 -0
- package/dist/components/FlyTo/FlyTo.styles.d.ts.map +1 -0
- package/dist/components/FlyTo/FlyTo.styles.js +35 -0
- package/dist/components/FlyTo/FlyTo.styles.js.map +1 -0
- package/dist/components/FlyTo/FlyTo.styles.mjs +33 -0
- package/dist/components/FlyTo/FlyTo.styles.mjs.map +1 -0
- package/dist/components/FlyTo/FlyTo.types.d.ts +15 -0
- package/dist/components/FlyTo/FlyTo.types.d.ts.map +1 -0
- package/dist/components/FlyTo/index.d.ts +3 -0
- package/dist/components/FlyTo/index.d.ts.map +1 -0
- package/dist/components/Form/FieldError/FieldError.d.ts +15 -0
- package/dist/components/Form/FieldError/FieldError.d.ts.map +1 -0
- package/dist/components/Form/FieldError/FieldError.js +22 -0
- package/dist/components/Form/FieldError/FieldError.js.map +1 -0
- package/dist/components/Form/FieldError/FieldError.mjs +20 -0
- package/dist/components/Form/FieldError/FieldError.mjs.map +1 -0
- package/dist/components/Form/FieldError/index.d.ts +3 -0
- package/dist/components/Form/FieldError/index.d.ts.map +1 -0
- package/dist/components/Form/FieldHelp/FieldHelp.d.ts +14 -0
- package/dist/components/Form/FieldHelp/FieldHelp.d.ts.map +1 -0
- package/dist/components/Form/FieldHelp/FieldHelp.js +19 -0
- package/dist/components/Form/FieldHelp/FieldHelp.js.map +1 -0
- package/dist/components/Form/FieldHelp/FieldHelp.mjs +17 -0
- package/dist/components/Form/FieldHelp/FieldHelp.mjs.map +1 -0
- package/dist/components/Form/FieldHelp/index.d.ts +3 -0
- package/dist/components/Form/FieldHelp/index.d.ts.map +1 -0
- package/dist/components/Form/FieldLabel/FieldLabel.d.ts +12 -0
- package/dist/components/Form/FieldLabel/FieldLabel.d.ts.map +1 -0
- package/dist/components/Form/FieldLabel/FieldLabel.js +33 -0
- package/dist/components/Form/FieldLabel/FieldLabel.js.map +1 -0
- package/dist/components/Form/FieldLabel/FieldLabel.mjs +31 -0
- package/dist/components/Form/FieldLabel/FieldLabel.mjs.map +1 -0
- package/dist/components/Form/FieldLabel/FieldLabel.types.d.ts +21 -0
- package/dist/components/Form/FieldLabel/FieldLabel.types.d.ts.map +1 -0
- package/dist/components/Form/FieldLabel/index.d.ts +3 -0
- package/dist/components/Form/FieldLabel/index.d.ts.map +1 -0
- package/dist/components/Form/FieldRow/FieldRow.d.ts +15 -0
- package/dist/components/Form/FieldRow/FieldRow.d.ts.map +1 -0
- package/dist/components/Form/FieldRow/FieldRow.js +27 -0
- package/dist/components/Form/FieldRow/FieldRow.js.map +1 -0
- package/dist/components/Form/FieldRow/FieldRow.mjs +25 -0
- package/dist/components/Form/FieldRow/FieldRow.mjs.map +1 -0
- package/dist/components/Form/FieldRow/FieldRow.types.d.ts +27 -0
- package/dist/components/Form/FieldRow/FieldRow.types.d.ts.map +1 -0
- package/dist/components/Form/FieldRow/index.d.ts +3 -0
- package/dist/components/Form/FieldRow/index.d.ts.map +1 -0
- package/dist/components/Form/FormFooter/FormFooter.d.ts +11 -0
- package/dist/components/Form/FormFooter/FormFooter.d.ts.map +1 -0
- package/dist/components/Form/FormFooter/FormFooter.js +20 -0
- package/dist/components/Form/FormFooter/FormFooter.js.map +1 -0
- package/dist/components/Form/FormFooter/FormFooter.mjs +18 -0
- package/dist/components/Form/FormFooter/FormFooter.mjs.map +1 -0
- package/dist/components/Form/FormFooter/FormFooter.types.d.ts +23 -0
- package/dist/components/Form/FormFooter/FormFooter.types.d.ts.map +1 -0
- package/dist/components/Form/FormFooter/index.d.ts +3 -0
- package/dist/components/Form/FormFooter/index.d.ts.map +1 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.d.ts +19 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.d.ts.map +1 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.js +42 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.js.map +1 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.mjs +40 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.mjs.map +1 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.types.d.ts +49 -0
- package/dist/components/Form/FormModalFooter/FormModalFooter.types.d.ts.map +1 -0
- package/dist/components/Form/FormModalFooter/index.d.ts +3 -0
- package/dist/components/Form/FormModalFooter/index.d.ts.map +1 -0
- package/dist/components/Form/FormScrollArea/FormScrollArea.d.ts +14 -0
- package/dist/components/Form/FormScrollArea/FormScrollArea.d.ts.map +1 -0
- package/dist/components/Form/FormScrollArea/FormScrollArea.js +18 -0
- package/dist/components/Form/FormScrollArea/FormScrollArea.js.map +1 -0
- package/dist/components/Form/FormScrollArea/FormScrollArea.mjs +16 -0
- package/dist/components/Form/FormScrollArea/FormScrollArea.mjs.map +1 -0
- package/dist/components/Form/FormScrollArea/index.d.ts +2 -0
- package/dist/components/Form/FormScrollArea/index.d.ts.map +1 -0
- package/dist/components/Form/FormSection/CollapsibleFormSection.d.ts +10 -0
- package/dist/components/Form/FormSection/CollapsibleFormSection.d.ts.map +1 -0
- package/dist/components/Form/FormSection/CollapsibleFormSection.js +46 -0
- package/dist/components/Form/FormSection/CollapsibleFormSection.js.map +1 -0
- package/dist/components/Form/FormSection/CollapsibleFormSection.mjs +44 -0
- package/dist/components/Form/FormSection/CollapsibleFormSection.mjs.map +1 -0
- package/dist/components/Form/FormSection/FlatFormSection.d.ts +6 -0
- package/dist/components/Form/FormSection/FlatFormSection.d.ts.map +1 -0
- package/dist/components/Form/FormSection/FlatFormSection.js +12 -0
- package/dist/components/Form/FormSection/FlatFormSection.js.map +1 -0
- package/dist/components/Form/FormSection/FlatFormSection.mjs +10 -0
- package/dist/components/Form/FormSection/FlatFormSection.mjs.map +1 -0
- package/dist/components/Form/FormSection/FormSection.d.ts +13 -0
- package/dist/components/Form/FormSection/FormSection.d.ts.map +1 -0
- package/dist/components/Form/FormSection/FormSection.js +21 -0
- package/dist/components/Form/FormSection/FormSection.js.map +1 -0
- package/dist/components/Form/FormSection/FormSection.mjs +19 -0
- package/dist/components/Form/FormSection/FormSection.mjs.map +1 -0
- package/dist/components/Form/FormSection/FormSection.types.d.ts +34 -0
- package/dist/components/Form/FormSection/FormSection.types.d.ts.map +1 -0
- package/dist/components/Form/FormSection/index.d.ts +3 -0
- package/dist/components/Form/FormSection/index.d.ts.map +1 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.d.ts +13 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.d.ts.map +1 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.js +31 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.js.map +1 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.mjs +29 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.mjs.map +1 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.types.d.ts +17 -0
- package/dist/components/Form/FormSectionHeader/FormSectionHeader.types.d.ts.map +1 -0
- package/dist/components/Form/FormSectionHeader/index.d.ts +3 -0
- package/dist/components/Form/FormSectionHeader/index.d.ts.map +1 -0
- package/dist/components/Form/index.d.ts +18 -0
- package/dist/components/Form/index.d.ts.map +1 -0
- package/dist/components/Icon/_constants/iconList.d.ts +2 -1
- package/dist/components/Icon/_constants/iconList.d.ts.map +1 -1
- package/dist/components/Icon/_constants/iconList.js +309 -134
- package/dist/components/Icon/_constants/iconList.js.map +1 -1
- package/dist/components/Icon/_constants/iconList.mjs +337 -162
- package/dist/components/Icon/_constants/iconList.mjs.map +1 -1
- package/dist/components/Icon/_utils/createIcon.d.ts.map +1 -1
- package/dist/components/Icon/_utils/createIcon.js +1 -0
- package/dist/components/Icon/_utils/createIcon.js.map +1 -1
- package/dist/components/Icon/_utils/createIcon.mjs +1 -0
- package/dist/components/Icon/_utils/createIcon.mjs.map +1 -1
- package/dist/components/Icon/index.d.ts +1 -1
- package/dist/components/Icon/index.d.ts.map +1 -1
- package/dist/components/Icon/index.js +205 -42
- package/dist/components/Icon/index.js.map +1 -1
- package/dist/components/Icon/index.mjs +3 -43
- package/dist/components/Icon/index.mjs.map +1 -1
- package/dist/components/IconButton/IconButton.d.ts +2 -17
- package/dist/components/IconButton/IconButton.d.ts.map +1 -1
- package/dist/components/IconButton/IconButton.js +11 -3
- package/dist/components/IconButton/IconButton.js.map +1 -1
- package/dist/components/IconButton/IconButton.mjs +11 -3
- package/dist/components/IconButton/IconButton.mjs.map +1 -1
- package/dist/components/IconButton/IconButton.types.d.ts +15 -1
- package/dist/components/IconButton/IconButton.types.d.ts.map +1 -1
- package/dist/components/IconButton/index.d.ts +1 -1
- package/dist/components/IconButton/index.d.ts.map +1 -1
- package/dist/components/InfoSprinkle/InfoSprinkle.d.ts.map +1 -1
- package/dist/components/InfoSprinkle/InfoSprinkle.js +1 -1
- package/dist/components/InfoSprinkle/InfoSprinkle.js.map +1 -1
- package/dist/components/InfoSprinkle/InfoSprinkle.mjs +1 -1
- package/dist/components/InfoSprinkle/InfoSprinkle.mjs.map +1 -1
- package/dist/components/InlineCode/InlineCode.d.ts.map +1 -1
- package/dist/components/InlineCode/InlineCode.js +10 -1
- package/dist/components/InlineCode/InlineCode.js.map +1 -1
- package/dist/components/InlineCode/InlineCode.mjs +10 -1
- package/dist/components/InlineCode/InlineCode.mjs.map +1 -1
- package/dist/components/Input/Input.d.ts.map +1 -1
- package/dist/components/Input/Input.js +2 -1
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/Input/Input.mjs +2 -1
- package/dist/components/Input/Input.mjs.map +1 -1
- package/dist/components/Loaders/PageLoader.d.ts.map +1 -1
- package/dist/components/Loaders/PageLoader.js +4 -1
- package/dist/components/Loaders/PageLoader.js.map +1 -1
- package/dist/components/Loaders/PageLoader.mjs +4 -1
- package/dist/components/Loaders/PageLoader.mjs.map +1 -1
- package/dist/components/Loaders/SectionLoader.d.ts.map +1 -1
- package/dist/components/Loaders/SectionLoader.js +1 -1
- package/dist/components/Loaders/SectionLoader.js.map +1 -1
- package/dist/components/Loaders/SectionLoader.mjs +1 -1
- package/dist/components/Loaders/SectionLoader.mjs.map +1 -1
- package/dist/components/Markdown/Markdown.d.ts.map +1 -1
- package/dist/components/Markdown/Markdown.js +7 -1
- package/dist/components/Markdown/Markdown.js.map +1 -1
- package/dist/components/Markdown/Markdown.mjs +7 -1
- package/dist/components/Markdown/Markdown.mjs.map +1 -1
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.js +1 -0
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.js.map +1 -1
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.mjs +1 -0
- package/dist/components/MaxLengthIndicator/MaxLengthIndicator.mjs.map +1 -1
- package/dist/components/Menu/Menu.d.ts +2 -1
- package/dist/components/Menu/Menu.d.ts.map +1 -1
- package/dist/components/Menu/MenuItem.d.ts +2 -2
- package/dist/components/Menu/MenuItem.d.ts.map +1 -1
- package/dist/components/Menu/MenuItem.js +8 -2
- package/dist/components/Menu/MenuItem.js.map +1 -1
- package/dist/components/Menu/MenuItem.mjs +8 -2
- package/dist/components/Menu/MenuItem.mjs.map +1 -1
- package/dist/components/Menu/MenuItem.types.d.ts +17 -2
- package/dist/components/Menu/MenuItem.types.d.ts.map +1 -1
- package/dist/components/Menu/MenuItem.types.js.map +1 -1
- package/dist/components/Menu/MenuItem.types.mjs.map +1 -1
- package/dist/components/Menu/MenuList.d.ts +20 -0
- package/dist/components/Menu/MenuList.d.ts.map +1 -1
- package/dist/components/Menu/MenuList.js +20 -2
- package/dist/components/Menu/MenuList.js.map +1 -1
- package/dist/components/Menu/MenuList.mjs +21 -3
- package/dist/components/Menu/MenuList.mjs.map +1 -1
- package/dist/components/Modal/Modal.d.ts.map +1 -1
- package/dist/components/Modal/Modal.js +2 -2
- package/dist/components/Modal/Modal.js.map +1 -1
- package/dist/components/Modal/Modal.mjs +2 -2
- package/dist/components/Modal/Modal.mjs.map +1 -1
- package/dist/components/Modal/Modal.styles.d.ts +22 -0
- package/dist/components/Modal/Modal.styles.d.ts.map +1 -1
- package/dist/components/Modal/Modal.styles.js +24 -0
- package/dist/components/Modal/Modal.styles.js.map +1 -0
- package/dist/components/Modal/Modal.styles.mjs +22 -0
- package/dist/components/Modal/Modal.styles.mjs.map +1 -0
- package/dist/components/Modal/Modal.types.d.ts +10 -2
- package/dist/components/Modal/Modal.types.d.ts.map +1 -1
- package/dist/components/Modal/ModalContent/ModalContent.d.ts.map +1 -1
- package/dist/components/Modal/ModalContent/ModalContent.js +2 -1
- package/dist/components/Modal/ModalContent/ModalContent.js.map +1 -1
- package/dist/components/Modal/ModalContent/ModalContent.mjs +2 -1
- package/dist/components/Modal/ModalContent/ModalContent.mjs.map +1 -1
- package/dist/components/Modal/ModalContext.js +1 -1
- package/dist/components/Modal/ModalContext.js.map +1 -1
- package/dist/components/Modal/ModalContext.mjs +1 -1
- package/dist/components/Modal/ModalContext.mjs.map +1 -1
- package/dist/components/Modal/ModalOverlay.d.ts.map +1 -1
- package/dist/components/Modal/ModalOverlay.js +3 -1
- package/dist/components/Modal/ModalOverlay.js.map +1 -1
- package/dist/components/Modal/ModalOverlay.mjs +3 -1
- package/dist/components/Modal/ModalOverlay.mjs.map +1 -1
- package/dist/components/MonthPicker/MonthPicker.js +1 -0
- package/dist/components/MonthPicker/MonthPicker.js.map +1 -1
- package/dist/components/MonthPicker/MonthPicker.mjs +1 -0
- package/dist/components/MonthPicker/MonthPicker.mjs.map +1 -1
- package/dist/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/components/Pagination/Pagination.js +8 -2
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Pagination/Pagination.mjs +9 -3
- package/dist/components/Pagination/Pagination.mjs.map +1 -1
- package/dist/components/PasswordInput/PasswordInput.d.ts.map +1 -1
- package/dist/components/PasswordInput/PasswordInput.js +2 -2
- package/dist/components/PasswordInput/PasswordInput.js.map +1 -1
- package/dist/components/PasswordInput/PasswordInput.mjs +2 -2
- package/dist/components/PasswordInput/PasswordInput.mjs.map +1 -1
- package/dist/components/PinInput/PinInput.d.ts +1 -4
- package/dist/components/PinInput/PinInput.d.ts.map +1 -1
- package/dist/components/PinInput/PinInput.js +5 -22
- package/dist/components/PinInput/PinInput.js.map +1 -1
- package/dist/components/PinInput/PinInput.mjs +8 -25
- package/dist/components/PinInput/PinInput.mjs.map +1 -1
- package/dist/components/PinInput/PinInput.types.d.ts +7 -24
- package/dist/components/PinInput/PinInput.types.d.ts.map +1 -1
- package/dist/components/Popover/PopoverContent.d.ts.map +1 -1
- package/dist/components/Popover/PopoverContent.js +4 -1
- package/dist/components/Popover/PopoverContent.js.map +1 -1
- package/dist/components/Popover/PopoverContent.mjs +4 -1
- package/dist/components/Popover/PopoverContent.mjs.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.d.ts +1 -1
- package/dist/components/ProgressBar/ProgressBar.d.ts.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.js +19 -2
- package/dist/components/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.mjs +20 -3
- package/dist/components/ProgressBar/ProgressBar.mjs.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.styles.d.ts +18 -0
- package/dist/components/ProgressBar/ProgressBar.styles.d.ts.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.styles.js +24 -0
- package/dist/components/ProgressBar/ProgressBar.styles.js.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.styles.mjs +24 -1
- package/dist/components/ProgressBar/ProgressBar.styles.mjs.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.types.d.ts +10 -0
- package/dist/components/ProgressBar/ProgressBar.types.d.ts.map +1 -1
- package/dist/components/Pulse/Pulse.d.ts +40 -0
- package/dist/components/Pulse/Pulse.d.ts.map +1 -0
- package/dist/components/Pulse/Pulse.js +64 -0
- package/dist/components/Pulse/Pulse.js.map +1 -0
- package/dist/components/Pulse/Pulse.mjs +62 -0
- package/dist/components/Pulse/Pulse.mjs.map +1 -0
- package/dist/components/Pulse/Pulse.styles.d.ts +35 -0
- package/dist/components/Pulse/Pulse.styles.d.ts.map +1 -0
- package/dist/components/Pulse/Pulse.styles.js +46 -0
- package/dist/components/Pulse/Pulse.styles.js.map +1 -0
- package/dist/components/Pulse/Pulse.styles.mjs +44 -0
- package/dist/components/Pulse/Pulse.styles.mjs.map +1 -0
- package/dist/components/Pulse/Pulse.types.d.ts +12 -0
- package/dist/components/Pulse/Pulse.types.d.ts.map +1 -0
- package/dist/components/Pulse/index.d.ts +3 -0
- package/dist/components/Pulse/index.d.ts.map +1 -0
- package/dist/components/RadialProgress/RadialProgress.js +1 -0
- package/dist/components/RadialProgress/RadialProgress.js.map +1 -1
- package/dist/components/RadialProgress/RadialProgress.mjs +1 -0
- package/dist/components/RadialProgress/RadialProgress.mjs.map +1 -1
- package/dist/components/Radio/Radio.styles.d.ts +13 -0
- package/dist/components/Radio/Radio.styles.d.ts.map +1 -0
- package/dist/components/Radio/Radio.styles.js +28 -0
- package/dist/components/Radio/Radio.styles.js.map +1 -0
- package/dist/components/Radio/Radio.styles.mjs +26 -0
- package/dist/components/Radio/Radio.styles.mjs.map +1 -0
- package/dist/components/Radio/RadioControl.d.ts.map +1 -1
- package/dist/components/Radio/RadioControl.js +19 -1
- package/dist/components/Radio/RadioControl.js.map +1 -1
- package/dist/components/Radio/RadioControl.mjs +20 -2
- package/dist/components/Radio/RadioControl.mjs.map +1 -1
- package/dist/components/Reveal/Reveal.d.ts +33 -0
- package/dist/components/Reveal/Reveal.d.ts.map +1 -0
- package/dist/components/Reveal/Reveal.js +46 -0
- package/dist/components/Reveal/Reveal.js.map +1 -0
- package/dist/components/Reveal/Reveal.mjs +44 -0
- package/dist/components/Reveal/Reveal.mjs.map +1 -0
- package/dist/components/Reveal/Reveal.styles.d.ts +25 -0
- package/dist/components/Reveal/Reveal.styles.d.ts.map +1 -0
- package/dist/components/Reveal/Reveal.styles.js +42 -0
- package/dist/components/Reveal/Reveal.styles.js.map +1 -0
- package/dist/components/Reveal/Reveal.styles.mjs +40 -0
- package/dist/components/Reveal/Reveal.styles.mjs.map +1 -0
- package/dist/components/Reveal/Reveal.types.d.ts +6 -0
- package/dist/components/Reveal/Reveal.types.d.ts.map +1 -0
- package/dist/components/Reveal/index.d.ts +3 -0
- package/dist/components/Reveal/index.d.ts.map +1 -0
- package/dist/components/SeeMoreButton/SeeMoreButton.d.ts +3 -10
- package/dist/components/SeeMoreButton/SeeMoreButton.d.ts.map +1 -1
- package/dist/components/SeeMoreButton/SeeMoreButton.js +6 -2
- package/dist/components/SeeMoreButton/SeeMoreButton.js.map +1 -1
- package/dist/components/SeeMoreButton/SeeMoreButton.mjs +7 -3
- package/dist/components/SeeMoreButton/SeeMoreButton.mjs.map +1 -1
- package/dist/components/SeeMoreButton/SeeMoreButton.types.d.ts +10 -3
- package/dist/components/SeeMoreButton/SeeMoreButton.types.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js +5 -1
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.mjs +5 -1
- package/dist/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.styles.d.ts +16 -0
- package/dist/components/SegmentedControl/SegmentedControl.styles.d.ts.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.styles.js +26 -0
- package/dist/components/SegmentedControl/SegmentedControl.styles.js.map +1 -0
- package/dist/components/SegmentedControl/SegmentedControl.styles.mjs +24 -0
- package/dist/components/SegmentedControl/SegmentedControl.styles.mjs.map +1 -0
- package/dist/components/Select/Combobox.d.ts.map +1 -1
- package/dist/components/Select/Combobox.js +9 -2
- package/dist/components/Select/Combobox.js.map +1 -1
- package/dist/components/Select/Combobox.mjs +9 -2
- package/dist/components/Select/Combobox.mjs.map +1 -1
- package/dist/components/Select/ComboboxField.d.ts +1 -1
- package/dist/components/Select/ComboboxField.d.ts.map +1 -1
- package/dist/components/Select/ComboboxField.js +2 -2
- package/dist/components/Select/ComboboxField.js.map +1 -1
- package/dist/components/Select/ComboboxField.mjs +2 -2
- package/dist/components/Select/ComboboxField.mjs.map +1 -1
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/Select/Select.js +4 -1
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/Select/Select.mjs +4 -1
- package/dist/components/Select/Select.mjs.map +1 -1
- package/dist/components/Select/Select.types.d.ts +26 -1
- package/dist/components/Select/Select.types.d.ts.map +1 -1
- package/dist/components/Select/SelectField.d.ts +1 -1
- package/dist/components/Select/SelectField.d.ts.map +1 -1
- package/dist/components/Select/SelectField.js +3 -2
- package/dist/components/Select/SelectField.js.map +1 -1
- package/dist/components/Select/SelectField.mjs +3 -2
- package/dist/components/Select/SelectField.mjs.map +1 -1
- package/dist/components/Shake/Shake.d.ts +35 -0
- package/dist/components/Shake/Shake.d.ts.map +1 -0
- package/dist/components/Shake/Shake.js +61 -0
- package/dist/components/Shake/Shake.js.map +1 -0
- package/dist/components/Shake/Shake.mjs +59 -0
- package/dist/components/Shake/Shake.mjs.map +1 -0
- package/dist/components/Shake/Shake.styles.d.ts +24 -0
- package/dist/components/Shake/Shake.styles.d.ts.map +1 -0
- package/dist/components/Shake/Shake.styles.js +35 -0
- package/dist/components/Shake/Shake.styles.js.map +1 -0
- package/dist/components/Shake/Shake.styles.mjs +33 -0
- package/dist/components/Shake/Shake.styles.mjs.map +1 -0
- package/dist/components/Shake/Shake.types.d.ts +11 -0
- package/dist/components/Shake/Shake.types.d.ts.map +1 -0
- package/dist/components/Shake/index.d.ts +3 -0
- package/dist/components/Shake/index.d.ts.map +1 -0
- package/dist/components/Slider/Slider.d.ts.map +1 -1
- package/dist/components/Slider/Slider.js +2 -2
- package/dist/components/Slider/Slider.js.map +1 -1
- package/dist/components/Slider/Slider.mjs +3 -3
- package/dist/components/Slider/Slider.mjs.map +1 -1
- package/dist/components/Slider/Slider.types.d.ts +15 -0
- package/dist/components/Slider/Slider.types.d.ts.map +1 -1
- package/dist/components/Spinner/Spinner.d.ts.map +1 -1
- package/dist/components/Spinner/Spinner.js +7 -2
- package/dist/components/Spinner/Spinner.js.map +1 -1
- package/dist/components/Spinner/Spinner.mjs +7 -2
- package/dist/components/Spinner/Spinner.mjs.map +1 -1
- package/dist/components/Spinner/Spinner.styles.d.ts +23 -0
- package/dist/components/Spinner/Spinner.styles.d.ts.map +1 -0
- package/dist/components/Spinner/Spinner.styles.js +36 -0
- package/dist/components/Spinner/Spinner.styles.js.map +1 -0
- package/dist/components/Spinner/Spinner.styles.mjs +34 -0
- package/dist/components/Spinner/Spinner.styles.mjs.map +1 -0
- package/dist/components/SwapTransition/SwapTransition.d.ts +43 -0
- package/dist/components/SwapTransition/SwapTransition.d.ts.map +1 -0
- package/dist/components/SwapTransition/SwapTransition.js +82 -0
- package/dist/components/SwapTransition/SwapTransition.js.map +1 -0
- package/dist/components/SwapTransition/SwapTransition.mjs +80 -0
- package/dist/components/SwapTransition/SwapTransition.mjs.map +1 -0
- package/dist/components/SwapTransition/SwapTransition.styles.d.ts +24 -0
- package/dist/components/SwapTransition/SwapTransition.styles.d.ts.map +1 -0
- package/dist/components/SwapTransition/SwapTransition.styles.js +42 -0
- package/dist/components/SwapTransition/SwapTransition.styles.js.map +1 -0
- package/dist/components/SwapTransition/SwapTransition.styles.mjs +38 -0
- package/dist/components/SwapTransition/SwapTransition.styles.mjs.map +1 -0
- package/dist/components/SwapTransition/SwapTransition.types.d.ts +22 -0
- package/dist/components/SwapTransition/SwapTransition.types.d.ts.map +1 -0
- package/dist/components/SwapTransition/index.d.ts +3 -0
- package/dist/components/SwapTransition/index.d.ts.map +1 -0
- package/dist/components/Switch/SwitchControl.d.ts.map +1 -1
- package/dist/components/Switch/SwitchControl.js +13 -1
- package/dist/components/Switch/SwitchControl.js.map +1 -1
- package/dist/components/Switch/SwitchControl.mjs +13 -1
- package/dist/components/Switch/SwitchControl.mjs.map +1 -1
- package/dist/components/Table/TableContext.d.ts +8 -0
- package/dist/components/Table/TableContext.d.ts.map +1 -1
- package/dist/components/Table/TableContext.js +79 -28
- package/dist/components/Table/TableContext.js.map +1 -1
- package/dist/components/Table/TableContext.mjs +80 -29
- package/dist/components/Table/TableContext.mjs.map +1 -1
- package/dist/components/Table/Td.d.ts.map +1 -1
- package/dist/components/Table/Td.js +12 -8
- package/dist/components/Table/Td.js.map +1 -1
- package/dist/components/Table/Td.mjs +13 -9
- package/dist/components/Table/Td.mjs.map +1 -1
- package/dist/components/Table/Th.d.ts.map +1 -1
- package/dist/components/Table/Th.js +12 -8
- package/dist/components/Table/Th.js.map +1 -1
- package/dist/components/Table/Th.mjs +13 -9
- package/dist/components/Table/Th.mjs.map +1 -1
- package/dist/components/Table/useRegisterStickyWidth.d.ts +48 -0
- package/dist/components/Table/useRegisterStickyWidth.d.ts.map +1 -0
- package/dist/components/Table/useRegisterStickyWidth.js +54 -0
- package/dist/components/Table/useRegisterStickyWidth.js.map +1 -0
- package/dist/components/Table/useRegisterStickyWidth.mjs +52 -0
- package/dist/components/Table/useRegisterStickyWidth.mjs.map +1 -0
- package/dist/components/Tabs/Tab/Tab.styles.d.ts +36 -3
- package/dist/components/Tabs/Tab/Tab.styles.d.ts.map +1 -1
- package/dist/components/Tabs/Tab/Tab.styles.js +48 -5
- package/dist/components/Tabs/Tab/Tab.styles.js.map +1 -1
- package/dist/components/Tabs/Tab/Tab.styles.mjs +48 -6
- package/dist/components/Tabs/Tab/Tab.styles.mjs.map +1 -1
- package/dist/components/Tabs/Tab/index.d.ts +1 -0
- package/dist/components/Tabs/Tab/index.d.ts.map +1 -1
- package/dist/components/Tabs/index.d.ts +1 -1
- package/dist/components/Tabs/index.d.ts.map +1 -1
- package/dist/components/Tag/Tag.d.ts +3 -21
- package/dist/components/Tag/Tag.d.ts.map +1 -1
- package/dist/components/Tag/Tag.js +6 -3
- package/dist/components/Tag/Tag.js.map +1 -1
- package/dist/components/Tag/Tag.mjs +6 -3
- package/dist/components/Tag/Tag.mjs.map +1 -1
- package/dist/components/Tag/Tag.styles.d.ts.map +1 -1
- package/dist/components/Tag/Tag.styles.js +27 -21
- package/dist/components/Tag/Tag.styles.js.map +1 -1
- package/dist/components/Tag/Tag.styles.mjs +27 -21
- package/dist/components/Tag/Tag.styles.mjs.map +1 -1
- package/dist/components/Tag/Tag.types.d.ts +9 -2
- package/dist/components/Tag/Tag.types.d.ts.map +1 -1
- package/dist/components/Tag/index.d.ts +1 -1
- package/dist/components/Tag/index.d.ts.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/components/Textarea/Textarea.js +2 -1
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Textarea/Textarea.mjs +2 -1
- package/dist/components/Textarea/Textarea.mjs.map +1 -1
- package/dist/components/Toast/Toast.d.ts +7 -3
- package/dist/components/Toast/Toast.d.ts.map +1 -1
- package/dist/components/Toast/Toast.js +7 -3
- package/dist/components/Toast/Toast.js.map +1 -1
- package/dist/components/Toast/Toast.mjs +8 -4
- package/dist/components/Toast/Toast.mjs.map +1 -1
- package/dist/components/Toast/Toast.styles.d.ts +8 -0
- package/dist/components/Toast/Toast.styles.d.ts.map +1 -1
- package/dist/components/Toast/Toast.styles.js +59 -0
- package/dist/components/Toast/Toast.styles.js.map +1 -1
- package/dist/components/Toast/Toast.styles.mjs +57 -1
- package/dist/components/Toast/Toast.styles.mjs.map +1 -1
- package/dist/components/Toast/Toast.types.d.ts +25 -1
- package/dist/components/Toast/Toast.types.d.ts.map +1 -1
- package/dist/components/Toast/ToastIcon/ToastIcon.js +4 -4
- package/dist/components/Toast/ToastIcon/ToastIcon.js.map +1 -1
- package/dist/components/Toast/ToastIcon/ToastIcon.mjs +5 -5
- package/dist/components/Toast/ToastIcon/ToastIcon.mjs.map +1 -1
- package/dist/components/Toast/Toaster.d.ts.map +1 -1
- package/dist/components/Toast/Toaster.js +9 -1
- package/dist/components/Toast/Toaster.js.map +1 -1
- package/dist/components/Toast/Toaster.mjs +9 -1
- package/dist/components/Toast/Toaster.mjs.map +1 -1
- package/dist/components/Toast/useToast.d.ts +2 -2
- package/dist/components/Toast/useToast.d.ts.map +1 -1
- package/dist/components/Toast/useToast.js +9 -1
- package/dist/components/Toast/useToast.js.map +1 -1
- package/dist/components/Toast/useToast.mjs +10 -2
- package/dist/components/Toast/useToast.mjs.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +15 -1
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.mjs +15 -1
- package/dist/components/Tooltip/Tooltip.mjs.map +1 -1
- package/dist/components/Tree/TreeBranchIndicator.js +1 -1
- package/dist/components/Tree/TreeBranchIndicator.js.map +1 -1
- package/dist/components/Tree/TreeBranchIndicator.mjs +2 -2
- package/dist/components/Tree/TreeBranchIndicator.mjs.map +1 -1
- package/dist/components/Typography/Caption.d.ts +4 -0
- package/dist/components/Typography/Caption.d.ts.map +1 -0
- package/dist/components/Typography/Caption.js +33 -0
- package/dist/components/Typography/Caption.js.map +1 -0
- package/dist/components/Typography/Caption.mjs +31 -0
- package/dist/components/Typography/Caption.mjs.map +1 -0
- package/dist/components/Typography/H1.d.ts +3 -2
- package/dist/components/Typography/H1.d.ts.map +1 -1
- package/dist/components/Typography/H1.js +6 -3
- package/dist/components/Typography/H1.js.map +1 -1
- package/dist/components/Typography/H1.mjs +6 -3
- package/dist/components/Typography/H1.mjs.map +1 -1
- package/dist/components/Typography/H2.d.ts +3 -2
- package/dist/components/Typography/H2.d.ts.map +1 -1
- package/dist/components/Typography/H2.js +6 -3
- package/dist/components/Typography/H2.js.map +1 -1
- package/dist/components/Typography/H2.mjs +6 -3
- package/dist/components/Typography/H2.mjs.map +1 -1
- package/dist/components/Typography/H3.d.ts +3 -2
- package/dist/components/Typography/H3.d.ts.map +1 -1
- package/dist/components/Typography/H3.js +6 -3
- package/dist/components/Typography/H3.js.map +1 -1
- package/dist/components/Typography/H3.mjs +6 -3
- package/dist/components/Typography/H3.mjs.map +1 -1
- package/dist/components/Typography/H4.d.ts +3 -2
- package/dist/components/Typography/H4.d.ts.map +1 -1
- package/dist/components/Typography/H4.js +6 -3
- package/dist/components/Typography/H4.js.map +1 -1
- package/dist/components/Typography/H4.mjs +6 -3
- package/dist/components/Typography/H4.mjs.map +1 -1
- package/dist/components/Typography/H5.d.ts +3 -2
- package/dist/components/Typography/H5.d.ts.map +1 -1
- package/dist/components/Typography/H5.js +6 -3
- package/dist/components/Typography/H5.js.map +1 -1
- package/dist/components/Typography/H5.mjs +6 -3
- package/dist/components/Typography/H5.mjs.map +1 -1
- package/dist/components/Typography/Link.d.ts +39 -3
- package/dist/components/Typography/Link.d.ts.map +1 -1
- package/dist/components/Typography/Link.js +55 -10
- package/dist/components/Typography/Link.js.map +1 -1
- package/dist/components/Typography/Link.mjs +55 -11
- package/dist/components/Typography/Link.mjs.map +1 -1
- package/dist/components/Typography/Overline.d.ts +3 -13
- package/dist/components/Typography/Overline.d.ts.map +1 -1
- package/dist/components/Typography/Overline.js +5 -2
- package/dist/components/Typography/Overline.js.map +1 -1
- package/dist/components/Typography/Overline.mjs +5 -2
- package/dist/components/Typography/Overline.mjs.map +1 -1
- package/dist/components/Typography/Subtext.d.ts +3 -3
- package/dist/components/Typography/Subtext.d.ts.map +1 -1
- package/dist/components/Typography/Subtext.js +5 -2
- package/dist/components/Typography/Subtext.js.map +1 -1
- package/dist/components/Typography/Subtext.mjs +5 -2
- package/dist/components/Typography/Subtext.mjs.map +1 -1
- package/dist/components/Typography/Subtitle.d.ts +3 -2
- package/dist/components/Typography/Subtitle.d.ts.map +1 -1
- package/dist/components/Typography/Subtitle.js +23 -3
- package/dist/components/Typography/Subtitle.js.map +1 -1
- package/dist/components/Typography/Subtitle.mjs +23 -3
- package/dist/components/Typography/Subtitle.mjs.map +1 -1
- package/dist/components/Typography/Text.d.ts +3 -3
- package/dist/components/Typography/Text.d.ts.map +1 -1
- package/dist/components/Typography/Text.js +5 -2
- package/dist/components/Typography/Text.js.map +1 -1
- package/dist/components/Typography/Text.mjs +5 -2
- package/dist/components/Typography/Text.mjs.map +1 -1
- package/dist/components/Typography/Typography.types.d.ts +35 -2
- package/dist/components/Typography/Typography.types.d.ts.map +1 -1
- package/dist/components/Typography/index.d.ts +4 -3
- package/dist/components/Typography/index.d.ts.map +1 -1
- package/dist/components/Workflow/Workflow.d.ts +1 -1
- package/dist/components/Workflow/Workflow.d.ts.map +1 -1
- package/dist/components/Workflow/Workflow.js +2 -2
- package/dist/components/Workflow/Workflow.js.map +1 -1
- package/dist/components/Workflow/Workflow.mjs +2 -2
- package/dist/components/Workflow/Workflow.mjs.map +1 -1
- package/dist/components/Workflow/Workflow.types.d.ts +9 -0
- package/dist/components/Workflow/Workflow.types.d.ts.map +1 -1
- package/dist/components/Workflow/Workflow.types.js.map +1 -1
- package/dist/components/Workflow/Workflow.types.mjs.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/BranchLabelBadge.js +1 -1
- package/dist/components/Workflow/canvas/Canvas/BranchLabelBadge.js.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/BranchLabelBadge.mjs +2 -2
- package/dist/components/Workflow/canvas/Canvas/BranchLabelBadge.mjs.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/Canvas.d.ts +6 -2
- package/dist/components/Workflow/canvas/Canvas/Canvas.d.ts.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/Canvas.js +29 -23
- package/dist/components/Workflow/canvas/Canvas/Canvas.js.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/Canvas.mjs +31 -25
- package/dist/components/Workflow/canvas/Canvas/Canvas.mjs.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/CanvasControls.js +1 -1
- package/dist/components/Workflow/canvas/Canvas/CanvasControls.js.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/CanvasControls.mjs +2 -2
- package/dist/components/Workflow/canvas/Canvas/CanvasControls.mjs.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/LabeledEdge.js +2 -1
- package/dist/components/Workflow/canvas/Canvas/LabeledEdge.js.map +1 -1
- package/dist/components/Workflow/canvas/Canvas/LabeledEdge.mjs +3 -2
- package/dist/components/Workflow/canvas/Canvas/LabeledEdge.mjs.map +1 -1
- package/dist/components/Workflow/canvas/CollapsibleSection/CollapsibleSection.d.ts.map +1 -1
- package/dist/components/Workflow/canvas/CollapsibleSection/CollapsibleSection.js +2 -1
- package/dist/components/Workflow/canvas/CollapsibleSection/CollapsibleSection.js.map +1 -1
- package/dist/components/Workflow/canvas/CollapsibleSection/CollapsibleSection.mjs +3 -2
- package/dist/components/Workflow/canvas/CollapsibleSection/CollapsibleSection.mjs.map +1 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerHeader.js +3 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerHeader.js.map +1 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerHeader.mjs +4 -2
- package/dist/components/Workflow/canvas/DrawerShell/DrawerHeader.mjs.map +1 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerIssues.js +2 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerIssues.js.map +1 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerIssues.mjs +3 -2
- package/dist/components/Workflow/canvas/DrawerShell/DrawerIssues.mjs.map +1 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerShell.js +3 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerShell.js.map +1 -1
- package/dist/components/Workflow/canvas/DrawerShell/DrawerShell.mjs +4 -2
- package/dist/components/Workflow/canvas/DrawerShell/DrawerShell.mjs.map +1 -1
- package/dist/components/Workflow/canvas/EdgeInspector/BuiltInEdgeInspector.js +1 -0
- package/dist/components/Workflow/canvas/EdgeInspector/BuiltInEdgeInspector.js.map +1 -1
- package/dist/components/Workflow/canvas/EdgeInspector/BuiltInEdgeInspector.mjs +1 -0
- package/dist/components/Workflow/canvas/EdgeInspector/BuiltInEdgeInspector.mjs.map +1 -1
- package/dist/components/Workflow/canvas/FieldWrapper/FieldWrapper.js +2 -1
- package/dist/components/Workflow/canvas/FieldWrapper/FieldWrapper.js.map +1 -1
- package/dist/components/Workflow/canvas/FieldWrapper/FieldWrapper.mjs +3 -2
- package/dist/components/Workflow/canvas/FieldWrapper/FieldWrapper.mjs.map +1 -1
- package/dist/components/Workflow/canvas/GenericNode/GenericNode.js +1 -1
- package/dist/components/Workflow/canvas/GenericNode/GenericNode.js.map +1 -1
- package/dist/components/Workflow/canvas/GenericNode/GenericNode.mjs +2 -2
- package/dist/components/Workflow/canvas/GenericNode/GenericNode.mjs.map +1 -1
- package/dist/components/Workflow/canvas/GraphErrorBanner/GraphErrorBanner.d.ts.map +1 -1
- package/dist/components/Workflow/canvas/GraphErrorBanner/GraphErrorBanner.js +2 -1
- package/dist/components/Workflow/canvas/GraphErrorBanner/GraphErrorBanner.js.map +1 -1
- package/dist/components/Workflow/canvas/GraphErrorBanner/GraphErrorBanner.mjs +3 -2
- package/dist/components/Workflow/canvas/GraphErrorBanner/GraphErrorBanner.mjs.map +1 -1
- package/dist/components/Workflow/canvas/IssueList/IssueList.js +1 -0
- package/dist/components/Workflow/canvas/IssueList/IssueList.js.map +1 -1
- package/dist/components/Workflow/canvas/IssueList/IssueList.mjs +1 -0
- package/dist/components/Workflow/canvas/IssueList/IssueList.mjs.map +1 -1
- package/dist/components/Workflow/canvas/NodePalette/NodePalette.d.ts.map +1 -1
- package/dist/components/Workflow/canvas/NodePalette/NodePalette.js +21 -3
- package/dist/components/Workflow/canvas/NodePalette/NodePalette.js.map +1 -1
- package/dist/components/Workflow/canvas/NodePalette/NodePalette.mjs +22 -4
- package/dist/components/Workflow/canvas/NodePalette/NodePalette.mjs.map +1 -1
- package/dist/components/Workflow/canvas/NodePalette/NodePaletteToggle.js +1 -1
- package/dist/components/Workflow/canvas/NodePalette/NodePaletteToggle.js.map +1 -1
- package/dist/components/Workflow/canvas/NodePalette/NodePaletteToggle.mjs +2 -2
- package/dist/components/Workflow/canvas/NodePalette/NodePaletteToggle.mjs.map +1 -1
- package/dist/components/Workflow/canvas/NodeShell/NodeShell.js +4 -3
- package/dist/components/Workflow/canvas/NodeShell/NodeShell.js.map +1 -1
- package/dist/components/Workflow/canvas/NodeShell/NodeShell.mjs +5 -4
- package/dist/components/Workflow/canvas/NodeShell/NodeShell.mjs.map +1 -1
- package/dist/components/Workflow/createNode.d.ts +25 -1
- package/dist/components/Workflow/createNode.d.ts.map +1 -1
- package/dist/components/Workflow/createNode.js +39 -1
- package/dist/components/Workflow/createNode.js.map +1 -1
- package/dist/components/Workflow/createNode.mjs +38 -2
- package/dist/components/Workflow/createNode.mjs.map +1 -1
- package/dist/components/Workflow/index.d.ts +2 -0
- package/dist/components/Workflow/index.d.ts.map +1 -1
- package/dist/components/Workflow/layout/autoLayout.d.ts +10 -0
- package/dist/components/Workflow/layout/autoLayout.d.ts.map +1 -1
- package/dist/components/Workflow/layout/autoLayout.js +4 -0
- package/dist/components/Workflow/layout/autoLayout.js.map +1 -1
- package/dist/components/Workflow/layout/autoLayout.mjs +1 -1
- package/dist/components/Workflow/layout/autoLayout.mjs.map +1 -1
- package/dist/components/Workflow/placement.d.ts +65 -0
- package/dist/components/Workflow/placement.d.ts.map +1 -0
- package/dist/components/Workflow/placement.js +100 -0
- package/dist/components/Workflow/placement.js.map +1 -0
- package/dist/components/Workflow/placement.mjs +96 -0
- package/dist/components/Workflow/placement.mjs.map +1 -0
- package/dist/components/Workflow/useWorkflowActions.d.ts +54 -0
- package/dist/components/Workflow/useWorkflowActions.d.ts.map +1 -0
- package/dist/components/Workflow/useWorkflowActions.js +105 -0
- package/dist/components/Workflow/useWorkflowActions.js.map +1 -0
- package/dist/components/Workflow/useWorkflowActions.mjs +103 -0
- package/dist/components/Workflow/useWorkflowActions.mjs.map +1 -0
- package/dist/icons.js +203 -0
- package/dist/icons.js.map +1 -1
- package/dist/icons.mjs +1 -1
- package/dist/index.d.ts +18 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +81 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +36 -2
- package/dist/index.mjs.map +1 -1
- package/dist/styles.d.ts +21 -0
- package/dist/styles.d.ts.map +1 -0
- package/dist/styles.js +9 -0
- package/dist/styles.js.map +1 -0
- package/dist/styles.mjs +3 -0
- package/dist/styles.mjs.map +1 -0
- package/dist/theme/colors.d.ts +168 -49
- package/dist/theme/colors.d.ts.map +1 -1
- package/dist/theme/colors.js +150 -82
- package/dist/theme/colors.js.map +1 -1
- package/dist/theme/colors.mjs +150 -82
- package/dist/theme/colors.mjs.map +1 -1
- package/dist/theme/formControls.d.ts +56 -0
- package/dist/theme/formControls.d.ts.map +1 -0
- package/dist/theme/formControls.js +62 -0
- package/dist/theme/formControls.js.map +1 -0
- package/dist/theme/formControls.mjs +60 -0
- package/dist/theme/formControls.mjs.map +1 -0
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js +77 -4
- package/dist/theme/index.js.map +1 -1
- package/dist/theme/index.mjs +78 -5
- package/dist/theme/index.mjs.map +1 -1
- package/dist/theme/motion.d.ts +648 -0
- package/dist/theme/motion.d.ts.map +1 -0
- package/dist/theme/motion.js +629 -0
- package/dist/theme/motion.js.map +1 -0
- package/dist/theme/motion.mjs +617 -0
- package/dist/theme/motion.mjs.map +1 -0
- package/dist/theme/recipes/accordion.d.ts +12 -0
- package/dist/theme/recipes/accordion.d.ts.map +1 -0
- package/dist/theme/recipes/accordion.js +25 -0
- package/dist/theme/recipes/accordion.js.map +1 -0
- package/dist/theme/recipes/accordion.mjs +23 -0
- package/dist/theme/recipes/accordion.mjs.map +1 -0
- package/dist/translations/Defaults.translations.json.js +10 -1
- package/dist/translations/Defaults.translations.json.js.map +1 -1
- package/dist/translations/Defaults.translations.json.mjs +10 -2
- package/dist/translations/Defaults.translations.json.mjs.map +1 -1
- package/dist/types/polymorphic.d.ts +101 -0
- package/dist/types/polymorphic.d.ts.map +1 -0
- package/dist/types/polymorphic.js +57 -0
- package/dist/types/polymorphic.js.map +1 -0
- package/dist/types/polymorphic.mjs +55 -0
- package/dist/types/polymorphic.mjs.map +1 -0
- package/dist/utils/cubicBezier.d.ts +30 -0
- package/dist/utils/cubicBezier.d.ts.map +1 -0
- package/dist/utils/cubicBezier.js +67 -0
- package/dist/utils/cubicBezier.js.map +1 -0
- package/dist/utils/cubicBezier.mjs +65 -0
- package/dist/utils/cubicBezier.mjs.map +1 -0
- package/dist/utils/focusRing.d.ts +7 -6
- package/dist/utils/focusRing.d.ts.map +1 -1
- package/dist/utils/focusRing.js +7 -4
- package/dist/utils/focusRing.js.map +1 -1
- package/dist/utils/focusRing.mjs +7 -4
- package/dist/utils/focusRing.mjs.map +1 -1
- package/dist/utils/mergeCss.js +2 -2
- package/dist/utils/mergeCss.js.map +1 -1
- package/dist/utils/mergeCss.mjs +1 -1
- package/dist/utils/staggerProps.d.ts +52 -0
- package/dist/utils/staggerProps.d.ts.map +1 -0
- package/dist/utils/staggerProps.js +62 -0
- package/dist/utils/staggerProps.js.map +1 -0
- package/dist/utils/staggerProps.mjs +59 -0
- package/dist/utils/staggerProps.mjs.map +1 -0
- package/package.json +9 -2
- package/src/components/Accordion/Accordion.presence.test.tsx +54 -0
- package/src/components/Appear/Appear.stories.tsx +219 -0
- package/src/components/Appear/Appear.styles.ts +28 -0
- package/src/components/Appear/Appear.tsx +85 -0
- package/src/components/Appear/Appear.types.ts +18 -0
- package/src/components/Appear/index.ts +2 -0
- package/src/components/Badge/Badge.tsx +8 -4
- package/src/components/Badge/Badge.types.ts +19 -2
- package/src/components/Badge/index.ts +1 -1
- package/src/components/Banner/Banner.tsx +1 -1
- package/src/components/BottomSheet/BottomSheet.stories.tsx +205 -0
- package/src/components/BottomSheet/BottomSheet.styles.ts +162 -0
- package/src/components/BottomSheet/BottomSheet.test.tsx +129 -0
- package/src/components/BottomSheet/BottomSheet.tsx +47 -0
- package/src/components/BottomSheet/BottomSheet.types.ts +50 -0
- package/src/components/BottomSheet/BottomSheetBody.tsx +15 -0
- package/src/components/BottomSheet/BottomSheetCloseButton.tsx +40 -0
- package/src/components/BottomSheet/BottomSheetContent.tsx +43 -0
- package/src/components/BottomSheet/BottomSheetContext.ts +79 -0
- package/src/components/BottomSheet/BottomSheetFooter.tsx +12 -0
- package/src/components/BottomSheet/BottomSheetHeader.tsx +22 -0
- package/src/components/BottomSheet/BottomSheetOverlay.tsx +16 -0
- package/src/components/BottomSheet/index.tsx +22 -0
- package/src/components/Button/Button.cursor.test.tsx +60 -0
- package/src/components/Button/Button.lift.test.tsx +150 -0
- package/src/components/Button/Button.press.test.tsx +54 -0
- package/src/components/Button/Button.stories.tsx +80 -1
- package/src/components/Button/Button.styles.ts +124 -42
- package/src/components/Button/Button.tsx +88 -9
- package/src/components/Button/Button.types.ts +47 -2
- package/src/components/Button/index.tsx +1 -0
- package/src/components/Card/Card.stories.tsx +33 -3
- package/src/components/Card/Card.styles.ts +37 -5
- package/src/components/Card/Card.tsx +13 -6
- package/src/components/Card/Card.types.ts +26 -2
- package/src/components/Card/index.ts +1 -1
- package/src/components/Checkbox/Checkbox.styles.ts +26 -0
- package/src/components/Checkbox/CheckboxControl.tsx +10 -1
- package/src/components/Chip/Chip.tsx +8 -4
- package/src/components/Chip/Chip.types.ts +19 -4
- package/src/components/Chip/index.ts +6 -1
- package/src/components/Collapsible/Collapsible.presence.test.tsx +83 -0
- package/src/components/Collapsible/CollapsibleContent.tsx +13 -1
- package/src/components/ColorMode/ColorModeToggle.tsx +33 -2
- package/src/components/Confetti/Confetti.stories.tsx +88 -0
- package/src/components/Confetti/Confetti.styles.ts +57 -0
- package/src/components/Confetti/Confetti.tsx +182 -0
- package/src/components/Confetti/Confetti.types.ts +13 -0
- package/src/components/Confetti/index.ts +2 -0
- package/src/components/Container/Container.tsx +10 -3
- package/src/components/Container/Container.types.ts +20 -0
- package/src/components/Container/index.ts +1 -0
- package/src/components/CopyableCode/CopyableCode.tsx +99 -4
- package/src/components/CountUp/CountUp.stories.tsx +127 -0
- package/src/components/CountUp/CountUp.tsx +122 -0
- package/src/components/CountUp/CountUp.types.ts +19 -0
- package/src/components/CountUp/index.ts +2 -0
- package/src/components/ErrorFallback/ErrorFallback.tsx +32 -3
- package/src/components/ExpandableText/ExpandableText.stories.tsx +7 -7
- package/src/components/ExpandableText/ExpandableText.tsx +41 -7
- package/src/components/ExpandableText/useExpandableText.ts +90 -103
- package/src/components/FileInput/FileInput.tsx +17 -5
- package/src/components/FileItem/FileItem.tsx +10 -10
- package/src/components/FileList/FileList.tsx +15 -4
- package/src/components/FileList/FileList.types.ts +9 -0
- package/src/components/FlyTo/FlyTo.stories.tsx +157 -0
- package/src/components/FlyTo/FlyTo.styles.ts +31 -0
- package/src/components/FlyTo/FlyTo.tsx +88 -0
- package/src/components/FlyTo/FlyTo.types.ts +15 -0
- package/src/components/FlyTo/index.ts +2 -0
- package/src/components/Form/FieldError/FieldError.test.tsx +33 -0
- package/src/components/Form/FieldError/FieldError.tsx +20 -0
- package/src/components/Form/FieldError/index.ts +2 -0
- package/src/components/Form/FieldHelp/FieldHelp.tsx +18 -0
- package/src/components/Form/FieldHelp/index.ts +2 -0
- package/src/components/Form/FieldLabel/FieldLabel.tsx +46 -0
- package/src/components/Form/FieldLabel/FieldLabel.types.ts +21 -0
- package/src/components/Form/FieldLabel/index.ts +2 -0
- package/src/components/Form/FieldRow/FieldRow.stories.tsx +85 -0
- package/src/components/Form/FieldRow/FieldRow.test.tsx +89 -0
- package/src/components/Form/FieldRow/FieldRow.tsx +46 -0
- package/src/components/Form/FieldRow/FieldRow.types.ts +32 -0
- package/src/components/Form/FieldRow/index.ts +2 -0
- package/src/components/Form/FormFooter/FormFooter.stories.tsx +70 -0
- package/src/components/Form/FormFooter/FormFooter.test.tsx +67 -0
- package/src/components/Form/FormFooter/FormFooter.tsx +46 -0
- package/src/components/Form/FormFooter/FormFooter.types.ts +23 -0
- package/src/components/Form/FormFooter/index.ts +2 -0
- package/src/components/Form/FormModalFooter/FormModalFooter.stories.tsx +64 -0
- package/src/components/Form/FormModalFooter/FormModalFooter.test.tsx +155 -0
- package/src/components/Form/FormModalFooter/FormModalFooter.tsx +83 -0
- package/src/components/Form/FormModalFooter/FormModalFooter.types.ts +53 -0
- package/src/components/Form/FormModalFooter/index.ts +2 -0
- package/src/components/Form/FormScrollArea/FormScrollArea.tsx +27 -0
- package/src/components/Form/FormScrollArea/index.ts +1 -0
- package/src/components/Form/FormSection/CollapsibleFormSection.tsx +35 -0
- package/src/components/Form/FormSection/FlatFormSection.tsx +41 -0
- package/src/components/Form/FormSection/FormSection.stories.tsx +115 -0
- package/src/components/Form/FormSection/FormSection.test.tsx +89 -0
- package/src/components/Form/FormSection/FormSection.tsx +33 -0
- package/src/components/Form/FormSection/FormSection.types.ts +34 -0
- package/src/components/Form/FormSection/index.ts +2 -0
- package/src/components/Form/FormSectionHeader/FormSectionHeader.stories.tsx +53 -0
- package/src/components/Form/FormSectionHeader/FormSectionHeader.test.tsx +74 -0
- package/src/components/Form/FormSectionHeader/FormSectionHeader.tsx +48 -0
- package/src/components/Form/FormSectionHeader/FormSectionHeader.types.ts +17 -0
- package/src/components/Form/FormSectionHeader/index.ts +2 -0
- package/src/components/Form/index.ts +17 -0
- package/src/components/Icon/ICON_MANAGEMENT.md +1 -0
- package/src/components/Icon/Icon.stories.tsx +6 -2
- package/src/components/Icon/_constants/iconList.ts +523 -299
- package/src/components/Icon/_utils/createIcon.tsx +1 -0
- package/src/components/Icon/index.tsx +210 -27
- package/src/components/IconButton/IconButton.tsx +14 -3
- package/src/components/IconButton/IconButton.types.ts +19 -2
- package/src/components/IconButton/index.tsx +1 -0
- package/src/components/InfoSprinkle/InfoSprinkle.tsx +0 -1
- package/src/components/InlineCode/InlineCode.tsx +9 -2
- package/src/components/Input/Input.stories.tsx +5 -5
- package/src/components/Input/Input.tsx +2 -0
- package/src/components/Loaders/PageLoader.tsx +5 -2
- package/src/components/Loaders/SectionLoader.tsx +2 -1
- package/src/components/Markdown/Markdown.tsx +6 -1
- package/src/components/Menu/MenuItem.tsx +11 -3
- package/src/components/Menu/MenuItem.types.ts +23 -2
- package/src/components/Menu/MenuList.tsx +35 -3
- package/src/components/Modal/Modal.stories.tsx +7 -6
- package/src/components/Modal/Modal.styles.ts +19 -0
- package/src/components/Modal/Modal.tsx +8 -2
- package/src/components/Modal/Modal.types.ts +10 -2
- package/src/components/Modal/ModalContent/ModalContent.tsx +10 -1
- package/src/components/Modal/ModalContext.ts +1 -1
- package/src/components/Modal/ModalOverlay.tsx +9 -1
- package/src/components/Pagination/Pagination.tsx +8 -3
- package/src/components/PasswordInput/PasswordInput.tsx +3 -2
- package/src/components/PinInput/PinInput.stories.tsx +36 -9
- package/src/components/PinInput/PinInput.tsx +54 -45
- package/src/components/PinInput/PinInput.types.ts +17 -25
- package/src/components/Popover/PopoverContent.tsx +3 -0
- package/src/components/ProgressBar/ProgressBar.indeterminate.test.tsx +55 -0
- package/src/components/ProgressBar/ProgressBar.styles.ts +26 -0
- package/src/components/ProgressBar/ProgressBar.tsx +34 -7
- package/src/components/ProgressBar/ProgressBar.types.ts +10 -0
- package/src/components/Pulse/Pulse.remount.test.tsx +179 -0
- package/src/components/Pulse/Pulse.stories.tsx +74 -0
- package/src/components/Pulse/Pulse.styles.ts +42 -0
- package/src/components/Pulse/Pulse.tsx +82 -0
- package/src/components/Pulse/Pulse.types.ts +12 -0
- package/src/components/Pulse/index.ts +2 -0
- package/src/components/Radio/Radio.stories.tsx +34 -22
- package/src/components/Radio/Radio.styles.ts +24 -0
- package/src/components/Radio/RadioControl.tsx +33 -6
- package/src/components/Reveal/Reveal.stories.tsx +61 -0
- package/src/components/Reveal/Reveal.styles.ts +38 -0
- package/src/components/Reveal/Reveal.test.tsx +80 -0
- package/src/components/Reveal/Reveal.tsx +62 -0
- package/src/components/Reveal/Reveal.types.ts +6 -0
- package/src/components/Reveal/index.ts +2 -0
- package/src/components/SeeMoreButton/SeeMoreButton.tsx +12 -5
- package/src/components/SeeMoreButton/SeeMoreButton.types.ts +14 -3
- package/src/components/SegmentedControl/SegmentedControl.styles.ts +22 -0
- package/src/components/SegmentedControl/SegmentedControl.timing.test.tsx +81 -0
- package/src/components/SegmentedControl/SegmentedControl.tsx +7 -1
- package/src/components/Select/Combobox.tsx +7 -1
- package/src/components/Select/ComboboxField.tsx +11 -1
- package/src/components/Select/Comparison.stories.tsx +19 -0
- package/src/components/Select/Select.tsx +3 -0
- package/src/components/Select/Select.types.ts +26 -1
- package/src/components/Select/SelectField.tsx +23 -3
- package/src/components/Shake/Shake.stories.tsx +155 -0
- package/src/components/Shake/Shake.styles.ts +31 -0
- package/src/components/Shake/Shake.tsx +79 -0
- package/src/components/Shake/Shake.types.ts +11 -0
- package/src/components/Shake/index.ts +2 -0
- package/src/components/Slider/Slider.tsx +16 -1
- package/src/components/Slider/Slider.types.ts +15 -0
- package/src/components/Spinner/Spinner.styles.ts +32 -0
- package/src/components/Spinner/Spinner.tsx +9 -2
- package/src/components/SwapTransition/SwapTransition.stories.tsx +229 -0
- package/src/components/SwapTransition/SwapTransition.styles.ts +38 -0
- package/src/components/SwapTransition/SwapTransition.test.tsx +127 -0
- package/src/components/SwapTransition/SwapTransition.tsx +130 -0
- package/src/components/SwapTransition/SwapTransition.types.ts +22 -0
- package/src/components/SwapTransition/index.ts +2 -0
- package/src/components/Switch/SwitchControl.tsx +11 -1
- package/src/components/Table/Table.stories.tsx +253 -0
- package/src/components/Table/TableContext.tsx +101 -35
- package/src/components/Table/Td.tsx +13 -8
- package/src/components/Table/Th.tsx +13 -8
- package/src/components/Table/contextStability.test.tsx +140 -0
- package/src/components/Table/stickyWidth.test.tsx +138 -0
- package/src/components/Table/useRegisterStickyWidth.ts +83 -0
- package/src/components/Tabs/Tab/Tab.styles.ts +48 -5
- package/src/components/Tabs/Tab/index.ts +1 -0
- package/src/components/Tabs/index.tsx +1 -1
- package/src/components/Tag/Tag.styles.ts +27 -21
- package/src/components/Tag/Tag.tsx +14 -4
- package/src/components/Tag/Tag.types.ts +17 -4
- package/src/components/Tag/index.ts +6 -1
- package/src/components/Textarea/Textarea.tsx +2 -0
- package/src/components/Toast/Toast.action.test.tsx +135 -0
- package/src/components/Toast/Toast.stories.tsx +111 -0
- package/src/components/Toast/Toast.styles.ts +60 -0
- package/src/components/Toast/Toast.tsx +16 -3
- package/src/components/Toast/Toast.types.ts +26 -1
- package/src/components/Toast/ToastIcon/ToastIcon.tsx +8 -8
- package/src/components/Toast/Toaster.tsx +11 -0
- package/src/components/Toast/useToast.tsx +17 -2
- package/src/components/Tooltip/Tooltip.instant.test.tsx +43 -0
- package/src/components/Tooltip/Tooltip.tsx +15 -1
- package/src/components/Tree/TreeBranchIndicator.tsx +4 -4
- package/src/components/Typography/Caption.tsx +41 -0
- package/src/components/Typography/H1.tsx +10 -3
- package/src/components/Typography/H2.tsx +10 -3
- package/src/components/Typography/H3.tsx +10 -4
- package/src/components/Typography/H4.tsx +10 -3
- package/src/components/Typography/H5.tsx +10 -3
- package/src/components/Typography/Link.tsx +71 -12
- package/src/components/Typography/Overline.tsx +9 -3
- package/src/components/Typography/Subtext.tsx +9 -3
- package/src/components/Typography/Subtitle.tsx +26 -4
- package/src/components/Typography/Text.tsx +9 -3
- package/src/components/Typography/Typography.stories.tsx +69 -1
- package/src/components/Typography/Typography.types.ts +47 -2
- package/src/components/Typography/index.ts +9 -2
- package/src/components/Workflow/README.md +64 -0
- package/src/components/Workflow/Workflow.tsx +2 -0
- package/src/components/Workflow/Workflow.types.ts +10 -0
- package/src/components/Workflow/canvas/Canvas/BranchLabelBadge.tsx +3 -3
- package/src/components/Workflow/canvas/Canvas/Canvas.tsx +57 -53
- package/src/components/Workflow/canvas/Canvas/CanvasControls.tsx +15 -15
- package/src/components/Workflow/canvas/Canvas/LabeledEdge.tsx +2 -2
- package/src/components/Workflow/canvas/CollapsibleSection/CollapsibleSection.tsx +8 -4
- package/src/components/Workflow/canvas/DrawerShell/DrawerHeader.tsx +3 -3
- package/src/components/Workflow/canvas/DrawerShell/DrawerIssues.tsx +2 -2
- package/src/components/Workflow/canvas/DrawerShell/DrawerShell.tsx +2 -2
- package/src/components/Workflow/canvas/FieldWrapper/FieldWrapper.tsx +3 -3
- package/src/components/Workflow/canvas/GenericNode/GenericNode.tsx +2 -2
- package/src/components/Workflow/canvas/GraphErrorBanner/GraphErrorBanner.tsx +8 -5
- package/src/components/Workflow/canvas/NodePalette/NodePalette.tsx +15 -5
- package/src/components/Workflow/canvas/NodePalette/NodePaletteToggle.tsx +2 -2
- package/src/components/Workflow/canvas/NodeShell/NodeShell.tsx +4 -4
- package/src/components/Workflow/createNode.test.ts +40 -2
- package/src/components/Workflow/createNode.ts +70 -2
- package/src/components/Workflow/index.ts +8 -0
- package/src/components/Workflow/layout/autoLayout.ts +4 -4
- package/src/components/Workflow/placement.test.ts +156 -0
- package/src/components/Workflow/placement.ts +172 -0
- package/src/components/Workflow/stories/Workflow.stories.tsx +79 -0
- package/src/components/Workflow/stories/toyNodeTypes.tsx +4 -4
- package/src/components/Workflow/useWorkflowActions.test.tsx +345 -0
- package/src/components/Workflow/useWorkflowActions.ts +196 -0
- package/src/components/a11y.kwcag.test.tsx +502 -0
- package/src/components/componentMotion.test.ts +110 -0
- package/src/guidelines/FeedbackActions.mdx +133 -0
- package/src/index.ts +60 -0
- package/src/styles.ts +20 -0
- package/src/test-support/setup.ts +13 -0
- package/src/theme/Motion.stories.tsx +1613 -0
- package/src/theme/MotionCases.stories.tsx +679 -0
- package/src/theme/Palette.stories.tsx +72 -23
- package/src/theme/animationStyles.test.ts +185 -0
- package/src/theme/claude.md +121 -2
- package/src/theme/colors.ts +154 -83
- package/src/theme/formControls.ts +58 -0
- package/src/theme/index.ts +82 -4
- package/src/theme/motion.test.ts +50 -0
- package/src/theme/motion.ts +668 -0
- package/src/theme/motionGuards.test.ts +137 -0
- package/src/theme/recipes/accordion.ts +20 -0
- package/src/translations/Defaults.translations.json +8 -1
- package/src/types/polymorphic.ts +114 -0
- package/src/utils/cubicBezier.ts +69 -0
- package/src/utils/focusRing.ts +7 -4
- package/src/utils/mergeCss.ts +1 -1
- package/src/utils/staggerProps.test.ts +105 -0
- package/src/utils/staggerProps.ts +63 -0
|
@@ -4,6 +4,7 @@ import React, {
|
|
|
4
4
|
useCallback,
|
|
5
5
|
useContext,
|
|
6
6
|
useEffect,
|
|
7
|
+
useMemo,
|
|
7
8
|
useRef,
|
|
8
9
|
useState,
|
|
9
10
|
} from 'react';
|
|
@@ -14,9 +15,11 @@ export interface TableScrollState {
|
|
|
14
15
|
isScrolling: boolean;
|
|
15
16
|
}
|
|
16
17
|
|
|
18
|
+
type ColumnWidths = Record<number, number>; // Maps index to width
|
|
19
|
+
|
|
17
20
|
interface StickyColumnInfo {
|
|
18
|
-
|
|
19
|
-
|
|
21
|
+
left: ColumnWidths;
|
|
22
|
+
right: ColumnWidths;
|
|
20
23
|
}
|
|
21
24
|
|
|
22
25
|
interface TableContextValue extends TableScrollState {
|
|
@@ -26,6 +29,14 @@ interface TableContextValue extends TableScrollState {
|
|
|
26
29
|
index: number,
|
|
27
30
|
width: number
|
|
28
31
|
) => void;
|
|
32
|
+
/**
|
|
33
|
+
* Whether a width is already known for this sticky column.
|
|
34
|
+
*
|
|
35
|
+
* Reads a ref, not state, so a caller can ask without subscribing to width
|
|
36
|
+
* changes — body cells use it to skip measuring a column the header has
|
|
37
|
+
* already measured. See {@link useRegisterStickyWidth}.
|
|
38
|
+
*/
|
|
39
|
+
hasStickyWidth: (direction: 'left' | 'right', index: number) => boolean;
|
|
29
40
|
getStickyOffset: (direction: 'left' | 'right', index: number) => number;
|
|
30
41
|
isLastStickyColumn: (direction: 'left' | 'right', index: number) => boolean;
|
|
31
42
|
}
|
|
@@ -52,9 +63,15 @@ export const TableProvider: React.FC<TableProviderProps> = ({ children }) => {
|
|
|
52
63
|
isScrolling: false,
|
|
53
64
|
});
|
|
54
65
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
66
|
+
// Column widths live in state (not a ref) so that a width change — a font
|
|
67
|
+
// swap, a window/sidebar resize, or the columns re-flowing when the table
|
|
68
|
+
// goes from fitting to overflowing — triggers a re-render and the sticky
|
|
69
|
+
// offsets are recomputed. Storing them in a ref (the previous approach) meant
|
|
70
|
+
// the offsets were computed once at mount and then went stale, detaching the
|
|
71
|
+
// sticky columns from their real positions.
|
|
72
|
+
const [stickyColumns, setStickyColumns] = useState<StickyColumnInfo>({
|
|
73
|
+
left: {},
|
|
74
|
+
right: {},
|
|
58
75
|
});
|
|
59
76
|
|
|
60
77
|
// 스크롤 상태 업데이트
|
|
@@ -95,14 +112,41 @@ export const TableProvider: React.FC<TableProviderProps> = ({ children }) => {
|
|
|
95
112
|
[updateScrollState]
|
|
96
113
|
);
|
|
97
114
|
|
|
98
|
-
|
|
115
|
+
/*
|
|
116
|
+
* A ref mirror of the widths above, so `hasStickyWidth` can answer without
|
|
117
|
+
* making its caller a subscriber. Every body cell subscribing to width state
|
|
118
|
+
* would re-render the whole table on the first measurement of any column.
|
|
119
|
+
*/
|
|
120
|
+
const stickyColumnsRef = useRef<StickyColumnInfo>({ left: {}, right: {} });
|
|
121
|
+
|
|
122
|
+
const hasStickyWidth = useCallback(
|
|
123
|
+
(direction: 'left' | 'right', index: number) =>
|
|
124
|
+
stickyColumnsRef.current[direction][index] !== undefined,
|
|
125
|
+
[]
|
|
126
|
+
);
|
|
127
|
+
|
|
128
|
+
// Register a sticky column with its (measured) width. Rounds to whole pixels
|
|
129
|
+
// and bails when unchanged so the ResizeObserver-driven callers can't
|
|
130
|
+
// ping-pong on sub-pixel differences and spin the render loop.
|
|
99
131
|
const registerStickyColumn = useCallback(
|
|
100
132
|
(direction: 'left' | 'right', index: number, width: number) => {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
133
|
+
const rounded = Math.round(width);
|
|
134
|
+
// The ref is written here rather than in an effect so `hasStickyWidth` is
|
|
135
|
+
// already true for the next cell that mounts in the same commit — without
|
|
136
|
+
// that, every cell of a column measures before the first state update
|
|
137
|
+
// lands, which is exactly the cost this is meant to avoid.
|
|
138
|
+
stickyColumnsRef.current = {
|
|
139
|
+
...stickyColumnsRef.current,
|
|
140
|
+
[direction]: {
|
|
141
|
+
...stickyColumnsRef.current[direction],
|
|
142
|
+
[index]: rounded,
|
|
143
|
+
},
|
|
144
|
+
};
|
|
145
|
+
setStickyColumns((prev) => {
|
|
146
|
+
const side = prev[direction];
|
|
147
|
+
if (side[index] === rounded) return prev;
|
|
148
|
+
return { ...prev, [direction]: { ...side, [index]: rounded } };
|
|
149
|
+
});
|
|
106
150
|
},
|
|
107
151
|
[]
|
|
108
152
|
);
|
|
@@ -112,38 +156,33 @@ export const TableProvider: React.FC<TableProviderProps> = ({ children }) => {
|
|
|
112
156
|
(direction: 'left' | 'right', index: number) => {
|
|
113
157
|
if (index === 0) return 0;
|
|
114
158
|
|
|
115
|
-
const
|
|
116
|
-
direction === 'left'
|
|
117
|
-
? stickyColumnsRef.current.leftColumnWidths
|
|
118
|
-
: stickyColumnsRef.current.rightColumnWidths;
|
|
159
|
+
const widths = stickyColumns[direction];
|
|
119
160
|
|
|
120
161
|
let offset = 0;
|
|
121
162
|
for (let i = 0; i < index; i++) {
|
|
122
|
-
offset +=
|
|
163
|
+
offset += widths[i] || 0;
|
|
123
164
|
}
|
|
124
165
|
|
|
125
166
|
return offset;
|
|
126
167
|
},
|
|
127
|
-
[]
|
|
168
|
+
[stickyColumns]
|
|
128
169
|
);
|
|
129
170
|
|
|
130
171
|
// Check if a column is the last sticky column on its side
|
|
131
172
|
const isLastStickyColumn = useCallback(
|
|
132
173
|
(direction: 'left' | 'right', index: number) => {
|
|
133
|
-
const
|
|
134
|
-
direction === 'left'
|
|
135
|
-
? stickyColumnsRef.current.leftColumnWidths
|
|
136
|
-
: stickyColumnsRef.current.rightColumnWidths;
|
|
174
|
+
const widths = stickyColumns[direction];
|
|
137
175
|
|
|
138
|
-
// Find the highest index
|
|
176
|
+
// Find the highest registered index on this side
|
|
139
177
|
let maxIndex = -1;
|
|
140
|
-
for (const
|
|
178
|
+
for (const key of Object.keys(widths)) {
|
|
179
|
+
const idx = Number(key);
|
|
141
180
|
if (idx > maxIndex) maxIndex = idx;
|
|
142
181
|
}
|
|
143
182
|
|
|
144
183
|
return index === maxIndex;
|
|
145
184
|
},
|
|
146
|
-
[]
|
|
185
|
+
[stickyColumns]
|
|
147
186
|
);
|
|
148
187
|
|
|
149
188
|
// 단일 useEffect에서 모든 이벤트 리스너 관리
|
|
@@ -171,17 +210,44 @@ export const TableProvider: React.FC<TableProviderProps> = ({ children }) => {
|
|
|
171
210
|
};
|
|
172
211
|
}, [updateScrollState]);
|
|
173
212
|
|
|
213
|
+
/*
|
|
214
|
+
* Memoised, because an object literal here is a new value on *every* render of
|
|
215
|
+
* this provider, and a new context value re-renders every consumer —
|
|
216
|
+
* `Th`/`Td`/`Tr` all call `useTableContext()`. React propagates a context
|
|
217
|
+
* change into subtrees that `React.memo` has already bailed out of, so a
|
|
218
|
+
* memoised row does not stop it: the cells inside re-render anyway.
|
|
219
|
+
*
|
|
220
|
+
* In a virtualised table that is the dominant cost of scrolling. Measured on a
|
|
221
|
+
* consumer's 12,000-row admin table (production build): one scroll step that
|
|
222
|
+
* mounted a single new row re-rendered `Td` **794 times** — every cell of every
|
|
223
|
+
* rendered row, each one re-running Chakra's runtime style resolution. Wall
|
|
224
|
+
* time was ~1,050ms per step and did not depend on how many rows the step
|
|
225
|
+
* actually brought in (1.8 rows and 7.3 rows cost the same), which is the
|
|
226
|
+
* signature of a whole-table re-render rather than incremental work.
|
|
227
|
+
*
|
|
228
|
+
* With this memo the value changes only when `scrollState` or the registered
|
|
229
|
+
* sticky widths change, so a scroll that alters neither costs nothing.
|
|
230
|
+
*/
|
|
231
|
+
const value = useMemo(
|
|
232
|
+
() => ({
|
|
233
|
+
...scrollState,
|
|
234
|
+
setContainerRef,
|
|
235
|
+
registerStickyColumn,
|
|
236
|
+
hasStickyWidth,
|
|
237
|
+
getStickyOffset,
|
|
238
|
+
isLastStickyColumn,
|
|
239
|
+
}),
|
|
240
|
+
[
|
|
241
|
+
scrollState,
|
|
242
|
+
setContainerRef,
|
|
243
|
+
registerStickyColumn,
|
|
244
|
+
hasStickyWidth,
|
|
245
|
+
getStickyOffset,
|
|
246
|
+
isLastStickyColumn,
|
|
247
|
+
]
|
|
248
|
+
);
|
|
249
|
+
|
|
174
250
|
return (
|
|
175
|
-
<TableContext.Provider
|
|
176
|
-
value={{
|
|
177
|
-
...scrollState,
|
|
178
|
-
setContainerRef,
|
|
179
|
-
registerStickyColumn,
|
|
180
|
-
getStickyOffset,
|
|
181
|
-
isLastStickyColumn,
|
|
182
|
-
}}
|
|
183
|
-
>
|
|
184
|
-
{children}
|
|
185
|
-
</TableContext.Provider>
|
|
251
|
+
<TableContext.Provider value={value}>{children}</TableContext.Provider>
|
|
186
252
|
);
|
|
187
253
|
};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useRef } from 'react';
|
|
2
2
|
import { Table, useToken } from '@chakra-ui/react';
|
|
3
3
|
|
|
4
4
|
import { getStickyStyles } from './Table.styles';
|
|
5
5
|
import { TableCellProps } from './Table.types';
|
|
6
6
|
import { useTableContext } from './TableContext';
|
|
7
|
+
import { useRegisterStickyWidth } from './useRegisterStickyWidth';
|
|
7
8
|
|
|
8
9
|
export const Td = ({
|
|
9
10
|
wrap,
|
|
@@ -77,18 +78,22 @@ export const Td = ({
|
|
|
77
78
|
|
|
78
79
|
const {
|
|
79
80
|
registerStickyColumn,
|
|
81
|
+
hasStickyWidth,
|
|
80
82
|
getStickyOffset,
|
|
81
83
|
isLastStickyColumn,
|
|
82
84
|
...scrollState
|
|
83
85
|
} = tableContext;
|
|
84
86
|
|
|
85
|
-
//
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
87
|
+
// Keep this column's width registered so the cumulative sticky offsets stay
|
|
88
|
+
// correct across layout changes (font swap, resize, fit -> overflow).
|
|
89
|
+
useRegisterStickyWidth(cellRef, {
|
|
90
|
+
isSticky,
|
|
91
|
+
direction: stickyDirection,
|
|
92
|
+
index: stickyIndex,
|
|
93
|
+
register: registerStickyColumn,
|
|
94
|
+
hasWidth: hasStickyWidth,
|
|
95
|
+
role: 'body',
|
|
96
|
+
});
|
|
92
97
|
|
|
93
98
|
// Get the sticky offset based on the column's position
|
|
94
99
|
const stickyOffset = isSticky
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { forwardRef, useCallback,
|
|
1
|
+
import { forwardRef, useCallback, useRef } from 'react';
|
|
2
2
|
import { Table, useToken } from '@chakra-ui/react';
|
|
3
3
|
|
|
4
4
|
import { getStickyStyles } from './Table.styles';
|
|
5
5
|
import { TableCellProps } from './Table.types';
|
|
6
6
|
import { useTableContext } from './TableContext';
|
|
7
|
+
import { useRegisterStickyWidth } from './useRegisterStickyWidth';
|
|
7
8
|
|
|
8
9
|
export const Th = forwardRef<
|
|
9
10
|
HTMLTableCellElement,
|
|
@@ -81,18 +82,22 @@ export const Th = forwardRef<
|
|
|
81
82
|
|
|
82
83
|
const {
|
|
83
84
|
registerStickyColumn,
|
|
85
|
+
hasStickyWidth,
|
|
84
86
|
getStickyOffset,
|
|
85
87
|
isLastStickyColumn,
|
|
86
88
|
...scrollState
|
|
87
89
|
} = tableContext;
|
|
88
90
|
|
|
89
|
-
//
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
91
|
+
// Keep this column's width registered so the cumulative sticky offsets stay
|
|
92
|
+
// correct across layout changes (font swap, resize, fit -> overflow).
|
|
93
|
+
useRegisterStickyWidth(measureNodeRef, {
|
|
94
|
+
isSticky,
|
|
95
|
+
direction: stickyDirection,
|
|
96
|
+
index: stickyIndex,
|
|
97
|
+
register: registerStickyColumn,
|
|
98
|
+
hasWidth: hasStickyWidth,
|
|
99
|
+
role: 'header',
|
|
100
|
+
});
|
|
96
101
|
|
|
97
102
|
// Combine refs (forwarded ref and internal ref)
|
|
98
103
|
const setRefs = useCallback(
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { ReactNode, useMemo, useState } from 'react';
|
|
2
|
+
import { fireEvent, render, screen } from '@testing-library/react';
|
|
3
|
+
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
4
|
+
|
|
5
|
+
import { LogicianProvider } from '../LogicianProvider';
|
|
6
|
+
import { Table } from './Table';
|
|
7
|
+
import { TableContainer } from './TableContainer';
|
|
8
|
+
import { useTableContext } from './TableContext';
|
|
9
|
+
import { Tbody } from './Tbody';
|
|
10
|
+
import { Td } from './Td';
|
|
11
|
+
import { Tr } from './Tr';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* 표의 컨텍스트 값이 렌더마다 새 객체면, **표 안의 모든 셀이 다시 그려진다**.
|
|
15
|
+
*
|
|
16
|
+
* `Th`/`Td`/`Tr` 은 전부 `useTableContext()` 를 부른다. 컨텍스트 변경은
|
|
17
|
+
* `React.memo` 를 우회한다 — React 는 이미 bail-out 된 서브트리 **안으로** 변경을
|
|
18
|
+
* 전파하므로, 행을 memo 로 감싸도 그 안의 셀은 다시 그려진다.
|
|
19
|
+
*
|
|
20
|
+
* 가상 스크롤 표에서는 이것이 스크롤 비용 그 자체가 된다. 실측(소비자의 12,000행
|
|
21
|
+
* 관리자 표, 프로덕션 빌드): **새 행 하나만 마운트하는 스크롤 한 칸이 `Td` 를 794번**
|
|
22
|
+
* 다시 그렸다. 한 칸에 ~1,050ms 였고, 그 값은 그 칸이 실제로 몇 행을 새로 들였는지와
|
|
23
|
+
* **무관했다**(1.8행과 7.3행이 같은 비용) — 증분 작업이 아니라 표 전체가 다시
|
|
24
|
+
* 그려지고 있다는 신호다.
|
|
25
|
+
*
|
|
26
|
+
* 그래서 이 테스트는 오프셋이 맞는지가 아니라 **`Td` 가 몇 번 그려지는지**를 센다.
|
|
27
|
+
* 그것이 회귀했던 값이고, 다음 변경이 조용히 되돌릴 값이다.
|
|
28
|
+
*/
|
|
29
|
+
let tdRenders = 0;
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* `Td` 자신을 셀 수는 없으니(패키지 내부 컴포넌트다) **같은 것을 구독하는 대역**을
|
|
33
|
+
* 센다 — `useTableContext()` 를 부르는 컴포넌트. 표 안에서 다시 그려지는 모집단이
|
|
34
|
+
* 정확히 이것이다(`Th`/`Td`/`Tr` 이 전부 이 훅을 부른다).
|
|
35
|
+
*
|
|
36
|
+
* 이 대역이 셀 안에 있어야 의미가 있다: 행 엘리먼트가 고정돼 있어도 컨텍스트 변경은
|
|
37
|
+
* bail-out 된 서브트리 안으로 전파되므로, 여기서 세는 숫자가 곧 스크롤 한 칸의
|
|
38
|
+
* 실제 재렌더 수다.
|
|
39
|
+
*/
|
|
40
|
+
const ContextProbe = ({ children }: { children: ReactNode }) => {
|
|
41
|
+
useTableContext();
|
|
42
|
+
tdRenders += 1;
|
|
43
|
+
return <>{children}</>;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
const CountingTd = ({ children }: { children: ReactNode }) => (
|
|
47
|
+
<Td>
|
|
48
|
+
<ContextProbe>{children}</ContextProbe>
|
|
49
|
+
</Td>
|
|
50
|
+
);
|
|
51
|
+
|
|
52
|
+
beforeEach(() => {
|
|
53
|
+
// jsdom 에는 없다 — Chakra 의 provider 가 부팅하면서 부른다.
|
|
54
|
+
vi.stubGlobal('matchMedia', (query: string) => ({
|
|
55
|
+
matches: false,
|
|
56
|
+
media: query,
|
|
57
|
+
onchange: null,
|
|
58
|
+
addListener: () => {},
|
|
59
|
+
removeListener: () => {},
|
|
60
|
+
addEventListener: () => {},
|
|
61
|
+
removeEventListener: () => {},
|
|
62
|
+
dispatchEvent: () => false,
|
|
63
|
+
}));
|
|
64
|
+
tdRenders = 0;
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* 표를 그대로 둔 채 **표 위쪽만** 다시 그린다 — 가상 스크롤 목록이 스크롤 중에
|
|
69
|
+
* 하는 일이 정확히 이것이다(보이는 구간이 바뀌어 리스트 컴포넌트가 다시 그려진다).
|
|
70
|
+
* 행 엘리먼트는 같은 것을 다시 넘기므로, 셀이 다시 그려질 이유는 컨텍스트뿐이다.
|
|
71
|
+
*/
|
|
72
|
+
const Harness = ({ rowCount }: { rowCount: number }) => {
|
|
73
|
+
const [tick, setTick] = useState(0);
|
|
74
|
+
/*
|
|
75
|
+
* 행 엘리먼트를 고정한다 — 실제 목록에서 행이 `React.memo` 로 bail-out 되는 것과
|
|
76
|
+
* 같은 상황이다. 이렇게 해야 "부모가 다시 그려졌으니 자식도 다시 그려졌다"는
|
|
77
|
+
* 평범한 이유가 빠지고, 셀이 다시 그려질 수 있는 경로가 **컨텍스트 하나만** 남는다.
|
|
78
|
+
*/
|
|
79
|
+
const body = useMemo(
|
|
80
|
+
() => (
|
|
81
|
+
<Tbody>
|
|
82
|
+
{Array.from({ length: rowCount }, (_, i) => (
|
|
83
|
+
<Tr key={i}>
|
|
84
|
+
<CountingTd>row {i}</CountingTd>
|
|
85
|
+
</Tr>
|
|
86
|
+
))}
|
|
87
|
+
</Tbody>
|
|
88
|
+
),
|
|
89
|
+
[rowCount]
|
|
90
|
+
);
|
|
91
|
+
return (
|
|
92
|
+
<LogicianProvider>
|
|
93
|
+
<button type="button" onClick={() => setTick((t) => t + 1)}>
|
|
94
|
+
rerender
|
|
95
|
+
</button>
|
|
96
|
+
<span data-testid="tick">{tick}</span>
|
|
97
|
+
<TableContainer>
|
|
98
|
+
<Table>{body}</Table>
|
|
99
|
+
</TableContainer>
|
|
100
|
+
</LogicianProvider>
|
|
101
|
+
);
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
describe('table context identity', () => {
|
|
105
|
+
it('re-rendering the table owner does not re-render every cell', () => {
|
|
106
|
+
render(<Harness rowCount={40} />);
|
|
107
|
+
const afterMount = tdRenders;
|
|
108
|
+
expect(afterMount, '40행이 마운트되지 않았다').toBeGreaterThanOrEqual(40);
|
|
109
|
+
|
|
110
|
+
tdRenders = 0;
|
|
111
|
+
fireEvent.click(screen.getByText('rerender'));
|
|
112
|
+
expect(screen.getByTestId('tick')).toHaveTextContent('1');
|
|
113
|
+
|
|
114
|
+
// 스크롤 상태도 sticky 너비도 바뀌지 않았으므로 셀은 하나도 다시 그려질 이유가
|
|
115
|
+
// 없다. 컨텍스트 값이 리터럴이면 40개가 전부 다시 그려진다.
|
|
116
|
+
expect(
|
|
117
|
+
tdRenders,
|
|
118
|
+
'표 주인이 다시 그려졌다는 이유만으로 모든 셀이 다시 그려졌다 — ' +
|
|
119
|
+
'컨텍스트 값이 렌더마다 새 객체다'
|
|
120
|
+
).toBe(0);
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
it('the cell count does not scale with row count on a parent re-render', () => {
|
|
124
|
+
const rerenderCost = (rowCount: number) => {
|
|
125
|
+
const view = render(<Harness rowCount={rowCount} />);
|
|
126
|
+
tdRenders = 0;
|
|
127
|
+
fireEvent.click(screen.getByText('rerender'));
|
|
128
|
+
const cost = tdRenders;
|
|
129
|
+
view.unmount();
|
|
130
|
+
return cost;
|
|
131
|
+
};
|
|
132
|
+
const small = rerenderCost(10);
|
|
133
|
+
const large = rerenderCost(100);
|
|
134
|
+
|
|
135
|
+
expect(
|
|
136
|
+
large,
|
|
137
|
+
`행이 10배인데 재렌더도 ${small} → ${large} 로 따라 늘었다 — 스크롤 비용이 행 수에 비례한다`
|
|
138
|
+
).toBe(small);
|
|
139
|
+
});
|
|
140
|
+
});
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { render } from '@testing-library/react';
|
|
3
|
+
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
4
|
+
|
|
5
|
+
import { LogicianProvider } from '../LogicianProvider';
|
|
6
|
+
import { Table } from './Table';
|
|
7
|
+
import { TableContainer } from './TableContainer';
|
|
8
|
+
import { Tbody } from './Tbody';
|
|
9
|
+
import { Td } from './Td';
|
|
10
|
+
import { Th } from './Th';
|
|
11
|
+
import { Thead } from './Thead';
|
|
12
|
+
import { Tr } from './Tr';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* A column's width is one number, so it should be measured once — by the header.
|
|
16
|
+
*
|
|
17
|
+
* Before this, every cell measured itself and attached its own `ResizeObserver`.
|
|
18
|
+
* In a static table that is redundant; in a virtualised one it is the dominant
|
|
19
|
+
* cost of scrolling, because rows mount and unmount continuously and each mount
|
|
20
|
+
* forces a synchronous layout. Measured on a 12,000-row admin table (production
|
|
21
|
+
* build): 68 `getBoundingClientRect` calls and 28 observers created *per scroll
|
|
22
|
+
* step*, for three sticky columns whose widths never changed.
|
|
23
|
+
*
|
|
24
|
+
* These count the calls rather than assert on offsets, because the number of
|
|
25
|
+
* measurements is the thing that regressed and the thing a future change would
|
|
26
|
+
* silently undo.
|
|
27
|
+
*/
|
|
28
|
+
const counters = { gbcr: 0, observers: 0 };
|
|
29
|
+
|
|
30
|
+
beforeEach(() => {
|
|
31
|
+
// jsdom 에는 없다 — Chakra 의 provider 가 부팅하면서 부른다.
|
|
32
|
+
vi.stubGlobal('matchMedia', (query: string) => ({
|
|
33
|
+
matches: false,
|
|
34
|
+
media: query,
|
|
35
|
+
onchange: null,
|
|
36
|
+
addListener: () => {},
|
|
37
|
+
removeListener: () => {},
|
|
38
|
+
addEventListener: () => {},
|
|
39
|
+
removeEventListener: () => {},
|
|
40
|
+
dispatchEvent: () => false,
|
|
41
|
+
}));
|
|
42
|
+
counters.gbcr = 0;
|
|
43
|
+
counters.observers = 0;
|
|
44
|
+
vi.spyOn(Element.prototype, 'getBoundingClientRect').mockImplementation(
|
|
45
|
+
function (this: Element) {
|
|
46
|
+
counters.gbcr += 1;
|
|
47
|
+
return {
|
|
48
|
+
width: 120,
|
|
49
|
+
height: 40,
|
|
50
|
+
top: 0,
|
|
51
|
+
left: 0,
|
|
52
|
+
right: 120,
|
|
53
|
+
bottom: 40,
|
|
54
|
+
x: 0,
|
|
55
|
+
y: 0,
|
|
56
|
+
toJSON: () => ({}),
|
|
57
|
+
} as DOMRect;
|
|
58
|
+
}
|
|
59
|
+
);
|
|
60
|
+
class CountingResizeObserver {
|
|
61
|
+
constructor() {
|
|
62
|
+
counters.observers += 1;
|
|
63
|
+
}
|
|
64
|
+
observe() {}
|
|
65
|
+
unobserve() {}
|
|
66
|
+
disconnect() {}
|
|
67
|
+
}
|
|
68
|
+
vi.stubGlobal('ResizeObserver', CountingResizeObserver);
|
|
69
|
+
});
|
|
70
|
+
|
|
71
|
+
const rows = (n: number) =>
|
|
72
|
+
Array.from({ length: n }, (_, i) => (
|
|
73
|
+
<Tr key={i}>
|
|
74
|
+
<Td isSticky stickyDirection="left" stickyIndex={0}>
|
|
75
|
+
row {i}
|
|
76
|
+
</Td>
|
|
77
|
+
<Td>other</Td>
|
|
78
|
+
</Tr>
|
|
79
|
+
));
|
|
80
|
+
|
|
81
|
+
/** 표 컴포넌트가 Chakra 위에 있어서 provider 없이는 렌더되지 않는다. */
|
|
82
|
+
const inProvider = (ui: ReactNode) => <LogicianProvider>{ui}</LogicianProvider>;
|
|
83
|
+
|
|
84
|
+
const withHeader = (rowCount: number) =>
|
|
85
|
+
inProvider(
|
|
86
|
+
<TableContainer>
|
|
87
|
+
<Table>
|
|
88
|
+
<Thead>
|
|
89
|
+
<Tr>
|
|
90
|
+
<Th isSticky stickyDirection="left" stickyIndex={0}>
|
|
91
|
+
name
|
|
92
|
+
</Th>
|
|
93
|
+
<Th>other</Th>
|
|
94
|
+
</Tr>
|
|
95
|
+
</Thead>
|
|
96
|
+
<Tbody>{rows(rowCount)}</Tbody>
|
|
97
|
+
</Table>
|
|
98
|
+
</TableContainer>
|
|
99
|
+
);
|
|
100
|
+
|
|
101
|
+
describe('sticky column width — measured once, not once per row', () => {
|
|
102
|
+
it('one observer for the column, however many rows there are', () => {
|
|
103
|
+
render(withHeader(30));
|
|
104
|
+
expect(
|
|
105
|
+
counters.observers,
|
|
106
|
+
'한 열의 너비는 하나인데 행마다 관찰자를 달고 있다'
|
|
107
|
+
).toBe(1);
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
it('adding rows does not add measurements', () => {
|
|
111
|
+
render(withHeader(5));
|
|
112
|
+
const withFive = counters.gbcr;
|
|
113
|
+
counters.gbcr = 0;
|
|
114
|
+
render(withHeader(50));
|
|
115
|
+
expect(
|
|
116
|
+
counters.gbcr,
|
|
117
|
+
'행이 10배가 됐는데 측정 횟수가 따라 늘었다 — 가상 스크롤에서 이게 스크롤 비용이 된다'
|
|
118
|
+
).toBeLessThanOrEqual(withFive);
|
|
119
|
+
});
|
|
120
|
+
|
|
121
|
+
it('a table with no header row still gets a width', () => {
|
|
122
|
+
// 헤더가 없으면 아무도 재지 않아 오프셋이 전부 0이 된다. 그때는 첫 본문 셀이
|
|
123
|
+
// 대신 잰다 — 그래서 body 셀의 측정을 통째로 없애지 않았다.
|
|
124
|
+
render(
|
|
125
|
+
inProvider(
|
|
126
|
+
<TableContainer>
|
|
127
|
+
<Table>
|
|
128
|
+
<Tbody>{rows(20)}</Tbody>
|
|
129
|
+
</Table>
|
|
130
|
+
</TableContainer>
|
|
131
|
+
)
|
|
132
|
+
);
|
|
133
|
+
expect(
|
|
134
|
+
counters.gbcr,
|
|
135
|
+
'헤더 없는 표에서 아무도 너비를 재지 않았다'
|
|
136
|
+
).toBeGreaterThan(0);
|
|
137
|
+
});
|
|
138
|
+
});
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { RefObject, useEffect } from 'react';
|
|
2
|
+
|
|
3
|
+
import { StickyDirection } from './Table.styles';
|
|
4
|
+
|
|
5
|
+
interface UseRegisterStickyWidthOptions {
|
|
6
|
+
isSticky: boolean;
|
|
7
|
+
direction: StickyDirection;
|
|
8
|
+
index: number;
|
|
9
|
+
register: (direction: StickyDirection, index: number, width: number) => void;
|
|
10
|
+
/**
|
|
11
|
+
* Whether some cell has already measured this column. Body cells use it to
|
|
12
|
+
* skip; header cells ignore it (they are the authority).
|
|
13
|
+
*/
|
|
14
|
+
hasWidth: (direction: StickyDirection, index: number) => boolean;
|
|
15
|
+
/**
|
|
16
|
+
* `header` — one cell per column, mounted for the table's lifetime. It owns
|
|
17
|
+
* the measurement and keeps a `ResizeObserver` so the width follows later
|
|
18
|
+
* layout changes.
|
|
19
|
+
*
|
|
20
|
+
* `body` — one cell per column *per row*. It measures only when no width is
|
|
21
|
+
* known yet (a table with no header row) and never observes.
|
|
22
|
+
*/
|
|
23
|
+
role: 'header' | 'body';
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Keep a sticky column's measured width registered with the table context, so
|
|
28
|
+
* the cumulative sticky offsets stay correct across layout changes — a web-font
|
|
29
|
+
* swap that reflows the text, a window/sidebar resize, or the columns shrinking
|
|
30
|
+
* when the table goes from fitting its container to overflowing it. Without a
|
|
31
|
+
* live measurement the offsets are computed once from stale widths and the
|
|
32
|
+
* pinned columns visibly detach (a gap opens and neighbours collapse).
|
|
33
|
+
*
|
|
34
|
+
* **A column's width is one number, so it is measured once — by the header.**
|
|
35
|
+
* Every cell used to measure itself and attach its own `ResizeObserver`. In a
|
|
36
|
+
* static table that is merely redundant; in a virtualised one it is the
|
|
37
|
+
* dominant cost of scrolling, because rows mount and unmount continuously and
|
|
38
|
+
* each mount forces a synchronous layout.
|
|
39
|
+
*
|
|
40
|
+
* Measured on a 12,000-row admin table (production build, 10 scroll steps):
|
|
41
|
+
* 680 `getBoundingClientRect` calls and 280 `ResizeObserver`s created — 68
|
|
42
|
+
* measurements and 28 observers per scroll step, for three sticky columns whose
|
|
43
|
+
* widths never changed. `getBoundingClientRect` alone was 11.9% of profiled CPU.
|
|
44
|
+
*
|
|
45
|
+
* Body cells still measure when nothing else has: a table with sticky columns
|
|
46
|
+
* and no header row would otherwise get zero offsets. In that case the first
|
|
47
|
+
* body cell to mount supplies the width and the rest skip.
|
|
48
|
+
*/
|
|
49
|
+
export function useRegisterStickyWidth(
|
|
50
|
+
ref: RefObject<HTMLTableCellElement | null>,
|
|
51
|
+
{
|
|
52
|
+
isSticky,
|
|
53
|
+
direction,
|
|
54
|
+
index,
|
|
55
|
+
register,
|
|
56
|
+
hasWidth,
|
|
57
|
+
role,
|
|
58
|
+
}: UseRegisterStickyWidthOptions
|
|
59
|
+
) {
|
|
60
|
+
useEffect(() => {
|
|
61
|
+
const node = ref.current;
|
|
62
|
+
if (!isSticky || !node) return;
|
|
63
|
+
|
|
64
|
+
if (role === 'body') {
|
|
65
|
+
// Header already measured this column (the usual case) — nothing to do,
|
|
66
|
+
// and crucially no observer to attach and tear down on every scroll.
|
|
67
|
+
if (hasWidth(direction, index)) return;
|
|
68
|
+
register(direction, index, node.getBoundingClientRect().width);
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
register(direction, index, node.getBoundingClientRect().width);
|
|
73
|
+
|
|
74
|
+
if (typeof ResizeObserver === 'undefined') return;
|
|
75
|
+
|
|
76
|
+
const observer = new ResizeObserver(() => {
|
|
77
|
+
register(direction, index, node.getBoundingClientRect().width);
|
|
78
|
+
});
|
|
79
|
+
observer.observe(node);
|
|
80
|
+
|
|
81
|
+
return () => observer.disconnect();
|
|
82
|
+
}, [ref, isSticky, direction, index, register, hasWidth, role]);
|
|
83
|
+
}
|