@rainbow-oh/yee-c 0.1.0 → 0.3.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/dist/cjs/Alert/alert.js +10 -4
- package/dist/cjs/Alert/style/index.less +3 -0
- package/dist/cjs/Anchor/anchor-item.js +6 -4
- package/dist/cjs/Anchor/anchor.js +38 -22
- package/dist/cjs/Anchor/demo/auto.d.ts +11 -0
- package/dist/cjs/Anchor/demo/auto.js +85 -0
- package/dist/cjs/Anchor/demo/basic.js +7 -1
- package/dist/cjs/Anchor/demo/controlled.js +42 -30
- package/dist/cjs/Anchor/interface.d.ts +2 -0
- package/dist/cjs/Anchor/style/index.less +2 -2
- package/dist/cjs/Button/button.d.ts +1 -1
- package/dist/cjs/Button/button.js +2 -2
- package/dist/cjs/Button/style/index.less +23 -8
- package/dist/cjs/Card/demo/collapsible.js +2 -1
- package/dist/cjs/Carousel/demo/arrows.js +1 -1
- package/dist/cjs/Carousel/demo/autoplay.js +1 -1
- package/dist/cjs/Carousel/demo/effect.js +1 -1
- package/dist/cjs/Carousel/demo/position.js +1 -1
- package/dist/cjs/Checkbox/checkbox-group.js +4 -1
- package/dist/cjs/Checkbox/demo/group.js +1 -0
- package/dist/cjs/Checkbox/interface.d.ts +5 -0
- package/dist/cjs/Checkbox/style/index.less +21 -1
- package/dist/cjs/Config-Provider/interface.d.ts +4 -0
- package/dist/cjs/Dropdown/demo/placement.js +2 -1
- package/dist/cjs/Dropdown/dropdown.js +3 -0
- package/dist/cjs/Dropdown/style/index.less +6 -0
- package/dist/cjs/Form/Field.js +64 -12
- package/dist/cjs/Form/Group.js +3 -2
- package/dist/cjs/Form/demo/form-table.js +1 -8
- package/dist/cjs/Form/demo/tooltip.d.ts +3 -0
- package/dist/cjs/Form/demo/tooltip.js +84 -0
- package/dist/cjs/Form/interface.d.ts +51 -2
- package/dist/cjs/Form/style/index.less +22 -7
- package/dist/cjs/Menu/style/index.less +2 -2
- package/dist/cjs/Popconfirm/popconfirm.js +1 -1
- package/dist/cjs/Popconfirm/style/index.less +6 -0
- package/dist/cjs/Popover/popover.js +1 -1
- package/dist/cjs/Popover/style/index.less +6 -0
- package/dist/cjs/Progress/progress.js +2 -2
- package/dist/cjs/Radio/demo/button.js +1 -0
- package/dist/cjs/Radio/interface.d.ts +4 -0
- package/dist/cjs/Radio/radio-group.js +28 -14
- package/dist/cjs/Radio/radio.js +3 -1
- package/dist/cjs/Radio/style/index.less +26 -5
- package/dist/cjs/Segmented/demo/basic.d.ts +3 -0
- package/dist/cjs/Segmented/demo/basic.js +51 -0
- package/dist/cjs/Segmented/demo/block.d.ts +3 -0
- package/dist/cjs/Segmented/demo/block.js +49 -0
- package/dist/cjs/Segmented/demo/disabled.d.ts +3 -0
- package/dist/cjs/Segmented/demo/disabled.js +47 -0
- package/dist/cjs/Segmented/demo/size.d.ts +3 -0
- package/dist/cjs/Segmented/demo/size.js +37 -0
- package/dist/cjs/Segmented/index.d.ts +3 -0
- package/dist/cjs/Segmented/index.js +36 -0
- package/dist/cjs/Segmented/interface.d.ts +82 -0
- package/dist/cjs/Segmented/interface.js +17 -0
- package/dist/cjs/Segmented/segmented.d.ts +5 -0
- package/dist/cjs/Segmented/segmented.js +177 -0
- package/dist/cjs/Segmented/style/index.less +104 -0
- package/dist/cjs/Select/option.js +3 -2
- package/dist/cjs/Select/options.js +9 -1
- package/dist/cjs/Select/select.js +1 -0
- package/dist/cjs/Skeleton/demo/basic.js +1 -1
- package/dist/cjs/Space/interface.d.ts +4 -0
- package/dist/cjs/Space/space.js +36 -16
- package/dist/cjs/Spin/spin.js +2 -1
- package/dist/cjs/Splitter/demo/basic.js +1 -1
- package/dist/cjs/Splitter/demo/vertical.js +23 -1
- package/dist/cjs/Splitter/index.d.ts +1 -1
- package/dist/cjs/Splitter/interface.d.ts +9 -3
- package/dist/cjs/Splitter/splitter-handler.d.ts +1 -1
- package/dist/cjs/Splitter/splitter-handler.js +2 -1
- package/dist/cjs/Splitter/splitter.d.ts +2 -9
- package/dist/cjs/Splitter/splitter.js +53 -50
- package/dist/cjs/Splitter/style/index.less +21 -0
- package/dist/cjs/Steps/step.js +1 -1
- package/dist/cjs/Steps/style/index.less +8 -2
- package/dist/cjs/Switch/demo/content.js +22 -1
- package/dist/cjs/Switch/style/index.less +16 -0
- package/dist/cjs/Switch/switch.js +9 -2
- package/dist/cjs/Table/demo/size.js +1 -1
- package/dist/cjs/Table/interface.d.ts +5 -1
- package/dist/cjs/Table/theader/cell.js +4 -5
- package/dist/cjs/Tabs/hooks/useTabScroll.d.ts +1 -1
- package/dist/cjs/Tabs/interface.d.ts +1 -1
- package/dist/cjs/Tabs/style/index.less +4 -0
- package/dist/cjs/Tabs/tab-header/index.js +56 -25
- package/dist/cjs/Tag/demo/size.js +1 -1
- package/dist/cjs/Tag/style/index.less +1 -0
- package/dist/cjs/Tooltip/interface.d.ts +4 -0
- package/dist/cjs/Tooltip/style/index.less +8 -8
- package/dist/cjs/Tooltip/tooltip.js +11 -3
- package/dist/cjs/Tour/demo/basic.d.ts +3 -0
- package/dist/cjs/Tour/demo/basic.js +69 -0
- package/dist/cjs/Tour/demo/indicators.d.ts +3 -0
- package/dist/cjs/Tour/demo/indicators.js +76 -0
- package/dist/cjs/Tour/demo/placement.d.ts +3 -0
- package/dist/cjs/Tour/demo/placement.js +80 -0
- package/dist/cjs/Tour/demo/scroll.d.ts +3 -0
- package/dist/cjs/Tour/demo/scroll.js +72 -0
- package/dist/cjs/Tour/index.d.ts +3 -0
- package/dist/cjs/Tour/index.js +36 -0
- package/dist/cjs/Tour/interface.d.ts +118 -0
- package/dist/cjs/Tour/interface.js +17 -0
- package/dist/cjs/Tour/style/index.less +103 -0
- package/dist/cjs/Tour/tour.d.ts +5 -0
- package/dist/cjs/Tour/tour.js +403 -0
- package/dist/cjs/Tree/demo/checkable.js +6 -6
- package/dist/cjs/Tree/demo/draggable.d.ts +3 -0
- package/dist/cjs/Tree/demo/draggable.js +88 -0
- package/dist/cjs/Tree/demo/expanded.js +6 -6
- package/dist/cjs/Tree/index.d.ts +1 -0
- package/dist/cjs/Tree/index.js +3 -1
- package/dist/cjs/Tree/interface.d.ts +26 -0
- package/dist/cjs/Tree/style/index.less +25 -0
- package/dist/cjs/Tree/tree-node.js +38 -4
- package/dist/cjs/Tree/tree.d.ts +12 -1
- package/dist/cjs/Tree/tree.js +174 -18
- package/dist/cjs/Tree/utils/tree-tools.d.ts +21 -0
- package/dist/cjs/Tree/utils/tree-tools.js +88 -0
- package/dist/cjs/Trigger/style/index.less +17 -0
- package/dist/cjs/Trigger/trigger.js +3 -1
- package/dist/cjs/hooks/useDebounceFunction.d.ts +1 -1
- package/dist/cjs/hooks/useLayoutEffect.d.ts +1 -1
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.js +6 -0
- package/dist/cjs/locale/interface.d.ts +7 -0
- package/dist/cjs/locale/lang/en_US.js +6 -0
- package/dist/cjs/locale/lang/ja_JP.js +6 -0
- package/dist/cjs/locale/lang/zh_CN.js +6 -0
- package/dist/cjs/locale/lang/zh_TW.js +6 -0
- package/dist/cjs/style/color.blue.css +1 -1
- package/dist/cjs/style/color.crimson.css +1 -1
- package/dist/cjs/style/color.css +18 -1
- package/dist/cjs/style/size.css +51 -4
- package/dist/cjs/style/themes.css +3 -3
- package/dist/cjs/style/variables.css +70 -6
- package/dist/cjs/utils/debounce.d.ts +6 -1
- package/dist/cjs/utils/debounce.js +9 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/Alert/alert.js +24 -8
- package/dist/esm/Alert/style/index.less +3 -0
- package/dist/esm/Anchor/anchor-item.js +6 -3
- package/dist/esm/Anchor/anchor.js +38 -19
- package/dist/esm/Anchor/demo/auto.d.ts +11 -0
- package/dist/esm/Anchor/demo/auto.js +62 -0
- package/dist/esm/Anchor/demo/basic.js +3 -1
- package/dist/esm/Anchor/demo/controlled.js +14 -9
- package/dist/esm/Anchor/interface.d.ts +2 -0
- package/dist/esm/Anchor/style/index.less +2 -2
- package/dist/esm/Button/button.d.ts +1 -1
- package/dist/esm/Button/button.js +2 -2
- package/dist/esm/Button/style/index.less +23 -8
- package/dist/esm/Card/demo/collapsible.js +2 -1
- package/dist/esm/Carousel/demo/arrows.js +1 -1
- package/dist/esm/Carousel/demo/autoplay.js +1 -1
- package/dist/esm/Carousel/demo/effect.js +1 -1
- package/dist/esm/Carousel/demo/position.js +1 -1
- package/dist/esm/Checkbox/checkbox-group.js +4 -2
- package/dist/esm/Checkbox/demo/group.js +1 -0
- package/dist/esm/Checkbox/interface.d.ts +5 -0
- package/dist/esm/Checkbox/style/index.less +21 -1
- package/dist/esm/Config-Provider/interface.d.ts +4 -0
- package/dist/esm/Dropdown/demo/placement.js +2 -1
- package/dist/esm/Dropdown/dropdown.js +6 -1
- package/dist/esm/Dropdown/style/index.less +6 -0
- package/dist/esm/Form/Field.js +53 -8
- package/dist/esm/Form/Group.js +4 -2
- package/dist/esm/Form/demo/form-table.js +8 -6
- package/dist/esm/Form/demo/tooltip.d.ts +3 -0
- package/dist/esm/Form/demo/tooltip.js +59 -0
- package/dist/esm/Form/interface.d.ts +51 -2
- package/dist/esm/Form/style/index.less +22 -7
- package/dist/esm/Menu/style/index.less +2 -2
- package/dist/esm/Popconfirm/popconfirm.js +3 -1
- package/dist/esm/Popconfirm/style/index.less +6 -0
- package/dist/esm/Popover/popover.js +3 -1
- package/dist/esm/Popover/style/index.less +6 -0
- package/dist/esm/Progress/progress.js +5 -5
- package/dist/esm/Radio/demo/button.js +1 -0
- package/dist/esm/Radio/interface.d.ts +4 -0
- package/dist/esm/Radio/radio-group.js +9 -2
- package/dist/esm/Radio/radio.js +3 -1
- package/dist/esm/Radio/style/index.less +26 -5
- package/dist/esm/Segmented/demo/basic.d.ts +3 -0
- package/dist/esm/Segmented/demo/basic.js +33 -0
- package/dist/esm/Segmented/demo/block.d.ts +3 -0
- package/dist/esm/Segmented/demo/block.js +29 -0
- package/dist/esm/Segmented/demo/disabled.d.ts +3 -0
- package/dist/esm/Segmented/demo/disabled.js +22 -0
- package/dist/esm/Segmented/demo/size.d.ts +3 -0
- package/dist/esm/Segmented/demo/size.js +15 -0
- package/dist/esm/Segmented/index.d.ts +3 -0
- package/dist/esm/Segmented/index.js +2 -0
- package/dist/esm/Segmented/interface.d.ts +82 -0
- package/dist/esm/Segmented/interface.js +1 -0
- package/dist/esm/Segmented/segmented.d.ts +5 -0
- package/dist/esm/Segmented/segmented.js +110 -0
- package/dist/esm/Segmented/style/index.less +104 -0
- package/dist/esm/Select/option.js +4 -2
- package/dist/esm/Select/options.js +5 -3
- package/dist/esm/Select/select.js +1 -0
- package/dist/esm/Skeleton/demo/basic.js +2 -8
- package/dist/esm/Space/interface.d.ts +4 -0
- package/dist/esm/Space/space.js +24 -13
- package/dist/esm/Spin/spin.js +2 -1
- package/dist/esm/Splitter/demo/basic.js +2 -0
- package/dist/esm/Splitter/demo/vertical.js +13 -5
- package/dist/esm/Splitter/index.d.ts +1 -1
- package/dist/esm/Splitter/interface.d.ts +9 -3
- package/dist/esm/Splitter/splitter-handler.d.ts +1 -1
- package/dist/esm/Splitter/splitter-handler.js +3 -1
- package/dist/esm/Splitter/splitter.d.ts +2 -9
- package/dist/esm/Splitter/splitter.js +59 -56
- package/dist/esm/Splitter/style/index.less +21 -0
- package/dist/esm/Steps/step.js +4 -1
- package/dist/esm/Steps/style/index.less +8 -2
- package/dist/esm/Switch/demo/content.js +12 -3
- package/dist/esm/Switch/style/index.less +16 -0
- package/dist/esm/Switch/switch.js +7 -5
- package/dist/esm/Table/demo/size.js +2 -7
- package/dist/esm/Table/interface.d.ts +5 -1
- package/dist/esm/Table/theader/cell.js +2 -3
- package/dist/esm/Tabs/hooks/useTabScroll.d.ts +1 -1
- package/dist/esm/Tabs/interface.d.ts +1 -1
- package/dist/esm/Tabs/style/index.less +4 -0
- package/dist/esm/Tabs/tab-header/index.js +11 -5
- package/dist/esm/Tag/demo/size.js +6 -2
- package/dist/esm/Tag/style/index.less +1 -0
- package/dist/esm/Tooltip/interface.d.ts +4 -0
- package/dist/esm/Tooltip/style/index.less +8 -8
- package/dist/esm/Tooltip/tooltip.js +14 -2
- package/dist/esm/Tour/demo/basic.d.ts +3 -0
- package/dist/esm/Tour/demo/basic.js +69 -0
- package/dist/esm/Tour/demo/indicators.d.ts +3 -0
- package/dist/esm/Tour/demo/indicators.js +73 -0
- package/dist/esm/Tour/demo/placement.d.ts +3 -0
- package/dist/esm/Tour/demo/placement.js +53 -0
- package/dist/esm/Tour/demo/scroll.d.ts +3 -0
- package/dist/esm/Tour/demo/scroll.js +58 -0
- package/dist/esm/Tour/index.d.ts +3 -0
- package/dist/esm/Tour/index.js +2 -0
- package/dist/esm/Tour/interface.d.ts +118 -0
- package/dist/esm/Tour/interface.js +1 -0
- package/dist/esm/Tour/style/index.less +103 -0
- package/dist/esm/Tour/tour.d.ts +5 -0
- package/dist/esm/Tour/tour.js +383 -0
- package/dist/esm/Tree/demo/checkable.js +6 -6
- package/dist/esm/Tree/demo/draggable.d.ts +3 -0
- package/dist/esm/Tree/demo/draggable.js +61 -0
- package/dist/esm/Tree/demo/expanded.js +6 -6
- package/dist/esm/Tree/index.d.ts +1 -0
- package/dist/esm/Tree/index.js +1 -0
- package/dist/esm/Tree/interface.d.ts +26 -0
- package/dist/esm/Tree/style/index.less +25 -0
- package/dist/esm/Tree/tree-node.js +29 -4
- package/dist/esm/Tree/tree.d.ts +12 -1
- package/dist/esm/Tree/tree.js +135 -4
- package/dist/esm/Tree/utils/tree-tools.d.ts +21 -0
- package/dist/esm/Tree/utils/tree-tools.js +128 -1
- package/dist/esm/Trigger/style/index.less +17 -0
- package/dist/esm/Trigger/trigger.js +4 -3
- package/dist/esm/hooks/useDebounceFunction.d.ts +1 -1
- package/dist/esm/hooks/useLayoutEffect.d.ts +1 -1
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/locale/interface.d.ts +7 -0
- package/dist/esm/locale/lang/en_US.js +6 -0
- package/dist/esm/locale/lang/ja_JP.js +6 -0
- package/dist/esm/locale/lang/zh_CN.js +6 -0
- package/dist/esm/locale/lang/zh_TW.js +6 -0
- package/dist/esm/style/color.blue.css +1 -1
- package/dist/esm/style/color.crimson.css +1 -1
- package/dist/esm/style/color.css +18 -1
- package/dist/esm/style/size.css +51 -4
- package/dist/esm/style/themes.css +3 -3
- package/dist/esm/style/variables.css +70 -6
- package/dist/esm/utils/debounce.d.ts +6 -1
- package/dist/esm/utils/debounce.js +9 -2
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/umd/yee-c.min.css +3 -3
- package/dist/umd/yee-c.min.js +1 -1
- package/package.json +21 -23
- package/src/Alert/alert.tsx +10 -4
- package/src/Alert/style/index.less +3 -0
- package/src/Anchor/anchor-item.tsx +7 -2
- package/src/Anchor/anchor.tsx +49 -23
- package/src/Anchor/demo/auto.tsx +55 -0
- package/src/Anchor/demo/basic.tsx +7 -1
- package/src/Anchor/demo/controlled.tsx +18 -14
- package/src/Anchor/index.en-US.md +17 -0
- package/src/Anchor/index.zh-CN.md +17 -0
- package/src/Anchor/interface.ts +2 -0
- package/src/Anchor/style/index.less +2 -2
- package/src/Button/button.tsx +2 -2
- package/src/Button/style/index.less +23 -8
- package/src/Card/demo/collapsible.tsx +1 -0
- package/src/Carousel/demo/arrows.tsx +1 -1
- package/src/Carousel/demo/autoplay.tsx +1 -1
- package/src/Carousel/demo/effect.tsx +1 -1
- package/src/Carousel/demo/position.tsx +1 -1
- package/src/Checkbox/checkbox-group.tsx +5 -1
- package/src/Checkbox/demo/group.tsx +1 -0
- package/src/Checkbox/interface.ts +5 -0
- package/src/Checkbox/style/index.less +21 -1
- package/src/Config-Provider/index.en-US.md +2 -0
- package/src/Config-Provider/index.zh-CN.md +2 -0
- package/src/Config-Provider/interface.ts +4 -0
- package/src/Dropdown/demo/placement.tsx +1 -0
- package/src/Dropdown/dropdown.tsx +2 -0
- package/src/Dropdown/style/index.less +6 -0
- package/src/Form/Field.tsx +70 -9
- package/src/Form/Group.tsx +4 -1
- package/src/Form/demo/form-table.tsx +7 -7
- package/src/Form/demo/tooltip.tsx +72 -0
- package/src/Form/form-store.ts +1 -1
- package/src/Form/index.en-US.md +6 -0
- package/src/Form/index.zh-CN.md +87 -85
- package/src/Form/interface.ts +53 -2
- package/src/Form/style/index.less +22 -7
- package/src/Menu/style/index.less +2 -2
- package/src/Popconfirm/popconfirm.tsx +1 -1
- package/src/Popconfirm/style/index.less +6 -0
- package/src/Popover/popover.tsx +1 -1
- package/src/Popover/style/index.less +6 -0
- package/src/Progress/progress.tsx +2 -2
- package/src/Radio/demo/button.tsx +1 -0
- package/src/Radio/index.en-US.md +2 -0
- package/src/Radio/index.zh-CN.md +2 -0
- package/src/Radio/interface.ts +4 -0
- package/src/Radio/radio-group.tsx +9 -1
- package/src/Radio/radio.tsx +2 -1
- package/src/Radio/style/index.less +26 -5
- package/src/Segmented/demo/basic.tsx +24 -0
- package/src/Segmented/demo/block.tsx +17 -0
- package/src/Segmented/demo/disabled.tsx +18 -0
- package/src/Segmented/demo/size.tsx +10 -0
- package/src/Segmented/index.en-US.md +47 -0
- package/src/Segmented/index.ts +12 -0
- package/src/Segmented/index.zh-CN.md +47 -0
- package/src/Segmented/interface.ts +87 -0
- package/src/Segmented/segmented.tsx +134 -0
- package/src/Segmented/style/index.less +104 -0
- package/src/Select/option.tsx +2 -1
- package/src/Select/options.tsx +7 -2
- package/src/Select/select.tsx +1 -0
- package/src/Skeleton/demo/basic.tsx +3 -3
- package/src/Space/interface.ts +4 -0
- package/src/Space/space.tsx +40 -16
- package/src/Spin/spin.tsx +1 -0
- package/src/Splitter/demo/basic.tsx +2 -2
- package/src/Splitter/demo/vertical.tsx +19 -5
- package/src/Splitter/index.ts +5 -1
- package/src/Splitter/interface.ts +10 -3
- package/src/Splitter/splitter-handler.tsx +4 -2
- package/src/Splitter/splitter.tsx +55 -60
- package/src/Splitter/style/index.less +21 -0
- package/src/Steps/step.tsx +1 -1
- package/src/Steps/style/index.less +8 -2
- package/src/Switch/demo/content.tsx +15 -5
- package/src/Switch/style/index.less +16 -0
- package/src/Switch/switch.tsx +14 -6
- package/src/Table/demo/size.tsx +3 -3
- package/src/Table/index.en-US.md +1 -0
- package/src/Table/index.zh-CN.md +51 -50
- package/src/Table/interface.ts +5 -1
- package/src/Table/theader/cell.tsx +2 -9
- package/src/Tabs/interface.ts +1 -1
- package/src/Tabs/style/index.less +4 -0
- package/src/Tabs/tab-header/index.tsx +26 -5
- package/src/Tag/demo/size.tsx +2 -2
- package/src/Tag/style/index.less +1 -0
- package/src/Tooltip/index.en-US.md +1 -0
- package/src/Tooltip/index.zh-CN.md +1 -0
- package/src/Tooltip/interface.ts +4 -0
- package/src/Tooltip/style/index.less +8 -8
- package/src/Tooltip/tooltip.tsx +10 -1
- package/src/Tour/demo/basic.tsx +52 -0
- package/src/Tour/demo/indicators.tsx +63 -0
- package/src/Tour/demo/placement.tsx +55 -0
- package/src/Tour/demo/scroll.tsx +49 -0
- package/src/Tour/index.en-US.md +61 -0
- package/src/Tour/index.ts +10 -0
- package/src/Tour/index.zh-CN.md +61 -0
- package/src/Tour/interface.ts +126 -0
- package/src/Tour/style/index.less +103 -0
- package/src/Tour/tour.tsx +399 -0
- package/src/Tree/demo/checkable.tsx +6 -6
- package/src/Tree/demo/draggable.tsx +58 -0
- package/src/Tree/demo/expanded.tsx +7 -7
- package/src/Tree/index.en-US.md +3 -0
- package/src/Tree/index.ts +1 -0
- package/src/Tree/index.zh-CN.md +3 -0
- package/src/Tree/interface.ts +28 -0
- package/src/Tree/style/index.less +25 -0
- package/src/Tree/tree-node.tsx +26 -0
- package/src/Tree/tree.tsx +183 -2
- package/src/Tree/utils/tree-tools.ts +107 -0
- package/src/Trigger/style/index.less +17 -0
- package/src/Trigger/trigger.tsx +3 -1
- package/src/index.ts +6 -0
- package/src/locale/interface.ts +9 -0
- package/src/locale/lang/en_US.ts +7 -0
- package/src/locale/lang/ja_JP.ts +7 -0
- package/src/locale/lang/zh_CN.ts +7 -0
- package/src/locale/lang/zh_TW.ts +7 -0
- package/src/style/color.blue.css +1 -1
- package/src/style/color.crimson.css +1 -1
- package/src/style/color.css +18 -1
- package/src/style/size.css +51 -4
- package/src/utils/debounce.ts +22 -3
- package/src/version.ts +1 -1
- package/dist/cjs/utils/x.d.ts +0 -11
- package/dist/cjs/utils/x.js +0 -51
- package/dist/esm/utils/x.d.ts +0 -11
- package/dist/esm/utils/x.js +0 -49
- package/src/utils/x.ts +0 -33
|
@@ -0,0 +1,383 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
var _excluded = ["prefixCls", "className", "style", "classNames", "styles", "open", "steps", "current", "defaultCurrent", "onClose", "onFinish", "onChange", "placement", "mask", "closable", "closeIcon", "maskClosable", "indicatorsRender", "scrollIntoViewOptions"];
|
|
3
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
7
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
8
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
9
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
10
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
11
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
12
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
13
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
14
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
15
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
16
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
17
|
+
import clsx from 'clsx';
|
|
18
|
+
import { X } from 'lucide-react';
|
|
19
|
+
import { motion } from 'motion/react';
|
|
20
|
+
import React, { useCallback, useContext, useLayoutEffect, useMemo, useRef, useState } from 'react';
|
|
21
|
+
import { createPortal } from 'react-dom';
|
|
22
|
+
import Button from "../Button";
|
|
23
|
+
import { GlobalContext } from "../Config-Provider";
|
|
24
|
+
import useEsc from "../hooks/useEsc";
|
|
25
|
+
import useLatest from "../hooks/useLatest";
|
|
26
|
+
import useMergedState from "../hooks/useMergedState";
|
|
27
|
+
import { useLocale } from "../locale";
|
|
28
|
+
import mergeContextToProps from "../utils/mergeContextToProps";
|
|
29
|
+
import "./style/index.less";
|
|
30
|
+
var GAP = 12;
|
|
31
|
+
var resolveTarget = function resolveTarget(target) {
|
|
32
|
+
if (!target) return null;
|
|
33
|
+
if (typeof target === 'function') {
|
|
34
|
+
try {
|
|
35
|
+
return target();
|
|
36
|
+
} catch (_unused) {
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
if (typeof target === 'string') {
|
|
41
|
+
if (typeof document === 'undefined') return null;
|
|
42
|
+
return document.querySelector(target);
|
|
43
|
+
}
|
|
44
|
+
return target;
|
|
45
|
+
};
|
|
46
|
+
var SIDE_PREFIXES = ['top', 'bottom', 'left', 'right'];
|
|
47
|
+
|
|
48
|
+
// Split a 12-way Placement into a base side + cross-axis alignment.
|
|
49
|
+
// 'bottom' -> { side: 'bottom', align: 'center' }
|
|
50
|
+
// 'topLeft' -> { side: 'top', align: 'start' }
|
|
51
|
+
// 'leftBottom' -> { side: 'left', align: 'end' }
|
|
52
|
+
var parsePlacement = function parsePlacement(p) {
|
|
53
|
+
var _SIDE_PREFIXES$find;
|
|
54
|
+
if (!p) return {
|
|
55
|
+
side: 'bottom',
|
|
56
|
+
align: 'center'
|
|
57
|
+
};
|
|
58
|
+
var side = (_SIDE_PREFIXES$find = SIDE_PREFIXES.find(function (s) {
|
|
59
|
+
return p.startsWith(s);
|
|
60
|
+
})) !== null && _SIDE_PREFIXES$find !== void 0 ? _SIDE_PREFIXES$find : 'bottom';
|
|
61
|
+
var rest = p.slice(side.length);
|
|
62
|
+
var align = 'center';
|
|
63
|
+
if (side === 'top' || side === 'bottom') {
|
|
64
|
+
if (rest === 'Left') align = 'start';else if (rest === 'Right') align = 'end';
|
|
65
|
+
} else if (rest === 'Top') {
|
|
66
|
+
align = 'start';
|
|
67
|
+
} else if (rest === 'Bottom') {
|
|
68
|
+
align = 'end';
|
|
69
|
+
}
|
|
70
|
+
return {
|
|
71
|
+
side: side,
|
|
72
|
+
align: align
|
|
73
|
+
};
|
|
74
|
+
};
|
|
75
|
+
var OPPOSITE_SIDE = {
|
|
76
|
+
top: 'bottom',
|
|
77
|
+
bottom: 'top',
|
|
78
|
+
left: 'right',
|
|
79
|
+
right: 'left'
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
// Compute the card's fixed position from the highlight rect + placement, with
|
|
83
|
+
// viewport flip + clamp. Returning rect's origin while size is unknown lets the
|
|
84
|
+
// caller keep the card hidden until measured.
|
|
85
|
+
var computeCardPos = function computeCardPos(rect, placement, size, gap) {
|
|
86
|
+
var cw = size.width,
|
|
87
|
+
ch = size.height;
|
|
88
|
+
var top = rect.top,
|
|
89
|
+
left = rect.left,
|
|
90
|
+
width = rect.width,
|
|
91
|
+
height = rect.height;
|
|
92
|
+
if (cw === 0 || ch === 0) {
|
|
93
|
+
return {
|
|
94
|
+
top: top,
|
|
95
|
+
left: left
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
var vw = window.innerWidth;
|
|
99
|
+
var vh = window.innerHeight;
|
|
100
|
+
var _parsePlacement = parsePlacement(placement),
|
|
101
|
+
preferredSide = _parsePlacement.side,
|
|
102
|
+
align = _parsePlacement.align;
|
|
103
|
+
|
|
104
|
+
// Lay the card out for a given side; align shifts it along the cross axis.
|
|
105
|
+
var layoutFor = function layoutFor(side) {
|
|
106
|
+
if (side === 'top' || side === 'bottom') {
|
|
107
|
+
var _main = side === 'top' ? top - ch - gap : top + height + gap;
|
|
108
|
+
var _cross;
|
|
109
|
+
if (align === 'start') _cross = left;else if (align === 'end') _cross = left + width - cw;else _cross = left + width / 2 - cw / 2;
|
|
110
|
+
return {
|
|
111
|
+
top: _main,
|
|
112
|
+
left: _cross
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
var main = side === 'left' ? left - cw - gap : left + width + gap;
|
|
116
|
+
var cross;
|
|
117
|
+
if (align === 'start') cross = top;else if (align === 'end') cross = top + height - ch;else cross = top + height / 2 - ch / 2;
|
|
118
|
+
return {
|
|
119
|
+
top: cross,
|
|
120
|
+
left: main
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
// True when the card fits on the main axis for this side.
|
|
125
|
+
var fits = function fits(side, pos) {
|
|
126
|
+
if (side === 'top') return pos.top >= gap;
|
|
127
|
+
if (side === 'bottom') return pos.top + ch <= vh - gap;
|
|
128
|
+
if (side === 'left') return pos.left >= gap;
|
|
129
|
+
return pos.left + cw <= vw - gap;
|
|
130
|
+
};
|
|
131
|
+
var side = preferredSide;
|
|
132
|
+
var pos = layoutFor(side);
|
|
133
|
+
|
|
134
|
+
// Flip to the opposite side when the preferred one overflows and the
|
|
135
|
+
// opposite fits. Alignment is preserved across the flip.
|
|
136
|
+
var flippedSide = OPPOSITE_SIDE[side];
|
|
137
|
+
var flipped = layoutFor(flippedSide);
|
|
138
|
+
if (!fits(side, pos) && fits(flippedSide, flipped)) {
|
|
139
|
+
side = flippedSide;
|
|
140
|
+
pos = flipped;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
// Clamp into the viewport (mostly fixes cross-axis overflow).
|
|
144
|
+
return {
|
|
145
|
+
top: Math.max(gap, Math.min(pos.top, vh - ch - gap)),
|
|
146
|
+
left: Math.max(gap, Math.min(pos.left, vw - cw - gap))
|
|
147
|
+
};
|
|
148
|
+
};
|
|
149
|
+
var Tour = function Tour(baseprops) {
|
|
150
|
+
var _locale$tour, _step$placement;
|
|
151
|
+
var _useContext = useContext(GlobalContext),
|
|
152
|
+
tourCtx = _useContext.tour;
|
|
153
|
+
var props = mergeContextToProps(baseprops, tourCtx);
|
|
154
|
+
var _useLocale = useLocale(),
|
|
155
|
+
locale = _useLocale.locale;
|
|
156
|
+
var tourLocale = (_locale$tour = locale === null || locale === void 0 ? void 0 : locale.tour) !== null && _locale$tour !== void 0 ? _locale$tour : {
|
|
157
|
+
previous: 'Previous',
|
|
158
|
+
next: 'Next',
|
|
159
|
+
finish: 'Finish',
|
|
160
|
+
skip: 'Skip'
|
|
161
|
+
};
|
|
162
|
+
var _props$prefixCls = props.prefixCls,
|
|
163
|
+
prefixCls = _props$prefixCls === void 0 ? 'yee-tour' : _props$prefixCls,
|
|
164
|
+
className = props.className,
|
|
165
|
+
style = props.style,
|
|
166
|
+
classNames = props.classNames,
|
|
167
|
+
styles = props.styles,
|
|
168
|
+
open = props.open,
|
|
169
|
+
_props$steps = props.steps,
|
|
170
|
+
steps = _props$steps === void 0 ? [] : _props$steps,
|
|
171
|
+
current = props.current,
|
|
172
|
+
_props$defaultCurrent = props.defaultCurrent,
|
|
173
|
+
defaultCurrent = _props$defaultCurrent === void 0 ? 0 : _props$defaultCurrent,
|
|
174
|
+
onClose = props.onClose,
|
|
175
|
+
onFinish = props.onFinish,
|
|
176
|
+
onChange = props.onChange,
|
|
177
|
+
_props$placement = props.placement,
|
|
178
|
+
placement = _props$placement === void 0 ? 'bottom' : _props$placement,
|
|
179
|
+
_props$mask = props.mask,
|
|
180
|
+
mask = _props$mask === void 0 ? true : _props$mask,
|
|
181
|
+
_props$closable = props.closable,
|
|
182
|
+
closable = _props$closable === void 0 ? true : _props$closable,
|
|
183
|
+
closeIcon = props.closeIcon,
|
|
184
|
+
_props$maskClosable = props.maskClosable,
|
|
185
|
+
maskClosable = _props$maskClosable === void 0 ? false : _props$maskClosable,
|
|
186
|
+
indicatorsRender = props.indicatorsRender,
|
|
187
|
+
_props$scrollIntoView = props.scrollIntoViewOptions,
|
|
188
|
+
scrollIntoViewOptions = _props$scrollIntoView === void 0 ? true : _props$scrollIntoView,
|
|
189
|
+
rest = _objectWithoutProperties(props, _excluded);
|
|
190
|
+
var _useMergedState = useMergedState(defaultCurrent, {
|
|
191
|
+
value: current,
|
|
192
|
+
defaultValue: defaultCurrent
|
|
193
|
+
}),
|
|
194
|
+
_useMergedState2 = _slicedToArray(_useMergedState, 2),
|
|
195
|
+
mergedCurrent = _useMergedState2[0],
|
|
196
|
+
setMergedCurrent = _useMergedState2[1];
|
|
197
|
+
var step = steps[mergedCurrent];
|
|
198
|
+
var total = steps.length;
|
|
199
|
+
var isLast = mergedCurrent >= total - 1;
|
|
200
|
+
var stepPlacement = (_step$placement = step === null || step === void 0 ? void 0 : step.placement) !== null && _step$placement !== void 0 ? _step$placement : placement;
|
|
201
|
+
var targetEl = useMemo(function () {
|
|
202
|
+
return resolveTarget(step === null || step === void 0 ? void 0 : step.target);
|
|
203
|
+
}, [step, open]);
|
|
204
|
+
var _useState = useState(null),
|
|
205
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
206
|
+
rect = _useState2[0],
|
|
207
|
+
setRect = _useState2[1];
|
|
208
|
+
var rafRef = useRef(null);
|
|
209
|
+
|
|
210
|
+
// Keep the latest scrollIntoViewOptions in a ref so the tracking effect below
|
|
211
|
+
// doesn't re-run (and re-scroll) when the caller passes an inline object on
|
|
212
|
+
// every render — that would loop with rAF → setRect → re-render forever.
|
|
213
|
+
var scrollIntoViewOptionsRef = useLatest(scrollIntoViewOptions);
|
|
214
|
+
|
|
215
|
+
// Track target rect: recompute on open / step / scroll / resize (rAF throttled).
|
|
216
|
+
useLayoutEffect(function () {
|
|
217
|
+
if (!open || !targetEl) {
|
|
218
|
+
setRect(null);
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
var update = function update() {
|
|
222
|
+
if (rafRef.current !== null) cancelAnimationFrame(rafRef.current);
|
|
223
|
+
rafRef.current = requestAnimationFrame(function () {
|
|
224
|
+
setRect(targetEl.getBoundingClientRect());
|
|
225
|
+
});
|
|
226
|
+
};
|
|
227
|
+
update();
|
|
228
|
+
// Bring the target into view, but only when it isn't already — the default
|
|
229
|
+
// (`true` ≈ `{ block: 'start' }`) would otherwise yank an already-visible
|
|
230
|
+
// element to the top of the viewport on every step change. A custom options
|
|
231
|
+
// object is honored as-is (its own `nearest` alignment handles the visible
|
|
232
|
+
// case), and `false` disables auto-scroll entirely.
|
|
233
|
+
var scrollTargetIfNeeded = function scrollTargetIfNeeded() {
|
|
234
|
+
var opts = scrollIntoViewOptionsRef.current;
|
|
235
|
+
if (opts === false) return;
|
|
236
|
+
if (opts === true) {
|
|
237
|
+
var vr = targetEl.getBoundingClientRect();
|
|
238
|
+
var inViewport = vr.top >= 0 && vr.left >= 0 && vr.bottom <= window.innerHeight && vr.right <= window.innerWidth;
|
|
239
|
+
if (inViewport) return;
|
|
240
|
+
}
|
|
241
|
+
try {
|
|
242
|
+
var _targetEl$scrollIntoV;
|
|
243
|
+
(_targetEl$scrollIntoV = targetEl.scrollIntoView) === null || _targetEl$scrollIntoV === void 0 || _targetEl$scrollIntoV.call(targetEl, opts);
|
|
244
|
+
} catch (_unused2) {
|
|
245
|
+
// noop
|
|
246
|
+
}
|
|
247
|
+
};
|
|
248
|
+
scrollTargetIfNeeded();
|
|
249
|
+
window.addEventListener('resize', update);
|
|
250
|
+
window.addEventListener('scroll', update, true);
|
|
251
|
+
return function () {
|
|
252
|
+
if (rafRef.current !== null) cancelAnimationFrame(rafRef.current);
|
|
253
|
+
window.removeEventListener('resize', update);
|
|
254
|
+
window.removeEventListener('scroll', update, true);
|
|
255
|
+
};
|
|
256
|
+
}, [open, targetEl, mergedCurrent]);
|
|
257
|
+
useEsc({
|
|
258
|
+
enabled: open,
|
|
259
|
+
onEsc: function onEsc() {
|
|
260
|
+
return onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
var handleNext = useCallback(function () {
|
|
264
|
+
if (isLast) {
|
|
265
|
+
onFinish === null || onFinish === void 0 || onFinish();
|
|
266
|
+
return;
|
|
267
|
+
}
|
|
268
|
+
var nextCur = mergedCurrent + 1;
|
|
269
|
+
setMergedCurrent(nextCur);
|
|
270
|
+
onChange === null || onChange === void 0 || onChange(nextCur);
|
|
271
|
+
}, [isLast, mergedCurrent, onChange, onFinish, setMergedCurrent]);
|
|
272
|
+
var handlePrev = useCallback(function () {
|
|
273
|
+
if (mergedCurrent <= 0) return;
|
|
274
|
+
var prevCur = mergedCurrent - 1;
|
|
275
|
+
setMergedCurrent(prevCur);
|
|
276
|
+
onChange === null || onChange === void 0 || onChange(prevCur);
|
|
277
|
+
}, [mergedCurrent, onChange, setMergedCurrent]);
|
|
278
|
+
|
|
279
|
+
// Measure the card so we can position it against the highlight rect.
|
|
280
|
+
var cardRef = useRef(null);
|
|
281
|
+
var _useState3 = useState({
|
|
282
|
+
width: 0,
|
|
283
|
+
height: 0
|
|
284
|
+
}),
|
|
285
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
286
|
+
cardSize = _useState4[0],
|
|
287
|
+
setCardSize = _useState4[1];
|
|
288
|
+
useLayoutEffect(function () {
|
|
289
|
+
if (!open) return;
|
|
290
|
+
var node = cardRef.current;
|
|
291
|
+
if (!node) return;
|
|
292
|
+
var r = node.getBoundingClientRect();
|
|
293
|
+
setCardSize({
|
|
294
|
+
width: r.width,
|
|
295
|
+
height: r.height
|
|
296
|
+
});
|
|
297
|
+
}, [open, step]);
|
|
298
|
+
var cardPos = useMemo(function () {
|
|
299
|
+
if (!cardSize.width || !cardSize.height) return null;
|
|
300
|
+
if (rect) return computeCardPos(rect, stepPlacement, cardSize, GAP);
|
|
301
|
+
// No target: center the card in the viewport.
|
|
302
|
+
return {
|
|
303
|
+
top: window.innerHeight / 2 - cardSize.height / 2,
|
|
304
|
+
left: window.innerWidth / 2 - cardSize.width / 2
|
|
305
|
+
};
|
|
306
|
+
}, [rect, stepPlacement, cardSize]);
|
|
307
|
+
if (!open || typeof document === 'undefined' || !step) {
|
|
308
|
+
return null;
|
|
309
|
+
}
|
|
310
|
+
return /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement("div", _extends({
|
|
311
|
+
className: clsx(prefixCls, className),
|
|
312
|
+
style: style
|
|
313
|
+
}, rest), mask ? /*#__PURE__*/React.createElement("div", {
|
|
314
|
+
className: clsx("".concat(prefixCls, "-mask"), !rect && "".concat(prefixCls, "-mask-full")),
|
|
315
|
+
onClick: maskClosable ? onClose : undefined
|
|
316
|
+
}) : null, mask && rect ? /*#__PURE__*/React.createElement(motion.div, {
|
|
317
|
+
className: clsx("".concat(prefixCls, "-highlight"), classNames === null || classNames === void 0 ? void 0 : classNames.highlight),
|
|
318
|
+
initial: false,
|
|
319
|
+
animate: {
|
|
320
|
+
top: rect.top,
|
|
321
|
+
left: rect.left,
|
|
322
|
+
width: rect.width,
|
|
323
|
+
height: rect.height
|
|
324
|
+
},
|
|
325
|
+
transition: {
|
|
326
|
+
type: 'spring',
|
|
327
|
+
visualDuration: 0.3,
|
|
328
|
+
bounce: 0.2
|
|
329
|
+
},
|
|
330
|
+
style: styles === null || styles === void 0 ? void 0 : styles.highlight
|
|
331
|
+
}) : null, /*#__PURE__*/React.createElement(motion.div, {
|
|
332
|
+
ref: cardRef,
|
|
333
|
+
className: clsx("".concat(prefixCls, "-content"), classNames === null || classNames === void 0 ? void 0 : classNames.content, step === null || step === void 0 ? void 0 : step.className),
|
|
334
|
+
initial: false,
|
|
335
|
+
animate: cardPos ? {
|
|
336
|
+
top: cardPos.top,
|
|
337
|
+
left: cardPos.left
|
|
338
|
+
} : {
|
|
339
|
+
top: 0,
|
|
340
|
+
left: 0
|
|
341
|
+
},
|
|
342
|
+
transition: {
|
|
343
|
+
type: 'spring',
|
|
344
|
+
visualDuration: 0.3,
|
|
345
|
+
bounce: 0.2
|
|
346
|
+
},
|
|
347
|
+
style: _objectSpread({
|
|
348
|
+
position: 'fixed',
|
|
349
|
+
visibility: cardPos ? 'visible' : 'hidden'
|
|
350
|
+
}, styles === null || styles === void 0 ? void 0 : styles.content)
|
|
351
|
+
}, closable ? /*#__PURE__*/React.createElement(Button, {
|
|
352
|
+
type: "text",
|
|
353
|
+
className: "".concat(prefixCls, "-close"),
|
|
354
|
+
onClick: onClose,
|
|
355
|
+
size: "small",
|
|
356
|
+
icon: closeIcon !== null && closeIcon !== void 0 ? closeIcon : /*#__PURE__*/React.createElement(X, {
|
|
357
|
+
size: 16
|
|
358
|
+
}),
|
|
359
|
+
"aria-label": tourLocale.skip
|
|
360
|
+
}) : null, step !== null && step !== void 0 && step.title ? /*#__PURE__*/React.createElement("div", {
|
|
361
|
+
className: clsx("".concat(prefixCls, "-header"), classNames === null || classNames === void 0 ? void 0 : classNames.header),
|
|
362
|
+
style: styles === null || styles === void 0 ? void 0 : styles.header
|
|
363
|
+
}, step.title) : null, /*#__PURE__*/React.createElement("div", {
|
|
364
|
+
className: clsx("".concat(prefixCls, "-body"), classNames === null || classNames === void 0 ? void 0 : classNames.body),
|
|
365
|
+
style: styles === null || styles === void 0 ? void 0 : styles.body
|
|
366
|
+
}, step === null || step === void 0 ? void 0 : step.description), /*#__PURE__*/React.createElement("div", {
|
|
367
|
+
className: clsx("".concat(prefixCls, "-footer"), classNames === null || classNames === void 0 ? void 0 : classNames.footer),
|
|
368
|
+
style: styles === null || styles === void 0 ? void 0 : styles.footer
|
|
369
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
370
|
+
className: "".concat(prefixCls, "-indicators")
|
|
371
|
+
}, indicatorsRender ? indicatorsRender(mergedCurrent, total) : "".concat(mergedCurrent + 1, " / ").concat(total)), /*#__PURE__*/React.createElement("span", {
|
|
372
|
+
className: "".concat(prefixCls, "-buttons")
|
|
373
|
+
}, mergedCurrent > 0 ? /*#__PURE__*/React.createElement(Button, {
|
|
374
|
+
size: "small",
|
|
375
|
+
onClick: handlePrev
|
|
376
|
+
}, tourLocale.previous) : null, /*#__PURE__*/React.createElement(Button, {
|
|
377
|
+
type: "primary",
|
|
378
|
+
size: "small",
|
|
379
|
+
onClick: handleNext
|
|
380
|
+
}, isLast ? tourLocale.finish : tourLocale.next))))), document.body);
|
|
381
|
+
};
|
|
382
|
+
Tour.displayName = 'Tour';
|
|
383
|
+
export default Tour;
|
|
@@ -13,23 +13,23 @@ export default (function () {
|
|
|
13
13
|
setCheckedKeys = _useState2[1];
|
|
14
14
|
var treeData = [{
|
|
15
15
|
label: 'parent 1',
|
|
16
|
-
key:
|
|
16
|
+
key: 1,
|
|
17
17
|
children: [{
|
|
18
18
|
label: 'parent 1-0',
|
|
19
|
-
key:
|
|
19
|
+
key: 10,
|
|
20
20
|
children: [{
|
|
21
21
|
label: 'leaf',
|
|
22
|
-
key:
|
|
22
|
+
key: 100
|
|
23
23
|
}, {
|
|
24
24
|
label: 'leaf',
|
|
25
|
-
key:
|
|
25
|
+
key: 101
|
|
26
26
|
}]
|
|
27
27
|
}, {
|
|
28
28
|
label: 'parent 1-1',
|
|
29
|
-
key:
|
|
29
|
+
key: 20,
|
|
30
30
|
children: [{
|
|
31
31
|
label: 'leaf',
|
|
32
|
-
key:
|
|
32
|
+
key: 201
|
|
33
33
|
}]
|
|
34
34
|
}]
|
|
35
35
|
}];
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
2
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
4
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
7
|
+
import { Tree, moveTreeNode } from "../..";
|
|
8
|
+
import React, { useState } from 'react';
|
|
9
|
+
var FIELD_NAMES = {
|
|
10
|
+
key: 'key',
|
|
11
|
+
label: 'label',
|
|
12
|
+
children: 'children'
|
|
13
|
+
};
|
|
14
|
+
export default (function () {
|
|
15
|
+
var _useState = useState([{
|
|
16
|
+
label: 'parent 1',
|
|
17
|
+
key: '0-0',
|
|
18
|
+
children: [{
|
|
19
|
+
label: 'parent 1-0',
|
|
20
|
+
key: '0-0-0',
|
|
21
|
+
children: [{
|
|
22
|
+
label: 'leaf-1',
|
|
23
|
+
key: '0-0-0-0'
|
|
24
|
+
}, {
|
|
25
|
+
label: 'leaf-2',
|
|
26
|
+
key: '0-0-0-1'
|
|
27
|
+
}]
|
|
28
|
+
}, {
|
|
29
|
+
label: 'parent 1-1',
|
|
30
|
+
key: '0-0-1',
|
|
31
|
+
children: [{
|
|
32
|
+
label: 'leaf-3',
|
|
33
|
+
key: '0-0-1-0'
|
|
34
|
+
}]
|
|
35
|
+
}]
|
|
36
|
+
}, {
|
|
37
|
+
label: 'parent 2',
|
|
38
|
+
key: '0-1',
|
|
39
|
+
children: [{
|
|
40
|
+
label: 'leaf-4',
|
|
41
|
+
key: '0-1-0'
|
|
42
|
+
}]
|
|
43
|
+
}]),
|
|
44
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
45
|
+
data = _useState2[0],
|
|
46
|
+
setData = _useState2[1];
|
|
47
|
+
return /*#__PURE__*/React.createElement(Tree, {
|
|
48
|
+
draggable: true,
|
|
49
|
+
defaultExpandAll: true,
|
|
50
|
+
dataSource: data,
|
|
51
|
+
onDrop: function onDrop(info) {
|
|
52
|
+
return setData(function (prev) {
|
|
53
|
+
return moveTreeNode(prev, {
|
|
54
|
+
dragKey: info.dragKey,
|
|
55
|
+
dropKey: info.dropKey,
|
|
56
|
+
position: info.position
|
|
57
|
+
}, FIELD_NAMES);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
});
|
|
@@ -12,23 +12,23 @@ export default (function () {
|
|
|
12
12
|
expandedKeys = _useState2[0],
|
|
13
13
|
setExpandedKeys = _useState2[1];
|
|
14
14
|
var treeData = [{
|
|
15
|
-
|
|
15
|
+
label: 'parent 1',
|
|
16
16
|
key: '0-0',
|
|
17
17
|
children: [{
|
|
18
|
-
|
|
18
|
+
label: 'parent 1-0',
|
|
19
19
|
key: '0-0-0',
|
|
20
20
|
children: [{
|
|
21
|
-
|
|
21
|
+
label: 'leaf',
|
|
22
22
|
key: '0-0-0-0'
|
|
23
23
|
}, {
|
|
24
|
-
|
|
24
|
+
label: 'leaf',
|
|
25
25
|
key: '0-0-0-1'
|
|
26
26
|
}]
|
|
27
27
|
}, {
|
|
28
|
-
|
|
28
|
+
label: 'parent 1-1',
|
|
29
29
|
key: '0-0-1',
|
|
30
30
|
children: [{
|
|
31
|
-
|
|
31
|
+
label: 'leaf',
|
|
32
32
|
key: '0-0-1-0'
|
|
33
33
|
}]
|
|
34
34
|
}]
|
package/dist/esm/Tree/index.d.ts
CHANGED
package/dist/esm/Tree/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
export type SemanticType = '';
|
|
3
|
+
export type DragPosition = 'before' | 'after' | 'inside';
|
|
4
|
+
export type { MoveInfo } from './utils/tree-tools';
|
|
3
5
|
export type TreeNode<T> = {
|
|
4
6
|
/**
|
|
5
7
|
* uid
|
|
@@ -102,6 +104,30 @@ export interface TreeProps<T> {
|
|
|
102
104
|
* Whether to allow dragging
|
|
103
105
|
*/
|
|
104
106
|
draggable?: boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Whether to allow dropping a dragged node at the given position.
|
|
109
|
+
* Return false to forbid the drop (cursor shows "no-drop").
|
|
110
|
+
*/
|
|
111
|
+
allowDrop?: (info: {
|
|
112
|
+
dragNode: T;
|
|
113
|
+
dropNode: T;
|
|
114
|
+
position: DragPosition;
|
|
115
|
+
}) => boolean;
|
|
116
|
+
/**
|
|
117
|
+
* Callback after a node is dropped. Pure controlled: the Tree does not
|
|
118
|
+
* mutate dataSource — reorder it yourself (e.g. with `moveTreeNode`).
|
|
119
|
+
*/
|
|
120
|
+
onDrop?: (info: {
|
|
121
|
+
/** Original data of the dragged node */
|
|
122
|
+
dragNode: T;
|
|
123
|
+
/** Original data of the target node */
|
|
124
|
+
dropNode: T;
|
|
125
|
+
dragKey: string | number;
|
|
126
|
+
dropKey: string | number;
|
|
127
|
+
position: DragPosition;
|
|
128
|
+
/** Convenience flag: true when position is 'before' or 'after' */
|
|
129
|
+
dropToGap: boolean;
|
|
130
|
+
}) => void;
|
|
105
131
|
/**
|
|
106
132
|
* Whether to show connecting lines
|
|
107
133
|
*/
|
|
@@ -2,11 +2,36 @@
|
|
|
2
2
|
|
|
3
3
|
@{pls} {
|
|
4
4
|
&-node {
|
|
5
|
+
position: relative;
|
|
5
6
|
display: flex;
|
|
6
7
|
align-items: center;
|
|
7
8
|
justify-content: flex-start;
|
|
8
9
|
height: var(--yee-tree-node-height);
|
|
9
10
|
|
|
11
|
+
&[draggable='true'] {
|
|
12
|
+
cursor: grab;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&-dragging {
|
|
16
|
+
opacity: 0.4;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
&-drag-over-before {
|
|
20
|
+
box-shadow: inset 0 2px 0 0 var(--yee-primary-color);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
&-drag-over-after {
|
|
24
|
+
box-shadow: inset 0 -2px 0 0 var(--yee-primary-color);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
&-drag-over-inside {
|
|
28
|
+
background: color-mix(
|
|
29
|
+
in srgb,
|
|
30
|
+
var(--yee-primary-color) 12%,
|
|
31
|
+
transparent
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
|
|
10
35
|
&-switcher {
|
|
11
36
|
display: inline-flex;
|
|
12
37
|
align-items: center;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
3
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
3
4
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
4
5
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
@@ -32,9 +33,16 @@ var Node = function Node(props) {
|
|
|
32
33
|
checkedKeys = _useContext.checkedKeys,
|
|
33
34
|
expandedKeys = _useContext.expandedKeys,
|
|
34
35
|
switcherIcon = _useContext.switcherIcon,
|
|
36
|
+
draggable = _useContext.draggable,
|
|
37
|
+
draggingKey = _useContext.draggingKey,
|
|
38
|
+
dropState = _useContext.dropState,
|
|
35
39
|
onCheck = _useContext.onCheck,
|
|
36
40
|
onSelect = _useContext.onSelect,
|
|
37
|
-
onExpand = _useContext.onExpand
|
|
41
|
+
onExpand = _useContext.onExpand,
|
|
42
|
+
onNodeDragStart = _useContext.onNodeDragStart,
|
|
43
|
+
onNodeDragOver = _useContext.onNodeDragOver,
|
|
44
|
+
onNodeDragLeave = _useContext.onNodeDragLeave,
|
|
45
|
+
onNodeDrop = _useContext.onNodeDrop;
|
|
38
46
|
var expanded = expandedKeys.includes(key);
|
|
39
47
|
var checked = checkedKeys.includes(key);
|
|
40
48
|
var selected = selectedKeys.includes(key);
|
|
@@ -110,11 +118,28 @@ var Node = function Node(props) {
|
|
|
110
118
|
});
|
|
111
119
|
});
|
|
112
120
|
};
|
|
113
|
-
|
|
114
|
-
|
|
121
|
+
var isDropTarget = (dropState === null || dropState === void 0 ? void 0 : dropState.key) === key;
|
|
122
|
+
var dropPosition = isDropTarget ? dropState.position : null;
|
|
123
|
+
var dragProps = draggable && !disabled ? {
|
|
124
|
+
draggable: true,
|
|
125
|
+
onDragStart: function onDragStart(e) {
|
|
126
|
+
return onNodeDragStart(key, e);
|
|
127
|
+
},
|
|
128
|
+
onDragOver: function onDragOver(e) {
|
|
129
|
+
return onNodeDragOver(key, e);
|
|
130
|
+
},
|
|
131
|
+
onDragLeave: function onDragLeave(e) {
|
|
132
|
+
return onNodeDragLeave(key, e);
|
|
133
|
+
},
|
|
134
|
+
onDrop: function onDrop(e) {
|
|
135
|
+
return onNodeDrop(key, e);
|
|
136
|
+
}
|
|
137
|
+
} : {};
|
|
138
|
+
return /*#__PURE__*/React.createElement("div", _extends({
|
|
139
|
+
className: clsx("".concat(prefixCls, "-node"), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "".concat(prefixCls, "-node-with-line"), showLine), "".concat(prefixCls, "-leaf-node"), isLeaf), "".concat(prefixCls, "-last-node"), isLast), "".concat(prefixCls, "-node-dragging"), draggingKey === key), "".concat(prefixCls, "-node-drag-over-before"), dropPosition === 'before'), "".concat(prefixCls, "-node-drag-over-after"), dropPosition === 'after'), "".concat(prefixCls, "-node-drag-over-inside"), dropPosition === 'inside'))
|
|
115
140
|
// style={{
|
|
116
141
|
// paddingLeft: depth * 28 + (isLeaf && checkable ? 24 : 0),
|
|
117
142
|
// }}
|
|
118
|
-
}, renderEmptyNodes(depth), renderExpandedIcon(), renderCheckbox(), renderLabel());
|
|
143
|
+
}, dragProps), renderEmptyNodes(depth), renderExpandedIcon(), renderCheckbox(), renderLabel());
|
|
119
144
|
};
|
|
120
145
|
export default Node;
|