@bioturing/components 0.31.0 → 0.32.1
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/dist/components/badge/component.d.ts +7 -0
- package/dist/components/badge/component.d.ts.map +1 -0
- package/dist/components/badge/component.js.map +1 -1
- package/dist/components/badge/index.d.ts +2 -0
- package/dist/components/badge/index.d.ts.map +1 -0
- package/dist/components/breadcrumb/component.d.ts +6 -0
- package/dist/components/breadcrumb/component.d.ts.map +1 -0
- package/dist/components/breadcrumb/component.js.map +1 -1
- package/dist/components/breadcrumb/index.d.ts +3 -0
- package/dist/components/breadcrumb/index.d.ts.map +1 -0
- package/dist/components/breadcrumb/types.d.ts +19 -0
- package/dist/components/breadcrumb/types.d.ts.map +1 -0
- package/dist/components/breadcrumb/useItemRender.d.ts +7 -0
- package/dist/components/breadcrumb/useItemRender.d.ts.map +1 -0
- package/dist/components/breadcrumb/useItemRender.js.map +1 -1
- package/dist/components/button/component.d.ts +14 -0
- package/dist/components/button/component.d.ts.map +1 -0
- package/dist/components/button/component.js.map +1 -1
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/button/index.d.ts.map +1 -0
- package/dist/components/checkbox/component.d.ts +16 -0
- package/dist/components/checkbox/component.d.ts.map +1 -0
- package/dist/components/checkbox/component.js.map +1 -1
- package/dist/components/checkbox/index.d.ts +2 -0
- package/dist/components/checkbox/index.d.ts.map +1 -0
- package/dist/components/choice-list/component.d.ts +35 -0
- package/dist/components/choice-list/component.d.ts.map +1 -0
- package/dist/components/choice-list/component.js.map +1 -1
- package/dist/components/choice-list/index.d.ts +2 -0
- package/dist/components/choice-list/index.d.ts.map +1 -0
- package/dist/components/cmdk/command-score.d.ts +2 -0
- package/dist/components/cmdk/command-score.d.ts.map +1 -0
- package/dist/components/cmdk/command-score.js.map +1 -1
- package/dist/components/cmdk/index.d.ts +440 -0
- package/dist/components/cmdk/index.d.ts.map +1 -0
- package/dist/components/cmdk/index.js +332 -348
- package/dist/components/cmdk/index.js.map +1 -1
- package/dist/components/code-block/component.d.ts +3 -0
- package/dist/components/code-block/component.d.ts.map +1 -0
- package/dist/components/code-block/component.js +83 -84
- package/dist/components/code-block/component.js.map +1 -1
- package/dist/components/code-block/index.d.ts +3 -0
- package/dist/components/code-block/index.d.ts.map +1 -0
- package/dist/components/code-block/types.d.ts +64 -0
- package/dist/components/code-block/types.d.ts.map +1 -0
- package/dist/components/collapse/component.d.ts +14 -0
- package/dist/components/collapse/component.d.ts.map +1 -0
- package/dist/components/collapse/component.js.map +1 -1
- package/dist/components/collapse/index.d.ts +2 -0
- package/dist/components/collapse/index.d.ts.map +1 -0
- package/dist/components/color-select/component.d.ts +36 -0
- package/dist/components/color-select/component.d.ts.map +1 -0
- package/dist/components/color-select/component.js +28 -30
- package/dist/components/color-select/component.js.map +1 -1
- package/dist/components/color-select/index.d.ts +2 -0
- package/dist/components/color-select/index.d.ts.map +1 -0
- package/dist/components/combobox/component.d.ts +119 -0
- package/dist/components/combobox/component.d.ts.map +1 -0
- package/dist/components/combobox/component.js +166 -162
- package/dist/components/combobox/component.js.map +1 -1
- package/dist/components/combobox/index.d.ts +3 -0
- package/dist/components/combobox/index.d.ts.map +1 -0
- package/dist/components/command-palette/component.d.ts +41 -0
- package/dist/components/command-palette/component.d.ts.map +1 -0
- package/dist/components/command-palette/component.js +36 -36
- package/dist/components/command-palette/component.js.map +1 -1
- package/dist/components/command-palette/index.d.ts +2 -0
- package/dist/components/command-palette/index.d.ts.map +1 -0
- package/dist/components/command-palette/style.css +1 -1
- package/dist/components/drag-drop/context.d.ts +10 -0
- package/dist/components/drag-drop/context.d.ts.map +1 -0
- package/dist/components/drag-drop/context.js.map +1 -1
- package/dist/components/drag-drop/draggable.d.ts +6 -0
- package/dist/components/drag-drop/draggable.d.ts.map +1 -0
- package/dist/components/drag-drop/draggable.js.map +1 -1
- package/dist/components/drag-drop/droppable.d.ts +9 -0
- package/dist/components/drag-drop/droppable.d.ts.map +1 -0
- package/dist/components/drag-drop/droppable.js.map +1 -1
- package/dist/components/drag-drop/hooks.d.ts +42 -0
- package/dist/components/drag-drop/hooks.d.ts.map +1 -0
- package/dist/components/drag-drop/hooks.js +71 -73
- package/dist/components/drag-drop/hooks.js.map +1 -1
- package/dist/components/drag-drop/index.d.ts +26 -0
- package/dist/components/drag-drop/index.d.ts.map +1 -0
- package/dist/components/drag-drop/index.js.map +1 -1
- package/dist/components/drag-drop/types.d.ts +232 -0
- package/dist/components/drag-drop/types.d.ts.map +1 -0
- package/dist/components/drag-drop/value.d.ts +8 -0
- package/dist/components/drag-drop/value.d.ts.map +1 -0
- package/dist/components/drag-drop/value.js +66 -66
- package/dist/components/drag-drop/value.js.map +1 -1
- package/dist/components/dropdown-menu/component.d.ts +79 -0
- package/dist/components/dropdown-menu/component.d.ts.map +1 -0
- package/dist/components/dropdown-menu/component.js +108 -106
- package/dist/components/dropdown-menu/component.js.map +1 -1
- package/dist/components/dropdown-menu/divider.d.ts +6 -0
- package/dist/components/dropdown-menu/divider.d.ts.map +1 -0
- package/dist/components/dropdown-menu/divider.js.map +1 -1
- package/dist/components/dropdown-menu/index.d.ts +4 -0
- package/dist/components/dropdown-menu/index.d.ts.map +1 -0
- package/dist/components/dropdown-menu/item.d.ts +56 -0
- package/dist/components/dropdown-menu/item.d.ts.map +1 -0
- package/dist/components/dropdown-menu/item.js +72 -66
- package/dist/components/dropdown-menu/item.js.map +1 -1
- package/dist/components/dropdown-menu/types.d.ts +88 -0
- package/dist/components/dropdown-menu/types.d.ts.map +1 -0
- package/dist/components/dropdown-menu/useDropdownMenu.d.ts +58 -0
- package/dist/components/dropdown-menu/useDropdownMenu.d.ts.map +1 -0
- package/dist/components/dropdown-menu/useDropdownMenu.js +80 -77
- package/dist/components/dropdown-menu/useDropdownMenu.js.map +1 -1
- package/dist/components/ds-root/component.d.ts +14 -0
- package/dist/components/ds-root/component.d.ts.map +1 -0
- package/dist/components/ds-root/component.js.map +1 -1
- package/dist/components/ds-root/context.d.ts +8 -0
- package/dist/components/ds-root/context.d.ts.map +1 -0
- package/dist/components/ds-root/index.d.ts +3 -0
- package/dist/components/ds-root/index.d.ts.map +1 -0
- package/dist/components/empty/component.d.ts +13 -0
- package/dist/components/empty/component.d.ts.map +1 -0
- package/dist/components/empty/component.js.map +1 -1
- package/dist/components/empty/index.d.ts +2 -0
- package/dist/components/empty/index.d.ts.map +1 -0
- package/dist/components/field/component.d.ts +42 -0
- package/dist/components/field/component.d.ts.map +1 -0
- package/dist/components/field/component.js.map +1 -1
- package/dist/components/field/index.d.ts +2 -0
- package/dist/components/field/index.d.ts.map +1 -0
- package/dist/components/form/component.d.ts +22 -0
- package/dist/components/form/component.d.ts.map +1 -0
- package/dist/components/form/component.js.map +1 -1
- package/dist/components/form/index.d.ts +2 -0
- package/dist/components/form/index.d.ts.map +1 -0
- package/dist/components/form/item.d.ts +24 -0
- package/dist/components/form/item.d.ts.map +1 -0
- package/dist/components/form/item.js +24 -24
- package/dist/components/form/item.js.map +1 -1
- package/dist/components/form/label.d.ts +32 -0
- package/dist/components/form/label.d.ts.map +1 -0
- package/dist/components/form/label.js.map +1 -1
- package/dist/components/hooks/antd.d.ts +11 -0
- package/dist/components/hooks/antd.d.ts.map +1 -0
- package/dist/components/hooks/antd.js.map +1 -1
- package/dist/components/hooks/base-ui.d.ts +11 -0
- package/dist/components/hooks/base-ui.d.ts.map +1 -0
- package/dist/components/hooks/base-ui.js +22 -25
- package/dist/components/hooks/base-ui.js.map +1 -1
- package/dist/components/hooks/index.d.ts +11 -0
- package/dist/components/hooks/index.d.ts.map +1 -0
- package/dist/components/hooks/useBreakpoint.d.ts +39 -0
- package/dist/components/hooks/useBreakpoint.d.ts.map +1 -0
- package/dist/components/hooks/useBreakpoint.js +14 -15
- package/dist/components/hooks/useBreakpoint.js.map +1 -1
- package/dist/components/hooks/useCSSVariables.d.ts +7 -0
- package/dist/components/hooks/useCSSVariables.d.ts.map +1 -0
- package/dist/components/hooks/useCSSVariables.js.map +1 -1
- package/dist/components/hooks/useCharts.d.ts +41 -0
- package/dist/components/hooks/useCharts.d.ts.map +1 -0
- package/dist/components/hooks/useCharts.js.map +1 -1
- package/dist/components/hooks/useControlledState.d.ts +13 -0
- package/dist/components/hooks/useControlledState.d.ts.map +1 -0
- package/dist/components/hooks/useControlledState.js.map +1 -1
- package/dist/components/hooks/useDraggable.d.ts +4 -0
- package/dist/components/hooks/useDraggable.d.ts.map +1 -0
- package/dist/components/hooks/useDraggable.js +19 -20
- package/dist/components/hooks/useDraggable.js.map +1 -1
- package/dist/components/hooks/useHover.d.ts +5 -0
- package/dist/components/hooks/useHover.d.ts.map +1 -0
- package/dist/components/hooks/useHover.js +16 -17
- package/dist/components/hooks/useHover.js.map +1 -1
- package/dist/components/hooks/useResizeObserver.d.ts +9 -0
- package/dist/components/hooks/useResizeObserver.d.ts.map +1 -0
- package/dist/components/hooks/useResizeObserver.js +29 -30
- package/dist/components/hooks/useResizeObserver.js.map +1 -1
- package/dist/components/hooks/useTransitionStatus.d.ts +13 -0
- package/dist/components/hooks/useTransitionStatus.d.ts.map +1 -0
- package/dist/components/hooks/useTransitionStatus.js.map +1 -1
- package/dist/components/hooks/useWindowSize.d.ts +5 -0
- package/dist/components/hooks/useWindowSize.d.ts.map +1 -0
- package/dist/components/hooks/useWindowSize.js.map +1 -1
- package/dist/components/icon-button/component.d.ts +45 -0
- package/dist/components/icon-button/component.d.ts.map +1 -0
- package/dist/components/icon-button/component.js.map +1 -1
- package/dist/components/icon-button/index.d.ts +2 -0
- package/dist/components/icon-button/index.d.ts.map +1 -0
- package/dist/components/index.d.ts +53 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/input/component.d.ts +29 -0
- package/dist/components/input/component.d.ts.map +1 -0
- package/dist/components/input/component.js +42 -41
- package/dist/components/input/component.js.map +1 -1
- package/dist/components/input/index.d.ts +2 -0
- package/dist/components/input/index.d.ts.map +1 -0
- package/dist/components/keyboard-shortcut/component.d.ts +15 -0
- package/dist/components/keyboard-shortcut/component.d.ts.map +1 -0
- package/dist/components/keyboard-shortcut/component.js.map +1 -1
- package/dist/components/keyboard-shortcut/index.d.ts +2 -0
- package/dist/components/keyboard-shortcut/index.d.ts.map +1 -0
- package/dist/components/loader/component.d.ts +5 -0
- package/dist/components/loader/component.d.ts.map +1 -0
- package/dist/components/loader/component.js.map +1 -1
- package/dist/components/loader/index.d.ts +2 -0
- package/dist/components/loader/index.d.ts.map +1 -0
- package/dist/components/modal/Modal.d.ts +85 -0
- package/dist/components/modal/Modal.d.ts.map +1 -0
- package/dist/components/modal/Modal.js +75 -75
- package/dist/components/modal/Modal.js.map +1 -1
- package/dist/components/modal/ModalProvider.d.ts +6 -0
- package/dist/components/modal/ModalProvider.d.ts.map +1 -0
- package/dist/components/modal/ModalProvider.js +25 -25
- package/dist/components/modal/ModalProvider.js.map +1 -1
- package/dist/components/modal/ModalService.d.ts +34 -0
- package/dist/components/modal/ModalService.d.ts.map +1 -0
- package/dist/components/modal/ModalService.js +5 -10
- package/dist/components/modal/ModalService.js.map +1 -1
- package/dist/components/modal/constants.d.ts +10 -0
- package/dist/components/modal/constants.d.ts.map +1 -0
- package/dist/components/modal/constants.js.map +1 -1
- package/dist/components/modal/functions.d.ts +28 -0
- package/dist/components/modal/functions.d.ts.map +1 -0
- package/dist/components/modal/functions.js.map +1 -1
- package/dist/components/modal/index.d.ts +16 -0
- package/dist/components/modal/index.d.ts.map +1 -0
- package/dist/components/modal/index.js.map +1 -1
- package/dist/components/nav/context.d.ts +10 -0
- package/dist/components/nav/context.d.ts.map +1 -0
- package/dist/components/nav/context.js.map +1 -1
- package/dist/components/nav/group.d.ts +15 -0
- package/dist/components/nav/group.d.ts.map +1 -0
- package/dist/components/nav/group.js.map +1 -1
- package/dist/components/nav/heading.d.ts +6 -0
- package/dist/components/nav/heading.d.ts.map +1 -0
- package/dist/components/nav/heading.js.map +1 -1
- package/dist/components/nav/index.d.ts +12 -0
- package/dist/components/nav/index.d.ts.map +1 -0
- package/dist/components/nav/item.d.ts +35 -0
- package/dist/components/nav/item.d.ts.map +1 -0
- package/dist/components/nav/item.js.map +1 -1
- package/dist/components/popover/component.d.ts +10 -0
- package/dist/components/popover/component.d.ts.map +1 -0
- package/dist/components/popover/component.js.map +1 -1
- package/dist/components/popover/index.d.ts +2 -0
- package/dist/components/popover/index.d.ts.map +1 -0
- package/dist/components/popup-panel/component.d.ts +100 -0
- package/dist/components/popup-panel/component.d.ts.map +1 -0
- package/dist/components/popup-panel/component.js +105 -105
- package/dist/components/popup-panel/component.js.map +1 -1
- package/dist/components/popup-panel/constants.d.ts +8 -0
- package/dist/components/popup-panel/constants.d.ts.map +1 -0
- package/dist/components/popup-panel/constants.js.map +1 -1
- package/dist/components/popup-panel/index.d.ts +2 -0
- package/dist/components/popup-panel/index.d.ts.map +1 -0
- package/dist/components/radio/component.d.ts +8 -0
- package/dist/components/radio/component.d.ts.map +1 -0
- package/dist/components/radio/component.js.map +1 -1
- package/dist/components/radio/index.d.ts +3 -0
- package/dist/components/radio/index.d.ts.map +1 -0
- package/dist/components/radio/interface.d.ts +6 -0
- package/dist/components/radio/interface.d.ts.map +1 -0
- package/dist/components/resizable/component.d.ts +70 -0
- package/dist/components/resizable/component.d.ts.map +1 -0
- package/dist/components/resizable/component.js +147 -147
- package/dist/components/resizable/component.js.map +1 -1
- package/dist/components/resizable/index.d.ts +3 -0
- package/dist/components/resizable/index.d.ts.map +1 -0
- package/dist/components/scroll-area/component.d.ts +67 -0
- package/dist/components/scroll-area/component.d.ts.map +1 -0
- package/dist/components/scroll-area/component.js +75 -56
- package/dist/components/scroll-area/component.js.map +1 -1
- package/dist/components/scroll-area/index.d.ts +2 -0
- package/dist/components/scroll-area/index.d.ts.map +1 -0
- package/dist/components/segmented/component.d.ts +10 -0
- package/dist/components/segmented/component.d.ts.map +1 -0
- package/dist/components/segmented/component.js.map +1 -1
- package/dist/components/segmented/index.d.ts +2 -0
- package/dist/components/segmented/index.d.ts.map +1 -0
- package/dist/components/select/component.d.ts +48 -0
- package/dist/components/select/component.d.ts.map +1 -0
- package/dist/components/select/component.js +93 -94
- package/dist/components/select/component.js.map +1 -1
- package/dist/components/select/index.d.ts +2 -0
- package/dist/components/select/index.d.ts.map +1 -0
- package/dist/components/select/item.d.ts +14 -0
- package/dist/components/select/item.d.ts.map +1 -0
- package/dist/components/select/item.js.map +1 -1
- package/dist/components/select-trigger/component.d.ts +45 -0
- package/dist/components/select-trigger/component.d.ts.map +1 -0
- package/dist/components/select-trigger/component.js +96 -96
- package/dist/components/select-trigger/component.js.map +1 -1
- package/dist/components/select-trigger/index.d.ts +3 -0
- package/dist/components/select-trigger/index.d.ts.map +1 -0
- package/dist/components/slider/component.d.ts +6 -0
- package/dist/components/slider/component.d.ts.map +1 -0
- package/dist/components/slider/component.js.map +1 -1
- package/dist/components/slider/index.d.ts +2 -0
- package/dist/components/slider/index.d.ts.map +1 -0
- package/dist/components/spin/component.d.ts +6 -0
- package/dist/components/spin/component.d.ts.map +1 -0
- package/dist/components/spin/component.js.map +1 -1
- package/dist/components/spin/index.d.ts +2 -0
- package/dist/components/spin/index.d.ts.map +1 -0
- package/dist/components/splitter/component.d.ts +10 -0
- package/dist/components/splitter/component.d.ts.map +1 -0
- package/dist/components/splitter/component.js +7 -7
- package/dist/components/splitter/component.js.map +1 -1
- package/dist/components/splitter/context.d.ts +5 -0
- package/dist/components/splitter/context.d.ts.map +1 -0
- package/dist/components/splitter/context.js.map +1 -1
- package/dist/components/splitter/index.d.ts +2 -0
- package/dist/components/splitter/index.d.ts.map +1 -0
- package/dist/components/splitter/splitter-panel.d.ts +12 -0
- package/dist/components/splitter/splitter-panel.d.ts.map +1 -0
- package/dist/components/splitter/splitter-panel.js.map +1 -1
- package/dist/components/splitter/splitter.d.ts +11 -0
- package/dist/components/splitter/splitter.d.ts.map +1 -0
- package/dist/components/splitter/splitter.js +112 -112
- package/dist/components/splitter/splitter.js.map +1 -1
- package/dist/components/splitter/useSizes.d.ts +9 -0
- package/dist/components/splitter/useSizes.d.ts.map +1 -0
- package/dist/components/splitter/useSizes.js +35 -35
- package/dist/components/splitter/useSizes.js.map +1 -1
- package/dist/components/stack/Stack.d.ts +40 -0
- package/dist/components/stack/Stack.d.ts.map +1 -0
- package/dist/components/stack/Stack.js.map +1 -1
- package/dist/components/stack/StackChild.d.ts +31 -0
- package/dist/components/stack/StackChild.d.ts.map +1 -0
- package/dist/components/stack/StackChild.js.map +1 -1
- package/dist/components/stack/index.d.ts +8 -0
- package/dist/components/stack/index.d.ts.map +1 -0
- package/dist/components/stack/index.js.map +1 -1
- package/dist/components/status-icon/component.d.ts +23 -0
- package/dist/components/status-icon/component.d.ts.map +1 -0
- package/dist/components/status-icon/component.js.map +1 -1
- package/dist/components/status-icon/index.d.ts +2 -0
- package/dist/components/status-icon/index.d.ts.map +1 -0
- package/dist/components/switch/component.d.ts +9 -0
- package/dist/components/switch/component.d.ts.map +1 -0
- package/dist/components/switch/component.js.map +1 -1
- package/dist/components/switch/index.d.ts +2 -0
- package/dist/components/switch/index.d.ts.map +1 -0
- package/dist/components/table/component.d.ts +32 -0
- package/dist/components/table/component.d.ts.map +1 -0
- package/dist/components/table/component.js +57 -58
- package/dist/components/table/component.js.map +1 -1
- package/dist/components/table/index.d.ts +2 -0
- package/dist/components/table/index.d.ts.map +1 -0
- package/dist/components/tag/component.d.ts +22 -0
- package/dist/components/tag/component.d.ts.map +1 -0
- package/dist/components/tag/component.js.map +1 -1
- package/dist/components/tag/index.d.ts +2 -0
- package/dist/components/tag/index.d.ts.map +1 -0
- package/dist/components/theme-provider/component.d.ts +7 -0
- package/dist/components/theme-provider/component.d.ts.map +1 -0
- package/dist/components/theme-provider/component.js.map +1 -1
- package/dist/components/theme-provider/index.d.ts +2 -0
- package/dist/components/theme-provider/index.d.ts.map +1 -0
- package/dist/components/toast/component.d.ts +15 -0
- package/dist/components/toast/component.d.ts.map +1 -0
- package/dist/components/toast/component.js +49 -50
- package/dist/components/toast/component.js.map +1 -1
- package/dist/components/toast/function.d.ts +11 -0
- package/dist/components/toast/function.d.ts.map +1 -0
- package/dist/components/toast/function.js.map +1 -1
- package/dist/components/toast/index.d.ts +4 -0
- package/dist/components/toast/index.d.ts.map +1 -0
- package/dist/components/toast/types.d.ts +4 -0
- package/dist/components/toast/types.d.ts.map +1 -0
- package/dist/components/tooltip/component.d.ts +10 -0
- package/dist/components/tooltip/component.d.ts.map +1 -0
- package/dist/components/tooltip/component.js.map +1 -1
- package/dist/components/tooltip/index.d.ts +2 -0
- package/dist/components/tooltip/index.d.ts.map +1 -0
- package/dist/components/tour/component.d.ts +8 -0
- package/dist/components/tour/component.d.ts.map +1 -0
- package/dist/components/tour/component.js.map +1 -1
- package/dist/components/tour/index.d.ts +2 -0
- package/dist/components/tour/index.d.ts.map +1 -0
- package/dist/components/transition/component.d.ts +30 -0
- package/dist/components/transition/component.d.ts.map +1 -0
- package/dist/components/transition/component.js +32 -32
- package/dist/components/transition/component.js.map +1 -1
- package/dist/components/transition/index.d.ts +2 -0
- package/dist/components/transition/index.d.ts.map +1 -0
- package/dist/components/tree/components.d.ts +14 -0
- package/dist/components/tree/components.d.ts.map +1 -0
- package/dist/components/tree/components.js.map +1 -1
- package/dist/components/tree/helpers.d.ts +6 -0
- package/dist/components/tree/helpers.d.ts.map +1 -0
- package/dist/components/tree/helpers.js.map +1 -1
- package/dist/components/tree/index.d.ts +5 -0
- package/dist/components/tree/index.d.ts.map +1 -0
- package/dist/components/tree/types.d.ts +56 -0
- package/dist/components/tree/types.d.ts.map +1 -0
- package/dist/components/tree/useTreeCommon.d.ts +179 -0
- package/dist/components/tree/useTreeCommon.d.ts.map +1 -0
- package/dist/components/tree/useTreeCommon.js +29 -29
- package/dist/components/tree/useTreeCommon.js.map +1 -1
- package/dist/components/tree/useUniqueKeysTree.d.ts +34 -0
- package/dist/components/tree/useUniqueKeysTree.d.ts.map +1 -0
- package/dist/components/tree/useUniqueKeysTree.js.map +1 -1
- package/dist/components/truncate/component.d.ts +17 -0
- package/dist/components/truncate/component.d.ts.map +1 -0
- package/dist/components/truncate/component.js +38 -39
- package/dist/components/truncate/component.js.map +1 -1
- package/dist/components/truncate/helpers.d.ts +17 -0
- package/dist/components/truncate/helpers.d.ts.map +1 -0
- package/dist/components/truncate/helpers.js +27 -30
- package/dist/components/truncate/helpers.js.map +1 -1
- package/dist/components/truncate/index.d.ts +2 -0
- package/dist/components/truncate/index.d.ts.map +1 -0
- package/dist/components/upload/component.d.ts +17 -0
- package/dist/components/upload/component.d.ts.map +1 -0
- package/dist/components/upload/component.js.map +1 -1
- package/dist/components/upload/dragger.d.ts +14 -0
- package/dist/components/upload/dragger.d.ts.map +1 -0
- package/dist/components/upload/dragger.js.map +1 -1
- package/dist/components/upload/hooks.d.ts +6 -0
- package/dist/components/upload/hooks.d.ts.map +1 -0
- package/dist/components/upload/hooks.js.map +1 -1
- package/dist/components/upload/index.d.ts +4 -0
- package/dist/components/upload/index.d.ts.map +1 -0
- package/dist/components/upload/item.d.ts +12 -0
- package/dist/components/upload/item.d.ts.map +1 -0
- package/dist/components/upload/item.js.map +1 -1
- package/dist/components/upload/utils.d.ts +2 -0
- package/dist/components/upload/utils.d.ts.map +1 -0
- package/dist/components/upload/utils.js.map +1 -1
- package/dist/components/utils/WithAntdTokens.d.ts +8 -0
- package/dist/components/utils/WithAntdTokens.d.ts.map +1 -0
- package/dist/components/utils/WithAntdTokens.js.map +1 -1
- package/dist/components/utils/WithRenderProp.d.ts +14 -0
- package/dist/components/utils/WithRenderProp.d.ts.map +1 -0
- package/dist/components/utils/WithRenderProp.js.map +1 -1
- package/dist/components/utils/antdUtils.d.ts +11 -0
- package/dist/components/utils/antdUtils.d.ts.map +1 -0
- package/dist/components/utils/antdUtils.js +9 -12
- package/dist/components/utils/antdUtils.js.map +1 -1
- package/dist/components/utils/client.d.ts +6 -0
- package/dist/components/utils/client.d.ts.map +1 -0
- package/dist/components/utils/cn.d.ts +5 -0
- package/dist/components/utils/cn.d.ts.map +1 -0
- package/dist/components/utils/cn.js.map +1 -1
- package/dist/components/utils/colors.d.ts +2 -0
- package/dist/components/utils/colors.d.ts.map +1 -0
- package/dist/components/utils/constants.d.ts +15 -0
- package/dist/components/utils/constants.d.ts.map +1 -0
- package/dist/components/utils/index.d.ts +6 -0
- package/dist/components/utils/index.d.ts.map +1 -0
- package/dist/components/utils/isTracebackError.d.ts +2 -0
- package/dist/components/utils/isTracebackError.d.ts.map +1 -0
- package/dist/components/utils/isTracebackError.js.map +1 -1
- package/dist/components/utils/main.d.ts +7 -0
- package/dist/components/utils/main.d.ts.map +1 -0
- package/dist/components/utils/placement.d.ts +21 -0
- package/dist/components/utils/placement.d.ts.map +1 -0
- package/dist/components/utils/placement.js.map +1 -1
- package/dist/components/utils/reactElement.d.ts +2 -0
- package/dist/components/utils/reactElement.d.ts.map +1 -0
- package/dist/components/utils/reactToString.d.ts +3 -0
- package/dist/components/utils/reactToString.d.ts.map +1 -0
- package/dist/components/utils/reactToString.js.map +1 -1
- package/dist/components/utils/selectionRange.d.ts +2 -0
- package/dist/components/utils/selectionRange.d.ts.map +1 -0
- package/dist/components/utils/selectionRange.js.map +1 -1
- package/dist/components/utils/theme.d.ts +6 -0
- package/dist/components/utils/theme.d.ts.map +1 -0
- package/dist/components/utils/theme.js.map +1 -1
- package/dist/components/utils/types.d.ts +12 -0
- package/dist/components/utils/types.d.ts.map +1 -0
- package/dist/components/vertical-collapsible-panel/component.d.ts +65 -0
- package/dist/components/vertical-collapsible-panel/component.d.ts.map +1 -0
- package/dist/components/vertical-collapsible-panel/component.js.map +1 -1
- package/dist/components/vertical-collapsible-panel/index.d.ts +2 -0
- package/dist/components/vertical-collapsible-panel/index.d.ts.map +1 -0
- package/dist/index.d.ts +4 -4390
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +166 -164
- package/dist/index.js.map +1 -1
- package/dist/metadata.d.ts +446 -0
- package/dist/metadata.d.ts.map +1 -0
- package/dist/metadata.js.map +1 -1
- package/dist/tokens/and-theme/index.d.ts +2 -0
- package/dist/tokens/and-theme/index.d.ts.map +1 -0
- package/dist/tokens/and-theme/tokens.d.ts +6 -0
- package/dist/tokens/and-theme/tokens.d.ts.map +1 -0
- package/dist/tokens/and-theme/tokens.js.map +1 -1
- package/dist/tokens/charts/index.d.ts +5 -0
- package/dist/tokens/charts/index.d.ts.map +1 -0
- package/dist/tokens/charts/palettes/cloudscape.d.ts +460 -0
- package/dist/tokens/charts/palettes/cloudscape.d.ts.map +1 -0
- package/dist/tokens/charts/palettes/cloudscape.js.map +1 -1
- package/dist/tokens/charts/palettes/colorbrewer.d.ts +338 -0
- package/dist/tokens/charts/palettes/colorbrewer.d.ts.map +1 -0
- package/dist/tokens/charts/palettes/colorbrewer.js.map +1 -1
- package/dist/tokens/charts/palettes/index.d.ts +24 -0
- package/dist/tokens/charts/palettes/index.d.ts.map +1 -0
- package/dist/tokens/charts/palettes/index.js.map +1 -1
- package/dist/tokens/charts/palettes/tableau.d.ts +11 -0
- package/dist/tokens/charts/palettes/tableau.d.ts.map +1 -0
- package/dist/tokens/index.d.ts +5 -0
- package/dist/tokens/index.d.ts.map +1 -0
- package/dist/tokens/types.d.ts +10 -0
- package/dist/tokens/types.d.ts.map +1 -0
- package/dist/tokens/utils.d.ts +9 -0
- package/dist/tokens/utils.d.ts.map +1 -0
- package/dist/tokens/utils.js.map +1 -1
- package/package.json +2 -2
- package/dist/tailwind.d.ts +0 -1
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { TreeProps as AntTreeProps, BasicDataNode, DataNode as AntTreeDataNode, DirectoryTreeProps as AntDirectoryTreeProps, EventDataNode } from 'antd/es/tree';
|
|
2
|
+
import { Key } from 'react';
|
|
3
|
+
export interface CheckInfo<TreeDataType extends BasicDataNode = TreeDataNode> {
|
|
4
|
+
event: "check";
|
|
5
|
+
node: EventDataNode<TreeDataType>;
|
|
6
|
+
checked: boolean;
|
|
7
|
+
nativeEvent: MouseEvent;
|
|
8
|
+
checkedNodes: TreeDataType[];
|
|
9
|
+
checkedNodesPositions?: {
|
|
10
|
+
node: TreeDataType;
|
|
11
|
+
pos: string;
|
|
12
|
+
}[];
|
|
13
|
+
halfCheckedKeys?: Key[];
|
|
14
|
+
}
|
|
15
|
+
export type TreeDataNode = AntTreeDataNode;
|
|
16
|
+
export type ExpandInfo<T extends AntTreeDataNode> = {
|
|
17
|
+
node: EventDataNode<T>;
|
|
18
|
+
expanded: boolean;
|
|
19
|
+
nativeEvent: MouseEvent;
|
|
20
|
+
triggeredOriginalKey?: Key;
|
|
21
|
+
};
|
|
22
|
+
export interface TreeProps<T extends AntTreeDataNode = TreeDataNode> extends Omit<AntTreeProps<T>, "treeData" | "expandedKeys" | "defaultExpandedKeys" | "onExpand" | "checkedKeys" | "defaultCheckedKeys" | "onCheck" | "draggable"> {
|
|
23
|
+
treeData?: T[];
|
|
24
|
+
expandedKeys?: Key[];
|
|
25
|
+
defaultExpandedKeys?: Key[];
|
|
26
|
+
onExpand?: (expandedKeys: Key[], info: ExpandInfo<T>) => void;
|
|
27
|
+
checkedKeys?: Key[] | {
|
|
28
|
+
checked: Key[];
|
|
29
|
+
halfChecked: Key[];
|
|
30
|
+
};
|
|
31
|
+
defaultCheckedKeys?: Key[];
|
|
32
|
+
onCheck?: (checkedKeys: Key[], info: CheckInfo<T> & {
|
|
33
|
+
triggeredOriginalKey?: Key;
|
|
34
|
+
}) => void;
|
|
35
|
+
allowDuplicatedKeys?: boolean;
|
|
36
|
+
/** Draggable configuration for tree items */
|
|
37
|
+
draggable?: AntTreeProps<T>["draggable"];
|
|
38
|
+
}
|
|
39
|
+
export interface DirectoryTreeProps<T extends AntTreeDataNode = TreeDataNode> extends Omit<AntDirectoryTreeProps<T>, "treeData" | "expandedKeys" | "defaultExpandedKeys" | "onExpand" | "checkedKeys" | "defaultCheckedKeys" | "onCheck" | "draggable"> {
|
|
40
|
+
treeData?: T[];
|
|
41
|
+
expandedKeys?: Key[];
|
|
42
|
+
defaultExpandedKeys?: Key[];
|
|
43
|
+
onExpand?: (expandedKeys: Key[], info: ExpandInfo<T>) => void;
|
|
44
|
+
checkedKeys?: Key[] | {
|
|
45
|
+
checked: Key[];
|
|
46
|
+
halfChecked: Key[];
|
|
47
|
+
};
|
|
48
|
+
defaultCheckedKeys?: Key[];
|
|
49
|
+
onCheck?: (checkedKeys: Key[], info: CheckInfo<T> & {
|
|
50
|
+
triggeredOriginalKey?: Key;
|
|
51
|
+
}) => void;
|
|
52
|
+
allowDuplicatedKeys?: boolean;
|
|
53
|
+
/** Draggable configuration for directory tree items */
|
|
54
|
+
draggable?: AntDirectoryTreeProps<T>["draggable"];
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/tree/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { DataNode as AntTreeDataNode } from 'antd/es/tree';
|
|
2
|
+
import { Key } from 'react';
|
|
3
|
+
import { TreeProps, DirectoryTreeProps } from './types';
|
|
4
|
+
export declare function useTreeCommon<T extends AntTreeDataNode>(props: TreeProps<T> | DirectoryTreeProps<T>): {
|
|
5
|
+
cls: (...args: import('..').ClassValue[]) => string;
|
|
6
|
+
customSwitcherIcon: (props: import('antd').TreeNodeProps) => React.ReactNode;
|
|
7
|
+
processedTreeData: T[];
|
|
8
|
+
currentUniqueExpandedKeys: Key[];
|
|
9
|
+
currentUniqueCheckedKeys: Key[];
|
|
10
|
+
handleAntTreeExpand: (uniqueKeys: readonly Key[], info: {
|
|
11
|
+
node: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
12
|
+
expanded: boolean;
|
|
13
|
+
nativeEvent: MouseEvent;
|
|
14
|
+
}) => void;
|
|
15
|
+
handleAntTreeCheck: (checkedInfoOrKeys: readonly Key[] | {
|
|
16
|
+
checked: readonly Key[];
|
|
17
|
+
halfChecked: readonly Key[];
|
|
18
|
+
}, info: import('./types').CheckInfo<T>) => void;
|
|
19
|
+
restProps: {
|
|
20
|
+
draggable?: import('antd').TreeProps<T_1>["draggable"];
|
|
21
|
+
style?: React.CSSProperties;
|
|
22
|
+
children?: React.ReactNode;
|
|
23
|
+
prefixCls?: string;
|
|
24
|
+
height?: number;
|
|
25
|
+
rootClassName?: string;
|
|
26
|
+
motion?: any;
|
|
27
|
+
tabIndex?: number;
|
|
28
|
+
onFocus?: React.FocusEventHandler<HTMLDivElement>;
|
|
29
|
+
onBlur?: React.FocusEventHandler<HTMLDivElement>;
|
|
30
|
+
onLoad?: (loadedKeys: import('rc-tree/lib/interface').Key[], info: {
|
|
31
|
+
event: "load";
|
|
32
|
+
node: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
33
|
+
}) => void;
|
|
34
|
+
onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;
|
|
35
|
+
onClick?: import('rc-tree/lib/contextTypes').NodeMouseEventHandler<T>;
|
|
36
|
+
onContextMenu?: React.MouseEventHandler<HTMLDivElement>;
|
|
37
|
+
onDoubleClick?: import('rc-tree/lib/contextTypes').NodeMouseEventHandler<T>;
|
|
38
|
+
onDragEnd?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
39
|
+
onDragEnter?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T> & {
|
|
40
|
+
expandedKeys: import('rc-tree/lib/interface').Key[];
|
|
41
|
+
}) => void;
|
|
42
|
+
onDragLeave?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
43
|
+
onDragOver?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
44
|
+
onDragStart?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
45
|
+
onDrop?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T> & {
|
|
46
|
+
dragNode: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
47
|
+
dragNodesKeys: import('rc-tree/lib/interface').Key[];
|
|
48
|
+
dropPosition: number;
|
|
49
|
+
dropToGap: boolean;
|
|
50
|
+
}) => void;
|
|
51
|
+
onMouseEnter?: (info: import('rc-tree/lib/contextTypes').NodeMouseEventParams<T>) => void;
|
|
52
|
+
onMouseLeave?: (info: import('rc-tree/lib/contextTypes').NodeMouseEventParams<T>) => void;
|
|
53
|
+
onSelect?: (selectedKeys: import('rc-tree/lib/interface').Key[], info: {
|
|
54
|
+
event: "select";
|
|
55
|
+
selected: boolean;
|
|
56
|
+
node: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
57
|
+
selectedNodes: T[];
|
|
58
|
+
nativeEvent: MouseEvent;
|
|
59
|
+
}) => void;
|
|
60
|
+
onScroll?: React.UIEventHandler<HTMLElement>;
|
|
61
|
+
disabled?: boolean;
|
|
62
|
+
multiple?: boolean;
|
|
63
|
+
fieldNames?: import('rc-tree/lib/interface').FieldNames;
|
|
64
|
+
virtual?: boolean;
|
|
65
|
+
focusable?: boolean;
|
|
66
|
+
icon?: import('react').ReactNode | ((props: import('antd/es/tree').AntdTreeNodeAttribute) => React.ReactNode);
|
|
67
|
+
activeKey?: import('rc-tree/lib/interface').Key | null;
|
|
68
|
+
selectable?: boolean;
|
|
69
|
+
defaultSelectedKeys?: import('rc-tree/lib/interface').Key[];
|
|
70
|
+
selectedKeys?: import('rc-tree/lib/interface').Key[];
|
|
71
|
+
checkable?: boolean;
|
|
72
|
+
loadData?: (treeNode: import('rc-tree/lib/interface').EventDataNode<T>) => Promise<any>;
|
|
73
|
+
filterTreeNode?: (treeNode: import('rc-tree/lib/interface').EventDataNode<T>) => boolean;
|
|
74
|
+
rootStyle?: React.CSSProperties;
|
|
75
|
+
scrollWidth?: number;
|
|
76
|
+
showLine?: boolean | {
|
|
77
|
+
showLeafIcon: boolean | import('antd/es/tree/Tree').TreeLeafIcon;
|
|
78
|
+
};
|
|
79
|
+
showIcon?: boolean;
|
|
80
|
+
expandAction?: import('rc-tree/lib/Tree').ExpandAction;
|
|
81
|
+
checkStrictly?: boolean;
|
|
82
|
+
autoExpandParent?: boolean;
|
|
83
|
+
allowDrop?: import('rc-tree/lib/Tree').AllowDrop<T>;
|
|
84
|
+
titleRender?: (node: T) => React.ReactNode;
|
|
85
|
+
dropIndicatorRender?: (props: import('rc-tree/lib/DropIndicator').DropIndicatorProps) => React.ReactNode;
|
|
86
|
+
loadedKeys?: import('rc-tree/lib/interface').Key[];
|
|
87
|
+
onRightClick?: (info: {
|
|
88
|
+
event: React.MouseEvent;
|
|
89
|
+
node: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
90
|
+
}) => void;
|
|
91
|
+
onActiveChange?: (key: import('rc-tree/lib/interface').Key) => void;
|
|
92
|
+
itemHeight?: number;
|
|
93
|
+
itemScrollOffset?: number;
|
|
94
|
+
filterAntTreeNode?: (node: import('antd/es/tree').AntTreeNode) => boolean;
|
|
95
|
+
switcherLoadingIcon?: React.ReactNode;
|
|
96
|
+
blockNode?: boolean;
|
|
97
|
+
} | {
|
|
98
|
+
draggable?: import('antd/es/tree').DirectoryTreeProps<T_2>["draggable"];
|
|
99
|
+
style?: React.CSSProperties;
|
|
100
|
+
children?: React.ReactNode;
|
|
101
|
+
prefixCls?: string;
|
|
102
|
+
height?: number;
|
|
103
|
+
rootClassName?: string;
|
|
104
|
+
motion?: any;
|
|
105
|
+
tabIndex?: number;
|
|
106
|
+
onFocus?: React.FocusEventHandler<HTMLDivElement>;
|
|
107
|
+
onBlur?: React.FocusEventHandler<HTMLDivElement>;
|
|
108
|
+
onLoad?: (loadedKeys: import('rc-tree/lib/interface').Key[], info: {
|
|
109
|
+
event: "load";
|
|
110
|
+
node: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
111
|
+
}) => void;
|
|
112
|
+
onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;
|
|
113
|
+
onClick?: import('rc-tree/lib/contextTypes').NodeMouseEventHandler<T>;
|
|
114
|
+
onContextMenu?: React.MouseEventHandler<HTMLDivElement>;
|
|
115
|
+
onDoubleClick?: import('rc-tree/lib/contextTypes').NodeMouseEventHandler<T>;
|
|
116
|
+
onDragEnd?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
117
|
+
onDragEnter?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T> & {
|
|
118
|
+
expandedKeys: import('rc-tree/lib/interface').Key[];
|
|
119
|
+
}) => void;
|
|
120
|
+
onDragLeave?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
121
|
+
onDragOver?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
122
|
+
onDragStart?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T>) => void;
|
|
123
|
+
onDrop?: (info: import('rc-tree/lib/contextTypes').NodeDragEventParams<T> & {
|
|
124
|
+
dragNode: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
125
|
+
dragNodesKeys: import('rc-tree/lib/interface').Key[];
|
|
126
|
+
dropPosition: number;
|
|
127
|
+
dropToGap: boolean;
|
|
128
|
+
}) => void;
|
|
129
|
+
onMouseEnter?: (info: import('rc-tree/lib/contextTypes').NodeMouseEventParams<T>) => void;
|
|
130
|
+
onMouseLeave?: (info: import('rc-tree/lib/contextTypes').NodeMouseEventParams<T>) => void;
|
|
131
|
+
onSelect?: (selectedKeys: import('rc-tree/lib/interface').Key[], info: {
|
|
132
|
+
event: "select";
|
|
133
|
+
selected: boolean;
|
|
134
|
+
node: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
135
|
+
selectedNodes: T[];
|
|
136
|
+
nativeEvent: MouseEvent;
|
|
137
|
+
}) => void;
|
|
138
|
+
onScroll?: React.UIEventHandler<HTMLElement>;
|
|
139
|
+
disabled?: boolean;
|
|
140
|
+
multiple?: boolean;
|
|
141
|
+
fieldNames?: import('rc-tree/lib/interface').FieldNames;
|
|
142
|
+
virtual?: boolean;
|
|
143
|
+
focusable?: boolean;
|
|
144
|
+
icon?: import('react').ReactNode | ((props: import('antd/es/tree').AntdTreeNodeAttribute) => React.ReactNode);
|
|
145
|
+
activeKey?: import('rc-tree/lib/interface').Key | null;
|
|
146
|
+
selectable?: boolean;
|
|
147
|
+
defaultSelectedKeys?: import('rc-tree/lib/interface').Key[];
|
|
148
|
+
selectedKeys?: import('rc-tree/lib/interface').Key[];
|
|
149
|
+
checkable?: boolean;
|
|
150
|
+
loadData?: (treeNode: import('rc-tree/lib/interface').EventDataNode<T>) => Promise<any>;
|
|
151
|
+
filterTreeNode?: (treeNode: import('rc-tree/lib/interface').EventDataNode<T>) => boolean;
|
|
152
|
+
rootStyle?: React.CSSProperties;
|
|
153
|
+
scrollWidth?: number;
|
|
154
|
+
showLine?: boolean | {
|
|
155
|
+
showLeafIcon: boolean | import('antd/es/tree/Tree').TreeLeafIcon;
|
|
156
|
+
};
|
|
157
|
+
showIcon?: boolean;
|
|
158
|
+
expandAction?: import('antd/es/tree').DirectoryTreeExpandAction;
|
|
159
|
+
checkStrictly?: boolean;
|
|
160
|
+
autoExpandParent?: boolean;
|
|
161
|
+
allowDrop?: import('rc-tree/lib/Tree').AllowDrop<T>;
|
|
162
|
+
titleRender?: (node: T) => React.ReactNode;
|
|
163
|
+
dropIndicatorRender?: (props: import('rc-tree/lib/DropIndicator').DropIndicatorProps) => React.ReactNode;
|
|
164
|
+
loadedKeys?: import('rc-tree/lib/interface').Key[];
|
|
165
|
+
onRightClick?: (info: {
|
|
166
|
+
event: React.MouseEvent;
|
|
167
|
+
node: import('rc-tree/lib/interface').EventDataNode<T>;
|
|
168
|
+
}) => void;
|
|
169
|
+
onActiveChange?: (key: import('rc-tree/lib/interface').Key) => void;
|
|
170
|
+
itemHeight?: number;
|
|
171
|
+
itemScrollOffset?: number;
|
|
172
|
+
filterAntTreeNode?: (node: import('antd/es/tree').AntTreeNode) => boolean;
|
|
173
|
+
switcherLoadingIcon?: React.ReactNode;
|
|
174
|
+
blockNode?: boolean;
|
|
175
|
+
};
|
|
176
|
+
className: string;
|
|
177
|
+
switcherIcon: import('antd/es/tree/Tree').SwitcherIcon;
|
|
178
|
+
};
|
|
179
|
+
//# sourceMappingURL=useTreeCommon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTreeCommon.d.ts","sourceRoot":"","sources":["../../../src/components/tree/useTreeCommon.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,QAAQ,IAAI,eAAe,EAAE,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAW,KAAK,GAAG,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAgB,SAAS,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG3E,wBAAgB,aAAa,CAAC,CAAC,SAAS,eAAe,EACrD,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC;;iEAHxB,MAAQ,SAAQ;;;;;;;;;;;;;;;gBAwG0hC,MAAO,aAAa;mBAAiK,MAAO,SAAS;;;;;;kBAlC7vC,MAAO,iBACN;iBACD,MAAO,iBACb;;;;;oBACQ,MAAO,oBACJ;;wBACW,MACnB,iBAAa;;;;;;;;;;;;;;;;;;;;;;;;mBAIK,MACjB,cACC;;;;;;qGA7EmB,MAAO,SAC1B;;;;;;;;oBAiGsoD,MAAO,aAAa;;;;;;;;;;mCAxC5pD,MAAE,SAAS;iGAIH,MAAO,SACjB;;;mBAmCkgB,MAAO,UAAU;;;;;;;8BAAuqB,MAAO,SAAS;;;;gBAA7I,MAAO,aAAa;mBAAiK,MAAO,SAAS;;;;;;kBAlC7vC,MAAO,iBACN;iBACD,MAAO,iBACb;;;;;oBACQ,MAAO,oBACJ;;wBACW,MACnB,iBAAa;;;;;;;;;;;;;;;;;;;;;;;;mBAIK,MACjB,cACC;;;;;;qGA7EmB,MAAO,SAC1B;;;;;;;;oBAiGsoD,MAAO,aAAa;;;;;;;;;;mCAxC5pD,MAAE,SAAS;iGAIH,MAAO,SACjB;;;mBAmCkgB,MAAO,UAAU;;;;;;;8BAAuqB,MAAO,SAAS;;;;;EAD3sC"}
|
|
@@ -8,7 +8,7 @@ function z(h) {
|
|
|
8
8
|
const {
|
|
9
9
|
treeData: o = [],
|
|
10
10
|
expandedKeys: u,
|
|
11
|
-
defaultExpandedKeys:
|
|
11
|
+
defaultExpandedKeys: a = [],
|
|
12
12
|
defaultExpandAll: d = !1,
|
|
13
13
|
defaultExpandParent: i = !0,
|
|
14
14
|
onExpand: f,
|
|
@@ -21,42 +21,42 @@ function z(h) {
|
|
|
21
21
|
...w
|
|
22
22
|
} = h, A = I(() => {
|
|
23
23
|
if (d) {
|
|
24
|
-
const
|
|
25
|
-
c.forEach((
|
|
26
|
-
|
|
24
|
+
const t = [], s = (c = []) => {
|
|
25
|
+
c.forEach((r) => {
|
|
26
|
+
t.push(r.key), Array.isArray(r.children) && s(r.children);
|
|
27
27
|
});
|
|
28
28
|
};
|
|
29
|
-
return
|
|
29
|
+
return s(o), t;
|
|
30
30
|
}
|
|
31
|
-
if (i &&
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const
|
|
36
|
-
|
|
31
|
+
if (i && a?.length) {
|
|
32
|
+
const t = /* @__PURE__ */ new Map(), s = (r, n) => {
|
|
33
|
+
r.forEach((e) => {
|
|
34
|
+
n && t.set(e.key, n.key);
|
|
35
|
+
const l = Array.isArray(e.children) ? e.children : [];
|
|
36
|
+
l.length && s(l, e);
|
|
37
37
|
});
|
|
38
38
|
};
|
|
39
|
-
|
|
40
|
-
const c = new Set(
|
|
41
|
-
return
|
|
42
|
-
let
|
|
43
|
-
for (;
|
|
44
|
-
const e =
|
|
45
|
-
c.has(e) || c.add(e),
|
|
39
|
+
s(o);
|
|
40
|
+
const c = new Set(a);
|
|
41
|
+
return a.forEach((r) => {
|
|
42
|
+
let n = r;
|
|
43
|
+
for (; t.has(n); ) {
|
|
44
|
+
const e = t.get(n);
|
|
45
|
+
c.has(e) || c.add(e), n = e;
|
|
46
46
|
}
|
|
47
47
|
}), Array.from(c);
|
|
48
48
|
}
|
|
49
|
-
return
|
|
49
|
+
return a ?? [];
|
|
50
50
|
}, [
|
|
51
51
|
o,
|
|
52
52
|
d,
|
|
53
53
|
i,
|
|
54
|
-
|
|
54
|
+
a
|
|
55
55
|
]), {
|
|
56
56
|
processedTreeData: C,
|
|
57
|
-
currentUniqueExpandedKeys:
|
|
58
|
-
currentUniqueCheckedKeys:
|
|
59
|
-
handleAntTreeExpand:
|
|
57
|
+
currentUniqueExpandedKeys: D,
|
|
58
|
+
currentUniqueCheckedKeys: g,
|
|
59
|
+
handleAntTreeExpand: T,
|
|
60
60
|
handleAntTreeCheck: q
|
|
61
61
|
} = S({
|
|
62
62
|
treeData: o,
|
|
@@ -67,14 +67,14 @@ function z(h) {
|
|
|
67
67
|
defaultCheckedKeys: m,
|
|
68
68
|
onCheck: x,
|
|
69
69
|
allowDuplicatedKeys: E
|
|
70
|
-
}),
|
|
70
|
+
}), p = U();
|
|
71
71
|
return {
|
|
72
|
-
cls:
|
|
73
|
-
customSwitcherIcon: () => /* @__PURE__ */ v(M, { weight: "bold", className:
|
|
72
|
+
cls: p,
|
|
73
|
+
customSwitcherIcon: () => /* @__PURE__ */ v(M, { weight: "bold", className: p("caret-switcher-icon") }),
|
|
74
74
|
processedTreeData: C,
|
|
75
|
-
currentUniqueExpandedKeys:
|
|
76
|
-
currentUniqueCheckedKeys:
|
|
77
|
-
handleAntTreeExpand:
|
|
75
|
+
currentUniqueExpandedKeys: D,
|
|
76
|
+
currentUniqueCheckedKeys: g,
|
|
77
|
+
handleAntTreeExpand: T,
|
|
78
78
|
handleAntTreeCheck: q,
|
|
79
79
|
restProps: w,
|
|
80
80
|
className: K,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTreeCommon.js","sources":["../../../src/components/tree/useTreeCommon.tsx"],"sourcesContent":["\"use client\";\nimport { type DataNode as AntTreeDataNode } from \"antd/es/tree\";\n\nimport { useMemo, type Key } from \"react\";\nimport { useCls } from \"../utils\";\nimport { CaretRight } from \"@bioturing/assets\";\nimport type { TreeDataNode, TreeProps, DirectoryTreeProps } from \"./types\";\nimport { useUniqueKeysTree } from \"./useUniqueKeysTree\";\n\nexport function useTreeCommon<T extends AntTreeDataNode>(\n props: TreeProps<T> | DirectoryTreeProps<T>\n) {\n const {\n treeData: originTreeData = [],\n expandedKeys: propExpandedKeys,\n defaultExpandedKeys: propDefaultExpandedKeys = [],\n defaultExpandAll = false,\n defaultExpandParent = true,\n onExpand: propOnExpand,\n checkedKeys,\n defaultCheckedKeys,\n onCheck,\n allowDuplicatedKeys,\n className,\n switcherIcon,\n ...restProps\n } = props;\n\n // compute resolved defaultExpandedKeys\n const resolvedDefaultExpandedKeys = useMemo<Key[]>(() => {\n if (defaultExpandAll) {\n const keys: Key[] = [];\n const traverse = (nodes: TreeDataNode[] = []) => {\n nodes.forEach((node) => {\n keys.push(node.key);\n if (Array.isArray(node.children))\n traverse(node.children as TreeDataNode[]);\n });\n };\n traverse(originTreeData as TreeDataNode[]);\n return keys;\n }\n if (defaultExpandParent && propDefaultExpandedKeys?.length) {\n // build parent map\n const parentMap = new Map<Key, Key>();\n const traverse = (nodes: TreeDataNode[], parent?: TreeDataNode) => {\n nodes.forEach((node) => {\n if (parent) parentMap.set(node.key, parent.key);\n const children = Array.isArray(node.children)\n ? (node.children as TreeDataNode[])\n : [];\n if (children.length) traverse(children, node);\n });\n };\n traverse(originTreeData as TreeDataNode[]);\n // collect all expansions: original keys + their ancestors\n const expanded = new Set<Key>(propDefaultExpandedKeys);\n propDefaultExpandedKeys.forEach((key) => {\n let k = key;\n while (parentMap.has(k)) {\n const p = parentMap.get(k)!;\n if (!expanded.has(p)) expanded.add(p);\n k = p;\n }\n });\n return Array.from(expanded);\n }\n return propDefaultExpandedKeys ?? [];\n }, [\n originTreeData,\n defaultExpandAll,\n defaultExpandParent,\n propDefaultExpandedKeys,\n ]);\n\n // use unique keys hook\n const {\n processedTreeData,\n currentUniqueExpandedKeys,\n currentUniqueCheckedKeys,\n handleAntTreeExpand,\n handleAntTreeCheck,\n } = useUniqueKeysTree({\n treeData: originTreeData,\n expandedKeys: propExpandedKeys,\n defaultExpandedKeys: resolvedDefaultExpandedKeys,\n onExpand: propOnExpand,\n checkedKeys,\n defaultCheckedKeys,\n onCheck,\n allowDuplicatedKeys,\n });\n\n const cls = useCls();\n const customSwitcherIcon: TreeProps<T>[\"switcherIcon\"] = () => (\n <CaretRight weight=\"bold\" className={cls(\"caret-switcher-icon\")} />\n );\n\n return {\n cls,\n customSwitcherIcon,\n processedTreeData,\n currentUniqueExpandedKeys,\n currentUniqueCheckedKeys,\n handleAntTreeExpand,\n handleAntTreeCheck,\n restProps,\n className,\n switcherIcon,\n };\n}\n"],"names":["useTreeCommon","props","originTreeData","propExpandedKeys","propDefaultExpandedKeys","defaultExpandAll","defaultExpandParent","propOnExpand","checkedKeys","defaultCheckedKeys","onCheck","allowDuplicatedKeys","className","switcherIcon","restProps","resolvedDefaultExpandedKeys","useMemo","keys","traverse","nodes","node","parentMap","parent","children","expanded","key","k","p","processedTreeData","currentUniqueExpandedKeys","currentUniqueCheckedKeys","handleAntTreeExpand","handleAntTreeCheck","useUniqueKeysTree","cls","useCls","jsx","CaretRight"],"mappings":";;;;;;AASO,SAASA,EACdC,GACA;
|
|
1
|
+
{"version":3,"file":"useTreeCommon.js","sources":["../../../src/components/tree/useTreeCommon.tsx"],"sourcesContent":["\"use client\";\nimport { type DataNode as AntTreeDataNode } from \"antd/es/tree\";\n\nimport { useMemo, type Key } from \"react\";\nimport { useCls } from \"../utils\";\nimport { CaretRight } from \"@bioturing/assets\";\nimport type { TreeDataNode, TreeProps, DirectoryTreeProps } from \"./types\";\nimport { useUniqueKeysTree } from \"./useUniqueKeysTree\";\n\nexport function useTreeCommon<T extends AntTreeDataNode>(\n props: TreeProps<T> | DirectoryTreeProps<T>\n) {\n const {\n treeData: originTreeData = [],\n expandedKeys: propExpandedKeys,\n defaultExpandedKeys: propDefaultExpandedKeys = [],\n defaultExpandAll = false,\n defaultExpandParent = true,\n onExpand: propOnExpand,\n checkedKeys,\n defaultCheckedKeys,\n onCheck,\n allowDuplicatedKeys,\n className,\n switcherIcon,\n ...restProps\n } = props;\n\n // compute resolved defaultExpandedKeys\n const resolvedDefaultExpandedKeys = useMemo<Key[]>(() => {\n if (defaultExpandAll) {\n const keys: Key[] = [];\n const traverse = (nodes: TreeDataNode[] = []) => {\n nodes.forEach((node) => {\n keys.push(node.key);\n if (Array.isArray(node.children))\n traverse(node.children as TreeDataNode[]);\n });\n };\n traverse(originTreeData as TreeDataNode[]);\n return keys;\n }\n if (defaultExpandParent && propDefaultExpandedKeys?.length) {\n // build parent map\n const parentMap = new Map<Key, Key>();\n const traverse = (nodes: TreeDataNode[], parent?: TreeDataNode) => {\n nodes.forEach((node) => {\n if (parent) parentMap.set(node.key, parent.key);\n const children = Array.isArray(node.children)\n ? (node.children as TreeDataNode[])\n : [];\n if (children.length) traverse(children, node);\n });\n };\n traverse(originTreeData as TreeDataNode[]);\n // collect all expansions: original keys + their ancestors\n const expanded = new Set<Key>(propDefaultExpandedKeys);\n propDefaultExpandedKeys.forEach((key) => {\n let k = key;\n while (parentMap.has(k)) {\n const p = parentMap.get(k)!;\n if (!expanded.has(p)) expanded.add(p);\n k = p;\n }\n });\n return Array.from(expanded);\n }\n return propDefaultExpandedKeys ?? [];\n }, [\n originTreeData,\n defaultExpandAll,\n defaultExpandParent,\n propDefaultExpandedKeys,\n ]);\n\n // use unique keys hook\n const {\n processedTreeData,\n currentUniqueExpandedKeys,\n currentUniqueCheckedKeys,\n handleAntTreeExpand,\n handleAntTreeCheck,\n } = useUniqueKeysTree({\n treeData: originTreeData,\n expandedKeys: propExpandedKeys,\n defaultExpandedKeys: resolvedDefaultExpandedKeys,\n onExpand: propOnExpand,\n checkedKeys,\n defaultCheckedKeys,\n onCheck,\n allowDuplicatedKeys,\n });\n\n const cls = useCls();\n const customSwitcherIcon: TreeProps<T>[\"switcherIcon\"] = () => (\n <CaretRight weight=\"bold\" className={cls(\"caret-switcher-icon\")} />\n );\n\n return {\n cls,\n customSwitcherIcon,\n processedTreeData,\n currentUniqueExpandedKeys,\n currentUniqueCheckedKeys,\n handleAntTreeExpand,\n handleAntTreeCheck,\n restProps,\n className,\n switcherIcon,\n };\n}\n"],"names":["useTreeCommon","props","originTreeData","propExpandedKeys","propDefaultExpandedKeys","defaultExpandAll","defaultExpandParent","propOnExpand","checkedKeys","defaultCheckedKeys","onCheck","allowDuplicatedKeys","className","switcherIcon","restProps","resolvedDefaultExpandedKeys","useMemo","keys","traverse","nodes","node","parentMap","parent","children","expanded","key","k","p","processedTreeData","currentUniqueExpandedKeys","currentUniqueCheckedKeys","handleAntTreeExpand","handleAntTreeCheck","useUniqueKeysTree","cls","useCls","jsx","CaretRight"],"mappings":";;;;;;AASO,SAASA,EACdC,GACA;AACA,QAAM;AAAA,IACJ,UAAUC,IAAiB,CAAA;AAAA,IAC3B,cAAcC;AAAA,IACd,qBAAqBC,IAA0B,CAAA;AAAA,IAC/C,kBAAAC,IAAmB;AAAA,IACnB,qBAAAC,IAAsB;AAAA,IACtB,UAAUC;AAAA,IACV,aAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,cAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACDb,GAGEc,IAA8BC,EAAe,MAAM;AACvD,QAAIX,GAAkB;AACpB,YAAMY,IAAc,CAAA,GACdC,IAAW,CAACC,IAAwB,OAAO;AAC/C,QAAAA,EAAM,QAAQ,CAACC,MAAS;AACtB,UAAAH,EAAK,KAAKG,EAAK,GAAG,GACd,MAAM,QAAQA,EAAK,QAAQ,KAC7BF,EAASE,EAAK,QAA0B;AAAA,QAC5C,CAAC;AAAA,MACH;AACA,aAAAF,EAAShB,CAAgC,GAClCe;AAAA,IACT;AACA,QAAIX,KAAuBF,GAAyB,QAAQ;AAE1D,YAAMiB,wBAAgB,IAAA,GAChBH,IAAW,CAACC,GAAuBG,MAA0B;AACjE,QAAAH,EAAM,QAAQ,CAACC,MAAS;AACtB,UAAIE,KAAQD,EAAU,IAAID,EAAK,KAAKE,EAAO,GAAG;AAC9C,gBAAMC,IAAW,MAAM,QAAQH,EAAK,QAAQ,IACvCA,EAAK,WACN,CAAA;AACJ,UAAIG,EAAS,UAAQL,EAASK,GAAUH,CAAI;AAAA,QAC9C,CAAC;AAAA,MACH;AACA,MAAAF,EAAShB,CAAgC;AAEzC,YAAMsB,IAAW,IAAI,IAASpB,CAAuB;AACrD,aAAAA,EAAwB,QAAQ,CAACqB,MAAQ;AACvC,YAAIC,IAAID;AACR,eAAOJ,EAAU,IAAIK,CAAC,KAAG;AACvB,gBAAMC,IAAIN,EAAU,IAAIK,CAAC;AACzB,UAAKF,EAAS,IAAIG,CAAC,KAAGH,EAAS,IAAIG,CAAC,GACpCD,IAAIC;AAAA,QACN;AAAA,MACF,CAAC,GACM,MAAM,KAAKH,CAAQ;AAAA,IAC5B;AACA,WAAOpB,KAA2B,CAAA;AAAA,EACpC,GAAG;AAAA,IACDF;AAAA,IACAG;AAAA,IACAC;AAAA,IACAF;AAAA,EAAA,CACD,GAGK;AAAA,IACJ,mBAAAwB;AAAA,IACA,2BAAAC;AAAA,IACA,0BAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,oBAAAC;AAAA,EAAA,IACEC,EAAkB;AAAA,IACpB,UAAU/B;AAAA,IACV,cAAcC;AAAA,IACd,qBAAqBY;AAAA,IACrB,UAAUR;AAAA,IACV,aAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,qBAAAC;AAAA,EAAA,CACD,GAEKuB,IAAMC,EAAA;AAKZ,SAAO;AAAA,IACL,KAAAD;AAAA,IACA,oBANuD,MACvD,gBAAAE,EAACC,GAAA,EAAW,QAAO,QAAO,WAAWH,EAAI,qBAAqB,GAAG;AAAA,IAMjE,mBAAAN;AAAA,IACA,2BAAAC;AAAA,IACA,0BAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,oBAAAC;AAAA,IACA,WAAAlB;AAAA,IACA,WAAAF;AAAA,IACA,cAAAC;AAAA,EAAA;AAEJ;"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Key } from 'react';
|
|
2
|
+
import { DataNode as AntTreeDataNode, EventDataNode } from 'antd/es/tree';
|
|
3
|
+
import { CheckInfo, ExpandInfo } from './types';
|
|
4
|
+
interface UseUniqueKeysTreeProps<T extends AntTreeDataNode> {
|
|
5
|
+
treeData: T[] | undefined;
|
|
6
|
+
expandedKeys?: Key[];
|
|
7
|
+
defaultExpandedKeys?: Key[];
|
|
8
|
+
onExpand?: (expandedKeys: Key[], info: ExpandInfo<T>) => void;
|
|
9
|
+
checkedKeys?: Key[] | {
|
|
10
|
+
checked: Key[];
|
|
11
|
+
halfChecked: Key[];
|
|
12
|
+
};
|
|
13
|
+
defaultCheckedKeys?: Key[];
|
|
14
|
+
onCheck?: (checkedKeys: Key[], info: CheckInfo<T> & {
|
|
15
|
+
triggeredOriginalKey?: Key;
|
|
16
|
+
}) => void;
|
|
17
|
+
allowDuplicatedKeys?: boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare const useUniqueKeysTree: <T extends AntTreeDataNode>({ treeData: originTreeData, expandedKeys, defaultExpandedKeys, onExpand, checkedKeys, defaultCheckedKeys, onCheck, allowDuplicatedKeys, }: UseUniqueKeysTreeProps<T>) => {
|
|
20
|
+
processedTreeData: T[];
|
|
21
|
+
currentUniqueExpandedKeys: Key[];
|
|
22
|
+
currentUniqueCheckedKeys: Key[];
|
|
23
|
+
handleAntTreeExpand: (uniqueKeys: readonly Key[], info: {
|
|
24
|
+
node: EventDataNode<T>;
|
|
25
|
+
expanded: boolean;
|
|
26
|
+
nativeEvent: MouseEvent;
|
|
27
|
+
}) => void;
|
|
28
|
+
handleAntTreeCheck: (checkedInfoOrKeys: readonly Key[] | {
|
|
29
|
+
checked: readonly Key[];
|
|
30
|
+
halfChecked: readonly Key[];
|
|
31
|
+
}, info: CheckInfo<T>) => void;
|
|
32
|
+
};
|
|
33
|
+
export {};
|
|
34
|
+
//# sourceMappingURL=useUniqueKeysTree.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUniqueKeysTree.d.ts","sourceRoot":"","sources":["../../../src/components/tree/useUniqueKeysTree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,GAAG,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,IAAI,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG/E,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErD,UAAU,sBAAsB,CAAC,CAAC,SAAS,eAAe;IACxD,QAAQ,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC;IACrB,mBAAmB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAC9D,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG;QAAE,OAAO,EAAE,GAAG,EAAE,CAAC;QAAC,WAAW,EAAE,GAAG,EAAE,CAAA;KAAE,CAAC;IAC7D,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,CACR,WAAW,EAAE,GAAG,EAAE,EAClB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG;QAAE,oBAAoB,CAAC,EAAE,GAAG,CAAA;KAAE,KAChD,IAAI,CAAC;IACV,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,eAAe,EAAE,2IAS1D,sBAAsB,CAAC,CAAC,CAAC;;;;sCAwGV,SAAS,GAAG,EAAE,QACpB;QACJ,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,UAAU,CAAC;KACzB;4CAsDG,SAAS,GAAG,EAAE,GACd;QAAE,OAAO,EAAE,SAAS,GAAG,EAAE,CAAC;QAAC,WAAW,EAAE,SAAS,GAAG,EAAE,CAAA;KAAE,QACtD,SAAS,CAAC,CAAC,CAAC;CA4GvB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useUniqueKeysTree.js","sources":["../../../src/components/tree/useUniqueKeysTree.ts"],"sourcesContent":["import { useCallback, useMemo, type Key } from \"react\";\nimport type { DataNode as AntTreeDataNode, EventDataNode } from \"antd/es/tree\";\nimport { useControlledState } from \"../hooks\";\nimport { processTreeData, getUniqueKeysFromOriginals } from \"./helpers\";\nimport type { CheckInfo, ExpandInfo } from \"./types\";\n\ninterface UseUniqueKeysTreeProps<T extends AntTreeDataNode> {\n treeData: T[] | undefined;\n expandedKeys?: Key[];\n defaultExpandedKeys?: Key[];\n onExpand?: (expandedKeys: Key[], info: ExpandInfo<T>) => void;\n checkedKeys?: Key[] | { checked: Key[]; halfChecked: Key[] };\n defaultCheckedKeys?: Key[];\n onCheck?: (\n checkedKeys: Key[],\n info: CheckInfo<T> & { triggeredOriginalKey?: Key }\n ) => void;\n allowDuplicatedKeys?: boolean;\n}\n\nexport const useUniqueKeysTree = <T extends AntTreeDataNode>({\n treeData: originTreeData,\n expandedKeys,\n defaultExpandedKeys = [],\n onExpand,\n checkedKeys,\n defaultCheckedKeys = [],\n onCheck,\n allowDuplicatedKeys,\n}: UseUniqueKeysTreeProps<T>) => {\n // Always define all hooks at the top level, regardless of allowDuplicatedKeys\n // State hook for ORIGINAL expanded keys\n const [currentOriginalExpandedKeys, setCurrentOriginalExpandedKeys] =\n useControlledState<Key[]>(\n expandedKeys,\n undefined, // Handle onChange manually in handlers\n defaultExpandedKeys\n );\n\n // State hook for ORIGINAL checked keys\n const controlledCheckedKeysValue = useMemo(() => {\n if (!checkedKeys) return undefined;\n return Array.isArray(checkedKeys) ? checkedKeys : checkedKeys.checked;\n }, [checkedKeys]);\n\n const [currentOriginalCheckedKeys, setCurrentOriginalCheckedKeys] =\n useControlledState<Key[]>(\n controlledCheckedKeysValue, // Pass the array of original keys\n undefined, // Handle onChange manually in handlers\n defaultCheckedKeys\n );\n\n // Process tree data to handle duplicated keys (only used when allowDuplicatedKeys is true)\n const { processedTreeData, uniqueToOriginalKeyMap } = useMemo(() => {\n if (!allowDuplicatedKeys) {\n // Return a simple passthrough mapping when not handling duplicates\n return {\n processedTreeData: originTreeData,\n uniqueToOriginalKeyMap: new Map<Key, Key>(),\n };\n }\n\n const map = new Map<Key, Key>();\n const expandedOriginalKeySet = new Set(currentOriginalExpandedKeys);\n const data = processTreeData(\n originTreeData,\n expandedOriginalKeySet,\n \"\",\n map\n );\n return { processedTreeData: data, uniqueToOriginalKeyMap: map };\n }, [originTreeData, currentOriginalExpandedKeys, allowDuplicatedKeys]);\n\n // Create unique keys mappings (only used when allowDuplicatedKeys is true)\n const currentUniqueExpandedKeys = useMemo(() => {\n if (!allowDuplicatedKeys) {\n return currentOriginalExpandedKeys;\n }\n\n const originalKeysSet = new Set(currentOriginalExpandedKeys);\n return getUniqueKeysFromOriginals(\n processedTreeData as AntTreeDataNode[] | undefined,\n originalKeysSet,\n uniqueToOriginalKeyMap\n );\n }, [\n currentOriginalExpandedKeys,\n processedTreeData,\n uniqueToOriginalKeyMap,\n allowDuplicatedKeys,\n ]);\n\n const currentUniqueCheckedKeys = useMemo(() => {\n if (!allowDuplicatedKeys) {\n return currentOriginalCheckedKeys;\n }\n\n const originalKeysSet = new Set(currentOriginalCheckedKeys);\n return getUniqueKeysFromOriginals(\n processedTreeData as AntTreeDataNode[] | undefined,\n originalKeysSet,\n uniqueToOriginalKeyMap\n );\n }, [\n currentOriginalCheckedKeys,\n processedTreeData,\n uniqueToOriginalKeyMap,\n allowDuplicatedKeys,\n ]);\n\n // Simple expand handler for when allowDuplicatedKeys is false\n const handleOriginalExpand = useCallback(\n (\n keys: readonly Key[],\n info: {\n node: EventDataNode<T>;\n expanded: boolean;\n nativeEvent: MouseEvent;\n }\n ) => {\n const keysArray = Array.from(keys);\n setCurrentOriginalExpandedKeys(keysArray);\n\n if (onExpand) {\n onExpand(keysArray, info);\n }\n },\n [onExpand, setCurrentOriginalExpandedKeys]\n );\n\n // Advanced expand handler for when allowDuplicatedKeys is true\n const handleUniqueExpand = useCallback(\n (\n uniqueKeys: readonly Key[],\n info: {\n node: EventDataNode<T>;\n expanded: boolean;\n nativeEvent: MouseEvent;\n }\n ) => {\n const originalKeys = uniqueKeys\n .map((uk) => uniqueToOriginalKeyMap.get(uk))\n .filter((ok): ok is Key => ok !== undefined); // Type guard\n const triggeredOriginalKey = uniqueToOriginalKeyMap.get(info.node.key);\n\n setCurrentOriginalExpandedKeys(originalKeys);\n\n if (onExpand) {\n onExpand(originalKeys, {\n ...info,\n triggeredOriginalKey: triggeredOriginalKey,\n });\n }\n },\n [uniqueToOriginalKeyMap, setCurrentOriginalExpandedKeys, onExpand]\n );\n\n // Simple check handler for when allowDuplicatedKeys is false\n const handleOriginalCheck = useCallback(\n (\n checkedInfoOrKeys:\n | readonly Key[]\n | { checked: readonly Key[]; halfChecked: readonly Key[] },\n info: CheckInfo<T>\n ) => {\n let checkedArray: Key[];\n\n if (Array.isArray(checkedInfoOrKeys)) {\n checkedArray = Array.from(checkedInfoOrKeys);\n } else if (\n checkedInfoOrKeys &&\n typeof checkedInfoOrKeys === \"object\" &&\n \"checked\" in checkedInfoOrKeys\n ) {\n checkedArray = Array.from(checkedInfoOrKeys.checked);\n } else {\n checkedArray = [];\n }\n\n setCurrentOriginalCheckedKeys(checkedArray);\n\n if (onCheck) {\n onCheck(checkedArray, info);\n }\n },\n [onCheck, setCurrentOriginalCheckedKeys]\n );\n\n // Advanced check handler for when allowDuplicatedKeys is true\n const handleUniqueCheck = useCallback(\n (\n checkedInfoOrKeys:\n | readonly Key[]\n | { checked: readonly Key[]; halfChecked: readonly Key[] },\n info: CheckInfo<T> // Contains info about the node that triggered the event\n ) => {\n const triggeredUniqueKey = info.node.key;\n const triggeredOriginalKey =\n uniqueToOriginalKeyMap.get(triggeredUniqueKey);\n\n if (triggeredOriginalKey === undefined) {\n console.error(\n \"Could not find original key for unique key:\",\n triggeredUniqueKey\n );\n return;\n }\n\n // Special handling for unchecking - this is the critical part\n if (!info.checked) {\n // When unchecking, we need to completely rebuild the checked keys list\n // excluding the original key that was unchecked\n\n // 1. Get the current original checked keys\n const currentKeys = [...currentOriginalCheckedKeys];\n\n // 2. Filter out the original key that was unchecked\n const newCheckedKeys = currentKeys.filter(\n (key) => key !== triggeredOriginalKey\n );\n\n // 3. Update the state with the filtered keys\n setCurrentOriginalCheckedKeys(newCheckedKeys);\n\n // 4. Call the user's onCheck callback\n if (onCheck) {\n onCheck(newCheckedKeys, {\n ...info,\n triggeredOriginalKey: triggeredOriginalKey,\n });\n }\n\n // Return early to prevent further processing\n return;\n }\n\n // Handle checking (normal flow for checking items)\n // 1. Extract unique checked keys from Ant Design's final state\n let uniqueCheckedKeys: readonly Key[];\n if (Array.isArray(checkedInfoOrKeys)) {\n uniqueCheckedKeys = checkedInfoOrKeys;\n } else if (\n checkedInfoOrKeys &&\n typeof checkedInfoOrKeys === \"object\" &&\n \"checked\" in checkedInfoOrKeys\n ) {\n uniqueCheckedKeys = checkedInfoOrKeys.checked;\n } else {\n uniqueCheckedKeys = [];\n }\n\n // 2. Map these unique keys to their original keys\n const derivedOriginalKeys = new Set<Key>();\n for (const uniqueKey of uniqueCheckedKeys) {\n const originalKey = uniqueToOriginalKeyMap.get(uniqueKey);\n if (originalKey !== undefined) {\n derivedOriginalKeys.add(originalKey);\n }\n }\n\n // 3. Ensure the triggered original key is included when checking\n derivedOriginalKeys.add(triggeredOriginalKey);\n\n const originalKeysArray = Array.from(derivedOriginalKeys);\n\n // 4. Update the controlled state\n setCurrentOriginalCheckedKeys(originalKeysArray);\n\n // 5. Call the user's onCheck callback\n if (onCheck) {\n onCheck(originalKeysArray, {\n ...info,\n triggeredOriginalKey: triggeredOriginalKey,\n });\n }\n },\n [\n uniqueToOriginalKeyMap,\n setCurrentOriginalCheckedKeys,\n onCheck,\n currentOriginalCheckedKeys,\n ]\n );\n\n // Choose appropriate handlers and data based on allowDuplicatedKeys\n const handleAntTreeExpand = allowDuplicatedKeys\n ? handleUniqueExpand\n : handleOriginalExpand;\n const handleAntTreeCheck = allowDuplicatedKeys\n ? handleUniqueCheck\n : handleOriginalCheck;\n const finalProcessedTreeData = allowDuplicatedKeys\n ? processedTreeData\n : originTreeData;\n\n return {\n processedTreeData: finalProcessedTreeData,\n currentUniqueExpandedKeys,\n currentUniqueCheckedKeys,\n handleAntTreeExpand,\n handleAntTreeCheck,\n };\n};\n"],"names":["useUniqueKeysTree","originTreeData","expandedKeys","defaultExpandedKeys","onExpand","checkedKeys","defaultCheckedKeys","onCheck","allowDuplicatedKeys","currentOriginalExpandedKeys","setCurrentOriginalExpandedKeys","useControlledState","controlledCheckedKeysValue","useMemo","currentOriginalCheckedKeys","setCurrentOriginalCheckedKeys","processedTreeData","uniqueToOriginalKeyMap","map","expandedOriginalKeySet","processTreeData","currentUniqueExpandedKeys","originalKeysSet","getUniqueKeysFromOriginals","currentUniqueCheckedKeys","handleOriginalExpand","useCallback","keys","info","keysArray","handleUniqueExpand","uniqueKeys","originalKeys","uk","ok","triggeredOriginalKey","handleOriginalCheck","checkedInfoOrKeys","checkedArray","handleUniqueCheck","triggeredUniqueKey","newCheckedKeys","key","uniqueCheckedKeys","derivedOriginalKeys","uniqueKey","originalKey","originalKeysArray"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useUniqueKeysTree.js","sources":["../../../src/components/tree/useUniqueKeysTree.ts"],"sourcesContent":["import { useCallback, useMemo, type Key } from \"react\";\nimport type { DataNode as AntTreeDataNode, EventDataNode } from \"antd/es/tree\";\nimport { useControlledState } from \"../hooks\";\nimport { processTreeData, getUniqueKeysFromOriginals } from \"./helpers\";\nimport type { CheckInfo, ExpandInfo } from \"./types\";\n\ninterface UseUniqueKeysTreeProps<T extends AntTreeDataNode> {\n treeData: T[] | undefined;\n expandedKeys?: Key[];\n defaultExpandedKeys?: Key[];\n onExpand?: (expandedKeys: Key[], info: ExpandInfo<T>) => void;\n checkedKeys?: Key[] | { checked: Key[]; halfChecked: Key[] };\n defaultCheckedKeys?: Key[];\n onCheck?: (\n checkedKeys: Key[],\n info: CheckInfo<T> & { triggeredOriginalKey?: Key }\n ) => void;\n allowDuplicatedKeys?: boolean;\n}\n\nexport const useUniqueKeysTree = <T extends AntTreeDataNode>({\n treeData: originTreeData,\n expandedKeys,\n defaultExpandedKeys = [],\n onExpand,\n checkedKeys,\n defaultCheckedKeys = [],\n onCheck,\n allowDuplicatedKeys,\n}: UseUniqueKeysTreeProps<T>) => {\n // Always define all hooks at the top level, regardless of allowDuplicatedKeys\n // State hook for ORIGINAL expanded keys\n const [currentOriginalExpandedKeys, setCurrentOriginalExpandedKeys] =\n useControlledState<Key[]>(\n expandedKeys,\n undefined, // Handle onChange manually in handlers\n defaultExpandedKeys\n );\n\n // State hook for ORIGINAL checked keys\n const controlledCheckedKeysValue = useMemo(() => {\n if (!checkedKeys) return undefined;\n return Array.isArray(checkedKeys) ? checkedKeys : checkedKeys.checked;\n }, [checkedKeys]);\n\n const [currentOriginalCheckedKeys, setCurrentOriginalCheckedKeys] =\n useControlledState<Key[]>(\n controlledCheckedKeysValue, // Pass the array of original keys\n undefined, // Handle onChange manually in handlers\n defaultCheckedKeys\n );\n\n // Process tree data to handle duplicated keys (only used when allowDuplicatedKeys is true)\n const { processedTreeData, uniqueToOriginalKeyMap } = useMemo(() => {\n if (!allowDuplicatedKeys) {\n // Return a simple passthrough mapping when not handling duplicates\n return {\n processedTreeData: originTreeData,\n uniqueToOriginalKeyMap: new Map<Key, Key>(),\n };\n }\n\n const map = new Map<Key, Key>();\n const expandedOriginalKeySet = new Set(currentOriginalExpandedKeys);\n const data = processTreeData(\n originTreeData,\n expandedOriginalKeySet,\n \"\",\n map\n );\n return { processedTreeData: data, uniqueToOriginalKeyMap: map };\n }, [originTreeData, currentOriginalExpandedKeys, allowDuplicatedKeys]);\n\n // Create unique keys mappings (only used when allowDuplicatedKeys is true)\n const currentUniqueExpandedKeys = useMemo(() => {\n if (!allowDuplicatedKeys) {\n return currentOriginalExpandedKeys;\n }\n\n const originalKeysSet = new Set(currentOriginalExpandedKeys);\n return getUniqueKeysFromOriginals(\n processedTreeData as AntTreeDataNode[] | undefined,\n originalKeysSet,\n uniqueToOriginalKeyMap\n );\n }, [\n currentOriginalExpandedKeys,\n processedTreeData,\n uniqueToOriginalKeyMap,\n allowDuplicatedKeys,\n ]);\n\n const currentUniqueCheckedKeys = useMemo(() => {\n if (!allowDuplicatedKeys) {\n return currentOriginalCheckedKeys;\n }\n\n const originalKeysSet = new Set(currentOriginalCheckedKeys);\n return getUniqueKeysFromOriginals(\n processedTreeData as AntTreeDataNode[] | undefined,\n originalKeysSet,\n uniqueToOriginalKeyMap\n );\n }, [\n currentOriginalCheckedKeys,\n processedTreeData,\n uniqueToOriginalKeyMap,\n allowDuplicatedKeys,\n ]);\n\n // Simple expand handler for when allowDuplicatedKeys is false\n const handleOriginalExpand = useCallback(\n (\n keys: readonly Key[],\n info: {\n node: EventDataNode<T>;\n expanded: boolean;\n nativeEvent: MouseEvent;\n }\n ) => {\n const keysArray = Array.from(keys);\n setCurrentOriginalExpandedKeys(keysArray);\n\n if (onExpand) {\n onExpand(keysArray, info);\n }\n },\n [onExpand, setCurrentOriginalExpandedKeys]\n );\n\n // Advanced expand handler for when allowDuplicatedKeys is true\n const handleUniqueExpand = useCallback(\n (\n uniqueKeys: readonly Key[],\n info: {\n node: EventDataNode<T>;\n expanded: boolean;\n nativeEvent: MouseEvent;\n }\n ) => {\n const originalKeys = uniqueKeys\n .map((uk) => uniqueToOriginalKeyMap.get(uk))\n .filter((ok): ok is Key => ok !== undefined); // Type guard\n const triggeredOriginalKey = uniqueToOriginalKeyMap.get(info.node.key);\n\n setCurrentOriginalExpandedKeys(originalKeys);\n\n if (onExpand) {\n onExpand(originalKeys, {\n ...info,\n triggeredOriginalKey: triggeredOriginalKey,\n });\n }\n },\n [uniqueToOriginalKeyMap, setCurrentOriginalExpandedKeys, onExpand]\n );\n\n // Simple check handler for when allowDuplicatedKeys is false\n const handleOriginalCheck = useCallback(\n (\n checkedInfoOrKeys:\n | readonly Key[]\n | { checked: readonly Key[]; halfChecked: readonly Key[] },\n info: CheckInfo<T>\n ) => {\n let checkedArray: Key[];\n\n if (Array.isArray(checkedInfoOrKeys)) {\n checkedArray = Array.from(checkedInfoOrKeys);\n } else if (\n checkedInfoOrKeys &&\n typeof checkedInfoOrKeys === \"object\" &&\n \"checked\" in checkedInfoOrKeys\n ) {\n checkedArray = Array.from(checkedInfoOrKeys.checked);\n } else {\n checkedArray = [];\n }\n\n setCurrentOriginalCheckedKeys(checkedArray);\n\n if (onCheck) {\n onCheck(checkedArray, info);\n }\n },\n [onCheck, setCurrentOriginalCheckedKeys]\n );\n\n // Advanced check handler for when allowDuplicatedKeys is true\n const handleUniqueCheck = useCallback(\n (\n checkedInfoOrKeys:\n | readonly Key[]\n | { checked: readonly Key[]; halfChecked: readonly Key[] },\n info: CheckInfo<T> // Contains info about the node that triggered the event\n ) => {\n const triggeredUniqueKey = info.node.key;\n const triggeredOriginalKey =\n uniqueToOriginalKeyMap.get(triggeredUniqueKey);\n\n if (triggeredOriginalKey === undefined) {\n console.error(\n \"Could not find original key for unique key:\",\n triggeredUniqueKey\n );\n return;\n }\n\n // Special handling for unchecking - this is the critical part\n if (!info.checked) {\n // When unchecking, we need to completely rebuild the checked keys list\n // excluding the original key that was unchecked\n\n // 1. Get the current original checked keys\n const currentKeys = [...currentOriginalCheckedKeys];\n\n // 2. Filter out the original key that was unchecked\n const newCheckedKeys = currentKeys.filter(\n (key) => key !== triggeredOriginalKey\n );\n\n // 3. Update the state with the filtered keys\n setCurrentOriginalCheckedKeys(newCheckedKeys);\n\n // 4. Call the user's onCheck callback\n if (onCheck) {\n onCheck(newCheckedKeys, {\n ...info,\n triggeredOriginalKey: triggeredOriginalKey,\n });\n }\n\n // Return early to prevent further processing\n return;\n }\n\n // Handle checking (normal flow for checking items)\n // 1. Extract unique checked keys from Ant Design's final state\n let uniqueCheckedKeys: readonly Key[];\n if (Array.isArray(checkedInfoOrKeys)) {\n uniqueCheckedKeys = checkedInfoOrKeys;\n } else if (\n checkedInfoOrKeys &&\n typeof checkedInfoOrKeys === \"object\" &&\n \"checked\" in checkedInfoOrKeys\n ) {\n uniqueCheckedKeys = checkedInfoOrKeys.checked;\n } else {\n uniqueCheckedKeys = [];\n }\n\n // 2. Map these unique keys to their original keys\n const derivedOriginalKeys = new Set<Key>();\n for (const uniqueKey of uniqueCheckedKeys) {\n const originalKey = uniqueToOriginalKeyMap.get(uniqueKey);\n if (originalKey !== undefined) {\n derivedOriginalKeys.add(originalKey);\n }\n }\n\n // 3. Ensure the triggered original key is included when checking\n derivedOriginalKeys.add(triggeredOriginalKey);\n\n const originalKeysArray = Array.from(derivedOriginalKeys);\n\n // 4. Update the controlled state\n setCurrentOriginalCheckedKeys(originalKeysArray);\n\n // 5. Call the user's onCheck callback\n if (onCheck) {\n onCheck(originalKeysArray, {\n ...info,\n triggeredOriginalKey: triggeredOriginalKey,\n });\n }\n },\n [\n uniqueToOriginalKeyMap,\n setCurrentOriginalCheckedKeys,\n onCheck,\n currentOriginalCheckedKeys,\n ]\n );\n\n // Choose appropriate handlers and data based on allowDuplicatedKeys\n const handleAntTreeExpand = allowDuplicatedKeys\n ? handleUniqueExpand\n : handleOriginalExpand;\n const handleAntTreeCheck = allowDuplicatedKeys\n ? handleUniqueCheck\n : handleOriginalCheck;\n const finalProcessedTreeData = allowDuplicatedKeys\n ? processedTreeData\n : originTreeData;\n\n return {\n processedTreeData: finalProcessedTreeData,\n currentUniqueExpandedKeys,\n currentUniqueCheckedKeys,\n handleAntTreeExpand,\n handleAntTreeCheck,\n };\n};\n"],"names":["useUniqueKeysTree","originTreeData","expandedKeys","defaultExpandedKeys","onExpand","checkedKeys","defaultCheckedKeys","onCheck","allowDuplicatedKeys","currentOriginalExpandedKeys","setCurrentOriginalExpandedKeys","useControlledState","controlledCheckedKeysValue","useMemo","currentOriginalCheckedKeys","setCurrentOriginalCheckedKeys","processedTreeData","uniqueToOriginalKeyMap","map","expandedOriginalKeySet","processTreeData","currentUniqueExpandedKeys","originalKeysSet","getUniqueKeysFromOriginals","currentUniqueCheckedKeys","handleOriginalExpand","useCallback","keys","info","keysArray","handleUniqueExpand","uniqueKeys","originalKeys","uk","ok","triggeredOriginalKey","handleOriginalCheck","checkedInfoOrKeys","checkedArray","handleUniqueCheck","triggeredUniqueKey","newCheckedKeys","key","uniqueCheckedKeys","derivedOriginalKeys","uniqueKey","originalKey","originalKeysArray"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
export type TruncatePosition = "middle" | "end";
|
|
3
|
+
export interface TruncateProps extends Omit<React.ComponentPropsWithoutRef<"span">, "title"> {
|
|
4
|
+
/** Text content to be truncated */
|
|
5
|
+
children: string;
|
|
6
|
+
/** Position where the truncation should occur */
|
|
7
|
+
position?: TruncatePosition;
|
|
8
|
+
/**
|
|
9
|
+
* Number of lines to display before truncating
|
|
10
|
+
* @default 1
|
|
11
|
+
* @remarks Use 'auto' to fit parent height
|
|
12
|
+
*/
|
|
13
|
+
lines?: number | "auto";
|
|
14
|
+
container?: HTMLElement | React.RefObject<HTMLElement>;
|
|
15
|
+
}
|
|
16
|
+
export declare const Truncate: React.FC<TruncateProps>;
|
|
17
|
+
//# sourceMappingURL=component.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/components/truncate/component.tsx"],"names":[],"mappings":"AACA,OAAO,KAAyD,MAAM,OAAO,CAAC;AAQ9E,OAAO,aAAa,CAAC;AAErB,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEhD,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC7D,mCAAmC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAIxB,SAAS,CAAC,EAAE,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;CACxD;AAED,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAiL5C,CAAC"}
|