@king-design/intact 2.0.0-beta.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/affix/demos/basic.md +2 -1
- package/components/affix/demos/custom.md +5 -5
- package/components/affix/index.md +2 -2
- package/components/affix/styles.ts +1 -1
- package/components/badge/demos/text.md +1 -1
- package/components/badge/index.md +3 -3
- package/components/badge/styles.ts +1 -1
- package/components/breadcrumb/demos/basic.md +1 -1
- package/components/breadcrumb/index.md +3 -10
- package/components/breadcrumb/item.ts +4 -14
- package/components/breadcrumb/styles.ts +9 -5
- package/components/button/demos/group.md +2 -2
- package/components/button/demos/icon.md +1 -0
- package/components/button/demos/loading.md +1 -1
- package/components/button/demos/tagName.md +0 -1
- package/components/button/index.md +13 -13
- package/components/button/index.vdt +32 -23
- package/components/button/styles.ts +22 -12
- package/components/card/demos/basic.md +4 -4
- package/components/card/demos/extra.md +13 -7
- package/components/card/demos/noHeader.md +4 -4
- package/components/card/index.md +3 -3
- package/components/card/styles.ts +2 -2
- package/components/carousel/index.md +4 -4
- package/components/carousel/styles.ts +2 -2
- package/components/carousel/useSlide.ts +3 -2
- package/components/cascader/demos/loadData.md +1 -1
- package/components/cascader/index.md +45 -16
- package/components/cascader/index.spec.ts +1 -1
- package/components/cascader/styles.ts +1 -1
- package/components/checkbox/demos/basic.md +1 -1
- package/components/checkbox/demos/indeterminate.md +4 -20
- package/components/checkbox/demos/value.md +1 -1
- package/components/checkbox/index.md +10 -10
- package/components/checkbox/index.vdt +16 -13
- package/components/checkbox/styles.ts +3 -7
- package/components/code/demos/basic.md +3 -3
- package/components/code/index.md +8 -10
- package/components/collapse/index.md +8 -8
- package/components/collapse/item.vdt +1 -1
- package/components/collapse/styles.ts +4 -3
- package/components/colorpicker/index.md +3 -3
- package/components/colorpicker/index.spec.ts +1 -1
- package/components/colorpicker/index.ts +3 -0
- package/components/colorpicker/index.vdt +5 -1
- package/components/colorpicker/styles.ts +1 -1
- package/components/context.ts +14 -7
- package/components/datepicker/demos/disabledDate.md +0 -2
- package/components/datepicker/demos/format.md +1 -1
- package/components/datepicker/demos/shortcuts.md +2 -2
- package/components/datepicker/helpers.ts +9 -2
- package/components/datepicker/index.md +50 -27
- package/components/datepicker/index.spec.ts +1 -1
- package/components/datepicker/styles.ts +1 -1
- package/components/diagram/index.md +108 -59
- package/components/diagram/shapes/line.ts +2 -3
- package/components/dialog/base.ts +2 -1
- package/components/dialog/demos/block.md +10 -56
- package/components/dialog/demos/size.md +1 -1
- package/components/dialog/index.md +47 -56
- package/components/dialog/index.spec.ts +2 -18
- package/components/dialog/styles.ts +4 -3
- package/components/dialog/useFixBody.ts +16 -0
- package/components/drawer/index.md +23 -20
- package/components/drawer/index.spec.ts +5 -5
- package/components/drawer/styles.ts +2 -2
- package/components/dropdown/demos/basic.md +4 -16
- package/components/dropdown/demos/contextmenu.md +1 -7
- package/components/dropdown/demos/disabled.md +1 -1
- package/components/dropdown/demos/nested.md +2 -4
- package/components/dropdown/demos/position.md +5 -6
- package/components/dropdown/demos/trigger.md +2 -4
- package/components/dropdown/index.md +26 -15
- package/components/dropdown/index.spec.ts +3 -3
- package/components/dropdown/index.ts +1 -2
- package/components/dropdown/styles.ts +2 -2
- package/components/editable/index.md +10 -15
- package/components/editable/index.vdt +1 -0
- package/components/editable/styles.ts +1 -1
- package/components/form/demos/basic.md +15 -15
- package/components/form/index.md +29 -13
- package/components/form/index.spec.ts +8 -8
- package/components/form/item.vdt +6 -1
- package/components/form/methods.ts +6 -1
- package/components/form/styles.ts +1 -1
- package/components/form/useError.ts +3 -0
- package/components/form/useValidate.ts +2 -2
- package/components/grid/col.vdt +1 -1
- package/components/grid/index.md +34 -13
- package/components/grid/styles.ts +4 -1
- package/components/icon/index.md +4 -2
- package/components/icon/index.vdt +2 -2
- package/components/icon/styles.ts +11 -8
- package/components/input/demos/blocks.md +2 -2
- package/components/input/demos/clearable.md +3 -3
- package/components/input/demos/inline.md +12 -0
- package/components/input/demos/size.md +0 -1
- package/components/input/index.md +18 -22
- package/components/input/index.ts +2 -0
- package/components/input/index.vdt +42 -33
- package/components/input/search.vdt +4 -1
- package/components/input/styles.ts +8 -12
- package/components/layout/demos/asideFix.md +2 -3
- package/components/layout/index.md +5 -5
- package/components/layout/styles.ts +5 -4
- package/components/menu/index.md +11 -11
- package/components/menu/index.spec.ts +2 -2
- package/components/menu/item.ts +5 -12
- package/components/menu/styles.ts +6 -5
- package/components/message/index.md +23 -25
- package/components/message/index.spec.ts +1 -1
- package/components/message/styles.ts +7 -3
- package/components/pagination/index.md +11 -19
- package/components/pagination/styles.ts +2 -2
- package/components/progress/demos/customColor.md +1 -1
- package/components/progress/index.md +11 -5
- package/components/progress/styles.ts +2 -2
- package/components/radio/index.md +4 -7
- package/components/radio/index.vdt +15 -12
- package/components/radio/styles.ts +6 -10
- package/components/rate/index.md +5 -5
- package/components/rate/styles.ts +3 -2
- package/components/scrollSelect/index.md +14 -5
- package/components/scrollSelect/styles.ts +7 -2
- package/components/select/base.ts +0 -1
- package/components/select/base.vdt +128 -112
- package/components/select/demos/creatable.md +1 -1
- package/components/select/demos/customMenu.md +1 -1
- package/components/select/demos/format.md +3 -7
- package/components/select/index.md +35 -30
- package/components/select/index.spec.ts +1 -1
- package/components/select/menu.vdt +1 -0
- package/components/select/styles.ts +15 -9
- package/components/slider/demos/marks.md +2 -2
- package/components/slider/index.md +31 -16
- package/components/slider/styles.ts +5 -4
- package/components/spin/index.md +2 -2
- package/components/spin/styles.ts +1 -1
- package/components/spinner/index.md +23 -14
- package/components/spinner/index.ts +2 -2
- package/components/spinner/styles.ts +1 -1
- package/components/split/index.md +7 -7
- package/components/split/style.ts +2 -2
- package/components/steps/index.md +3 -3
- package/components/steps/styles.ts +3 -2
- package/components/switch/index.md +10 -19
- package/components/switch/styles.ts +5 -4
- package/components/table/demos/animation.md +92 -0
- package/components/table/demos/basic.md +1 -1
- package/components/table/demos/checkedKeys.md +2 -3
- package/components/table/demos/disableRow.md +2 -2
- package/components/table/demos/empty.md +1 -1
- package/components/table/demos/export.md +8 -7
- package/components/table/demos/fixColumn.md +2 -2
- package/components/table/demos/fixHeader.md +3 -3
- package/components/table/demos/group.md +3 -3
- package/components/table/demos/mergeCell.md +1 -1
- package/components/table/demos/resizable.md +1 -1
- package/components/table/demos/rowClassName.md +1 -1
- package/components/table/demos/rowExpandable.md +2 -6
- package/components/table/demos/sort.md +2 -1
- package/components/table/demos/stickHeader.md +3 -3
- package/components/table/demos/stickScrollbar.md +3 -3
- package/components/table/demos/tooltip.md +1 -2
- package/components/table/index.md +92 -66
- package/components/table/index.spec.ts +4 -1
- package/components/table/index.ts +1 -0
- package/components/table/row.vdt +5 -1
- package/components/table/styles.ts +17 -5
- package/components/table/table.ts +2 -0
- package/components/table/table.vdt +91 -86
- package/components/table/useFixedColumns.ts +5 -3
- package/components/table/useWidth.ts +8 -1
- package/components/tabs/index.md +15 -8
- package/components/tabs/index.spec.ts +1 -1
- package/components/tabs/styles.ts +11 -7
- package/components/tabs/tab.vdt +1 -1
- package/components/tabs/useActiveBar.ts +3 -2
- package/components/tag/base.ts +3 -0
- package/components/tag/demos/border.md +2 -1
- package/components/tag/index.md +4 -3
- package/components/tag/styles.ts +9 -4
- package/components/timeline/styles.ts +3 -3
- package/components/timepicker/constants.ts +3 -2
- package/components/timepicker/demos/basic.md +2 -2
- package/components/timepicker/demos/step.md +1 -1
- package/components/timepicker/index.md +47 -16
- package/components/timepicker/index.spec.ts +11 -10
- package/components/timepicker/styles.ts +1 -1
- package/components/timepicker/useStep.ts +3 -3
- package/components/timepicker/useValue.ts +2 -2
- package/components/tip/demos/closable.md +1 -1
- package/components/tip/index.md +8 -4
- package/components/tip/styles.ts +1 -1
- package/components/tooltip/demos/basic.md +2 -13
- package/components/tooltip/demos/trigger.md +1 -2
- package/components/tooltip/index.md +26 -13
- package/components/tooltip/index.spec.ts +18 -14
- package/components/tooltip/styles.ts +1 -1
- package/components/transfer/index.md +36 -23
- package/components/transfer/index.spec.ts +7 -6
- package/components/transfer/styles.ts +1 -1
- package/components/tree/index.md +76 -49
- package/components/tree/index.spec.ts +13 -12
- package/components/tree/index.ts +1 -0
- package/components/tree/index.vdt +1 -0
- package/components/tree/styles.ts +7 -4
- package/components/treeSelect/index.md +50 -20
- package/components/treeSelect/index.spec.ts +5 -5
- package/components/treeSelect/styles.ts +3 -2
- package/components/upload/index.md +55 -19
- package/components/upload/index.spec.ts +1 -1
- package/components/upload/index.ts +1 -1
- package/components/upload/index.vdt +3 -4
- package/components/upload/styles.ts +5 -4
- package/components/utils.ts +1 -1
- package/components/wave/index.ts +94 -0
- package/components/wave/styles.ts +50 -0
- package/es/components/breadcrumb/item.d.ts +1 -1
- package/es/components/breadcrumb/item.js +3 -14
- package/es/components/breadcrumb/styles.js +1 -1
- package/es/components/button/index.vdt.js +26 -17
- package/es/components/button/styles.d.ts +82 -1
- package/es/components/button/styles.js +16 -2
- package/es/components/card/styles.js +1 -1
- package/es/components/carousel/styles.js +4 -1
- package/es/components/carousel/useSlide.js +10 -9
- package/es/components/cascader/index.spec.js +1 -1
- package/es/components/checkbox/index.vdt.js +15 -10
- package/es/components/checkbox/styles.js +2 -2
- package/es/components/collapse/item.vdt.js +2 -1
- package/es/components/collapse/styles.js +5 -1
- package/es/components/colorpicker/index.d.ts +2 -0
- package/es/components/colorpicker/index.js +2 -1
- package/es/components/colorpicker/index.spec.js +1 -1
- package/es/components/colorpicker/index.vdt.js +3 -1
- package/es/components/context.d.ts +5 -2
- package/es/components/context.js +7 -4
- package/es/components/datepicker/helpers.d.ts +2 -1
- package/es/components/datepicker/helpers.js +8 -2
- package/es/components/datepicker/index.spec.js +1 -1
- package/es/components/datepicker/styles.d.ts +46 -1
- package/es/components/diagram/shapes/generateShapes.js +3 -3
- package/es/components/diagram/shapes/line.d.ts +2 -2
- package/es/components/diagram/shapes/line.js +0 -1
- package/es/components/dialog/base.d.ts +2 -0
- package/es/components/dialog/base.js +2 -1
- package/es/components/dialog/index.spec.js +59 -94
- package/es/components/dialog/styles.js +5 -1
- package/es/components/dialog/useFixBody.d.ts +6 -0
- package/es/components/dialog/useFixBody.js +12 -0
- package/es/components/drawer/index.spec.js +5 -5
- package/es/components/drawer/styles.js +1 -1
- package/es/components/dropdown/index.js +1 -2
- package/es/components/dropdown/index.spec.js +3 -3
- package/es/components/dropdown/styles.js +1 -1
- package/es/components/editable/index.vdt.js +2 -1
- package/es/components/editable/styles.d.ts +8 -1
- package/es/components/form/index.spec.js +8 -8
- package/es/components/form/item.vdt.js +13 -9
- package/es/components/form/useError.d.ts +4 -0
- package/es/components/form/useError.js +3 -1
- package/es/components/form/useValidate.js +2 -2
- package/es/components/grid/col.vdt.js +4 -2
- package/es/components/grid/styles.js +1 -1
- package/es/components/grid/useGutter.d.ts +1 -1
- package/es/components/icon/index.vdt.js +3 -2
- package/es/components/icon/styles.js +8 -4
- package/es/components/input/index.d.ts +1 -0
- package/es/components/input/index.js +2 -1
- package/es/components/input/index.vdt.js +47 -32
- package/es/components/input/search.vdt.js +4 -2
- package/es/components/input/styles.js +8 -3
- package/es/components/layout/styles.d.ts +1 -1
- package/es/components/layout/styles.js +7 -3
- package/es/components/menu/index.spec.js +2 -2
- package/es/components/menu/item.d.ts +1 -1
- package/es/components/menu/item.js +4 -13
- package/es/components/menu/styles.d.ts +62 -1
- package/es/components/menu/styles.js +6 -2
- package/es/components/message/index.spec.js +1 -1
- package/es/components/message/styles.js +6 -2
- package/es/components/pagination/styles.js +1 -1
- package/es/components/radio/index.vdt.js +14 -9
- package/es/components/radio/styles.js +9 -1
- package/es/components/rate/styles.js +5 -1
- package/es/components/scrollSelect/styles.d.ts +14 -1
- package/es/components/scrollSelect/styles.js +9 -1
- package/es/components/select/base.vdt.js +135 -121
- package/es/components/select/index.spec.js +1 -1
- package/es/components/select/menu.vdt.js +1 -0
- package/es/components/select/styles.js +9 -4
- package/es/components/select/useSearchable.d.ts +1 -1
- package/es/components/slider/styles.js +5 -1
- package/es/components/spinner/index.d.ts +1 -1
- package/es/components/spinner/index.js +1 -1
- package/es/components/split/style.js +1 -1
- package/es/components/steps/context.d.ts +1 -1
- package/es/components/steps/styles.js +5 -1
- package/es/components/switch/styles.js +5 -1
- package/es/components/table/index.d.ts +1 -0
- package/es/components/table/index.spec.js +2 -1
- package/es/components/table/row.vdt.js +12 -4
- package/es/components/table/styles.js +6 -1
- package/es/components/table/table.d.ts +1 -0
- package/es/components/table/table.js +2 -1
- package/es/components/table/table.vdt.js +30 -27
- package/es/components/table/useColumns.d.ts +1 -1
- package/es/components/table/useFixedColumns.d.ts +1 -1
- package/es/components/table/useFixedColumns.js +5 -2
- package/es/components/table/useGroup.d.ts +1 -1
- package/es/components/table/useResizable.d.ts +1 -1
- package/es/components/table/useSortable.d.ts +1 -1
- package/es/components/table/useWidth.js +7 -1
- package/es/components/tabs/index.spec.js +1 -1
- package/es/components/tabs/styles.js +9 -2
- package/es/components/tabs/tab.vdt.js +2 -1
- package/es/components/tabs/useActiveBar.js +6 -3
- package/es/components/tag/base.js +1 -0
- package/es/components/tag/styles.js +8 -2
- package/es/components/timepicker/constants.d.ts +2 -1
- package/es/components/timepicker/constants.js +3 -2
- package/es/components/timepicker/index.spec.js +36 -35
- package/es/components/timepicker/useStep.js +3 -3
- package/es/components/timepicker/useValue.js +2 -2
- package/es/components/tooltip/index.spec.js +28 -24
- package/es/components/transfer/index.spec.js +20 -19
- package/es/components/tree/index.d.ts +1 -1
- package/es/components/tree/index.js +1 -1
- package/es/components/tree/index.spec.js +20 -19
- package/es/components/tree/index.vdt.js +1 -0
- package/es/components/tree/styles.js +5 -1
- package/es/components/treeSelect/index.spec.js +5 -5
- package/es/components/treeSelect/styles.js +5 -1
- package/es/components/upload/index.d.ts +1 -1
- package/es/components/upload/index.spec.js +1 -1
- package/es/components/upload/index.vdt.js +10 -11
- package/es/components/upload/styles.js +5 -1
- package/es/components/utils.d.ts +1 -1
- package/es/components/wave/index.d.ts +19 -0
- package/es/components/wave/index.js +120 -0
- package/es/components/wave/styles.d.ts +2 -0
- package/es/components/wave/styles.js +17 -0
- package/es/hooks/useRouter.d.ts +1 -0
- package/es/hooks/useRouter.js +10 -0
- package/es/index.d.ts +3 -2
- package/es/index.js +3 -2
- package/es/packages/kpc-react/__tests__/index.js +10 -7
- package/es/site/data/components/affix/demos/custom/index.d.ts +2 -2
- package/es/site/data/components/affix/demos/custom/index.js +4 -4
- package/es/site/data/components/affix/demos/custom/react.d.ts +2 -2
- package/es/site/data/components/affix/demos/custom/react.js +6 -6
- package/es/site/data/components/button/demos/group/react.js +2 -2
- package/es/site/data/components/button/demos/icon/react.js +6 -0
- package/es/site/data/components/card/demos/basic/react.js +2 -2
- package/es/site/data/components/card/demos/extra/react.js +19 -5
- package/es/site/data/components/card/demos/noHeader/react.js +2 -2
- package/es/site/data/components/checkbox/demos/indeterminate/index.d.ts +1 -1
- package/es/site/data/components/checkbox/demos/indeterminate/index.js +2 -2
- package/es/site/data/components/checkbox/demos/indeterminate/react.d.ts +1 -1
- package/es/site/data/components/checkbox/demos/indeterminate/react.js +5 -6
- package/es/site/data/components/dialog/demos/block/react.d.ts +9 -0
- package/es/site/data/components/dialog/demos/block/react.js +88 -0
- package/es/site/data/components/dropdown/demos/basic/react.js +1 -3
- package/es/site/data/components/dropdown/demos/nested/react.js +1 -3
- package/es/site/data/components/dropdown/demos/position/react.js +2 -7
- package/es/site/data/components/dropdown/demos/trigger/react.js +1 -3
- package/es/site/data/components/input/demos/blocks/react.js +4 -2
- package/es/site/data/components/input/demos/clearable/react.js +7 -5
- package/es/site/data/components/{dialog/demos/extends → input/demos/inline}/index.d.ts +0 -3
- package/es/site/data/components/input/demos/inline/index.js +17 -0
- package/es/site/data/components/input/demos/inline/react.d.ts +4 -0
- package/es/site/data/components/input/demos/inline/react.js +24 -0
- package/es/site/data/components/input/demos/size/react.js +0 -3
- package/es/site/data/components/layout/demos/asideFix/react.js +2 -1
- package/es/site/data/components/select/demos/creatable/react.js +1 -1
- package/es/site/data/components/select/demos/customMenu/react.js +1 -0
- package/es/site/data/components/select/demos/format/react.js +11 -18
- package/es/site/data/components/table/demos/animation/index.d.ts +23 -0
- package/es/site/data/components/table/demos/animation/index.js +78 -0
- package/es/site/data/components/table/demos/animation/react.d.ts +23 -0
- package/es/site/data/components/table/demos/animation/react.js +113 -0
- package/es/site/data/components/table/demos/export/react.js +1 -2
- package/es/site/data/components/table/demos/sort/react.js +4 -1
- package/es/site/data/components/tag/demos/border/react.js +3 -1
- package/es/site/data/components/tip/demos/closable/react.js +1 -0
- package/es/site/data/components/tooltip/demos/trigger/react.js +1 -2
- package/es/site/data/docs/design/{button → about}/index.d.ts +13 -11
- package/es/site/data/docs/design/{8point → about}/index.js +0 -0
- package/es/site/data/docs/design/{dialog → guide-1}/index.d.ts +15 -11
- package/es/site/data/docs/design/{button → guide-1}/index.js +0 -0
- package/es/site/data/docs/design/guide-2/index.d.ts +64 -0
- package/es/site/data/docs/design/{color → guide-2}/index.js +0 -0
- package/es/site/data/docs/design/guide-3/index.d.ts +64 -0
- package/es/site/data/docs/design/{dialog → guide-3}/index.js +0 -0
- package/es/site/data/docs/design/guide-4/index.d.ts +64 -0
- package/es/site/data/docs/design/{font → guide-4}/index.js +0 -0
- package/es/site/data/docs/design/guide-5/index.d.ts +64 -0
- package/es/site/data/docs/design/{format → guide-5}/index.js +0 -0
- package/es/site/data/docs/design/guide-6/index.d.ts +64 -0
- package/es/site/data/docs/design/{gutter → guide-6}/index.js +0 -0
- package/es/site/data/docs/design/guide-7/index.d.ts +64 -0
- package/es/site/data/docs/design/{hierarchy → guide-7}/index.js +0 -0
- package/es/site/data/docs/design/guide-8/index.d.ts +64 -0
- package/es/site/data/docs/design/{language → guide-8}/index.js +0 -0
- package/es/site/data/docs/design/guide-9/index.d.ts +64 -0
- package/es/site/data/docs/design/{navigator → guide-9}/index.js +0 -0
- package/es/site/data/docs/design/model/index.d.ts +64 -0
- package/es/site/data/docs/design/{tip → model}/index.js +0 -0
- package/es/site/data/docs/design/model-1/index.d.ts +64 -0
- package/es/site/data/docs/design/{text → model-1}/index.js +0 -0
- package/es/site/data/docs/design/pattern-1/index.d.ts +64 -0
- package/es/site/data/docs/design/pattern-1/index.js +42 -0
- package/es/site/data/docs/design/pattern-2/index.d.ts +64 -0
- package/es/site/data/docs/design/pattern-2/index.js +42 -0
- package/es/site/data/docs/design/pattern-3/index.d.ts +64 -0
- package/es/site/data/docs/design/pattern-3/index.js +42 -0
- package/es/site/data/docs/design/pattern-4/index.d.ts +64 -0
- package/es/site/data/docs/design/pattern-4/index.js +42 -0
- package/es/site/data/docs/design/pattern-5/index.d.ts +64 -0
- package/es/site/data/docs/design/pattern-5/index.js +42 -0
- package/es/site/data/docs/design/pattern-6/index.d.ts +64 -0
- package/es/site/data/docs/design/pattern-6/index.js +42 -0
- package/es/site/data/docs/design/{navigator → principle}/index.d.ts +13 -11
- package/es/site/data/docs/design/principle/index.js +42 -0
- package/es/site/data/docs/design/{tip → value}/index.d.ts +13 -11
- package/es/site/data/docs/design/value/index.js +42 -0
- package/es/site/data/docs/theme/index.d.ts +0 -2
- package/es/site/src/components/ImgBox/index.d.ts +21 -0
- package/es/site/src/components/ImgBox/index.js +69 -0
- package/es/site/src/{pages/designdoc → components/ImgBox}/styles.d.ts +0 -0
- package/es/site/src/components/ImgBox/styles.js +13 -0
- package/es/site/src/components/WorkflowCard/styles.js +3 -10
- package/es/site/src/components/article/index.d.ts +4 -1
- package/es/site/src/components/article/index.js +72 -6
- package/es/site/src/components/blockquote/index.d.ts +4 -0
- package/es/site/src/components/blockquote/index.js +13 -0
- package/es/site/src/components/blockquote/slot.d.ts +11 -0
- package/es/site/src/components/blockquote/slot.js +19 -0
- package/es/site/src/components/card/index.d.ts +1 -1
- package/es/site/src/components/card/index.js +4 -1
- package/es/site/src/components/card/styles.js +2 -10
- package/es/site/src/components/catalogue/index.js +2 -2
- package/es/site/src/components/catalogue/styles.js +1 -1
- package/es/site/src/components/footer/styles.js +2 -2
- package/es/site/src/components/link/index.d.ts +1 -0
- package/es/site/src/components/link/index.js +11 -3
- package/es/site/src/pages/design/index.d.ts +1 -0
- package/es/site/src/pages/design/index.js +19 -0
- package/es/site/src/pages/design/styles.d.ts +1 -0
- package/es/site/src/pages/design/styles.js +13 -0
- package/es/site/src/pages/document/index.d.ts +4 -2
- package/es/site/src/pages/document/index.js +89 -46
- package/es/site/src/pages/document/styles.js +1 -1
- package/es/site/src/pages/iframe/button/styles.js +4 -4
- package/es/site/src/pages/iframe/colorProcess/index.d.ts +1 -0
- package/es/site/src/pages/iframe/colorProcess/index.js +9 -5
- package/es/site/src/pages/iframe/colorProcess/styles.js +1 -1
- package/es/site/src/pages/index/BestPractice/index.d.ts +1 -0
- package/es/site/src/pages/index/BestPractice/index.js +14 -14
- package/es/site/src/pages/index/BestPractice/styles.d.ts +1 -1
- package/es/site/src/pages/index/BestPractice/styles.js +3 -3
- package/es/site/src/pages/index/ColorProcess/styles.d.ts +1 -1
- package/es/site/src/pages/index/ColorProcess/styles.js +14 -2
- package/es/site/src/pages/index/KingVersion/styles.js +1 -1
- package/es/site/src/pages/index/NewFunction/index.d.ts +1 -0
- package/es/site/src/pages/index/NewFunction/index.js +4 -2
- package/es/site/src/pages/index/NewFunction/styles.d.ts +1 -1
- package/es/site/src/pages/index/NewFunction/styles.js +4 -3
- package/es/site/src/pages/index/index.d.ts +2 -7
- package/es/site/src/pages/index/index.js +11 -8
- package/es/site/src/pages/index/styles.js +2 -4
- package/es/site/src/pages/layout.d.ts +1 -0
- package/es/site/src/pages/layout.js +24 -3
- package/es/site/src/pages/resource/index.d.ts +6 -0
- package/es/site/src/pages/resource/index.js +21 -1
- package/es/site/src/pages/resource/styles.js +5 -3
- package/es/site/src/pages/solution/index.d.ts +6 -0
- package/es/site/src/pages/solution/index.js +20 -1
- package/es/site/src/pages/solution/styles.js +3 -2
- package/es/site/src/pages/styles.d.ts +1 -0
- package/es/site/src/pages/styles.js +5 -2
- package/es/site/src/router/index.d.ts +1 -0
- package/es/site/src/router/index.js +327 -318
- package/es/site/src/styles/default.d.ts +1 -0
- package/es/site/src/styles/default.js +3 -2
- package/es/styles/global.js +4 -3
- package/es/styles/theme.d.ts +16 -7
- package/es/styles/theme.js +15 -7
- package/hooks/useRouter.ts +11 -0
- package/index.ts +3 -2
- package/package.json +6 -6
- package/styles/global.ts +41 -8
- package/styles/theme.ts +12 -8
- package/typings/global.d.ts +2 -0
- package/components/dialog/demos/asyncOpen.md +0 -111
- package/components/dialog/demos/extends.md +0 -87
- package/es/site/data/components/dialog/demos/asyncOpen/dialog.d.ts +0 -28
- package/es/site/data/components/dialog/demos/asyncOpen/dialog.js +0 -45
- package/es/site/data/components/dialog/demos/asyncOpen/index.d.ts +0 -13
- package/es/site/data/components/dialog/demos/asyncOpen/index.js +0 -58
- package/es/site/data/components/dialog/demos/extends/dialog.d.ts +0 -28
- package/es/site/data/components/dialog/demos/extends/dialog.js +0 -39
- package/es/site/data/components/dialog/demos/extends/index.js +0 -49
- package/es/site/data/docs/design/8point/index.d.ts +0 -58
- package/es/site/data/docs/design/color/demos/demos0/index.d.ts +0 -3
- package/es/site/data/docs/design/color/demos/demos0/index.js +0 -3
- package/es/site/data/docs/design/color/index.d.ts +0 -56
- package/es/site/data/docs/design/font/index.d.ts +0 -58
- package/es/site/data/docs/design/format/index.d.ts +0 -58
- package/es/site/data/docs/design/gutter/index.d.ts +0 -58
- package/es/site/data/docs/design/hierarchy/index.d.ts +0 -58
- package/es/site/data/docs/design/language/index.d.ts +0 -56
- package/es/site/data/docs/design/text/index.d.ts +0 -58
- package/es/site/src/pages/designdoc/index.d.ts +0 -11
- package/es/site/src/pages/designdoc/index.js +0 -21
- package/es/site/src/pages/designdoc/styles.js +0 -6
package/components/tree/index.md
CHANGED
|
@@ -9,73 +9,100 @@ sidebar: doc
|
|
|
9
9
|
|
|
10
10
|
| 属性 | 说明 | 类型 | 默认值 |
|
|
11
11
|
| --- | --- | --- | --- |
|
|
12
|
-
| data | 要渲染的数据 | `
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
23
|
-
|
|
|
24
|
-
|
|
|
25
|
-
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
12
|
+
| data | 要渲染的数据 | `TreeDataItem<K>[]` | `undefined` |
|
|
13
|
+
| filter | 指定节点过滤函数,返回`true`则展示,否则过滤掉 | `(data: TreeDataItem<K>, node: Node<K>) => boolean` | `undefined` |
|
|
14
|
+
| uncorrelated | 是否让父子`checkbox`选中状态互不关联 | `boolean` | `false` |
|
|
15
|
+
| checkedKeys | 通过`key`指定勾选的数据节点 | `K[]` | `undefined` |
|
|
16
|
+
| expandedKeys | 通过`key`指定展开的数据节点 | `K[]` | `undefined` |
|
|
17
|
+
| defaultExpandAll | 是否默认展开所有节点 | `boolean` | `false` |
|
|
18
|
+
| selectable | 节点是否可选中,默认为`true`可选中 | `boolean` | `true` |
|
|
19
|
+
| selectedKeys | 通过`key`指定选中的数据节点 | `K[]` | `undefined` |
|
|
20
|
+
| multiple | `selectedKeys`是否支持多选 | `boolean` | `false` |
|
|
21
|
+
| checkbox | 是否展示复选框 | `boolean` | `false` |
|
|
22
|
+
| load | 指定异步加载节点数据的函数,该函数通过`Promise`返回数组来添加子节点数据 | <code>(node: TreeNode<K>) => Proomise<void> | void</code> | `undefined` |
|
|
23
|
+
| showLine | 是否展示左侧对齐线 | `boolean` | `true` |
|
|
24
|
+
| draggable | 是否支持拖拽 | `boolean` | `false` |
|
|
25
|
+
| allowDrag | 指定哪些节点可拖拽 | `(node: TreeNode<K>) => boolean` | `undefined` |
|
|
26
|
+
| allowDrop | 指定哪些节点可以插入子节点 | `(node: TreeNode<K>) => boolean` | `undefined` |
|
|
27
|
+
|
|
28
|
+
```ts
|
|
29
|
+
import {Key, Children} from 'intact';
|
|
30
|
+
|
|
31
|
+
export type TreeDataItem<K extends Key> = {
|
|
32
|
+
label?: Children
|
|
33
|
+
key?: K
|
|
34
|
+
disabled?: boolean
|
|
35
|
+
loaded?: boolean
|
|
36
|
+
children?: TreeDataItem<K>[]
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export class TreeNode<K extends Key> {
|
|
40
|
+
data: TreeDataItem<K>;
|
|
41
|
+
parent: TreeNode<K> | null;
|
|
42
|
+
key: K;
|
|
43
|
+
checked: boolean;
|
|
44
|
+
indeterminate: boolean;
|
|
45
|
+
children: TreeNode<K>[] | null;
|
|
46
|
+
loaded: boolean | null | undefined;
|
|
47
|
+
filter: boolean;
|
|
48
|
+
constructor(data: TreeDataItem<K>, parent: TreeNode<K> | null, key: K);
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
## TreeNode对象
|
|
53
|
+
|
|
54
|
+
组件内部使用`TreeNode`对象来维护节点的状态
|
|
36
55
|
|
|
37
56
|
### 属性
|
|
38
57
|
|
|
39
58
|
| 属性 | 说明 | 类型 |
|
|
40
59
|
| --- | --- | --- |
|
|
41
|
-
|
|
|
42
|
-
|
|
|
43
|
-
|
|
|
44
|
-
|
|
|
45
|
-
|
|
|
46
|
-
| children | 节点的子节点 | `
|
|
47
|
-
|
|
|
48
|
-
|
|
|
49
|
-
|
|
50
|
-
### 方法
|
|
60
|
+
| data | 节点的原始数据 | `TreeDataItem<K>` |
|
|
61
|
+
| parent | 节点的父节点 | `TreeDataItem<K>` | `null` |
|
|
62
|
+
| key | 节点的key | `K` |
|
|
63
|
+
| checked | 节点是否已选中 | `boolean` |
|
|
64
|
+
| indeterminate | 节点是否半选中 | `boolean` |
|
|
65
|
+
| children | 节点的子节点 | `TreeNode<K>` | `null` |
|
|
66
|
+
| loaded | 是否已经完成异步加载 | `boolean` | `undefined` |
|
|
67
|
+
| filter | 是否在搜索时被过滤掉了 | `boolean` | `false` |
|
|
51
68
|
|
|
52
|
-
| 方法名 | 说明 | 参数 | 返回值 |
|
|
53
|
-
| --- | --- | --- | --- |
|
|
54
|
-
| append | 追加子节点 | 要追加的子节点数据,或子节点数据数组 | `undefined` |
|
|
55
|
-
| remove | 删除节点 | - | `undefined` |
|
|
56
69
|
|
|
57
70
|
# 扩展点
|
|
58
71
|
|
|
59
72
|
| 名称 | 说明 | 参数 |
|
|
60
73
|
| --- | --- | --- |
|
|
61
|
-
| label | 自定义节点渲染内容 | `data
|
|
74
|
+
| label | 自定义节点渲染内容 | `([data: TreeDataItem<K>, node: TreeNode<K>, index: number]) => Children` |
|
|
62
75
|
|
|
63
76
|
# 方法
|
|
64
77
|
|
|
65
78
|
| 方法名 | 说明 | 参数 | 返回值 |
|
|
66
79
|
| --- | --- | --- | --- |
|
|
67
|
-
| getCheckedData | 获取勾选的节点数据 | `onlyLeaf` 是否只返回叶子节点 | `
|
|
68
|
-
| getSelectedData | 获取选中的节点数据 | - | `
|
|
69
|
-
| expand | 展开节点 | `key` 要展开的节点的key | `undefined` |
|
|
70
|
-
| shrink | 收起节点 | `key` 要收起的节点的key | `undefined` |
|
|
71
|
-
|
|
|
80
|
+
| getCheckedData | 获取勾选的节点数据 | `(leafOnly: boolean = false) => TreeDataItem<K>[]`: `onlyLeaf` 是否只返回叶子节点 | `TreeDataItem<K>[]` |
|
|
81
|
+
| getSelectedData | 获取选中的节点数据 | - | `TreeDataItem<K>[]` |
|
|
82
|
+
| expand | 展开节点 | `(key: K) => void`,`key` 要展开的节点的key | `undefined` |
|
|
83
|
+
| shrink | 收起节点 | `(key: K) => void`,`key` 要收起的节点的key | `undefined` |
|
|
84
|
+
| getNodes | 返回一级节点 | `() => TreeNode<K>[]` | `TreeNode<K>[]` 一级节点数组 |
|
|
72
85
|
|
|
73
86
|
# 事件
|
|
74
87
|
|
|
75
88
|
| 事件名 | 说明 | 参数 |
|
|
76
89
|
| --- | --- | --- |
|
|
77
|
-
|
|
|
78
|
-
|
|
|
79
|
-
|
|
|
80
|
-
|
|
81
|
-
|
|
90
|
+
| dragend | 拖拽完成触发 | `DragEndData<K>`,`{srcNode: '源节点', toNode: '目标节点', mode: '插入模式, Before: 插入节点前面, After: 插入节点后面, Inner: 插入节点内部'}` |
|
|
91
|
+
| denydrag | 拖拽不允许拖拽的节点触发 | `TreeNode<K>` |
|
|
92
|
+
| denydrop | 插入到不允许插入的节点时触发 | `TreeNode<K>` |
|
|
93
|
+
|
|
94
|
+
```ts
|
|
95
|
+
import {Key} from 'intact';
|
|
96
|
+
|
|
97
|
+
type DragEndData<K extends Key> = {
|
|
98
|
+
srcNode: TreeNode<K>
|
|
99
|
+
toNode: TreeNode<K>
|
|
100
|
+
mode: TreeMode
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
export enum TreeMode {
|
|
104
|
+
Before,
|
|
105
|
+
After,
|
|
106
|
+
Inner
|
|
107
|
+
}
|
|
108
|
+
```
|
|
@@ -12,21 +12,22 @@ import {RANGE} from './useDraggable';
|
|
|
12
12
|
describe('Tree', () => {
|
|
13
13
|
afterEach(() => unmount());
|
|
14
14
|
|
|
15
|
-
it('expand and shrink', async ()
|
|
15
|
+
it('expand and shrink', async function() {
|
|
16
|
+
this.timeout(0);
|
|
16
17
|
const [instance, element] = mount(BasicDemo);
|
|
17
18
|
|
|
18
19
|
const [, icon1, icon2] = element.querySelectorAll('.k-icon') as NodeListOf<HTMLElement>;
|
|
19
20
|
|
|
20
21
|
icon2.click();
|
|
21
|
-
await wait(
|
|
22
|
+
await wait(500);
|
|
22
23
|
expect(element.outerHTML).to.matchSnapshot();
|
|
23
24
|
|
|
24
25
|
icon1.click();
|
|
25
|
-
await wait(
|
|
26
|
+
await wait(500);
|
|
26
27
|
expect(element.outerHTML).to.matchSnapshot();
|
|
27
28
|
|
|
28
29
|
icon1.click();
|
|
29
|
-
await wait(
|
|
30
|
+
await wait(500);
|
|
30
31
|
expect(element.outerHTML).to.matchSnapshot();
|
|
31
32
|
});
|
|
32
33
|
|
|
@@ -51,7 +52,7 @@ describe('Tree', () => {
|
|
|
51
52
|
const [, , icon1] = element.querySelectorAll('.k-icon') as NodeListOf<HTMLElement>;
|
|
52
53
|
// expand
|
|
53
54
|
icon1.click();
|
|
54
|
-
await wait(
|
|
55
|
+
await wait(500);
|
|
55
56
|
expect(element.outerHTML).to.matchSnapshot();
|
|
56
57
|
const data2 = tree.getCheckedData(true);
|
|
57
58
|
expect(data2.length).to.eql(2);
|
|
@@ -105,20 +106,20 @@ describe('Tree', () => {
|
|
|
105
106
|
|
|
106
107
|
const [btn1, btn2] = element.querySelectorAll('.k-btn') as NodeListOf<HTMLElement>;
|
|
107
108
|
btn1.click();
|
|
108
|
-
await wait(
|
|
109
|
+
await wait(500);
|
|
109
110
|
expect(element.outerHTML).to.matchSnapshot();
|
|
110
111
|
expect(instance.get('data')).to.have.length(3);
|
|
111
112
|
expect(instance.get('data')).to.matchSnapshot();
|
|
112
113
|
|
|
113
114
|
btn2.click();
|
|
114
|
-
await wait(
|
|
115
|
+
await wait(500);
|
|
115
116
|
expect(element.outerHTML).to.matchSnapshot();
|
|
116
117
|
const [, checkbox] = element.querySelectorAll('.k-checkbox') as NodeListOf<HTMLElement>;
|
|
117
118
|
checkbox.click();
|
|
118
119
|
await wait();
|
|
119
120
|
const [,,, btn3] = element.querySelectorAll('.k-btn') as NodeListOf<HTMLElement>;
|
|
120
121
|
btn3.click();
|
|
121
|
-
await wait(
|
|
122
|
+
await wait(500);
|
|
122
123
|
expect(element.outerHTML).to.matchSnapshot();
|
|
123
124
|
|
|
124
125
|
// uncheck and remove
|
|
@@ -126,7 +127,7 @@ describe('Tree', () => {
|
|
|
126
127
|
checkbox1.click();
|
|
127
128
|
await wait();
|
|
128
129
|
(checkbox1.parentNode!.querySelector('.k-btn:nth-child(2)') as HTMLElement).click();
|
|
129
|
-
await wait(
|
|
130
|
+
await wait(500);
|
|
130
131
|
expect(element.outerHTML).to.matchSnapshot();
|
|
131
132
|
expect(instance.get('data')).to.matchSnapshot();
|
|
132
133
|
});
|
|
@@ -163,7 +164,7 @@ describe('Tree', () => {
|
|
|
163
164
|
// disable select and click on disabled selectable text should expand the tree
|
|
164
165
|
tree.set('selectable', false);
|
|
165
166
|
text1.click();
|
|
166
|
-
await wait(
|
|
167
|
+
await wait(500);
|
|
167
168
|
expect(tree.getSelectedData().length).to.eql(0);
|
|
168
169
|
expect(element.outerHTML).to.matchSnapshot();
|
|
169
170
|
});
|
|
@@ -181,7 +182,7 @@ describe('Tree', () => {
|
|
|
181
182
|
const [instance, element] = mount(DraggableDemo);
|
|
182
183
|
|
|
183
184
|
instance.set('expandedKeys', ['2', '2-1', '1', '1-1']);
|
|
184
|
-
await wait(
|
|
185
|
+
await wait(500);
|
|
185
186
|
|
|
186
187
|
// can not drag disabled item
|
|
187
188
|
const disabled = element.querySelector('.k-disabled') as HTMLElement;
|
|
@@ -249,5 +250,5 @@ async function dragInsert(srcElement: HTMLElement, toElement: HTMLElement, mode?
|
|
|
249
250
|
|
|
250
251
|
await wait(700);
|
|
251
252
|
dispatchEvent(toElement, 'dragend');
|
|
252
|
-
await wait(
|
|
253
|
+
await wait(500);
|
|
253
254
|
}
|
package/components/tree/index.ts
CHANGED
|
@@ -56,6 +56,7 @@ const treeNodes = (nodes) => {
|
|
|
56
56
|
<div class={labelClassNameObj}>
|
|
57
57
|
<Icon class="k-tree-icon ion-android-arrow-dropdown"
|
|
58
58
|
v-if={node.children && node.loaded !== false}
|
|
59
|
+
hoverable
|
|
59
60
|
ev-click={(e) => {
|
|
60
61
|
// it may be in dropdownMenu, e.g. TreeSelect
|
|
61
62
|
e._ignore = true;
|
|
@@ -4,6 +4,7 @@ import {deepDefaults, palette} from '../../styles/utils';
|
|
|
4
4
|
import '../../styles/global';
|
|
5
5
|
|
|
6
6
|
const defaults = {
|
|
7
|
+
get transition() { return theme.transition.middle },
|
|
7
8
|
fontSize: '12px',
|
|
8
9
|
lineHeight: '24px',
|
|
9
10
|
get hoverColor() { return theme.color.primary },
|
|
@@ -33,7 +34,7 @@ const defaults = {
|
|
|
33
34
|
get line() { return `1px dashed ${theme.color.border}` },
|
|
34
35
|
};
|
|
35
36
|
|
|
36
|
-
let tree:
|
|
37
|
+
let tree: typeof defaults;
|
|
37
38
|
setDefault(() => {
|
|
38
39
|
tree = deepDefaults(theme, {tree: defaults}).tree;
|
|
39
40
|
});
|
|
@@ -87,8 +88,10 @@ export function makeStyles() {
|
|
|
87
88
|
width: ${tree.iconWidth};
|
|
88
89
|
text-align: center;
|
|
89
90
|
color: ${tree.iconColor};
|
|
90
|
-
|
|
91
|
-
|
|
91
|
+
&:before {
|
|
92
|
+
transform: rotate(-90deg);
|
|
93
|
+
transition: transform ${tree.transition};
|
|
94
|
+
}
|
|
92
95
|
}
|
|
93
96
|
|
|
94
97
|
.k-tree-checkbox {
|
|
@@ -114,7 +117,7 @@ export function makeStyles() {
|
|
|
114
117
|
}
|
|
115
118
|
}
|
|
116
119
|
&.k-expanded {
|
|
117
|
-
> .k-tree-label .k-tree-icon {
|
|
120
|
+
> .k-tree-label .k-tree-icon:before {
|
|
118
121
|
transform: rotate(0);
|
|
119
122
|
}
|
|
120
123
|
}
|
|
@@ -11,30 +11,60 @@ sidebar: doc
|
|
|
11
11
|
|
|
12
12
|
| 属性 | 说明 | 类型 | 默认值 |
|
|
13
13
|
| --- | --- | --- | --- |
|
|
14
|
-
| value | 当前选择的元素,可用`v-model`双向绑定 |
|
|
15
|
-
| multiple | 是否支持多选 | `
|
|
16
|
-
|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
| keywords | 如果支持筛选,当前关键词 | `String` | `undefined` |
|
|
21
|
-
| placeholder | 占位文案 | `String` | `"请选择"` |
|
|
14
|
+
| value | 当前选择的元素,可用`v-model`双向绑定 | `any` | `""` |
|
|
15
|
+
| multiple | 是否支持多选 | `boolean` | `false` |
|
|
16
|
+
| filterable | 是否支持筛选 | `boolean` | `false` |
|
|
17
|
+
| loading | 数据加载状态 | `boolean` | `false` |
|
|
18
|
+
| disabled | 是否禁用 | `boolean` | `false` |
|
|
19
|
+
| name | 表单元素的`name` | `string` | `undefined` |
|
|
22
20
|
| size | 尺寸 | `"large"` | `"default"` | `"small"` | `"mini"` | `"default"` |
|
|
23
|
-
|
|
|
24
|
-
|
|
|
25
|
-
|
|
|
26
|
-
| inline | 展示内联模式,该模式下,组件没有边框,宽度和高度如同内联元素一样由内容撑开 | `
|
|
27
|
-
|
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
|
|
|
32
|
-
|
|
|
33
|
-
|
|
|
21
|
+
| hideIcon | 是否隐藏后面的图标 | `boolean` | `false` |
|
|
22
|
+
| clearable | 是否可清空 | `boolean` | `false` |
|
|
23
|
+
| fluid | 是否宽度100% | `boolean` | `false` |
|
|
24
|
+
| inline | 展示内联模式,该模式下,组件没有边框,宽度和高度如同内联元素一样由内容撑开 | `boolean` | `false` |
|
|
25
|
+
| placeholder | 占位文案 | `string` | `"请选择"` |
|
|
26
|
+
| container | 指定弹出菜单追加的位置,默认:`Dialog`类型的组件会追加到`Dialog`中,其他会追加到`body`中。你可以传入函数返回一个DOM用来作为插入的容器,或者传入字符串用来给`querySelector`进行查询 | `Container` | `undefined` |
|
|
27
|
+
| width | 指定宽度,组件自动添加单位`px` | `number` | `string` | `undefined` |
|
|
28
|
+
| data | 要渲染的数据 | `TreeDataItem<K>[]` | `undefined` |
|
|
29
|
+
| uncorrelated | 是否让父子`checkbox`选中状态互不关联 | `boolean` | `false` |
|
|
30
|
+
| load | 指定异步加载节点数据的函数,该函数通过`Promise`返回数组来添加子节点数据 | <code>(node: TreeNode<K>) => Proomise<void> | void</code> | `undefined` |
|
|
31
|
+
| showLine | 是否展示`Tree`的对齐线 | `boolean` | `true` |
|
|
32
|
+
| defaultExpandAll | 是否默认展开所有节点 | `boolean` | `true` |
|
|
33
|
+
| checkbox | 是否展示复选框 | `boolean` | `false` |
|
|
34
|
+
| filter | 当支持筛选时,可以自定义筛选规则 | `(keywords: string, data: TreeDataItem<K>) => boolean` | `undefined` |
|
|
35
|
+
|
|
36
|
+
```ts
|
|
37
|
+
import {Key, Children} from 'intact';
|
|
38
|
+
|
|
39
|
+
export type Container = string | ((parentDom: Element, anchor: Node | null) => Element)
|
|
40
|
+
|
|
41
|
+
export type TreeDataItem<K extends Key> = {
|
|
42
|
+
label?: Children
|
|
43
|
+
key?: K
|
|
44
|
+
disabled?: boolean
|
|
45
|
+
loaded?: boolean
|
|
46
|
+
children?: TreeDataItem<K>[]
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
```
|
|
34
50
|
|
|
35
51
|
# 扩展点
|
|
36
52
|
|
|
37
53
|
| 名称 | 说明 | 参数 |
|
|
38
54
|
| --- | --- | --- |
|
|
39
|
-
| value | 自定义选择结果的展示 | `value, label` |
|
|
55
|
+
| value | 自定义选择结果的展示 | `([value: any, label: Children]) => Children` |
|
|
56
|
+
| values | 自定义多选的选择结果的展示 | `([values: any[], labels: Children[]]) => Children` |
|
|
57
|
+
| prefix | 自定义输入款前面展示的内容 | - |
|
|
58
|
+
| suffix | 自定义输入框后面展示的内容 | - |
|
|
59
|
+
| menu | 自定义整个菜单的内容 | - |
|
|
40
60
|
|
|
61
|
+
```ts
|
|
62
|
+
import {Children} from 'intact';
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
# 事件
|
|
66
|
+
|
|
67
|
+
| 事件名 | 说明 | 参数 |
|
|
68
|
+
| --- | --- | --- |
|
|
69
|
+
| show | 菜单弹出时触发 | - |
|
|
70
|
+
| hide | 菜单隐藏时触发 | - |
|
|
@@ -21,7 +21,7 @@ describe('TreeSelect', () => {
|
|
|
21
21
|
(dropdown.querySelector('.k-tree-text') as HTMLElement).click();
|
|
22
22
|
expect(instance.get('value')).to.eql('1');
|
|
23
23
|
|
|
24
|
-
await wait(
|
|
24
|
+
await wait(500);
|
|
25
25
|
expect(getElement('.k-tree-select-menu')).to.be.undefined;
|
|
26
26
|
});
|
|
27
27
|
|
|
@@ -39,7 +39,7 @@ describe('TreeSelect', () => {
|
|
|
39
39
|
expect(instance.get('values')).to.eql(['1.1']);
|
|
40
40
|
|
|
41
41
|
instance.set('values', ['1']);
|
|
42
|
-
await wait(
|
|
42
|
+
await wait(500)
|
|
43
43
|
expect(dropdown.innerHTML).to.matchSnapshot();
|
|
44
44
|
expect(element.innerHTML).to.matchSnapshot();
|
|
45
45
|
});
|
|
@@ -73,7 +73,7 @@ describe('TreeSelect', () => {
|
|
|
73
73
|
const input = element.querySelector('.k-input-inner') as HTMLInputElement;
|
|
74
74
|
input.value = 'first';
|
|
75
75
|
dispatchEvent(input, 'input');
|
|
76
|
-
await wait(
|
|
76
|
+
await wait(500);
|
|
77
77
|
expect(dropdown.innerHTML).to.matchSnapshot();
|
|
78
78
|
|
|
79
79
|
const [, text2] = dropdown.querySelectorAll('.k-tree-text');
|
|
@@ -103,11 +103,11 @@ describe('TreeSelect', () => {
|
|
|
103
103
|
await wait();
|
|
104
104
|
dispatchEvent(select, 'focusout');
|
|
105
105
|
|
|
106
|
-
await wait(
|
|
106
|
+
await wait(500);
|
|
107
107
|
expect(element.querySelector('.k-form-error')).to.be.null;
|
|
108
108
|
|
|
109
109
|
dispatchEvent(select, 'click');
|
|
110
|
-
await wait(
|
|
110
|
+
await wait(500);
|
|
111
111
|
expect(element.querySelector('.k-form-error')).not.to.be.null;
|
|
112
112
|
});
|
|
113
113
|
});
|
|
@@ -4,11 +4,12 @@ import {deepDefaults, palette} from '../../styles/utils';
|
|
|
4
4
|
import '../../styles/global';
|
|
5
5
|
|
|
6
6
|
const defaults = {
|
|
7
|
+
get transition() { return theme.transition.middle },
|
|
7
8
|
maxHeight: `400px`,
|
|
8
9
|
padding: `3px 6px`,
|
|
9
10
|
};
|
|
10
11
|
|
|
11
|
-
let treeSelect:
|
|
12
|
+
let treeSelect: typeof defaults;
|
|
12
13
|
setDefault(() => {
|
|
13
14
|
treeSelect = deepDefaults(theme, {treeSelect: defaults}).treeSelect;
|
|
14
15
|
});
|
|
@@ -20,7 +21,7 @@ export function makeStyles() {
|
|
|
20
21
|
padding: ${treeSelect.padding};
|
|
21
22
|
overflow: auto;
|
|
22
23
|
&:not([class*="-active"]) {
|
|
23
|
-
transition: left ${
|
|
24
|
+
transition: left ${treeSelect.transition}, top ${treeSelect.transition};
|
|
24
25
|
}
|
|
25
26
|
`;
|
|
26
27
|
}
|
|
@@ -9,23 +9,49 @@ sidebar: doc
|
|
|
9
9
|
|
|
10
10
|
| 属性 | 说明 | 类型 | 默认值 |
|
|
11
11
|
| --- | --- | --- | --- |
|
|
12
|
-
| accept | `input`的[accept](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept)属性,支持的文件的类型 | `
|
|
13
|
-
|
|
|
12
|
+
| accept | `input`的[accept](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept)属性,支持的文件的类型 | `string` | `undefined` |
|
|
13
|
+
| files | 所有已上传和待上传的文件列表 | `UploadFile[]` | `[]` |
|
|
14
|
+
| defaultFiles | 指定初始化上传列表,见示例 | <code>(Partial<UploadFile> & Pick<UploadFile, 'name' | 'url'>)[]</code> | `undefined` |
|
|
15
|
+
| maxSize | 最大上传文件大小限制(kb),默认无限制 | `number` | `undefined` |
|
|
16
|
+
| limit | 最大上传文件数量限制,默认无限制 | `number` | `undefined` |
|
|
17
|
+
| autoUpload | 是否选择文件后即自动上传 | `boolean` | `true` |
|
|
18
|
+
| beforeRemove | 指定文件在删除之前的处理逻辑,如果该函数返回`false`,则取消删除,你也可以使用异步函数或返回`Promise`对象;组件会将当前文件(file)和文件列表(files)传给该函数 | `BeforeCallback` | `undefined` |
|
|
19
|
+
| beforeUpload | 指定文件在开始上传之前的处理逻辑,如果该函数返回`false`,则取消上传,你也可以使用异步函数或返回`Promise`对象;组件会将当前文件(file)和文件列表(files)传给该函数 | `BeforeCallback` | `undefined` |
|
|
20
|
+
| data | 指定上传附加的请求数据,可以为对象或者函数,为函数时,组件会将当前文件对象作为参数传入,函数应返回一个对象作为附加数据 | `DataObject` | `DataFunction` | `undefined` |
|
|
21
|
+
| action | 上传地址 | `string` | `undefined` |
|
|
22
|
+
| headers | 指定上传的请求头 | <code>Record<string | number, string></code> | `undefined` |
|
|
23
|
+
| name | 指定上传文件字段名,不存在时,组件默认会使用原始文件名 | `string` | `undefined` |
|
|
24
|
+
| withCredentials | 指定跨域请求是是否允许传送cookie | `boolean` | `false` |
|
|
14
25
|
| type | 组件风格 | `"select"` | `"drag"` | `"gallery"` | `"select"` |
|
|
15
|
-
|
|
|
16
|
-
| disabled | 是否禁用上传 | `
|
|
17
|
-
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
| directory | 是否支持上传文件夹 [caniuse](https://caniuse.com/#feat=input-file-directory) | `boolean` | `false` |
|
|
27
|
+
| disabled | 是否禁用上传 | `boolean` | `false` |
|
|
28
|
+
| multiple | `input`的`multiple`属性,是否支持多选 | `boolean` | `false` |
|
|
29
|
+
|
|
30
|
+
```ts
|
|
31
|
+
export type UploadFile = {
|
|
32
|
+
status: UploadFileStatus
|
|
33
|
+
type?: string
|
|
34
|
+
size?: number
|
|
35
|
+
name: string
|
|
36
|
+
percent: number
|
|
37
|
+
uid: number
|
|
38
|
+
raw: File | Partial<UploadFile>
|
|
39
|
+
url?: string
|
|
40
|
+
request?: any
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export enum UploadFileStatus {
|
|
44
|
+
Done,
|
|
45
|
+
Ready,
|
|
46
|
+
NotReady,
|
|
47
|
+
Uploading,
|
|
48
|
+
Error,
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
type BeforeCallback = (file: UploadFile, files: UploadFile[]) => Promise<boolean> | boolean
|
|
52
|
+
type DataObject = Record<string | number, any>
|
|
53
|
+
type DataFunction = (file: UploadFile) => DataObject
|
|
54
|
+
```
|
|
29
55
|
|
|
30
56
|
# 扩展点
|
|
31
57
|
|
|
@@ -45,6 +71,16 @@ sidebar: doc
|
|
|
45
71
|
|
|
46
72
|
| 事件名 | 说明 | 参数 |
|
|
47
73
|
| --- | --- | --- |
|
|
48
|
-
|
|
|
49
|
-
|
|
|
50
|
-
|
|
|
74
|
+
| progress | 文件上传过程中会抛出该事件 | `(event: ProgressEvent, xml: XMLHttpRequest, file: UploadFile, files: UploadFile[]) => void` |
|
|
75
|
+
| success | 文件上传成功时会抛出该事件 | `(res: any, xml: XMLHttpRequest, file: UploadFile, files: UploadFile[]) => void` |
|
|
76
|
+
| error | 文件超出最大文件数量限制,超出文件大小限制,或者上传失败都会抛出该事件 | <code>(err: Error | RequestError, file: File[] | File | UploadFile, files: UploadFile[]) => void</code> |
|
|
77
|
+
|
|
78
|
+
```ts
|
|
79
|
+
interface RequestError extends Error {
|
|
80
|
+
status: number
|
|
81
|
+
method: string
|
|
82
|
+
url: string
|
|
83
|
+
response: any
|
|
84
|
+
xhr: XMLHttpRequest
|
|
85
|
+
}
|
|
86
|
+
```
|
|
@@ -9,7 +9,7 @@ import {useShowImage} from './useShowImage';
|
|
|
9
9
|
import type {RequestError} from './ajaxUploader';
|
|
10
10
|
import type {Events} from '../types';
|
|
11
11
|
|
|
12
|
-
export type {RequestError};
|
|
12
|
+
export type {RequestError, UploadFileStatus};
|
|
13
13
|
|
|
14
14
|
export interface UploadProps {
|
|
15
15
|
accept?: string
|
|
@@ -53,11 +53,10 @@ const handle = (
|
|
|
53
53
|
|
|
54
54
|
const {removeFile} = this.files;
|
|
55
55
|
const closeBtn = (value, index, icon) => (
|
|
56
|
-
<
|
|
56
|
+
<Icon class={{"k-upload-close": true, [icon]: true}}
|
|
57
57
|
ev-click={() => removeFile(value, index)}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
</Button>
|
|
58
|
+
hoverable
|
|
59
|
+
/>
|
|
61
60
|
);
|
|
62
61
|
|
|
63
62
|
const {show, close, image, isShow} = this.showImage;
|
|
@@ -4,6 +4,7 @@ import {deepDefaults, palette} from '../../styles/utils';
|
|
|
4
4
|
import '../../styles/global';
|
|
5
5
|
|
|
6
6
|
const defaults = {
|
|
7
|
+
get transition() { return theme.transition.middle },
|
|
7
8
|
fontSize: '12px',
|
|
8
9
|
tip: {
|
|
9
10
|
gap: '16px',
|
|
@@ -73,7 +74,7 @@ const defaults = {
|
|
|
73
74
|
}
|
|
74
75
|
};
|
|
75
76
|
|
|
76
|
-
let upload:
|
|
77
|
+
let upload: typeof defaults;
|
|
77
78
|
setDefault(() => {
|
|
78
79
|
upload = deepDefaults(theme, {upload: defaults}).upload;
|
|
79
80
|
});
|
|
@@ -149,7 +150,7 @@ export function makeStyles() {
|
|
|
149
150
|
border-radius: ${upload.drag.borderRadius};
|
|
150
151
|
cursor: pointer;
|
|
151
152
|
text-align: center;
|
|
152
|
-
transition: border-color ${
|
|
153
|
+
transition: border-color ${upload.transition};
|
|
153
154
|
&:hover {
|
|
154
155
|
border-color: ${upload.drag.hoverBorderColor};
|
|
155
156
|
}
|
|
@@ -198,7 +199,7 @@ export function makeStyles() {
|
|
|
198
199
|
right: ${upload.gallery.close.right};
|
|
199
200
|
display: inline-block;
|
|
200
201
|
opacity: 0;
|
|
201
|
-
transition: opacity ${
|
|
202
|
+
transition: opacity ${upload.transition};
|
|
202
203
|
pointer-events: none;
|
|
203
204
|
.k-icon {
|
|
204
205
|
font-size: ${upload.gallery.close.fontSize};
|
|
@@ -206,7 +207,7 @@ export function makeStyles() {
|
|
|
206
207
|
}
|
|
207
208
|
.k-upload-icons {
|
|
208
209
|
opacity: 0;
|
|
209
|
-
transition: opacity ${
|
|
210
|
+
transition: opacity ${upload.transition};
|
|
210
211
|
}
|
|
211
212
|
&:hover {
|
|
212
213
|
.k-upload-icons {
|
package/components/utils.ts
CHANGED
|
@@ -159,7 +159,7 @@ export function getRestProps<T>(component: Component<T>, props = component.get()
|
|
|
159
159
|
}
|
|
160
160
|
|
|
161
161
|
const externalLinkReg = /^(https?:)?\/\//;
|
|
162
|
-
export function isExternalLink(to?: string) {
|
|
162
|
+
export function isExternalLink(to?: string | object): to is string {
|
|
163
163
|
if (!isString(to)) return false;
|
|
164
164
|
return externalLinkReg.test(to);
|
|
165
165
|
}
|