fast-element-plus 1.0.0-alpha.9 → 1.0.1

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 (155) hide show
  1. package/dist/index.full.js +3180 -4581
  2. package/dist/index.full.js.map +1 -1
  3. package/dist/index.full.min.js +5 -5
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +5 -5
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +3180 -4581
  8. package/dist/index.full.mjs.map +1 -1
  9. package/dist/styles/index.css +2 -2
  10. package/es/components/avatar/index.d.ts +1 -1
  11. package/es/components/avatar/index.mjs.map +1 -1
  12. package/es/components/avatar/src/avatar.d.ts +18 -102
  13. package/es/components/avatar/src/avatar.mjs +1 -2
  14. package/es/components/avatar/src/avatar.mjs.map +1 -1
  15. package/es/components/button/index.d.ts +1 -1
  16. package/es/components/button/index.mjs.map +1 -1
  17. package/es/components/button/src/button.d.ts +35 -180
  18. package/es/components/button/src/button.mjs +14 -4
  19. package/es/components/button/src/button.mjs.map +1 -1
  20. package/es/components/carNumber/src/carNumber.d.ts +58 -194
  21. package/es/components/contextMenu/src/contextMenu.mjs +1 -1
  22. package/es/components/contextMenu/src/contextMenu.mjs.map +1 -1
  23. package/es/components/dialog/src/dialog.d.ts +45 -297
  24. package/es/components/drawer/src/drawer.d.ts +72 -450
  25. package/es/components/form/src/form.d.ts +28 -133
  26. package/es/components/form/src/formItem.d.ts +32 -137
  27. package/es/components/iconSelector/src/iconSelector.mjs +2 -2
  28. package/es/components/iconSelector/src/iconSelector.mjs.map +1 -1
  29. package/es/components/image/src/image.d.ts +43 -253
  30. package/es/components/select/src/select.d.ts +25 -81
  31. package/es/components/select/src/select.mjs +1 -0
  32. package/es/components/select/src/select.mjs.map +1 -1
  33. package/es/components/selectPage/src/selectPage.d.ts +19 -61
  34. package/es/components/selectV2/src/selectV2.d.ts +25 -81
  35. package/es/components/selectV2/src/selectV2.mjs +1 -0
  36. package/es/components/selectV2/src/selectV2.mjs.map +1 -1
  37. package/es/components/table/src/table.d.ts +5 -12
  38. package/es/components/table/src/table.mjs +4 -6
  39. package/es/components/table/src/table.mjs.map +1 -1
  40. package/es/components/table/src/table.state.d.ts +1 -1
  41. package/es/components/table/src/table.type.d.ts +4 -1
  42. package/es/components/table/src/table.type.mjs.map +1 -1
  43. package/es/components/table/src/tableColumn.d.ts +1 -1
  44. package/es/components/table/src/tableColumn.mjs +7 -7
  45. package/es/components/table/src/tableColumn.mjs.map +1 -1
  46. package/es/components/table/src/tableSearchForm.d.ts +6 -4
  47. package/es/components/table/src/tableSearchForm.mjs +2 -2
  48. package/es/components/table/src/tableSearchForm.mjs.map +1 -1
  49. package/es/components/table/src/useTable.mjs +3 -3
  50. package/es/components/table/src/useTable.mjs.map +1 -1
  51. package/es/components/tree/src/tree.d.ts +23 -653
  52. package/es/components/tree/src/tree.mjs +1 -1
  53. package/es/components/tree/src/tree.mjs.map +1 -1
  54. package/es/components/tree/src/tree.type.d.ts +1 -1
  55. package/es/components/treeSelect/src/treeSelect.d.ts +20 -62
  56. package/es/components/treeSelect/src/treeSelect.mjs +1 -0
  57. package/es/components/treeSelect/src/treeSelect.mjs.map +1 -1
  58. package/es/components/upload/src/upload.d.ts +298 -460
  59. package/es/components/upload/src/useUpload.mjs +2 -2
  60. package/es/components/upload/src/useUpload.mjs.map +1 -1
  61. package/es/components/uploadImage/src/uploadImage.d.ts +295 -394
  62. package/es/components/uploadImage/src/uploadImage.mjs +1 -1
  63. package/es/components/uploadImage/src/uploadImage.mjs.map +1 -1
  64. package/es/components/uploadImages/src/uploadImages.d.ts +300 -420
  65. package/es/components/uploadImages/src/uploadImages.mjs +4 -4
  66. package/es/components/uploadImages/src/uploadImages.mjs.map +1 -1
  67. package/es/constants/regex.mjs +13 -13
  68. package/es/constants/regex.mjs.map +1 -1
  69. package/es/directive.d.ts +1 -1
  70. package/es/directives/click-copy/index.d.ts +1 -1
  71. package/es/directives/click-debounce/index.d.ts +1 -1
  72. package/es/directives/click-draggable/index.d.ts +1 -1
  73. package/es/directives/click-icon-copy/index.d.ts +1 -1
  74. package/es/directives/click-longpress/index.d.ts +1 -1
  75. package/es/directives/click-throttle/index.d.ts +1 -1
  76. package/es/element-plus.mjs +1 -1
  77. package/es/element-plus.mjs.map +1 -1
  78. package/es/make-installer.mjs +4 -0
  79. package/es/make-installer.mjs.map +1 -1
  80. package/es/version.d.ts +1 -1
  81. package/es/version.mjs +1 -1
  82. package/es/version.mjs.map +1 -1
  83. package/lib/components/avatar/index.d.ts +1 -1
  84. package/lib/components/avatar/index.js.map +1 -1
  85. package/lib/components/avatar/src/avatar.d.ts +18 -102
  86. package/lib/components/avatar/src/avatar.js +1 -1
  87. package/lib/components/avatar/src/avatar.js.map +1 -1
  88. package/lib/components/button/index.d.ts +1 -1
  89. package/lib/components/button/index.js.map +1 -1
  90. package/lib/components/button/src/button.d.ts +35 -180
  91. package/lib/components/button/src/button.js +1 -1
  92. package/lib/components/button/src/button.js.map +1 -1
  93. package/lib/components/carNumber/src/carNumber.d.ts +58 -194
  94. package/lib/components/contextMenu/src/contextMenu.js +1 -1
  95. package/lib/components/contextMenu/src/contextMenu.js.map +1 -1
  96. package/lib/components/dialog/src/dialog.d.ts +45 -297
  97. package/lib/components/drawer/src/drawer.d.ts +72 -450
  98. package/lib/components/form/src/form.d.ts +28 -133
  99. package/lib/components/form/src/formItem.d.ts +32 -137
  100. package/lib/components/image/src/image.d.ts +43 -253
  101. package/lib/components/select/src/select.d.ts +25 -81
  102. package/lib/components/select/src/select.js +1 -1
  103. package/lib/components/select/src/select.js.map +1 -1
  104. package/lib/components/selectPage/src/selectPage.d.ts +19 -61
  105. package/lib/components/selectV2/src/selectV2.d.ts +25 -81
  106. package/lib/components/selectV2/src/selectV2.js +1 -1
  107. package/lib/components/selectV2/src/selectV2.js.map +1 -1
  108. package/lib/components/table/src/table.d.ts +5 -12
  109. package/lib/components/table/src/table.js +1 -1
  110. package/lib/components/table/src/table.js.map +1 -1
  111. package/lib/components/table/src/table.state.d.ts +1 -1
  112. package/lib/components/table/src/table.type.d.ts +4 -1
  113. package/lib/components/table/src/table.type.js.map +1 -1
  114. package/lib/components/table/src/tableColumn.d.ts +1 -1
  115. package/lib/components/table/src/tableColumn.js +1 -1
  116. package/lib/components/table/src/tableColumn.js.map +1 -1
  117. package/lib/components/table/src/tableSearchForm.d.ts +6 -4
  118. package/lib/components/table/src/tableSearchForm.js +1 -1
  119. package/lib/components/table/src/tableSearchForm.js.map +1 -1
  120. package/lib/components/table/src/useTable.js +1 -1
  121. package/lib/components/table/src/useTable.js.map +1 -1
  122. package/lib/components/tree/src/tree.d.ts +23 -653
  123. package/lib/components/tree/src/tree.js +1 -1
  124. package/lib/components/tree/src/tree.js.map +1 -1
  125. package/lib/components/tree/src/tree.type.d.ts +1 -1
  126. package/lib/components/treeSelect/src/treeSelect.d.ts +20 -62
  127. package/lib/components/treeSelect/src/treeSelect.js +1 -1
  128. package/lib/components/treeSelect/src/treeSelect.js.map +1 -1
  129. package/lib/components/upload/src/upload.d.ts +298 -460
  130. package/lib/components/upload/src/useUpload.js +1 -1
  131. package/lib/components/upload/src/useUpload.js.map +1 -1
  132. package/lib/components/uploadImage/src/uploadImage.d.ts +295 -394
  133. package/lib/components/uploadImage/src/uploadImage.js +1 -1
  134. package/lib/components/uploadImage/src/uploadImage.js.map +1 -1
  135. package/lib/components/uploadImages/src/uploadImages.d.ts +300 -420
  136. package/lib/components/uploadImages/src/uploadImages.js +1 -1
  137. package/lib/components/uploadImages/src/uploadImages.js.map +1 -1
  138. package/lib/constants/regex.js +1 -1
  139. package/lib/constants/regex.js.map +1 -1
  140. package/lib/directive.d.ts +1 -1
  141. package/lib/directives/click-copy/index.d.ts +1 -1
  142. package/lib/directives/click-debounce/index.d.ts +1 -1
  143. package/lib/directives/click-draggable/index.d.ts +1 -1
  144. package/lib/directives/click-icon-copy/index.d.ts +1 -1
  145. package/lib/directives/click-longpress/index.d.ts +1 -1
  146. package/lib/directives/click-throttle/index.d.ts +1 -1
  147. package/lib/element-plus.js +1 -1
  148. package/lib/element-plus.js.map +1 -1
  149. package/lib/make-installer.js +1 -1
  150. package/lib/make-installer.js.map +1 -1
  151. package/lib/version.d.ts +1 -1
  152. package/lib/version.js +1 -1
  153. package/lib/version.js.map +1 -1
  154. package/package.json +8 -8
  155. package/styles/components/contextMenu.scss +2 -2
@@ -11,14 +11,7 @@ type Props = {
11
11
  export declare const SelectV2Props: {
12
12
  ariaLabel: StringConstructor;
13
13
  emptyValues: ArrayConstructor;
14
- valueOnClear: {
15
- readonly type: import('vue').PropType<string | number | boolean | Function>;
16
- readonly required: false;
17
- readonly validator: ((val: unknown) => boolean) | undefined;
18
- __epPropKey: true;
19
- } & {
20
- readonly default: undefined;
21
- };
14
+ valueOnClear: import('element-plus/es/utils/index.mjs').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))[], unknown, unknown, undefined, boolean>;
22
15
  /**
23
16
  * @description whether creating new items is allowed. To use this, `filterable` must be true
24
17
  */
