ep-craft 0.1.26 → 0.1.28

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.
Files changed (87) hide show
  1. package/dist/components/date-picker/src/date-picker.js +38 -34
  2. package/dist/components/date-picker/src/props.js +19 -7
  3. package/dist/components/form/EpForm.vue.d.ts +61 -0
  4. package/dist/components/form/EpForm.vue.js +199 -0
  5. package/dist/components/form/EpForm2.vue.js +4 -0
  6. package/dist/components/form/index.d.ts +12 -2
  7. package/dist/components/form/index.js +9 -3
  8. package/dist/components/form/instance.d.ts +2 -0
  9. package/dist/components/form/src/form-item.d.ts +103 -0
  10. package/dist/components/form/src/form-item.js +91 -0
  11. package/dist/components/form/src/form-label-wrap.d.ts +11 -0
  12. package/dist/components/form/src/form-label-wrap.js +74 -0
  13. package/dist/components/form/src/form.d.ts +127 -0
  14. package/dist/components/form/src/form.js +112 -0
  15. package/dist/components/form/src/types.d.ts +48 -19
  16. package/dist/components/form/src/utils.d.ts +9 -0
  17. package/dist/components/form/src/utils.js +45 -0
  18. package/dist/components/form-item/EpFormItem.vue.d.ts +55 -0
  19. package/dist/components/form-item/EpFormItem.vue.js +257 -0
  20. package/dist/components/form-item/EpFormItem2.vue.js +4 -0
  21. package/dist/components/form-item/index.d.ts +5 -2
  22. package/dist/components/form-item/index.js +5 -3
  23. package/dist/components/form-item/instance.d.ts +2 -0
  24. package/dist/components/scrollbar/index.d.ts +1 -0
  25. package/dist/components/scrollbar/src/util.d.ts +40 -0
  26. package/dist/components/scrollbar/src/util.js +25 -0
  27. package/dist/components/select/select.vue.d.ts +9 -9
  28. package/dist/components/select/src/useSelect.d.ts +3 -3
  29. package/dist/components/select-v2/index.d.ts +6 -2
  30. package/dist/components/select-v2/index.js +7 -4
  31. package/dist/components/select-v2/src/defaults.d.ts +258 -0
  32. package/dist/components/select-v2/src/defaults.js +359 -0
  33. package/dist/components/select-v2/src/group-item.vue.d.ts +40 -0
  34. package/dist/components/select-v2/src/group-item.vue.js +13 -0
  35. package/dist/components/select-v2/src/group-item2.vue.js +33 -0
  36. package/dist/components/select-v2/src/option-item.vue.d.ts +66 -0
  37. package/dist/components/select-v2/src/option-item.vue.js +37 -0
  38. package/dist/components/select-v2/src/option-item2.vue.js +46 -0
  39. package/dist/components/select-v2/src/select-dropdown.d.ts +53 -0
  40. package/dist/components/select-v2/src/select-dropdown.js +209 -0
  41. package/dist/components/select-v2/src/select.types.d.ts +2 -1
  42. package/dist/components/select-v2/src/select.vue.d.ts +918 -0
  43. package/dist/components/select-v2/src/select.vue.js +388 -0
  44. package/dist/components/select-v2/src/select2.vue.js +86 -0
  45. package/dist/components/select-v2/src/token.d.ts +16 -0
  46. package/dist/components/select-v2/src/token.js +6 -0
  47. package/dist/components/select-v2/src/useAllowCreate.d.ts +8 -0
  48. package/dist/components/select-v2/src/useAllowCreate.js +64 -0
  49. package/dist/components/select-v2/src/useOption.d.ts +7 -0
  50. package/dist/components/select-v2/src/useOption.js +13 -0
  51. package/dist/components/select-v2/src/useProps.d.ts +2 -3
  52. package/dist/components/select-v2/src/useSelect.d.ts +129 -0
  53. package/dist/components/select-v2/src/useSelect.js +501 -0
  54. package/dist/components/time-picker/index.js +10 -11
  55. package/dist/components/time-picker/src/common/picker.vue.d.ts +131 -125
  56. package/dist/components/time-picker/src/common/picker.vue.js +163 -160
  57. package/dist/components/time-picker/src/common/props.d.ts +0 -1
  58. package/dist/components/time-picker/src/common/props.js +13 -14
  59. package/dist/components/time-picker/src/time-picker.d.ts +0 -3
  60. package/dist/components/virtual-list/index.d.ts +8 -0
  61. package/dist/components/virtual-list/src/builders/build-list.d.ts +187 -0
  62. package/dist/components/virtual-list/src/builders/build-list.js +363 -0
  63. package/dist/components/virtual-list/src/components/dynamic-size-list.d.ts +186 -0
  64. package/dist/components/virtual-list/src/components/dynamic-size-list.js +112 -0
  65. package/dist/components/virtual-list/src/components/fixed-size-list.d.ts +185 -0
  66. package/dist/components/virtual-list/src/components/fixed-size-list.js +68 -0
  67. package/dist/components/virtual-list/src/components/scrollbar.d.ts +79 -0
  68. package/dist/components/virtual-list/src/components/scrollbar.js +134 -0
  69. package/dist/components/virtual-list/src/defaults.d.ts +27 -0
  70. package/dist/components/virtual-list/src/defaults.js +26 -0
  71. package/dist/components/virtual-list/src/hooks/use-cache.d.ts +1 -0
  72. package/dist/components/virtual-list/src/hooks/use-cache.js +13 -0
  73. package/dist/components/virtual-list/src/hooks/use-wheel.d.ts +13 -0
  74. package/dist/components/virtual-list/src/hooks/use-wheel.js +26 -0
  75. package/dist/components/virtual-list/src/props.d.ts +211 -0
  76. package/dist/components/virtual-list/src/props.js +151 -0
  77. package/dist/components/virtual-list/src/types.d.ts +152 -0
  78. package/dist/components/virtual-list/src/utils.d.ts +16 -0
  79. package/dist/components/virtual-list/src/utils.js +22 -0
  80. package/dist/hooks/use-float-label/index.d.ts +6 -2
  81. package/dist/hooks/use-float-label/index.js +11 -7
  82. package/dist/index.css +1 -1
  83. package/dist/utils/objects.js +11 -3
  84. package/dist/vendored-components.d.ts +1 -1
  85. package/dist/vendored-components.js +1 -0
  86. package/package.json +3 -1
  87. package/theme-chalk/src/float-label.scss +57 -0
