ep-craft 0.1.34 → 0.1.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/carousel/EpCarousel.vue.d.ts +39 -0
- package/dist/components/carousel/EpCarousel.vue.js +227 -0
- package/dist/components/carousel/EpCarousel2.vue.js +4 -0
- package/dist/components/carousel/carousel.d.ts +86 -0
- package/dist/components/carousel/carousel.js +113 -0
- package/dist/components/carousel/constants.d.ts +32 -0
- package/dist/components/carousel/constants.js +5 -0
- package/dist/components/carousel/index.d.ts +28 -2
- package/dist/components/carousel/index.js +11 -4
- package/dist/components/carousel/instance.d.ts +8 -0
- package/dist/components/carousel/use-carousel.d.ts +41 -0
- package/dist/components/carousel/use-carousel.js +200 -0
- package/dist/components/carousel-item/EpCarouselItem.vue.d.ts +16 -0
- package/dist/components/carousel-item/EpCarouselItem.vue.js +74 -0
- package/dist/components/carousel-item/EpCarouselItem2.vue.js +4 -0
- package/dist/components/carousel-item/carousel-item.d.ts +22 -0
- package/dist/components/carousel-item/carousel-item.js +22 -0
- package/dist/components/carousel-item/index.d.ts +14 -2
- package/dist/components/carousel-item/index.js +9 -4
- package/dist/components/carousel-item/use-carousel-item.d.ts +14 -0
- package/dist/components/carousel-item/use-carousel-item.js +79 -0
- package/dist/components/cascader/EpCascader.vue.d.ts +232 -0
- package/dist/components/cascader/EpCascader.vue.js +757 -0
- package/dist/components/cascader/EpCascader2.vue.js +4 -0
- package/dist/components/cascader/cascader.d.ts +313 -0
- package/dist/components/cascader/cascader.js +210 -0
- package/dist/components/cascader/index.d.ts +17 -2
- package/dist/components/cascader/index.js +9 -3
- package/dist/components/cascader/instances.d.ts +2 -0
- package/dist/components/cascader-panel/EpCascaderMenu.vue.d.ts +32 -0
- package/dist/components/cascader-panel/EpCascaderMenu.vue.js +204 -0
- package/dist/components/cascader-panel/EpCascaderMenu2.vue.js +4 -0
- package/dist/components/cascader-panel/EpCascaderNode.vue.d.ts +11 -0
- package/dist/components/cascader-panel/EpCascaderNode.vue.js +134 -0
- package/dist/components/cascader-panel/EpCascaderNode2.vue.js +4 -0
- package/dist/components/cascader-panel/EpCascaderPanel.vue.d.ts +290 -0
- package/dist/components/cascader-panel/EpCascaderPanel.vue.js +266 -0
- package/dist/components/cascader-panel/EpCascaderPanel2.vue.js +4 -0
- package/dist/components/cascader-panel/config.d.ts +102 -0
- package/dist/components/cascader-panel/config.js +136 -0
- package/dist/components/cascader-panel/index.d.ts +17 -2
- package/dist/components/cascader-panel/index.js +21 -4
- package/dist/components/cascader-panel/instance.d.ts +4 -0
- package/dist/components/cascader-panel/node-content.d.ts +14 -0
- package/dist/components/cascader-panel/node-content.js +50 -0
- package/dist/components/cascader-panel/node.d.ts +50 -0
- package/dist/components/cascader-panel/node.js +75 -0
- package/dist/components/cascader-panel/store.d.ts +17 -0
- package/dist/components/cascader-panel/store.js +49 -0
- package/dist/components/cascader-panel/types.d.ts +64 -0
- package/dist/components/cascader-panel/types.js +4 -0
- package/dist/components/cascader-panel/utils.d.ts +4 -0
- package/dist/components/cascader-panel/utils.js +26 -0
- package/dist/components/checkbox/EpCheckbox.vue.d.ts +1 -1
- package/dist/components/checkbox-button/EpCheckboxButton.vue.d.ts +1 -1
- package/dist/components/checkbox-group/index.js +4 -3
- package/dist/components/collapse-transition/index.js +4 -3
- package/dist/components/color-picker/EpColorPicker.vue.d.ts +53 -0
- package/dist/components/color-picker/EpColorPicker.vue.js +318 -0
- package/dist/components/color-picker/EpColorPicker2.vue.js +4 -0
- package/dist/components/color-picker/color-picker.d.ts +240 -0
- package/dist/components/color-picker/color-picker.js +124 -0
- package/dist/components/color-picker/index.d.ts +16 -2
- package/dist/components/color-picker/index.js +11 -4
- package/dist/components/color-picker-panel/EpColorPickerPanel.vue.d.ts +413 -0
- package/dist/components/color-picker-panel/EpColorPickerPanel.vue.js +142 -0
- package/dist/components/color-picker-panel/EpColorPickerPanel2.vue.js +4 -0
- package/dist/components/color-picker-panel/color-picker-panel.d.ts +91 -0
- package/dist/components/color-picker-panel/color-picker-panel.js +71 -0
- package/dist/components/color-picker-panel/components/EpAlphaSlider.vue.d.ts +19 -0
- package/dist/components/color-picker-panel/components/EpAlphaSlider.vue.js +92 -0
- package/dist/components/color-picker-panel/components/EpAlphaSlider2.vue.js +4 -0
- package/dist/components/color-picker-panel/components/EpHueSlider.vue.d.ts +20 -0
- package/dist/components/color-picker-panel/components/EpHueSlider.vue.js +84 -0
- package/dist/components/color-picker-panel/components/EpHueSlider2.vue.js +4 -0
- package/dist/components/color-picker-panel/components/EpPredefine.vue.d.ts +3 -0
- package/dist/components/color-picker-panel/components/EpPredefine.vue.js +39 -0
- package/dist/components/color-picker-panel/components/EpPredefine2.vue.js +4 -0
- package/dist/components/color-picker-panel/components/EpSvPanel.vue.d.ts +8 -0
- package/dist/components/color-picker-panel/components/EpSvPanel.vue.js +67 -0
- package/dist/components/color-picker-panel/components/EpSvPanel2.vue.js +4 -0
- package/dist/components/color-picker-panel/composables/use-common-color.d.ts +11 -0
- package/dist/components/color-picker-panel/composables/use-common-color.js +23 -0
- package/dist/components/color-picker-panel/composables/use-predefine.d.ts +14 -0
- package/dist/components/color-picker-panel/composables/use-predefine.js +66 -0
- package/dist/components/color-picker-panel/composables/use-slider.d.ts +35 -0
- package/dist/components/color-picker-panel/composables/use-slider.js +152 -0
- package/dist/components/color-picker-panel/composables/use-sv-panel.d.ts +25 -0
- package/dist/components/color-picker-panel/composables/use-sv-panel.js +123 -0
- package/dist/components/color-picker-panel/index.d.ts +4 -0
- package/dist/components/color-picker-panel/props/predefine.d.ts +36 -0
- package/dist/components/color-picker-panel/props/slider.d.ts +39 -0
- package/dist/components/color-picker-panel/props/sv-panel.d.ts +22 -0
- package/dist/components/color-picker-panel/utils/color.d.ts +28 -0
- package/dist/components/color-picker-panel/utils/color.js +62 -0
- package/dist/components/color-picker-panel/utils/draggable.d.ts +6 -0
- package/dist/components/color-picker-panel/utils/draggable.js +23 -0
- package/dist/components/descriptions/EpDescriptions.vue.d.ts +20 -0
- package/dist/components/descriptions/EpDescriptions.vue.js +100 -0
- package/dist/components/descriptions/EpDescriptions2.vue.js +4 -0
- package/dist/components/descriptions/EpDescriptionsRow.vue.d.ts +5 -0
- package/dist/components/descriptions/EpDescriptionsRow.vue.js +56 -0
- package/dist/components/descriptions/EpDescriptionsRow2.vue.js +4 -0
- package/dist/components/descriptions/constants.d.ts +1 -0
- package/dist/components/descriptions/constants.js +4 -0
- package/dist/components/descriptions/description.d.ts +66 -0
- package/dist/components/descriptions/description.js +61 -0
- package/dist/components/descriptions/descriptions-cell.d.ts +31 -0
- package/dist/components/descriptions/descriptions-cell.js +133 -0
- package/dist/components/descriptions/descriptions-row.d.ts +10 -0
- package/dist/components/descriptions/descriptions.type.d.ts +29 -0
- package/dist/components/descriptions/index.d.ts +22 -2
- package/dist/components/descriptions/index.js +9 -3
- package/dist/components/descriptions/token.d.ts +3 -0
- package/dist/components/descriptions/token.js +4 -0
- package/dist/components/descriptions-item/description-item.d.ts +84 -0
- package/dist/components/descriptions-item/description-item.js +87 -0
- package/dist/components/descriptions-item/index.d.ts +14 -2
- package/dist/components/descriptions-item/index.js +6 -4
- package/dist/components/dropdown/src/dropdown-item-impl2.vue.js +1 -1
- package/dist/components/dropdown/src/dropdown-item2.vue.js +1 -1
- package/dist/components/dropdown/src/dropdown-menu2.vue.js +1 -1
- package/dist/components/dropdown/src/dropdown2.vue.js +1 -1
- package/dist/components/input-number/index.js +3 -2
- package/dist/components/mention/EpMention.vue.d.ts +430 -0
- package/dist/components/mention/EpMention.vue.js +303 -0
- package/dist/components/mention/EpMention2.vue.js +4 -0
- package/dist/components/mention/EpMentionDropdown.vue.d.ts +34 -0
- package/dist/components/mention/EpMentionDropdown.vue.js +140 -0
- package/dist/components/mention/EpMentionDropdown2.vue.js +4 -0
- package/dist/components/mention/helper.d.ts +32 -0
- package/dist/components/mention/helper.js +112 -0
- package/dist/components/mention/index.d.ts +13 -2
- package/dist/components/mention/index.js +11 -4
- package/dist/components/mention/mention-dropdown.d.ts +21 -0
- package/dist/components/mention/mention-dropdown.js +22 -0
- package/dist/components/mention/mention.d.ts +313 -0
- package/dist/components/mention/mention.js +123 -0
- package/dist/components/mention/types.d.ts +19 -0
- package/dist/components/radio/index.js +4 -3
- package/dist/components/rate/EpRate.vue.d.ts +32 -0
- package/dist/components/rate/EpRate.vue.js +229 -0
- package/dist/components/rate/EpRate2.vue.js +4 -0
- package/dist/components/rate/index.d.ts +15 -2
- package/dist/components/rate/index.js +7 -4
- package/dist/components/rate/rate.d.ts +131 -0
- package/dist/components/rate/rate.js +158 -0
- package/dist/components/roving-focus-group/index.js +1 -1
- package/dist/components/roving-focus-group/src/roving-focus-item.vue.js +76 -18
- package/dist/components/roving-focus-group/src/roving-focus-item2.vue.js +18 -76
- package/dist/components/segmented/EpSegmented.vue.d.ts +22 -0
- package/dist/components/segmented/EpSegmented.vue.js +136 -0
- package/dist/components/segmented/EpSegmented2.vue.js +4 -0
- package/dist/components/segmented/index.d.ts +14 -2
- package/dist/components/segmented/index.js +11 -4
- package/dist/components/segmented/segmented.d.ts +85 -0
- package/dist/components/segmented/segmented.js +85 -0
- package/dist/components/segmented/types.d.ts +1 -0
- package/dist/components/select/index.d.ts +4 -2
- package/dist/components/select/index.js +3 -2
- package/dist/components/select/select2.vue.js +60 -61
- package/dist/components/select-v2/src/select.vue.d.ts +1 -1
- package/dist/components/slider/EpSlider.vue.d.ts +175 -0
- package/dist/components/slider/EpSlider.vue.js +211 -0
- package/dist/components/slider/EpSlider2.vue.js +4 -0
- package/dist/components/slider/EpSliderButton.vue.d.ts +26 -0
- package/dist/components/slider/EpSliderButton.vue.js +103 -0
- package/dist/components/slider/EpSliderButton2.vue.js +4 -0
- package/dist/components/slider/button.d.ts +28 -0
- package/dist/components/slider/button.js +28 -0
- package/dist/components/slider/composables/index.d.ts +7 -0
- package/dist/components/slider/composables/use-lifecycle.d.ts +4 -0
- package/dist/components/slider/composables/use-lifecycle.js +20 -0
- package/dist/components/slider/composables/use-marks.d.ts +7 -0
- package/dist/components/slider/composables/use-marks.js +30 -0
- package/dist/components/slider/composables/use-slide.d.ts +23 -0
- package/dist/components/slider/composables/use-slide.js +92 -0
- package/dist/components/slider/composables/use-slider-button.d.ts +18 -0
- package/dist/components/slider/composables/use-slider-button.js +179 -0
- package/dist/components/slider/composables/use-stops.d.ts +8 -0
- package/dist/components/slider/composables/use-stops.js +23 -0
- package/dist/components/slider/composables/use-watch.d.ts +4 -0
- package/dist/components/slider/composables/use-watch.js +42 -0
- package/dist/components/slider/constants.d.ts +17 -0
- package/dist/components/slider/constants.js +4 -0
- package/dist/components/slider/index.d.ts +18 -2
- package/dist/components/slider/index.js +10 -4
- package/dist/components/slider/marker.d.ts +64 -0
- package/dist/components/slider/marker.js +40 -0
- package/dist/components/slider/slider.d.ts +80 -0
- package/dist/components/slider/slider.js +170 -0
- package/dist/components/step/EpStep.vue.d.ts +38 -0
- package/dist/components/step/EpStep.vue.js +157 -0
- package/dist/components/step/EpStep2.vue.js +4 -0
- package/dist/components/step/index.d.ts +12 -2
- package/dist/components/step/index.js +8 -3
- package/dist/components/step/step.d.ts +42 -0
- package/dist/components/step/step.js +39 -0
- package/dist/components/steps/EpSteps.vue.d.ts +23 -0
- package/dist/components/steps/EpSteps.vue.js +57 -0
- package/dist/components/steps/EpSteps2.vue.js +4 -0
- package/dist/components/steps/index.d.ts +20 -2
- package/dist/components/steps/index.js +8 -4
- package/dist/components/steps/steps.d.ts +69 -0
- package/dist/components/steps/steps.js +66 -0
- package/dist/components/steps/tokens.d.ts +1 -0
- package/dist/components/steps/tokens.js +4 -0
- package/dist/components/switch/EpSwitch.vue.d.ts +50 -0
- package/dist/components/switch/EpSwitch.vue.js +251 -0
- package/dist/components/switch/EpSwitch2.vue.js +4 -0
- package/dist/components/switch/index.d.ts +15 -2
- package/dist/components/switch/index.js +10 -4
- package/dist/components/switch/switch.d.ts +157 -0
- package/dist/components/switch/switch.js +145 -0
- package/dist/components/table/src/filter-panel.vue.d.ts +3 -3
- package/dist/components/table/src/table-header/index.d.ts +3 -3
- package/dist/components/text/index.d.ts +4 -2
- package/dist/components/text/index.js +7 -4
- package/dist/components/text/src/text.d.ts +43 -0
- package/dist/components/text/src/text.js +45 -0
- package/dist/components/text/src/text.vue.d.ts +17 -0
- package/dist/components/text/src/text.vue.js +63 -0
- package/dist/components/text/src/text2.vue.js +4 -0
- package/dist/components/time-select/EpTimeSelect.vue.d.ts +38 -0
- package/dist/components/time-select/EpTimeSelect.vue.js +154 -0
- package/dist/components/time-select/EpTimeSelect2.vue.js +4 -0
- package/dist/components/time-select/index.d.ts +17 -2
- package/dist/components/time-select/index.js +12 -4
- package/dist/components/time-select/time-select.d.ts +143 -0
- package/dist/components/time-select/time-select.js +139 -0
- package/dist/components/time-select/utils.d.ts +11 -0
- package/dist/components/time-select/utils.js +39 -0
- package/dist/components/tour/EpTour.vue.d.ts +40 -0
- package/dist/components/tour/EpTour.vue.js +174 -0
- package/dist/components/tour/EpTour2.vue.js +4 -0
- package/dist/components/tour/EpTourContent.vue.d.ts +23 -0
- package/dist/components/tour/EpTourContent.vue.js +72 -0
- package/dist/components/tour/EpTourContent2.vue.js +4 -0
- package/dist/components/tour/EpTourMask.vue.d.ts +7 -0
- package/dist/components/tour/EpTourMask.vue.js +76 -0
- package/dist/components/tour/EpTourMask2.vue.js +4 -0
- package/dist/components/tour/constants.d.ts +10 -0
- package/dist/components/tour/constants.js +4 -0
- package/dist/components/tour/content.d.ts +49 -0
- package/dist/components/tour/content.js +70 -0
- package/dist/components/tour/helper.d.ts +36 -0
- package/dist/components/tour/helper.js +161 -0
- package/dist/components/tour/index.d.ts +28 -2
- package/dist/components/tour/index.js +19 -4
- package/dist/components/tour/mask.d.ts +43 -0
- package/dist/components/tour/steps.d.ts +19 -0
- package/dist/components/tour/steps.js +35 -0
- package/dist/components/tour/tour.d.ts +136 -0
- package/dist/components/tour/tour.js +120 -0
- package/dist/components/tour/types.d.ts +21 -0
- package/dist/components/tour-step/EpTourStep.vue.d.ts +25 -0
- package/dist/components/tour-step/EpTourStep.vue.js +179 -0
- package/dist/components/tour-step/EpTourStep2.vue.js +4 -0
- package/dist/components/tour-step/index.d.ts +13 -2
- package/dist/components/tour-step/index.js +10 -4
- package/dist/components/tour-step/step.d.ts +120 -0
- package/dist/components/tour-step/step.js +91 -0
- package/dist/components/transfer/EpTransfer.vue.d.ts +36 -0
- package/dist/components/transfer/EpTransfer.vue.js +195 -0
- package/dist/components/transfer/EpTransfer2.vue.js +4 -0
- package/dist/components/transfer/EpTransferPanel.vue.d.ts +24 -0
- package/dist/components/transfer/EpTransferPanel.vue.js +191 -0
- package/dist/components/transfer/EpTransferPanel2.vue.js +4 -0
- package/dist/components/transfer/composables/index.d.ts +5 -0
- package/dist/components/transfer/composables/use-check.d.ts +286 -0
- package/dist/components/transfer/composables/use-check.js +89 -0
- package/dist/components/transfer/composables/use-checked-change.d.ts +6 -0
- package/dist/components/transfer/composables/use-checked-change.js +12 -0
- package/dist/components/transfer/composables/use-computed-data.d.ts +5 -0
- package/dist/components/transfer/composables/use-computed-data.js +26 -0
- package/dist/components/transfer/composables/use-move.d.ts +6 -0
- package/dist/components/transfer/composables/use-move.js +27 -0
- package/dist/components/transfer/composables/use-props-alias.d.ts +8 -0
- package/dist/components/transfer/composables/use-props-alias.js +15 -0
- package/dist/components/transfer/index.d.ts +19 -2
- package/dist/components/transfer/index.js +13 -4
- package/dist/components/transfer/transfer-panel.d.ts +63 -0
- package/dist/components/transfer/transfer-panel.js +32 -0
- package/dist/components/transfer/transfer.d.ts +136 -0
- package/dist/components/transfer/transfer.js +130 -0
- package/dist/components/tree/index.d.ts +7 -2
- package/dist/components/tree/index.js +8 -4
- package/dist/components/tree/src/instance.d.ts +2 -0
- package/dist/components/tree/src/model/node.d.ts +63 -0
- package/dist/components/tree/src/model/node.js +263 -0
- package/dist/components/tree/src/model/tree-store.d.ts +51 -0
- package/dist/components/tree/src/model/tree-store.js +223 -0
- package/dist/components/tree/src/model/useDragNode.d.ts +459 -0
- package/dist/components/tree/src/model/useDragNode.js +98 -0
- package/dist/components/tree/src/model/useKeydown.d.ts +7 -0
- package/dist/components/tree/src/model/useKeydown.js +93 -0
- package/dist/components/tree/src/model/useNodeExpandEventBroadcast.d.ts +9 -0
- package/dist/components/tree/src/model/useNodeExpandEventBroadcast.js +27 -0
- package/dist/components/tree/src/model/util.d.ts +7 -0
- package/dist/components/tree/src/model/util.js +19 -0
- package/dist/components/tree/src/tokens.d.ts +3 -0
- package/dist/components/tree/src/tokens.js +6 -0
- package/dist/components/tree/src/tree-node-content.vue.d.ts +14 -0
- package/dist/components/tree/src/tree-node-content.vue.js +43 -0
- package/dist/components/tree/src/tree-node-content2.vue.js +4 -0
- package/dist/components/tree/src/tree-node.vue.d.ts +377 -0
- package/dist/components/tree/src/tree-node.vue.js +108 -0
- package/dist/components/tree/src/tree-node2.vue.js +166 -0
- package/dist/components/tree/src/tree.d.ts +103 -0
- package/dist/components/tree/src/tree.js +99 -0
- package/dist/components/tree/src/tree.type.d.ts +112 -0
- package/dist/components/tree/src/tree.vue.d.ts +1745 -0
- package/dist/components/tree/src/tree.vue.js +48 -0
- package/dist/components/tree/src/tree2.vue.js +192 -0
- package/dist/components/tree-select/index.d.ts +3 -2
- package/dist/components/tree-select/index.js +7 -4
- package/dist/components/tree-select/src/cache-options.d.ts +20 -0
- package/dist/components/tree-select/src/cache-options.js +36 -0
- package/dist/components/tree-select/src/instance.d.ts +6 -0
- package/dist/components/tree-select/src/select.d.ts +11 -0
- package/dist/components/tree-select/src/select.js +92 -0
- package/dist/components/tree-select/src/tree-select-option.d.ts +364 -0
- package/dist/components/tree-select/src/tree-select-option.js +32 -0
- package/dist/components/tree-select/src/tree-select.vue.d.ts +412 -0
- package/dist/components/tree-select/src/tree-select.vue.js +96 -0
- package/dist/components/tree-select/src/tree-select2.vue.js +4 -0
- package/dist/components/tree-select/src/tree.d.ts +12 -0
- package/dist/components/tree-select/src/tree.js +179 -0
- package/dist/components/tree-select/src/utils.d.ts +10 -0
- package/dist/components/tree-select/src/utils.js +49 -0
- package/dist/components/upload/src/upload-content.vue.d.ts +2 -2
- package/dist/components/upload/src/upload.vue.d.ts +2 -2
- package/dist/constants/column-alignment.js +4 -0
- package/dist/ep-craft.js +367 -279
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/use-lockscreen/index.d.ts +11 -0
- package/dist/hooks/use-lockscreen/index.js +34 -0
- package/dist/index.d.ts +98 -0
- package/dist/utils/arrays.js +4 -3
- package/dist/utils/dom/aria.js +23 -13
- package/dist/utils/dom/scroll.js +61 -46
- package/dist/utils/vue/icon.js +17 -14
- package/dist/utils/vue/validator.js +5 -0
- package/dist/utils/vue/vnode.js +24 -12
- package/dist/vendored-components.d.ts +1 -1
- package/dist/vendored-components.js +69 -5
- package/package.json +3 -2
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import { defineComponent as ce, useSlots as ne, ref as h, computed as S, provide as ie, reactive as U, watch as I, onBeforeUpdate as ue, onMounted as de, openBlock as L, createElementBlock as j, normalizeClass as fe, unref as J, Fragment as pe, renderList as ve, createBlock as me, withCtx as he, renderSlot as ge, nextTick as Ne } from "vue";
|
|
2
|
+
import { isEqual as $, flattenDeep as Ee, cloneDeep as ye } from "lodash-unified";
|
|
3
|
+
import { unique as Y, castArray as Z } from "../../utils/arrays.js";
|
|
4
|
+
import { isClient as Ce } from "@vueuse/core";
|
|
5
|
+
import { isEmpty as Q } from "../../utils/types.js";
|
|
6
|
+
import "@vue/shared";
|
|
7
|
+
import { focusNode as z, getSibling as ke } from "../../utils/dom/aria.js";
|
|
8
|
+
import { getEventCode as Se } from "../../utils/dom/event.js";
|
|
9
|
+
import { scrollIntoView as _e } from "../../utils/dom/scroll.js";
|
|
10
|
+
import "@element-plus/icons-vue";
|
|
11
|
+
import { EVENT_CODE as g } from "../../constants/aria.js";
|
|
12
|
+
import { UPDATE_MODEL_EVENT as xe, CHANGE_EVENT as be } from "../../constants/event.js";
|
|
13
|
+
import { useNamespace as Ie } from "../../hooks/use-namespace/index.js";
|
|
14
|
+
import "../../hooks/use-size/index.js";
|
|
15
|
+
import "@popperjs/core";
|
|
16
|
+
import "../../hooks/use-z-index/index.js";
|
|
17
|
+
import "../../hooks/use-delayed-toggle/index.js";
|
|
18
|
+
import "../../hooks/use-aria/index.js";
|
|
19
|
+
import "../../hooks/use-model-toggle/index.js";
|
|
20
|
+
import "../../hooks/use-empty-values/index.js";
|
|
21
|
+
import we from "./EpCascaderMenu.vue.js";
|
|
22
|
+
import W from "./store.js";
|
|
23
|
+
import Ae from "./node.js";
|
|
24
|
+
import { cascaderPanelEmits as De, CASCADER_PANEL_HEIGHT as Ve, CASCADER_PANEL_ITEM_SIZE as Le, useCascaderConfig as $e } from "./config.js";
|
|
25
|
+
import { sortByOriginalOrder as ze, checkNode as Be, getMenuIndex as B } from "./utils.js";
|
|
26
|
+
import { CASCADER_PANEL_INJECTION_KEY as Te } from "./types.js";
|
|
27
|
+
const it = /* @__PURE__ */ ce({
|
|
28
|
+
name: "EpCascaderPanel",
|
|
29
|
+
__name: "EpCascaderPanel",
|
|
30
|
+
props: {
|
|
31
|
+
border: { type: Boolean, default: !0 },
|
|
32
|
+
renderLabel: {},
|
|
33
|
+
modelValue: {},
|
|
34
|
+
options: { default: () => [] },
|
|
35
|
+
props: { default: () => ({}) },
|
|
36
|
+
virtualScroll: { type: Boolean },
|
|
37
|
+
itemSize: { default: Le },
|
|
38
|
+
height: { default: Ve }
|
|
39
|
+
},
|
|
40
|
+
emits: De,
|
|
41
|
+
setup(T, { expose: X, emit: ee }) {
|
|
42
|
+
const u = T, k = ee;
|
|
43
|
+
let _ = !1;
|
|
44
|
+
const d = Ie("cascader"), f = $e(u), te = ne();
|
|
45
|
+
let r;
|
|
46
|
+
const N = h(!0), O = h(!1), m = h([]), x = h(), p = h([]), E = h(), v = h([]), oe = S(() => f.value.expandTrigger === "hover"), le = S(() => u.renderLabel || te.default), b = S(() => u.virtualScroll), P = S(() => u.itemSize), q = S(() => u.height), w = () => {
|
|
47
|
+
const { options: e } = u, t = f.value;
|
|
48
|
+
_ = !1, r = new W(e, t), p.value = [r.getNodes()], t.lazy && Q(u.options) ? (N.value = !1, A(void 0, (l) => {
|
|
49
|
+
l && (r = new W(l, t), p.value = [r.getNodes()]), N.value = !0, y(!1, !0);
|
|
50
|
+
})) : y(!1, !0);
|
|
51
|
+
}, A = (e, t) => {
|
|
52
|
+
const l = f.value;
|
|
53
|
+
e = e || new Ae({}, l, void 0, !0), e.loading = !0;
|
|
54
|
+
const a = (s) => {
|
|
55
|
+
const c = e, n = c.root ? null : c;
|
|
56
|
+
c.loading = !1, c.loaded = !0, c.childrenData = c.childrenData || [], s && (r == null || r.appendNodes(s, n)), s && (t == null || t(s)), e.level === 0 && (O.value = !0);
|
|
57
|
+
}, o = () => {
|
|
58
|
+
e.loading = !1, e.loaded = !1, e.level === 0 && (N.value = !0);
|
|
59
|
+
};
|
|
60
|
+
l.lazyLoad(e, a, o);
|
|
61
|
+
}, D = (e, t) => {
|
|
62
|
+
var s;
|
|
63
|
+
const { level: l } = e, a = p.value.slice(0, l);
|
|
64
|
+
let o;
|
|
65
|
+
e.isLeaf ? o = e.pathNodes[l - 2] : (o = e, a.push(e.children)), ((s = E.value) == null ? void 0 : s.uid) !== (o == null ? void 0 : o.uid) && (E.value = e, p.value = a, !t && k("expand-change", (e == null ? void 0 : e.pathValues) || []));
|
|
66
|
+
}, M = (e, t, l = !0) => {
|
|
67
|
+
const { checkStrictly: a, multiple: o } = f.value, s = v.value[0];
|
|
68
|
+
_ = !0, !o && (s == null || s.doCheck(!1)), e.doCheck(t), V(), l && !o && !a && k("close"), !l && !o && F(e);
|
|
69
|
+
}, F = (e) => {
|
|
70
|
+
e && (e = e.parent, F(e), e && D(e));
|
|
71
|
+
}, H = (e) => r == null ? void 0 : r.getFlattedNodes(e), R = (e) => {
|
|
72
|
+
var t;
|
|
73
|
+
return (t = H(e)) == null ? void 0 : t.filter(({ checked: l }) => l !== !1);
|
|
74
|
+
}, ae = () => {
|
|
75
|
+
v.value.forEach((e) => e.doCheck(!1)), V(), p.value = p.value.slice(0, 1), E.value = void 0, k("expand-change", []);
|
|
76
|
+
}, V = () => {
|
|
77
|
+
const { checkStrictly: e, multiple: t } = f.value, l = v.value, a = R(!e), o = ze(l, a), s = o.map((c) => c.valueByOption);
|
|
78
|
+
v.value = o, x.value = t ? s : s[0] ?? null;
|
|
79
|
+
}, y = (e = !1, t = !1) => {
|
|
80
|
+
const { modelValue: l } = u, { lazy: a, multiple: o, checkStrictly: s } = f.value, c = !s;
|
|
81
|
+
if (!(!N.value || _ || !t && $(l, x.value)))
|
|
82
|
+
if (a && !e) {
|
|
83
|
+
const C = Y(
|
|
84
|
+
Ee(Z(l))
|
|
85
|
+
).map((i) => r == null ? void 0 : r.getNodeByValue(i)).filter((i) => !!i && !i.loaded && !i.loading);
|
|
86
|
+
C.length ? C.forEach((i) => {
|
|
87
|
+
A(i, () => y(!1, t));
|
|
88
|
+
}) : y(!0, t);
|
|
89
|
+
} else {
|
|
90
|
+
const n = o ? Z(l) : [l], C = Y(
|
|
91
|
+
n.map(
|
|
92
|
+
(i) => r == null ? void 0 : r.getNodeByValue(i, c)
|
|
93
|
+
)
|
|
94
|
+
);
|
|
95
|
+
se(C, t), x.value = ye(l ?? void 0);
|
|
96
|
+
}
|
|
97
|
+
}, se = (e, t = !0) => {
|
|
98
|
+
const { checkStrictly: l } = f.value, a = v.value, o = e.filter(
|
|
99
|
+
(n) => !!n && (l || n.isLeaf)
|
|
100
|
+
), s = r == null ? void 0 : r.getSameNode(E.value), c = t && s || o[0];
|
|
101
|
+
c ? c.pathNodes.forEach((n) => D(n, !0)) : E.value = void 0, a.forEach((n) => n.doCheck(!1)), U(o).forEach((n) => n.doCheck(!0)), v.value = o, Ne(K);
|
|
102
|
+
}, K = () => {
|
|
103
|
+
Ce && m.value.forEach((e) => {
|
|
104
|
+
var l, a;
|
|
105
|
+
const t = e == null ? void 0 : e.$el;
|
|
106
|
+
if (t)
|
|
107
|
+
if (b.value) {
|
|
108
|
+
const o = (l = e == null ? void 0 : e.getActiveNodeIndex) == null ? void 0 : l.call(e);
|
|
109
|
+
o !== void 0 && o >= 0 && ((a = e == null ? void 0 : e.scrollToItem) == null || a.call(e, o));
|
|
110
|
+
} else {
|
|
111
|
+
const o = t.querySelector(
|
|
112
|
+
`.${d.namespace.value}-scrollbar__wrap`
|
|
113
|
+
);
|
|
114
|
+
let s = t.querySelector(
|
|
115
|
+
`.${d.b("node")}.in-active-path`
|
|
116
|
+
);
|
|
117
|
+
if (!s) {
|
|
118
|
+
const c = t.querySelectorAll(
|
|
119
|
+
`.${d.b("node")}.${d.is("active")}`
|
|
120
|
+
);
|
|
121
|
+
s = c[c.length - 1];
|
|
122
|
+
}
|
|
123
|
+
_e(o, s);
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
}, G = (e) => {
|
|
127
|
+
const t = e.target, l = Se(e);
|
|
128
|
+
switch (l) {
|
|
129
|
+
case g.up:
|
|
130
|
+
case g.down: {
|
|
131
|
+
e.preventDefault();
|
|
132
|
+
const a = l === g.up ? -1 : 1;
|
|
133
|
+
if (b.value) {
|
|
134
|
+
const o = B(t), s = m.value[o];
|
|
135
|
+
if (s) {
|
|
136
|
+
const c = s.getNodeIndexById(t.id);
|
|
137
|
+
if (c >= 0) {
|
|
138
|
+
const n = p.value[o] ?? [], C = n.length;
|
|
139
|
+
let i = c + a;
|
|
140
|
+
for (; i >= 0 && i < C; ) {
|
|
141
|
+
if (!n[i].isDisabled) {
|
|
142
|
+
s.focusNodeAt(i);
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
i += a;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
z(
|
|
151
|
+
ke(
|
|
152
|
+
t,
|
|
153
|
+
a,
|
|
154
|
+
`.${d.b("node")}[tabindex="-1"]`
|
|
155
|
+
)
|
|
156
|
+
);
|
|
157
|
+
break;
|
|
158
|
+
}
|
|
159
|
+
case g.left: {
|
|
160
|
+
e.preventDefault();
|
|
161
|
+
const a = m.value[B(t) - 1], o = a == null ? void 0 : a.$el.querySelector(
|
|
162
|
+
`.${d.b("node")}[aria-expanded="true"]`
|
|
163
|
+
);
|
|
164
|
+
z(o);
|
|
165
|
+
break;
|
|
166
|
+
}
|
|
167
|
+
case g.right: {
|
|
168
|
+
e.preventDefault();
|
|
169
|
+
const a = m.value[B(t) + 1], o = a == null ? void 0 : a.$el.querySelector(
|
|
170
|
+
`.${d.b("node")}[tabindex="-1"]`
|
|
171
|
+
);
|
|
172
|
+
z(o);
|
|
173
|
+
break;
|
|
174
|
+
}
|
|
175
|
+
case g.enter:
|
|
176
|
+
case g.numpadEnter:
|
|
177
|
+
Be(t);
|
|
178
|
+
break;
|
|
179
|
+
}
|
|
180
|
+
};
|
|
181
|
+
ie(
|
|
182
|
+
Te,
|
|
183
|
+
U({
|
|
184
|
+
config: f,
|
|
185
|
+
expandingNode: E,
|
|
186
|
+
checkedNodes: v,
|
|
187
|
+
isHoverMenu: oe,
|
|
188
|
+
initialLoaded: N,
|
|
189
|
+
renderLabelFn: le,
|
|
190
|
+
virtualScroll: b,
|
|
191
|
+
itemSize: P,
|
|
192
|
+
height: q,
|
|
193
|
+
lazyLoad: A,
|
|
194
|
+
expandNode: D,
|
|
195
|
+
handleCheckChange: M
|
|
196
|
+
})
|
|
197
|
+
), I(
|
|
198
|
+
f,
|
|
199
|
+
(e, t) => {
|
|
200
|
+
$(e, t) || w();
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
immediate: !0
|
|
204
|
+
}
|
|
205
|
+
), I(() => u.options, w, {
|
|
206
|
+
deep: !0
|
|
207
|
+
}), I(
|
|
208
|
+
() => u.modelValue,
|
|
209
|
+
() => {
|
|
210
|
+
_ = !1, y();
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
deep: !0
|
|
214
|
+
}
|
|
215
|
+
), I(
|
|
216
|
+
() => x.value,
|
|
217
|
+
(e) => {
|
|
218
|
+
$(e, u.modelValue) || (k(xe, e), k(be, e));
|
|
219
|
+
}
|
|
220
|
+
);
|
|
221
|
+
const re = () => {
|
|
222
|
+
O.value || !N.value || w();
|
|
223
|
+
};
|
|
224
|
+
return ue(() => m.value = []), de(() => !Q(u.modelValue) && y()), X({
|
|
225
|
+
menuList: m,
|
|
226
|
+
menus: p,
|
|
227
|
+
checkedNodes: v,
|
|
228
|
+
handleKeyDown: G,
|
|
229
|
+
handleCheckChange: M,
|
|
230
|
+
getFlattedNodes: H,
|
|
231
|
+
/**
|
|
232
|
+
* @description get an array of currently selected node,(leafOnly) whether only return the leaf checked nodes, default is `false`
|
|
233
|
+
*/
|
|
234
|
+
getCheckedNodes: R,
|
|
235
|
+
/**
|
|
236
|
+
* @description clear checked nodes
|
|
237
|
+
*/
|
|
238
|
+
clearCheckedNodes: ae,
|
|
239
|
+
calculateCheckedValue: V,
|
|
240
|
+
scrollToExpandingNode: K,
|
|
241
|
+
loadLazyRootNodes: re
|
|
242
|
+
}), (e, t) => (L(), j("div", {
|
|
243
|
+
class: fe([J(d).b("panel"), J(d).is("bordered", T.border)]),
|
|
244
|
+
onKeydown: G
|
|
245
|
+
}, [
|
|
246
|
+
(L(!0), j(pe, null, ve(p.value, (l, a) => (L(), me(we, {
|
|
247
|
+
key: a,
|
|
248
|
+
ref_for: !0,
|
|
249
|
+
ref: (o) => m.value[a] = o,
|
|
250
|
+
index: a,
|
|
251
|
+
nodes: [...l],
|
|
252
|
+
"virtual-scroll": b.value,
|
|
253
|
+
"item-size": P.value,
|
|
254
|
+
height: q.value
|
|
255
|
+
}, {
|
|
256
|
+
empty: he(() => [
|
|
257
|
+
ge(e.$slots, "empty")
|
|
258
|
+
]),
|
|
259
|
+
_: 3
|
|
260
|
+
}, 8, ["index", "nodes", "virtual-scroll", "item-size", "height"]))), 128))
|
|
261
|
+
], 34));
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
export {
|
|
265
|
+
it as default
|
|
266
|
+
};
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { PropType } from 'vue';
|
|
2
|
+
import type { CascaderConfig, CascaderNodePathValue, CascaderOption, CascaderProps, CascaderValue, RenderLabel } from './types';
|
|
3
|
+
export interface CascaderCommonProps {
|
|
4
|
+
/**
|
|
5
|
+
* @description specify which key of node object is used as the node's value
|
|
6
|
+
*/
|
|
7
|
+
modelValue?: CascaderValue | null;
|
|
8
|
+
/**
|
|
9
|
+
* @description data of the options, the key of `value` and `label` can be customize by `CascaderProps`.
|
|
10
|
+
*/
|
|
11
|
+
options?: CascaderOption[];
|
|
12
|
+
/**
|
|
13
|
+
* @description configuration options, see the following `CascaderProps` table.
|
|
14
|
+
*/
|
|
15
|
+
props?: CascaderProps;
|
|
16
|
+
/**
|
|
17
|
+
* @description whether to enable virtual scrolling
|
|
18
|
+
*/
|
|
19
|
+
virtualScroll?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* @description node height for virtual scrolling
|
|
22
|
+
*/
|
|
23
|
+
itemSize?: number;
|
|
24
|
+
/**
|
|
25
|
+
* @description menu height for virtual scrolling
|
|
26
|
+
*/
|
|
27
|
+
height?: number;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* @description node height for virtual scrolling
|
|
31
|
+
*/
|
|
32
|
+
export declare const CASCADER_PANEL_ITEM_SIZE = 34;
|
|
33
|
+
/**
|
|
34
|
+
* @description menu height for virtual scrolling
|
|
35
|
+
*/
|
|
36
|
+
export declare const CASCADER_PANEL_HEIGHT = 204;
|
|
37
|
+
export declare const CommonProps: {
|
|
38
|
+
readonly modelValue: {
|
|
39
|
+
readonly type: PropType<import("@element-plus/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./types").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null) | (((new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./types").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null)) | null)[], unknown, unknown>>;
|
|
40
|
+
readonly required: false;
|
|
41
|
+
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
42
|
+
__epPropKey: true;
|
|
43
|
+
};
|
|
44
|
+
readonly options: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => CascaderOption[]) | (() => CascaderOption[]) | (((new (...args: any[]) => CascaderOption[]) | (() => CascaderOption[])) | null)[], unknown, unknown, () => CascaderOption[], boolean>;
|
|
45
|
+
readonly props: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => CascaderProps) | (() => CascaderProps) | (((new (...args: any[]) => CascaderProps) | (() => CascaderProps)) | null)[], unknown, unknown, () => CascaderProps, boolean>;
|
|
46
|
+
readonly virtualScroll: BooleanConstructor;
|
|
47
|
+
readonly itemSize: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 34, boolean>;
|
|
48
|
+
readonly height: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 204, boolean>;
|
|
49
|
+
};
|
|
50
|
+
export interface CascaderPanelProps extends CascaderCommonProps {
|
|
51
|
+
border?: boolean;
|
|
52
|
+
renderLabel?: RenderLabel;
|
|
53
|
+
}
|
|
54
|
+
export declare const DefaultProps: CascaderConfig;
|
|
55
|
+
/**
|
|
56
|
+
* @deprecated Removed after 3.0.0, Use `CascaderPanelProps` instead.
|
|
57
|
+
*/
|
|
58
|
+
export declare const cascaderPanelProps: {
|
|
59
|
+
border: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, boolean, boolean>;
|
|
60
|
+
renderLabel: {
|
|
61
|
+
readonly type: PropType<RenderLabel>;
|
|
62
|
+
readonly required: false;
|
|
63
|
+
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
64
|
+
__epPropKey: true;
|
|
65
|
+
};
|
|
66
|
+
modelValue: {
|
|
67
|
+
readonly type: PropType<import("@element-plus/utils").EpPropMergeType<(new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./types").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null) | (((new (...args: any[]) => string | number | Record<string, any> | CascaderNodePathValue | (import("./types").CascaderNodeValue | CascaderNodePathValue)[]) | (() => CascaderValue | null)) | null)[], unknown, unknown>>;
|
|
68
|
+
readonly required: false;
|
|
69
|
+
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
70
|
+
__epPropKey: true;
|
|
71
|
+
};
|
|
72
|
+
options: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => CascaderOption[]) | (() => CascaderOption[]) | (((new (...args: any[]) => CascaderOption[]) | (() => CascaderOption[])) | null)[], unknown, unknown, () => CascaderOption[], boolean>;
|
|
73
|
+
props: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => CascaderProps) | (() => CascaderProps) | (((new (...args: any[]) => CascaderProps) | (() => CascaderProps)) | null)[], unknown, unknown, () => CascaderProps, boolean>;
|
|
74
|
+
virtualScroll: BooleanConstructor;
|
|
75
|
+
itemSize: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 34, boolean>;
|
|
76
|
+
height: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 204, boolean>;
|
|
77
|
+
};
|
|
78
|
+
export declare const cascaderPanelEmits: {
|
|
79
|
+
"update:modelValue": (value: CascaderValue | undefined | null) => boolean;
|
|
80
|
+
change: (value: CascaderValue | undefined | null) => boolean;
|
|
81
|
+
close: () => boolean;
|
|
82
|
+
'expand-change': (value: CascaderNodePathValue) => CascaderNodePathValue;
|
|
83
|
+
};
|
|
84
|
+
export declare const useCascaderConfig: (props: {
|
|
85
|
+
props: CascaderProps;
|
|
86
|
+
}) => import("vue").ComputedRef<{
|
|
87
|
+
expandTrigger: import("./types").ExpandTrigger;
|
|
88
|
+
multiple: boolean;
|
|
89
|
+
checkStrictly: boolean;
|
|
90
|
+
emitPath: boolean;
|
|
91
|
+
lazy: boolean;
|
|
92
|
+
lazyLoad: import("./types").LazyLoad;
|
|
93
|
+
value: string;
|
|
94
|
+
label: string;
|
|
95
|
+
children: string;
|
|
96
|
+
disabled: string | import("./types").isDisabled;
|
|
97
|
+
leaf: string | import("./types").isLeaf;
|
|
98
|
+
hoverThreshold: number;
|
|
99
|
+
checkOnClickNode: boolean;
|
|
100
|
+
checkOnClickLeaf: boolean;
|
|
101
|
+
showPrefix: boolean;
|
|
102
|
+
}>;
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { computed as l } from "vue";
|
|
2
|
+
import { NOOP as a } from "@vue/shared";
|
|
3
|
+
import "lodash-unified";
|
|
4
|
+
import "@vueuse/core";
|
|
5
|
+
import { CHANGE_EVENT as c, UPDATE_MODEL_EVENT as i } from "../../constants/event.js";
|
|
6
|
+
import "@element-plus/icons-vue";
|
|
7
|
+
import { buildProps as o, definePropType as r } from "../../utils/vue/props/runtime.js";
|
|
8
|
+
const n = 34, p = 204, s = o({
|
|
9
|
+
/**
|
|
10
|
+
* @description specify which key of node object is used as the node's value
|
|
11
|
+
*/
|
|
12
|
+
modelValue: {
|
|
13
|
+
type: r([Number, String, Array, Object])
|
|
14
|
+
},
|
|
15
|
+
/**
|
|
16
|
+
* @description data of the options, the key of `value` and `label` can be customize by `CascaderProps`.
|
|
17
|
+
*/
|
|
18
|
+
options: {
|
|
19
|
+
type: r(Array),
|
|
20
|
+
default: () => []
|
|
21
|
+
},
|
|
22
|
+
/**
|
|
23
|
+
* @description configuration options, see the following `CascaderProps` table.
|
|
24
|
+
*/
|
|
25
|
+
props: {
|
|
26
|
+
type: r(Object),
|
|
27
|
+
default: () => ({})
|
|
28
|
+
},
|
|
29
|
+
/**
|
|
30
|
+
* @description whether to enable virtual scrolling
|
|
31
|
+
*/
|
|
32
|
+
virtualScroll: Boolean,
|
|
33
|
+
/**
|
|
34
|
+
* @description node height for virtual scrolling
|
|
35
|
+
*/
|
|
36
|
+
itemSize: {
|
|
37
|
+
type: Number,
|
|
38
|
+
default: n
|
|
39
|
+
},
|
|
40
|
+
/**
|
|
41
|
+
* @description menu height for virtual scrolling
|
|
42
|
+
*/
|
|
43
|
+
height: {
|
|
44
|
+
type: Number,
|
|
45
|
+
default: p
|
|
46
|
+
}
|
|
47
|
+
}), u = {
|
|
48
|
+
/**
|
|
49
|
+
* @description trigger mode of expanding options
|
|
50
|
+
*/
|
|
51
|
+
expandTrigger: "click",
|
|
52
|
+
/**
|
|
53
|
+
* @description whether multiple selection is enabled
|
|
54
|
+
*/
|
|
55
|
+
multiple: !1,
|
|
56
|
+
/**
|
|
57
|
+
* @description whether checked state of a node not affects its parent and child nodes
|
|
58
|
+
*/
|
|
59
|
+
checkStrictly: !1,
|
|
60
|
+
// whether all nodes can be selected
|
|
61
|
+
/**
|
|
62
|
+
* @description when checked nodes change, whether to emit an array of node's path, if false, only emit the value of node.
|
|
63
|
+
*/
|
|
64
|
+
emitPath: !0,
|
|
65
|
+
// whether to emit an array of all levels value in which node is located
|
|
66
|
+
/**
|
|
67
|
+
* @description whether to dynamic load child nodes, use with `lazyload` attribute
|
|
68
|
+
*/
|
|
69
|
+
lazy: !1,
|
|
70
|
+
/**
|
|
71
|
+
* @description method for loading child nodes data, only works when `lazy` is true
|
|
72
|
+
*/
|
|
73
|
+
lazyLoad: a,
|
|
74
|
+
/**
|
|
75
|
+
* @description specify which key of node object is used as the node's value
|
|
76
|
+
*/
|
|
77
|
+
value: "value",
|
|
78
|
+
/**
|
|
79
|
+
* @description specify which key of node object is used as the node's label
|
|
80
|
+
*/
|
|
81
|
+
label: "label",
|
|
82
|
+
/**
|
|
83
|
+
* @description specify which key of node object is used as the node's children
|
|
84
|
+
*/
|
|
85
|
+
children: "children",
|
|
86
|
+
/**
|
|
87
|
+
* @description specify which key of node object is used as the node's leaf
|
|
88
|
+
*/
|
|
89
|
+
leaf: "leaf",
|
|
90
|
+
/**
|
|
91
|
+
* @description specify which key of node object is used as the node's disabled
|
|
92
|
+
*/
|
|
93
|
+
disabled: "disabled",
|
|
94
|
+
/**
|
|
95
|
+
* @description hover threshold of expanding options
|
|
96
|
+
*/
|
|
97
|
+
hoverThreshold: 500,
|
|
98
|
+
/**
|
|
99
|
+
* @description whether to check or uncheck node when clicking on the node
|
|
100
|
+
*/
|
|
101
|
+
checkOnClickNode: !1,
|
|
102
|
+
/**
|
|
103
|
+
* @description whether to check or uncheck node when clicking on leaf node (last children).
|
|
104
|
+
*/
|
|
105
|
+
checkOnClickLeaf: !0,
|
|
106
|
+
/**
|
|
107
|
+
* @description whether to show the radio or checkbox prefix
|
|
108
|
+
*/
|
|
109
|
+
showPrefix: !0
|
|
110
|
+
}, b = o({
|
|
111
|
+
...s,
|
|
112
|
+
border: {
|
|
113
|
+
type: Boolean,
|
|
114
|
+
default: !0
|
|
115
|
+
},
|
|
116
|
+
renderLabel: {
|
|
117
|
+
type: Function
|
|
118
|
+
}
|
|
119
|
+
}), t = (e) => !0, C = {
|
|
120
|
+
[i]: t,
|
|
121
|
+
[c]: t,
|
|
122
|
+
close: () => !0,
|
|
123
|
+
"expand-change": (e) => e
|
|
124
|
+
}, A = (e) => l(() => ({
|
|
125
|
+
...u,
|
|
126
|
+
...e.props
|
|
127
|
+
}));
|
|
128
|
+
export {
|
|
129
|
+
p as CASCADER_PANEL_HEIGHT,
|
|
130
|
+
n as CASCADER_PANEL_ITEM_SIZE,
|
|
131
|
+
s as CommonProps,
|
|
132
|
+
u as DefaultProps,
|
|
133
|
+
C as cascaderPanelEmits,
|
|
134
|
+
b as cascaderPanelProps,
|
|
135
|
+
A as useCascaderConfig
|
|
136
|
+
};
|
|
@@ -1,4 +1,19 @@
|
|
|
1
1
|
import type { Plugin } from 'vue';
|
|
2
|
-
import
|
|
3
|
-
|
|
2
|
+
import _EpCascaderPanel from './EpCascaderPanel.vue';
|
|
3
|
+
/**
|
|
4
|
+
* cascader-panel 自持 barrel(vendor-batch-3 产出)。
|
|
5
|
+
*
|
|
6
|
+
* 面板本体不读取表单上下文;表单级 disabled / size 由外层 `EpCascader`
|
|
7
|
+
* 从本地表单中枢取得后经 props 传入,保证与 `EpForm` / `EpFormItem` 对齐。
|
|
8
|
+
*
|
|
9
|
+
* `CascaderNode` 以值形式再导出 `node.ts` 的 `Node` 类(上游同形),
|
|
10
|
+
* 因此与 `types.ts` 中的同名类型别名共用同一个标识符。
|
|
11
|
+
*
|
|
12
|
+
* 不导出 `ElCascaderPanel` 别名。
|
|
13
|
+
*/
|
|
14
|
+
export declare const EpCascaderPanel: typeof _EpCascaderPanel & Plugin;
|
|
4
15
|
export default EpCascaderPanel;
|
|
16
|
+
export { default as CascaderNode } from './node';
|
|
17
|
+
export * from './config';
|
|
18
|
+
export * from './instance';
|
|
19
|
+
export * from './types';
|
|
@@ -1,6 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { withInstall as r } from "../../utils/with-install.js";
|
|
2
|
+
import a from "./EpCascaderPanel.vue.js";
|
|
3
|
+
import "@vue/shared";
|
|
4
|
+
import "lodash-unified";
|
|
5
|
+
import "@vueuse/core";
|
|
6
|
+
import "@element-plus/icons-vue";
|
|
7
|
+
import "vue";
|
|
8
|
+
import { CASCADER_PANEL_HEIGHT as l, CASCADER_PANEL_ITEM_SIZE as C, CommonProps as P, DefaultProps as f, cascaderPanelEmits as _, cascaderPanelProps as d, useCascaderConfig as A } from "./config.js";
|
|
9
|
+
const c = r(
|
|
10
|
+
a,
|
|
11
|
+
"ep-cascader-panel"
|
|
12
|
+
);
|
|
4
13
|
export {
|
|
5
|
-
|
|
14
|
+
l as CASCADER_PANEL_HEIGHT,
|
|
15
|
+
C as CASCADER_PANEL_ITEM_SIZE,
|
|
16
|
+
P as CommonProps,
|
|
17
|
+
f as DefaultProps,
|
|
18
|
+
c as EpCascaderPanel,
|
|
19
|
+
_ as cascaderPanelEmits,
|
|
20
|
+
d as cascaderPanelProps,
|
|
21
|
+
c as default,
|
|
22
|
+
A as useCascaderConfig
|
|
6
23
|
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type EpCascaderMenu from './EpCascaderMenu.vue';
|
|
2
|
+
import type EpCascaderPanel from './EpCascaderPanel.vue';
|
|
3
|
+
export type CascaderMenuInstance = InstanceType<typeof EpCascaderMenu> & unknown;
|
|
4
|
+
export type CascaderPanelInstance = InstanceType<typeof EpCascaderPanel> & unknown;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PropType } from 'vue';
|
|
2
|
+
import type { CascaderNode } from './types';
|
|
3
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
4
|
+
node: {
|
|
5
|
+
type: PropType<CascaderNode>;
|
|
6
|
+
required: true;
|
|
7
|
+
};
|
|
8
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
9
|
+
node: {
|
|
10
|
+
type: PropType<CascaderNode>;
|
|
11
|
+
required: true;
|
|
12
|
+
};
|
|
13
|
+
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
14
|
+
export default _default;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { defineComponent as c, inject as s, createVNode as d, Comment as a } from "vue";
|
|
2
|
+
import { useNamespace as l } from "../../hooks/use-namespace/index.js";
|
|
3
|
+
import { isArray as u } from "@vue/shared";
|
|
4
|
+
import "lodash-unified";
|
|
5
|
+
import "@vueuse/core";
|
|
6
|
+
import "@element-plus/icons-vue";
|
|
7
|
+
import "../../hooks/use-size/index.js";
|
|
8
|
+
import "@popperjs/core";
|
|
9
|
+
import "../../hooks/use-z-index/index.js";
|
|
10
|
+
import "../../hooks/use-delayed-toggle/index.js";
|
|
11
|
+
import "../../hooks/use-aria/index.js";
|
|
12
|
+
import "../../hooks/use-model-toggle/index.js";
|
|
13
|
+
import "../../hooks/use-empty-values/index.js";
|
|
14
|
+
import { CASCADER_PANEL_INJECTION_KEY as C } from "./types.js";
|
|
15
|
+
function N(t) {
|
|
16
|
+
return !!(u(t) ? t.every(({
|
|
17
|
+
type: e
|
|
18
|
+
}) => e === a) : (t == null ? void 0 : t.type) === a);
|
|
19
|
+
}
|
|
20
|
+
const J = /* @__PURE__ */ c({
|
|
21
|
+
name: "EpCascaderNodeContent",
|
|
22
|
+
props: {
|
|
23
|
+
node: {
|
|
24
|
+
type: Object,
|
|
25
|
+
required: !0
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
setup(t) {
|
|
29
|
+
const e = l("cascader-node"), {
|
|
30
|
+
renderLabelFn: r
|
|
31
|
+
} = s(C), {
|
|
32
|
+
node: o
|
|
33
|
+
} = t, {
|
|
34
|
+
data: n,
|
|
35
|
+
label: p
|
|
36
|
+
} = o, i = () => {
|
|
37
|
+
const m = r == null ? void 0 : r({
|
|
38
|
+
node: o,
|
|
39
|
+
data: n
|
|
40
|
+
});
|
|
41
|
+
return N(m) ? p : m ?? p;
|
|
42
|
+
};
|
|
43
|
+
return () => d("span", {
|
|
44
|
+
class: e.e("label")
|
|
45
|
+
}, [i()]);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
export {
|
|
49
|
+
J as default
|
|
50
|
+
};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { CascaderConfig, CascaderNodePathValue, CascaderNodeValue, CascaderOption } from './types';
|
|
2
|
+
type ChildrenData = CascaderOption[] | undefined;
|
|
3
|
+
declare class Node {
|
|
4
|
+
readonly data: CascaderOption;
|
|
5
|
+
readonly config: CascaderConfig;
|
|
6
|
+
readonly parent?: Node | undefined;
|
|
7
|
+
readonly root: boolean;
|
|
8
|
+
readonly uid: number;
|
|
9
|
+
readonly level: number;
|
|
10
|
+
readonly value: CascaderNodeValue;
|
|
11
|
+
readonly label: string;
|
|
12
|
+
readonly pathNodes: Node[];
|
|
13
|
+
readonly pathValues: CascaderNodePathValue;
|
|
14
|
+
readonly pathLabels: string[];
|
|
15
|
+
childrenData: ChildrenData;
|
|
16
|
+
children: Node[];
|
|
17
|
+
text: string;
|
|
18
|
+
loaded: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Is it checked
|
|
21
|
+
*
|
|
22
|
+
* @default false
|
|
23
|
+
*/
|
|
24
|
+
checked: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Used to indicate the intermediate state of unchecked and fully checked child nodes
|
|
27
|
+
*
|
|
28
|
+
* @default false
|
|
29
|
+
*/
|
|
30
|
+
indeterminate: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Loading Status
|
|
33
|
+
*
|
|
34
|
+
* @default false
|
|
35
|
+
*/
|
|
36
|
+
loading: boolean;
|
|
37
|
+
constructor(data: CascaderOption, config: CascaderConfig, parent?: Node | undefined, root?: boolean);
|
|
38
|
+
get isDisabled(): boolean;
|
|
39
|
+
get isLeaf(): boolean;
|
|
40
|
+
get valueByOption(): CascaderNodeValue | CascaderNodePathValue;
|
|
41
|
+
appendChild(childData: CascaderOption): Node;
|
|
42
|
+
calcText(allLevels: boolean, separator: string): string;
|
|
43
|
+
broadcast(checked: boolean): void;
|
|
44
|
+
emit(): void;
|
|
45
|
+
onParentCheck(checked: boolean): void;
|
|
46
|
+
onChildCheck(): void;
|
|
47
|
+
setCheckState(checked: boolean): void;
|
|
48
|
+
doCheck(checked: boolean): void;
|
|
49
|
+
}
|
|
50
|
+
export default Node;
|