@@ -173,14 +166,7 @@ export declare const SelectV2Props: {
173
166
  /**
174
167
  * @description whether select dropdown is teleported to the body
175
168
  */
176
- teleported: {
177
- readonly type: import('vue').PropType<boolean>;
178
- readonly required: false;
179
- readonly validator: ((val: unknown) => boolean) | undefined;
180
- __epPropKey: true;
181
- } & {
182
- readonly default: true;
183
- };
169
+ teleported: import('element-plus/es/utils/index.mjs').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
184
170
  /**
185
171
  * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed
186
172
  */
@@ -210,7 +196,7 @@ export declare const SelectV2Props: {
210
196
  * @description size of component
211
197
  */
212
198
  size: {
213
- readonly type: import('vue').PropType<"" | "small" | "default" | "large">;
199
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
214
200
  readonly required: false;
215
201
  readonly validator: ((val: unknown) => boolean) | undefined;
216
202
  __epPropKey: true;
@@ -273,7 +259,7 @@ export declare const SelectV2Props: {
273
259
  */
274
260
  tagType: {
275
261
  default: string;
276
- type: import('vue').PropType<"primary" | "success" | "warning" | "info" | "danger">;
262
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "primary" | "success" | "warning" | "info" | "danger", unknown>>;
277
263
  required: false;
278
264
  validator: ((val: unknown) => boolean) | undefined;
279
265
  __epPropKey: true;
@@ -283,7 +269,7 @@ export declare const SelectV2Props: {
283
269
  */
284
270
  tagEffect: {
285
271
  default: string;
286
- type: import('vue').PropType<"plain" | "dark" | "light">;
272
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "plain" | "dark" | "light", unknown>>;
287
273
  required: false;
288
274
  validator: ((val: unknown) => boolean) | undefined;
289
275
  __epPropKey: true;
@@ -380,14 +366,7 @@ export declare const faSelectV2Props: {
380
366
  initParam: import('vue').PropType<any>;
381
367
  ariaLabel: StringConstructor;
382
368
  emptyValues: ArrayConstructor;
383
- valueOnClear: {
384
- readonly type: import('vue').PropType<string | number | boolean | Function>;
385
- readonly required: false;
386
- readonly validator: ((val: unknown) => boolean) | undefined;
387
- __epPropKey: true;
388
- } & {
389
- readonly default: undefined;
390
- };
369
+ valueOnClear: import('element-plus/es/utils/index.mjs').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))[], unknown, unknown, undefined, boolean>;
391
370
  /**
392
371
  * @description whether creating new items is allowed. To use this, `filterable` must be true
393
372
  */
@@ -516,14 +495,7 @@ export declare const faSelectV2Props: {
516
495
  /**
517
496
  * @description whether select dropdown is teleported to the body
518
497
  */
519
- teleported: {
520
- readonly type: import('vue').PropType<boolean>;
521
- readonly required: false;
522
- readonly validator: ((val: unknown) => boolean) | undefined;
523
- __epPropKey: true;
524
- } & {
525
- readonly default: true;
526
- };
498
+ teleported: import('element-plus/es/utils/index.mjs').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
527
499
  /**
528
500
  * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed
529
501
  */
@@ -553,7 +525,7 @@ export declare const faSelectV2Props: {
553
525
  * @description size of component
554
526
  */
555
527
  size: {
556
- readonly type: import('vue').PropType<"" | "small" | "default" | "large">;
528
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
557
529
  readonly required: false;
558
530
  readonly validator: ((val: unknown) => boolean) | undefined;
559
531
  __epPropKey: true;
@@ -616,7 +588,7 @@ export declare const faSelectV2Props: {
616
588
  */
617
589
  tagType: {
618
590
  default: string;
619
- type: import('vue').PropType<"primary" | "success" | "warning" | "info" | "danger">;
591
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "primary" | "success" | "warning" | "info" | "danger", unknown>>;
620
592
  required: false;
621
593
  validator: ((val: unknown) => boolean) | undefined;
622
594
  __epPropKey: true;
@@ -626,7 +598,7 @@ export declare const faSelectV2Props: {
626
598
  */
627
599
  tagEffect: {
628
600
  default: string;
629
- type: import('vue').PropType<"plain" | "dark" | "light">;
601
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "plain" | "dark" | "light", unknown>>;
630
602
  required: false;
631
603
  validator: ((val: unknown) => boolean) | undefined;
632
604
  __epPropKey: true;
@@ -758,14 +730,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
758
730
  initParam: import('vue').PropType<any>;
759
731
  ariaLabel: StringConstructor;
760
732
  emptyValues: ArrayConstructor;
761
- valueOnClear: {
762
- readonly type: import('vue').PropType<string | number | boolean | Function>;
763
- readonly required: false;
764
- readonly validator: ((val: unknown) => boolean) | undefined;
765
- __epPropKey: true;
766
- } & {
767
- readonly default: undefined;
768
- };
733
+ valueOnClear: import('element-plus/es/utils/index.mjs').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))[], unknown, unknown, undefined, boolean>;
769
734
  /**
770
735
  * @description whether creating new items is allowed. To use this, `filterable` must be true
771
736
  */
@@ -894,14 +859,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
894
859
  /**
895
860
  * @description whether select dropdown is teleported to the body
896
861
  */
897
- teleported: {
898
- readonly type: import('vue').PropType<boolean>;
899
- readonly required: false;
900
- readonly validator: ((val: unknown) => boolean) | undefined;
901
- __epPropKey: true;
902
- } & {
903
- readonly default: true;
904
- };
862
+ teleported: import('element-plus/es/utils/index.mjs').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
905
863
  /**
906
864
  * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed
907
865
  */
@@ -931,7 +889,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
931
889
  * @description size of component
932
890
  */
933
891
  size: {
934
- readonly type: import('vue').PropType<"" | "small" | "default" | "large">;
892
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
935
893
  readonly required: false;
936
894
  readonly validator: ((val: unknown) => boolean) | undefined;
937
895
  __epPropKey: true;
@@ -994,7 +952,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
994
952
  */
995
953
  tagType: {
996
954
  default: string;
997
- type: import('vue').PropType<"primary" | "success" | "warning" | "info" | "danger">;
955
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "primary" | "success" | "warning" | "info" | "danger", unknown>>;
998
956
  required: false;
999
957
  validator: ((val: unknown) => boolean) | undefined;
1000
958
  __epPropKey: true;
@@ -1004,7 +962,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1004
962
  */
1005
963
  tagEffect: {
1006
964
  default: string;
1007
- type: import('vue').PropType<"plain" | "dark" | "light">;
965
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "plain" | "dark" | "light", unknown>>;
1008
966
  required: false;
1009
967
  validator: ((val: unknown) => boolean) | undefined;
1010
968
  __epPropKey: true;
@@ -1124,14 +1082,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1124
1082
  initParam: import('vue').PropType<any>;
1125
1083
  ariaLabel: StringConstructor;
1126
1084
  emptyValues: ArrayConstructor;
1127
- valueOnClear: {
1128
- readonly type: import('vue').PropType<string | number | boolean | Function>;
1129
- readonly required: false;
1130
- readonly validator: ((val: unknown) => boolean) | undefined;
1131
- __epPropKey: true;
1132
- } & {
1133
- readonly default: undefined;
1134
- };
1085
+ valueOnClear: import('element-plus/es/utils/index.mjs').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))[], unknown, unknown, undefined, boolean>;
1135
1086
  /**
1136
1087
  * @description whether creating new items is allowed. To use this, `filterable` must be true
1137
1088
  */
@@ -1260,14 +1211,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1260
1211
  /**
1261
1212
  * @description whether select dropdown is teleported to the body
1262
1213
  */
1263
- teleported: {
1264
- readonly type: import('vue').PropType<boolean>;
1265
- readonly required: false;
1266
- readonly validator: ((val: unknown) => boolean) | undefined;
1267
- __epPropKey: true;
1268
- } & {
1269
- readonly default: true;
1270
- };
1214
+ teleported: import('element-plus/es/utils/index.mjs').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
1271
1215
  /**
1272
1216
  * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed
1273
1217
  */
@@ -1297,7 +1241,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1297
1241
  * @description size of component
1298
1242
  */
1299
1243
  size: {
1300
- readonly type: import('vue').PropType<"" | "small" | "default" | "large">;
1244
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
1301
1245
  readonly required: false;
1302
1246
  readonly validator: ((val: unknown) => boolean) | undefined;
1303
1247
  __epPropKey: true;
@@ -1360,7 +1304,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1360
1304
  */
1361
1305
  tagType: {
1362
1306
  default: string;
1363
- type: import('vue').PropType<"primary" | "success" | "warning" | "info" | "danger">;
1307
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "primary" | "success" | "warning" | "info" | "danger", unknown>>;
1364
1308
  required: false;
1365
1309
  validator: ((val: unknown) => boolean) | undefined;
1366
1310
  __epPropKey: true;
@@ -1370,7 +1314,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1370
1314
  */
1371
1315
  tagEffect: {
1372
1316
  default: string;
1373
- type: import('vue').PropType<"plain" | "dark" | "light">;
1317
+ type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "plain" | "dark" | "light", unknown>>;
1374
1318
  required: false;
1375
1319
  validator: ((val: unknown) => boolean) | undefined;
1376
1320
  __epPropKey: true;
@@ -1419,6 +1363,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1419
1363
  placement: Placement;
1420
1364
  loading: boolean;
1421
1365
  disabled: boolean;
1366
+ lazy: boolean;
1422
1367
  modelValue: string | number | boolean | object | (string | number | boolean | object)[];
1423
1368
  autocomplete: "none" | "both" | "inline" | "list";
1424
1369
  clearable: boolean;
@@ -1428,13 +1373,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1428
1373
  popperOptions: Options;
1429
1374
  popperClass: string;
1430
1375
  effect: string | (string & {});
1431
- teleported: boolean;
1376
+ teleported: import('element-plus/es/utils/index.mjs').EpPropMergeType<BooleanConstructor, unknown, unknown>;
1432
1377
  width: string | number;
1433
1378
  showArrow: boolean;
1434
1379
  persistent: boolean;
1435
1380
  height: number;
1436
1381
  fallbackPlacements: Placement[];
1437
- lazy: boolean;
1438
1382
  moreDetail: boolean;
1439
1383
  loadingText: string;
1440
1384
  noMatchText: string;
@@ -1442,7 +1386,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1442
1386
  collapseTags: boolean;
1443
1387
  collapseTagsTooltip: boolean;
1444
1388
  defaultSelected: boolean;
1445
- valueOnClear: string | number | boolean | Function;
1389
+ valueOnClear: import('element-plus/es/utils/index.mjs').EpPropMergeType<(new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null) | ((new (...args: any[]) => string | number | boolean | Function) | (() => string | number | boolean | Function | null))[], unknown, unknown>;
1446
1390
  automaticDropdown: boolean;
1447
1391
  filterable: boolean;
1448
1392
  allowCreate: boolean;
@@ -1453,8 +1397,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1453
1397
  reserveKeyword: boolean;
1454
1398
  valueKey: string;
1455
1399
  maxCollapseTags: number;
1456
- tagType: "primary" | "success" | "warning" | "info" | "danger";
1457
- tagEffect: "plain" | "dark" | "light";
1400
+ tagType: import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "primary" | "success" | "warning" | "info" | "danger", unknown>;
1401
+ tagEffect: import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "plain" | "dark" | "light", unknown>;
1458
1402
  pageResult: boolean;
1459
1403
  estimatedOptionHeight: number;
1460
1404
  itemHeight: number;
@@ -404,6 +404,7 @@ const SelectV2 = /* @__PURE__ */ defineComponent({
404
404
  state.loading = false;
405
405
  }
406
406
  } else {
407
+ state.echo = false;
407
408
  state.selectorData = props.data;
408
409
  }
409
410
  };
@@ -1 +1 @@
1
- {"version":3,"file":"selectV2.mjs","sources":["../../../../../packages/components/selectV2/src/selectV2.tsx"],"sourcesContent":["import { computed, defineComponent, onMounted, reactive, ref, watch } from \"vue\";\nimport { ElSelectV2, tagProps, useAriaProps, useEmptyValuesProps, useGlobalSize, useSizeProp, useTooltipContentProps } from \"element-plus\";\nimport { CircleClose } from \"@element-plus/icons-vue\";\nimport { addUnit, consoleError, definePropType, makeSlots, useExpose, useProps, useRender, withDefineType } from \"@fast-china/utils\";\nimport { useVModel } from \"@vueuse/core\";\nimport { isArray, isBoolean, isEqual, isNil, isNull, isNumber, isObject, isString } from \"lodash-unified\";\nimport type { ElSelectorOutput } from \"@fast-element-plus/components/select/src/select.type\";\nimport type { PagedInput, PagedResult } from \"@fast-element-plus/components/table\";\nimport type { Options, Placement, PopperEffect } from \"element-plus\";\nimport type { Component, VNode } from \"vue\";\n\ntype Props = {\n\tlabel?: string;\n\tvalue?: string;\n\tdisabled?: string;\n\toptions?: string;\n};\n\nexport const SelectV2Props = {\n\t/**\n\t * @description whether creating new items is allowed. To use this, `filterable` must be true\n\t */\n\tallowCreate: Boolean,\n\t/**\n\t * @description autocomplete of select input\n\t */\n\tautocomplete: {\n\t\ttype: definePropType<\"none\" | \"both\" | \"list\" | \"inline\">(String),\n\t\tdefault: \"none\",\n\t},\n\t/**\n\t * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n\t */\n\tautomaticDropdown: Boolean,\n\t/**\n\t * @description whether select can be cleared\n\t */\n\tclearable: Boolean,\n\t/**\n\t * @description custom clear icon\n\t */\n\tclearIcon: {\n\t\ttype: definePropType<string | Component>([String, Object, Function]),\n\t\tdefault: CircleClose,\n\t},\n\t/**\n\t * @description tooltip theme, built-in theme: `dark` / `light`\n\t */\n\teffect: {\n\t\ttype: definePropType<PopperEffect | string>(String),\n\t\tdefault: \"light\",\n\t},\n\t/**\n\t * @description whether to collapse tags to a text when multiple selecting\n\t */\n\tcollapseTags: Boolean,\n\t/**\n\t * @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true\n\t */\n\tcollapseTagsTooltip: Boolean,\n\t/**\n\t * @description The max tags number to be shown. To use this, `collapse-tags` must be true\n\t */\n\tmaxCollapseTags: {\n\t\ttype: Number,\n\t\tdefault: 1,\n\t},\n\t/**\n\t * @description\n\t */\n\tdefaultFirstOption: Boolean,\n\t/**\n\t * @description is disabled\n\t */\n\tdisabled: Boolean,\n\t/**\n\t * @description\n\t */\n\testimatedOptionHeight: {\n\t\ttype: Number,\n\t\tdefault: undefined,\n\t},\n\t/**\n\t * @description is filterable\n\t */\n\tfilterable: Boolean,\n\t/**\n\t * @description\n\t */\n\tfilterMethod: Function,\n\t/**\n\t * @description The height of the dropdown panel, 34px for each item\n\t */\n\theight: {\n\t\ttype: Number,\n\t\tdefault: 274, // same as select dropdown menu\n\t},\n\t/**\n\t * @description The height of the dropdown item\n\t */\n\titemHeight: {\n\t\ttype: Number,\n\t\tdefault: 34,\n\t},\n\t/**\n\t * @description\n\t */\n\tid: String,\n\t/**\n\t * @description whether Select is loading data from server\n\t */\n\tloading: Boolean,\n\t/**\n\t * @description displayed text while loading data from server, default is 'Loading'\n\t */\n\tloadingText: String,\n\t/**\n\t * @description biding value\n\t */\n\tmodelValue: {\n\t\ttype: definePropType<any[] | string | number | boolean | Record<string, any> | any>([Array, String, Number, Boolean, Object]),\n\t},\n\t/**\n\t * @description is multiple\n\t */\n\tmultiple: Boolean,\n\t/**\n\t * @description maximum number of options user can select when multiple is true. No limit when set to 0\n\t */\n\tmultipleLimit: {\n\t\ttype: Number,\n\t\tdefault: 0,\n\t},\n\t/**\n\t * @description the name attribute of select input\n\t */\n\tname: String,\n\t/**\n\t * @description displayed text when there is no options, you can also use slot empty, the default is 'No Data'\n\t */\n\tnoDataText: String,\n\t/**\n\t * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n\t */\n\tnoMatchText: String,\n\t/**\n\t * @description function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true\n\t */\n\tremoteMethod: Function,\n\t/**\n\t * @description whether reserve the keyword after select filtered option.\n\t */\n\treserveKeyword: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description data of the options, the key of `value` and `label` can be customize by `props`\n\t */\n\toptions: {\n\t\ttype: definePropType<\n\t\t\t(\n\t\t\t\t| Record<string, any>\n\t\t\t\t| (Record<string, any> & {\n\t\t\t\t\t\tcreated?: boolean;\n\t\t\t\t })\n\t\t\t)[]\n\t\t>(Array),\n\t\t// required: true,\n\t},\n\t/**\n\t * @description placeholder, the default is 'Please select'\n\t */\n\tplaceholder: {\n\t\ttype: String,\n\t},\n\t/**\n\t * @description whether select dropdown is teleported to the body\n\t */\n\tteleported: useTooltipContentProps.teleported,\n\t/**\n\t * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n\t */\n\tpersistent: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description custom class name for Select's dropdown\n\t */\n\tpopperClass: {\n\t\ttype: String,\n\t\tdefault: \"\",\n\t},\n\t/**\n\t * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n\t */\n\tpopperOptions: {\n\t\ttype: definePropType<Partial<Options>>(Object),\n\t\tdefault: (): Partial<Options> => ({}),\n\t},\n\t/**\n\t * @description whether search data from server\n\t */\n\tremote: Boolean,\n\t/**\n\t * @description size of component\n\t */\n\tsize: useSizeProp,\n\t/**\n\t * @description configuration options, see the following table\n\t */\n\tprops: {\n\t\ttype: definePropType<Props>(Object),\n\t\tdefault: (): Required<Props> => ({\n\t\t\tlabel: \"label\",\n\t\t\tvalue: \"value\",\n\t\t\tdisabled: \"disabled\",\n\t\t\toptions: \"options\",\n\t\t}),\n\t},\n\t/**\n\t * @description unique identity key name for value, required when value is an object\n\t */\n\tvalueKey: {\n\t\ttype: String,\n\t\tdefault: \"value\",\n\t},\n\t/**\n\t * @description Controls whether the scrollbar is always displayed\n\t */\n\tscrollbarAlwaysOn: Boolean,\n\t/**\n\t * @description whether to trigger form validation\n\t */\n\tvalidateEvent: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description offset of the dropdown\n\t */\n\toffset: {\n\t\ttype: Number,\n\t\tdefault: 12,\n\t},\n\t/**\n\t * @description Determines whether the arrow is displayed\n\t */\n\tshowArrow: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description position of dropdown\n\t */\n\tplacement: {\n\t\ttype: definePropType<Placement>(String),\n\t\tdefault: \"bottom-start\",\n\t},\n\t/**\n\t * @description list of possible positions for dropdown\n\t */\n\tfallbackPlacements: {\n\t\ttype: definePropType<Placement[]>(Array),\n\t\tdefault: [\"bottom-start\", \"top-start\", \"right\", \"left\"],\n\t},\n\t/**\n\t * @description tag type\n\t */\n\ttagType: { ...tagProps.type, default: \"info\" },\n\t/**\n\t * @description tag effect\n\t */\n\ttagEffect: { ...tagProps.effect, default: \"light\" },\n\t/**\n\t * @description tabindex for input\n\t */\n\ttabindex: {\n\t\ttype: [String, Number],\n\t\tdefault: 0,\n\t},\n\t/**\n\t * @description which element the select dropdown appends to\n\t */\n\tappendTo: String,\n\t...useEmptyValuesProps,\n\t...useAriaProps([\"ariaLabel\"]),\n};\n\nexport type SelectComponentProps = {\n\t/** @description 指定标签为节点的某个属性值 */\n\tlabel?: string | ((data: any) => string);\n\t/** @description 指定是否隐藏为节点的某个属性值 */\n\thide?: string | ((data: any) => boolean);\n\t/** @description 指定是否禁用为节点的某个属性值 */\n\tdisabled?: string | ((data: any) => boolean);\n\t/** @description 指定子节点对象为节点的某个属性值 */\n\tchildren?: string;\n};\n\nexport const faSelectV2Props = {\n\t...SelectV2Props,\n\t/** @description displayed text while loading data from server, default is 'Loading' */\n\tloadingText: {\n\t\ttype: String,\n\t\tdefault: \"加载中...\",\n\t},\n\t/** @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data' */\n\tnoMatchText: {\n\t\ttype: String,\n\t\tdefault: \"暂无匹配的数据\",\n\t},\n\t/** @description displayed text when there is no options, you can also use slot `empty`, default is 'No data' */\n\tnoDataText: {\n\t\ttype: String,\n\t\tdefault: \"暂无数据\",\n\t},\n\t/** @description whether to collapse tags to a text when multiple selecting */\n\tcollapseTags: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/** @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true */\n\tcollapseTagsTooltip: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/** @description v-model绑定值 */\n\tmodelValue: {\n\t\ttype: definePropType<string | number | boolean | object | (string | number | boolean | object)[]>([String, Number, Boolean, Object, Array]),\n\t\tdefault: undefined,\n\t},\n\t/** @description v-model:label绑定值 */\n\tlabel: definePropType<string | string[]>([String, Array]),\n\t/** @description 宽度 */\n\twidth: {\n\t\ttype: [String, Number],\n\t\tdefault: \"100%\",\n\t},\n\t/** @description 更多细节,只有使用slot的时候有用 */\n\tmoreDetail: Boolean,\n\t/** @description 懒加载远程数据,默认 true。当下拉框第一次显示的时候才会加载远程数据*/\n\tlazy: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/** @description 默认选中。不能和懒加载一起使用 */\n\tdefaultSelected: Boolean,\n\t/** @description 下拉框数据 */\n\tdata: {\n\t\ttype: definePropType<ElSelectorOutput[]>(Array),\n\t\tdefault: (): ElSelectorOutput[] => [],\n\t},\n\t/** 分页返回 */\n\tpageResult: Boolean,\n\t/** @description 请求api */\n\trequestApi: {\n\t\ttype: definePropType<((params?: any) => Promise<ElSelectorOutput[]>) | ((params?: PagedInput) => Promise<PagedResult<ElSelectorOutput>>)>(\n\t\t\tFunction\n\t\t),\n\t},\n\t/** 初始化参数 */\n\tinitParam: definePropType<string | number | any>([String, Number, Object]),\n};\n\nexport const faSelectV2Emits = {\n\t/** @description v-model 回调 */\n\t\"update:modelValue\": (value: string | number | boolean | object | (string | number | boolean | object)[]): boolean =>\n\t\tisString(value) || isNumber(value) || isBoolean(value) || isObject(value) || isArray(value) || isNull(value),\n\t/** @description v-model:label 回调 */\n\t\"update:label\": (value: string | string[]): boolean => isString(value) || isArray(value) || isNull(value),\n\t/** @description 数据改变 */\n\tdataChangeCallBack: (data: ElSelectorOutput[] | any[]): boolean => isArray(data),\n\t/** @description 改变 */\n\tchange: (\n\t\tdata: ElSelectorOutput | ElSelectorOutput[] | any | any[],\n\t\tvalue?: string | number | boolean | object | (string | number | boolean | object)[]\n\t): boolean =>\n\t\t(isObject(data) || isArray(data) || isNull(data)) &&\n\t\t(isString(value) || isNumber(value) || isBoolean(value) || isObject(value) || isArray(value) || isNull(value)),\n\t/** @description 下拉框出现/隐藏时触发 */\n\tvisibleChange: (visible: boolean): boolean => isBoolean(visible),\n\t/** @description 多选模式下移除tag时触发 */\n\tremoveTag: (tagValue: any): boolean => isString(tagValue) || isNumber(tagValue) || isBoolean(tagValue) || isObject(tagValue) || isArray(tagValue),\n\t/** @description 可清空的单选模式下用户点击清空按钮时触发 */\n\tclear: (): boolean => true,\n\t/** @description 当 input 失去焦点时触发 */\n\tblur: (event: FocusEvent): boolean => event instanceof FocusEvent,\n\t/** @description 当 input 获得焦点时触发 */\n\tfocus: (event: FocusEvent): boolean => event instanceof FocusEvent,\n};\n\ntype FaSelectV2Slots = {\n\t/** @description FaSelectOption 默认内容插槽 */\n\tdefault: { item: ElSelectorOutput; index: number; disabled: boolean };\n\t/** @description 下拉列表顶部的内容 */\n\theader: never;\n\t/** @description 下拉列表底部的内容 */\n\tfooter: never;\n\t/** @description Select 组件头部内容 */\n\tprefix: never;\n\t/** @description 无选项时的列表 */\n\tempty: never;\n\t/** @description select 组件自定义标签内容 */\n\ttag: never;\n\t/** @description select 组件自定义 loading内容 */\n\tloading: never;\n\t/** @description select 组件自定义标签内容 */\n\tlabel: { label: string; value: string | number | boolean | object };\n};\n\nexport default defineComponent({\n\tname: \"FaSelectV2\",\n\tprops: faSelectV2Props,\n\temits: faSelectV2Emits,\n\tslots: makeSlots<FaSelectV2Slots>(),\n\tsetup(props, { attrs, slots, emit, expose }) {\n\t\tconst selectedLabel = useVModel(props, \"label\", emit, { passive: true });\n\t\tconst _globalSize = useGlobalSize();\n\n\t\tconst state = reactive({\n\t\t\tvalue: withDefineType<string | number | boolean | object | (string | number | boolean | object)[]>(),\n\t\t\tloading: false,\n\t\t\tselectorData: withDefineType<ElSelectorOutput[]>([]),\n\t\t\t/** 首次出现 */\n\t\t\tdebut: true,\n\t\t\t/** 回显 */\n\t\t\techo: props.data?.length > 0 ? false : true,\n\t\t\t/** 下次刷新 */\n\t\t\tnextRefresh: false,\n\t\t});\n\n\t\tconst selectV2Ref = ref<InstanceType<typeof ElSelectV2>>();\n\n\t\tconst loadData = async (): Promise<void> => {\n\t\t\t// 判断是否需要自动请求\n\t\t\tif (props.requestApi) {\n\t\t\t\tstate.loading = true;\n\t\t\t\tconst params = props.initParam ?? {};\n\t\t\t\ttry {\n\t\t\t\t\tconst resData = await props.requestApi(params);\n\t\t\t\t\t// 这里不允许回显了\n\t\t\t\t\tstate.echo = false;\n\t\t\t\t\t// 判断是否为分页返回\n\t\t\t\t\tif (props.pageResult) {\n\t\t\t\t\t\tstate.selectorData = (resData as PagedResult<ElSelectorOutput>).rows;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tstate.selectorData = resData as ElSelectorOutput[];\n\t\t\t\t\t}\n\t\t\t\t\temit(\"dataChangeCallBack\", state.selectorData);\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsoleError(\"FaSelect\", error);\n\t\t\t\t\tstate.selectorData = [];\n\t\t\t\t} finally {\n\t\t\t\t\tstate.loading = false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tstate.selectorData = props.data;\n\t\t\t}\n\t\t};\n\n\t\tconst handleChange = (value?: string | number | boolean | object | (string | number | boolean | object)[]): void => {\n\t\t\t// 判断是否为多选\n\t\t\tif (props.multiple) {\n\t\t\t\t// value 必然是数组\n\t\t\t\tconst valueArr = value as (string | number | boolean | object)[];\n\t\t\t\tif (valueArr?.length === 0) {\n\t\t\t\t\tstate.value = null;\n\t\t\t\t\tselectedLabel.value = null;\n\t\t\t\t\temit(\"update:modelValue\", null);\n\t\t\t\t\temit(\"change\", null, null);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst dataList = state.selectorData.filter((f) => valueArr.includes(f.value));\n\t\t\t\tstate.value = value;\n\t\t\t\tselectedLabel.value = dataList.map((m) => m.label);\n\t\t\t\temit(\"update:modelValue\", value);\n\t\t\t\temit(\"change\", dataList, value);\n\t\t\t} else {\n\t\t\t\t// value 必然不是数组\n\t\t\t\tif (isNil(value)) {\n\t\t\t\t\tstate.value = null;\n\t\t\t\t\tselectedLabel.value = null;\n\t\t\t\t\temit(\"update:modelValue\", null);\n\t\t\t\t\temit(\"change\", null, null);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst data = state.selectorData.find((f) => f.value === value);\n\t\t\t\tstate.value = value;\n\t\t\t\tselectedLabel.value = data.label;\n\t\t\t\temit(\"update:modelValue\", value);\n\t\t\t\temit(\"change\", data, value);\n\t\t\t}\n\t\t};\n\n\t\tconst handleClear = (): void => {\n\t\t\tstate.value = null;\n\t\t\tselectedLabel.value = null;\n\t\t\temit(\"clear\");\n\t\t};\n\n\t\tconst handleVisibleChange = async (visible: boolean): Promise<void> => {\n\t\t\tif (visible) {\n\t\t\t\tif (state.debut) {\n\t\t\t\t\t// 首次出现\n\t\t\t\t\tstate.debut = false;\n\t\t\t\t\t// 懒加载\n\t\t\t\t\t!props.defaultSelected && props.lazy && (await loadData());\n\t\t\t\t} else {\n\t\t\t\t\t// 判断再次出现是否需要刷新数据\n\t\t\t\t\tif (state.nextRefresh) {\n\t\t\t\t\t\tstate.nextRefresh = false;\n\t\t\t\t\t\tawait loadData();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\temit(\"visibleChange\", visible);\n\t\t};\n\n\t\twatch(\n\t\t\t() => props.modelValue,\n\t\t\t(newValue) => {\n\t\t\t\tif (state.echo && !isNil(newValue)) {\n\t\t\t\t\tconst hasLabel = !isNil(props.label);\n\t\t\t\t\t// 判断是否为多选\n\t\t\t\t\tif (props.multiple) {\n\t\t\t\t\t\t// 判断是否为数组\n\t\t\t\t\t\tif (!isArray(newValue)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当启用 multiple 时,传入的 modelValue 必须是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (hasLabel && !isArray(props.label)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当启用 multiple 时,传入的 modelValue:label 必须是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstate.selectorData = newValue\n\t\t\t\t\t\t\t// 最大选项截取\n\t\t\t\t\t\t\t.slice(0, props.multipleLimit > 0 ? props.multipleLimit : newValue.length)\n\t\t\t\t\t\t\t.map((item, index) => ({\n\t\t\t\t\t\t\t\tvalue: item,\n\t\t\t\t\t\t\t\tlabel: hasLabel ? props.label[index] : undefined,\n\t\t\t\t\t\t\t}));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (isArray(newValue)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当禁用 multiple 时,传入的 modelValue 不能是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (hasLabel && isArray(props.label)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当禁用 multiple 时,传入的 modelValue:label 不能是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstate.selectorData = [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvalue: newValue,\n\t\t\t\t\t\t\t\tlabel: props.label,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tstate.value = newValue;\n\t\t\t},\n\t\t\t{\n\t\t\t\timmediate: true,\n\t\t\t}\n\t\t);\n\n\t\tonMounted(async () => {\n\t\t\tif (props.defaultSelected) {\n\t\t\t\tawait loadData();\n\t\t\t\tif (state.selectorData.length > 0) {\n\t\t\t\t\thandleChange(props.multiple ? [state.selectorData[0].value] : state.selectorData[0].value);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// 判断是否为本地数据\n\t\t\telse if (!props.requestApi && props.data?.length > 0) {\n\t\t\t\tstate.debut = false;\n\t\t\t\tawait loadData();\n\t\t\t}\n\t\t\t// 判断是否非默认选中,且未启用懒加载\n\t\t\telse if (!props.lazy) {\n\t\t\t\tawait loadData();\n\t\t\t}\n\t\t\twatch(\n\t\t\t\t() => props.initParam,\n\t\t\t\t(newValue, oldValue) => {\n\t\t\t\t\tif (!isEqual(newValue, oldValue)) {\n\t\t\t\t\t\tstate.nextRefresh = true;\n\t\t\t\t\t\tif (!isNil(state.value)) {\n\t\t\t\t\t\t\thandleChange();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\t\t\twatch(\n\t\t\t\t() => props.data,\n\t\t\t\tasync () => {\n\t\t\t\t\tif (!props.requestApi) {\n\t\t\t\t\t\tawait loadData();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{ deep: true }\n\t\t\t);\n\t\t});\n\n\t\tconst elSelectV2Props = useProps(props, SelectV2Props, [\"modelValue\", \"popperClass\", \"loading\", \"options\", \"itemHeight\"]);\n\n\t\tuseRender(() => (\n\t\t\t<ElSelectV2\n\t\t\t\t{...elSelectV2Props.value}\n\t\t\t\tref={selectV2Ref}\n\t\t\t\tclass=\"fa-select-v2\"\n\t\t\t\tpopperClass={`${props.moreDetail && `fa-select-v2-dropdown__more-detail`} ${props.popperClass}`}\n\t\t\t\tstyle={{ width: addUnit(props.width) }}\n\t\t\t\tvModel={state.value}\n\t\t\t\tloading={state.loading}\n\t\t\t\toptions={state.selectorData}\n\t\t\t\titemHeight={props.itemHeight + (_globalSize.value === \"small\" ? 0 : 8)}\n\t\t\t\tonChange={handleChange}\n\t\t\t\tonClear={handleClear}\n\t\t\t\tonVisibleChange={handleVisibleChange}\n\t\t\t\tonRemoveTag={(tagValue: any) => emit(\"removeTag\", tagValue)}\n\t\t\t\tonBlur={(event: FocusEvent) => emit(\"blur\", event)}\n\t\t\t\tonFocus={(event: FocusEvent) => emit(\"focus\", event)}\n\t\t\t>\n\t\t\t\t{{\n\t\t\t\t\t...(slots.default && {\n\t\t\t\t\t\tdefault: ({ item, index, disabled }: { item: ElSelectorOutput; index: number; disabled: boolean }): VNode[] =>\n\t\t\t\t\t\t\tslots.default({ item, index, disabled }),\n\t\t\t\t\t}),\n\t\t\t\t\t...(slots.header && { header: (): VNode[] => slots.header() }),\n\t\t\t\t\t...(slots.footer && { footer: (): VNode[] => slots.footer() }),\n\t\t\t\t\t...(slots.prefix && { prefix: (): VNode[] => slots.prefix() }),\n\t\t\t\t\t...(slots.empty && { empty: (): VNode[] => slots.empty() }),\n\t\t\t\t\t...(slots.tag && { tag: (): VNode[] => slots.tag() }),\n\t\t\t\t\t...(slots.loading && { loading: (): VNode[] => slots.loading() }),\n\t\t\t\t\t...(slots.label && {\n\t\t\t\t\t\tlabel: ({ label, value }: { label: string; value: string | number | boolean | object }): VNode[] =>\n\t\t\t\t\t\t\tslots.label({ label, value }),\n\t\t\t\t\t}),\n\t\t\t\t}}\n\t\t\t</ElSelectV2>\n\t\t));\n\n\t\treturn useExpose(expose, {\n\t\t\t/** @description 使选择器的输入框获取焦点 */\n\t\t\tfocus: computed(() => selectV2Ref.value?.focus),\n\t\t\t/** @description 使选择器的输入框失去焦点,并隐藏下拉框 */\n\t\t\tblur: computed(() => selectV2Ref.value?.blur),\n\t\t\t/** @description 获取当前选中的标签 */\n\t\t\tselectedLabel: computed(() => selectV2Ref.value?.selectedLabel),\n\t\t\t/** @description 加载状态 */\n\t\t\tloading: computed(() => state.loading),\n\t\t\t/** @description 刷新 */\n\t\t\trefresh: loadData,\n\t\t\t/** @description 设置选择 */\n\t\t\tsetSelection: (value: string | number | boolean | object | (string | number | boolean | object)[]) => handleChange(value),\n\t\t\t/** @description 清除选择 */\n\t\t\tclearSelection: () => handleChange(null),\n\t\t});\n\t},\n});\n"],"names":["SelectV2Props","allowCreate","Boolean","autocomplete","type","definePropType","String","default","automaticDropdown","clearable","clearIcon","Object","Function","CircleClose","effect","collapseTags","collapseTagsTooltip","maxCollapseTags","Number","defaultFirstOption","disabled","estimatedOptionHeight","undefined","filterable","filterMethod","height","itemHeight","id","loading","loadingText","modelValue","Array","multiple","multipleLimit","name","noDataText","noMatchText","remoteMethod","reserveKeyword","options","placeholder","teleported","useTooltipContentProps","persistent","popperClass","popperOptions","remote","size","useSizeProp","props","label","value","valueKey","scrollbarAlwaysOn","validateEvent","offset","showArrow","placement","fallbackPlacements","tagType","tagProps","tagEffect","tabindex","appendTo","useEmptyValuesProps","useAriaProps","faSelectV2Props","width","moreDetail","lazy","defaultSelected","data","pageResult","requestApi","initParam","faSelectV2Emits","isString","isNumber","isBoolean","isObject","isArray","isNull","dataChangeCallBack","change","visibleChange","visible","removeTag","tagValue","clear","blur","event","FocusEvent","focus","emits","slots","makeSlots","setup","attrs","emit","expose","selectedLabel","useVModel","passive","_globalSize","useGlobalSize","state","reactive","withDefineType","selectorData","debut","echo","length","nextRefresh","selectV2Ref","ref","loadData","params","resData","rows","error","consoleError","handleChange","valueArr","dataList","filter","f","includes","map","m","isNil","find","handleClear","handleVisibleChange","watch","newValue","hasLabel","slice","item","index","immediate","onMounted","oldValue","isEqual","deep","elSelectV2Props","useProps","useRender","_createVNode","ElSelectV2","_mergeProps","addUnit","$event","header","footer","prefix","empty","tag","useExpose","computed","refresh","setSelection","clearSelection"],"mappings":"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"}
1
+ {"version":3,"file":"selectV2.mjs","sources":["../../../../../packages/components/selectV2/src/selectV2.tsx"],"sourcesContent":["import { computed, defineComponent, onMounted, reactive, ref, watch } from \"vue\";\nimport { ElSelectV2, tagProps, useAriaProps, useEmptyValuesProps, useGlobalSize, useSizeProp, useTooltipContentProps } from \"element-plus\";\nimport { CircleClose } from \"@element-plus/icons-vue\";\nimport { addUnit, consoleError, definePropType, makeSlots, useExpose, useProps, useRender, withDefineType } from \"@fast-china/utils\";\nimport { useVModel } from \"@vueuse/core\";\nimport { isArray, isBoolean, isEqual, isNil, isNull, isNumber, isObject, isString } from \"lodash-unified\";\nimport type { ElSelectorOutput } from \"@fast-element-plus/components/select/src/select.type\";\nimport type { PagedInput, PagedResult } from \"@fast-element-plus/components/table\";\nimport type { Options, Placement, PopperEffect } from \"element-plus\";\nimport type { Component, VNode } from \"vue\";\n\ntype Props = {\n\tlabel?: string;\n\tvalue?: string;\n\tdisabled?: string;\n\toptions?: string;\n};\n\nexport const SelectV2Props = {\n\t/**\n\t * @description whether creating new items is allowed. To use this, `filterable` must be true\n\t */\n\tallowCreate: Boolean,\n\t/**\n\t * @description autocomplete of select input\n\t */\n\tautocomplete: {\n\t\ttype: definePropType<\"none\" | \"both\" | \"list\" | \"inline\">(String),\n\t\tdefault: \"none\",\n\t},\n\t/**\n\t * @description for non-filterable Select, this prop decides if the option menu pops up when the input is focused\n\t */\n\tautomaticDropdown: Boolean,\n\t/**\n\t * @description whether select can be cleared\n\t */\n\tclearable: Boolean,\n\t/**\n\t * @description custom clear icon\n\t */\n\tclearIcon: {\n\t\ttype: definePropType<string | Component>([String, Object, Function]),\n\t\tdefault: CircleClose,\n\t},\n\t/**\n\t * @description tooltip theme, built-in theme: `dark` / `light`\n\t */\n\teffect: {\n\t\ttype: definePropType<PopperEffect | string>(String),\n\t\tdefault: \"light\",\n\t},\n\t/**\n\t * @description whether to collapse tags to a text when multiple selecting\n\t */\n\tcollapseTags: Boolean,\n\t/**\n\t * @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true\n\t */\n\tcollapseTagsTooltip: Boolean,\n\t/**\n\t * @description The max tags number to be shown. To use this, `collapse-tags` must be true\n\t */\n\tmaxCollapseTags: {\n\t\ttype: Number,\n\t\tdefault: 1,\n\t},\n\t/**\n\t * @description\n\t */\n\tdefaultFirstOption: Boolean,\n\t/**\n\t * @description is disabled\n\t */\n\tdisabled: Boolean,\n\t/**\n\t * @description\n\t */\n\testimatedOptionHeight: {\n\t\ttype: Number,\n\t\tdefault: undefined,\n\t},\n\t/**\n\t * @description is filterable\n\t */\n\tfilterable: Boolean,\n\t/**\n\t * @description\n\t */\n\tfilterMethod: Function,\n\t/**\n\t * @description The height of the dropdown panel, 34px for each item\n\t */\n\theight: {\n\t\ttype: Number,\n\t\tdefault: 274, // same as select dropdown menu\n\t},\n\t/**\n\t * @description The height of the dropdown item\n\t */\n\titemHeight: {\n\t\ttype: Number,\n\t\tdefault: 34,\n\t},\n\t/**\n\t * @description\n\t */\n\tid: String,\n\t/**\n\t * @description whether Select is loading data from server\n\t */\n\tloading: Boolean,\n\t/**\n\t * @description displayed text while loading data from server, default is 'Loading'\n\t */\n\tloadingText: String,\n\t/**\n\t * @description biding value\n\t */\n\tmodelValue: {\n\t\ttype: definePropType<any[] | string | number | boolean | Record<string, any> | any>([Array, String, Number, Boolean, Object]),\n\t},\n\t/**\n\t * @description is multiple\n\t */\n\tmultiple: Boolean,\n\t/**\n\t * @description maximum number of options user can select when multiple is true. No limit when set to 0\n\t */\n\tmultipleLimit: {\n\t\ttype: Number,\n\t\tdefault: 0,\n\t},\n\t/**\n\t * @description the name attribute of select input\n\t */\n\tname: String,\n\t/**\n\t * @description displayed text when there is no options, you can also use slot empty, the default is 'No Data'\n\t */\n\tnoDataText: String,\n\t/**\n\t * @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'\n\t */\n\tnoMatchText: String,\n\t/**\n\t * @description function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true\n\t */\n\tremoteMethod: Function,\n\t/**\n\t * @description whether reserve the keyword after select filtered option.\n\t */\n\treserveKeyword: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description data of the options, the key of `value` and `label` can be customize by `props`\n\t */\n\toptions: {\n\t\ttype: definePropType<\n\t\t\t(\n\t\t\t\t| Record<string, any>\n\t\t\t\t| (Record<string, any> & {\n\t\t\t\t\t\tcreated?: boolean;\n\t\t\t\t })\n\t\t\t)[]\n\t\t>(Array),\n\t\t// required: true,\n\t},\n\t/**\n\t * @description placeholder, the default is 'Please select'\n\t */\n\tplaceholder: {\n\t\ttype: String,\n\t},\n\t/**\n\t * @description whether select dropdown is teleported to the body\n\t */\n\tteleported: useTooltipContentProps.teleported,\n\t/**\n\t * @description when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed\n\t */\n\tpersistent: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description custom class name for Select's dropdown\n\t */\n\tpopperClass: {\n\t\ttype: String,\n\t\tdefault: \"\",\n\t},\n\t/**\n\t * @description [popper.js](https://popper.js.org/docs/v2/) parameters\n\t */\n\tpopperOptions: {\n\t\ttype: definePropType<Partial<Options>>(Object),\n\t\tdefault: (): Partial<Options> => ({}),\n\t},\n\t/**\n\t * @description whether search data from server\n\t */\n\tremote: Boolean,\n\t/**\n\t * @description size of component\n\t */\n\tsize: useSizeProp,\n\t/**\n\t * @description configuration options, see the following table\n\t */\n\tprops: {\n\t\ttype: definePropType<Props>(Object),\n\t\tdefault: (): Required<Props> => ({\n\t\t\tlabel: \"label\",\n\t\t\tvalue: \"value\",\n\t\t\tdisabled: \"disabled\",\n\t\t\toptions: \"options\",\n\t\t}),\n\t},\n\t/**\n\t * @description unique identity key name for value, required when value is an object\n\t */\n\tvalueKey: {\n\t\ttype: String,\n\t\tdefault: \"value\",\n\t},\n\t/**\n\t * @description Controls whether the scrollbar is always displayed\n\t */\n\tscrollbarAlwaysOn: Boolean,\n\t/**\n\t * @description whether to trigger form validation\n\t */\n\tvalidateEvent: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description offset of the dropdown\n\t */\n\toffset: {\n\t\ttype: Number,\n\t\tdefault: 12,\n\t},\n\t/**\n\t * @description Determines whether the arrow is displayed\n\t */\n\tshowArrow: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/**\n\t * @description position of dropdown\n\t */\n\tplacement: {\n\t\ttype: definePropType<Placement>(String),\n\t\tdefault: \"bottom-start\",\n\t},\n\t/**\n\t * @description list of possible positions for dropdown\n\t */\n\tfallbackPlacements: {\n\t\ttype: definePropType<Placement[]>(Array),\n\t\tdefault: [\"bottom-start\", \"top-start\", \"right\", \"left\"],\n\t},\n\t/**\n\t * @description tag type\n\t */\n\ttagType: { ...tagProps.type, default: \"info\" },\n\t/**\n\t * @description tag effect\n\t */\n\ttagEffect: { ...tagProps.effect, default: \"light\" },\n\t/**\n\t * @description tabindex for input\n\t */\n\ttabindex: {\n\t\ttype: [String, Number],\n\t\tdefault: 0,\n\t},\n\t/**\n\t * @description which element the select dropdown appends to\n\t */\n\tappendTo: String,\n\t...useEmptyValuesProps,\n\t...useAriaProps([\"ariaLabel\"]),\n};\n\nexport type SelectComponentProps = {\n\t/** @description 指定标签为节点的某个属性值 */\n\tlabel?: string | ((data: any) => string);\n\t/** @description 指定是否隐藏为节点的某个属性值 */\n\thide?: string | ((data: any) => boolean);\n\t/** @description 指定是否禁用为节点的某个属性值 */\n\tdisabled?: string | ((data: any) => boolean);\n\t/** @description 指定子节点对象为节点的某个属性值 */\n\tchildren?: string;\n};\n\nexport const faSelectV2Props = {\n\t...SelectV2Props,\n\t/** @description displayed text while loading data from server, default is 'Loading' */\n\tloadingText: {\n\t\ttype: String,\n\t\tdefault: \"加载中...\",\n\t},\n\t/** @description displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data' */\n\tnoMatchText: {\n\t\ttype: String,\n\t\tdefault: \"暂无匹配的数据\",\n\t},\n\t/** @description displayed text when there is no options, you can also use slot `empty`, default is 'No data' */\n\tnoDataText: {\n\t\ttype: String,\n\t\tdefault: \"暂无数据\",\n\t},\n\t/** @description whether to collapse tags to a text when multiple selecting */\n\tcollapseTags: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/** @description whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true */\n\tcollapseTagsTooltip: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/** @description v-model绑定值 */\n\tmodelValue: {\n\t\ttype: definePropType<string | number | boolean | object | (string | number | boolean | object)[]>([String, Number, Boolean, Object, Array]),\n\t\tdefault: undefined,\n\t},\n\t/** @description v-model:label绑定值 */\n\tlabel: definePropType<string | string[]>([String, Array]),\n\t/** @description 宽度 */\n\twidth: {\n\t\ttype: [String, Number],\n\t\tdefault: \"100%\",\n\t},\n\t/** @description 更多细节,只有使用slot的时候有用 */\n\tmoreDetail: Boolean,\n\t/** @description 懒加载远程数据,默认 true。当下拉框第一次显示的时候才会加载远程数据*/\n\tlazy: {\n\t\ttype: Boolean,\n\t\tdefault: true,\n\t},\n\t/** @description 默认选中。不能和懒加载一起使用 */\n\tdefaultSelected: Boolean,\n\t/** @description 下拉框数据 */\n\tdata: {\n\t\ttype: definePropType<ElSelectorOutput[]>(Array),\n\t\tdefault: (): ElSelectorOutput[] => [],\n\t},\n\t/** 分页返回 */\n\tpageResult: Boolean,\n\t/** @description 请求api */\n\trequestApi: {\n\t\ttype: definePropType<((params?: any) => Promise<ElSelectorOutput[]>) | ((params?: PagedInput) => Promise<PagedResult<ElSelectorOutput>>)>(\n\t\t\tFunction\n\t\t),\n\t},\n\t/** 初始化参数 */\n\tinitParam: definePropType<string | number | any>([String, Number, Object]),\n};\n\nexport const faSelectV2Emits = {\n\t/** @description v-model 回调 */\n\t\"update:modelValue\": (value: string | number | boolean | object | (string | number | boolean | object)[]): boolean =>\n\t\tisString(value) || isNumber(value) || isBoolean(value) || isObject(value) || isArray(value) || isNull(value),\n\t/** @description v-model:label 回调 */\n\t\"update:label\": (value: string | string[]): boolean => isString(value) || isArray(value) || isNull(value),\n\t/** @description 数据改变 */\n\tdataChangeCallBack: (data: ElSelectorOutput[] | any[]): boolean => isArray(data),\n\t/** @description 改变 */\n\tchange: (\n\t\tdata: ElSelectorOutput | ElSelectorOutput[] | any | any[],\n\t\tvalue?: string | number | boolean | object | (string | number | boolean | object)[]\n\t): boolean =>\n\t\t(isObject(data) || isArray(data) || isNull(data)) &&\n\t\t(isString(value) || isNumber(value) || isBoolean(value) || isObject(value) || isArray(value) || isNull(value)),\n\t/** @description 下拉框出现/隐藏时触发 */\n\tvisibleChange: (visible: boolean): boolean => isBoolean(visible),\n\t/** @description 多选模式下移除tag时触发 */\n\tremoveTag: (tagValue: any): boolean => isString(tagValue) || isNumber(tagValue) || isBoolean(tagValue) || isObject(tagValue) || isArray(tagValue),\n\t/** @description 可清空的单选模式下用户点击清空按钮时触发 */\n\tclear: (): boolean => true,\n\t/** @description 当 input 失去焦点时触发 */\n\tblur: (event: FocusEvent): boolean => event instanceof FocusEvent,\n\t/** @description 当 input 获得焦点时触发 */\n\tfocus: (event: FocusEvent): boolean => event instanceof FocusEvent,\n};\n\ntype FaSelectV2Slots = {\n\t/** @description FaSelectOption 默认内容插槽 */\n\tdefault: { item: ElSelectorOutput; index: number; disabled: boolean };\n\t/** @description 下拉列表顶部的内容 */\n\theader: never;\n\t/** @description 下拉列表底部的内容 */\n\tfooter: never;\n\t/** @description Select 组件头部内容 */\n\tprefix: never;\n\t/** @description 无选项时的列表 */\n\tempty: never;\n\t/** @description select 组件自定义标签内容 */\n\ttag: never;\n\t/** @description select 组件自定义 loading内容 */\n\tloading: never;\n\t/** @description select 组件自定义标签内容 */\n\tlabel: { label: string; value: string | number | boolean | object };\n};\n\nexport default defineComponent({\n\tname: \"FaSelectV2\",\n\tprops: faSelectV2Props,\n\temits: faSelectV2Emits,\n\tslots: makeSlots<FaSelectV2Slots>(),\n\tsetup(props, { attrs, slots, emit, expose }) {\n\t\tconst selectedLabel = useVModel(props, \"label\", emit, { passive: true });\n\t\tconst _globalSize = useGlobalSize();\n\n\t\tconst state = reactive({\n\t\t\tvalue: withDefineType<string | number | boolean | object | (string | number | boolean | object)[]>(),\n\t\t\tloading: false,\n\t\t\tselectorData: withDefineType<ElSelectorOutput[]>([]),\n\t\t\t/** 首次出现 */\n\t\t\tdebut: true,\n\t\t\t/** 回显 */\n\t\t\techo: props.data?.length > 0 ? false : true,\n\t\t\t/** 下次刷新 */\n\t\t\tnextRefresh: false,\n\t\t});\n\n\t\tconst selectV2Ref = ref<InstanceType<typeof ElSelectV2>>();\n\n\t\tconst loadData = async (): Promise<void> => {\n\t\t\t// 判断是否需要自动请求\n\t\t\tif (props.requestApi) {\n\t\t\t\tstate.loading = true;\n\t\t\t\tconst params = props.initParam ?? {};\n\t\t\t\ttry {\n\t\t\t\t\tconst resData = await props.requestApi(params);\n\t\t\t\t\t// 这里不允许回显了\n\t\t\t\t\tstate.echo = false;\n\t\t\t\t\t// 判断是否为分页返回\n\t\t\t\t\tif (props.pageResult) {\n\t\t\t\t\t\tstate.selectorData = (resData as PagedResult<ElSelectorOutput>).rows;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tstate.selectorData = resData as ElSelectorOutput[];\n\t\t\t\t\t}\n\t\t\t\t\temit(\"dataChangeCallBack\", state.selectorData);\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsoleError(\"FaSelect\", error);\n\t\t\t\t\tstate.selectorData = [];\n\t\t\t\t} finally {\n\t\t\t\t\tstate.loading = false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// 这里不允许回显了\n\t\t\t\tstate.echo = false;\n\t\t\t\tstate.selectorData = props.data;\n\t\t\t}\n\t\t};\n\n\t\tconst handleChange = (value?: string | number | boolean | object | (string | number | boolean | object)[]): void => {\n\t\t\t// 判断是否为多选\n\t\t\tif (props.multiple) {\n\t\t\t\t// value 必然是数组\n\t\t\t\tconst valueArr = value as (string | number | boolean | object)[];\n\t\t\t\tif (valueArr?.length === 0) {\n\t\t\t\t\tstate.value = null;\n\t\t\t\t\tselectedLabel.value = null;\n\t\t\t\t\temit(\"update:modelValue\", null);\n\t\t\t\t\temit(\"change\", null, null);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst dataList = state.selectorData.filter((f) => valueArr.includes(f.value));\n\t\t\t\tstate.value = value;\n\t\t\t\tselectedLabel.value = dataList.map((m) => m.label);\n\t\t\t\temit(\"update:modelValue\", value);\n\t\t\t\temit(\"change\", dataList, value);\n\t\t\t} else {\n\t\t\t\t// value 必然不是数组\n\t\t\t\tif (isNil(value)) {\n\t\t\t\t\tstate.value = null;\n\t\t\t\t\tselectedLabel.value = null;\n\t\t\t\t\temit(\"update:modelValue\", null);\n\t\t\t\t\temit(\"change\", null, null);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst data = state.selectorData.find((f) => f.value === value);\n\t\t\t\tstate.value = value;\n\t\t\t\tselectedLabel.value = data.label;\n\t\t\t\temit(\"update:modelValue\", value);\n\t\t\t\temit(\"change\", data, value);\n\t\t\t}\n\t\t};\n\n\t\tconst handleClear = (): void => {\n\t\t\tstate.value = null;\n\t\t\tselectedLabel.value = null;\n\t\t\temit(\"clear\");\n\t\t};\n\n\t\tconst handleVisibleChange = async (visible: boolean): Promise<void> => {\n\t\t\tif (visible) {\n\t\t\t\tif (state.debut) {\n\t\t\t\t\t// 首次出现\n\t\t\t\t\tstate.debut = false;\n\t\t\t\t\t// 懒加载\n\t\t\t\t\t!props.defaultSelected && props.lazy && (await loadData());\n\t\t\t\t} else {\n\t\t\t\t\t// 判断再次出现是否需要刷新数据\n\t\t\t\t\tif (state.nextRefresh) {\n\t\t\t\t\t\tstate.nextRefresh = false;\n\t\t\t\t\t\tawait loadData();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\temit(\"visibleChange\", visible);\n\t\t};\n\n\t\twatch(\n\t\t\t() => props.modelValue,\n\t\t\t(newValue) => {\n\t\t\t\tif (state.echo && !isNil(newValue)) {\n\t\t\t\t\tconst hasLabel = !isNil(props.label);\n\t\t\t\t\t// 判断是否为多选\n\t\t\t\t\tif (props.multiple) {\n\t\t\t\t\t\t// 判断是否为数组\n\t\t\t\t\t\tif (!isArray(newValue)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当启用 multiple 时,传入的 modelValue 必须是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (hasLabel && !isArray(props.label)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当启用 multiple 时,传入的 modelValue:label 必须是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstate.selectorData = newValue\n\t\t\t\t\t\t\t// 最大选项截取\n\t\t\t\t\t\t\t.slice(0, props.multipleLimit > 0 ? props.multipleLimit : newValue.length)\n\t\t\t\t\t\t\t.map((item, index) => ({\n\t\t\t\t\t\t\t\tvalue: item,\n\t\t\t\t\t\t\t\tlabel: hasLabel ? props.label[index] : undefined,\n\t\t\t\t\t\t\t}));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (isArray(newValue)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当禁用 multiple 时,传入的 modelValue 不能是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (hasLabel && isArray(props.label)) {\n\t\t\t\t\t\t\tconsoleError(\"FaSelectV2\", \"当禁用 multiple 时,传入的 modelValue:label 不能是Array。\");\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstate.selectorData = [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvalue: newValue,\n\t\t\t\t\t\t\t\tlabel: props.label,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tstate.value = newValue;\n\t\t\t},\n\t\t\t{\n\t\t\t\timmediate: true,\n\t\t\t}\n\t\t);\n\n\t\tonMounted(async () => {\n\t\t\tif (props.defaultSelected) {\n\t\t\t\tawait loadData();\n\t\t\t\tif (state.selectorData.length > 0) {\n\t\t\t\t\thandleChange(props.multiple ? [state.selectorData[0].value] : state.selectorData[0].value);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// 判断是否为本地数据\n\t\t\telse if (!props.requestApi && props.data?.length > 0) {\n\t\t\t\tstate.debut = false;\n\t\t\t\tawait loadData();\n\t\t\t}\n\t\t\t// 判断是否非默认选中,且未启用懒加载\n\t\t\telse if (!props.lazy) {\n\t\t\t\tawait loadData();\n\t\t\t}\n\t\t\twatch(\n\t\t\t\t() => props.initParam,\n\t\t\t\t(newValue, oldValue) => {\n\t\t\t\t\tif (!isEqual(newValue, oldValue)) {\n\t\t\t\t\t\tstate.nextRefresh = true;\n\t\t\t\t\t\tif (!isNil(state.value)) {\n\t\t\t\t\t\t\thandleChange();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\t\t\twatch(\n\t\t\t\t() => props.data,\n\t\t\t\tasync () => {\n\t\t\t\t\tif (!props.requestApi) {\n\t\t\t\t\t\tawait loadData();\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{ deep: true }\n\t\t\t);\n\t\t});\n\n\t\tconst elSelectV2Props = useProps(props, SelectV2Props, [\"modelValue\", \"popperClass\", \"loading\", \"options\", \"itemHeight\"]);\n\n\t\tuseRender(() => (\n\t\t\t<ElSelectV2\n\t\t\t\t{...elSelectV2Props.value}\n\t\t\t\tref={selectV2Ref}\n\t\t\t\tclass=\"fa-select-v2\"\n\t\t\t\tpopperClass={`${props.moreDetail && `fa-select-v2-dropdown__more-detail`} ${props.popperClass}`}\n\t\t\t\tstyle={{ width: addUnit(props.width) }}\n\t\t\t\tvModel={state.value}\n\t\t\t\tloading={state.loading}\n\t\t\t\toptions={state.selectorData}\n\t\t\t\titemHeight={props.itemHeight + (_globalSize.value === \"small\" ? 0 : 8)}\n\t\t\t\tonChange={handleChange}\n\t\t\t\tonClear={handleClear}\n\t\t\t\tonVisibleChange={handleVisibleChange}\n\t\t\t\tonRemoveTag={(tagValue: any) => emit(\"removeTag\", tagValue)}\n\t\t\t\tonBlur={(event: FocusEvent) => emit(\"blur\", event)}\n\t\t\t\tonFocus={(event: FocusEvent) => emit(\"focus\", event)}\n\t\t\t>\n\t\t\t\t{{\n\t\t\t\t\t...(slots.default && {\n\t\t\t\t\t\tdefault: ({ item, index, disabled }: { item: ElSelectorOutput; index: number; disabled: boolean }): VNode[] =>\n\t\t\t\t\t\t\tslots.default({ item, index, disabled }),\n\t\t\t\t\t}),\n\t\t\t\t\t...(slots.header && { header: (): VNode[] => slots.header() }),\n\t\t\t\t\t...(slots.footer && { footer: (): VNode[] => slots.footer() }),\n\t\t\t\t\t...(slots.prefix && { prefix: (): VNode[] => slots.prefix() }),\n\t\t\t\t\t...(slots.empty && { empty: (): VNode[] => slots.empty() }),\n\t\t\t\t\t...(slots.tag && { tag: (): VNode[] => slots.tag() }),\n\t\t\t\t\t...(slots.loading && { loading: (): VNode[] => slots.loading() }),\n\t\t\t\t\t...(slots.label && {\n\t\t\t\t\t\tlabel: ({ label, value }: { label: string; value: string | number | boolean | object }): VNode[] =>\n\t\t\t\t\t\t\tslots.label({ label, value }),\n\t\t\t\t\t}),\n\t\t\t\t}}\n\t\t\t</ElSelectV2>\n\t\t));\n\n\t\treturn useExpose(expose, {\n\t\t\t/** @description 使选择器的输入框获取焦点 */\n\t\t\tfocus: computed(() => selectV2Ref.value?.focus),\n\t\t\t/** @description 使选择器的输入框失去焦点,并隐藏下拉框 */\n\t\t\tblur: computed(() => selectV2Ref.value?.blur),\n\t\t\t/** @description 获取当前选中的标签 */\n\t\t\tselectedLabel: computed(() => selectV2Ref.value?.selectedLabel),\n\t\t\t/** @description 加载状态 */\n\t\t\tloading: computed(() => state.loading),\n\t\t\t/** @description 刷新 */\n\t\t\trefresh: loadData,\n\t\t\t/** @description 设置选择 */\n\t\t\tsetSelection: (value: string | number | boolean | object | (string | number | boolean | object)[]) => handleChange(value),\n\t\t\t/** @description 清除选择 */\n\t\t\tclearSelection: () => handleChange(null),\n\t\t});\n\t},\n});\n"],"names":["SelectV2Props","allowCreate","Boolean","autocomplete","type","definePropType","String","default","automaticDropdown","clearable","clearIcon","Object","Function","CircleClose","effect","collapseTags","collapseTagsTooltip","maxCollapseTags","Number","defaultFirstOption","disabled","estimatedOptionHeight","undefined","filterable","filterMethod","height","itemHeight","id","loading","loadingText","modelValue","Array","multiple","multipleLimit","name","noDataText","noMatchText","remoteMethod","reserveKeyword","options","placeholder","teleported","useTooltipContentProps","persistent","popperClass","popperOptions","remote","size","useSizeProp","props","label","value","valueKey","scrollbarAlwaysOn","validateEvent","offset","showArrow","placement","fallbackPlacements","tagType","tagProps","tagEffect","tabindex","appendTo","useEmptyValuesProps","useAriaProps","faSelectV2Props","width","moreDetail","lazy","defaultSelected","data","pageResult","requestApi","initParam","faSelectV2Emits","isString","isNumber","isBoolean","isObject","isArray","isNull","dataChangeCallBack","change","visibleChange","visible","removeTag","tagValue","clear","blur","event","FocusEvent","focus","emits","slots","makeSlots","setup","attrs","emit","expose","selectedLabel","useVModel","passive","_globalSize","useGlobalSize","state","reactive","withDefineType","selectorData","debut","echo","length","nextRefresh","selectV2Ref","ref","loadData","params","resData","rows","error","consoleError","handleChange","valueArr","dataList","filter","f","includes","map","m","isNil","find","handleClear","handleVisibleChange","watch","newValue","hasLabel","slice","item","index","immediate","onMounted","oldValue","isEqual","deep","elSelectV2Props","useProps","useRender","_createVNode","ElSelectV2","_mergeProps","addUnit","$event","header","footer","prefix","empty","tag","useExpose","computed","refresh","setSelection","clearSelection"],"mappings":";;;;;;AAkBO,MAAMA,gBAAgB;AAAA;AAAA;AAAA;AAAA,EAI5BC,aAAaC;AAAAA;AAAAA;AAAAA;AAAAA,EAIbC,cAAc;AAAA,IACbC,MAAMC,eAAoDC,MAAM;AAAA,IAChEC,SAAS;AAAA;;;;EAKVC,mBAAmBN;AAAAA;AAAAA;AAAAA;AAAAA,EAInBO,WAAWP;AAAAA;AAAAA;AAAAA;AAAAA,EAIXQ,WAAW;AAAA,IACVN,MAAMC,eAAmC,CAACC,QAAQK,QAAQC,QAAQ,CAAC;AAAA,IACnEL,SAASM;AAAAA;;;;EAKVC,QAAQ;AAAA,IACPV,MAAMC,eAAsCC,MAAM;AAAA,IAClDC,SAAS;AAAA;;;;EAKVQ,cAAcb;AAAAA;AAAAA;AAAAA;AAAAA,EAIdc,qBAAqBd;AAAAA;AAAAA;AAAAA;AAAAA,EAIrBe,iBAAiB;AAAA,IAChBb,MAAMc;AAAAA,IACNX,SAAS;AAAA;;;;EAKVY,oBAAoBjB;AAAAA;AAAAA;AAAAA;AAAAA,EAIpBkB,UAAUlB;AAAAA;AAAAA;AAAAA;AAAAA,EAIVmB,uBAAuB;AAAA,IACtBjB,MAAMc;AAAAA,IACNX,SAASe;AAAAA;;;;EAKVC,YAAYrB;AAAAA;AAAAA;AAAAA;AAAAA,EAIZsB,cAAcZ;AAAAA;AAAAA;AAAAA;AAAAA,EAIda,QAAQ;AAAA,IACPrB,MAAMc;AAAAA,IACNX,SAAS;AAAA;AAAA;;;;EAKVmB,YAAY;AAAA,IACXtB,MAAMc;AAAAA,IACNX,SAAS;AAAA;;;;EAKVoB,IAAIrB;AAAAA;AAAAA;AAAAA;AAAAA,EAIJsB,SAAS1B;AAAAA;AAAAA;AAAAA;AAAAA,EAIT2B,aAAavB;AAAAA;AAAAA;AAAAA;AAAAA,EAIbwB,YAAY;AAAA,IACX1B,MAAMC,eAA8E,CAAC0B,OAAOzB,QAAQY,QAAQhB,SAASS,MAAM,CAAC;AAAA;;;;EAK7HqB,UAAU9B;AAAAA;AAAAA;AAAAA;AAAAA,EAIV+B,eAAe;AAAA,IACd7B,MAAMc;AAAAA,IACNX,SAAS;AAAA;;;;EAKV2B,MAAM5B;AAAAA;AAAAA;AAAAA;AAAAA,EAIN6B,YAAY7B;AAAAA;AAAAA;AAAAA;AAAAA,EAIZ8B,aAAa9B;AAAAA;AAAAA;AAAAA;AAAAA,EAIb+B,cAAczB;AAAAA;AAAAA;AAAAA;AAAAA,EAId0B,gBAAgB;AAAA,IACflC,MAAMF;AAAAA,IACNK,SAAS;AAAA;;;;EAKVgC,SAAS;AAAA,IACRnC,MAAMC,eAOJ0B,KAAK;AAAA;AAAA;;;;EAMRS,aAAa;AAAA,IACZpC,MAAME;AAAAA;;;;EAKPmC,YAAYC,uBAAuBD;AAAAA;AAAAA;AAAAA;AAAAA,EAInCE,YAAY;AAAA,IACXvC,MAAMF;AAAAA,IACNK,SAAS;AAAA;;;;EAKVqC,aAAa;AAAA,IACZxC,MAAME;AAAAA,IACNC,SAAS;AAAA;;;;EAKVsC,eAAe;AAAA,IACdzC,MAAMC,eAAiCM,MAAM;AAAA,IAC7CJ,SAASA,OAAyB,CAAA;AAAA;;;;EAKnCuC,QAAQ5C;AAAAA;AAAAA;AAAAA;AAAAA,EAIR6C,MAAMC;AAAAA;AAAAA;AAAAA;AAAAA,EAINC,OAAO;AAAA,IACN7C,MAAMC,eAAsBM,MAAM;AAAA,IAClCJ,SAASA,OAAwB;AAAA,MAChC2C,OAAO;AAAA,MACPC,OAAO;AAAA,MACP/B,UAAU;AAAA,MACVmB,SAAS;AAAA;;;;;EAMXa,UAAU;AAAA,IACThD,MAAME;AAAAA,IACNC,SAAS;AAAA;;;;EAKV8C,mBAAmBnD;AAAAA;AAAAA;AAAAA;AAAAA,EAInBoD,eAAe;AAAA,IACdlD,MAAMF;AAAAA,IACNK,SAAS;AAAA;;;;EAKVgD,QAAQ;AAAA,IACPnD,MAAMc;AAAAA,IACNX,SAAS;AAAA;;;;EAKViD,WAAW;AAAA,IACVpD,MAAMF;AAAAA,IACNK,SAAS;AAAA;;;;EAKVkD,WAAW;AAAA,IACVrD,MAAMC,eAA0BC,MAAM;AAAA,IACtCC,SAAS;AAAA;;;;EAKVmD,oBAAoB;AAAA,IACnBtD,MAAMC,eAA4B0B,KAAK;AAAA,IACvCxB,SAAS,CAAC,gBAAgB,aAAa,SAAS,MAAM;AAAA;;;;EAKvDoD,SAAS;AAAA,IAAE,GAAGC,SAASxD;AAAAA,IAAMG,SAAS;AAAA;;;;EAItCsD,WAAW;AAAA,IAAE,GAAGD,SAAS9C;AAAAA,IAAQP,SAAS;AAAA;;;;EAI1CuD,UAAU;AAAA,IACT1D,MAAM,CAACE,QAAQY,MAAM;AAAA,IACrBX,SAAS;AAAA;;;;EAKVwD,UAAUzD;AAAAA,EACV,GAAG0D;AAAAA,EACH,GAAGC,aAAa,CAAC,WAAW,CAAC;AAC9B;AAaO,MAAMC,kBAAkB;AAAA,EAC9B,GAAGlE;AAAAA;AAAAA,EAEH6B,aAAa;AAAA,IACZzB,MAAME;AAAAA,IACNC,SAAS;AAAA;;EAGV6B,aAAa;AAAA,IACZhC,MAAME;AAAAA,IACNC,SAAS;AAAA;;EAGV4B,YAAY;AAAA,IACX/B,MAAME;AAAAA,IACNC,SAAS;AAAA;;EAGVQ,cAAc;AAAA,IACbX,MAAMF;AAAAA,IACNK,SAAS;AAAA;;EAGVS,qBAAqB;AAAA,IACpBZ,MAAMF;AAAAA,IACNK,SAAS;AAAA;;EAGVuB,YAAY;AAAA,IACX1B,MAAMC,eAA4F,CAACC,QAAQY,QAAQhB,SAASS,QAAQoB,KAAK,CAAC;AAAA,IAC1IxB,SAASe;AAAAA;;EAGV4B,OAAO7C,eAAkC,CAACC,QAAQyB,KAAK,CAAC;AAAA;AAAA,EAExDoC,OAAO;AAAA,IACN/D,MAAM,CAACE,QAAQY,MAAM;AAAA,IACrBX,SAAS;AAAA;;EAGV6D,YAAYlE;AAAAA;AAAAA,EAEZmE,MAAM;AAAA,IACLjE,MAAMF;AAAAA,IACNK,SAAS;AAAA;;EAGV+D,iBAAiBpE;AAAAA;AAAAA,EAEjBqE,MAAM;AAAA,IACLnE,MAAMC,eAAmC0B,KAAK;AAAA,IAC9CxB,SAASA,MAA0B,CAAA;AAAA;;EAGpCiE,YAAYtE;AAAAA;AAAAA,EAEZuE,YAAY;AAAA,IACXrE,MAAMC,eACLO,QACD;AAAA;;EAGD8D,WAAWrE,eAAsC,CAACC,QAAQY,QAAQP,MAAM,CAAC;AAC1E;AAEO,MAAMgE,kBAAkB;AAAA;AAAA,EAE9B,qBAAsBxB,WACrByB,SAASzB,KAAK,KAAK0B,SAAS1B,KAAK,KAAK2B,UAAU3B,KAAK,KAAK4B,SAAS5B,KAAK,KAAK6B,QAAQ7B,KAAK,KAAK8B,OAAO9B,KAAK;AAAA;AAAA,EAE5G,gBAAiBA,WAAsCyB,SAASzB,KAAK,KAAK6B,QAAQ7B,KAAK,KAAK8B,OAAO9B,KAAK;AAAA;AAAA,EAExG+B,oBAAqBX,UAA8CS,QAAQT,IAAI;AAAA;AAAA,EAE/EY,QAAQA,CACPZ,MACApB,WAEC4B,SAASR,IAAI,KAAKS,QAAQT,IAAI,KAAKU,OAAOV,IAAI,OAC9CK,SAASzB,KAAK,KAAK0B,SAAS1B,KAAK,KAAK2B,UAAU3B,KAAK,KAAK4B,SAAS5B,KAAK,KAAK6B,QAAQ7B,KAAK,KAAK8B,OAAO9B,KAAK;AAAA;AAAA,EAE7GiC,eAAgBC,aAA8BP,UAAUO,OAAO;AAAA;AAAA,EAE/DC,WAAYC,cAA2BX,SAASW,QAAQ,KAAKV,SAASU,QAAQ,KAAKT,UAAUS,QAAQ,KAAKR,SAASQ,QAAQ,KAAKP,QAAQO,QAAQ;AAAA;AAAA,EAEhJC,OAAOA,MAAe;AAAA;AAAA,EAEtBC,MAAOC,WAA+BA,iBAAiBC;AAAAA;AAAAA,EAEvDC,OAAQF,WAA+BA,iBAAiBC;AACzD;AAqBA,MAAA,2CAA+B;AAAA,EAC9BzD,MAAM;AAAA,EACNe,OAAOiB;AAAAA,EACP2B,OAAOlB;AAAAA,EACPmB,OAAOC,UAAS;AAAA,EAChBC,MAAM/C,OAAO;AAAA,IAAEgD;AAAAA,IAAOH;AAAAA,IAAOI;AAAAA,IAAMC;AAAAA,EAAO,GAAG;AAC5C,UAAMC,gBAAgBC,UAAUpD,OAAO,SAASiD,MAAM;AAAA,MAAEI,SAAS;AAAA,IAAK,CAAC;AACvE,UAAMC,cAAcC,cAAa;AAEjC,UAAMC,QAAQC,SAAS;AAAA,MACtBvD,OAAOwD,eAAc;AAAA,MACrB/E,SAAS;AAAA,MACTgF,cAAcD,eAAmC,EAAE;AAAA;AAAA,MAEnDE,OAAO;AAAA;AAAA,MAEPC,MAAM7D,MAAMsB,MAAMwC,SAAS,IAAI,QAAQ;AAAA;AAAA,MAEvCC,aAAa;AAAA,IACd,CAAC;AAED,UAAMC,cAAcC,IAAG;AAEvB,UAAMC,WAAW,YAA2B;AAE3C,UAAIlE,MAAMwB,YAAY;AACrBgC,cAAM7E,UAAU;AAChB,cAAMwF,SAASnE,MAAMyB,aAAa,CAAA;AAClC,YAAI;AACH,gBAAM2C,UAAU,MAAMpE,MAAMwB,WAAW2C,MAAM;AAE7CX,gBAAMK,OAAO;AAEb,cAAI7D,MAAMuB,YAAY;AACrBiC,kBAAMG,eAAgBS,QAA0CC;AAAAA,UACjE,OAAO;AACNb,kBAAMG,eAAeS;AAAAA,UACtB;AACAnB,eAAK,sBAAsBO,MAAMG,YAAY;AAAA,QAC9C,SAASW,OAAO;AACfC,uBAAa,YAAYD,KAAK;AAC9Bd,gBAAMG,eAAe,CAAA;AAAA,QACtB,UAAC;AACAH,gBAAM7E,UAAU;AAAA,QACjB;AAAA,MACD,OAAO;AAEN6E,cAAMK,OAAO;AACbL,cAAMG,eAAe3D,MAAMsB;AAAAA,MAC5B;AAAA,IACD;AAEA,UAAMkD,eAAgBtE,WAA8F;AAEnH,UAAIF,MAAMjB,UAAU;AAEnB,cAAM0F,WAAWvE;AACjB,YAAIuE,UAAUX,WAAW,GAAG;AAC3BN,gBAAMtD,QAAQ;AACdiD,wBAAcjD,QAAQ;AACtB+C,eAAK,qBAAqB,IAAI;AAC9BA,eAAK,UAAU,MAAM,IAAI;AACzB;AAAA,QACD;AACA,cAAMyB,WAAWlB,MAAMG,aAAagB,OAAQC,OAAMH,SAASI,SAASD,EAAE1E,KAAK,CAAC;AAC5EsD,cAAMtD,QAAQA;AACdiD,sBAAcjD,QAAQwE,SAASI,IAAKC,OAAMA,EAAE9E,KAAK;AACjDgD,aAAK,qBAAqB/C,KAAK;AAC/B+C,aAAK,UAAUyB,UAAUxE,KAAK;AAAA,MAC/B,OAAO;AAEN,YAAI8E,MAAM9E,KAAK,GAAG;AACjBsD,gBAAMtD,QAAQ;AACdiD,wBAAcjD,QAAQ;AACtB+C,eAAK,qBAAqB,IAAI;AAC9BA,eAAK,UAAU,MAAM,IAAI;AACzB;AAAA,QACD;AACA,cAAM3B,OAAOkC,MAAMG,aAAasB,KAAML,OAAMA,EAAE1E,UAAUA,KAAK;AAC7DsD,cAAMtD,QAAQA;AACdiD,sBAAcjD,QAAQoB,KAAKrB;AAC3BgD,aAAK,qBAAqB/C,KAAK;AAC/B+C,aAAK,UAAU3B,MAAMpB,KAAK;AAAA,MAC3B;AAAA,IACD;AAEA,UAAMgF,cAAcA,MAAY;AAC/B1B,YAAMtD,QAAQ;AACdiD,oBAAcjD,QAAQ;AACtB+C,WAAK,OAAO;AAAA,IACb;AAEA,UAAMkC,sBAAsB,OAAO/C,YAAoC;AACtE,UAAIA,SAAS;AACZ,YAAIoB,MAAMI,OAAO;AAEhBJ,gBAAMI,QAAQ;AAEd,WAAC5D,MAAMqB,mBAAmBrB,MAAMoB,QAAS,MAAM8C,SAAQ;AAAA,QACxD,OAAO;AAEN,cAAIV,MAAMO,aAAa;AACtBP,kBAAMO,cAAc;AACpB,kBAAMG,SAAQ;AAAA,UACf;AAAA,QACD;AAAA,MACD;AACAjB,WAAK,iBAAiBb,OAAO;AAAA,IAC9B;AAEAgD,UACC,MAAMpF,MAAMnB,YACXwG,cAAa;AACb,UAAI7B,MAAMK,QAAQ,CAACmB,MAAMK,QAAQ,GAAG;AACnC,cAAMC,WAAW,CAACN,MAAMhF,MAAMC,KAAK;AAEnC,YAAID,MAAMjB,UAAU;AAEnB,cAAI,CAACgD,QAAQsD,QAAQ,GAAG;AACvBd,yBAAa,cAAc,yCAAyC;AACpE;AAAA,UACD;AACA,cAAIe,YAAY,CAACvD,QAAQ/B,MAAMC,KAAK,GAAG;AACtCsE,yBAAa,cAAc,+CAA+C;AAC1E;AAAA,UACD;AACAf,gBAAMG,eAAe0B,SAEnBE,MAAM,GAAGvF,MAAMhB,gBAAgB,IAAIgB,MAAMhB,gBAAgBqG,SAASvB,MAAM,EACxEgB,IAAI,CAACU,MAAMC,WAAW;AAAA,YACtBvF,OAAOsF;AAAAA,YACPvF,OAAOqF,WAAWtF,MAAMC,MAAMwF,KAAK,IAAIpH;AAAAA,UACxC,EAAE;AAAA,QACJ,OAAO;AACN,cAAI0D,QAAQsD,QAAQ,GAAG;AACtBd,yBAAa,cAAc,yCAAyC;AACpE;AAAA,UACD;AACA,cAAIe,YAAYvD,QAAQ/B,MAAMC,KAAK,GAAG;AACrCsE,yBAAa,cAAc,+CAA+C;AAC1E;AAAA,UACD;AACAf,gBAAMG,eAAe,CACpB;AAAA,YACCzD,OAAOmF;AAAAA,YACPpF,OAAOD,MAAMC;AAAAA,UACd,CAAC;AAAA,QAEH;AAAA,MACD;AACAuD,YAAMtD,QAAQmF;AAAAA,IACf,GACA;AAAA,MACCK,WAAW;AAAA,IACZ,CACD;AAEAC,cAAU,YAAY;AACrB,UAAI3F,MAAMqB,iBAAiB;AAC1B,cAAM6C,SAAQ;AACd,YAAIV,MAAMG,aAAaG,SAAS,GAAG;AAClCU,uBAAaxE,MAAMjB,WAAW,CAACyE,MAAMG,aAAa,CAAC,EAAEzD,KAAK,IAAIsD,MAAMG,aAAa,CAAC,EAAEzD,KAAK;AAAA,QAC1F;AAAA,MACD,WAES,CAACF,MAAMwB,cAAcxB,MAAMsB,MAAMwC,SAAS,GAAG;AACrDN,cAAMI,QAAQ;AACd,cAAMM,SAAQ;AAAA,MACf,WAES,CAAClE,MAAMoB,MAAM;AACrB,cAAM8C,SAAQ;AAAA,MACf;AACAkB,YACC,MAAMpF,MAAMyB,WACZ,CAAC4D,UAAUO,aAAa;AACvB,YAAI,CAACC,QAAQR,UAAUO,QAAQ,GAAG;AACjCpC,gBAAMO,cAAc;AACpB,cAAI,CAACiB,MAAMxB,MAAMtD,KAAK,GAAG;AACxBsE,yBAAY;AAAA,UACb;AAAA,QACD;AAAA,MACD,CACD;AACAY,YACC,MAAMpF,MAAMsB,MACZ,YAAY;AACX,YAAI,CAACtB,MAAMwB,YAAY;AACtB,gBAAM0C,SAAQ;AAAA,QACf;AAAA,MACD,GACA;AAAA,QAAE4B,MAAM;AAAA,MAAK,CACd;AAAA,IACD,CAAC;AAED,UAAMC,kBAAkBC,SAAShG,OAAOjD,eAAe,CAAC,cAAc,eAAe,WAAW,WAAW,YAAY,CAAC;AAExHkJ,cAAU,MAAAC,YAAAC,YAAAC,WAEJL,gBAAgB7F,OAAK;AAAA,MAAA,OACpB8D;AAAAA,MAAW,SAAA;AAAA,MAAA,eAEH,GAAGhE,MAAMmB,cAAc,oCAAoC,IAAInB,MAAML,WAAW;AAAA,MAAE,SACxF;AAAA,QAAEuB,OAAOmF,QAAQrG,MAAMkB,KAAK;AAAA;MAAG,cAC9BsC,MAAMtD;AAAAA,MAAK,uBAAAoG,YAAX9C,MAAMtD,QAAKoG;AAAAA,MAAA,WACV9C,MAAM7E;AAAAA,MAAO,WACb6E,MAAMG;AAAAA,MAAY,cACf3D,MAAMvB,cAAc6E,YAAYpD,UAAU,UAAU,IAAI;AAAA,MAAE,YAC5DsE;AAAAA,MAAY,WACbU;AAAAA,MAAW,mBACHC;AAAAA,MAAmB,eACtB7C,cAAkBW,KAAK,aAAaX,QAAQ;AAAA,MAAC,UAClDG,WAAsBQ,KAAK,QAAQR,KAAK;AAAA,MAAC,WACxCA,WAAsBQ,KAAK,SAASR,KAAK;AAAA,IAAC,CAAA,GAAA;AAAA,MAGnD,GAAII,MAAMvF,WAAW;AAAA,QACpBA,SAASA,CAAC;AAAA,UAAEkI;AAAAA,UAAMC;AAAAA,UAAOtH;AAAAA,QAAuE,MAC/F0E,MAAMvF,QAAQ;AAAA,UAAEkI;AAAAA,UAAMC;AAAAA,UAAOtH;AAAAA,SAAU;AAAA,MACzC;AAAA,MACA,GAAI0E,MAAM0D,UAAU;AAAA,QAAEA,QAAQA,MAAe1D,MAAM0D,OAAM;AAAA,MAAG;AAAA,MAC5D,GAAI1D,MAAM2D,UAAU;AAAA,QAAEA,QAAQA,MAAe3D,MAAM2D,OAAM;AAAA,MAAG;AAAA,MAC5D,GAAI3D,MAAM4D,UAAU;AAAA,QAAEA,QAAQA,MAAe5D,MAAM4D,OAAM;AAAA,MAAG;AAAA,MAC5D,GAAI5D,MAAM6D,SAAS;AAAA,QAAEA,OAAOA,MAAe7D,MAAM6D,MAAK;AAAA,MAAG;AAAA,MACzD,GAAI7D,MAAM8D,OAAO;AAAA,QAAEA,KAAKA,MAAe9D,MAAM8D,IAAG;AAAA,MAAG;AAAA,MACnD,GAAI9D,MAAMlE,WAAW;AAAA,QAAEA,SAASA,MAAekE,MAAMlE,QAAO;AAAA,MAAG;AAAA,MAC/D,GAAIkE,MAAM5C,SAAS;AAAA,QAClBA,OAAOA,CAAC;AAAA,UAAEA;AAAAA,UAAOC;AAAAA,QAAoE,MACpF2C,MAAM5C,MAAM;AAAA,UAAEA;AAAAA,UAAOC;AAAAA,SAAO;AAAA;IAC5B,CAAA,CAGJ;AAED,WAAO0G,UAAU1D,QAAQ;AAAA;AAAA,MAExBP,OAAOkE,SAAS,MAAM7C,YAAY9D,OAAOyC,KAAK;AAAA;AAAA,MAE9CH,MAAMqE,SAAS,MAAM7C,YAAY9D,OAAOsC,IAAI;AAAA;AAAA,MAE5CW,eAAe0D,SAAS,MAAM7C,YAAY9D,OAAOiD,aAAa;AAAA;AAAA,MAE9DxE,SAASkI,SAAS,MAAMrD,MAAM7E,OAAO;AAAA;AAAA,MAErCmI,SAAS5C;AAAAA;AAAAA,MAET6C,cAAe7G,WAAuFsE,aAAatE,KAAK;AAAA;AAAA,MAExH8G,gBAAgBA,MAAMxC,aAAa,IAAI;AAAA,IACxC,CAAC;AAAA,EACF;AACD,CAAC;"}
@@ -22,7 +22,7 @@ export declare const tableProps: {
22
22
  * @description size of Table
23
23
  */
24
24
  size: {
25
- readonly type: PropType<"" | "small" | "default" | "large">;
25
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
26
26
  readonly required: false;
27
27
  readonly validator: ((val: unknown) => boolean) | undefined;
28
28
  __epPropKey: true;
@@ -253,8 +253,6 @@ export declare const faTableProps: {
253
253
  columnsChange: {
254
254
  type: PropType<(columns: FaTableChangeColumnsCtx[]) => Promise<void>>;
255
255
  };
256
- /** @description 显示搜素 */
257
- showSearch: BooleanConstructor;
258
256
  /** @description 搜索表单 Grid布局列配置 */
259
257
  searchFormCols: {
260
258
  type: PropType<string | number | Record<FaLayoutGridBreakPoint, number>>;
@@ -335,7 +333,7 @@ export declare const faTableProps: {
335
333
  * @description size of Table
336
334
  */
337
335
  size: {
338
- readonly type: PropType<"" | "small" | "default" | "large">;
336
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
339
337
  readonly required: false;
340
338
  readonly validator: ((val: unknown) => boolean) | undefined;
341
339
  __epPropKey: true;
@@ -649,8 +647,6 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
649
647
  columnsChange: {
650
648
  type: PropType<(columns: FaTableChangeColumnsCtx[]) => Promise<void>>;
651
649
  };
652
- /** @description 显示搜素 */
653
- showSearch: BooleanConstructor;
654
650
  /** @description 搜索表单 Grid布局列配置 */
655
651
  searchFormCols: {
656
652
  type: PropType<string | number | Record<FaLayoutGridBreakPoint, number>>;
@@ -731,7 +727,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
731
727
  * @description size of Table
732
728
  */
733
729
  size: {
734
- readonly type: PropType<"" | "small" | "default" | "large">;
730
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
735
731
  readonly required: false;
736
732
  readonly validator: ((val: unknown) => boolean) | undefined;
737
733
  __epPropKey: true;
@@ -1065,8 +1061,6 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1065
1061
  columnsChange: {
1066
1062
  type: PropType<(columns: FaTableChangeColumnsCtx[]) => Promise<void>>;
1067
1063
  };
1068
- /** @description 显示搜素 */
1069
- showSearch: BooleanConstructor;
1070
1064
  /** @description 搜索表单 Grid布局列配置 */
1071
1065
  searchFormCols: {
1072
1066
  type: PropType<string | number | Record<FaLayoutGridBreakPoint, number>>;
@@ -1147,7 +1141,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1147
1141
  * @description size of Table
1148
1142
  */
1149
1143
  size: {
1150
- readonly type: PropType<"" | "small" | "default" | "large">;
1144
+ readonly type: import('vue').PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "small" | "default" | "large", never>>;
1151
1145
  readonly required: false;
1152
1146
  readonly validator: ((val: unknown) => boolean) | undefined;
1153
1147
  __epPropKey: true;
@@ -1351,8 +1345,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1351
1345
  fit: boolean;
1352
1346
  data: any[];
1353
1347
  style: CSSProperties;
1354
- className: string;
1355
1348
  lazy: boolean;
1349
+ className: string;
1356
1350
  columns: FaTableColumnCtx[];
1357
1351
  scrollbarAlwaysOn: boolean;
1358
1352
  defaultExpandAll: boolean;
@@ -1363,7 +1357,6 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1363
1357
  border: boolean;
1364
1358
  highlightCurrentRow: boolean;
1365
1359
  tableKey: string;
1366
- showSearch: boolean;
1367
1360
  searchFormCols: string | number | Record<FaLayoutGridBreakPoint, number>;
1368
1361
  searchForm: boolean;
1369
1362
  headerCard: boolean;
@@ -259,8 +259,6 @@ const faTableProps = {
259
259
  columnsChange: {
260
260
  type: definePropType(Function)
261
261
  },
262
- /** @description 显示搜素 */
263
- showSearch: Boolean,
264
262
  /** @description 搜索表单 Grid布局列配置 */
265
263
  searchFormCols: {
266
264
  type: definePropType([String, Number, Object]),
@@ -728,7 +726,7 @@ const Table = /* @__PURE__ */ defineComponent({
728
726
  "--fa-table-height": `${state.tableHeight ? `${state.tableHeight}px` : ""}`
729
727
  }
730
728
  }, [createVNode(TableSearchForm, {
731
- "show": props.searchForm && state.showSearch,
729
+ "show": props.searchForm && state.searchForm,
732
730
  "cols": props.searchFormCols,
733
731
  "search": tableSearch,
734
732
  "reset": tableReset
@@ -804,10 +802,10 @@ const Table = /* @__PURE__ */ defineComponent({
804
802
  }, null), props.searchBtn && state.searchColumns.length > 0 && createVNode(ElButton, {
805
803
  "loading": state.loading,
806
804
  "loadingIcon": Eleme,
807
- "title": state.showSearch ? "隐藏搜索栏" : "显示搜索栏",
805
+ "title": state.searchForm ? "隐藏搜索栏" : "显示搜索栏",
808
806
  "circle": true,
809
807
  "icon": Search,
810
- "onClick": () => state.showSearch = !state.showSearch
808
+ "onClick": () => state.searchForm = !state.searchForm
811
809
  }, null), props.columnSettingBtn && !props.columns && createVNode(ElButton, {
812
810
  "loading": state.loading,
813
811
  "loadingIcon": Eleme,
@@ -893,7 +891,7 @@ const Table = /* @__PURE__ */ defineComponent({
893
891
  "fixed": "right",
894
892
  "width": state.operationColumnWidth,
895
893
  "headerAlign": "center",
896
- "align": "center",
894
+ "align": "left",
897
895
  "showOverflowTooltip": false,
898
896
  "className": "fa-table__operation-column",
899
897
  "resizable": false,