@veltra/desktop 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rolldown/runtime.js +27 -0
- package/dist/components/action/action-group.js +7 -0
- package/dist/components/action/action-group.js.map +1 -0
- package/dist/components/action/action-group.vue.d.ts +23 -0
- package/dist/components/action/action-group.vue_vue_type_script_setup_true_lang.js +65 -0
- package/dist/components/action/action-group.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/action/action.js +111 -0
- package/dist/components/action/action.js.map +1 -0
- package/dist/components/action/action.vue.d.ts +34 -0
- package/dist/components/action/di.js +6 -0
- package/dist/components/action/di.js.map +1 -0
- package/dist/components/action/index.d.ts +2 -0
- package/dist/components/action/style.d.ts +1 -0
- package/dist/components/action/style.js +1 -0
- package/dist/components/action/style2.css +31 -0
- package/dist/components/auto-complete/auto-complete.js +211 -0
- package/dist/components/auto-complete/auto-complete.js.map +1 -0
- package/dist/components/auto-complete/auto-complete.vue.d.ts +41 -0
- package/dist/components/auto-complete/index.d.ts +1 -0
- package/dist/components/auto-complete/style.d.ts +1 -0
- package/dist/components/auto-complete/style.js +3 -0
- package/dist/components/auto-complete/style2.css +157 -0
- package/dist/components/auto-complete/use-keyboard.js +83 -0
- package/dist/components/auto-complete/use-keyboard.js.map +1 -0
- package/dist/components/auto-complete/use-suggestions.js +41 -0
- package/dist/components/auto-complete/use-suggestions.js.map +1 -0
- package/dist/components/badge/badge.js +65 -0
- package/dist/components/badge/badge.js.map +1 -0
- package/dist/components/badge/badge.vue.d.ts +21 -0
- package/dist/components/badge/index.d.ts +1 -0
- package/dist/components/badge/style.d.ts +1 -0
- package/dist/components/badge/style.js +1 -0
- package/dist/components/badge/style2.css +80 -0
- package/dist/components/batch-edit/batch-edit-form.js +99 -0
- package/dist/components/batch-edit/batch-edit-form.js.map +1 -0
- package/dist/components/batch-edit/batch-edit-list.js +127 -0
- package/dist/components/batch-edit/batch-edit-list.js.map +1 -0
- package/dist/components/batch-edit/batch-edit.js +138 -0
- package/dist/components/batch-edit/batch-edit.js.map +1 -0
- package/dist/components/batch-edit/batch-edit.vue.d.ts +44 -0
- package/dist/components/batch-edit/di.js +6 -0
- package/dist/components/batch-edit/di.js.map +1 -0
- package/dist/components/batch-edit/helper.d.ts +11 -0
- package/dist/components/batch-edit/helper.js +13 -0
- package/dist/components/batch-edit/helper.js.map +1 -0
- package/dist/components/batch-edit/index.d.ts +2 -0
- package/dist/components/batch-edit/style.d.ts +1 -0
- package/dist/components/batch-edit/style.js +3 -0
- package/dist/components/batch-edit/style2.css +65 -0
- package/dist/components/batch-edit/use-edit.js +193 -0
- package/dist/components/batch-edit/use-edit.js.map +1 -0
- package/dist/components/button/button-group.js +32 -0
- package/dist/components/button/button-group.js.map +1 -0
- package/dist/components/button/button-group.vue.d.ts +20 -0
- package/dist/components/button/button.js +106 -0
- package/dist/components/button/button.js.map +1 -0
- package/dist/components/button/button.vue.d.ts +28 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/button/style.d.ts +1 -0
- package/dist/components/button/style.js +2 -0
- package/dist/components/button/style2.css +471 -0
- package/dist/components/calendar/calendar.js +32 -0
- package/dist/components/calendar/calendar.js.map +1 -0
- package/dist/components/calendar/calendar.vue.d.ts +18 -0
- package/dist/components/calendar/index.d.ts +1 -0
- package/dist/components/calendar/style.d.ts +1 -0
- package/dist/components/calendar/style.js +1 -0
- package/dist/components/calendar/style2.css +46 -0
- package/dist/components/calendar/utils.js +109 -0
- package/dist/components/calendar/utils.js.map +1 -0
- package/dist/components/card/card-action.js +27 -0
- package/dist/components/card/card-action.js.map +1 -0
- package/dist/components/card/card-action.vue.d.ts +19 -0
- package/dist/components/card/card-content.js +30 -0
- package/dist/components/card/card-content.js.map +1 -0
- package/dist/components/card/card-content.vue.d.ts +19 -0
- package/dist/components/card/card-cover.js +38 -0
- package/dist/components/card/card-cover.js.map +1 -0
- package/dist/components/card/card-cover.vue.d.ts +9 -0
- package/dist/components/card/card-header.js +24 -0
- package/dist/components/card/card-header.js.map +1 -0
- package/dist/components/card/card-header.vue.d.ts +18 -0
- package/dist/components/card/card.js +43 -0
- package/dist/components/card/card.js.map +1 -0
- package/dist/components/card/card.vue.d.ts +19 -0
- package/dist/components/card/di.js +6 -0
- package/dist/components/card/di.js.map +1 -0
- package/dist/components/card/index.d.ts +5 -0
- package/dist/components/card/style.d.ts +1 -0
- package/dist/components/card/style.js +1 -0
- package/dist/components/card/style2.css +106 -0
- package/dist/components/cascade/cascade-panel-item.js +85 -0
- package/dist/components/cascade/cascade-panel-item.js.map +1 -0
- package/dist/components/cascade/cascade.js +312 -0
- package/dist/components/cascade/cascade.js.map +1 -0
- package/dist/components/cascade/cascade.vue.d.ts +29 -0
- package/dist/components/cascade/di.js +6 -0
- package/dist/components/cascade/di.js.map +1 -0
- package/dist/components/cascade/index.d.ts +1 -0
- package/dist/components/cascade/node.js +19 -0
- package/dist/components/cascade/node.js.map +1 -0
- package/dist/components/cascade/style.d.ts +1 -0
- package/dist/components/cascade/style.js +1 -0
- package/dist/components/cascade/style2.css +147 -0
- package/dist/components/cascade/use-check.js +72 -0
- package/dist/components/cascade/use-check.js.map +1 -0
- package/dist/components/cascade/use-data-map.js +21 -0
- package/dist/components/cascade/use-data-map.js.map +1 -0
- package/dist/components/cascade/use-select.js +101 -0
- package/dist/components/cascade/use-select.js.map +1 -0
- package/dist/components/check-tag/check-tag.js +33 -0
- package/dist/components/check-tag/check-tag.js.map +1 -0
- package/dist/components/check-tag/check-tag.vue.d.ts +23 -0
- package/dist/components/check-tag/index.d.ts +1 -0
- package/dist/components/check-tag/style.d.ts +1 -0
- package/dist/components/check-tag/style.js +1 -0
- package/dist/components/check-tag/style2.css +39 -0
- package/dist/components/checkbox/checkbox-button.js +78 -0
- package/dist/components/checkbox/checkbox-button.js.map +1 -0
- package/dist/components/checkbox/checkbox-button.vue.d.ts +37 -0
- package/dist/components/checkbox/checkbox.js +91 -0
- package/dist/components/checkbox/checkbox.js.map +1 -0
- package/dist/components/checkbox/checkbox.vue.d.ts +35 -0
- package/dist/components/checkbox/index.d.ts +2 -0
- package/dist/components/checkbox/style.d.ts +1 -0
- package/dist/components/checkbox/style.js +2 -0
- package/dist/components/checkbox/style2.css +187 -0
- package/dist/components/checkbox-group/checkbox-group.js +110 -0
- package/dist/components/checkbox-group/checkbox-group.js.map +1 -0
- package/dist/components/checkbox-group/checkbox-group.vue.d.ts +25 -0
- package/dist/components/checkbox-group/index.d.ts +1 -0
- package/dist/components/checkbox-group/style.d.ts +1 -0
- package/dist/components/checkbox-group/style.js +1 -0
- package/dist/components/checkbox-group/style2.css +64 -0
- package/dist/components/code-editor/code-editor.js +121 -0
- package/dist/components/code-editor/code-editor.js.map +1 -0
- package/dist/components/code-editor/code-editor.vue.d.ts +21 -0
- package/dist/components/code-editor/index.d.ts +1 -0
- package/dist/components/code-editor/style.d.ts +1 -0
- package/dist/components/code-editor/style.js +1 -0
- package/dist/components/code-editor/style2.css +49 -0
- package/dist/components/condition-editor/condition-editor.js +18 -0
- package/dist/components/condition-editor/condition-editor.js.map +1 -0
- package/dist/components/condition-editor/condition-editor.vue.d.ts +9 -0
- package/dist/components/condition-editor/index.d.ts +1 -0
- package/dist/components/condition-editor/style.d.ts +1 -0
- package/dist/components/condition-editor/style.js +1 -0
- package/dist/components/condition-editor/style2.css +17 -0
- package/dist/components/context-menu/api.d.ts +8 -0
- package/dist/components/context-menu/api.js +18 -0
- package/dist/components/context-menu/api.js.map +1 -0
- package/dist/components/context-menu/context-menu-item.js +60 -0
- package/dist/components/context-menu/context-menu-item.js.map +1 -0
- package/dist/components/context-menu/context-menu.js +95 -0
- package/dist/components/context-menu/context-menu.js.map +1 -0
- package/dist/components/context-menu/di.js +6 -0
- package/dist/components/context-menu/di.js.map +1 -0
- package/dist/components/context-menu/index.d.ts +1 -0
- package/dist/components/context-menu/style.d.ts +1 -0
- package/dist/components/context-menu/style.js +3 -0
- package/dist/components/context-menu/style2.css +50 -0
- package/dist/components/date-panel/date-panel.js +36 -0
- package/dist/components/date-panel/date-panel.js.map +1 -0
- package/dist/components/date-panel/date-panel.vue.d.ts +20 -0
- package/dist/components/date-panel/di.js +6 -0
- package/dist/components/date-panel/di.js.map +1 -0
- package/dist/components/date-panel/headers/day.js +53 -0
- package/dist/components/date-panel/headers/day.js.map +1 -0
- package/dist/components/date-panel/headers/month.js +38 -0
- package/dist/components/date-panel/headers/month.js.map +1 -0
- package/dist/components/date-panel/headers/year.js +41 -0
- package/dist/components/date-panel/headers/year.js.map +1 -0
- package/dist/components/date-panel/index.d.ts +1 -0
- package/dist/components/date-panel/panels/day.js +78 -0
- package/dist/components/date-panel/panels/day.js.map +1 -0
- package/dist/components/date-panel/panels/month.js +65 -0
- package/dist/components/date-panel/panels/month.js.map +1 -0
- package/dist/components/date-panel/panels/year.js +64 -0
- package/dist/components/date-panel/panels/year.js.map +1 -0
- package/dist/components/date-panel/style.d.ts +1 -0
- package/dist/components/date-panel/style.js +1 -0
- package/dist/components/date-panel/style2.css +179 -0
- package/dist/components/date-panel/use-date-select.js +84 -0
- package/dist/components/date-panel/use-date-select.js.map +1 -0
- package/dist/components/date-panel/use-panel-date.js +43 -0
- package/dist/components/date-panel/use-panel-date.js.map +1 -0
- package/dist/components/date-panel/use-panel.js +45 -0
- package/dist/components/date-panel/use-panel.js.map +1 -0
- package/dist/components/date-picker/date-picker.js +135 -0
- package/dist/components/date-picker/date-picker.js.map +1 -0
- package/dist/components/date-picker/date-picker.vue.d.ts +19 -0
- package/dist/components/date-picker/index.d.ts +1 -0
- package/dist/components/date-picker/style.d.ts +1 -0
- package/dist/components/date-picker/style.js +1 -0
- package/dist/components/date-picker/style2.css +29 -0
- package/dist/components/date-range-picker/date-range-picker.js +168 -0
- package/dist/components/date-range-picker/date-range-picker.js.map +1 -0
- package/dist/components/date-range-picker/date-range-picker.vue.d.ts +19 -0
- package/dist/components/date-range-picker/index.d.ts +1 -0
- package/dist/components/date-range-picker/style.d.ts +1 -0
- package/dist/components/date-range-picker/style.js +1 -0
- package/dist/components/date-range-picker/style2.css +95 -0
- package/dist/components/dialog/di.js +6 -0
- package/dist/components/dialog/di.js.map +1 -0
- package/dist/components/dialog/dialog.js +227 -0
- package/dist/components/dialog/dialog.js.map +1 -0
- package/dist/components/dialog/dialog.vue.d.ts +42 -0
- package/dist/components/dialog/index.d.ts +1 -0
- package/dist/components/dialog/style.d.ts +1 -0
- package/dist/components/dialog/style.js +3 -0
- package/dist/components/dialog/style2.css +150 -0
- package/dist/components/dialog/use-maximum.js +34 -0
- package/dist/components/dialog/use-maximum.js.map +1 -0
- package/dist/components/drawer/drawer.js +91 -0
- package/dist/components/drawer/drawer.js.map +1 -0
- package/dist/components/drawer/drawer.vue.d.ts +36 -0
- package/dist/components/drawer/index.d.ts +1 -0
- package/dist/components/drawer/style.d.ts +1 -0
- package/dist/components/drawer/style.js +2 -0
- package/dist/components/drawer/style2.css +153 -0
- package/dist/components/dropdown/dropdown.js +163 -0
- package/dist/components/dropdown/dropdown.js.map +1 -0
- package/dist/components/dropdown/dropdown.vue.d.ts +29 -0
- package/dist/components/dropdown/index.d.ts +1 -0
- package/dist/components/dropdown/style.d.ts +1 -0
- package/dist/components/dropdown/style.js +2 -0
- package/dist/components/dropdown/style2.css +26 -0
- package/dist/components/empty/empty.js +26 -0
- package/dist/components/empty/empty.js.map +1 -0
- package/dist/components/empty/empty.vue.d.ts +12 -0
- package/dist/components/empty/index.d.ts +1 -0
- package/dist/components/empty/style.d.ts +1 -0
- package/dist/components/empty/style.js +1 -0
- package/dist/components/empty/style2.css +23 -0
- package/dist/components/expression-editor/components/variable-picker.js +233 -0
- package/dist/components/expression-editor/components/variable-picker.js.map +1 -0
- package/dist/components/expression-editor/constants.js +9 -0
- package/dist/components/expression-editor/constants.js.map +1 -0
- package/dist/components/expression-editor/di.js +24 -0
- package/dist/components/expression-editor/di.js.map +1 -0
- package/dist/components/expression-editor/expression-editor.js +167 -0
- package/dist/components/expression-editor/expression-editor.js.map +1 -0
- package/dist/components/expression-editor/expression-editor.vue.d.ts +15 -0
- package/dist/components/expression-editor/index.d.ts +1 -0
- package/dist/components/expression-editor/internal/editor-runtime/create-runtime.js +47 -0
- package/dist/components/expression-editor/internal/editor-runtime/create-runtime.js.map +1 -0
- package/dist/components/expression-editor/internal/editor-runtime/model-sync.js +49 -0
- package/dist/components/expression-editor/internal/editor-runtime/model-sync.js.map +1 -0
- package/dist/components/expression-editor/internal/features/commands/register-command-packs.js +215 -0
- package/dist/components/expression-editor/internal/features/commands/register-command-packs.js.map +1 -0
- package/dist/components/expression-editor/internal/features/drag-drop/drag-drop-service.js +33 -0
- package/dist/components/expression-editor/internal/features/drag-drop/drag-drop-service.js.map +1 -0
- package/dist/components/expression-editor/internal/features/insertion/insertion-service.js +33 -0
- package/dist/components/expression-editor/internal/features/insertion/insertion-service.js.map +1 -0
- package/dist/components/expression-editor/nodes/variable-node.js +94 -0
- package/dist/components/expression-editor/nodes/variable-node.js.map +1 -0
- package/dist/components/expression-editor/parser.js +32 -0
- package/dist/components/expression-editor/parser.js.map +1 -0
- package/dist/components/expression-editor/plain-text.js +19 -0
- package/dist/components/expression-editor/plain-text.js.map +1 -0
- package/dist/components/expression-editor/style.d.ts +1 -0
- package/dist/components/expression-editor/style.js +1 -0
- package/dist/components/expression-editor/style2.css +359 -0
- package/dist/components/expression-editor/use-context.js +69 -0
- package/dist/components/expression-editor/use-context.js.map +1 -0
- package/dist/components/expression-editor/use-decorators.js +27 -0
- package/dist/components/expression-editor/use-decorators.js.map +1 -0
- package/dist/components/expression-editor/use-expression-drag-drop.js +275 -0
- package/dist/components/expression-editor/use-expression-drag-drop.js.map +1 -0
- package/dist/components/file-picker/file-picker.js +87 -0
- package/dist/components/file-picker/file-picker.js.map +1 -0
- package/dist/components/file-picker/file-picker.vue.d.ts +28 -0
- package/dist/components/file-picker/helper.js +20 -0
- package/dist/components/file-picker/helper.js.map +1 -0
- package/dist/components/file-picker/index.d.ts +1 -0
- package/dist/components/file-picker/style.d.ts +1 -0
- package/dist/components/file-picker/style.js +1 -0
- package/dist/components/file-picker/style2.css +24 -0
- package/dist/components/float-button/float-button.js +95 -0
- package/dist/components/float-button/float-button.js.map +1 -0
- package/dist/components/float-button/float-button.vue.d.ts +13 -0
- package/dist/components/float-button/index.d.ts +1 -0
- package/dist/components/float-button/style.d.ts +1 -0
- package/dist/components/float-button/style.js +1 -0
- package/dist/components/float-button/style2.css +48 -0
- package/dist/components/form/dynamic-form-model.d.ts +71 -0
- package/dist/components/form/dynamic-form-model.js +165 -0
- package/dist/components/form/dynamic-form-model.js.map +1 -0
- package/dist/components/form/form-model.d.ts +73 -0
- package/dist/components/form/form-model.js +164 -0
- package/dist/components/form/form-model.js.map +1 -0
- package/dist/components/form/form.js +7 -0
- package/dist/components/form/form.js.map +1 -0
- package/dist/components/form/form.vue.d.ts +27 -0
- package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js +83 -0
- package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/form/helper.d.ts +11 -0
- package/dist/components/form/helper.js +14 -0
- package/dist/components/form/helper.js.map +1 -0
- package/dist/components/form/index.d.ts +4 -0
- package/dist/components/form/style.d.ts +1 -0
- package/dist/components/form/style.js +1 -0
- package/dist/components/form/style2.css +35 -0
- package/dist/components/form/use-node-interceptor.js +57 -0
- package/dist/components/form/use-node-interceptor.js.map +1 -0
- package/dist/components/form-item/form-item.js +7 -0
- package/dist/components/form-item/form-item.js.map +1 -0
- package/dist/components/form-item/form-item.vue.d.ts +21 -0
- package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js +96 -0
- package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/form-item/helper.js +8 -0
- package/dist/components/form-item/helper.js.map +1 -0
- package/dist/components/form-item/index.d.ts +1 -0
- package/dist/components/form-item/style.d.ts +1 -0
- package/dist/components/form-item/style.js +1 -0
- package/dist/components/form-item/style2.css +133 -0
- package/dist/components/gantt-chart/gantt-chart.js +18 -0
- package/dist/components/gantt-chart/gantt-chart.js.map +1 -0
- package/dist/components/gantt-chart/gantt-chart.vue.d.ts +9 -0
- package/dist/components/gantt-chart/index.d.ts +1 -0
- package/dist/components/gantt-chart/style.d.ts +1 -0
- package/dist/components/gantt-chart/style.js +1 -0
- package/dist/components/gantt-chart/style2.css +17 -0
- package/dist/components/grid/breakpoint.js +46 -0
- package/dist/components/grid/breakpoint.js.map +1 -0
- package/dist/components/grid/di.js +6 -0
- package/dist/components/grid/di.js.map +1 -0
- package/dist/components/grid/grid-item.js +48 -0
- package/dist/components/grid/grid-item.js.map +1 -0
- package/dist/components/grid/grid-item.vue.d.ts +21 -0
- package/dist/components/grid/grid.js +75 -0
- package/dist/components/grid/grid.js.map +1 -0
- package/dist/components/grid/grid.vue.d.ts +27 -0
- package/dist/components/grid/index.d.ts +2 -0
- package/dist/components/grid/style.d.ts +1 -0
- package/dist/components/grid/style.js +1 -0
- package/dist/components/grid/style2.css +20 -0
- package/dist/components/grid/use-responsive.js +46 -0
- package/dist/components/grid/use-responsive.js.map +1 -0
- package/dist/components/grid-input/grid-input.js +104 -0
- package/dist/components/grid-input/grid-input.js.map +1 -0
- package/dist/components/grid-input/grid-input.vue.d.ts +20 -0
- package/dist/components/grid-input/index.d.ts +1 -0
- package/dist/components/grid-input/style.d.ts +1 -0
- package/dist/components/grid-input/style.js +1 -0
- package/dist/components/grid-input/style2.css +140 -0
- package/dist/components/group-input/group-input.js +133 -0
- package/dist/components/group-input/group-input.js.map +1 -0
- package/dist/components/group-input/group-input.vue.d.ts +27 -0
- package/dist/components/group-input/index.d.ts +1 -0
- package/dist/components/group-input/style.d.ts +1 -0
- package/dist/components/group-input/style.js +1 -0
- package/dist/components/group-input/style2.css +55 -0
- package/dist/components/group-input/use-group-items.js +44 -0
- package/dist/components/group-input/use-group-items.js.map +1 -0
- package/dist/components/icon/icon.js +25 -0
- package/dist/components/icon/icon.js.map +1 -0
- package/dist/components/icon/icon.vue.d.ts +19 -0
- package/dist/components/icon/index.d.ts +1 -0
- package/dist/components/icon/style.d.ts +1 -0
- package/dist/components/icon/style.js +1 -0
- package/dist/components/icon/style2.css +48 -0
- package/dist/components/index.d.ts +90 -0
- package/dist/components/input/index.d.ts +1 -0
- package/dist/components/input/input.js +7 -0
- package/dist/components/input/input.js.map +1 -0
- package/dist/components/input/input.vue.d.ts +51 -0
- package/dist/components/input/input.vue_vue_type_script_setup_true_lang.js +172 -0
- package/dist/components/input/input.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/input/style.d.ts +1 -0
- package/dist/components/input/style.js +2 -0
- package/dist/components/input/style2.css +115 -0
- package/dist/components/layout/di.js +6 -0
- package/dist/components/layout/di.js.map +1 -0
- package/dist/components/layout/index.d.ts +1 -0
- package/dist/components/layout/layout-resizer.js +76 -0
- package/dist/components/layout/layout-resizer.js.map +1 -0
- package/dist/components/layout/layout.js +119 -0
- package/dist/components/layout/layout.js.map +1 -0
- package/dist/components/layout/layout.vue.d.ts +21 -0
- package/dist/components/layout/style.d.ts +1 -0
- package/dist/components/layout/style.js +1 -0
- package/dist/components/layout/style2.css +34 -0
- package/dist/components/list/index.d.ts +2 -0
- package/dist/components/list/list-item.js +17 -0
- package/dist/components/list/list-item.js.map +1 -0
- package/dist/components/list/list-item.vue.d.ts +18 -0
- package/dist/components/list/list.js +35 -0
- package/dist/components/list/list.js.map +1 -0
- package/dist/components/list/list.vue.d.ts +22 -0
- package/dist/components/list/style.d.ts +1 -0
- package/dist/components/list/style.js +1 -0
- package/dist/components/list/style2.css +35 -0
- package/dist/components/loading/directive.d.ts +7 -0
- package/dist/components/loading/directive.js +28 -0
- package/dist/components/loading/directive.js.map +1 -0
- package/dist/components/loading/index.d.ts +2 -0
- package/dist/components/loading/loading.js +37 -0
- package/dist/components/loading/loading.js.map +1 -0
- package/dist/components/loading/loading.vue.d.ts +11 -0
- package/dist/components/loading/style.d.ts +1 -0
- package/dist/components/loading/style.js +2 -0
- package/dist/components/loading/style2.css +228 -0
- package/dist/components/menu/di.js +6 -0
- package/dist/components/menu/di.js.map +1 -0
- package/dist/components/menu/helper.js +8 -0
- package/dist/components/menu/helper.js.map +1 -0
- package/dist/components/menu/index.d.ts +3 -0
- package/dist/components/menu/menu-icon.js +25 -0
- package/dist/components/menu/menu-icon.js.map +1 -0
- package/dist/components/menu/menu-item-collapsed.js +73 -0
- package/dist/components/menu/menu-item-collapsed.js.map +1 -0
- package/dist/components/menu/menu-item.js +43 -0
- package/dist/components/menu/menu-item.js.map +1 -0
- package/dist/components/menu/menu-item.vue.d.ts +13 -0
- package/dist/components/menu/menu-sub-collapsed.js +81 -0
- package/dist/components/menu/menu-sub-collapsed.js.map +1 -0
- package/dist/components/menu/menu-sub.js +101 -0
- package/dist/components/menu/menu-sub.js.map +1 -0
- package/dist/components/menu/menu-sub.vue.d.ts +14 -0
- package/dist/components/menu/menu.js +96 -0
- package/dist/components/menu/menu.js.map +1 -0
- package/dist/components/menu/menu.vue.d.ts +16 -0
- package/dist/components/menu/style.d.ts +1 -0
- package/dist/components/menu/style.js +1 -0
- package/dist/components/menu/style2.css +432 -0
- package/dist/components/menu/use-menu-item.js +35 -0
- package/dist/components/menu/use-menu-item.js.map +1 -0
- package/dist/components/menu/use-menu-transition.js +71 -0
- package/dist/components/menu/use-menu-transition.js.map +1 -0
- package/dist/components/menu/walk-menu-path.js +16 -0
- package/dist/components/menu/walk-menu-path.js.map +1 -0
- package/dist/components/message/helper.js +23 -0
- package/dist/components/message/helper.js.map +1 -0
- package/dist/components/message/index.d.ts +2 -0
- package/dist/components/message/message-box.js +38 -0
- package/dist/components/message/message-box.js.map +1 -0
- package/dist/components/message/message.d.ts +7 -0
- package/dist/components/message/message.js +88 -0
- package/dist/components/message/message.js.map +1 -0
- package/dist/components/message/message.vue.d.ts +16 -0
- package/dist/components/message/message2.js +105 -0
- package/dist/components/message/message2.js.map +1 -0
- package/dist/components/message/style.d.ts +1 -0
- package/dist/components/message/style.js +1 -0
- package/dist/components/message/style2.css +134 -0
- package/dist/components/message-confirm/index.d.ts +2 -0
- package/dist/components/message-confirm/message-confirm.d.ts +10 -0
- package/dist/components/message-confirm/message-confirm.js +71 -0
- package/dist/components/message-confirm/message-confirm.js.map +1 -0
- package/dist/components/message-confirm/message-confirm.vue.d.ts +16 -0
- package/dist/components/message-confirm/message-confirm2.js +34 -0
- package/dist/components/message-confirm/message-confirm2.js.map +1 -0
- package/dist/components/message-confirm/style.d.ts +1 -0
- package/dist/components/message-confirm/style.js +1 -0
- package/dist/components/message-confirm/style2.css +81 -0
- package/dist/components/multi-select/di.js +6 -0
- package/dist/components/multi-select/di.js.map +1 -0
- package/dist/components/multi-select/index.d.ts +1 -0
- package/dist/components/multi-select/multi-select-option.js +67 -0
- package/dist/components/multi-select/multi-select-option.js.map +1 -0
- package/dist/components/multi-select/multi-select.js +453 -0
- package/dist/components/multi-select/multi-select.js.map +1 -0
- package/dist/components/multi-select/multi-select.vue.d.ts +49 -0
- package/dist/components/multi-select/style.d.ts +1 -0
- package/dist/components/multi-select/style.js +3 -0
- package/dist/components/multi-select/style2.css +197 -0
- package/dist/components/multi-tree-select/index.d.ts +1 -0
- package/dist/components/multi-tree-select/multi-tree-select.js +332 -0
- package/dist/components/multi-tree-select/multi-tree-select.js.map +1 -0
- package/dist/components/multi-tree-select/multi-tree-select.vue.d.ts +45 -0
- package/dist/components/multi-tree-select/style.d.ts +1 -0
- package/dist/components/multi-tree-select/style.js +2 -0
- package/dist/components/multi-tree-select/style2.css +146 -0
- package/dist/components/node-render/index.d.ts +1 -0
- package/dist/components/node-render/node-render.d.ts +9 -0
- package/dist/components/node-render/node-render.js +21 -0
- package/dist/components/node-render/node-render.js.map +1 -0
- package/dist/components/node-render/style.d.ts +1 -0
- package/dist/components/node-render/style.js +1 -0
- package/dist/components/node-render/style2.css +17 -0
- package/dist/components/notification/index.d.ts +8 -0
- package/dist/components/notification/index.js +140 -0
- package/dist/components/notification/index.js.map +1 -0
- package/dist/components/notification/notification.js +133 -0
- package/dist/components/notification/notification.js.map +1 -0
- package/dist/components/notification/notification.vue.d.ts +16 -0
- package/dist/components/notification/style.d.ts +1 -0
- package/dist/components/notification/style.js +1 -0
- package/dist/components/notification/style2.css +167 -0
- package/dist/components/number/index.d.ts +1 -0
- package/dist/components/number/number.js +48 -0
- package/dist/components/number/number.js.map +1 -0
- package/dist/components/number/number.vue.d.ts +12 -0
- package/dist/components/number/style.d.ts +1 -0
- package/dist/components/number/style.js +1 -0
- package/dist/components/number/style2.css +17 -0
- package/dist/components/number-input/index.d.ts +1 -0
- package/dist/components/number-input/number-input.js +313 -0
- package/dist/components/number-input/number-input.js.map +1 -0
- package/dist/components/number-input/number-input.vue.d.ts +37 -0
- package/dist/components/number-input/style.d.ts +1 -0
- package/dist/components/number-input/style.js +2 -0
- package/dist/components/number-input/style2.css +45 -0
- package/dist/components/number-range-input/index.d.ts +1 -0
- package/dist/components/number-range-input/number-range-input.js +227 -0
- package/dist/components/number-range-input/number-range-input.js.map +1 -0
- package/dist/components/number-range-input/number-range-input.vue.d.ts +37 -0
- package/dist/components/number-range-input/style.d.ts +1 -0
- package/dist/components/number-range-input/style.js +1 -0
- package/dist/components/number-range-input/style2.css +27 -0
- package/dist/components/paginator/index.d.ts +1 -0
- package/dist/components/paginator/paginator.js +209 -0
- package/dist/components/paginator/paginator.js.map +1 -0
- package/dist/components/paginator/paginator.vue.d.ts +30 -0
- package/dist/components/paginator/style.d.ts +1 -0
- package/dist/components/paginator/style.js +1 -0
- package/dist/components/paginator/style2.css +121 -0
- package/dist/components/palette/color-transform.js +129 -0
- package/dist/components/palette/color-transform.js.map +1 -0
- package/dist/components/palette/di.js +6 -0
- package/dist/components/palette/di.js.map +1 -0
- package/dist/components/palette/index.d.ts +1 -0
- package/dist/components/palette/palette-alpha.js +75 -0
- package/dist/components/palette/palette-alpha.js.map +1 -0
- package/dist/components/palette/palette-color-switch.js +43 -0
- package/dist/components/palette/palette-color-switch.js.map +1 -0
- package/dist/components/palette/palette-hue.js +63 -0
- package/dist/components/palette/palette-hue.js.map +1 -0
- package/dist/components/palette/palette-sv.js +97 -0
- package/dist/components/palette/palette-sv.js.map +1 -0
- package/dist/components/palette/palette.js +128 -0
- package/dist/components/palette/palette.js.map +1 -0
- package/dist/components/palette/palette.vue.d.ts +21 -0
- package/dist/components/palette/style.d.ts +1 -0
- package/dist/components/palette/style.js +1 -0
- package/dist/components/palette/style2.css +132 -0
- package/dist/components/palette/use-hsv.js +49 -0
- package/dist/components/palette/use-hsv.js.map +1 -0
- package/dist/components/password-input/index.d.ts +1 -0
- package/dist/components/password-input/password-input.js +136 -0
- package/dist/components/password-input/password-input.js.map +1 -0
- package/dist/components/password-input/password-input.vue.d.ts +31 -0
- package/dist/components/password-input/style.d.ts +1 -0
- package/dist/components/password-input/style.js +1 -0
- package/dist/components/password-input/style2.css +17 -0
- package/dist/components/pop-confirm/index.d.ts +1 -0
- package/dist/components/pop-confirm/pop-confirm.js +91 -0
- package/dist/components/pop-confirm/pop-confirm.js.map +1 -0
- package/dist/components/pop-confirm/pop-confirm.vue.d.ts +33 -0
- package/dist/components/pop-confirm/style.d.ts +1 -0
- package/dist/components/pop-confirm/style.js +1 -0
- package/dist/components/pop-confirm/style2.css +52 -0
- package/dist/components/progress/index.d.ts +1 -0
- package/dist/components/progress/progress.js +99 -0
- package/dist/components/progress/progress.js.map +1 -0
- package/dist/components/progress/progress.vue.d.ts +25 -0
- package/dist/components/progress/style.d.ts +1 -0
- package/dist/components/progress/style.js +1 -0
- package/dist/components/progress/style2.css +77 -0
- package/dist/components/progress-nodes/index.d.ts +1 -0
- package/dist/components/progress-nodes/progress-nodes.js +134 -0
- package/dist/components/progress-nodes/progress-nodes.js.map +1 -0
- package/dist/components/progress-nodes/progress-nodes.vue.d.ts +38 -0
- package/dist/components/progress-nodes/style.d.ts +1 -0
- package/dist/components/progress-nodes/style.js +1 -0
- package/dist/components/progress-nodes/style2.css +161 -0
- package/dist/components/radio/index.d.ts +1 -0
- package/dist/components/radio/radio.js +70 -0
- package/dist/components/radio/radio.js.map +1 -0
- package/dist/components/radio/radio.vue.d.ts +32 -0
- package/dist/components/radio/style.d.ts +1 -0
- package/dist/components/radio/style.js +2 -0
- package/dist/components/radio/style2.css +108 -0
- package/dist/components/radio-group/index.d.ts +1 -0
- package/dist/components/radio-group/radio-group.js +82 -0
- package/dist/components/radio-group/radio-group.js.map +1 -0
- package/dist/components/radio-group/radio-group.vue.d.ts +27 -0
- package/dist/components/radio-group/style.d.ts +1 -0
- package/dist/components/radio-group/style.js +1 -0
- package/dist/components/radio-group/style2.css +54 -0
- package/dist/components/rich-text-editor/index.d.ts +1 -0
- package/dist/components/rich-text-editor/rich-text-editor.js +230 -0
- package/dist/components/rich-text-editor/rich-text-editor.js.map +1 -0
- package/dist/components/rich-text-editor/rich-text-editor.vue.d.ts +23 -0
- package/dist/components/rich-text-editor/style.d.ts +1 -0
- package/dist/components/rich-text-editor/style.js +1 -0
- package/dist/components/rich-text-editor/style2.css +338 -0
- package/dist/components/rich-text-editor/toolbar.js +221 -0
- package/dist/components/rich-text-editor/toolbar.js.map +1 -0
- package/dist/components/scroll/di.js +7 -0
- package/dist/components/scroll/di.js.map +1 -0
- package/dist/components/scroll/index.d.ts +1 -0
- package/dist/components/scroll/scroll-bar.js +81 -0
- package/dist/components/scroll/scroll-bar.js.map +1 -0
- package/dist/components/scroll/scroll.js +159 -0
- package/dist/components/scroll/scroll.js.map +1 -0
- package/dist/components/scroll/scroll.vue.d.ts +27 -0
- package/dist/components/scroll/style.d.ts +1 -0
- package/dist/components/scroll/style.js +1 -0
- package/dist/components/scroll/style2.css +91 -0
- package/dist/components/select/index.d.ts +1 -0
- package/dist/components/select/select.js +311 -0
- package/dist/components/select/select.js.map +1 -0
- package/dist/components/select/select.vue.d.ts +45 -0
- package/dist/components/select/style.d.ts +1 -0
- package/dist/components/select/style.js +2 -0
- package/dist/components/select/style2.css +154 -0
- package/dist/components/select/use-keyboard.js +40 -0
- package/dist/components/select/use-keyboard.js.map +1 -0
- package/dist/components/select/use-options.js +79 -0
- package/dist/components/select/use-options.js.map +1 -0
- package/dist/components/slider/di.js +6 -0
- package/dist/components/slider/di.js.map +1 -0
- package/dist/components/slider/index.d.ts +1 -0
- package/dist/components/slider/slider-thumb.js +58 -0
- package/dist/components/slider/slider-thumb.js.map +1 -0
- package/dist/components/slider/slider.js +143 -0
- package/dist/components/slider/slider.js.map +1 -0
- package/dist/components/slider/slider.vue.d.ts +22 -0
- package/dist/components/slider/style.d.ts +1 -0
- package/dist/components/slider/style.js +1 -0
- package/dist/components/slider/style2.css +169 -0
- package/dist/components/slider/use-slider.js +70 -0
- package/dist/components/slider/use-slider.js.map +1 -0
- package/dist/components/steps/index.d.ts +1 -0
- package/dist/components/steps/steps.js +146 -0
- package/dist/components/steps/steps.js.map +1 -0
- package/dist/components/steps/steps.vue.d.ts +31 -0
- package/dist/components/steps/style.d.ts +1 -0
- package/dist/components/steps/style.js +1 -0
- package/dist/components/steps/style2.css +217 -0
- package/dist/components/switch/index.d.ts +1 -0
- package/dist/components/switch/style.d.ts +1 -0
- package/dist/components/switch/style.js +1 -0
- package/dist/components/switch/style2.css +99 -0
- package/dist/components/switch/switch.js +82 -0
- package/dist/components/switch/switch.js.map +1 -0
- package/dist/components/switch/switch.vue.d.ts +25 -0
- package/dist/components/table/di.js +7 -0
- package/dist/components/table/di.js.map +1 -0
- package/dist/components/table/index.d.ts +2 -0
- package/dist/components/table/node/col.d.ts +45 -0
- package/dist/components/table/node/col.js +85 -0
- package/dist/components/table/node/col.js.map +1 -0
- package/dist/components/table/node/row.d.ts +41 -0
- package/dist/components/table/node/row.js +55 -0
- package/dist/components/table/node/row.js.map +1 -0
- package/dist/components/table/style.d.ts +1 -0
- package/dist/components/table/style.js +1 -0
- package/dist/components/table/style2.css +258 -0
- package/dist/components/table/table-body.js +76 -0
- package/dist/components/table/table-body.js.map +1 -0
- package/dist/components/table/table-cell.js +35 -0
- package/dist/components/table/table-cell.js.map +1 -0
- package/dist/components/table/table-foot.js +75 -0
- package/dist/components/table/table-foot.js.map +1 -0
- package/dist/components/table/table-head.js +33 -0
- package/dist/components/table/table-head.js.map +1 -0
- package/dist/components/table/table-row.js +101 -0
- package/dist/components/table/table-row.js.map +1 -0
- package/dist/components/table/table.js +220 -0
- package/dist/components/table/table.js.map +1 -0
- package/dist/components/table/table.vue.d.ts +55 -0
- package/dist/components/table/use-check.js +234 -0
- package/dist/components/table/use-check.js.map +1 -0
- package/dist/components/table/use-col-resize.js +87 -0
- package/dist/components/table/use-col-resize.js.map +1 -0
- package/dist/components/table/use-columns.d.ts +11 -0
- package/dist/components/table/use-columns.js +165 -0
- package/dist/components/table/use-columns.js.map +1 -0
- package/dist/components/table/use-fixed-columns.js +25 -0
- package/dist/components/table/use-fixed-columns.js.map +1 -0
- package/dist/components/table/use-rows.js +171 -0
- package/dist/components/table/use-rows.js.map +1 -0
- package/dist/components/table/use-table.js +70 -0
- package/dist/components/table/use-table.js.map +1 -0
- package/dist/components/table-editor/index.d.ts +1 -0
- package/dist/components/table-editor/style.d.ts +1 -0
- package/dist/components/table-editor/style.js +1 -0
- package/dist/components/table-editor/style2.css +26 -0
- package/dist/components/table-editor/table-editor.js +138 -0
- package/dist/components/table-editor/table-editor.js.map +1 -0
- package/dist/components/table-editor/table-editor.vue.d.ts +13 -0
- package/dist/components/tabs/index.d.ts +1 -0
- package/dist/components/tabs/style.d.ts +1 -0
- package/dist/components/tabs/style.js +2 -0
- package/dist/components/tabs/style2.css +166 -0
- package/dist/components/tabs/tabs.js +148 -0
- package/dist/components/tabs/tabs.js.map +1 -0
- package/dist/components/tabs/tabs.vue.d.ts +44 -0
- package/dist/components/tag/index.d.ts +1 -0
- package/dist/components/tag/style.d.ts +1 -0
- package/dist/components/tag/style.js +1 -0
- package/dist/components/tag/style2.css +181 -0
- package/dist/components/tag/tag.js +52 -0
- package/dist/components/tag/tag.js.map +1 -0
- package/dist/components/tag/tag.vue.d.ts +23 -0
- package/dist/components/text/index.d.ts +1 -0
- package/dist/components/text/style.d.ts +1 -0
- package/dist/components/text/style.js +1 -0
- package/dist/components/text/style2.css +54 -0
- package/dist/components/text/text.js +64 -0
- package/dist/components/text/text.js.map +1 -0
- package/dist/components/text/text.vue.d.ts +11 -0
- package/dist/components/textarea/index.d.ts +1 -0
- package/dist/components/textarea/style.d.ts +1 -0
- package/dist/components/textarea/style.js +2 -0
- package/dist/components/textarea/style2.css +106 -0
- package/dist/components/textarea/textarea.js +164 -0
- package/dist/components/textarea/textarea.js.map +1 -0
- package/dist/components/textarea/textarea.vue.d.ts +35 -0
- package/dist/components/textarea/utils.js +17 -0
- package/dist/components/textarea/utils.js.map +1 -0
- package/dist/components/theme/index.d.ts +1 -0
- package/dist/components/theme/schema.js +194 -0
- package/dist/components/theme/schema.js.map +1 -0
- package/dist/components/theme/style.d.ts +1 -0
- package/dist/components/theme/style.js +1 -0
- package/dist/components/theme/style2.css +377 -0
- package/dist/components/theme/theme.js +307 -0
- package/dist/components/theme/theme.js.map +1 -0
- package/dist/components/theme/theme.vue.d.ts +9 -0
- package/dist/components/tip/index.d.ts +1 -0
- package/dist/components/tip/style.d.ts +1 -0
- package/dist/components/tip/style.js +1 -0
- package/dist/components/tip/style2.css +79 -0
- package/dist/components/tip/tip.js +160 -0
- package/dist/components/tip/tip.js.map +1 -0
- package/dist/components/tip/tip.vue.d.ts +30 -0
- package/dist/components/tip/use-nest.js +41 -0
- package/dist/components/tip/use-nest.js.map +1 -0
- package/dist/components/tree/di.d.ts +10 -0
- package/dist/components/tree/di.js +7 -0
- package/dist/components/tree/di.js.map +1 -0
- package/dist/components/tree/index.d.ts +1 -0
- package/dist/components/tree/style.d.ts +1 -0
- package/dist/components/tree/style.js +1 -0
- package/dist/components/tree/style2.css +127 -0
- package/dist/components/tree/tree-node.js +82 -0
- package/dist/components/tree/tree-node.js.map +1 -0
- package/dist/components/tree/tree-node2.js +44 -0
- package/dist/components/tree/tree-node2.js.map +1 -0
- package/dist/components/tree/tree.js +219 -0
- package/dist/components/tree/tree.js.map +1 -0
- package/dist/components/tree/tree.vue.d.ts +40 -0
- package/dist/components/tree/use-check.js +80 -0
- package/dist/components/tree/use-check.js.map +1 -0
- package/dist/components/tree/use-filter.js +45 -0
- package/dist/components/tree/use-filter.js.map +1 -0
- package/dist/components/tree/use-select.js +44 -0
- package/dist/components/tree/use-select.js.map +1 -0
- package/dist/components/tree/use-tree-nodes.js +59 -0
- package/dist/components/tree/use-tree-nodes.js.map +1 -0
- package/dist/components/tree-select/index.d.ts +1 -0
- package/dist/components/tree-select/style.d.ts +1 -0
- package/dist/components/tree-select/style.js +1 -0
- package/dist/components/tree-select/style2.css +85 -0
- package/dist/components/tree-select/tree-select.js +225 -0
- package/dist/components/tree-select/tree-select.js.map +1 -0
- package/dist/components/tree-select/tree-select.vue.d.ts +46 -0
- package/dist/components/watermark/index.d.ts +1 -0
- package/dist/components/watermark/style.d.ts +1 -0
- package/dist/components/watermark/style.js +1 -0
- package/dist/components/watermark/style2.css +25 -0
- package/dist/components/watermark/watermark.js +76 -0
- package/dist/components/watermark/watermark.js.map +1 -0
- package/dist/components/watermark/watermark.vue.d.ts +22 -0
- package/dist/index.d.ts +176 -0
- package/dist/index.js +91 -0
- package/dist/types/action.d.ts +31 -0
- package/dist/types/animation.d.ts +23 -0
- package/dist/types/auto-complete.d.ts +26 -0
- package/dist/types/badge.d.ts +30 -0
- package/dist/types/batch-edit.d.ts +81 -0
- package/dist/types/button.d.ts +45 -0
- package/dist/types/calendar.d.ts +45 -0
- package/dist/types/card.d.ts +31 -0
- package/dist/types/cascade.d.ts +68 -0
- package/dist/types/check-tag.d.ts +19 -0
- package/dist/types/checkbox-group.d.ts +25 -0
- package/dist/types/checkbox.d.ts +31 -0
- package/dist/types/code-editor.d.ts +22 -0
- package/dist/types/condition-editor.d.ts +18 -0
- package/dist/types/context-menu.d.ts +46 -0
- package/dist/types/css-transition.d.ts +39 -0
- package/dist/types/date-panel.d.ts +20 -0
- package/dist/types/date-picker.d.ts +32 -0
- package/dist/types/date-range-picker.d.ts +32 -0
- package/dist/types/dialog.d.ts +36 -0
- package/dist/types/drawer.d.ts +33 -0
- package/dist/types/dropdown.d.ts +59 -0
- package/dist/types/empty.d.ts +19 -0
- package/dist/types/expression-editor.d.ts +30 -0
- package/dist/types/file-picker.d.ts +25 -0
- package/dist/types/float-button.d.ts +32 -0
- package/dist/types/form-item.d.ts +15 -0
- package/dist/types/form.d.ts +71 -0
- package/dist/types/gantt-chart.d.ts +16 -0
- package/dist/types/grid-input.d.ts +24 -0
- package/dist/types/grid.d.ts +81 -0
- package/dist/types/group-input.d.ts +28 -0
- package/dist/types/icon.d.ts +12 -0
- package/dist/types/index.d.ts +86 -0
- package/dist/types/index.js +0 -0
- package/dist/types/input.d.ts +49 -0
- package/dist/types/layout.d.ts +50 -0
- package/dist/types/list.d.ts +15 -0
- package/dist/types/loading.d.ts +20 -0
- package/dist/types/menu.d.ts +40 -0
- package/dist/types/message-confirm.d.ts +25 -0
- package/dist/types/message.d.ts +65 -0
- package/dist/types/multi-auto-complete.d.ts +18 -0
- package/dist/types/multi-select.d.ts +51 -0
- package/dist/types/multi-tree-select.d.ts +51 -0
- package/dist/types/node-render.d.ts +12 -0
- package/dist/types/notification.d.ts +34 -0
- package/dist/types/number-input.d.ts +33 -0
- package/dist/types/number-range-input.d.ts +31 -0
- package/dist/types/number.d.ts +33 -0
- package/dist/types/paginator.d.ts +35 -0
- package/dist/types/palette.d.ts +35 -0
- package/dist/types/password-input.d.ts +19 -0
- package/dist/types/pop-confirm.d.ts +36 -0
- package/dist/types/pop.d.ts +18 -0
- package/dist/types/progress-nodes.d.ts +35 -0
- package/dist/types/progress.d.ts +24 -0
- package/dist/types/quick-batch-edit.d.ts +18 -0
- package/dist/types/radio-group.d.ts +41 -0
- package/dist/types/radio.d.ts +28 -0
- package/dist/types/rich-text-editor.d.ts +29 -0
- package/dist/types/scroll.d.ts +71 -0
- package/dist/types/select.d.ts +71 -0
- package/dist/types/slider.d.ts +39 -0
- package/dist/types/steps.d.ts +66 -0
- package/dist/types/switch.d.ts +25 -0
- package/dist/types/table-editor.d.ts +20 -0
- package/dist/types/table.d.ts +235 -0
- package/dist/types/tabs.d.ts +48 -0
- package/dist/types/tag.d.ts +22 -0
- package/dist/types/text-editor.d.ts +25 -0
- package/dist/types/text.d.ts +29 -0
- package/dist/types/textarea.d.ts +75 -0
- package/dist/types/theme.d.ts +25 -0
- package/dist/types/tip.d.ts +53 -0
- package/dist/types/tree-select.d.ts +49 -0
- package/dist/types/tree.d.ts +105 -0
- package/dist/types/watermark.d.ts +25 -0
- package/package.json +74 -0
- package/src/components/action/action-group.vue +73 -0
- package/src/components/action/action.vue +79 -0
- package/src/components/action/di.ts +5 -0
- package/src/components/action/index.ts +3 -0
- package/src/components/action/style.scss +27 -0
- package/src/components/action/style.ts +4 -0
- package/src/components/auto-complete/auto-complete.vue +205 -0
- package/src/components/auto-complete/index.ts +1 -0
- package/src/components/auto-complete/style.scss +109 -0
- package/src/components/auto-complete/style.ts +8 -0
- package/src/components/auto-complete/use-keyboard.ts +109 -0
- package/src/components/auto-complete/use-suggestions.ts +64 -0
- package/src/components/badge/badge.vue +68 -0
- package/src/components/badge/index.ts +1 -0
- package/src/components/badge/style.scss +50 -0
- package/src/components/badge/style.ts +1 -0
- package/src/components/batch-edit/batch-edit-form.vue +85 -0
- package/src/components/batch-edit/batch-edit-list.vue +145 -0
- package/src/components/batch-edit/batch-edit-new.vue +168 -0
- package/src/components/batch-edit/batch-edit.vue +139 -0
- package/src/components/batch-edit/di.ts +24 -0
- package/src/components/batch-edit/helper.ts +10 -0
- package/src/components/batch-edit/index.ts +3 -0
- package/src/components/batch-edit/style-new.scss +35 -0
- package/src/components/batch-edit/style.scss +68 -0
- package/src/components/batch-edit/style.ts +13 -0
- package/src/components/batch-edit/use-edit-new.ts +68 -0
- package/src/components/batch-edit/use-edit.ts +327 -0
- package/src/components/batch-edit/use-tip.ts +47 -0
- package/src/components/button/button-group.vue +23 -0
- package/src/components/button/button.vue +97 -0
- package/src/components/button/index.ts +2 -0
- package/src/components/button/style.scss +159 -0
- package/src/components/button/style.ts +3 -0
- package/src/components/calendar/calendar.vue +35 -0
- package/src/components/calendar/index.ts +1 -0
- package/src/components/calendar/style.scss +34 -0
- package/src/components/calendar/style.ts +1 -0
- package/src/components/calendar/utils.ts +118 -0
- package/src/components/card/card-action.vue +29 -0
- package/src/components/card/card-content.vue +32 -0
- package/src/components/card/card-cover.vue +36 -0
- package/src/components/card/card-header.vue +29 -0
- package/src/components/card/card.vue +36 -0
- package/src/components/card/di.ts +11 -0
- package/src/components/card/index.ts +5 -0
- package/src/components/card/style.scss +84 -0
- package/src/components/card/style.ts +1 -0
- package/src/components/cascade/cascade-panel-item.vue +85 -0
- package/src/components/cascade/cascade.vue +291 -0
- package/src/components/cascade/di.ts +14 -0
- package/src/components/cascade/index.ts +1 -0
- package/src/components/cascade/node.ts +25 -0
- package/src/components/cascade/style.scss +142 -0
- package/src/components/cascade/style.ts +8 -0
- package/src/components/cascade/use-check.ts +128 -0
- package/src/components/cascade/use-data-map.ts +36 -0
- package/src/components/cascade/use-select.ts +172 -0
- package/src/components/check-tag/check-tag.vue +30 -0
- package/src/components/check-tag/index.ts +1 -0
- package/src/components/check-tag/style.scss +27 -0
- package/src/components/check-tag/style.ts +1 -0
- package/src/components/checkbox/checkbox-button.vue +68 -0
- package/src/components/checkbox/checkbox.vue +64 -0
- package/src/components/checkbox/index.ts +3 -0
- package/src/components/checkbox/style.scss +108 -0
- package/src/components/checkbox/style.ts +3 -0
- package/src/components/checkbox-group/checkbox-group.vue +95 -0
- package/src/components/checkbox-group/index.ts +1 -0
- package/src/components/checkbox-group/style.scss +41 -0
- package/src/components/checkbox-group/style.ts +2 -0
- package/src/components/code-editor/code-editor.vue +125 -0
- package/src/components/code-editor/index.ts +1 -0
- package/src/components/code-editor/style.scss +33 -0
- package/src/components/code-editor/style.ts +1 -0
- package/src/components/condition-editor/condition-editor.vue +17 -0
- package/src/components/condition-editor/index.ts +1 -0
- package/src/components/condition-editor/style.scss +9 -0
- package/src/components/condition-editor/style.ts +1 -0
- package/src/components/context-menu/api.ts +23 -0
- package/src/components/context-menu/context-menu-item.vue +74 -0
- package/src/components/context-menu/context-menu.vue +129 -0
- package/src/components/context-menu/di.ts +5 -0
- package/src/components/context-menu/index.ts +1 -0
- package/src/components/context-menu/style.scss +47 -0
- package/src/components/context-menu/style.ts +4 -0
- package/src/components/date-panel/date-panel.vue +45 -0
- package/src/components/date-panel/di.ts +35 -0
- package/src/components/date-panel/headers/day.vue +45 -0
- package/src/components/date-panel/headers/month.vue +29 -0
- package/src/components/date-panel/headers/year.vue +36 -0
- package/src/components/date-panel/index.ts +1 -0
- package/src/components/date-panel/panels/day.vue +94 -0
- package/src/components/date-panel/panels/month.vue +80 -0
- package/src/components/date-panel/panels/year.vue +78 -0
- package/src/components/date-panel/style.scss +144 -0
- package/src/components/date-panel/style.ts +1 -0
- package/src/components/date-panel/use-date-select.ts +116 -0
- package/src/components/date-panel/use-panel-date.ts +68 -0
- package/src/components/date-panel/use-panel.ts +71 -0
- package/src/components/date-picker/date-picker.vue +121 -0
- package/src/components/date-picker/index.ts +1 -0
- package/src/components/date-picker/style.scss +15 -0
- package/src/components/date-picker/style.ts +4 -0
- package/src/components/date-picker/use-date.ts +169 -0
- package/src/components/date-range-picker/date-range-picker.vue +153 -0
- package/src/components/date-range-picker/index.ts +1 -0
- package/src/components/date-range-picker/style.scss +80 -0
- package/src/components/date-range-picker/style.ts +4 -0
- package/src/components/dialog/di.ts +7 -0
- package/src/components/dialog/dialog.vue +251 -0
- package/src/components/dialog/index.ts +1 -0
- package/src/components/dialog/style.scss +145 -0
- package/src/components/dialog/style.ts +5 -0
- package/src/components/dialog/use-maximum.ts +51 -0
- package/src/components/drawer/drawer.vue +83 -0
- package/src/components/drawer/index.ts +1 -0
- package/src/components/drawer/style.scss +145 -0
- package/src/components/drawer/style.ts +3 -0
- package/src/components/dropdown/dropdown.vue +186 -0
- package/src/components/dropdown/index.ts +1 -0
- package/src/components/dropdown/style.scss +18 -0
- package/src/components/dropdown/style.ts +2 -0
- package/src/components/empty/empty.vue +25 -0
- package/src/components/empty/index.ts +1 -0
- package/src/components/empty/style.scss +13 -0
- package/src/components/empty/style.ts +2 -0
- package/src/components/expression-editor/__test__/architecture-boundaries.test.ts +103 -0
- package/src/components/expression-editor/__test__/architecture-compatibility.test.ts +52 -0
- package/src/components/expression-editor/__test__/drag-drop.test.ts +171 -0
- package/src/components/expression-editor/__test__/parser.test.ts +62 -0
- package/src/components/expression-editor/components/variable-picker.vue +301 -0
- package/src/components/expression-editor/constants.ts +6 -0
- package/src/components/expression-editor/di.ts +43 -0
- package/src/components/expression-editor/expression-editor.vue +211 -0
- package/src/components/expression-editor/index.ts +1 -0
- package/src/components/expression-editor/internal/contracts/editor-runtime.ts +11 -0
- package/src/components/expression-editor/internal/editor-runtime/create-runtime.ts +64 -0
- package/src/components/expression-editor/internal/editor-runtime/index.ts +1 -0
- package/src/components/expression-editor/internal/editor-runtime/model-sync.ts +68 -0
- package/src/components/expression-editor/internal/features/commands/register-command-packs.ts +517 -0
- package/src/components/expression-editor/internal/features/drag-drop/drag-drop-service.ts +51 -0
- package/src/components/expression-editor/internal/features/insertion/insertion-service.ts +56 -0
- package/src/components/expression-editor/nodes/variable-node.tsx +118 -0
- package/src/components/expression-editor/parser.ts +46 -0
- package/src/components/expression-editor/plain-text.ts +25 -0
- package/src/components/expression-editor/plan.md +22 -0
- package/src/components/expression-editor/style.scss +380 -0
- package/src/components/expression-editor/style.ts +7 -0
- package/src/components/expression-editor/use-context.ts +134 -0
- package/src/components/expression-editor/use-decorators.tsx +29 -0
- package/src/components/expression-editor/use-editor.ts +12 -0
- package/src/components/expression-editor/use-expression-drag-drop.ts +396 -0
- package/src/components/file-picker/file-picker.vue +85 -0
- package/src/components/file-picker/helper.ts +22 -0
- package/src/components/file-picker/index.ts +1 -0
- package/src/components/file-picker/style.scss +13 -0
- package/src/components/file-picker/style.ts +1 -0
- package/src/components/float-button/float-button.vue +87 -0
- package/src/components/float-button/index.ts +1 -0
- package/src/components/float-button/style.scss +37 -0
- package/src/components/float-button/style.ts +2 -0
- package/src/components/form/dynamic-form-model.ts +230 -0
- package/src/components/form/form-model.ts +240 -0
- package/src/components/form/form.vue +95 -0
- package/src/components/form/helper.ts +14 -0
- package/src/components/form/index.ts +6 -0
- package/src/components/form/style.scss +27 -0
- package/src/components/form/style.ts +3 -0
- package/src/components/form/use-node-interceptor.ts +87 -0
- package/src/components/form-item/form-item.vue +94 -0
- package/src/components/form-item/helper.ts +19 -0
- package/src/components/form-item/index.ts +1 -0
- package/src/components/form-item/style.scss +115 -0
- package/src/components/form-item/style.ts +2 -0
- package/src/components/gantt-chart/gantt-chart.vue +17 -0
- package/src/components/gantt-chart/index.ts +1 -0
- package/src/components/gantt-chart/style.scss +6 -0
- package/src/components/gantt-chart/style.ts +1 -0
- package/src/components/grid/breakpoint.ts +49 -0
- package/src/components/grid/di.ts +12 -0
- package/src/components/grid/grid-item.vue +60 -0
- package/src/components/grid/grid.vue +88 -0
- package/src/components/grid/index.ts +2 -0
- package/src/components/grid/style.scss +7 -0
- package/src/components/grid/style.ts +1 -0
- package/src/components/grid/use-responsive.ts +85 -0
- package/src/components/grid-input/grid-input.vue +126 -0
- package/src/components/grid-input/index.ts +1 -0
- package/src/components/grid-input/style.scss +59 -0
- package/src/components/grid-input/style.ts +1 -0
- package/src/components/group-input/group-input.vue +93 -0
- package/src/components/group-input/index.ts +1 -0
- package/src/components/group-input/style.scss +35 -0
- package/src/components/group-input/style.ts +1 -0
- package/src/components/group-input/use-group-items.ts +60 -0
- package/src/components/icon/icon.vue +27 -0
- package/src/components/icon/index.ts +1 -0
- package/src/components/icon/style.scss +37 -0
- package/src/components/icon/style.ts +1 -0
- package/src/components/index.ts +139 -0
- package/src/components/input/index.ts +1 -0
- package/src/components/input/input.vue +173 -0
- package/src/components/input/style.scss +101 -0
- package/src/components/input/style.ts +3 -0
- package/src/components/layout/di.ts +8 -0
- package/src/components/layout/index.ts +1 -0
- package/src/components/layout/layout-resizer.vue +83 -0
- package/src/components/layout/layout.vue +138 -0
- package/src/components/layout/style.scss +25 -0
- package/src/components/layout/style.ts +2 -0
- package/src/components/list/index.ts +3 -0
- package/src/components/list/list-item.vue +15 -0
- package/src/components/list/list.vue +26 -0
- package/src/components/list/style.scss +16 -0
- package/src/components/list/style.ts +2 -0
- package/src/components/loading/directive.ts +34 -0
- package/src/components/loading/index.ts +3 -0
- package/src/components/loading/loading.vue +33 -0
- package/src/components/loading/style.scss +432 -0
- package/src/components/loading/style.ts +2 -0
- package/src/components/menu/di.ts +16 -0
- package/src/components/menu/helper.ts +3 -0
- package/src/components/menu/index.ts +3 -0
- package/src/components/menu/menu-icon.vue +21 -0
- package/src/components/menu/menu-item-collapsed.vue +66 -0
- package/src/components/menu/menu-item.vue +36 -0
- package/src/components/menu/menu-node.ts +6 -0
- package/src/components/menu/menu-sub-collapsed.vue +80 -0
- package/src/components/menu/menu-sub.vue +81 -0
- package/src/components/menu/menu.vue +103 -0
- package/src/components/menu/style.scss +261 -0
- package/src/components/menu/style.ts +3 -0
- package/src/components/menu/use-menu-item.ts +51 -0
- package/src/components/menu/use-menu-transition.ts +69 -0
- package/src/components/menu/walk-menu-path.ts +18 -0
- package/src/components/message/helper.ts +27 -0
- package/src/components/message/index.ts +3 -0
- package/src/components/message/message-box.vue +37 -0
- package/src/components/message/message.ts +118 -0
- package/src/components/message/message.vue +82 -0
- package/src/components/message/style.scss +89 -0
- package/src/components/message/style.ts +1 -0
- package/src/components/message-confirm/index.ts +3 -0
- package/src/components/message-confirm/message-confirm.ts +31 -0
- package/src/components/message-confirm/message-confirm.vue +66 -0
- package/src/components/message-confirm/style.scss +70 -0
- package/src/components/message-confirm/style.ts +1 -0
- package/src/components/multi-select/di.ts +10 -0
- package/src/components/multi-select/index.ts +1 -0
- package/src/components/multi-select/multi-select-option.vue +75 -0
- package/src/components/multi-select/multi-select.vue +446 -0
- package/src/components/multi-select/style.scss +148 -0
- package/src/components/multi-select/style.ts +10 -0
- package/src/components/multi-tree-select/index.ts +1 -0
- package/src/components/multi-tree-select/multi-tree-select.vue +309 -0
- package/src/components/multi-tree-select/style.scss +107 -0
- package/src/components/multi-tree-select/style.ts +9 -0
- package/src/components/node-render/index.ts +1 -0
- package/src/components/node-render/node-render.ts +39 -0
- package/src/components/node-render/style.scss +6 -0
- package/src/components/node-render/style.ts +1 -0
- package/src/components/notification/index.ts +145 -0
- package/src/components/notification/notification.vue +126 -0
- package/src/components/notification/style.scss +95 -0
- package/src/components/notification/style.ts +1 -0
- package/src/components/number/index.ts +1 -0
- package/src/components/number/number.vue +55 -0
- package/src/components/number/style.scss +6 -0
- package/src/components/number/style.ts +1 -0
- package/src/components/number-input/index.ts +1 -0
- package/src/components/number-input/number-input.vue +381 -0
- package/src/components/number-input/style.scss +35 -0
- package/src/components/number-input/style.ts +3 -0
- package/src/components/number-range-input/index.ts +1 -0
- package/src/components/number-range-input/number-range-input.vue +214 -0
- package/src/components/number-range-input/style.scss +14 -0
- package/src/components/number-range-input/style.ts +2 -0
- package/src/components/paginator/index.ts +1 -0
- package/src/components/paginator/paginator.vue +212 -0
- package/src/components/paginator/style.scss +82 -0
- package/src/components/paginator/style.ts +4 -0
- package/src/components/palette/color-transform.ts +134 -0
- package/src/components/palette/di.ts +25 -0
- package/src/components/palette/index.ts +1 -0
- package/src/components/palette/palette-alpha.vue +86 -0
- package/src/components/palette/palette-color-switch.vue +39 -0
- package/src/components/palette/palette-hue.vue +70 -0
- package/src/components/palette/palette-sv.vue +114 -0
- package/src/components/palette/palette.vue +112 -0
- package/src/components/palette/style.scss +151 -0
- package/src/components/palette/style.ts +4 -0
- package/src/components/palette/use-hsv.ts +57 -0
- package/src/components/password-input/index.ts +1 -0
- package/src/components/password-input/password-input.vue +119 -0
- package/src/components/password-input/style.scss +11 -0
- package/src/components/password-input/style.ts +3 -0
- package/src/components/pop-confirm/index.ts +1 -0
- package/src/components/pop-confirm/pop-confirm.vue +79 -0
- package/src/components/pop-confirm/style.scss +33 -0
- package/src/components/pop-confirm/style.ts +4 -0
- package/src/components/progress/index.ts +1 -0
- package/src/components/progress/progress.vue +93 -0
- package/src/components/progress/style.scss +60 -0
- package/src/components/progress/style.ts +1 -0
- package/src/components/progress-nodes/index.ts +1 -0
- package/src/components/progress-nodes/progress-nodes.vue +147 -0
- package/src/components/progress-nodes/style.scss +174 -0
- package/src/components/progress-nodes/style.ts +1 -0
- package/src/components/radio/index.ts +1 -0
- package/src/components/radio/radio.vue +63 -0
- package/src/components/radio/style.scss +78 -0
- package/src/components/radio/style.ts +2 -0
- package/src/components/radio-group/index.ts +1 -0
- package/src/components/radio-group/radio-group.vue +58 -0
- package/src/components/radio-group/style.scss +39 -0
- package/src/components/radio-group/style.ts +2 -0
- package/src/components/rich-text-editor/index.ts +1 -0
- package/src/components/rich-text-editor/rich-text-editor.vue +265 -0
- package/src/components/rich-text-editor/style.scss +379 -0
- package/src/components/rich-text-editor/style.ts +1 -0
- package/src/components/rich-text-editor/toolbar.vue +305 -0
- package/src/components/scroll/di.ts +5 -0
- package/src/components/scroll/index.ts +1 -0
- package/src/components/scroll/scroll-bar.vue +102 -0
- package/src/components/scroll/scroll.vue +208 -0
- package/src/components/scroll/style.scss +115 -0
- package/src/components/scroll/style.ts +1 -0
- package/src/components/select/index.ts +1 -0
- package/src/components/select/select.vue +315 -0
- package/src/components/select/style.scss +136 -0
- package/src/components/select/style.ts +7 -0
- package/src/components/select/use-keyboard.ts +54 -0
- package/src/components/select/use-options.ts +119 -0
- package/src/components/slider/di.ts +14 -0
- package/src/components/slider/index.ts +1 -0
- package/src/components/slider/slider-thumb.vue +73 -0
- package/src/components/slider/slider.vue +144 -0
- package/src/components/slider/style.scss +144 -0
- package/src/components/slider/style.ts +1 -0
- package/src/components/slider/use-slider.ts +91 -0
- package/src/components/steps/index.ts +1 -0
- package/src/components/steps/steps.vue +175 -0
- package/src/components/steps/style.scss +196 -0
- package/src/components/steps/style.ts +3 -0
- package/src/components/switch/index.ts +1 -0
- package/src/components/switch/style.scss +94 -0
- package/src/components/switch/style.ts +1 -0
- package/src/components/switch/switch.vue +68 -0
- package/src/components/table/di.ts +62 -0
- package/src/components/table/index.ts +3 -0
- package/src/components/table/node/col.ts +102 -0
- package/src/components/table/node/row.ts +75 -0
- package/src/components/table/style.scss +284 -0
- package/src/components/table/style.ts +8 -0
- package/src/components/table/table-body.vue +82 -0
- package/src/components/table/table-cell.vue +33 -0
- package/src/components/table/table-foot.vue +97 -0
- package/src/components/table/table-head.tsx +50 -0
- package/src/components/table/table-row.tsx +142 -0
- package/src/components/table/table.vue +221 -0
- package/src/components/table/use-check.ts +329 -0
- package/src/components/table/use-col-resize.ts +125 -0
- package/src/components/table/use-columns.ts +255 -0
- package/src/components/table/use-fixed-columns.ts +36 -0
- package/src/components/table/use-rows.ts +242 -0
- package/src/components/table/use-table.ts +154 -0
- package/src/components/table-editor/index.ts +1 -0
- package/src/components/table-editor/style.scss +22 -0
- package/src/components/table-editor/style.ts +3 -0
- package/src/components/table-editor/table-editor.vue +103 -0
- package/src/components/tabs/index.ts +1 -0
- package/src/components/tabs/style.scss +193 -0
- package/src/components/tabs/style.ts +4 -0
- package/src/components/tabs/tabs.vue +167 -0
- package/src/components/tag/index.ts +1 -0
- package/src/components/tag/style.scss +91 -0
- package/src/components/tag/style.ts +1 -0
- package/src/components/tag/tag.vue +55 -0
- package/src/components/text/index.ts +1 -0
- package/src/components/text/style.scss +54 -0
- package/src/components/text/style.ts +1 -0
- package/src/components/text/text.vue +74 -0
- package/src/components/textarea/index.ts +1 -0
- package/src/components/textarea/style.scss +86 -0
- package/src/components/textarea/style.ts +3 -0
- package/src/components/textarea/textarea.vue +135 -0
- package/src/components/textarea/utils.ts +11 -0
- package/src/components/theme/di.ts +4 -0
- package/src/components/theme/group-item.vue +23 -0
- package/src/components/theme/group.vue +23 -0
- package/src/components/theme/index.ts +1 -0
- package/src/components/theme/schema.ts +210 -0
- package/src/components/theme/style.scss +429 -0
- package/src/components/theme/style.ts +6 -0
- package/src/components/theme/theme.vue +470 -0
- package/src/components/tip/index.ts +1 -0
- package/src/components/tip/style.scss +63 -0
- package/src/components/tip/style.ts +1 -0
- package/src/components/tip/tip.vue +169 -0
- package/src/components/tip/use-nest.ts +49 -0
- package/src/components/tree/di.ts +33 -0
- package/src/components/tree/index.ts +1 -0
- package/src/components/tree/style.scss +127 -0
- package/src/components/tree/style.ts +5 -0
- package/src/components/tree/tree-node.ts +65 -0
- package/src/components/tree/tree-node.vue +79 -0
- package/src/components/tree/tree.vue +219 -0
- package/src/components/tree/use-check.ts +149 -0
- package/src/components/tree/use-filter.ts +73 -0
- package/src/components/tree/use-select.ts +66 -0
- package/src/components/tree/use-tree-nodes.ts +88 -0
- package/src/components/tree-select/index.ts +1 -0
- package/src/components/tree-select/style.scss +65 -0
- package/src/components/tree-select/style.ts +5 -0
- package/src/components/tree-select/tree-select.vue +198 -0
- package/src/components/watermark/base64.ts +40 -0
- package/src/components/watermark/index.ts +1 -0
- package/src/components/watermark/style.scss +15 -0
- package/src/components/watermark/style.ts +1 -0
- package/src/components/watermark/watermark.vue +89 -0
- package/src/env.d.ts +7 -0
- package/src/index.ts +3 -0
- package/src/types/action.ts +34 -0
- package/src/types/animation.ts +23 -0
- package/src/types/auto-complete.ts +25 -0
- package/src/types/badge.ts +29 -0
- package/src/types/batch-edit.ts +100 -0
- package/src/types/button.ts +45 -0
- package/src/types/calendar.ts +47 -0
- package/src/types/card.ts +34 -0
- package/src/types/cascade.ts +70 -0
- package/src/types/check-tag.ts +19 -0
- package/src/types/checkbox-group.ts +23 -0
- package/src/types/checkbox.ts +31 -0
- package/src/types/code-editor.ts +22 -0
- package/src/types/condition-editor.ts +17 -0
- package/src/types/context-menu.ts +43 -0
- package/src/types/css-transition.ts +38 -0
- package/src/types/date-panel.ts +18 -0
- package/src/types/date-picker.ts +31 -0
- package/src/types/date-range-picker.ts +31 -0
- package/src/types/dialog.ts +35 -0
- package/src/types/drawer.ts +35 -0
- package/src/types/dropdown.ts +59 -0
- package/src/types/empty.ts +19 -0
- package/src/types/expression-editor.ts +30 -0
- package/src/types/file-picker.ts +24 -0
- package/src/types/float-button.ts +33 -0
- package/src/types/form-item.ts +13 -0
- package/src/types/form.ts +89 -0
- package/src/types/gantt-chart.ts +15 -0
- package/src/types/grid-input.ts +23 -0
- package/src/types/grid.ts +86 -0
- package/src/types/group-input.ts +29 -0
- package/src/types/icon.ts +10 -0
- package/src/types/index.ts +78 -0
- package/src/types/input.ts +48 -0
- package/src/types/layout.ts +50 -0
- package/src/types/list.ts +14 -0
- package/src/types/loading.ts +20 -0
- package/src/types/menu.ts +41 -0
- package/src/types/message-confirm.ts +24 -0
- package/src/types/message.ts +71 -0
- package/src/types/multi-auto-complete.ts +17 -0
- package/src/types/multi-select.ts +52 -0
- package/src/types/multi-tree-select.ts +53 -0
- package/src/types/node-render.ts +9 -0
- package/src/types/notification.ts +33 -0
- package/src/types/number-input.ts +31 -0
- package/src/types/number-range-input.ts +33 -0
- package/src/types/number.ts +31 -0
- package/src/types/paginator.ts +34 -0
- package/src/types/palette.ts +37 -0
- package/src/types/password-input.ts +19 -0
- package/src/types/pop-confirm.ts +39 -0
- package/src/types/pop.ts +17 -0
- package/src/types/progress-nodes.ts +34 -0
- package/src/types/progress.ts +23 -0
- package/src/types/quick-batch-edit.ts +17 -0
- package/src/types/radio-group.ts +39 -0
- package/src/types/radio.ts +26 -0
- package/src/types/rich-text-editor.ts +44 -0
- package/src/types/scroll.ts +87 -0
- package/src/types/select.ts +70 -0
- package/src/types/slider.ts +38 -0
- package/src/types/steps.ts +68 -0
- package/src/types/switch.ts +24 -0
- package/src/types/table-editor.ts +20 -0
- package/src/types/table.ts +239 -0
- package/src/types/tabs.ts +55 -0
- package/src/types/tag.ts +19 -0
- package/src/types/text-editor.ts +25 -0
- package/src/types/text.ts +28 -0
- package/src/types/textarea.ts +77 -0
- package/src/types/theme.ts +23 -0
- package/src/types/tip.ts +58 -0
- package/src/types/tree-select.ts +54 -0
- package/src/types/tree.ts +110 -0
- package/src/types/watermark.ts +24 -0
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
import _sfc_main$1 from "../icon/icon.js";
|
|
2
|
+
import _sfc_main$2 from "../dropdown/dropdown.js";
|
|
3
|
+
import input_default from "../input/input.js";
|
|
4
|
+
import _sfc_main$3 from "../scroll/scroll.js";
|
|
5
|
+
import _sfc_main$4 from "../empty/empty.js";
|
|
6
|
+
import { useOptions } from "./use-options.js";
|
|
7
|
+
import { useKeyboard } from "./use-keyboard.js";
|
|
8
|
+
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createSlots, createTextVNode, createVNode, defineComponent, isRef, mergeModels, mergeProps, nextTick, normalizeClass, normalizeStyle, openBlock, renderList, renderSlot, shallowRef, toDisplayString, unref, useModel, watch, withCtx, withDirectives } from "vue";
|
|
9
|
+
import { o } from "@cat-kit/core";
|
|
10
|
+
import { FORM_EMPTY_CONTENT, bem, scrollIntoContainerView, withUnit } from "@veltra/utils";
|
|
11
|
+
import { useFormComponent, useFormFallbackProps, useVirtual } from "@veltra/compositions";
|
|
12
|
+
import { vFocus } from "@veltra/directives";
|
|
13
|
+
import { ArrowDown, Search } from "@veltra/icons/normal";
|
|
14
|
+
//#region src/components/select/select.vue
|
|
15
|
+
const _hoisted_1 = ["onClick", "data-index"];
|
|
16
|
+
const _hoisted_2 = [
|
|
17
|
+
"onClick",
|
|
18
|
+
"data-index",
|
|
19
|
+
"title"
|
|
20
|
+
];
|
|
21
|
+
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
22
|
+
name: "Select",
|
|
23
|
+
__name: "select",
|
|
24
|
+
props: /* @__PURE__ */ mergeModels({
|
|
25
|
+
modelValue: {},
|
|
26
|
+
text: {},
|
|
27
|
+
options: {},
|
|
28
|
+
valueKey: { default: "value" },
|
|
29
|
+
labelKey: { default: "label" },
|
|
30
|
+
clearable: {
|
|
31
|
+
type: Boolean,
|
|
32
|
+
default: true
|
|
33
|
+
},
|
|
34
|
+
placeholder: { default: "请选择" },
|
|
35
|
+
filterable: { type: Boolean },
|
|
36
|
+
contentStyle: {},
|
|
37
|
+
contentClass: {},
|
|
38
|
+
minWidth: {},
|
|
39
|
+
width: {},
|
|
40
|
+
creatable: { type: Boolean },
|
|
41
|
+
grid: {},
|
|
42
|
+
tips: {},
|
|
43
|
+
span: {},
|
|
44
|
+
label: {},
|
|
45
|
+
field: {},
|
|
46
|
+
disabled: {
|
|
47
|
+
type: Boolean,
|
|
48
|
+
default: void 0
|
|
49
|
+
},
|
|
50
|
+
readonly: {
|
|
51
|
+
type: Boolean,
|
|
52
|
+
default: void 0
|
|
53
|
+
},
|
|
54
|
+
size: {}
|
|
55
|
+
}, {
|
|
56
|
+
"text": {},
|
|
57
|
+
"textModifiers": {}
|
|
58
|
+
}),
|
|
59
|
+
emits: /* @__PURE__ */ mergeModels([
|
|
60
|
+
"update:label",
|
|
61
|
+
"update:modelValue",
|
|
62
|
+
"change"
|
|
63
|
+
], ["update:text"]),
|
|
64
|
+
setup(__props, { emit: __emit }) {
|
|
65
|
+
const props = __props;
|
|
66
|
+
const emit = __emit;
|
|
67
|
+
const cls = bem("select");
|
|
68
|
+
const optionClass = cls.e("option");
|
|
69
|
+
const { formProps } = useFormComponent();
|
|
70
|
+
const { size, disabled, readonly } = useFormFallbackProps([formProps ?? {}, props], {
|
|
71
|
+
size: "default",
|
|
72
|
+
disabled: false,
|
|
73
|
+
readonly: false
|
|
74
|
+
});
|
|
75
|
+
const currentIndex = shallowRef(-1);
|
|
76
|
+
const label = useModel(__props, "text");
|
|
77
|
+
const selected = shallowRef();
|
|
78
|
+
const dropdownRef = shallowRef();
|
|
79
|
+
const scrollRef = shallowRef();
|
|
80
|
+
const filterable = computed(() => {
|
|
81
|
+
return props.filterable || typeof props.options === "function";
|
|
82
|
+
});
|
|
83
|
+
const { queryString, options, temOptionsToCreatedOptions, clearCreatedOptions } = useOptions({ props });
|
|
84
|
+
let userSelecting = false;
|
|
85
|
+
function lock() {
|
|
86
|
+
userSelecting = true;
|
|
87
|
+
}
|
|
88
|
+
function unlock() {
|
|
89
|
+
nextTick(() => {
|
|
90
|
+
userSelecting = false;
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
watch([() => props.modelValue, options], ([modelValue, options]) => {
|
|
94
|
+
if (userSelecting) return;
|
|
95
|
+
if (!options?.length) return;
|
|
96
|
+
if (modelValue !== void 0) {
|
|
97
|
+
const { valueKey } = props;
|
|
98
|
+
currentIndex.value = options.findIndex((option) => o(option).get(valueKey) === modelValue);
|
|
99
|
+
selected.value = options[currentIndex.value];
|
|
100
|
+
} else {
|
|
101
|
+
currentIndex.value = -1;
|
|
102
|
+
selected.value = void 0;
|
|
103
|
+
}
|
|
104
|
+
}, { immediate: true });
|
|
105
|
+
const { virtualList, totalHeight, virtualEnabled: _virtualEnabled, scrollTo, measureElement } = useVirtual({
|
|
106
|
+
count: computed(() => options.value.length),
|
|
107
|
+
virtualThreshold: 80,
|
|
108
|
+
scrollEl: computed(() => scrollRef.value?.containerRef ?? null),
|
|
109
|
+
gap: 4,
|
|
110
|
+
estimateSize: () => 40
|
|
111
|
+
});
|
|
112
|
+
const virtualEnabled = computed(() => {
|
|
113
|
+
return _virtualEnabled.value && !props.grid;
|
|
114
|
+
});
|
|
115
|
+
const virtualOptions = computed(() => {
|
|
116
|
+
const _options = options.value;
|
|
117
|
+
const { labelKey, valueKey } = props;
|
|
118
|
+
return virtualList.value.map((item) => {
|
|
119
|
+
const option = _options[item.index];
|
|
120
|
+
return {
|
|
121
|
+
option,
|
|
122
|
+
index: item.index,
|
|
123
|
+
label: o(option).get(labelKey),
|
|
124
|
+
val: o(option).get(valueKey),
|
|
125
|
+
key: item.key,
|
|
126
|
+
offset: item.start
|
|
127
|
+
};
|
|
128
|
+
});
|
|
129
|
+
});
|
|
130
|
+
watch([scrollRef, virtualEnabled], ([scroll, virtualEnabled]) => {
|
|
131
|
+
if (!scroll || !props.modelValue) return;
|
|
132
|
+
if (virtualEnabled) {
|
|
133
|
+
const index = options.value.findIndex((option) => option === selected.value);
|
|
134
|
+
index !== -1 && dropdownVisible.value && nextTick(() => scrollTo(index));
|
|
135
|
+
} else {
|
|
136
|
+
const selectedEl = scroll?.contentRef?.getElementsByClassName("is-selected")[0];
|
|
137
|
+
if (selectedEl) scrollIntoContainerView(selectedEl, scroll.containerRef ?? null);
|
|
138
|
+
}
|
|
139
|
+
});
|
|
140
|
+
const dropdownVisible = shallowRef(false);
|
|
141
|
+
watch(dropdownVisible, (v) => {
|
|
142
|
+
if (!v) queryString.value = "";
|
|
143
|
+
});
|
|
144
|
+
const handleDropdownVisible = (visible) => {
|
|
145
|
+
if (!visible) queryString.value = "";
|
|
146
|
+
};
|
|
147
|
+
/** 单选 */
|
|
148
|
+
const handleSelect = (option, index) => {
|
|
149
|
+
lock();
|
|
150
|
+
selected.value = option;
|
|
151
|
+
emit("update:modelValue", option?.[props.valueKey]);
|
|
152
|
+
label.value = option?.[props.labelKey];
|
|
153
|
+
emit("change", option);
|
|
154
|
+
if (option.__isTemp) temOptionsToCreatedOptions();
|
|
155
|
+
currentIndex.value = index;
|
|
156
|
+
dropdownRef.value?.close();
|
|
157
|
+
unlock();
|
|
158
|
+
};
|
|
159
|
+
/** 清除选项 */
|
|
160
|
+
const handleClear = () => {
|
|
161
|
+
lock();
|
|
162
|
+
selected.value = void 0;
|
|
163
|
+
clearCreatedOptions();
|
|
164
|
+
emit("update:modelValue", void 0);
|
|
165
|
+
emit("change", void 0);
|
|
166
|
+
unlock();
|
|
167
|
+
};
|
|
168
|
+
function getCurrentEl() {
|
|
169
|
+
return scrollRef.value?.contentRef?.querySelector("li.is-selected");
|
|
170
|
+
}
|
|
171
|
+
const { handleKeydown } = useKeyboard({
|
|
172
|
+
options,
|
|
173
|
+
currentIndex,
|
|
174
|
+
selectOption: handleSelect,
|
|
175
|
+
getCurrentEl
|
|
176
|
+
});
|
|
177
|
+
return (_ctx, _cache) => {
|
|
178
|
+
return !unref(readonly) ? (openBlock(), createBlock(unref(_sfc_main$2), {
|
|
179
|
+
key: 0,
|
|
180
|
+
trigger: "click",
|
|
181
|
+
class: normalizeClass([unref(cls).b, unref(bem).is("disabled", unref(disabled))]),
|
|
182
|
+
ref_key: "dropdownRef",
|
|
183
|
+
ref: dropdownRef,
|
|
184
|
+
visible: dropdownVisible.value,
|
|
185
|
+
"onUpdate:visible": [_cache[1] || (_cache[1] = ($event) => dropdownVisible.value = $event), handleDropdownVisible],
|
|
186
|
+
"content-class": [
|
|
187
|
+
unref(cls).e("panel"),
|
|
188
|
+
unref(cls).em("panel", unref(size)),
|
|
189
|
+
__props.contentClass
|
|
190
|
+
],
|
|
191
|
+
"content-style": __props.contentStyle,
|
|
192
|
+
disabled: unref(disabled),
|
|
193
|
+
"min-width": __props.minWidth,
|
|
194
|
+
width: __props.width,
|
|
195
|
+
onKeydown: unref(handleKeydown)
|
|
196
|
+
}, {
|
|
197
|
+
trigger: withCtx(() => [createVNode(unref(input_default), {
|
|
198
|
+
size: unref(size),
|
|
199
|
+
disabled: unref(disabled),
|
|
200
|
+
placeholder: __props.placeholder,
|
|
201
|
+
clearable: __props.clearable,
|
|
202
|
+
"model-value": selected.value ? unref(o)(selected.value).get(__props.labelKey) ?? label.value : __props.modelValue,
|
|
203
|
+
onClear: handleClear,
|
|
204
|
+
onKeydown: unref(handleKeydown),
|
|
205
|
+
"native-readonly": ""
|
|
206
|
+
}, createSlots({
|
|
207
|
+
suffix: withCtx(() => [createVNode(unref(_sfc_main$1), { class: normalizeClass(unref(cls).e("arrow")) }, {
|
|
208
|
+
default: withCtx(() => [createVNode(unref(ArrowDown))]),
|
|
209
|
+
_: 1
|
|
210
|
+
}, 8, ["class"])]),
|
|
211
|
+
_: 2
|
|
212
|
+
}, [_ctx.$slots.prefix ? {
|
|
213
|
+
name: "prefix",
|
|
214
|
+
fn: withCtx(() => [renderSlot(_ctx.$slots, "prefix")]),
|
|
215
|
+
key: "0"
|
|
216
|
+
} : void 0]), 1032, [
|
|
217
|
+
"size",
|
|
218
|
+
"disabled",
|
|
219
|
+
"placeholder",
|
|
220
|
+
"clearable",
|
|
221
|
+
"model-value",
|
|
222
|
+
"onKeydown"
|
|
223
|
+
])]),
|
|
224
|
+
content: withCtx(() => [
|
|
225
|
+
createCommentVNode(" 过滤器 "),
|
|
226
|
+
filterable.value ? (openBlock(), createElementBlock("div", {
|
|
227
|
+
key: 0,
|
|
228
|
+
class: normalizeClass(unref(cls).e("content-filter"))
|
|
229
|
+
}, [withDirectives((openBlock(), createBlock(unref(input_default), {
|
|
230
|
+
placeholder: "输入关键字进行搜索",
|
|
231
|
+
tabindex: "0",
|
|
232
|
+
modelValue: unref(queryString),
|
|
233
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(queryString) ? queryString.value = $event : null)
|
|
234
|
+
}, {
|
|
235
|
+
suffix: withCtx(() => [createVNode(unref(_sfc_main$1), null, {
|
|
236
|
+
default: withCtx(() => [createVNode(unref(Search))]),
|
|
237
|
+
_: 1
|
|
238
|
+
})]),
|
|
239
|
+
_: 1
|
|
240
|
+
}, 8, ["modelValue"])), [[unref(vFocus)]])], 2)) : createCommentVNode("v-if", true),
|
|
241
|
+
createCommentVNode(" 单选列表 "),
|
|
242
|
+
unref(options).length ? (openBlock(), createBlock(unref(_sfc_main$3), {
|
|
243
|
+
key: 1,
|
|
244
|
+
tag: "ul",
|
|
245
|
+
class: normalizeClass(unref(cls).e("options")),
|
|
246
|
+
ref_key: "scrollRef",
|
|
247
|
+
ref: scrollRef,
|
|
248
|
+
"content-class": [
|
|
249
|
+
unref(cls).e("options-wrap"),
|
|
250
|
+
unref(bem).is("virtual", virtualEnabled.value),
|
|
251
|
+
unref(bem).is("grid", !!__props.grid)
|
|
252
|
+
],
|
|
253
|
+
"content-style": {
|
|
254
|
+
height: virtualEnabled.value ? unref(withUnit)(unref(totalHeight), "px") : void 0,
|
|
255
|
+
gridTemplateColumns: __props.grid ? `repeat(${__props.grid.cols}, minmax(0px, 1fr))` : void 0,
|
|
256
|
+
gridGap: __props.grid ? unref(withUnit)(__props.grid.gap, "px") : void 0
|
|
257
|
+
}
|
|
258
|
+
}, {
|
|
259
|
+
default: withCtx(() => [virtualEnabled.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createCommentVNode(" @vue-ignore "), (openBlock(true), createElementBlock(Fragment, null, renderList(virtualOptions.value, ({ option, index, val, label, key, offset }) => {
|
|
260
|
+
return openBlock(), createElementBlock("li", {
|
|
261
|
+
class: normalizeClass([unref(optionClass), unref(bem).is("selected", index === currentIndex.value)]),
|
|
262
|
+
onClick: ($event) => handleSelect(option, index),
|
|
263
|
+
key,
|
|
264
|
+
style: normalizeStyle({ transform: `translateY(${offset}px)` }),
|
|
265
|
+
"data-index": index,
|
|
266
|
+
ref_for: true,
|
|
267
|
+
ref: unref(measureElement)
|
|
268
|
+
}, [renderSlot(_ctx.$slots, "default", mergeProps({ ref_for: true }, {
|
|
269
|
+
option,
|
|
270
|
+
index
|
|
271
|
+
}), () => [createTextVNode(toDisplayString(label), 1)])], 14, _hoisted_1);
|
|
272
|
+
}), 128))], 64)) : (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(unref(options), (option, index) => {
|
|
273
|
+
return openBlock(), createElementBlock("li", {
|
|
274
|
+
class: normalizeClass([unref(optionClass), unref(bem).is("selected", index === currentIndex.value)]),
|
|
275
|
+
onClick: ($event) => handleSelect(option, index),
|
|
276
|
+
"data-index": index,
|
|
277
|
+
title: unref(o)(option).get(__props.labelKey),
|
|
278
|
+
key: unref(o)(option).get(__props.valueKey)
|
|
279
|
+
}, [renderSlot(_ctx.$slots, "default", mergeProps({ ref_for: true }, {
|
|
280
|
+
option,
|
|
281
|
+
index
|
|
282
|
+
}), () => [createTextVNode(toDisplayString(unref(o)(option).get(__props.labelKey)), 1)])], 10, _hoisted_2);
|
|
283
|
+
}), 128))]),
|
|
284
|
+
_: 3
|
|
285
|
+
}, 8, [
|
|
286
|
+
"class",
|
|
287
|
+
"content-class",
|
|
288
|
+
"content-style"
|
|
289
|
+
])) : (openBlock(), createElementBlock("div", {
|
|
290
|
+
key: 2,
|
|
291
|
+
class: normalizeClass(unref(cls).e("empty"))
|
|
292
|
+
}, [createVNode(unref(_sfc_main$4))], 2))
|
|
293
|
+
]),
|
|
294
|
+
_: 3
|
|
295
|
+
}, 8, [
|
|
296
|
+
"class",
|
|
297
|
+
"visible",
|
|
298
|
+
"content-class",
|
|
299
|
+
"content-style",
|
|
300
|
+
"disabled",
|
|
301
|
+
"min-width",
|
|
302
|
+
"width",
|
|
303
|
+
"onKeydown"
|
|
304
|
+
])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [createTextVNode(toDisplayString(label.value || selected.value?.[__props.labelKey] || unref(FORM_EMPTY_CONTENT)), 1)], 64));
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
});
|
|
308
|
+
//#endregion
|
|
309
|
+
export { _sfc_main as default };
|
|
310
|
+
|
|
311
|
+
//# sourceMappingURL=select.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"select.js","names":["$slots"],"sources":["../../../src/components/select/select.vue"],"sourcesContent":["<template>\n <u-dropdown\n v-if=\"!readonly\"\n trigger=\"click\"\n :class=\"[cls.b, bem.is('disabled', disabled)]\"\n ref=\"dropdownRef\"\n v-model:visible=\"dropdownVisible\"\n :content-class=\"[cls.e('panel'), cls.em('panel', size), contentClass]\"\n :content-style=\"contentStyle\"\n :disabled=\"disabled\"\n :min-width=\"minWidth\"\n :width=\"width\"\n @keydown=\"handleKeydown\"\n @update:visible=\"handleDropdownVisible\"\n >\n <!-- 触发 -->\n <template #trigger>\n <u-input\n :size=\"size\"\n :disabled=\"disabled\"\n :placeholder=\"placeholder\"\n :clearable=\"clearable\"\n :model-value=\"selected ? (o(selected).get(labelKey) ?? label) : modelValue\"\n @clear=\"handleClear\"\n @keydown=\"handleKeydown\"\n native-readonly\n >\n <template #prefix v-if=\"$slots.prefix\">\n <slot name=\"prefix\" />\n </template>\n\n <template #suffix>\n <u-icon :class=\"cls.e('arrow')\">\n <ArrowDown />\n </u-icon>\n </template>\n </u-input>\n </template>\n\n <!-- 下拉内容 -->\n <template #content>\n <!-- 过滤器 -->\n <div v-if=\"filterable\" :class=\"cls.e('content-filter')\">\n <u-input placeholder=\"输入关键字进行搜索\" tabindex=\"0\" v-focus v-model=\"queryString\">\n <template #suffix>\n <u-icon>\n <Search />\n </u-icon>\n </template>\n </u-input>\n </div>\n\n <!-- 单选列表 -->\n <u-scroll\n v-if=\"options.length\"\n tag=\"ul\"\n :class=\"cls.e('options')\"\n ref=\"scrollRef\"\n :content-class=\"[\n cls.e('options-wrap'),\n bem.is('virtual', virtualEnabled),\n bem.is('grid', !!grid)\n ]\"\n :content-style=\"{\n height: virtualEnabled ? withUnit(totalHeight, 'px') : undefined,\n gridTemplateColumns: grid ? `repeat(${grid.cols}, minmax(0px, 1fr))` : undefined,\n gridGap: grid ? withUnit(grid.gap, 'px') : undefined\n }\"\n >\n <template v-if=\"virtualEnabled\">\n <!-- @vue-ignore -->\n <li\n v-for=\"{ option, index, val, label, key, offset } of virtualOptions\"\n :class=\"[optionClass, bem.is('selected', index === currentIndex)]\"\n @click=\"handleSelect(option, index)\"\n :key=\"key\"\n :style=\"{ transform: `translateY(${offset}px)` }\"\n :data-index=\"index\"\n :ref=\"measureElement\"\n >\n <slot v-bind=\"{ option, index }\">\n {{ label }}\n </slot>\n </li>\n </template>\n\n <template v-else>\n <li\n v-for=\"(option, index) of options\"\n :class=\"[optionClass, bem.is('selected', index === currentIndex)]\"\n @click=\"handleSelect(option, index)\"\n :data-index=\"index\"\n :title=\"o(option).get(labelKey)\"\n :key=\"o(option).get(valueKey)\"\n >\n <slot v-bind=\"{ option, index }\">\n {{ o(option).get(labelKey) }}\n </slot>\n </li>\n </template>\n </u-scroll>\n\n <div v-else :class=\"cls.e('empty')\">\n <UEmpty />\n </div>\n </template>\n </u-dropdown>\n\n <template v-else>\n {{ label || selected?.[labelKey] || FORM_EMPTY_CONTENT }}\n </template>\n</template>\n\n<script lang=\"ts\" setup>\nimport { o } from '@cat-kit/core'\nimport { useFormComponent, useFormFallbackProps, useVirtual } from '@veltra/compositions'\nimport { vFocus } from '@veltra/directives'\nimport { ArrowDown, Search } from '@veltra/icons/normal'\nimport { bem, withUnit, scrollIntoContainerView } from '@veltra/utils'\nimport { FORM_EMPTY_CONTENT } from '@veltra/utils'\nimport { computed, nextTick, shallowRef, watch } from 'vue'\n\nimport type {\n SelectEmits,\n SelectProps,\n _SelectExposed,\n DropdownExposed,\n ScrollExposed\n} from '../../types'\nimport { UDropdown } from '../dropdown'\nimport { UEmpty } from '../empty'\nimport { UIcon } from '../icon'\nimport { UInput } from '../input'\nimport { UScroll } from '../scroll'\nimport { useKeyboard } from './use-keyboard'\nimport { useOptions } from './use-options'\n\ndefineOptions({ name: 'Select' })\n\nconst props = withDefaults(defineProps<SelectProps>(), {\n labelKey: 'label',\n valueKey: 'value',\n placeholder: '请选择',\n clearable: true,\n disabled: undefined,\n readonly: undefined\n})\n\nconst emit = defineEmits<SelectEmits>()\n\ndefineSlots<{\n /** 前缀插槽 */\n prefix?: () => any\n /** 默认插槽 */\n default?: (scope: { option: Record<string, any>; index: number }) => any\n}>()\n\nconst cls = bem('select')\n\nconst optionClass = cls.e('option')\n\nconst { formProps } = useFormComponent()\nconst { size, disabled, readonly } = useFormFallbackProps([formProps ?? {}, props], {\n size: 'default',\n disabled: false,\n readonly: false\n})\n\nconst currentIndex = shallowRef(-1)\nconst label = defineModel('text')\nconst selected = shallowRef<Record<string, any>>()\n\nconst dropdownRef = shallowRef<DropdownExposed>()\nconst scrollRef = shallowRef<ScrollExposed>()\n\nconst filterable = computed(() => {\n return props.filterable || typeof props.options === 'function'\n})\n\nconst { queryString, options, temOptionsToCreatedOptions, clearCreatedOptions } = useOptions({\n props\n})\n\n// TODO: 优化\nlet userSelecting = false\nfunction lock() {\n userSelecting = true\n}\n\nfunction unlock() {\n nextTick(() => {\n userSelecting = false\n })\n}\n\n// 回显\nwatch(\n [() => props.modelValue, options],\n ([modelValue, options]) => {\n if (userSelecting) return\n\n if (!options?.length) return\n\n if (modelValue !== undefined) {\n const { valueKey } = props\n currentIndex.value = options.findIndex((option) => o(option).get(valueKey) === modelValue)\n selected.value = options[currentIndex.value]\n } else {\n currentIndex.value = -1\n selected.value = undefined\n }\n },\n { immediate: true }\n)\n\nconst {\n virtualList,\n totalHeight,\n virtualEnabled: _virtualEnabled,\n scrollTo,\n measureElement\n} = useVirtual({\n count: computed(() => options.value.length),\n virtualThreshold: 80,\n scrollEl: computed(() => scrollRef.value?.containerRef ?? null),\n gap: 4,\n estimateSize: () => 40\n})\n\nconst virtualEnabled = computed(() => {\n return _virtualEnabled.value && !props.grid\n})\n\nconst virtualOptions = computed(() => {\n const _options = options.value\n const { labelKey, valueKey } = props\n return virtualList.value.map((item) => {\n const option = _options[item.index]!\n return {\n option,\n index: item.index,\n label: o(option).get(labelKey),\n val: o(option).get(valueKey),\n key: item.key,\n offset: item.start\n }\n })\n})\n\nwatch([scrollRef, virtualEnabled], ([scroll, virtualEnabled]) => {\n if (!scroll || !props.modelValue) return\n\n if (virtualEnabled) {\n const index = options.value.findIndex((option) => option === selected.value)\n index !== -1 && dropdownVisible.value && nextTick(() => scrollTo(index))\n } else {\n const selectedEl = scroll?.contentRef?.getElementsByClassName('is-selected')[0]\n if (selectedEl) {\n scrollIntoContainerView(selectedEl as HTMLElement, scroll.containerRef ?? null)\n }\n }\n})\n\nconst dropdownVisible = shallowRef(false)\n\nwatch(dropdownVisible, (v) => {\n if (!v) {\n queryString.value = ''\n }\n})\n\nconst handleDropdownVisible = (visible: boolean) => {\n if (!visible) {\n queryString.value = ''\n }\n}\n\n/** 单选 */\nconst handleSelect = (option: Record<string, any>, index: number) => {\n lock()\n selected.value = option\n\n emit('update:modelValue', option?.[props.valueKey])\n label.value = option?.[props.labelKey]\n emit('change', option)\n if (option.__isTemp) {\n temOptionsToCreatedOptions()\n }\n currentIndex.value = index\n dropdownRef.value?.close()\n\n unlock()\n}\n\n/** 清除选项 */\nconst handleClear = () => {\n lock()\n selected.value = undefined\n clearCreatedOptions()\n emit('update:modelValue', undefined)\n emit('change', undefined)\n unlock()\n}\n\nfunction getCurrentEl() {\n return scrollRef.value?.contentRef?.querySelector('li.is-selected') as HTMLElement | undefined\n}\n\nconst { handleKeydown } = useKeyboard({\n options,\n currentIndex,\n selectOption: handleSelect,\n getCurrentEl\n})\n</script>\n"],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { SelectProps } from "../../types/select.js";
|
|
2
|
+
import * as _$vue from "vue";
|
|
3
|
+
|
|
4
|
+
//#region src/components/select/select.vue.d.ts
|
|
5
|
+
type __VLS_Props = SelectProps;
|
|
6
|
+
type __VLS_Slots = {
|
|
7
|
+
/** 前缀插槽 */prefix?: () => any; /** 默认插槽 */
|
|
8
|
+
default?: (scope: {
|
|
9
|
+
option: Record<string, any>;
|
|
10
|
+
index: number;
|
|
11
|
+
}) => any;
|
|
12
|
+
};
|
|
13
|
+
type __VLS_ModelProps = {
|
|
14
|
+
'text'?: any;
|
|
15
|
+
};
|
|
16
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
17
|
+
declare const __VLS_base: _$vue.DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
|
|
18
|
+
"update:text": (value: any) => any;
|
|
19
|
+
} & {
|
|
20
|
+
"update:modelValue": (modelValue?: any) => any;
|
|
21
|
+
change: (option?: Record<string, any> | undefined) => any;
|
|
22
|
+
"update:label": (label?: string | undefined) => any;
|
|
23
|
+
}, string, _$vue.PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
24
|
+
"onUpdate:modelValue"?: ((modelValue?: any) => any) | undefined;
|
|
25
|
+
onChange?: ((option?: Record<string, any> | undefined) => any) | undefined;
|
|
26
|
+
"onUpdate:text"?: ((value: any) => any) | undefined;
|
|
27
|
+
"onUpdate:label"?: ((label?: string | undefined) => any) | undefined;
|
|
28
|
+
}>, {
|
|
29
|
+
readonly: boolean;
|
|
30
|
+
disabled: boolean;
|
|
31
|
+
placeholder: string;
|
|
32
|
+
clearable: boolean;
|
|
33
|
+
labelKey: string;
|
|
34
|
+
valueKey: string;
|
|
35
|
+
}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
|
|
36
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
37
|
+
declare const _default: typeof __VLS_export;
|
|
38
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
39
|
+
new (): {
|
|
40
|
+
$slots: S;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
//#endregion
|
|
44
|
+
export { _default };
|
|
45
|
+
//# sourceMappingURL=select.vue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
@charset "UTF-8";
|
|
2
|
+
/** flex布局 */
|
|
3
|
+
/**
|
|
4
|
+
* 设置css变量
|
|
5
|
+
* 参数1:变量前缀
|
|
6
|
+
* 参数2: 一个由值组成的列表或者由key, value组成的map
|
|
7
|
+
* css-var(height, (
|
|
8
|
+
* large: 40px
|
|
9
|
+
* default: 32px
|
|
10
|
+
* small: 24px
|
|
11
|
+
* ))
|
|
12
|
+
* 生成的css变量:
|
|
13
|
+
* --u-height-large: 40px;
|
|
14
|
+
* --u-height-default: 32px;
|
|
15
|
+
* --u-height-small: 24px;
|
|
16
|
+
*/
|
|
17
|
+
/** 暗色:data-theme 与系统偏好,与 UITheme.injectBuiltInThemes 选择器策略一致 */
|
|
18
|
+
.u-select {
|
|
19
|
+
--u-menu-hover-bg: rgba(148, 163, 184, 0.12);
|
|
20
|
+
--u-menu-hover-color: var(--u-text-color-title);
|
|
21
|
+
--u-menu-active-bg: rgba(59, 130, 246, 0.12);
|
|
22
|
+
--u-menu-active-color: var(--u-color-primary-dark-1);
|
|
23
|
+
}
|
|
24
|
+
html[data-theme=dark] .u-select {
|
|
25
|
+
--u-menu-hover-bg: rgba(148, 163, 184, 0.14);
|
|
26
|
+
--u-menu-hover-color: var(--u-text-color-title);
|
|
27
|
+
--u-menu-active-bg: rgba(96, 165, 250, 0.2);
|
|
28
|
+
--u-menu-active-color: var(--u-text-color-white);
|
|
29
|
+
}
|
|
30
|
+
@media (prefers-color-scheme: dark) {
|
|
31
|
+
html:not([data-theme=light]) .u-select {
|
|
32
|
+
--u-menu-hover-bg: rgba(148, 163, 184, 0.14);
|
|
33
|
+
--u-menu-hover-color: var(--u-text-color-title);
|
|
34
|
+
--u-menu-active-bg: rgba(96, 165, 250, 0.2);
|
|
35
|
+
--u-menu-active-color: var(--u-text-color-white);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
.u-select {
|
|
39
|
+
width: 100%;
|
|
40
|
+
}
|
|
41
|
+
.u-select__content-filter {
|
|
42
|
+
border-bottom: 1px solid var(--u-border-color);
|
|
43
|
+
background-color: var(--u-bg-color-middle);
|
|
44
|
+
}
|
|
45
|
+
.u-select__content-filter .u-input {
|
|
46
|
+
box-shadow: none;
|
|
47
|
+
}
|
|
48
|
+
.u-select__options {
|
|
49
|
+
max-height: 180px;
|
|
50
|
+
}
|
|
51
|
+
.u-select.is-disabled .u-select__arrow {
|
|
52
|
+
color: var(--u-text-color-disabled);
|
|
53
|
+
}
|
|
54
|
+
.u-select__options-wrap {
|
|
55
|
+
list-style: none;
|
|
56
|
+
margin: 0;
|
|
57
|
+
padding: 0;
|
|
58
|
+
display: flex;
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
gap: 4px;
|
|
61
|
+
}
|
|
62
|
+
.u-select__options-wrap.is-virtual {
|
|
63
|
+
position: relative;
|
|
64
|
+
}
|
|
65
|
+
.u-select__options-wrap.is-virtual .u-select__option {
|
|
66
|
+
position: absolute;
|
|
67
|
+
top: 0;
|
|
68
|
+
left: 0;
|
|
69
|
+
}
|
|
70
|
+
.u-select__options-wrap.is-grid {
|
|
71
|
+
display: grid;
|
|
72
|
+
gap: unset;
|
|
73
|
+
}
|
|
74
|
+
.u-select__options-wrap.is-grid .u-select__option {
|
|
75
|
+
height: auto;
|
|
76
|
+
line-height: auto;
|
|
77
|
+
}
|
|
78
|
+
.u-select__option {
|
|
79
|
+
cursor: pointer;
|
|
80
|
+
user-select: none;
|
|
81
|
+
width: 100%;
|
|
82
|
+
box-sizing: border-box;
|
|
83
|
+
color: var(--u-text-color-main);
|
|
84
|
+
transition: background-color 0.15s ease, color 0.15s ease;
|
|
85
|
+
overflow: hidden;
|
|
86
|
+
text-overflow: ellipsis;
|
|
87
|
+
white-space: nowrap;
|
|
88
|
+
}
|
|
89
|
+
.u-select__option:hover {
|
|
90
|
+
background-color: var(--u-menu-hover-bg);
|
|
91
|
+
color: var(--u-menu-hover-color);
|
|
92
|
+
}
|
|
93
|
+
.u-select__option.is-selected {
|
|
94
|
+
position: relative;
|
|
95
|
+
background-color: var(--u-menu-active-bg);
|
|
96
|
+
color: var(--u-menu-active-color);
|
|
97
|
+
font-weight: 600;
|
|
98
|
+
}
|
|
99
|
+
.u-select__option.is-selected::before {
|
|
100
|
+
content: "";
|
|
101
|
+
position: absolute;
|
|
102
|
+
left: 0;
|
|
103
|
+
top: 50%;
|
|
104
|
+
width: 3px;
|
|
105
|
+
height: 56%;
|
|
106
|
+
min-height: 10px;
|
|
107
|
+
border-radius: 9999px;
|
|
108
|
+
background-color: var(--u-color-primary);
|
|
109
|
+
transform: translateY(-50%);
|
|
110
|
+
pointer-events: none;
|
|
111
|
+
}
|
|
112
|
+
.u-select__empty {
|
|
113
|
+
color: var(--u-text-color-main);
|
|
114
|
+
}
|
|
115
|
+
.u-select__panel--small .u-select__content-filter {
|
|
116
|
+
padding: calc(var(--u-gap-small) / 2) var(--u-gap-small);
|
|
117
|
+
}
|
|
118
|
+
.u-select__panel--small .u-select__options {
|
|
119
|
+
padding: var(--u-gap-small);
|
|
120
|
+
}
|
|
121
|
+
.u-select__panel--small .u-select__option {
|
|
122
|
+
padding: 0 var(--u-gap-small);
|
|
123
|
+
border-radius: var(--u-radius-small);
|
|
124
|
+
height: var(--u-form-component-height-small);
|
|
125
|
+
line-height: var(--u-form-component-height-small);
|
|
126
|
+
}
|
|
127
|
+
.u-select__panel--default .u-select__content-filter {
|
|
128
|
+
padding: calc(var(--u-gap-default) / 2) var(--u-gap-default);
|
|
129
|
+
}
|
|
130
|
+
.u-select__panel--default .u-select__options {
|
|
131
|
+
padding: var(--u-gap-default);
|
|
132
|
+
}
|
|
133
|
+
.u-select__panel--default .u-select__option {
|
|
134
|
+
padding: 0 var(--u-gap-default);
|
|
135
|
+
border-radius: var(--u-radius-default);
|
|
136
|
+
height: var(--u-form-component-height-default);
|
|
137
|
+
line-height: var(--u-form-component-height-default);
|
|
138
|
+
}
|
|
139
|
+
.u-select__panel--large .u-select__content-filter {
|
|
140
|
+
padding: calc(var(--u-gap-large) / 2) var(--u-gap-large);
|
|
141
|
+
}
|
|
142
|
+
.u-select__panel--large .u-select__options {
|
|
143
|
+
padding: var(--u-gap-large);
|
|
144
|
+
}
|
|
145
|
+
.u-select__panel--large .u-select__option {
|
|
146
|
+
padding: 0 var(--u-gap-large);
|
|
147
|
+
border-radius: var(--u-radius-large);
|
|
148
|
+
height: var(--u-form-component-height-large);
|
|
149
|
+
line-height: var(--u-form-component-height-large);
|
|
150
|
+
}
|
|
151
|
+
.u-select__empty {
|
|
152
|
+
text-align: center;
|
|
153
|
+
padding: var(--u-gap-small) 0;
|
|
154
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { nextTick } from "vue";
|
|
2
|
+
//#region src/components/select/use-keyboard.ts
|
|
3
|
+
function useKeyboard(config) {
|
|
4
|
+
const { currentIndex, options, selectOption, getCurrentEl } = config;
|
|
5
|
+
async function navToCurrent() {
|
|
6
|
+
await nextTick();
|
|
7
|
+
getCurrentEl()?.scrollIntoView({ block: "nearest" });
|
|
8
|
+
}
|
|
9
|
+
const keyHandler = {
|
|
10
|
+
ArrowDown: (e) => {
|
|
11
|
+
if (!options.value) return;
|
|
12
|
+
e.preventDefault();
|
|
13
|
+
currentIndex.value = Math.min(currentIndex.value + 1, options.value.length - 1);
|
|
14
|
+
navToCurrent();
|
|
15
|
+
},
|
|
16
|
+
ArrowUp: (e) => {
|
|
17
|
+
if (!options.value) return;
|
|
18
|
+
e.preventDefault();
|
|
19
|
+
currentIndex.value = Math.max(currentIndex.value - 1, 0);
|
|
20
|
+
navToCurrent();
|
|
21
|
+
},
|
|
22
|
+
Enter: (e) => {
|
|
23
|
+
if (!options.value) return;
|
|
24
|
+
e.preventDefault();
|
|
25
|
+
if (currentIndex.value >= 0 && currentIndex.value < options.value.length) {
|
|
26
|
+
const selectedOption = options.value[currentIndex.value];
|
|
27
|
+
selectOption(selectedOption, currentIndex.value);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
/** 键盘事件处理 */
|
|
32
|
+
const handleKeydown = (e) => {
|
|
33
|
+
keyHandler[e.key]?.(e);
|
|
34
|
+
};
|
|
35
|
+
return { handleKeydown };
|
|
36
|
+
}
|
|
37
|
+
//#endregion
|
|
38
|
+
export { useKeyboard };
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=use-keyboard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-keyboard.js","names":[],"sources":["../../../src/components/select/use-keyboard.ts"],"sourcesContent":["import { nextTick, type ShallowRef } from 'vue'\n\ninterface UseKeyboardConfig {\n options: ShallowRef<Record<string, any>[]>\n currentIndex: ShallowRef<number>\n selectOption: (option: Record<string, any>, index: number) => void\n getCurrentEl: () => HTMLElement | undefined\n}\n\ninterface UseKeyboardReturned {\n /** 键盘事件处理 */\n handleKeydown: (e: KeyboardEvent) => void\n}\n\nexport function useKeyboard(config: UseKeyboardConfig): UseKeyboardReturned {\n const { currentIndex, options, selectOption, getCurrentEl } = config\n\n async function navToCurrent() {\n await nextTick()\n getCurrentEl()?.scrollIntoView({ block: 'nearest' })\n }\n\n const keyHandler = {\n ArrowDown: (e: KeyboardEvent) => {\n if (!options.value) return\n e.preventDefault()\n currentIndex.value = Math.min(currentIndex.value + 1, options.value.length - 1)\n navToCurrent()\n },\n\n ArrowUp: (e: KeyboardEvent) => {\n if (!options.value) return\n e.preventDefault()\n currentIndex.value = Math.max(currentIndex.value - 1, 0)\n navToCurrent()\n },\n\n Enter: (e: KeyboardEvent) => {\n if (!options.value) return\n e.preventDefault()\n if (currentIndex.value >= 0 && currentIndex.value < options.value.length) {\n const selectedOption = options.value[currentIndex.value]!\n selectOption(selectedOption, currentIndex.value)\n }\n }\n }\n\n /** 键盘事件处理 */\n const handleKeydown = (e: KeyboardEvent) => {\n keyHandler[e.key]?.(e)\n }\n\n return { handleKeydown }\n}\n"],"mappings":";;AAcA,SAAgB,YAAY,QAAgD;CAC1E,MAAM,EAAE,cAAc,SAAS,cAAc,iBAAiB;CAE9D,eAAe,eAAe;AAC5B,QAAM,UAAU;AAChB,gBAAc,EAAE,eAAe,EAAE,OAAO,WAAW,CAAC;;CAGtD,MAAM,aAAa;EACjB,YAAY,MAAqB;AAC/B,OAAI,CAAC,QAAQ,MAAO;AACpB,KAAE,gBAAgB;AAClB,gBAAa,QAAQ,KAAK,IAAI,aAAa,QAAQ,GAAG,QAAQ,MAAM,SAAS,EAAE;AAC/E,iBAAc;;EAGhB,UAAU,MAAqB;AAC7B,OAAI,CAAC,QAAQ,MAAO;AACpB,KAAE,gBAAgB;AAClB,gBAAa,QAAQ,KAAK,IAAI,aAAa,QAAQ,GAAG,EAAE;AACxD,iBAAc;;EAGhB,QAAQ,MAAqB;AAC3B,OAAI,CAAC,QAAQ,MAAO;AACpB,KAAE,gBAAgB;AAClB,OAAI,aAAa,SAAS,KAAK,aAAa,QAAQ,QAAQ,MAAM,QAAQ;IACxE,MAAM,iBAAiB,QAAQ,MAAM,aAAa;AAClD,iBAAa,gBAAgB,aAAa,MAAM;;;EAGrD;;CAGD,MAAM,iBAAiB,MAAqB;AAC1C,aAAW,EAAE,OAAO,EAAE;;AAGxB,QAAO,EAAE,eAAe"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { computed, shallowRef, watch } from "vue";
|
|
2
|
+
import { debounce, o } from "@cat-kit/core";
|
|
3
|
+
//#region src/components/select/use-options.ts
|
|
4
|
+
function useOptions(o$1) {
|
|
5
|
+
const { props } = o$1;
|
|
6
|
+
/** 筛选 */
|
|
7
|
+
const queryString = shallowRef("");
|
|
8
|
+
const remoteOptions = shallowRef([]);
|
|
9
|
+
const filteredOptions = shallowRef([]);
|
|
10
|
+
const tempOptions = shallowRef([]);
|
|
11
|
+
const createdOptions = shallowRef([]);
|
|
12
|
+
function temOptionsToCreatedOptions() {
|
|
13
|
+
createdOptions.value = tempOptions.value.map((item) => {
|
|
14
|
+
return {
|
|
15
|
+
...item,
|
|
16
|
+
__isTemp: false
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function clearCreatedOptions() {
|
|
21
|
+
createdOptions.value = [];
|
|
22
|
+
}
|
|
23
|
+
const setTempOption = (qs, options) => {
|
|
24
|
+
if (!qs?.trim() || !props.creatable) {
|
|
25
|
+
tempOptions.value = [];
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
if (!(options ? options.some((option) => {
|
|
29
|
+
return o(option).get(props.labelKey) === qs;
|
|
30
|
+
}) : false)) tempOptions.value = [{
|
|
31
|
+
[props.labelKey]: qs,
|
|
32
|
+
[props.valueKey]: qs,
|
|
33
|
+
__isTemp: true
|
|
34
|
+
}];
|
|
35
|
+
};
|
|
36
|
+
const allOptions = computed(() => {
|
|
37
|
+
const { options } = props;
|
|
38
|
+
if (typeof options === "function") return remoteOptions.value;
|
|
39
|
+
return options ?? [];
|
|
40
|
+
});
|
|
41
|
+
/** 展示的选项 */
|
|
42
|
+
const options = computed(() => {
|
|
43
|
+
const { options } = props;
|
|
44
|
+
if (typeof options === "function") return remoteOptions.value;
|
|
45
|
+
const prependOptions = tempOptions.value?.length ? tempOptions.value : createdOptions.value;
|
|
46
|
+
if (!options) return prependOptions;
|
|
47
|
+
return [...prependOptions, ...filteredOptions.value];
|
|
48
|
+
});
|
|
49
|
+
watch([queryString, () => props.options], debounce(async ([qs, propsOptions]) => {
|
|
50
|
+
if (typeof propsOptions === "function") {
|
|
51
|
+
const options = await propsOptions(qs);
|
|
52
|
+
remoteOptions.value = options;
|
|
53
|
+
setTempOption(qs, options);
|
|
54
|
+
} else {
|
|
55
|
+
const { labelKey } = props;
|
|
56
|
+
if (!qs) {
|
|
57
|
+
filteredOptions.value = propsOptions ?? [];
|
|
58
|
+
setTempOption(qs, filteredOptions.value);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const _filteredOptions = propsOptions?.filter((item) => {
|
|
62
|
+
return o(item).get(labelKey)?.includes(qs) ?? false;
|
|
63
|
+
}) ?? [];
|
|
64
|
+
setTempOption(qs, _filteredOptions);
|
|
65
|
+
filteredOptions.value = _filteredOptions;
|
|
66
|
+
}
|
|
67
|
+
}, 200), { immediate: true });
|
|
68
|
+
return {
|
|
69
|
+
queryString,
|
|
70
|
+
options,
|
|
71
|
+
allOptions,
|
|
72
|
+
temOptionsToCreatedOptions,
|
|
73
|
+
clearCreatedOptions
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
//#endregion
|
|
77
|
+
export { useOptions };
|
|
78
|
+
|
|
79
|
+
//# sourceMappingURL=use-options.js.map
|