@@ -0,0 +1,258 @@
1
+ import type SelectV2 from './select.vue';
2
+ import type { Option, OptionType } from './select.types';
3
+ import type { Props } from './useProps';
4
+ import type { EmitFn } from '@element-plus/utils/vue/typescript';
5
+ import type { CSSProperties, ExtractPropTypes, ExtractPublicPropTypes } from 'vue';
6
+ import type { Options, Placement, PopperEffect } from '@element-plus/components/popper';
7
+ /**
8
+ * @description Tag tooltip configuration interface
9
+ */
10
+ export interface TagTooltipProps {
11
+ appendTo?: string | HTMLElement;
12
+ placement?: Placement;
13
+ fallbackPlacements?: Placement[];
14
+ effect?: PopperEffect;
15
+ popperClass?: string;
16
+ popperStyle?: string | CSSProperties;
17
+ transition?: string;
18
+ teleported?: boolean;
19
+ popperOptions?: Partial<Options>;
20
+ showAfter?: number;
21
+ hideAfter?: number;
22
+ autoClose?: number;
23
+ offset?: number;
24
+ }
25
+ export declare const selectV2Props: {
26
+ readonly ariaLabel: StringConstructor;
27
+ readonly emptyValues: ArrayConstructor;
28
+ readonly valueOnClear: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | (((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null)) | null)[], unknown, unknown, undefined, boolean>;
29
+ readonly floatLabel: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
30
+ readonly allowCreate: BooleanConstructor;
31
+ readonly autocomplete: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list") | (((new (...args: any[]) => "none" | "both" | "inline" | "list") | (() => "none" | "both" | "inline" | "list")) | null)[], unknown, unknown, "none", boolean>;
32
+ readonly automaticDropdown: BooleanConstructor;
33
+ readonly clearable: BooleanConstructor;
34
+ readonly clearIcon: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | (((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component)) | null)[], unknown, unknown, import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, boolean>;
35
+ readonly effect: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => string) | (() => PopperEffect) | (((new (...args: any[]) => string) | (() => PopperEffect)) | null)[], unknown, unknown, "light", boolean>;
36
+ readonly collapseTags: BooleanConstructor;
37
+ readonly collapseTagsTooltip: BooleanConstructor;
38
+ readonly tagTooltip: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps) | (((new (...args: any[]) => TagTooltipProps) | (() => TagTooltipProps)) | null)[], unknown, unknown, () => {}, boolean>;
39
+ readonly maxCollapseTags: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 1, boolean>;
40
+ readonly defaultFirstOption: BooleanConstructor;
41
+ readonly disabled: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, undefined, boolean>;
42
+ readonly estimatedOptionHeight: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, undefined, boolean>;
43
+ readonly filterable: BooleanConstructor;
44
+ readonly filterMethod: {
45
+ readonly type: import("vue").PropType<(query: string) => void>;
46
+ readonly required: false;
47
+ readonly validator: ((val: unknown) => boolean) | undefined;
48
+ __epPropKey: true;
49
+ };
50
+ readonly height: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 274, boolean>;
51
+ readonly itemHeight: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 34, boolean>;
52
+ readonly id: StringConstructor;
53
+ readonly loading: BooleanConstructor;
54
+ readonly loadingText: StringConstructor;
55
+ readonly modelValue: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => any) | (() => any) | {
56
+ (): any;
57
+ new (): any;
58
+ readonly prototype: any;
59
+ } | (((new (...args: any[]) => any) | (() => any) | {
60
+ (): any;
61
+ new (): any;
62
+ readonly prototype: any;
63
+ }) | null)[], unknown, unknown, undefined, boolean>;
64
+ readonly multiple: BooleanConstructor;
65
+ readonly multipleLimit: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
66
+ readonly name: StringConstructor;
67
+ readonly noDataText: StringConstructor;
68
+ readonly noMatchText: StringConstructor;
69
+ readonly remoteMethod: {
70
+ readonly type: import("vue").PropType<(query: string) => void>;
71
+ readonly required: false;
72
+ readonly validator: ((val: unknown) => boolean) | undefined;
73
+ __epPropKey: true;
74
+ };
75
+ readonly reserveKeyword: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
76
+ readonly options: {
77
+ readonly type: import("vue").PropType<OptionType[]>;
78
+ readonly required: true;
79
+ readonly validator: ((val: unknown) => boolean) | undefined;
80
+ __epPropKey: true;
81
+ };
82
+ readonly placeholder: {
83
+ readonly type: import("vue").PropType<string>;
84
+ readonly required: false;
85
+ readonly validator: ((val: unknown) => boolean) | undefined;
86
+ __epPropKey: true;
87
+ };
88
+ readonly teleported: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
89
+ readonly persistent: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
90
+ readonly popperClass: {
91
+ readonly type: import("vue").PropType<import("@element-plus/utils").EpPropMergeType<(new (...args: any[]) => string | {
92
+ [x: string]: boolean;
93
+ } | (string | {
94
+ [x: string]: boolean;
95
+ } | (string | {
96
+ [x: string]: boolean;
97
+ } | (string | {
98
+ [x: string]: boolean;
99
+ } | (string | {
100
+ [x: string]: boolean;
101
+ } | (string | {
102
+ [x: string]: boolean;
103
+ } | (string | {
104
+ [x: string]: boolean;
105
+ } | (string | {
106
+ [x: string]: boolean;
107
+ } | (string | {
108
+ [x: string]: boolean;
109
+ } | (string | {
110
+ [x: string]: boolean;
111
+ } | (string | {
112
+ [x: string]: boolean;
113
+ } | (string | {
114
+ [x: string]: boolean;
115
+ } | /*elided*/ any)[])[])[])[])[])[])[])[])[])[])[]) | (() => string | {
116
+ [x: string]: boolean;
117
+ } | (string | {
118
+ [x: string]: boolean;
119
+ } | (string | {
120
+ [x: string]: boolean;
121
+ } | (string | {
122
+ [x: string]: boolean;
123
+ } | (string | {
124
+ [x: string]: boolean;
125
+ } | (string | {
126
+ [x: string]: boolean;
127
+ } | (string | {
128
+ [x: string]: boolean;
129
+ } | (string | {
130
+ [x: string]: boolean;
131
+ } | (string | {
132
+ [x: string]: boolean;
133
+ } | (string | {
134
+ [x: string]: boolean;
135
+ } | (string | {
136
+ [x: string]: boolean;
137
+ } | (string | {
138
+ [x: string]: boolean;
139
+ } | /*elided*/ any)[])[])[])[])[])[])[])[])[])[])[]) | (((new (...args: any[]) => string | {
140
+ [x: string]: boolean;
141
+ } | (string | {
142
+ [x: string]: boolean;
143
+ } | (string | {
144
+ [x: string]: boolean;
145
+ } | (string | {
146
+ [x: string]: boolean;
147
+ } | (string | {
148
+ [x: string]: boolean;
149
+ } | (string | {
150
+ [x: string]: boolean;
151
+ } | (string | {
152
+ [x: string]: boolean;
153
+ } | (string | {
154
+ [x: string]: boolean;
155
+ } | (string | {
156
+ [x: string]: boolean;
157
+ } | (string | {
158
+ [x: string]: boolean;
159
+ } | (string | {
160
+ [x: string]: boolean;
161
+ } | (string | {
162
+ [x: string]: boolean;
163
+ } | /*elided*/ any)[])[])[])[])[])[])[])[])[])[])[]) | (() => string | {
164
+ [x: string]: boolean;
165
+ } | (string | {
166
+ [x: string]: boolean;
167
+ } | (string | {
168
+ [x: string]: boolean;
169
+ } | (string | {
170
+ [x: string]: boolean;
171
+ } | (string | {
172
+ [x: string]: boolean;
173
+ } | (string | {
174
+ [x: string]: boolean;
175
+ } | (string | {
176
+ [x: string]: boolean;
177
+ } | (string | {
178
+ [x: string]: boolean;
179
+ } | (string | {
180
+ [x: string]: boolean;
181
+ } | (string | {
182
+ [x: string]: boolean;
183
+ } | (string | {
184
+ [x: string]: boolean;
185
+ } | (string | {
186
+ [x: string]: boolean;
187
+ } | /*elided*/ any)[])[])[])[])[])[])[])[])[])[])[])) | null)[], unknown, unknown>>;
188
+ readonly required: false;
189
+ readonly validator: ((val: unknown) => boolean) | undefined;
190
+ __epPropKey: true;
191
+ };
192
+ readonly popperStyle: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => string | false | CSSProperties | import("vue").StyleValue[]) | (() => import("vue").StyleValue) | (((new (...args: any[]) => string | false | CSSProperties | import("vue").StyleValue[]) | (() => import("vue").StyleValue)) | null)[], unknown, unknown, undefined, boolean>;
193
+ readonly popperOptions: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => Partial<Options>) | (() => Partial<Options>) | (((new (...args: any[]) => Partial<Options>) | (() => Partial<Options>)) | null)[], unknown, unknown, () => Partial<Options>, boolean>;
194
+ readonly remote: BooleanConstructor;
195
+ readonly debounce: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 300, boolean>;
196
+ readonly size: {
197
+ readonly type: import("vue").PropType<import("@element-plus/utils").EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
198
+ readonly required: false;
199
+ readonly validator: ((val: unknown) => boolean) | undefined;
200
+ __epPropKey: true;
201
+ };
202
+ readonly props: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => Props) | (() => Props) | (((new (...args: any[]) => Props) | (() => Props)) | null)[], unknown, unknown, () => Required<Props>, boolean>;
203
+ readonly valueKey: import("@element-plus/utils").EpPropFinalized<StringConstructor, unknown, unknown, "value", boolean>;
204
+ readonly scrollbarAlwaysOn: BooleanConstructor;
205
+ readonly validateEvent: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
206
+ readonly offset: import("@element-plus/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 12, boolean>;
207
+ readonly remoteShowSuffix: BooleanConstructor;
208
+ readonly showArrow: import("@element-plus/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
209
+ readonly placement: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement) | (((new (...args: any[]) => "auto" | "left" | "right" | "bottom" | "top" | "auto-start" | "auto-end" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end") | (() => Placement)) | null)[], Placement, unknown, "bottom-start", boolean>;
210
+ readonly fallbackPlacements: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => Placement[]) | (() => Placement[]) | (((new (...args: any[]) => Placement[]) | (() => Placement[])) | null)[], unknown, unknown, readonly ["bottom-start", "top-start", "right", "left"], boolean>;
211
+ readonly tagType: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => "primary" | "success" | "warning" | "info" | "danger") | (() => "primary" | "success" | "warning" | "info" | "danger") | (((new (...args: any[]) => "primary" | "success" | "warning" | "info" | "danger") | (() => "primary" | "success" | "warning" | "info" | "danger")) | null)[], "primary" | "success" | "warning" | "info" | "danger", unknown, "info", boolean>;
212
+ readonly tagEffect: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => "dark" | "light" | "plain") | (() => "dark" | "light" | "plain") | (((new (...args: any[]) => "dark" | "light" | "plain") | (() => "dark" | "light" | "plain")) | null)[], "dark" | "light" | "plain", unknown, "light", boolean>;
213
+ readonly tabindex: import("@element-plus/utils").EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, 0, boolean>;
214
+ readonly appendTo: {
215
+ readonly type: import("vue").PropType<import("@element-plus/utils").EpPropMergeType<(new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement) | (((new (...args: any[]) => string | HTMLElement) | (() => string | HTMLElement)) | null)[], unknown, unknown>>;
216
+ readonly required: false;
217
+ readonly validator: ((val: unknown) => boolean) | undefined;
218
+ __epPropKey: true;
219
+ };
220
+ readonly fitInputWidth: import("@element-plus/utils").EpPropFinalized<readonly [BooleanConstructor, NumberConstructor], unknown, number | boolean, true, boolean>;
221
+ readonly suffixIcon: import("@element-plus/utils").EpPropFinalized<(new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component) | (((new (...args: any[]) => (string | import("vue").Component) & {}) | (() => string | import("vue").Component)) | null)[], unknown, unknown, import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, boolean>;
222
+ };
223
+ export declare const optionV2Props: {
224
+ readonly data: ArrayConstructor;
225
+ readonly disabled: BooleanConstructor;
226
+ readonly hovering: BooleanConstructor;
227
+ readonly item: {
228
+ readonly type: import("vue").PropType<Option>;
229
+ readonly required: true;
230
+ readonly validator: ((val: unknown) => boolean) | undefined;
231
+ __epPropKey: true;
232
+ };
233
+ readonly index: NumberConstructor;
234
+ readonly style: ObjectConstructor;
235
+ readonly selected: BooleanConstructor;
236
+ readonly created: BooleanConstructor;
237
+ };
238
+ export declare const selectV2Emits: {
239
+ "update:modelValue": (val: SelectV2Props["modelValue"]) => boolean;
240
+ change: (val: SelectV2Props["modelValue"]) => boolean;
241
+ 'end-reached': (direction: import("@element-plus/components/scrollbar").ScrollbarDirection) => boolean;
242
+ 'remove-tag': (val: unknown) => boolean;
243
+ 'visible-change': (visible: boolean) => boolean;
244
+ focus: (evt: FocusEvent) => boolean;
245
+ blur: (evt: FocusEvent) => boolean;
246
+ clear: () => boolean;
247
+ };
248
+ export declare const optionV2Emits: {
249
+ hover: (index?: number) => index is number;
250
+ select: (val: Option, index?: number) => boolean;
251
+ };
252
+ export type SelectV2Props = ExtractPropTypes<typeof selectV2Props>;
253
+ export type SelectV2PropsPublic = ExtractPublicPropTypes<typeof selectV2Props>;
254
+ export type OptionV2Props = ExtractPropTypes<typeof optionV2Props>;
255
+ export type OptionV2PropsPublic = ExtractPublicPropTypes<typeof optionV2Props>;
256
+ export type SelectV2EmitFn = EmitFn<typeof selectV2Emits>;
257
+ export type OptionV2EmitFn = EmitFn<typeof optionV2Emits>;
258
+ export type SelectV2Instance = InstanceType<typeof SelectV2> & unknown;
@@ -0,0 +1,359 @@
1
+ import { placements as i } from "@popperjs/core";
2
+ import "vue";
3
+ import { isBoolean as n, isNumber as l } from "../../../utils/types.js";
4
+ import "lodash-unified";
5
+ import "@vueuse/core";
6
+ import "@vue/shared";
7
+ import { CHANGE_EVENT as u, UPDATE_MODEL_EVENT as m } from "../../../constants/event.js";
8
+ import { iconPropType as r } from "../../../utils/vue/icon.js";
9
+ import { buildProps as p, definePropType as t } from "../../../utils/vue/props/runtime.js";
10
+ import { useSizeProp as d } from "../../../hooks/use-size/index.js";
11
+ import "../../../hooks/use-z-index/index.js";
12
+ import "../../../hooks/use-delayed-toggle/index.js";
13
+ import { useAriaProps as s } from "../../../hooks/use-aria/index.js";
14
+ import "../../../hooks/use-model-toggle/index.js";
15
+ import { useEmptyValuesProps as f } from "../../../hooks/use-empty-values/index.js";
16
+ import { floatLabelProp as c } from "../../../hooks/use-float-label/index.js";
17
+ import "../../scrollbar/index.js";
18
+ import "../../tooltip/index.js";
19
+ import { ArrowDown as y, CircleClose as b } from "@element-plus/icons-vue";
20
+ import "../../tag/index.js";
21
+ import { defaultProps as g } from "./useProps.js";
22
+ import { useTooltipContentProps as o } from "../../tooltip/src/content.js";
23
+ import { tagProps as a } from "../../tag/tag.js";
24
+ import { scrollbarEmits as B } from "../../scrollbar/src/scrollbar.js";
25
+ const G = p({
26
+ /**
27
+ * @description whether creating new items is allowed. To use this, `filterable` must be true
28
+ */
29
+ allowCreate: Boolean,
30
+ /**
31
+ * @description autocomplete of select input
32
+ */
33
+ autocomplete: {
34
+ type: t(String),
35
+ default: "none"
36
+ },
37
+ /**
38
+ * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused
39
+ */
40
+ automaticDropdown: Boolean,
41
+ /**
42
+ * @description whether select can be cleared
43
+ */
44
+ clearable: Boolean,
45
+ /**
46
+ * @description custom clear icon
47
+ */
48
+ clearIcon: {
49
+ type: r,
50
+ default: b
51
+ },
52
+ /**
53
+ * @description tooltip theme, built-in theme: `dark` / `light`
54
+ */
55
+ effect: {
56
+ type: t(String),
57
+ default: "light"
58
+ },
59
+ /**
60
+ * @description whether to collapse tags to a text when multiple selecting
61
+ */
62
+ collapseTags: Boolean,
63
+ /**
64
+ * @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true
65
+ */
66
+ collapseTagsTooltip: Boolean,
67
+ /**
68
+ * @description configuration object for the collapse-tags tooltip. To use this, `collapse-tags` and `collapse-tags-tooltip` must be true
69
+ */
70
+ tagTooltip: {
71
+ type: t(Object),
72
+ default: () => ({})
73
+ },
74
+ /**
75
+ * @description The max tags number to be shown. To use this, `collapse-tags` must be true
76
+ */
77
+ maxCollapseTags: {
78
+ type: Number,
79
+ default: 1
80
+ },
81
+ /**
82
+ * @description
83
+ */
84
+ defaultFirstOption: Boolean,
85
+ /**
86
+ * @description is disabled
87
+ */
88
+ disabled: {
89
+ type: Boolean,
90
+ default: void 0
91
+ },
92
+ /**
93
+ * @description Estimated item height for variable option sizes. Defaults to fixed `itemHeight` when omitted.
94
+ */
95
+ estimatedOptionHeight: {
96
+ type: Number,
97
+ default: void 0
98
+ },
99
+ /**
100
+ * @description whether Select is filterable
101
+ */
102
+ filterable: Boolean,
103
+ /**
104
+ * @description custom filter method, the first parameter is the current input value. To use this, `filterable` must be true
105
+ */
106
+ filterMethod: {
107
+ type: t(Function)
108
+ },
109
+ /**
110
+ * @description The height of the dropdown panel, 34px for each item
111
+ */
112
+ height: {
113
+ type: Number,
114
+ default: 274
115
+ // same as select dropdown menu
116
+ },
117
+ /**
118
+ * @description The height of the dropdown item
119
+ */
120
+ itemHeight: {
121
+ type: Number,
122
+ default: 34
123
+ },
124
+ /**
125
+ * @description native input id
126
+ */
127
+ id: String,
128
+ /**
129
+ * @description whether Select is loading data from server
130
+ */
131
+ loading: Boolean,
132
+ /**
133
+ * @description displayed text while loading data from server, default is 'Loading'
134
+ */
135
+ loadingText: String,
136
+ /**
137
+ * @description biding value
138
+ */
139
+ modelValue: {
140
+ type: t([Array, String, Number, Boolean, Object]),
141
+ default: void 0
142
+ },
143
+ /**
144
+ * @description is multiple
145
+ */
146
+ multiple: Boolean,
147
+ /**
148
+ * @description maximum number of options user can select when multiple is true. No limit when set to 0
149
+ */
150
+ multipleLimit: {
151
+ type: Number,
152
+ default: 0
153
+ },
154
+ /**
155
+ * @description the name attribute of select input
156
+ */
157
+ name: String,
158
+ /**
159
+ * @description displayed text when there is no options, you can also use slot empty, the default is 'No Data'
160
+ */
161
+ noDataText: String,
162
+ /**
163
+ * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'
164
+ */
165
+ noMatchText: String,
166
+ /**
167
+ * @description function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true
168
+ */
169
+ remoteMethod: {
170
+ type: t(Function)
171
+ },
172
+ /**
173
+ * @description whether reserve the keyword after select filtered option.
174
+ */
175
+ reserveKeyword: {
176
+ type: Boolean,
177
+ default: !0
178
+ },
179
+ /**
180
+ * @description data of the options, the key of `value` and `label` can be customize by `props`
181
+ */
182
+ options: {
183
+ type: t(Array),
184
+ required: !0
185
+ },
186
+ /**
187
+ * @description placeholder, the default is 'Please select'
188
+ */
189
+ placeholder: {
190
+ type: String
191
+ },
192
+ /**
193
+ * @description whether select dropdown is teleported, if `true` it will be teleported to where `append-to` sets
194
+ */
195
+ teleported: o.teleported,
196
+ /**
197
+ * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed
198
+ */
199
+ persistent: {
200
+ type: Boolean,
201
+ default: !0
202
+ },
203
+ /**
204
+ * @description custom class name for Select's dropdown
205
+ */
206
+ popperClass: o.popperClass,
207
+ /**
208
+ * @description custom style for Select's dropdown
209
+ */
210
+ popperStyle: o.popperStyle,
211
+ /**
212
+ * @description [popper.js](https://popper.js.org/docs/v2/) parameters
213
+ */
214
+ popperOptions: {
215
+ type: t(Object),
216
+ default: () => ({})
217
+ },
218
+ /**
219
+ * @description whether search data from server
220
+ */
221
+ remote: Boolean,
222
+ /**
223
+ * @description debounce delay during remote search, in milliseconds
224
+ */
225
+ debounce: {
226
+ type: Number,
227
+ default: 300
228
+ },
229
+ /**
230
+ * @description size of component
231
+ */
232
+ size: d,
233
+ /**
234
+ * @description configuration options, see the following table
235
+ */
236
+ props: {
237
+ type: t(Object),
238
+ default: () => g
239
+ },
240
+ /**
241
+ * @description unique identity key name for value, required when value is an object
242
+ */
243
+ valueKey: {
244
+ type: String,
245
+ default: "value"
246
+ },
247
+ /**
248
+ * @description Controls whether the scrollbar is always displayed
249
+ */
250
+ scrollbarAlwaysOn: Boolean,
251
+ /**
252
+ * @description whether to trigger form validation
253
+ */
254
+ validateEvent: {
255
+ type: Boolean,
256
+ default: !0
257
+ },
258
+ /**
259
+ * @description offset of the dropdown
260
+ */
261
+ offset: {
262
+ type: Number,
263
+ default: 12
264
+ },
265
+ /**
266
+ * @description in remote search method show suffix icon
267
+ */
268
+ remoteShowSuffix: Boolean,
269
+ /**
270
+ * @description Determines whether the arrow is displayed
271
+ */
272
+ showArrow: {
273
+ type: Boolean,
274
+ default: !0
275
+ },
276
+ /**
277
+ * @description position of dropdown
278
+ */
279
+ placement: {
280
+ type: t(String),
281
+ values: i,
282
+ default: "bottom-start"
283
+ },
284
+ /**
285
+ * @description list of possible positions for dropdown
286
+ */
287
+ fallbackPlacements: {
288
+ type: t(Array),
289
+ default: ["bottom-start", "top-start", "right", "left"]
290
+ },
291
+ /**
292
+ * @description tag type
293
+ */
294
+ tagType: { ...a.type, default: "info" },
295
+ /**
296
+ * @description tag effect
297
+ */
298
+ tagEffect: { ...a.effect, default: "light" },
299
+ /**
300
+ * @description tabindex for input
301
+ */
302
+ tabindex: {
303
+ type: [String, Number],
304
+ default: 0
305
+ },
306
+ /**
307
+ * @description which element the select dropdown appends to
308
+ */
309
+ appendTo: o.appendTo,
310
+ /**
311
+ * @description if it is `true`, the width of the dropdown panel is the same as the input box.
312
+ * if it is `false`, the width is automatically calculated based on the value of `label`,
313
+ * or it can be set to a number to make it a fixed width
314
+ */
315
+ fitInputWidth: {
316
+ type: [Boolean, Number],
317
+ default: !0,
318
+ validator(e) {
319
+ return n(e) || l(e);
320
+ }
321
+ },
322
+ suffixIcon: {
323
+ type: r,
324
+ default: y
325
+ },
326
+ ...c,
327
+ ...f,
328
+ ...s(["ariaLabel"])
329
+ }), U = p({
330
+ data: Array,
331
+ disabled: Boolean,
332
+ hovering: Boolean,
333
+ item: {
334
+ type: t(Object),
335
+ required: !0
336
+ },
337
+ index: Number,
338
+ style: Object,
339
+ selected: Boolean,
340
+ created: Boolean
341
+ }), W = {
342
+ [m]: (e) => !0,
343
+ [u]: (e) => !0,
344
+ "end-reached": B["end-reached"],
345
+ "remove-tag": (e) => !0,
346
+ "visible-change": (e) => !0,
347
+ focus: (e) => e instanceof FocusEvent,
348
+ blur: (e) => e instanceof FocusEvent,
349
+ clear: () => !0
350
+ }, J = {
351
+ hover: (e) => l(e),
352
+ select: (e, v) => !0
353
+ };
354
+ export {
355
+ J as optionV2Emits,
356
+ U as optionV2Props,
357
+ W as selectV2Emits,
358
+ G as selectV2Props
359
+ };
@@ -0,0 +1,40 @@
1
+ import type { CSSProperties, PropType } from 'vue';
2
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
3
+ item: {
4
+ type: ObjectConstructor;
5
+ required: true;
6
+ };
7
+ style: {
8
+ type: PropType<CSSProperties>;
9
+ };
10
+ height: NumberConstructor;
11
+ }>, {
12
+ ns: {
13
+ namespace: import("vue").ComputedRef<string>;
14
+ b: (blockSuffix?: string) => string;
15
+ e: (element?: string) => string;
16
+ m: (modifier?: string) => string;
17
+ be: (blockSuffix?: string, element?: string) => string;
18
+ em: (element?: string, modifier?: string) => string;
19
+ bm: (blockSuffix?: string, modifier?: string) => string;
20
+ bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
21
+ is: {
22
+ (name: string, state: boolean | undefined): string;
23
+ (name: string): string;
24
+ };
25
+ cssVar: (object: Record<string, string>) => Record<string, string>;
26
+ cssVarName: (name: string) => string;
27
+ cssVarBlock: (object: Record<string, string>) => Record<string, string>;
28
+ cssVarBlockName: (name: string) => string;
29
+ };
30
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
31
+ item: {
32
+ type: ObjectConstructor;
33
+ required: true;
34
+ };
35
+ style: {
36
+ type: PropType<CSSProperties>;
37
+ };
38
+ height: NumberConstructor;
39
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
40
+ export default _default;
@@ -0,0 +1,13 @@
1
+ import t from "./group-item2.vue.js";
2
+ import { openBlock as o, createElementBlock as r, normalizeStyle as i, normalizeClass as l, toDisplayString as s } from "vue";
3
+ import n from "../../../_virtual/_plugin-vue_export-helper.js";
4
+ function p(e, a, m, c, f, u) {
5
+ return o(), r("div", {
6
+ class: l(e.ns.be("group", "title")),
7
+ style: i({ ...e.style, lineHeight: `${e.height}px` })
8
+ }, s(e.item.label), 7);
9
+ }
10
+ const h = /* @__PURE__ */ n(t, [["render", p]]);
11
+ export {
12
+ h as default
13
+ };