@king-design/vue 3.1.4-beta.2 → 3.1.4
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/__tests__/__snapshots__/Vue Next Demos.md +261 -255
- package/components/affix/index.d.ts +2 -2
- package/components/affix/index.js +0 -5
- package/components/affix/index.spec.js +84 -108
- package/components/affix/index.vdt.js +7 -10
- package/components/affix/styles.js +1 -1
- package/components/affix/useStyle.js +8 -19
- package/components/badge/index.js +0 -5
- package/components/badge/index.vdt.js +7 -11
- package/components/badge/styles.js +1 -3
- package/components/breadcrumb/index.js +0 -7
- package/components/breadcrumb/index.spec.js +6 -6
- package/components/breadcrumb/index.vdt.js +5 -14
- package/components/breadcrumb/item.js +0 -8
- package/components/breadcrumb/item.vdt.js +3 -6
- package/components/breadcrumb/styles.js +1 -4
- package/components/button/dynamicButton.d.ts +1 -1
- package/components/button/dynamicButton.js +2 -5
- package/components/button/group.js +2 -13
- package/components/button/group.vdt.js +5 -8
- package/components/button/index.js +3 -27
- package/components/button/index.spec.js +74 -96
- package/components/button/index.vdt.js +21 -31
- package/components/button/styles.d.ts +2 -2
- package/components/button/styles.js +8 -53
- package/components/card/column.js +0 -5
- package/components/card/column.vdt.js +5 -10
- package/components/card/index.js +0 -7
- package/components/card/index.vdt.js +5 -17
- package/components/card/styles.js +3 -6
- package/components/carousel/index.js +1 -19
- package/components/carousel/index.spec.js +127 -163
- package/components/carousel/index.vdt.js +12 -16
- package/components/carousel/item.js +0 -5
- package/components/carousel/item.vdt.js +4 -7
- package/components/carousel/styles.js +2 -3
- package/components/carousel/useAutoplay.js +0 -4
- package/components/carousel/useItems.js +4 -20
- package/components/carousel/useSlide.js +57 -89
- package/components/cascader/index.d.ts +1 -1
- package/components/cascader/index.js +3 -18
- package/components/cascader/index.spec.js +300 -377
- package/components/cascader/index.vdt.js +15 -33
- package/components/cascader/styles.js +2 -8
- package/components/cascader/useFields.js +1 -4
- package/components/cascader/useFilterable.js +2 -19
- package/components/cascader/useLabel.js +1 -9
- package/components/cascader/useLoad.js +22 -35
- package/components/cascader/useValue.d.ts +2 -2
- package/components/cascader/useValue.js +5 -26
- package/components/checkbox/index.js +5 -27
- package/components/checkbox/index.spec.js +129 -171
- package/components/checkbox/index.vdt.js +12 -16
- package/components/checkbox/styles.js +1 -13
- package/components/code/crossDomain.js +2 -9
- package/components/code/index.js +0 -9
- package/components/code/index.spec.js +46 -55
- package/components/code/index.vdt.js +6 -14
- package/components/code/styles.js +0 -1
- package/components/code/useEditor.js +5 -10
- package/components/collapse/index.d.ts +1 -1
- package/components/collapse/index.js +3 -17
- package/components/collapse/index.spec.js +47 -60
- package/components/collapse/index.vdt.js +4 -12
- package/components/collapse/item.js +0 -10
- package/components/collapse/item.vdt.js +7 -14
- package/components/collapse/styles.js +2 -5
- package/components/colorpicker/drag.js +0 -5
- package/components/colorpicker/index.js +0 -7
- package/components/colorpicker/index.spec.js +211 -259
- package/components/colorpicker/index.vdt.js +8 -11
- package/components/colorpicker/panel.js +0 -5
- package/components/colorpicker/panel.vdt.js +21 -26
- package/components/colorpicker/styles.js +4 -15
- package/components/colorpicker/useDrag.js +22 -26
- package/components/colorpicker/useInput.js +0 -16
- package/components/colorpicker/usePointer.js +15 -18
- package/components/colorpicker/useValue.js +2 -7
- package/components/config/index.js +3 -8
- package/components/config/index.spec.js +37 -50
- package/components/context.d.ts +2 -2
- package/components/context.js +2 -21
- package/components/copy/index.js +0 -7
- package/components/copy/index.spec.js +64 -86
- package/components/copy/index.vdt.js +4 -7
- package/components/copy/styles.js +0 -1
- package/components/copy/useCopy.js +13 -23
- package/components/datepicker/basepicker.d.ts +8 -8
- package/components/datepicker/basepicker.js +20 -90
- package/components/datepicker/calendar.js +0 -11
- package/components/datepicker/calendar.vdt.js +11 -15
- package/components/datepicker/constants.js +0 -1
- package/components/datepicker/dayjs.js +1 -1
- package/components/datepicker/helpers.js +3 -15
- package/components/datepicker/index.js +6 -32
- package/components/datepicker/index.spec.js +1154 -1464
- package/components/datepicker/index.vdt.js +20 -34
- package/components/datepicker/shortcuts.d.ts +1 -1
- package/components/datepicker/shortcuts.js +0 -4
- package/components/datepicker/styles.js +3 -12
- package/components/datepicker/time.d.ts +1 -1
- package/components/datepicker/time.js +3 -23
- package/components/datepicker/time.vdt.js +4 -5
- package/components/datepicker/useDays.js +2 -9
- package/components/datepicker/useDisabled.js +6 -23
- package/components/datepicker/useFocusDate.js +0 -2
- package/components/datepicker/useFormats.js +6 -15
- package/components/datepicker/useKeyboards.js +20 -36
- package/components/datepicker/useMonths.js +0 -6
- package/components/datepicker/usePanel.js +0 -10
- package/components/datepicker/useShowDate.js +10 -37
- package/components/datepicker/useStatus.js +3 -15
- package/components/datepicker/useValue.js +20 -38
- package/components/datepicker/useYears.js +4 -15
- package/components/diagram/diagram.js +17 -43
- package/components/diagram/diagram.vdt.js +2 -5
- package/components/diagram/graph.js +6 -6
- package/components/diagram/index.js +7 -7
- package/components/diagram/index.spec.js +369 -495
- package/components/diagram/layouts/circle.js +6 -14
- package/components/diagram/layouts/flow.js +7 -15
- package/components/diagram/layouts/layout.js +6 -28
- package/components/diagram/layouts/organic.js +3 -11
- package/components/diagram/layouts/partition.js +4 -12
- package/components/diagram/layouts/radial.js +6 -18
- package/components/diagram/layouts/stack.js +6 -14
- package/components/diagram/layouts/tree.js +11 -21
- package/components/diagram/mxgraph/handler/mxConnectionHandler.js +15 -22
- package/components/diagram/mxgraph/handler/mxConstraintHandler.js +4 -4
- package/components/diagram/mxgraph/handler/mxEdgeHandler.js +11 -15
- package/components/diagram/mxgraph/handler/mxGraphHandler.js +6 -9
- package/components/diagram/mxgraph/handler/mxRubberband.js +4 -4
- package/components/diagram/mxgraph/handler/mxVertexHandler.js +7 -10
- package/components/diagram/mxgraph/index.js +0 -2
- package/components/diagram/mxgraph/mx.js +3 -3
- package/components/diagram/mxgraph/shape/mxCloud.js +2 -2
- package/components/diagram/mxgraph/shape/mxCylinder.js +4 -9
- package/components/diagram/mxgraph/shape/mxEllipse.js +2 -2
- package/components/diagram/mxgraph/shape/mxHexagon.js +2 -2
- package/components/diagram/mxgraph/shape/mxLine.js +2 -2
- package/components/diagram/mxgraph/shape/mxRectangleShape.js +2 -2
- package/components/diagram/mxgraph/shape/mxRhombus.js +6 -12
- package/components/diagram/mxgraph/shape/mxShape.js +0 -1
- package/components/diagram/mxgraph/shape/mxTriangle.js +2 -2
- package/components/diagram/mxgraph/util/mxConstants.js +2 -2
- package/components/diagram/mxgraph/util/mxGuide.js +5 -7
- package/components/diagram/mxgraph/view/mxCellEditor.js +16 -29
- package/components/diagram/mxgraph/view/mxCellRenderer.js +0 -2
- package/components/diagram/mxgraph/view/mxGraph.js +14 -32
- package/components/diagram/shapes/base.d.ts +1 -1
- package/components/diagram/shapes/base.js +9 -39
- package/components/diagram/shapes/callout.js +10 -23
- package/components/diagram/shapes/circle.js +3 -10
- package/components/diagram/shapes/document.js +5 -16
- package/components/diagram/shapes/ellipse.js +0 -5
- package/components/diagram/shapes/generateShapes.d.ts +1 -1
- package/components/diagram/shapes/generateShapes.js +0 -9
- package/components/diagram/shapes/hexagon.js +9 -26
- package/components/diagram/shapes/image.js +1 -9
- package/components/diagram/shapes/line.d.ts +2 -2
- package/components/diagram/shapes/line.js +13 -48
- package/components/diagram/shapes/parallelogram.js +9 -26
- package/components/diagram/shapes/rectangle.js +1 -9
- package/components/diagram/shapes/shape.js +6 -35
- package/components/diagram/shapes/square.js +3 -11
- package/components/diagram/shapes/text.js +0 -5
- package/components/diagram/styles.js +0 -1
- package/components/dialog/alert.vdt.js +9 -20
- package/components/dialog/base.js +1 -29
- package/components/dialog/base.vdt.js +14 -31
- package/components/dialog/index.js +6 -31
- package/components/dialog/index.spec.js +456 -627
- package/components/dialog/staticMethods.d.ts +1 -1
- package/components/dialog/staticMethods.js +2 -13
- package/components/dialog/styles.js +3 -14
- package/components/dialog/useDraggable.js +0 -6
- package/components/dialog/useEscClosable.js +4 -12
- package/components/dialog/useFixBody.d.ts +1 -1
- package/components/dialog/useFixBody.js +0 -11
- package/components/dialog/usePosition.js +0 -5
- package/components/drawer/index.js +0 -5
- package/components/drawer/index.spec.js +128 -170
- package/components/drawer/index.vdt.js +3 -9
- package/components/drawer/styles.d.ts +2 -2
- package/components/drawer/styles.js +1 -4
- package/components/dropdown/dropdown.d.ts +2 -2
- package/components/dropdown/dropdown.js +33 -90
- package/components/dropdown/index.js +2 -6
- package/components/dropdown/index.spec.js +388 -496
- package/components/dropdown/item.js +4 -25
- package/components/dropdown/item.vdt.js +5 -8
- package/components/dropdown/menu.js +12 -29
- package/components/dropdown/menu.vdt.js +5 -13
- package/components/dropdown/styles.js +2 -11
- package/components/dropdown/useKeyboard.d.ts +2 -2
- package/components/dropdown/useKeyboard.js +8 -30
- package/components/dropdown/usePosition.d.ts +1 -1
- package/components/dropdown/usePosition.js +12 -21
- package/components/dropdown/useTransition.js +0 -8
- package/components/editable/index.d.ts +1 -1
- package/components/editable/index.js +4 -28
- package/components/editable/index.spec.js +152 -189
- package/components/editable/index.vdt.js +8 -11
- package/components/editable/styles.js +1 -2
- package/components/form/form.js +0 -18
- package/components/form/form.vdt.js +4 -7
- package/components/form/index.spec.js +1082 -1316
- package/components/form/item.d.ts +1 -1
- package/components/form/item.js +0 -12
- package/components/form/item.vdt.js +17 -31
- package/components/form/methods.d.ts +5 -5
- package/components/form/methods.js +2 -12
- package/components/form/styles.js +2 -10
- package/components/form/useDirty.js +2 -8
- package/components/form/useError.js +2 -10
- package/components/form/useValidate.d.ts +1 -1
- package/components/form/useValidate.js +8 -24
- package/components/grid/col.d.ts +3 -3
- package/components/grid/col.js +0 -7
- package/components/grid/col.vdt.js +8 -13
- package/components/grid/constants.d.ts +6 -6
- package/components/grid/row.js +0 -5
- package/components/grid/row.vdt.js +5 -8
- package/components/grid/styles.js +2 -8
- package/components/grid/useBreakpoints.js +0 -5
- package/components/grid/useGutter.js +9 -27
- package/components/icon/index.js +0 -10
- package/components/icon/index.vdt.js +8 -14
- package/components/icon/styles.js +1 -4
- package/components/input/index.d.ts +3 -3
- package/components/input/index.js +0 -13
- package/components/input/index.spec.js +185 -239
- package/components/input/index.vdt.js +46 -57
- package/components/input/search.js +0 -20
- package/components/input/search.vdt.js +6 -9
- package/components/input/styles.js +2 -29
- package/components/input/useAutoRows.js +6 -18
- package/components/input/useAutoWidth.js +0 -5
- package/components/input/useFocus.js +0 -2
- package/components/input/useFrozen.js +0 -6
- package/components/input/useShowPassword.js +2 -5
- package/components/layout/aside.js +6 -18
- package/components/layout/aside.vdt.js +5 -9
- package/components/layout/body.js +5 -18
- package/components/layout/footer.js +1 -10
- package/components/layout/header.js +9 -23
- package/components/layout/index.spec.js +24 -34
- package/components/layout/layout.js +9 -24
- package/components/layout/styles.js +6 -17
- package/components/layout/template.vdt.js +2 -4
- package/components/layout/useParse.js +0 -7
- package/components/menu/index.spec.js +189 -242
- package/components/menu/item.js +3 -16
- package/components/menu/item.vdt.js +22 -38
- package/components/menu/menu.js +2 -11
- package/components/menu/menu.vdt.js +6 -12
- package/components/menu/styles.js +4 -23
- package/components/menu/useDropdown.js +4 -10
- package/components/menu/useExpanded.js +0 -14
- package/components/menu/useHighlight.js +26 -36
- package/components/message/index.spec.js +58 -73
- package/components/message/message.js +0 -19
- package/components/message/message.vdt.js +6 -9
- package/components/message/messages.js +0 -12
- package/components/message/messages.vdt.js +0 -1
- package/components/message/styles.js +2 -11
- package/components/pagination/index.d.ts +1 -1
- package/components/pagination/index.js +10 -46
- package/components/pagination/index.spec.js +133 -173
- package/components/pagination/index.vdt.js +14 -32
- package/components/pagination/styles.js +3 -9
- package/components/popover/content.js +1 -5
- package/components/popover/content.vdt.js +4 -14
- package/components/popover/index.js +5 -10
- package/components/popover/index.spec.js +113 -150
- package/components/popover/styles.js +1 -1
- package/components/portal.d.ts +1 -1
- package/components/portal.js +2 -30
- package/components/position.d.ts +12 -12
- package/components/position.js +32 -88
- package/components/progress/index.d.ts +6 -6
- package/components/progress/index.js +0 -12
- package/components/progress/index.spec.js +143 -191
- package/components/progress/index.vdt.js +8 -17
- package/components/progress/styles.js +1 -7
- package/components/progress/useColor.js +2 -7
- package/components/progress/useStatus.d.ts +1 -1
- package/components/progress/useStatus.js +2 -5
- package/components/radio/index.js +3 -18
- package/components/radio/index.spec.js +111 -149
- package/components/radio/index.vdt.js +14 -17
- package/components/radio/styles.js +1 -13
- package/components/rate/index.js +0 -7
- package/components/rate/index.spec.js +64 -79
- package/components/rate/index.vdt.js +8 -21
- package/components/rate/styles.js +1 -4
- package/components/rate/useActiveValue.js +2 -7
- package/components/scrollSelect/index.d.ts +2 -2
- package/components/scrollSelect/index.js +0 -7
- package/components/scrollSelect/index.spec.js +100 -131
- package/components/scrollSelect/index.vdt.js +6 -12
- package/components/scrollSelect/styles.js +1 -8
- package/components/scrollSelect/useList.js +3 -17
- package/components/scrollSelect/useMouseEvents.js +31 -49
- package/components/scrollSelect/useTranslate.js +1 -11
- package/components/select/base.d.ts +2 -2
- package/components/select/base.js +3 -33
- package/components/select/base.vdt.js +27 -46
- package/components/select/group.js +0 -5
- package/components/select/group.vdt.js +4 -10
- package/components/select/index.spec.js +370 -464
- package/components/select/menu.js +0 -5
- package/components/select/menu.vdt.js +18 -33
- package/components/select/option.js +2 -16
- package/components/select/option.vdt.js +7 -14
- package/components/select/select.js +3 -20
- package/components/select/select.vdt.js +9 -17
- package/components/select/styles.js +3 -34
- package/components/select/useBaseLabel.d.ts +1 -1
- package/components/select/useBaseLabel.js +4 -17
- package/components/select/useCard.js +0 -4
- package/components/select/useDraggble.js +2 -2
- package/components/select/useEqualWidth.js +0 -1
- package/components/select/useFilterable.js +9 -27
- package/components/select/useFocusout.js +0 -8
- package/components/select/useInput.js +6 -10
- package/components/select/useLabel.js +3 -13
- package/components/select/useSearchable.js +0 -10
- package/components/skeleton/item.d.ts +1 -1
- package/components/skeleton/item.js +0 -7
- package/components/skeleton/item.vdt.js +1 -6
- package/components/skeleton/skeleton.js +0 -7
- package/components/skeleton/skeleton.vdt.js +6 -12
- package/components/skeleton/styles.d.ts +1 -1
- package/components/skeleton/styles.js +2 -3
- package/components/slider/index.d.ts +1 -1
- package/components/slider/index.js +0 -7
- package/components/slider/index.spec.js +502 -624
- package/components/slider/index.vdt.js +35 -50
- package/components/slider/styles.js +1 -19
- package/components/slider/useClick.js +2 -11
- package/components/slider/useDraggable.js +23 -34
- package/components/slider/useKeyboard.js +7 -18
- package/components/slider/useMarks.d.ts +5 -5
- package/components/slider/useMarks.js +5 -13
- package/components/slider/usePoints.d.ts +2 -2
- package/components/slider/usePoints.js +7 -21
- package/components/slider/useStyles.d.ts +1 -1
- package/components/slider/useStyles.js +5 -10
- package/components/slider/useTooltip.js +2 -10
- package/components/slider/useValue.d.ts +1 -1
- package/components/slider/useValue.js +7 -24
- package/components/spin/index.js +0 -7
- package/components/spin/index.vdt.js +4 -11
- package/components/spin/styles.js +1 -3
- package/components/spinner/index.d.ts +4 -4
- package/components/spinner/index.js +6 -18
- package/components/spinner/index.spec.js +359 -460
- package/components/spinner/index.vdt.js +12 -15
- package/components/spinner/styles.js +1 -11
- package/components/spinner/useChange.js +4 -16
- package/components/spinner/useFormatter.js +6 -16
- package/components/spinner/useStep.d.ts +3 -3
- package/components/spinner/useStep.js +2 -20
- package/components/spinner/useValue.js +14 -32
- package/components/split/index.js +0 -7
- package/components/split/index.spec.js +223 -267
- package/components/split/index.vdt.js +8 -17
- package/components/split/memo.js +0 -6
- package/components/split/styles.d.ts +1 -1
- package/components/split/styles.js +1 -9
- package/components/split/useDraggable.js +11 -35
- package/components/split/useSize.js +2 -5
- package/components/steps/index.js +2 -13
- package/components/steps/index.spec.js +21 -27
- package/components/steps/index.vdt.js +9 -12
- package/components/steps/step.js +0 -5
- package/components/steps/step.vdt.js +8 -12
- package/components/steps/styles.js +1 -38
- package/components/switch/index.js +2 -23
- package/components/switch/index.spec.js +194 -234
- package/components/switch/index.vdt.js +16 -32
- package/components/switch/styles.js +4 -12
- package/components/switch/useDraggable.js +10 -18
- package/components/table/cell.js +0 -9
- package/components/table/cell.vdt.js +14 -21
- package/components/table/column.d.ts +1 -1
- package/components/table/column.js +0 -5
- package/components/table/column.vdt.js +25 -37
- package/components/table/exportTable.js +41 -55
- package/components/table/index.spec.js +817 -1026
- package/components/table/row.d.ts +1 -1
- package/components/table/row.js +12 -44
- package/components/table/row.vdt.js +27 -38
- package/components/table/styles.js +2 -18
- package/components/table/table.d.ts +5 -5
- package/components/table/table.js +18 -50
- package/components/table/table.vdt.js +61 -86
- package/components/table/useChecked.d.ts +1 -1
- package/components/table/useChecked.js +20 -61
- package/components/table/useColumns.js +3 -16
- package/components/table/useDisableRow.js +2 -12
- package/components/table/useDraggable.js +4 -8
- package/components/table/useExpandable.js +2 -5
- package/components/table/useFixedColumns.d.ts +1 -1
- package/components/table/useFixedColumns.js +3 -20
- package/components/table/useGroup.d.ts +1 -1
- package/components/table/useGroup.js +7 -25
- package/components/table/useMerge.d.ts +4 -4
- package/components/table/useMerge.js +2 -14
- package/components/table/usePagination.js +4 -18
- package/components/table/useResetRowStatus.js +2 -6
- package/components/table/useResizable.js +4 -21
- package/components/table/useScroll.d.ts +1 -1
- package/components/table/useScroll.js +0 -3
- package/components/table/useSelected.js +2 -5
- package/components/table/useSortable.js +2 -8
- package/components/table/useStickyHeader.js +3 -7
- package/components/table/useStickyScrollbar.js +6 -16
- package/components/table/useTree.js +1 -12
- package/components/table/useWidth.js +14 -30
- package/components/tabs/index.js +29 -51
- package/components/tabs/index.spec.js +97 -129
- package/components/tabs/index.vdt.js +13 -16
- package/components/tabs/styles.js +1 -23
- package/components/tabs/tab.js +0 -10
- package/components/tabs/tab.vdt.js +6 -10
- package/components/tabs/useActiveBar.js +2 -11
- package/components/tabs/useScroll.js +10 -30
- package/components/tag/base.js +0 -11
- package/components/tag/index.js +2 -4
- package/components/tag/index.spec.js +123 -156
- package/components/tag/index.vdt.js +8 -15
- package/components/tag/styles.d.ts +1 -1
- package/components/tag/styles.js +2 -18
- package/components/tag/tags.d.ts +2 -2
- package/components/tag/tags.js +0 -7
- package/components/tag/tags.vdt.js +10 -18
- package/components/tag/useChildren.js +0 -5
- package/components/tag/useDraggable.js +6 -15
- package/components/tag/useNowrap.js +10 -27
- package/components/timeline/item.js +0 -7
- package/components/timeline/item.vdt.js +4 -9
- package/components/timeline/styles.d.ts +2 -2
- package/components/timeline/styles.js +2 -6
- package/components/timeline/timeline.js +0 -5
- package/components/timeline/timeline.vdt.js +2 -5
- package/components/timepicker/index.js +2 -7
- package/components/timepicker/index.spec.js +293 -368
- package/components/timepicker/panelPicker.js +2 -11
- package/components/timepicker/panelPicker.vdt.js +14 -24
- package/components/timepicker/selectPicker.js +0 -5
- package/components/timepicker/selectPicker.vdt.js +5 -10
- package/components/timepicker/styles.js +1 -2
- package/components/timepicker/useDisabled.js +2 -4
- package/components/timepicker/useFormats.js +4 -13
- package/components/timepicker/useStep.d.ts +1 -1
- package/components/timepicker/useStep.js +8 -17
- package/components/timepicker/useValue.js +16 -21
- package/components/tip/index.js +0 -2
- package/components/tip/index.vdt.js +5 -17
- package/components/tip/styles.js +1 -4
- package/components/tooltip/content.js +0 -28
- package/components/tooltip/content.vdt.js +15 -27
- package/components/tooltip/index.js +3 -7
- package/components/tooltip/index.spec.js +400 -527
- package/components/tooltip/styles.d.ts +1 -1
- package/components/tooltip/styles.js +3 -13
- package/components/tooltip/tooltip.js +2 -15
- package/components/tooltip/useArrow.js +11 -14
- package/components/transfer/index.d.ts +1 -1
- package/components/transfer/index.js +1 -13
- package/components/transfer/index.spec.js +159 -194
- package/components/transfer/index.vdt.js +17 -36
- package/components/transfer/styles.js +1 -11
- package/components/transfer/useCheck.d.ts +1 -1
- package/components/transfer/useCheck.js +1 -16
- package/components/transfer/useFilter.d.ts +1 -1
- package/components/transfer/useFilter.js +9 -30
- package/components/transfer/useTransfer.js +10 -26
- package/components/tree/index.d.ts +3 -3
- package/components/tree/index.js +3 -22
- package/components/tree/index.spec.js +310 -388
- package/components/tree/index.vdt.js +12 -24
- package/components/tree/styles.js +3 -17
- package/components/tree/useChecked.js +3 -27
- package/components/tree/useDraggable.js +14 -44
- package/components/tree/useExpanded.js +28 -46
- package/components/tree/useFilter.js +3 -10
- package/components/tree/useNodes.d.ts +3 -3
- package/components/tree/useNodes.js +0 -4
- package/components/tree/useSelected.js +21 -38
- package/components/tree/useTransitionEvent.js +3 -5
- package/components/treeSelect/index.js +9 -37
- package/components/treeSelect/index.spec.js +123 -160
- package/components/treeSelect/index.vdt.js +14 -20
- package/components/treeSelect/styles.js +1 -2
- package/components/treeSelect/useValue.js +0 -11
- package/components/types.d.ts +3 -3
- package/components/upload/ajaxUploader.d.ts +1 -1
- package/components/upload/ajaxUploader.js +0 -17
- package/components/upload/index.d.ts +4 -4
- package/components/upload/index.js +0 -14
- package/components/upload/index.spec.js +142 -248
- package/components/upload/index.vdt.js +12 -28
- package/components/upload/styles.js +2 -28
- package/components/upload/useAccept.js +2 -10
- package/components/upload/useDrag.js +0 -7
- package/components/upload/useFiles.js +103 -148
- package/components/upload/useShowImage.js +0 -3
- package/components/upload/useUpload.js +47 -69
- package/components/utils.d.ts +6 -6
- package/components/utils.js +12 -56
- package/components/virtual.js +9 -37
- package/components/wave/index.js +5 -32
- package/components/wave/styles.js +1 -1
- package/hooks/useDelayClose.js +2 -7
- package/hooks/useDocumentClick.js +8 -16
- package/hooks/useDraggable.d.ts +1 -1
- package/hooks/useDraggable.js +0 -9
- package/hooks/useKeyboard.d.ts +3 -3
- package/hooks/useKeyboard.js +0 -10
- package/hooks/useMouseOutsidable.js +0 -8
- package/hooks/useReceive.d.ts +1 -1
- package/hooks/useReceive.js +0 -4
- package/hooks/useRecordComponent.js +0 -6
- package/hooks/useResizeObserver.js +0 -2
- package/hooks/useRouter.js +7 -18
- package/hooks/useShowHideEvents.js +0 -3
- package/hooks/useState.d.ts +2 -2
- package/hooks/useState.js +2 -6
- package/i18n/en-US.js +0 -1
- package/i18n/index.d.ts +1 -1
- package/i18n/index.js +0 -7
- package/index.d.ts +2 -2
- package/index.js +2 -3
- package/package.json +2 -2
- package/styles/global.js +2 -5
- package/styles/keyframes.js +0 -1
- package/styles/theme.d.ts +1 -1
- package/styles/theme.js +2 -5
- package/styles/utils.d.ts +1 -1
- package/styles/utils.js +3 -17
- package/yarn-error.log +897 -0
|
@@ -14,25 +14,19 @@ var typeDefs = {
|
|
|
14
14
|
hideOnSelect: Boolean,
|
|
15
15
|
_isFocus: null
|
|
16
16
|
};
|
|
17
|
-
|
|
18
17
|
var defaults = function defaults() {
|
|
19
18
|
return {
|
|
20
19
|
hideOnSelect: true
|
|
21
20
|
};
|
|
22
21
|
};
|
|
23
|
-
|
|
24
22
|
export var DropdownItem = /*#__PURE__*/function (_Component) {
|
|
25
23
|
_inheritsLoose(DropdownItem, _Component);
|
|
26
|
-
|
|
27
24
|
function DropdownItem() {
|
|
28
25
|
var _context;
|
|
29
|
-
|
|
30
26
|
var _this;
|
|
31
|
-
|
|
32
27
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
33
28
|
args[_key] = arguments[_key];
|
|
34
29
|
}
|
|
35
|
-
|
|
36
30
|
_this = _Component.call.apply(_Component, _concatInstanceProperty(_context = [this]).call(_context, args)) || this;
|
|
37
31
|
_this.parentDropdown = void 0;
|
|
38
32
|
_this.dropdown = null;
|
|
@@ -41,35 +35,28 @@ export var DropdownItem = /*#__PURE__*/function (_Component) {
|
|
|
41
35
|
_this.config = useConfigContext();
|
|
42
36
|
return _this;
|
|
43
37
|
}
|
|
44
|
-
|
|
45
38
|
var _proto = DropdownItem.prototype;
|
|
46
|
-
|
|
47
39
|
_proto.init = function init() {
|
|
48
40
|
this.dropdown = inject(DROPDOWN);
|
|
49
41
|
this.parentDropdown = this.hasSubMenu();
|
|
50
42
|
this.dropdownMenu = inject(DROPDOWN_MENU);
|
|
51
43
|
this.keyboard = useKeyboardForDropdownItem(this);
|
|
52
44
|
};
|
|
53
|
-
|
|
54
45
|
_proto.select = function select() {
|
|
55
|
-
if (this.parentDropdown) return;
|
|
56
|
-
|
|
46
|
+
if (this.parentDropdown) return;
|
|
47
|
+
// trigger select event firstly for Cascader update values
|
|
57
48
|
this.trigger('select');
|
|
58
|
-
|
|
59
49
|
if (this.get('hideOnSelect')) {
|
|
60
50
|
// hide all dropdowns
|
|
61
51
|
var dropdown = this.dropdown;
|
|
62
|
-
|
|
63
52
|
do {
|
|
64
53
|
dropdown.hide(true);
|
|
65
54
|
} while (dropdown = dropdown.dropdown);
|
|
66
55
|
}
|
|
67
56
|
};
|
|
68
|
-
|
|
69
57
|
_proto.hasSubMenu = function hasSubMenu() {
|
|
70
58
|
// wrapped by Dropdown rather than DropdownMenu
|
|
71
59
|
var parent = this.$senior;
|
|
72
|
-
|
|
73
60
|
while (parent) {
|
|
74
61
|
// Tooltip extends Dropdown, it's also a instance of Dropdown
|
|
75
62
|
// so use constructor to detect
|
|
@@ -77,45 +64,37 @@ export var DropdownItem = /*#__PURE__*/function (_Component) {
|
|
|
77
64
|
if (parent.constructor === ExportDropdownMenu) {
|
|
78
65
|
return;
|
|
79
66
|
}
|
|
80
|
-
|
|
81
67
|
if (parent.constructor === ExportDropdown) {
|
|
82
68
|
return parent;
|
|
83
69
|
}
|
|
84
|
-
|
|
85
70
|
parent = parent.$senior;
|
|
86
71
|
}
|
|
87
72
|
};
|
|
88
|
-
|
|
89
73
|
_proto.onClick = function onClick(e) {
|
|
90
|
-
if (this.get('disabled')) return;
|
|
74
|
+
if (this.get('disabled')) return;
|
|
75
|
+
// Some cases, the item may been removed after click immediately
|
|
91
76
|
// and the menu will hide, because it can't detect it contains
|
|
92
77
|
// the removed item.
|
|
93
78
|
// Set the ignore flag to prevent menu from hidding
|
|
94
79
|
//
|
|
95
80
|
// @Change Cascader need click item to toggle show an hide
|
|
96
81
|
// (e as IgnoreClickEvent)._ignore = true;
|
|
97
|
-
|
|
98
82
|
this.trigger('click', e);
|
|
99
83
|
this.select();
|
|
100
84
|
};
|
|
101
|
-
|
|
102
85
|
return DropdownItem;
|
|
103
86
|
}(Component);
|
|
104
87
|
DropdownItem.template = template;
|
|
105
88
|
DropdownItem.typeDefs = typeDefs;
|
|
106
89
|
DropdownItem.defaults = defaults;
|
|
107
|
-
|
|
108
90
|
__decorate([bind], DropdownItem.prototype, "onClick", null);
|
|
109
|
-
|
|
110
91
|
function useKeyboardForDropdownItem(instance) {
|
|
111
92
|
var dropdownMenu = inject(DROPDOWN_MENU);
|
|
112
|
-
|
|
113
93
|
var showMenu = function showMenu() {
|
|
114
94
|
if (instance.parentDropdown) {
|
|
115
95
|
instance.parentDropdown.show(true);
|
|
116
96
|
}
|
|
117
97
|
};
|
|
118
|
-
|
|
119
98
|
return useItemKeyboard({
|
|
120
99
|
onShowMenu: showMenu,
|
|
121
100
|
onHideMenu: function onHideMenu() {
|
|
@@ -4,18 +4,15 @@ import { getRestProps } from '../utils';
|
|
|
4
4
|
import { makeItemStyles } from './styles';
|
|
5
5
|
export default function ($props, $blocks, $__proto__) {
|
|
6
6
|
var _classNameObj;
|
|
7
|
-
|
|
8
7
|
$blocks || ($blocks = {});
|
|
9
8
|
$props || ($props = {});
|
|
10
9
|
var $this = this;
|
|
11
|
-
|
|
12
10
|
var _this$get = this.get(),
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
11
|
+
children = _this$get.children,
|
|
12
|
+
disabled = _this$get.disabled,
|
|
13
|
+
className = _this$get.className,
|
|
14
|
+
hideOnSelect = _this$get.hideOnSelect,
|
|
15
|
+
_isFocus = _this$get._isFocus;
|
|
19
16
|
var k = this.config.k;
|
|
20
17
|
var classNameObj = (_classNameObj = {}, _classNameObj[k + "-dropdown-item"] = true, _classNameObj[k + "-disabled"] = disabled, _classNameObj[className] = className, _classNameObj[k + "-hover"] = this.keyboard.isFocus.value, _classNameObj[makeItemStyles(k)] = true, _classNameObj);
|
|
21
18
|
return _$cv('div', _extends({}, getRestProps(this), {
|
|
@@ -12,16 +12,12 @@ import { useConfigContext } from '../config';
|
|
|
12
12
|
export var DROPDOWN_MENU = 'DropdownMenu';
|
|
13
13
|
export var DropdownMenu = /*#__PURE__*/function (_Component) {
|
|
14
14
|
_inheritsLoose(DropdownMenu, _Component);
|
|
15
|
-
|
|
16
15
|
function DropdownMenu() {
|
|
17
16
|
var _context;
|
|
18
|
-
|
|
19
17
|
var _this;
|
|
20
|
-
|
|
21
18
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
22
19
|
args[_key] = arguments[_key];
|
|
23
20
|
}
|
|
24
|
-
|
|
25
21
|
_this = _Component.call.apply(_Component, _concatInstanceProperty(_context = [this]).call(_context, args)) || this;
|
|
26
22
|
_this.elementRef = createRef();
|
|
27
23
|
_this.dropdown = inject(DROPDOWN);
|
|
@@ -32,68 +28,55 @@ export var DropdownMenu = /*#__PURE__*/function (_Component) {
|
|
|
32
28
|
_this.config = useConfigContext();
|
|
33
29
|
return _this;
|
|
34
30
|
}
|
|
35
|
-
|
|
36
31
|
var _proto = DropdownMenu.prototype;
|
|
37
|
-
|
|
38
32
|
_proto.init = function init() {
|
|
39
33
|
provide(DROPDOWN_MENU, this);
|
|
40
34
|
useMouseOutsidable(this.elementRef);
|
|
41
|
-
}
|
|
35
|
+
}
|
|
36
|
+
// no matter what the trigger is, we should show menu when enter into it.
|
|
42
37
|
;
|
|
43
|
-
|
|
44
38
|
_proto.onMouseEnter = function onMouseEnter(e) {
|
|
45
39
|
var dropdown = this.dropdown;
|
|
46
40
|
dropdown.show();
|
|
47
41
|
dropdown.trigger('mouseenter', e);
|
|
48
42
|
};
|
|
49
|
-
|
|
50
43
|
_proto.onMouseLeave = function onMouseLeave(e) {
|
|
51
44
|
var dropdown = this.dropdown;
|
|
52
45
|
dropdown.hide();
|
|
53
46
|
dropdown.trigger('mouseleave', e);
|
|
54
47
|
};
|
|
55
|
-
|
|
56
48
|
return DropdownMenu;
|
|
57
49
|
}(Component);
|
|
58
50
|
DropdownMenu.template = template;
|
|
59
|
-
|
|
60
51
|
__decorate([bind], DropdownMenu.prototype, "onMouseEnter", null);
|
|
61
|
-
|
|
62
52
|
__decorate([bind], DropdownMenu.prototype, "onMouseLeave", null);
|
|
63
|
-
|
|
64
53
|
function useKeyboardForDropdownMenu(dropdown) {
|
|
65
54
|
var parentDropdownMenu = inject(DROPDOWN_MENU, null);
|
|
66
|
-
|
|
67
55
|
var _useMenuKeyboard = useMenuKeyboard(),
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
56
|
+
_useMenuKeyboard$ = _useMenuKeyboard[0],
|
|
57
|
+
addKeydown = _useMenuKeyboard$[0],
|
|
58
|
+
removeKeydown = _useMenuKeyboard$[1],
|
|
59
|
+
lock = _useMenuKeyboard$[2],
|
|
60
|
+
focusByIndex = _useMenuKeyboard[1],
|
|
61
|
+
reset = _useMenuKeyboard[2];
|
|
75
62
|
var onShow = function onShow() {
|
|
76
|
-
addKeydown();
|
|
77
|
-
|
|
63
|
+
addKeydown();
|
|
64
|
+
// lock parent dropdown menu, prevent it from operating by keyboard
|
|
78
65
|
parentDropdownMenu && parentDropdownMenu.keyboard.lock(true);
|
|
79
66
|
};
|
|
80
|
-
|
|
81
67
|
var onHide = function onHide() {
|
|
82
68
|
reset();
|
|
83
69
|
removeKeydown();
|
|
84
70
|
parentDropdownMenu && parentDropdownMenu.keyboard.lock(false);
|
|
85
71
|
};
|
|
86
|
-
|
|
87
72
|
var focus = function focus() {
|
|
88
73
|
return focusByIndex(0);
|
|
89
|
-
};
|
|
74
|
+
};
|
|
75
|
+
// In Cascader the menu may have been replaced by another menu, in this case,
|
|
90
76
|
// if the dropdown has showed while we mounted the menu, add keydown listener
|
|
91
|
-
|
|
92
|
-
|
|
93
77
|
if (dropdown.get('value')) {
|
|
94
78
|
onShow();
|
|
95
79
|
}
|
|
96
|
-
|
|
97
80
|
dropdown.on('show', onShow);
|
|
98
81
|
dropdown.on('hide', onHide);
|
|
99
82
|
dropdown.on('shouldFocus', focus);
|
|
@@ -4,29 +4,23 @@ import { Transition } from 'intact-vue-next';
|
|
|
4
4
|
import { makeMenuStyles } from './styles';
|
|
5
5
|
export default function ($props, $blocks, $__proto__) {
|
|
6
6
|
var _classNameObj;
|
|
7
|
-
|
|
8
7
|
$blocks || ($blocks = {});
|
|
9
8
|
$props || ($props = {});
|
|
10
9
|
var $this = this;
|
|
11
10
|
var _$blocks = {};
|
|
12
11
|
var __$blocks = {};
|
|
13
|
-
|
|
14
12
|
var _this$dropdown$get = this.dropdown.get(),
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
13
|
+
value = _this$dropdown$get.value,
|
|
14
|
+
trigger = _this$dropdown$get.trigger,
|
|
15
|
+
container = _this$dropdown$get.container;
|
|
19
16
|
var _this$get = this.get(),
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
children = _this$get.children,
|
|
18
|
+
className = _this$get.className;
|
|
23
19
|
var k = this.config.k;
|
|
24
20
|
var classNameObj = (_classNameObj = {}, _classNameObj[k + "-dropdown-menu"] = true, _classNameObj[className] = className, _classNameObj[$props.className] = $props.className, _classNameObj[makeMenuStyles(k)] = true, _classNameObj);
|
|
25
|
-
|
|
26
21
|
var transition = $props.transition || _extends({
|
|
27
22
|
css: false
|
|
28
23
|
}, this.transition);
|
|
29
|
-
|
|
30
24
|
return _$cc(Transition, _extends({
|
|
31
25
|
'show': 'value' in $props ? $props.value : !!value,
|
|
32
26
|
'appear': true
|
|
@@ -35,11 +29,9 @@ export default function ($props, $blocks, $__proto__) {
|
|
|
35
29
|
return children;
|
|
36
30
|
}, __$blocks['children'] = function ($super, data) {
|
|
37
31
|
var block = $blocks['children'];
|
|
38
|
-
|
|
39
32
|
var callBlock = function callBlock() {
|
|
40
33
|
return _$blocks['children'].call($this, $super, data);
|
|
41
34
|
};
|
|
42
|
-
|
|
43
35
|
return block ? block.call($this, callBlock, data) : callBlock();
|
|
44
36
|
}, __$blocks['children'](_$no)), 0, _$cn(classNameObj), {
|
|
45
37
|
'ev-mouseenter': this.onMouseEnter,
|
|
@@ -8,39 +8,30 @@ var defaults = {
|
|
|
8
8
|
get height() {
|
|
9
9
|
return theme.default.height;
|
|
10
10
|
},
|
|
11
|
-
|
|
12
11
|
get padding() {
|
|
13
12
|
return "0 " + theme.default.padding;
|
|
14
13
|
},
|
|
15
|
-
|
|
16
14
|
get hoverBgColor() {
|
|
17
15
|
return theme.color.bg;
|
|
18
16
|
},
|
|
19
|
-
|
|
20
17
|
// disabled
|
|
21
18
|
get disabledBgColor() {
|
|
22
19
|
return theme.color.disabledBg;
|
|
23
20
|
},
|
|
24
|
-
|
|
25
21
|
get disabledColor() {
|
|
26
22
|
return theme.color.disabled;
|
|
27
23
|
}
|
|
28
|
-
|
|
29
24
|
},
|
|
30
25
|
menu: {
|
|
31
26
|
minWidth: '100px',
|
|
32
27
|
bgColor: '#fff',
|
|
33
|
-
|
|
34
28
|
get borderRadius() {
|
|
35
29
|
return theme.borderRadius;
|
|
36
30
|
},
|
|
37
|
-
|
|
38
31
|
fontSize: '12px',
|
|
39
|
-
|
|
40
32
|
get zIndex() {
|
|
41
33
|
return theme.midZIndex;
|
|
42
34
|
}
|
|
43
|
-
|
|
44
35
|
}
|
|
45
36
|
};
|
|
46
37
|
var dropdown;
|
|
@@ -48,8 +39,8 @@ setDefault(function () {
|
|
|
48
39
|
dropdown = deepDefaults(theme, {
|
|
49
40
|
dropdown: defaults
|
|
50
41
|
}).dropdown;
|
|
51
|
-
makeMenuStyles == null
|
|
52
|
-
makeItemStyles == null
|
|
42
|
+
makeMenuStyles == null || makeMenuStyles.clearCache();
|
|
43
|
+
makeItemStyles == null || makeItemStyles.clearCache();
|
|
53
44
|
});
|
|
54
45
|
export var makeMenuStyles = cache(function makeMenuStyles(k) {
|
|
55
46
|
return /*#__PURE__*/css("position:absolute;min-width:", dropdown.menu.minWidth, ";background:", dropdown.menu.bgColor, ";border-radius:", dropdown.menu.borderRadius, ";box-shadow:", theme.middleBoxShadow, ";font-size:", dropdown.menu.fontSize, ";z-index:", dropdown.menu.zIndex, ";top:0;left:0;.", k, "-dropdown{display:block;}");
|
|
@@ -10,11 +10,11 @@ export declare enum Direction {
|
|
|
10
10
|
Up = 0,
|
|
11
11
|
Down = 1
|
|
12
12
|
}
|
|
13
|
-
export
|
|
13
|
+
export type MenuKeyboardMethods = {
|
|
14
14
|
reset: () => void;
|
|
15
15
|
focus: (item: DropdownItem) => void;
|
|
16
16
|
};
|
|
17
|
-
export declare function useMenuKeyboard(): readonly [readonly [() => void, () => void, (v: boolean) => boolean], (index: number, direction?: Direction
|
|
17
|
+
export declare function useMenuKeyboard(): readonly [readonly [() => void, () => void, (v: boolean) => boolean], (index: number, direction?: Direction) => void, () => void];
|
|
18
18
|
export declare function useItemKeyboard(itemEvents: Omit<ItemEvents, 'onFocusin' | 'onFocusout'>): {
|
|
19
19
|
onMouseEnter(e: MouseEvent): void;
|
|
20
20
|
onMouseLeave(e: MouseEvent): void;
|
|
@@ -4,39 +4,34 @@ import { useRecordParent, useRecordItem } from '../../hooks/useRecordComponent';
|
|
|
4
4
|
import { useKeyboard } from '../../hooks/useKeyboard';
|
|
5
5
|
import { useState } from '../../hooks/useState';
|
|
6
6
|
import { isComponentVNode } from '../utils';
|
|
7
|
-
import { DropdownItem } from './item';
|
|
7
|
+
import { DropdownItem } from './item';
|
|
8
|
+
// can not import DropdownMenu from index.ts, otherwise it will cause circle reference
|
|
8
9
|
// import {DropdownMenu} from './';
|
|
9
|
-
|
|
10
10
|
import { DropdownMenu } from './menu';
|
|
11
11
|
export var Direction;
|
|
12
|
-
|
|
13
12
|
(function (Direction) {
|
|
14
13
|
Direction[Direction["Up"] = 0] = "Up";
|
|
15
14
|
Direction[Direction["Down"] = 1] = "Down";
|
|
16
15
|
})(Direction || (Direction = {}));
|
|
17
|
-
|
|
18
16
|
var ITEM_EVENTS = 'ItemEvents';
|
|
19
17
|
var MENU_KEYBOARD = 'MenuKeyboard';
|
|
20
18
|
export function useMenuKeyboard() {
|
|
21
19
|
var items = [];
|
|
22
20
|
var itemEvents = useRecordParent(ITEM_EVENTS, true);
|
|
23
21
|
var instance = useInstance();
|
|
24
|
-
var focusIndex = -1;
|
|
22
|
+
var focusIndex = -1;
|
|
23
|
+
// we can't use the way that DropdownItem push itself to DropdownMenu to collect the items
|
|
25
24
|
// because it can't guarantee the order
|
|
26
|
-
|
|
27
25
|
function collect() {
|
|
28
26
|
items.length = 0;
|
|
29
27
|
var children = instance.$lastInput;
|
|
30
|
-
|
|
31
28
|
var loop = function loop(vNode) {
|
|
32
29
|
if (isComponentVNode(vNode, DropdownItem)) {
|
|
33
30
|
items.push(vNode.children);
|
|
34
31
|
} else {
|
|
35
32
|
var _children = vNode.children;
|
|
36
|
-
|
|
37
33
|
if (isComponentClass(vNode)) {
|
|
38
34
|
var tag = vNode.tag;
|
|
39
|
-
|
|
40
35
|
if (tag !== DropdownMenu && !(tag.prototype instanceof DropdownMenu)) {
|
|
41
36
|
loop(_children.$lastInput);
|
|
42
37
|
}
|
|
@@ -49,11 +44,9 @@ export function useMenuKeyboard() {
|
|
|
49
44
|
}
|
|
50
45
|
}
|
|
51
46
|
};
|
|
52
|
-
|
|
53
47
|
loop(children);
|
|
54
48
|
return children;
|
|
55
49
|
}
|
|
56
|
-
|
|
57
50
|
onMounted(collect);
|
|
58
51
|
var oldFocusIndex;
|
|
59
52
|
onBeforeUpdate(function () {
|
|
@@ -65,52 +58,43 @@ export function useMenuKeyboard() {
|
|
|
65
58
|
if (oldFocusIndex < 0) return;
|
|
66
59
|
focusByIndex(oldFocusIndex, Direction.Up);
|
|
67
60
|
});
|
|
68
|
-
|
|
69
61
|
function next(e) {
|
|
70
62
|
e.preventDefault();
|
|
71
63
|
focusByIndex(focusIndex + 1, Direction.Down);
|
|
72
64
|
}
|
|
73
|
-
|
|
74
65
|
function prev(e) {
|
|
75
66
|
e.preventDefault();
|
|
76
67
|
focusByIndex(focusIndex - 1, Direction.Up);
|
|
77
68
|
}
|
|
78
|
-
|
|
79
69
|
function focusByIndex(index, direction) {
|
|
80
70
|
var max = items.length - 1;
|
|
81
71
|
index = fixIndex(index, max);
|
|
82
72
|
reset();
|
|
83
73
|
var item = items[index];
|
|
84
74
|
var i = 0;
|
|
85
|
-
|
|
86
75
|
while (i <= max && item && item.get('disabled')) {
|
|
87
76
|
index = fixIndex(direction === Direction.Down ? index + 1 : index - 1, max);
|
|
88
77
|
item = items[index];
|
|
89
78
|
i++;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
|
|
79
|
+
}
|
|
80
|
+
// all items are disabled
|
|
93
81
|
if (i > max) return;
|
|
94
82
|
focusIndex = index;
|
|
95
83
|
focusItem(item);
|
|
96
84
|
}
|
|
97
|
-
|
|
98
85
|
function focusItem(item) {
|
|
99
86
|
itemEvents.get(item).onFocusin();
|
|
100
87
|
var el = findDomFromVNode(item.$lastInput, true);
|
|
101
88
|
var menuEl = findDomFromVNode(instance.$vNode, false);
|
|
102
89
|
scrollToView(el, menuEl);
|
|
103
90
|
}
|
|
104
|
-
|
|
105
91
|
function reset() {
|
|
106
92
|
var item = items[focusIndex];
|
|
107
|
-
|
|
108
93
|
if (focusIndex > -1 && item) {
|
|
109
94
|
itemEvents.get(item).onFocusout();
|
|
110
95
|
focusIndex = -1;
|
|
111
96
|
}
|
|
112
97
|
}
|
|
113
|
-
|
|
114
98
|
function makeEventCall(name) {
|
|
115
99
|
return function (e) {
|
|
116
100
|
if (focusIndex < 0) return;
|
|
@@ -118,13 +102,12 @@ export function useMenuKeyboard() {
|
|
|
118
102
|
itemEvents.get(items[focusIndex])[name]();
|
|
119
103
|
};
|
|
120
104
|
}
|
|
121
|
-
|
|
122
105
|
provide(MENU_KEYBOARD, {
|
|
123
106
|
reset: reset,
|
|
124
107
|
focus: function focus(item) {
|
|
125
108
|
// reset();
|
|
126
|
-
var index = items.indexOf(item);
|
|
127
|
-
|
|
109
|
+
var index = items.indexOf(item);
|
|
110
|
+
// if (index === -1) debugger
|
|
128
111
|
focusIndex = index;
|
|
129
112
|
focusItem(item);
|
|
130
113
|
}
|
|
@@ -162,31 +145,26 @@ export function useItemKeyboard(itemEvents) {
|
|
|
162
145
|
isFocus: isFocus
|
|
163
146
|
};
|
|
164
147
|
}
|
|
165
|
-
|
|
166
148
|
function fixIndex(index, max) {
|
|
167
149
|
if (index > max) {
|
|
168
150
|
index = 0;
|
|
169
151
|
} else if (index < 0) {
|
|
170
152
|
index = max;
|
|
171
153
|
}
|
|
172
|
-
|
|
173
154
|
return index;
|
|
174
155
|
}
|
|
175
|
-
|
|
176
156
|
function scrollToView(el, menuEl) {
|
|
177
157
|
var elRect = el.getBoundingClientRect();
|
|
178
158
|
var pEl = getScrollParent(el.parentElement, menuEl);
|
|
179
159
|
var pElRect = pEl.getBoundingClientRect();
|
|
180
160
|
var bottomOverflowDistance = elRect.bottom - pElRect.bottom;
|
|
181
161
|
var topOverflowDistance = elRect.top - pElRect.top;
|
|
182
|
-
|
|
183
162
|
if (bottomOverflowDistance > 0) {
|
|
184
163
|
pEl.scrollTop += bottomOverflowDistance;
|
|
185
164
|
} else if (topOverflowDistance < 0) {
|
|
186
165
|
pEl.scrollTop += topOverflowDistance;
|
|
187
166
|
}
|
|
188
167
|
}
|
|
189
|
-
|
|
190
168
|
function getScrollParent(node, breakEl) {
|
|
191
169
|
if (node === breakEl || node.scrollHeight > node.clientHeight) return node;
|
|
192
170
|
return getScrollParent(node.parentElement, breakEl);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Feedback } from '../position';
|
|
2
|
-
export
|
|
2
|
+
export type FeedbackCallback = (feedback: Feedback) => void;
|
|
3
3
|
export declare function usePosition(): {
|
|
4
4
|
handle: (callback: FeedbackCallback) => void;
|
|
5
5
|
positioned: {
|
|
@@ -15,29 +15,31 @@ export function usePosition() {
|
|
|
15
15
|
});
|
|
16
16
|
['of', 'position'].forEach(function (item) {
|
|
17
17
|
instance.watch(item, function (newValue, oldValue) {
|
|
18
|
-
if (!instance.get('value') ||
|
|
19
|
-
|
|
18
|
+
if (!instance.get('value') ||
|
|
19
|
+
// return if object is the same
|
|
20
|
+
isObject(newValue) && isObject(oldValue) &&
|
|
21
|
+
// is not event object
|
|
20
22
|
!(newValue instanceof Event) && isEqualObject(newValue, oldValue)) return;
|
|
21
23
|
handle(noop);
|
|
22
24
|
}, {
|
|
23
25
|
presented: true,
|
|
24
26
|
inited: true
|
|
25
27
|
});
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
+
});
|
|
29
|
+
// watch container, it is not commonly used
|
|
28
30
|
instance.watch('container', function (newValue, oldValue) {
|
|
29
|
-
if (!instance.get('value') ||
|
|
31
|
+
if (!instance.get('value') ||
|
|
32
|
+
// return if function is the same. Not rigorous!
|
|
30
33
|
isFunction(newValue) && isFunction(oldValue) && newValue.toString() === oldValue.toString()) return;
|
|
31
34
|
handle(noop);
|
|
32
35
|
}, {
|
|
33
36
|
presented: true,
|
|
34
37
|
inited: true
|
|
35
|
-
});
|
|
36
|
-
|
|
38
|
+
});
|
|
39
|
+
// if the dropdown is nested, we must show child after parent has positioned
|
|
37
40
|
function p(ofElement, parentFeedback) {
|
|
38
41
|
var feedback;
|
|
39
42
|
var pos = instance.get('position');
|
|
40
|
-
|
|
41
43
|
switch (pos) {
|
|
42
44
|
case 'left':
|
|
43
45
|
pos = {
|
|
@@ -45,21 +47,18 @@ export function usePosition() {
|
|
|
45
47
|
at: 'left center'
|
|
46
48
|
};
|
|
47
49
|
break;
|
|
48
|
-
|
|
49
50
|
case 'bottom':
|
|
50
51
|
pos = {
|
|
51
52
|
my: 'center top+10',
|
|
52
53
|
at: 'center bottom'
|
|
53
54
|
};
|
|
54
55
|
break;
|
|
55
|
-
|
|
56
56
|
case 'right':
|
|
57
57
|
pos = {
|
|
58
58
|
my: 'left+10 center',
|
|
59
59
|
at: 'right center'
|
|
60
60
|
};
|
|
61
61
|
break;
|
|
62
|
-
|
|
63
62
|
case 'top':
|
|
64
63
|
pos = {
|
|
65
64
|
my: 'center bottom-10',
|
|
@@ -67,7 +66,6 @@ export function usePosition() {
|
|
|
67
66
|
};
|
|
68
67
|
break;
|
|
69
68
|
}
|
|
70
|
-
|
|
71
69
|
position(findDomFromVNode(instance.menuVNode, true), _extends({
|
|
72
70
|
my: 'left top+8',
|
|
73
71
|
at: 'left bottom',
|
|
@@ -82,32 +80,26 @@ export function usePosition() {
|
|
|
82
80
|
instance.trigger('positioned', parentFeedback || feedback);
|
|
83
81
|
return parentFeedback || feedback;
|
|
84
82
|
}
|
|
85
|
-
|
|
86
83
|
function handle(callback) {
|
|
87
84
|
var _of = instance.get('of');
|
|
88
|
-
|
|
89
85
|
if (_of === 'parent') {
|
|
90
86
|
var parent = instance.dropdown;
|
|
91
|
-
|
|
92
87
|
if (process.env.NODE_ENV !== 'production') {
|
|
93
88
|
if (!parent) {
|
|
94
89
|
throw new Error('The dropdown has not parent, so you can not use `parent` as `of`.');
|
|
95
90
|
}
|
|
96
91
|
}
|
|
97
|
-
|
|
98
92
|
var ofElement = findDomFromVNode(parent.menuVNode, true);
|
|
99
|
-
|
|
100
93
|
if (parent.positionHook.positioned.value) {
|
|
101
94
|
callback(p(ofElement, null));
|
|
102
95
|
} else {
|
|
103
96
|
// wait the parent has positioned
|
|
104
97
|
var fn = function fn(feedback) {
|
|
105
|
-
parent.off('positioned', fn);
|
|
98
|
+
parent.off('positioned', fn);
|
|
99
|
+
// let the child menu has the same transtion with parent menu,
|
|
106
100
|
// when them show together
|
|
107
|
-
|
|
108
101
|
callback(p(ofElement, feedback));
|
|
109
102
|
};
|
|
110
|
-
|
|
111
103
|
parent.on('positioned', fn);
|
|
112
104
|
}
|
|
113
105
|
} else if (_of === 'self') {
|
|
@@ -116,7 +108,6 @@ export function usePosition() {
|
|
|
116
108
|
callback(p(_of, null));
|
|
117
109
|
}
|
|
118
110
|
}
|
|
119
|
-
|
|
120
111
|
return {
|
|
121
112
|
handle: handle,
|
|
122
113
|
positioned: positioned
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { addTransitionClass, removeTransitionClass, whenTransitionEnds } from 'intact-vue-next';
|
|
2
2
|
export function useTransition(getFeedback) {
|
|
3
3
|
var transition = 'k-slidedown';
|
|
4
|
-
|
|
5
4
|
function onEnter(el, done) {
|
|
6
5
|
getFeedback(function (feedback) {
|
|
7
6
|
transition = getTransition(feedback);
|
|
@@ -17,11 +16,9 @@ export function useTransition(getFeedback) {
|
|
|
17
16
|
});
|
|
18
17
|
});
|
|
19
18
|
}
|
|
20
|
-
|
|
21
19
|
function onEnterCancelled(el) {
|
|
22
20
|
removeTransitionClass(el, transition + "-enter-active");
|
|
23
21
|
}
|
|
24
|
-
|
|
25
22
|
function onLeave(el, done) {
|
|
26
23
|
// maybe the position has changed, so we re-get it
|
|
27
24
|
getFeedback(function (feedback) {
|
|
@@ -34,12 +31,10 @@ export function useTransition(getFeedback) {
|
|
|
34
31
|
});
|
|
35
32
|
});
|
|
36
33
|
}
|
|
37
|
-
|
|
38
34
|
function onLeaveCancelled(el) {
|
|
39
35
|
removeTransitionClass(el, transition + "-leave-to");
|
|
40
36
|
removeTransitionClass(el, transition + "-leave-active");
|
|
41
37
|
}
|
|
42
|
-
|
|
43
38
|
return {
|
|
44
39
|
onEnter: onEnter,
|
|
45
40
|
onEnterCancelled: onEnterCancelled,
|
|
@@ -47,11 +42,9 @@ export function useTransition(getFeedback) {
|
|
|
47
42
|
onLeaveCancelled: onLeaveCancelled
|
|
48
43
|
};
|
|
49
44
|
}
|
|
50
|
-
|
|
51
45
|
function getTransition(feedback) {
|
|
52
46
|
var horizontal = feedback.horizontal;
|
|
53
47
|
var vertical = feedback.vertical;
|
|
54
|
-
|
|
55
48
|
if (feedback.important === 'horizontal') {
|
|
56
49
|
if (horizontal === 'left') {
|
|
57
50
|
return 'k-slideright';
|
|
@@ -73,6 +66,5 @@ function getTransition(feedback) {
|
|
|
73
66
|
return 'k-slideleft';
|
|
74
67
|
}
|
|
75
68
|
}
|
|
76
|
-
|
|
77
69
|
return 'k-slidedown';
|
|
78
70
|
}
|