fast-element-plus 1.0.7 → 1.0.10

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 (182) hide show
  1. package/dist/index.full.js +894 -757
  2. package/dist/index.full.js.map +1 -1
  3. package/dist/index.full.min.js +1 -1
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +1 -1
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +894 -757
  8. package/dist/index.full.mjs.map +1 -1
  9. package/dist/styles/index.css +41 -23
  10. package/dist/styles/index.css.map +1 -1
  11. package/es/components/avatar/src/avatar.d.ts +4 -4
  12. package/es/components/avatar/src/avatar.mjs +1 -1
  13. package/es/components/avatar/src/avatar.mjs.map +1 -1
  14. package/es/components/button/src/button.mjs.map +1 -1
  15. package/es/components/carNumber/src/carNumber.d.ts +13 -5
  16. package/es/components/carNumber/src/carNumber.mjs +1 -1
  17. package/es/components/carNumber/src/carNumber.mjs.map +1 -1
  18. package/es/components/contextMenu/src/contextMenu.mjs +1 -1
  19. package/es/components/contextMenu/src/contextMenu.mjs.map +1 -1
  20. package/es/components/dialog/src/dialog.d.ts +4 -4
  21. package/es/components/dialog/src/dialog.mjs +1 -1
  22. package/es/components/dialog/src/dialog.mjs.map +1 -1
  23. package/es/components/drawer/src/drawer.d.ts +12 -4
  24. package/es/components/drawer/src/drawer.mjs +1 -1
  25. package/es/components/drawer/src/drawer.mjs.map +1 -1
  26. package/es/components/form/src/form.mjs +1 -1
  27. package/es/components/form/src/form.mjs.map +1 -1
  28. package/es/components/form/src/formItem.mjs +1 -1
  29. package/es/components/form/src/formItem.mjs.map +1 -1
  30. package/es/components/formItemTip/src/formItemTip.mjs +1 -1
  31. package/es/components/formItemTip/src/formItemTip.mjs.map +1 -1
  32. package/es/components/icon/src/icon.mjs +1 -1
  33. package/es/components/icon/src/icon.mjs.map +1 -1
  34. package/es/components/iconSelector/src/iconSelector.mjs +1 -1
  35. package/es/components/iconSelector/src/iconSelector.mjs.map +1 -1
  36. package/es/components/image/src/image.mjs +1 -1
  37. package/es/components/image/src/image.mjs.map +1 -1
  38. package/es/components/index.d.ts +1 -0
  39. package/es/components/index.mjs +1 -1
  40. package/es/components/inputDialogPage/index.d.ts +14 -0
  41. package/es/components/inputDialogPage/index.mjs +2 -0
  42. package/es/components/inputDialogPage/index.mjs.map +1 -0
  43. package/es/components/inputDialogPage/src/inputDialogPage.d.ts +131 -0
  44. package/es/components/inputDialogPage/src/inputDialogPage.mjs +2 -0
  45. package/es/components/inputDialogPage/src/inputDialogPage.mjs.map +1 -0
  46. package/es/components/layoutGrid/src/layoutGrid.mjs +1 -1
  47. package/es/components/layoutGrid/src/layoutGrid.mjs.map +1 -1
  48. package/es/components/layoutGrid/src/layoutGridItem.d.ts +6 -6
  49. package/es/components/layoutGrid/src/layoutGridItem.mjs +1 -1
  50. package/es/components/layoutGrid/src/layoutGridItem.mjs.map +1 -1
  51. package/es/components/select/src/select.d.ts +39 -34
  52. package/es/components/select/src/select.mjs +1 -1
  53. package/es/components/select/src/select.mjs.map +1 -1
  54. package/es/components/select/src/selectOption.mjs +1 -1
  55. package/es/components/select/src/selectOption.mjs.map +1 -1
  56. package/es/components/selectPage/src/selectPage.d.ts +39 -25
  57. package/es/components/selectPage/src/selectPage.mjs +1 -1
  58. package/es/components/selectPage/src/selectPage.mjs.map +1 -1
  59. package/es/components/selectV2/src/selectV2.d.ts +36 -44
  60. package/es/components/selectV2/src/selectV2.mjs +1 -1
  61. package/es/components/selectV2/src/selectV2.mjs.map +1 -1
  62. package/es/components/table/src/table.d.ts +6 -6
  63. package/es/components/table/src/table.mjs +1 -1
  64. package/es/components/table/src/table.mjs.map +1 -1
  65. package/es/components/table/src/table.type.d.ts +1 -1
  66. package/es/components/table/src/table.type.mjs.map +1 -1
  67. package/es/components/table/src/tableColumn.mjs +1 -1
  68. package/es/components/table/src/tableColumn.mjs.map +1 -1
  69. package/es/components/table/src/tableColumnSettingDialog.mjs +1 -1
  70. package/es/components/table/src/tableColumnSettingDialog.mjs.map +1 -1
  71. package/es/components/table/src/useTable.mjs +1 -1
  72. package/es/components/table/src/useTable.mjs.map +1 -1
  73. package/es/components/table/utils/table.mjs +1 -1
  74. package/es/components/table/utils/table.mjs.map +1 -1
  75. package/es/components/tree/src/tree.d.ts +68 -174
  76. package/es/components/tree/src/tree.mjs +1 -1
  77. package/es/components/tree/src/tree.mjs.map +1 -1
  78. package/es/components/treeSelect/src/treeSelect.d.ts +123 -221
  79. package/es/components/treeSelect/src/treeSelect.mjs +1 -1
  80. package/es/components/treeSelect/src/treeSelect.mjs.map +1 -1
  81. package/es/directives/click-copy/index.mjs.map +1 -1
  82. package/es/directives/click-debounce/index.mjs.map +1 -1
  83. package/es/directives/click-draggable/index.mjs.map +1 -1
  84. package/es/directives/click-icon-copy/index.mjs.map +1 -1
  85. package/es/directives/click-longpress/index.mjs.map +1 -1
  86. package/es/directives/click-throttle/index.mjs.map +1 -1
  87. package/es/index.mjs +1 -1
  88. package/es/index.mjs.map +1 -1
  89. package/es/make-installer.mjs +1 -1
  90. package/es/make-installer.mjs.map +1 -1
  91. package/es/version.d.ts +1 -1
  92. package/es/version.mjs +1 -1
  93. package/es/version.mjs.map +1 -1
  94. package/lib/components/avatar/src/avatar.d.ts +4 -4
  95. package/lib/components/avatar/src/avatar.js +1 -1
  96. package/lib/components/avatar/src/avatar.js.map +1 -1
  97. package/lib/components/button/src/button.js.map +1 -1
  98. package/lib/components/carNumber/src/carNumber.d.ts +13 -5
  99. package/lib/components/carNumber/src/carNumber.js +1 -1
  100. package/lib/components/carNumber/src/carNumber.js.map +1 -1
  101. package/lib/components/contextMenu/src/contextMenu.js +1 -1
  102. package/lib/components/contextMenu/src/contextMenu.js.map +1 -1
  103. package/lib/components/dialog/src/dialog.d.ts +4 -4
  104. package/lib/components/dialog/src/dialog.js +1 -1
  105. package/lib/components/dialog/src/dialog.js.map +1 -1
  106. package/lib/components/drawer/src/drawer.d.ts +12 -4
  107. package/lib/components/drawer/src/drawer.js +1 -1
  108. package/lib/components/drawer/src/drawer.js.map +1 -1
  109. package/lib/components/form/src/form.js +1 -1
  110. package/lib/components/form/src/form.js.map +1 -1
  111. package/lib/components/form/src/formItem.js +1 -1
  112. package/lib/components/form/src/formItem.js.map +1 -1
  113. package/lib/components/formItemTip/src/formItemTip.js +1 -1
  114. package/lib/components/formItemTip/src/formItemTip.js.map +1 -1
  115. package/lib/components/icon/src/icon.js +1 -1
  116. package/lib/components/icon/src/icon.js.map +1 -1
  117. package/lib/components/iconSelector/src/iconSelector.js +1 -1
  118. package/lib/components/iconSelector/src/iconSelector.js.map +1 -1
  119. package/lib/components/image/src/image.js +1 -1
  120. package/lib/components/image/src/image.js.map +1 -1
  121. package/lib/components/index.d.ts +1 -0
  122. package/lib/components/index.js +1 -1
  123. package/lib/components/inputDialogPage/index.d.ts +14 -0
  124. package/lib/components/inputDialogPage/index.js +2 -0
  125. package/lib/components/inputDialogPage/index.js.map +1 -0
  126. package/lib/components/inputDialogPage/src/inputDialogPage.d.ts +131 -0
  127. package/lib/components/inputDialogPage/src/inputDialogPage.js +2 -0
  128. package/lib/components/inputDialogPage/src/inputDialogPage.js.map +1 -0
  129. package/lib/components/layoutGrid/src/layoutGrid.js +1 -1
  130. package/lib/components/layoutGrid/src/layoutGrid.js.map +1 -1
  131. package/lib/components/layoutGrid/src/layoutGridItem.d.ts +6 -6
  132. package/lib/components/layoutGrid/src/layoutGridItem.js +1 -1
  133. package/lib/components/layoutGrid/src/layoutGridItem.js.map +1 -1
  134. package/lib/components/select/src/select.d.ts +39 -34
  135. package/lib/components/select/src/select.js +1 -1
  136. package/lib/components/select/src/select.js.map +1 -1
  137. package/lib/components/select/src/selectOption.js +1 -1
  138. package/lib/components/select/src/selectOption.js.map +1 -1
  139. package/lib/components/selectPage/src/selectPage.d.ts +39 -25
  140. package/lib/components/selectPage/src/selectPage.js +1 -1
  141. package/lib/components/selectPage/src/selectPage.js.map +1 -1
  142. package/lib/components/selectV2/src/selectV2.d.ts +36 -44
  143. package/lib/components/selectV2/src/selectV2.js +1 -1
  144. package/lib/components/selectV2/src/selectV2.js.map +1 -1
  145. package/lib/components/table/src/table.d.ts +6 -6
  146. package/lib/components/table/src/table.js +1 -1
  147. package/lib/components/table/src/table.js.map +1 -1
  148. package/lib/components/table/src/table.type.d.ts +1 -1
  149. package/lib/components/table/src/table.type.js.map +1 -1
  150. package/lib/components/table/src/tableColumn.js +1 -1
  151. package/lib/components/table/src/tableColumn.js.map +1 -1
  152. package/lib/components/table/src/tableColumnSettingDialog.js +1 -1
  153. package/lib/components/table/src/tableColumnSettingDialog.js.map +1 -1
  154. package/lib/components/table/src/useTable.js.map +1 -1
  155. package/lib/components/table/utils/table.js +1 -1
  156. package/lib/components/table/utils/table.js.map +1 -1
  157. package/lib/components/tree/src/tree.d.ts +68 -174
  158. package/lib/components/tree/src/tree.js +1 -1
  159. package/lib/components/tree/src/tree.js.map +1 -1
  160. package/lib/components/treeSelect/src/treeSelect.d.ts +123 -221
  161. package/lib/components/treeSelect/src/treeSelect.js +1 -1
  162. package/lib/components/treeSelect/src/treeSelect.js.map +1 -1
  163. package/lib/directives/click-copy/index.js.map +1 -1
  164. package/lib/directives/click-debounce/index.js.map +1 -1
  165. package/lib/directives/click-draggable/index.js.map +1 -1
  166. package/lib/directives/click-icon-copy/index.js.map +1 -1
  167. package/lib/directives/click-longpress/index.js.map +1 -1
  168. package/lib/directives/click-throttle/index.js.map +1 -1
  169. package/lib/index.js +1 -1
  170. package/lib/index.js.map +1 -1
  171. package/lib/make-installer.js.map +1 -1
  172. package/lib/version.d.ts +1 -1
  173. package/lib/version.js +1 -1
  174. package/lib/version.js.map +1 -1
  175. package/package.json +3 -3
  176. package/styles/components/dialog.scss +1 -1
  177. package/styles/components/select.scss +35 -0
  178. package/styles/components/selectPage.scss +0 -30
  179. package/styles/components/table.scss +1 -1
  180. package/styles/components/tree.scss +17 -2
  181. package/styles/index.scss +1 -0
  182. package/types/components.d.ts +110 -1
@@ -71,10 +71,10 @@
71
71
  })
72
72
  });
73
73
  const elAvatarProps = utils.useProps(props, ElementPlus.avatarProps, ["src"]);
74
- utils.useRender(() => vue.createVNode(ElementPlus.ElAvatar, vue.mergeProps(elAvatarProps.value, {
74
+ const elAvatarEmits = utils.useEmits(ElementPlus.avatarEmits, emit);
75
+ utils.useRender(() => vue.createVNode(ElementPlus.ElAvatar, vue.mergeProps(elAvatarProps.value, elAvatarEmits.value, {
75
76
  "class": "fa-avatar",
76
- "src": state.src,
77
- "onError": (evt) => emit("error", evt)
77
+ "src": state.src
78
78
  }), {
79
79
  default: () => [slots.default && slots.default({
80
80
  src: state.src
@@ -317,12 +317,12 @@
317
317
  var freeSelf = typeof self == "object" && self && self.Object === Object && self;
318
318
  var root = freeGlobal || freeSelf || Function("return this")();
319
319
  var Symbol$1 = root.Symbol;
320
- var objectProto$s = Object.prototype;
321
- var hasOwnProperty$o = objectProto$s.hasOwnProperty;
322
- var nativeObjectToString$3 = objectProto$s.toString;
320
+ var objectProto$t = Object.prototype;
321
+ var hasOwnProperty$p = objectProto$t.hasOwnProperty;
322
+ var nativeObjectToString$3 = objectProto$t.toString;
323
323
  var symToStringTag$1 = Symbol$1 ? Symbol$1.toStringTag : void 0;
324
324
  function getRawTag(value) {
325
- var isOwn = hasOwnProperty$o.call(value, symToStringTag$1), tag2 = value[symToStringTag$1];
325
+ var isOwn = hasOwnProperty$p.call(value, symToStringTag$1), tag2 = value[symToStringTag$1];
326
326
  try {
327
327
  value[symToStringTag$1] = void 0;
328
328
  var unmasked = true;
@@ -338,8 +338,8 @@
338
338
  }
339
339
  return result2;
340
340
  }
341
- var objectProto$r = Object.prototype;
342
- var nativeObjectToString$2 = objectProto$r.toString;
341
+ var objectProto$s = Object.prototype;
342
+ var nativeObjectToString$2 = objectProto$s.toString;
343
343
  function objectToString(value) {
344
344
  return nativeObjectToString$2.call(value);
345
345
  }
@@ -521,11 +521,11 @@
521
521
  }
522
522
  var reRegExpChar$1 = /[\\^$.*+?()[\]{}|]/g;
523
523
  var reIsHostCtor = /^\[object .+?Constructor\]$/;
524
- var funcProto$1 = Function.prototype, objectProto$q = Object.prototype;
524
+ var funcProto$1 = Function.prototype, objectProto$r = Object.prototype;
525
525
  var funcToString$1 = funcProto$1.toString;
526
- var hasOwnProperty$n = objectProto$q.hasOwnProperty;
526
+ var hasOwnProperty$o = objectProto$r.hasOwnProperty;
527
527
  var reIsNative = RegExp(
528
- "^" + funcToString$1.call(hasOwnProperty$n).replace(reRegExpChar$1, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
528
+ "^" + funcToString$1.call(hasOwnProperty$o).replace(reRegExpChar$1, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
529
529
  );
530
530
  function baseIsNative(value) {
531
531
  if (!isObject$1(value) || isMasked(value)) {
@@ -673,10 +673,10 @@
673
673
  return metaMap.get(func2);
674
674
  };
675
675
  var realNames = {};
676
- var objectProto$p = Object.prototype;
677
- var hasOwnProperty$m = objectProto$p.hasOwnProperty;
676
+ var objectProto$q = Object.prototype;
677
+ var hasOwnProperty$n = objectProto$q.hasOwnProperty;
678
678
  function getFuncName(func2) {
679
- var result2 = func2.name + "", array2 = realNames[result2], length = hasOwnProperty$m.call(realNames, result2) ? array2.length : 0;
679
+ var result2 = func2.name + "", array2 = realNames[result2], length = hasOwnProperty$n.call(realNames, result2) ? array2.length : 0;
680
680
  while (length--) {
681
681
  var data = array2[length], otherFunc = data.func;
682
682
  if (otherFunc == null || otherFunc == func2) {
@@ -712,14 +712,14 @@
712
712
  result2.__values__ = wrapper.__values__;
713
713
  return result2;
714
714
  }
715
- var objectProto$o = Object.prototype;
716
- var hasOwnProperty$l = objectProto$o.hasOwnProperty;
715
+ var objectProto$p = Object.prototype;
716
+ var hasOwnProperty$m = objectProto$p.hasOwnProperty;
717
717
  function lodash(value) {
718
718
  if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {
719
719
  if (value instanceof LodashWrapper) {
720
720
  return value;
721
721
  }
722
- if (hasOwnProperty$l.call(value, "__wrapped__")) {
722
+ if (hasOwnProperty$m.call(value, "__wrapped__")) {
723
723
  return wrapperClone(value);
724
724
  }
725
725
  }
@@ -1125,11 +1125,11 @@
1125
1125
  function eq(value, other) {
1126
1126
  return value === other || value !== value && other !== other;
1127
1127
  }
1128
- var objectProto$n = Object.prototype;
1129
- var hasOwnProperty$k = objectProto$n.hasOwnProperty;
1128
+ var objectProto$o = Object.prototype;
1129
+ var hasOwnProperty$l = objectProto$o.hasOwnProperty;
1130
1130
  function assignValue(object2, key, value) {
1131
1131
  var objValue = object2[key];
1132
- if (!(hasOwnProperty$k.call(object2, key) && eq(objValue, value)) || value === void 0 && !(key in object2)) {
1132
+ if (!(hasOwnProperty$l.call(object2, key) && eq(objValue, value)) || value === void 0 && !(key in object2)) {
1133
1133
  baseAssignValue(object2, key, value);
1134
1134
  }
1135
1135
  }
@@ -1206,9 +1206,9 @@
1206
1206
  return object2;
1207
1207
  });
1208
1208
  }
1209
- var objectProto$m = Object.prototype;
1209
+ var objectProto$n = Object.prototype;
1210
1210
  function isPrototype(value) {
1211
- var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto$m;
1211
+ var Ctor = value && value.constructor, proto = typeof Ctor == "function" && Ctor.prototype || objectProto$n;
1212
1212
  return value === proto;
1213
1213
  }
1214
1214
  function baseTimes(n, iteratee2) {
@@ -1222,13 +1222,13 @@
1222
1222
  function baseIsArguments(value) {
1223
1223
  return isObjectLike(value) && baseGetTag(value) == argsTag$3;
1224
1224
  }
1225
- var objectProto$l = Object.prototype;
1226
- var hasOwnProperty$j = objectProto$l.hasOwnProperty;
1227
- var propertyIsEnumerable$1 = objectProto$l.propertyIsEnumerable;
1225
+ var objectProto$m = Object.prototype;
1226
+ var hasOwnProperty$k = objectProto$m.hasOwnProperty;
1227
+ var propertyIsEnumerable$1 = objectProto$m.propertyIsEnumerable;
1228
1228
  var isArguments = baseIsArguments(/* @__PURE__ */ (function() {
1229
1229
  return arguments;
1230
1230
  })()) ? baseIsArguments : function(value) {
1231
- return isObjectLike(value) && hasOwnProperty$j.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
1231
+ return isObjectLike(value) && hasOwnProperty$k.call(value, "callee") && !propertyIsEnumerable$1.call(value, "callee");
1232
1232
  };
1233
1233
  function stubFalse() {
1234
1234
  return false;
@@ -1268,12 +1268,12 @@
1268
1268
  })();
1269
1269
  var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
1270
1270
  var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
1271
- var objectProto$k = Object.prototype;
1272
- var hasOwnProperty$i = objectProto$k.hasOwnProperty;
1271
+ var objectProto$l = Object.prototype;
1272
+ var hasOwnProperty$j = objectProto$l.hasOwnProperty;
1273
1273
  function arrayLikeKeys(value, inherited) {
1274
1274
  var isArr = isArray(value), isArg = !isArr && isArguments(value), isBuff = !isArr && !isArg && isBuffer(value), isType = !isArr && !isArg && !isBuff && isTypedArray(value), skipIndexes = isArr || isArg || isBuff || isType, result2 = skipIndexes ? baseTimes(value.length, String) : [], length = result2.length;
1275
1275
  for (var key in value) {
1276
- if ((inherited || hasOwnProperty$i.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode.
1276
+ if ((inherited || hasOwnProperty$j.call(value, key)) && !(skipIndexes && // Safari 9 has enumerable `arguments.length` in strict mode.
1277
1277
  (key == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
1278
1278
  isBuff && (key == "offset" || key == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
1279
1279
  isType && (key == "buffer" || key == "byteLength" || key == "byteOffset") || // Skip index properties.
@@ -1289,15 +1289,15 @@
1289
1289
  };
1290
1290
  }
1291
1291
  var nativeKeys = overArg(Object.keys, Object);
1292
- var objectProto$j = Object.prototype;
1293
- var hasOwnProperty$h = objectProto$j.hasOwnProperty;
1292
+ var objectProto$k = Object.prototype;
1293
+ var hasOwnProperty$i = objectProto$k.hasOwnProperty;
1294
1294
  function baseKeys(object2) {
1295
1295
  if (!isPrototype(object2)) {
1296
1296
  return nativeKeys(object2);
1297
1297
  }
1298
1298
  var result2 = [];
1299
1299
  for (var key in Object(object2)) {
1300
- if (hasOwnProperty$h.call(object2, key) && key != "constructor") {
1300
+ if (hasOwnProperty$i.call(object2, key) && key != "constructor") {
1301
1301
  result2.push(key);
1302
1302
  }
1303
1303
  }
@@ -1306,15 +1306,15 @@
1306
1306
  function keys$1(object2) {
1307
1307
  return isArrayLike(object2) ? arrayLikeKeys(object2) : baseKeys(object2);
1308
1308
  }
1309
- var objectProto$i = Object.prototype;
1310
- var hasOwnProperty$g = objectProto$i.hasOwnProperty;
1309
+ var objectProto$j = Object.prototype;
1310
+ var hasOwnProperty$h = objectProto$j.hasOwnProperty;
1311
1311
  var assign = createAssigner(function(object2, source) {
1312
1312
  if (isPrototype(source) || isArrayLike(source)) {
1313
1313
  copyObject(source, keys$1(source), object2);
1314
1314
  return;
1315
1315
  }
1316
1316
  for (var key in source) {
1317
- if (hasOwnProperty$g.call(source, key)) {
1317
+ if (hasOwnProperty$h.call(source, key)) {
1318
1318
  assignValue(object2, key, source[key]);
1319
1319
  }
1320
1320
  }
@@ -1328,15 +1328,15 @@
1328
1328
  }
1329
1329
  return result2;
1330
1330
  }
1331
- var objectProto$h = Object.prototype;
1332
- var hasOwnProperty$f = objectProto$h.hasOwnProperty;
1331
+ var objectProto$i = Object.prototype;
1332
+ var hasOwnProperty$g = objectProto$i.hasOwnProperty;
1333
1333
  function baseKeysIn(object2) {
1334
1334
  if (!isObject$1(object2)) {
1335
1335
  return nativeKeysIn(object2);
1336
1336
  }
1337
1337
  var isProto = isPrototype(object2), result2 = [];
1338
1338
  for (var key in object2) {
1339
- if (!(key == "constructor" && (isProto || !hasOwnProperty$f.call(object2, key)))) {
1339
+ if (!(key == "constructor" && (isProto || !hasOwnProperty$g.call(object2, key)))) {
1340
1340
  result2.push(key);
1341
1341
  }
1342
1342
  }
@@ -1376,21 +1376,21 @@
1376
1376
  return result2;
1377
1377
  }
1378
1378
  var HASH_UNDEFINED$2 = "__lodash_hash_undefined__";
1379
- var objectProto$g = Object.prototype;
1380
- var hasOwnProperty$e = objectProto$g.hasOwnProperty;
1379
+ var objectProto$h = Object.prototype;
1380
+ var hasOwnProperty$f = objectProto$h.hasOwnProperty;
1381
1381
  function hashGet(key) {
1382
1382
  var data = this.__data__;
1383
1383
  if (nativeCreate) {
1384
1384
  var result2 = data[key];
1385
1385
  return result2 === HASH_UNDEFINED$2 ? void 0 : result2;
1386
1386
  }
1387
- return hasOwnProperty$e.call(data, key) ? data[key] : void 0;
1387
+ return hasOwnProperty$f.call(data, key) ? data[key] : void 0;
1388
1388
  }
1389
- var objectProto$f = Object.prototype;
1390
- var hasOwnProperty$d = objectProto$f.hasOwnProperty;
1389
+ var objectProto$g = Object.prototype;
1390
+ var hasOwnProperty$e = objectProto$g.hasOwnProperty;
1391
1391
  function hashHas(key) {
1392
1392
  var data = this.__data__;
1393
- return nativeCreate ? data[key] !== void 0 : hasOwnProperty$d.call(data, key);
1393
+ return nativeCreate ? data[key] !== void 0 : hasOwnProperty$e.call(data, key);
1394
1394
  }
1395
1395
  var HASH_UNDEFINED$1 = "__lodash_hash_undefined__";
1396
1396
  function hashSet(key, value) {
@@ -1634,9 +1634,9 @@
1634
1634
  var at = flatRest(baseAt);
1635
1635
  var getPrototype = overArg(Object.getPrototypeOf, Object);
1636
1636
  var objectTag$3 = "[object Object]";
1637
- var funcProto = Function.prototype, objectProto$e = Object.prototype;
1637
+ var funcProto = Function.prototype, objectProto$f = Object.prototype;
1638
1638
  var funcToString = funcProto.toString;
1639
- var hasOwnProperty$c = objectProto$e.hasOwnProperty;
1639
+ var hasOwnProperty$d = objectProto$f.hasOwnProperty;
1640
1640
  var objectCtorString = funcToString.call(Object);
1641
1641
  function isPlainObject(value) {
1642
1642
  if (!isObjectLike(value) || baseGetTag(value) != objectTag$3) {
@@ -1646,7 +1646,7 @@
1646
1646
  if (proto === null) {
1647
1647
  return true;
1648
1648
  }
1649
- var Ctor = hasOwnProperty$c.call(proto, "constructor") && proto.constructor;
1649
+ var Ctor = hasOwnProperty$d.call(proto, "constructor") && proto.constructor;
1650
1650
  return typeof Ctor == "function" && Ctor instanceof Ctor && funcToString.call(Ctor) == objectCtorString;
1651
1651
  }
1652
1652
  var domExcTag = "[object DOMException]", errorTag$2 = "[object Error]";
@@ -2164,8 +2164,8 @@
2164
2164
  function stubArray() {
2165
2165
  return [];
2166
2166
  }
2167
- var objectProto$d = Object.prototype;
2168
- var propertyIsEnumerable = objectProto$d.propertyIsEnumerable;
2167
+ var objectProto$e = Object.prototype;
2168
+ var propertyIsEnumerable = objectProto$e.propertyIsEnumerable;
2169
2169
  var nativeGetSymbols$1 = Object.getOwnPropertySymbols;
2170
2170
  var getSymbols = !nativeGetSymbols$1 ? stubArray : function(object2) {
2171
2171
  if (object2 == null) {
@@ -2229,11 +2229,11 @@
2229
2229
  };
2230
2230
  }
2231
2231
  const getTag$1 = getTag;
2232
- var objectProto$c = Object.prototype;
2233
- var hasOwnProperty$b = objectProto$c.hasOwnProperty;
2232
+ var objectProto$d = Object.prototype;
2233
+ var hasOwnProperty$c = objectProto$d.hasOwnProperty;
2234
2234
  function initCloneArray(array2) {
2235
2235
  var length = array2.length, result2 = new array2.constructor(length);
2236
- if (length && typeof array2[0] == "string" && hasOwnProperty$b.call(array2, "index")) {
2236
+ if (length && typeof array2[0] == "string" && hasOwnProperty$c.call(array2, "index")) {
2237
2237
  result2.index = array2.index;
2238
2238
  result2.input = array2.input;
2239
2239
  }
@@ -2559,8 +2559,8 @@
2559
2559
  return false;
2560
2560
  }
2561
2561
  var COMPARE_PARTIAL_FLAG$3 = 1;
2562
- var objectProto$b = Object.prototype;
2563
- var hasOwnProperty$a = objectProto$b.hasOwnProperty;
2562
+ var objectProto$c = Object.prototype;
2563
+ var hasOwnProperty$b = objectProto$c.hasOwnProperty;
2564
2564
  function equalObjects(object2, other, bitmask, customizer, equalFunc, stack) {
2565
2565
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG$3, objProps = getAllKeys(object2), objLength = objProps.length, othProps = getAllKeys(other), othLength = othProps.length;
2566
2566
  if (objLength != othLength && !isPartial) {
@@ -2569,7 +2569,7 @@
2569
2569
  var index2 = objLength;
2570
2570
  while (index2--) {
2571
2571
  var key = objProps[index2];
2572
- if (!(isPartial ? key in other : hasOwnProperty$a.call(other, key))) {
2572
+ if (!(isPartial ? key in other : hasOwnProperty$b.call(other, key))) {
2573
2573
  return false;
2574
2574
  }
2575
2575
  }
@@ -2606,8 +2606,8 @@
2606
2606
  }
2607
2607
  var COMPARE_PARTIAL_FLAG$2 = 1;
2608
2608
  var argsTag = "[object Arguments]", arrayTag = "[object Array]", objectTag = "[object Object]";
2609
- var objectProto$a = Object.prototype;
2610
- var hasOwnProperty$9 = objectProto$a.hasOwnProperty;
2609
+ var objectProto$b = Object.prototype;
2610
+ var hasOwnProperty$a = objectProto$b.hasOwnProperty;
2611
2611
  function baseIsEqualDeep(object2, other, bitmask, customizer, equalFunc, stack) {
2612
2612
  var objIsArr = isArray(object2), othIsArr = isArray(other), objTag = objIsArr ? arrayTag : getTag$1(object2), othTag = othIsArr ? arrayTag : getTag$1(other);
2613
2613
  objTag = objTag == argsTag ? objectTag : objTag;
@@ -2625,7 +2625,7 @@
2625
2625
  return objIsArr || isTypedArray(object2) ? equalArrays(object2, other, bitmask, customizer, equalFunc, stack) : equalByTag(object2, other, objTag, bitmask, customizer, equalFunc, stack);
2626
2626
  }
2627
2627
  if (!(bitmask & COMPARE_PARTIAL_FLAG$2)) {
2628
- var objIsWrapped = objIsObj && hasOwnProperty$9.call(object2, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty$9.call(other, "__wrapped__");
2628
+ var objIsWrapped = objIsObj && hasOwnProperty$a.call(object2, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty$a.call(other, "__wrapped__");
2629
2629
  if (objIsWrapped || othIsWrapped) {
2630
2630
  var objUnwrapped = objIsWrapped ? object2.value() : object2, othUnwrapped = othIsWrapped ? other.value() : other;
2631
2631
  stack || (stack = new Stack());
@@ -2864,10 +2864,10 @@
2864
2864
  return func2(collection2, setter, baseIteratee(iteratee2, 2), accumulator);
2865
2865
  };
2866
2866
  }
2867
- var objectProto$9 = Object.prototype;
2868
- var hasOwnProperty$8 = objectProto$9.hasOwnProperty;
2867
+ var objectProto$a = Object.prototype;
2868
+ var hasOwnProperty$9 = objectProto$a.hasOwnProperty;
2869
2869
  var countBy = createAggregator(function(result2, value, key) {
2870
- if (hasOwnProperty$8.call(result2, key)) {
2870
+ if (hasOwnProperty$9.call(result2, key)) {
2871
2871
  ++result2[key];
2872
2872
  } else {
2873
2873
  baseAssignValue(result2, key, 1);
@@ -2982,8 +2982,8 @@
2982
2982
  function defaultTo(value, defaultValue) {
2983
2983
  return value == null || value !== value ? defaultValue : value;
2984
2984
  }
2985
- var objectProto$8 = Object.prototype;
2986
- var hasOwnProperty$7 = objectProto$8.hasOwnProperty;
2985
+ var objectProto$9 = Object.prototype;
2986
+ var hasOwnProperty$8 = objectProto$9.hasOwnProperty;
2987
2987
  var defaults$2 = baseRest(function(object2, sources) {
2988
2988
  object2 = Object(object2);
2989
2989
  var index2 = -1;
@@ -3000,7 +3000,7 @@
3000
3000
  while (++propsIndex < propsLength) {
3001
3001
  var key = props[propsIndex];
3002
3002
  var value = object2[key];
3003
- if (value === void 0 || eq(value, objectProto$8[key]) && !hasOwnProperty$7.call(object2, key)) {
3003
+ if (value === void 0 || eq(value, objectProto$9[key]) && !hasOwnProperty$8.call(object2, key)) {
3004
3004
  object2[key] = source[key];
3005
3005
  }
3006
3006
  }
@@ -3534,10 +3534,10 @@
3534
3534
  function functionsIn(object2) {
3535
3535
  return object2 == null ? [] : baseFunctions(object2, keysIn(object2));
3536
3536
  }
3537
- var objectProto$7 = Object.prototype;
3538
- var hasOwnProperty$6 = objectProto$7.hasOwnProperty;
3537
+ var objectProto$8 = Object.prototype;
3538
+ var hasOwnProperty$7 = objectProto$8.hasOwnProperty;
3539
3539
  var groupBy = createAggregator(function(result2, value, key) {
3540
- if (hasOwnProperty$6.call(result2, key)) {
3540
+ if (hasOwnProperty$7.call(result2, key)) {
3541
3541
  result2[key].push(value);
3542
3542
  } else {
3543
3543
  baseAssignValue(result2, key, [value]);
@@ -3559,10 +3559,10 @@
3559
3559
  var gte = createRelationalOperation(function(value, other) {
3560
3560
  return value >= other;
3561
3561
  });
3562
- var objectProto$6 = Object.prototype;
3563
- var hasOwnProperty$5 = objectProto$6.hasOwnProperty;
3562
+ var objectProto$7 = Object.prototype;
3563
+ var hasOwnProperty$6 = objectProto$7.hasOwnProperty;
3564
3564
  function baseHas(object2, key) {
3565
- return object2 != null && hasOwnProperty$5.call(object2, key);
3565
+ return object2 != null && hasOwnProperty$6.call(object2, key);
3566
3566
  }
3567
3567
  function has(object2, path) {
3568
3568
  return object2 != null && hasPath(object2, path, baseHas);
@@ -3688,22 +3688,22 @@
3688
3688
  return baseInverter(object2, setter, toIteratee(iteratee2), {});
3689
3689
  };
3690
3690
  }
3691
- var objectProto$5 = Object.prototype;
3692
- var nativeObjectToString$1 = objectProto$5.toString;
3691
+ var objectProto$6 = Object.prototype;
3692
+ var nativeObjectToString$1 = objectProto$6.toString;
3693
3693
  var invert = createInverter(function(result2, value, key) {
3694
3694
  if (value != null && typeof value.toString != "function") {
3695
3695
  value = nativeObjectToString$1.call(value);
3696
3696
  }
3697
3697
  result2[value] = key;
3698
3698
  }, constant(identity$1));
3699
- var objectProto$4 = Object.prototype;
3700
- var hasOwnProperty$4 = objectProto$4.hasOwnProperty;
3701
- var nativeObjectToString = objectProto$4.toString;
3699
+ var objectProto$5 = Object.prototype;
3700
+ var hasOwnProperty$5 = objectProto$5.hasOwnProperty;
3701
+ var nativeObjectToString = objectProto$5.toString;
3702
3702
  var invertBy = createInverter(function(result2, value, key) {
3703
3703
  if (value != null && typeof value.toString != "function") {
3704
3704
  value = nativeObjectToString.call(value);
3705
3705
  }
3706
- if (hasOwnProperty$4.call(result2, value)) {
3706
+ if (hasOwnProperty$5.call(result2, value)) {
3707
3707
  result2[value].push(key);
3708
3708
  } else {
3709
3709
  result2[value] = [key];
@@ -3746,8 +3746,8 @@
3746
3746
  return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);
3747
3747
  }
3748
3748
  var mapTag$2 = "[object Map]", setTag$2 = "[object Set]";
3749
- var objectProto$3 = Object.prototype;
3750
- var hasOwnProperty$3 = objectProto$3.hasOwnProperty;
3749
+ var objectProto$4 = Object.prototype;
3750
+ var hasOwnProperty$4 = objectProto$4.hasOwnProperty;
3751
3751
  function isEmpty(value) {
3752
3752
  if (value == null) {
3753
3753
  return true;
@@ -3763,7 +3763,7 @@
3763
3763
  return !baseKeys(value).length;
3764
3764
  }
3765
3765
  for (var key in value) {
3766
- if (hasOwnProperty$3.call(value, key)) {
3766
+ if (hasOwnProperty$4.call(value, key)) {
3767
3767
  return false;
3768
3768
  }
3769
3769
  }
@@ -4051,10 +4051,32 @@
4051
4051
  return baseNth(args, n);
4052
4052
  });
4053
4053
  }
4054
+ var objectProto$3 = Object.prototype;
4055
+ var hasOwnProperty$3 = objectProto$3.hasOwnProperty;
4054
4056
  function baseUnset(object2, path) {
4055
4057
  path = castPath(path, object2);
4056
- object2 = parent(object2, path);
4057
- return object2 == null || delete object2[toKey(last(path))];
4058
+ var index2 = -1, length = path.length;
4059
+ if (!length) {
4060
+ return true;
4061
+ }
4062
+ var isRootPrimitive = object2 == null || typeof object2 !== "object" && typeof object2 !== "function";
4063
+ while (++index2 < length) {
4064
+ var key = path[index2];
4065
+ if (typeof key !== "string") {
4066
+ continue;
4067
+ }
4068
+ if (key === "__proto__" && !hasOwnProperty$3.call(object2, "__proto__")) {
4069
+ return false;
4070
+ }
4071
+ if (key === "constructor" && index2 + 1 < length && typeof path[index2 + 1] === "string" && path[index2 + 1] === "prototype") {
4072
+ if (isRootPrimitive && index2 === 0) {
4073
+ continue;
4074
+ }
4075
+ return false;
4076
+ }
4077
+ }
4078
+ var obj = parent(object2, path);
4079
+ return obj == null || delete obj[toKey(last(path))];
4058
4080
  }
4059
4081
  function customOmitClone(value) {
4060
4082
  return isPlainObject(value) ? void 0 : value;
@@ -5827,7 +5849,7 @@
5827
5849
  }
5828
5850
  return result2;
5829
5851
  }
5830
- var VERSION = "4.17.21";
5852
+ var VERSION = "4.17.22";
5831
5853
  var WRAP_BIND_KEY_FLAG = 2;
5832
5854
  var LAZY_FILTER_FLAG = 1, LAZY_WHILE_FLAG = 3;
5833
5855
  var MAX_ARRAY_LENGTH = 4294967295;
@@ -6339,7 +6361,6 @@
6339
6361
  * @description 点击事件
6340
6362
  * @param done 需要手动隐藏Loading
6341
6363
  */
6342
- // eslint-disable-next-line @typescript-eslint/no-empty-function
6343
6364
  click: (event, done = () => {
6344
6365
  }) => event instanceof MouseEvent && isFunction(done)
6345
6366
  };
@@ -6621,226 +6642,13 @@
6621
6642
  "C",
6622
6643
  "V",
6623
6644
  "B",
6624
- "N",
6625
- "M",
6626
- "警",
6627
- "港",
6628
- "澳"
6629
- ];
6630
- const CarNumberDigit = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"];
6631
- function _isSlot$6(s) {
6632
- return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
6633
- }
6634
- const CarNumber = /* @__PURE__ */ vue.defineComponent({
6635
- name: "FaCarNumber",
6636
- props: {
6637
- ...ElementPlus.inputProps,
6638
- /** @description placeholder */
6639
- placeholder: {
6640
- type: String,
6641
- default: "请选择"
6642
- }
6643
- },
6644
- emits: {
6645
- /** @description v-model 回调 */
6646
- "update:modelValue": (value) => isString(value) || isNull(value),
6647
- /** @description 改变 */
6648
- change: (value) => isString(value) || isNull(value)
6649
- },
6650
- setup(props, {
6651
- attrs,
6652
- emit
6653
- }) {
6654
- const state = vue.reactive({
6655
- value: utils.withDefineType(),
6656
- switchLetter: vue.computed(() => {
6657
- if (state.value?.length >= 1) {
6658
- return true;
6659
- }
6660
- return false;
6661
- }),
6662
- disabledButton: vue.computed(() => {
6663
- if (state.value?.length >= 8) {
6664
- return true;
6665
- }
6666
- return false;
6667
- })
6668
- });
6669
- const popoverRef = vue.ref();
6670
- const formContext = vue.inject(ElementPlus.formContextKey, void 0);
6671
- const formItemContext = vue.inject(ElementPlus.formItemContextKey, void 0);
6672
- const handleInputFormatter = (value) => {
6673
- if (value.length === 2) {
6674
- return `${value} ● `;
6675
- } else if (value.length > 2) {
6676
- return `${value.slice(0, 2)} ● ${value.slice(2)}`;
6677
- } else {
6678
- return value;
6679
- }
6680
- };
6681
- const handleSelectCarNumber = (value) => {
6682
- state.value ??= "";
6683
- state.value += value;
6684
- };
6685
- const handleBackClick = () => {
6686
- if (state.value?.length === 0) return;
6687
- state.value = state.value.substring(0, state.value.length - 1);
6688
- };
6689
- const handleConfirmClick = () => {
6690
- let success = false;
6691
- if (state.value.length === 7) {
6692
- success = RegExps.CarNumber.test(state.value);
6693
- } else if (state.value.length === 8) {
6694
- success = RegExps.NewEnergyCarNumber.test(state.value);
6695
- }
6696
- if (success) {
6697
- emit("update:modelValue", state.value);
6698
- emit("change", state.value);
6699
- formItemContext?.prop && formContext?.validateField([formItemContext.prop]);
6700
- } else {
6701
- if (formItemContext?.prop && formContext) {
6702
- emit("update:modelValue", state.value);
6703
- emit("change", state.value);
6704
- formContext.validateField([formItemContext.prop]);
6705
- } else {
6706
- ElementPlus.ElMessage.error("车牌号格式不正确");
6707
- }
6708
- }
6709
- popoverRef.value?.hide();
6710
- };
6711
- const handleClearClick = () => {
6712
- state.value = null;
6713
- emit("update:modelValue", null);
6714
- emit("change", null);
6715
- formItemContext?.prop && formContext?.validateField([formItemContext.prop]);
6716
- };
6717
- vue.watch(() => props.modelValue, (newValue) => {
6718
- state.value = newValue.toString();
6719
- }, {
6720
- immediate: true
6721
- });
6722
- const elInputProps = utils.useProps(props, ElementPlus.inputProps, ["modelValue", "readonly", "formatter"]);
6723
- utils.useRender(() => vue.createVNode(ElementPlus.ElPopover, {
6724
- "ref": popoverRef,
6725
- "width": "auto",
6726
- "popperClass": "fa-car-number__popover",
6727
- "trigger": "click",
6728
- "showArrow": false,
6729
- "showAfter": 0,
6730
- "hideAfter": 0
6731
- }, {
6732
- reference: () => vue.createVNode(ElementPlus.ElInput, vue.mergeProps(elInputProps.value, {
6733
- "class": "fa-car-number__input",
6734
- "modelValue": state.value,
6735
- "onUpdate:modelValue": ($event) => state.value = $event,
6736
- "readonly": true,
6737
- "formatter": handleInputFormatter
6738
- }), null),
6739
- default: () => vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
6740
- "class": ["fa-car-number__popover__area", state.switchLetter ? "fa-car-number__popover__hide" : ""]
6741
- }, [CarNumberArea.map((area) => vue.createVNode(ElementPlus.ElButton, {
6742
- "disabled": state.disabledButton,
6743
- "onClick": () => handleSelectCarNumber(area)
6744
- }, _isSlot$6(area) ? area : {
6745
- default: () => [area]
6746
- }))]), vue.createVNode("div", {
6747
- "class": ["fa-car-number__popover__digit-letter", state.switchLetter ? "" : "fa-car-number__popover__hide"]
6748
- }, [CarNumberDigit.map((digit) => vue.createVNode(ElementPlus.ElButton, {
6749
- "disabled": state.disabledButton,
6750
- "onClick": () => handleSelectCarNumber(digit)
6751
- }, _isSlot$6(digit) ? digit : {
6752
- default: () => [digit]
6753
- })), CarNumberLetter.map((letter) => vue.createVNode(ElementPlus.ElButton, {
6754
- "disabled": state.disabledButton,
6755
- "onClick": () => handleSelectCarNumber(letter)
6756
- }, _isSlot$6(letter) ? letter : {
6757
- default: () => [letter]
6758
- }))]), vue.createVNode("div", {
6759
- "class": "fa-car-number__popover__btn"
6760
- }, [vue.createVNode(ElementPlus.ElButton, {
6761
- "class": "fa-car-number__popover__btn__clear",
6762
- "disabled": state.value === null || state.value.length === 0,
6763
- "onClick": handleClearClick
6764
- }, {
6765
- default: () => [vue.createTextVNode("清除")]
6766
- }), vue.createVNode(ElementPlus.ElButton, {
6767
- "class": "fa-car-number__popover__btn__back",
6768
- "type": "danger",
6769
- "icon": ElementPlusIconsVue.Back,
6770
- "disabled": state.value === null || state.value.length === 0,
6771
- "onClick": handleBackClick
6772
- }, null), vue.createVNode(ElementPlus.ElButton, {
6773
- "class": "fa-car-number__popover__btn__confirm",
6774
- "type": "primary",
6775
- "disabled": state.value === null || state.value.length < 7,
6776
- "onClick": handleConfirmClick
6777
- }, {
6778
- default: () => [vue.createTextVNode("确认")]
6779
- })])])
6780
- }));
6781
- }
6782
- });
6783
- const FaCarNumber = utils.withInstall(CarNumber);
6784
- function _isSlot$5(s) {
6785
- return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
6786
- }
6787
- const faIconProps = {
6788
- /** @description el-icon- 使用 El-icon 的图标;fa-icon 使用 Fast 图标组件库; */
6789
- name: {
6790
- type: String,
6791
- required: true
6792
- },
6793
- /** @description 大小 */
6794
- size: {
6795
- type: [String, Number]
6796
- },
6797
- /** @description 颜色*/
6798
- color: String
6799
- };
6800
- const Icon = /* @__PURE__ */ vue.defineComponent({
6801
- name: "FaIcon",
6802
- props: faIconProps,
6803
- setup(props, {
6804
- attrs
6805
- }) {
6806
- const state = vue.reactive({
6807
- isUrl: vue.computed(() => RegExps.External.test(props.name)),
6808
- style: vue.computed(() => {
6809
- const result2 = {};
6810
- if (props.size) {
6811
- result2.size = utils.addUnit(props.size);
6812
- }
6813
- if (props.color) {
6814
- result2.color = props.color;
6815
- }
6816
- if (state.isUrl) {
6817
- result2.mask = `url(${props.name}) no-repeat 50% 50%`;
6818
- result2["-webkit-mask"] = `url(${props.name}) no-repeat 50% 50%`;
6819
- }
6820
- return result2;
6821
- })
6822
- });
6823
- utils.useRender(() => {
6824
- let _slot, _slot2;
6825
- return props.name.indexOf("el-icon-") === 0 ? vue.createVNode(ElementPlus.ElIcon, vue.mergeProps(attrs, props, {
6826
- "class": ["fa-icon", props.name]
6827
- }), _isSlot$5(_slot = vue.h(vue.resolveComponent(props.name))) ? _slot : {
6828
- default: () => [_slot]
6829
- }) : props.name.indexOf("fa-icon") === 0 ? vue.createVNode(ElementPlus.ElIcon, vue.mergeProps(attrs, props, {
6830
- "class": ["fa-icon", props.name]
6831
- }), _isSlot$5(_slot2 = vue.h(vue.resolveComponent(props.name))) ? _slot2 : {
6832
- default: () => [_slot2]
6833
- }) : state.isUrl ? vue.createVNode("div", vue.mergeProps(attrs, {
6834
- "class": "el-icon fa-icon url-icon",
6835
- "style": state.style
6836
- }), null) : vue.createVNode("i", vue.mergeProps(attrs, {
6837
- "class": ["el-icon fa-icon", props.name],
6838
- "style": state.style
6839
- }), null);
6840
- });
6841
- }
6842
- });
6843
- const FaIcon = utils.withInstall(Icon);
6645
+ "N",
6646
+ "M",
6647
+ "警",
6648
+ "港",
6649
+ "澳"
6650
+ ];
6651
+ const CarNumberDigit = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"];
6844
6652
  function computedEager(fn, options) {
6845
6653
  var _options$flush;
6846
6654
  const result2 = vue.shallowRef();
@@ -9263,7 +9071,7 @@
9263
9071
  error
9264
9072
  };
9265
9073
  }
9266
- const ssrWidthSymbol = Symbol("vueuse-ssr-width");
9074
+ const ssrWidthSymbol = /* @__PURE__ */ Symbol("vueuse-ssr-width");
9267
9075
  // @__NO_SIDE_EFFECTS__
9268
9076
  function useSSRWidth() {
9269
9077
  const ssrWidth = vue.hasInjectionContext() ? /* @__PURE__ */ injectLocal(ssrWidthSymbol, null) : null;
@@ -15137,6 +14945,221 @@
15137
14945
  height
15138
14946
  };
15139
14947
  }
14948
+ function _isSlot$6(s) {
14949
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
14950
+ }
14951
+ const CarNumber = /* @__PURE__ */ vue.defineComponent({
14952
+ name: "FaCarNumber",
14953
+ props: {
14954
+ ...ElementPlus.inputProps,
14955
+ /** @description v-model绑定值 */
14956
+ modelValue: {
14957
+ type: String,
14958
+ default: void 0
14959
+ },
14960
+ /** @description placeholder */
14961
+ placeholder: {
14962
+ type: String,
14963
+ default: "请选择"
14964
+ }
14965
+ },
14966
+ emits: {
14967
+ /** @description v-model 回调 */
14968
+ "update:modelValue": (value) => isString(value) || isNull(value),
14969
+ /** @description 改变 */
14970
+ change: (value) => isString(value) || isNull(value)
14971
+ },
14972
+ setup(props, {
14973
+ attrs,
14974
+ slots,
14975
+ emit,
14976
+ expose
14977
+ }) {
14978
+ const modelValue = /* @__PURE__ */ useVModel(props, "modelValue", emit);
14979
+ const state = vue.reactive({
14980
+ switchLetter: vue.computed(() => {
14981
+ if (modelValue.value?.length >= 1) {
14982
+ return true;
14983
+ }
14984
+ return false;
14985
+ }),
14986
+ disabledButton: vue.computed(() => {
14987
+ if (modelValue.value?.length >= 8) {
14988
+ return true;
14989
+ }
14990
+ return false;
14991
+ })
14992
+ });
14993
+ const popoverRef = vue.ref();
14994
+ const formContext = vue.inject(ElementPlus.formContextKey, void 0);
14995
+ const formItemContext = vue.inject(ElementPlus.formItemContextKey, void 0);
14996
+ const handleInputFormatter = (value) => {
14997
+ if (value.length === 2) {
14998
+ return `${value} ● `;
14999
+ } else if (value.length > 2) {
15000
+ return `${value.slice(0, 2)} ● ${value.slice(2)}`;
15001
+ } else {
15002
+ return value;
15003
+ }
15004
+ };
15005
+ const handleSelectCarNumber = (value) => {
15006
+ modelValue.value ??= "";
15007
+ modelValue.value += value;
15008
+ };
15009
+ const handleBackClick = () => {
15010
+ if (modelValue.value?.length === 0) return;
15011
+ modelValue.value = modelValue.value.substring(0, modelValue.value.length - 1);
15012
+ };
15013
+ const handleConfirmClick = () => {
15014
+ let success = false;
15015
+ if (modelValue.value.length === 7) {
15016
+ success = RegExps.CarNumber.test(modelValue.value);
15017
+ } else if (modelValue.value.length === 8) {
15018
+ success = RegExps.NewEnergyCarNumber.test(modelValue.value);
15019
+ }
15020
+ if (success) {
15021
+ emit("change", modelValue.value);
15022
+ formItemContext?.prop && formContext?.validateField([formItemContext.prop]);
15023
+ } else {
15024
+ if (formItemContext?.prop && formContext) {
15025
+ emit("change", modelValue.value);
15026
+ formContext.validateField([formItemContext.prop]);
15027
+ } else {
15028
+ ElementPlus.ElMessage.error("车牌号格式不正确");
15029
+ }
15030
+ }
15031
+ popoverRef.value?.hide();
15032
+ };
15033
+ const handleClearClick = () => {
15034
+ modelValue.value = null;
15035
+ emit("change", null);
15036
+ formItemContext?.prop && formContext?.validateField([formItemContext.prop]);
15037
+ };
15038
+ const elInputProps = utils.useProps(props, ElementPlus.inputProps, ["modelValue", "readonly", "formatter"]);
15039
+ utils.useRender(() => vue.createVNode(ElementPlus.ElPopover, {
15040
+ "ref": popoverRef,
15041
+ "width": "auto",
15042
+ "popperClass": "fa-car-number__popover",
15043
+ "trigger": "click",
15044
+ "showArrow": false,
15045
+ "showAfter": 0,
15046
+ "hideAfter": 0
15047
+ }, {
15048
+ reference: () => vue.createVNode(ElementPlus.ElInput, vue.mergeProps(elInputProps.value, {
15049
+ "class": "fa-car-number__input",
15050
+ "modelValue": modelValue.value,
15051
+ "onUpdate:modelValue": ($event) => modelValue.value = $event,
15052
+ "readonly": true,
15053
+ "formatter": handleInputFormatter
15054
+ }), null),
15055
+ default: () => vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
15056
+ "class": ["fa-car-number__popover__area", state.switchLetter ? "fa-car-number__popover__hide" : ""]
15057
+ }, [CarNumberArea.map((area) => vue.createVNode(ElementPlus.ElButton, {
15058
+ "disabled": state.disabledButton,
15059
+ "onClick": () => handleSelectCarNumber(area)
15060
+ }, _isSlot$6(area) ? area : {
15061
+ default: () => [area]
15062
+ }))]), vue.createVNode("div", {
15063
+ "class": ["fa-car-number__popover__digit-letter", state.switchLetter ? "" : "fa-car-number__popover__hide"]
15064
+ }, [CarNumberDigit.map((digit) => vue.createVNode(ElementPlus.ElButton, {
15065
+ "disabled": state.disabledButton,
15066
+ "onClick": () => handleSelectCarNumber(digit)
15067
+ }, _isSlot$6(digit) ? digit : {
15068
+ default: () => [digit]
15069
+ })), CarNumberLetter.map((letter) => vue.createVNode(ElementPlus.ElButton, {
15070
+ "disabled": state.disabledButton,
15071
+ "onClick": () => handleSelectCarNumber(letter)
15072
+ }, _isSlot$6(letter) ? letter : {
15073
+ default: () => [letter]
15074
+ }))]), vue.createVNode("div", {
15075
+ "class": "fa-car-number__popover__btn"
15076
+ }, [vue.createVNode(ElementPlus.ElButton, {
15077
+ "class": "fa-car-number__popover__btn__clear",
15078
+ "disabled": modelValue.value === null || modelValue.value.length === 0,
15079
+ "onClick": handleClearClick
15080
+ }, {
15081
+ default: () => [vue.createTextVNode("清除")]
15082
+ }), vue.createVNode(ElementPlus.ElButton, {
15083
+ "class": "fa-car-number__popover__btn__back",
15084
+ "type": "danger",
15085
+ "icon": ElementPlusIconsVue.Back,
15086
+ "disabled": modelValue.value === null || modelValue.value.length === 0,
15087
+ "onClick": handleBackClick
15088
+ }, null), vue.createVNode(ElementPlus.ElButton, {
15089
+ "class": "fa-car-number__popover__btn__confirm",
15090
+ "type": "primary",
15091
+ "disabled": modelValue.value === null || modelValue.value.length < 7,
15092
+ "onClick": handleConfirmClick
15093
+ }, {
15094
+ default: () => [vue.createTextVNode("确认")]
15095
+ })])])
15096
+ }));
15097
+ }
15098
+ });
15099
+ const FaCarNumber = utils.withInstall(CarNumber);
15100
+ function _isSlot$5(s) {
15101
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
15102
+ }
15103
+ const faIconProps = {
15104
+ /** @description el-icon- 使用 El-icon 的图标;fa-icon 使用 Fast 图标组件库; */
15105
+ name: {
15106
+ type: String,
15107
+ required: true
15108
+ },
15109
+ /** @description 大小 */
15110
+ size: {
15111
+ type: [String, Number]
15112
+ },
15113
+ /** @description 颜色*/
15114
+ color: String
15115
+ };
15116
+ const Icon = /* @__PURE__ */ vue.defineComponent({
15117
+ name: "FaIcon",
15118
+ props: faIconProps,
15119
+ setup(props, {
15120
+ attrs,
15121
+ slots,
15122
+ emit,
15123
+ expose
15124
+ }) {
15125
+ const state = vue.reactive({
15126
+ isUrl: vue.computed(() => RegExps.External.test(props.name)),
15127
+ style: vue.computed(() => {
15128
+ const result2 = {};
15129
+ if (props.size) {
15130
+ result2.size = utils.addUnit(props.size);
15131
+ }
15132
+ if (props.color) {
15133
+ result2.color = props.color;
15134
+ }
15135
+ if (state.isUrl) {
15136
+ result2.mask = `url(${props.name}) no-repeat 50% 50%`;
15137
+ result2["-webkit-mask"] = `url(${props.name}) no-repeat 50% 50%`;
15138
+ }
15139
+ return result2;
15140
+ })
15141
+ });
15142
+ utils.useRender(() => {
15143
+ let _slot, _slot2;
15144
+ return props.name.indexOf("el-icon-") === 0 ? vue.createVNode(ElementPlus.ElIcon, vue.mergeProps(attrs, props, {
15145
+ "class": ["fa-icon", props.name]
15146
+ }), _isSlot$5(_slot = vue.h(vue.resolveComponent(props.name))) ? _slot : {
15147
+ default: () => [_slot]
15148
+ }) : props.name.indexOf("fa-icon") === 0 ? vue.createVNode(ElementPlus.ElIcon, vue.mergeProps(attrs, props, {
15149
+ "class": ["fa-icon", props.name]
15150
+ }), _isSlot$5(_slot2 = vue.h(vue.resolveComponent(props.name))) ? _slot2 : {
15151
+ default: () => [_slot2]
15152
+ }) : state.isUrl ? vue.createVNode("div", vue.mergeProps(attrs, {
15153
+ "class": "el-icon fa-icon url-icon",
15154
+ "style": state.style
15155
+ }), null) : vue.createVNode("i", vue.mergeProps(attrs, {
15156
+ "class": ["el-icon fa-icon", props.name],
15157
+ "style": state.style
15158
+ }), null);
15159
+ });
15160
+ }
15161
+ });
15162
+ const FaIcon = utils.withInstall(Icon);
15140
15163
  const ContextMenu = /* @__PURE__ */ vue.defineComponent({
15141
15164
  name: "FaContextMenu",
15142
15165
  props: {
@@ -15151,6 +15174,8 @@
15151
15174
  click: (event, data) => event instanceof MouseEvent && isObject$1(data)
15152
15175
  },
15153
15176
  setup(props, {
15177
+ attrs,
15178
+ slots,
15154
15179
  emit,
15155
15180
  expose
15156
15181
  }) {
@@ -15285,7 +15310,7 @@
15285
15310
  /** @description 隐藏底部操作 */
15286
15311
  hideFooter: Boolean,
15287
15312
  /** @description 撑满高度 */
15288
- fillHeight: Boolean,
15313
+ fullHeight: Boolean,
15289
15314
  /** @description 显示关闭回调 */
15290
15315
  showBeforeClose: Boolean,
15291
15316
  /** @description 打开之后 */
@@ -15401,21 +15426,18 @@
15401
15426
  emit("update:modelValue", newValue);
15402
15427
  });
15403
15428
  const elDialogProps = utils.useProps(props, ElementPlus.dialogProps, ["modelValue", "fullscreen", "showClose", "beforeClose"]);
15404
- utils.useRender(() => vue.createVNode(ElementPlus.ElDialog, vue.mergeProps(elDialogProps.value, {
15429
+ const elDialogEmits = utils.useEmits(ElementPlus.dialogEmits, emit, ["update:modelValue"]);
15430
+ utils.useRender(() => vue.createVNode(ElementPlus.ElDialog, vue.mergeProps(elDialogProps.value, elDialogEmits.value, {
15405
15431
  "ref": dialogRef,
15406
15432
  "class": ["fa-dialog", `fa-dialog-${_globalSize.value}`, {
15407
- "fa-dialog__fill-height": props.fillHeight,
15433
+ "fa-dialog__full-height": props.fullHeight,
15408
15434
  "fa-dialog__fullscreen": state.fullscreen
15409
15435
  }],
15410
15436
  "modelValue": state.visible,
15411
15437
  "onUpdate:modelValue": ($event) => state.visible = $event,
15412
15438
  "fullscreen": state.fullscreen,
15413
15439
  "showClose": false,
15414
- "beforeClose": handleBeforeClose,
15415
- "onOpened": () => emit("opened"),
15416
- "onClosed": () => emit("closed"),
15417
- "onOpenAutoFocus": () => emit("openAutoFocus"),
15418
- "onCloseAutoFocus": () => emit("closeAutoFocus")
15440
+ "beforeClose": handleBeforeClose
15419
15441
  }), {
15420
15442
  header: () => vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
15421
15443
  "class": "fa-dialog__header-title"
@@ -15666,7 +15688,8 @@
15666
15688
  };
15667
15689
  };
15668
15690
  const elDrawerProps = utils.useProps(props, ElementPlus.drawerProps, ["modelValue", "size", "showClose", "beforeClose"]);
15669
- utils.useRender(() => vue.createVNode(ElementPlus.ElDrawer, vue.mergeProps(elDrawerProps.value, {
15691
+ const elDrawerEmits = utils.useEmits(ElementPlus.drawerEmits, emit, ["update:modelValue"]);
15692
+ utils.useRender(() => vue.createVNode(ElementPlus.ElDrawer, vue.mergeProps(elDrawerProps.value, elDrawerEmits.value, {
15670
15693
  "ref": drawerRef,
15671
15694
  "class": ["fa-drawer", `fa-drawer-${_globalSize.value}`, {
15672
15695
  "fa-drawer__fullscreen": state.fullscreen
@@ -15675,11 +15698,7 @@
15675
15698
  "onUpdate:modelValue": ($event) => state.visible = $event,
15676
15699
  "size": state.size,
15677
15700
  "showClose": false,
15678
- "beforeClose": handleBeforeClose,
15679
- "onOpened": () => emit("opened"),
15680
- "onClosed": () => emit("closed"),
15681
- "onOpenAutoFocus": () => emit("openAutoFocus"),
15682
- "onCloseAutoFocus": () => emit("closeAutoFocus")
15701
+ "beforeClose": handleBeforeClose
15683
15702
  }), {
15684
15703
  header: () => vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
15685
15704
  "class": "fa-drawer__header-title"
@@ -15795,6 +15814,7 @@
15795
15814
  },
15796
15815
  slots: utils.makeSlots(),
15797
15816
  setup(props, {
15817
+ attrs,
15798
15818
  slots,
15799
15819
  emit,
15800
15820
  expose
@@ -15936,12 +15956,12 @@
15936
15956
  props: {
15937
15957
  /** @description 偏移 */
15938
15958
  offset: {
15939
- type: Number,
15959
+ type: [String, Number],
15940
15960
  default: 0
15941
15961
  },
15942
15962
  /** @description 占位 */
15943
15963
  span: {
15944
- type: Number,
15964
+ type: [String, Number],
15945
15965
  default: 1
15946
15966
  },
15947
15967
  /** @description 后缀 */
@@ -15999,8 +16019,8 @@
15999
16019
  const cols = vue.inject("cols", vue.ref(5));
16000
16020
  const style = vue.computed(() => {
16001
16021
  const breakPointObk = props[breakPoint.value];
16002
- const span = breakPointObk?.span ?? props.span;
16003
- const offset = breakPointObk?.offset ?? props.offset;
16022
+ const span = breakPointObk?.span ?? (isNumber(props.span) ? props.span : Number(props.span));
16023
+ const offset = breakPointObk?.offset ?? (isNumber(props.offset) ? props.offset : Number(props.offset));
16004
16024
  if (props.suffix) {
16005
16025
  return {
16006
16026
  gridColumnStart: cols.value - span - offset + 1,
@@ -16279,6 +16299,7 @@
16279
16299
  setup(props, {
16280
16300
  attrs,
16281
16301
  slots,
16302
+ emit,
16282
16303
  expose
16283
16304
  }) {
16284
16305
  const _globalSize = ElementPlus.useGlobalSize();
@@ -16345,7 +16366,10 @@
16345
16366
  props: faFormItemTipProps,
16346
16367
  slots: utils.makeSlots(),
16347
16368
  setup(props, {
16348
- slots
16369
+ attrs,
16370
+ slots,
16371
+ emit,
16372
+ expose
16349
16373
  }) {
16350
16374
  utils.useRender(() => vue.createVNode("div", {
16351
16375
  "class": "fa-form-item-tip"
@@ -16392,6 +16416,7 @@
16392
16416
  setup(props, {
16393
16417
  attrs,
16394
16418
  slots,
16419
+ emit,
16395
16420
  expose
16396
16421
  }) {
16397
16422
  const formItemRef = vue.ref();
@@ -16516,7 +16541,7 @@
16516
16541
  state.iconNames = Object.keys(ElementPlusIconsVue__namespace).map((m) => `el-icon-${m}`);
16517
16542
  break;
16518
16543
  case "fastEle":
16519
- state.iconNames = Object.keys(FastElementPlusIconsVue).map((m) => `fa-icon-${m}`);
16544
+ state.iconNames = Object.keys(FastElementPlusIconsVue__namespace).map((m) => `fa-icon-${m}`);
16520
16545
  break;
16521
16546
  case "local":
16522
16547
  state.iconNames = props.customIcons;
@@ -16646,6 +16671,7 @@
16646
16671
  setup(props, {
16647
16672
  attrs,
16648
16673
  slots,
16674
+ emit,
16649
16675
  expose
16650
16676
  }) {
16651
16677
  const state = vue.reactive({
@@ -16724,7 +16750,10 @@
16724
16750
  },
16725
16751
  slots: utils.makeSlots(),
16726
16752
  setup(props, {
16727
- slots
16753
+ attrs,
16754
+ slots,
16755
+ emit,
16756
+ expose
16728
16757
  }) {
16729
16758
  const state = vue.reactive({
16730
16759
  value: vue.computed(() => isUndefined(props.value) ? props.data.value : props.value),
@@ -16744,7 +16773,7 @@
16744
16773
  default: () => [_slot]
16745
16774
  }) : vue.createVNode(ElementPlus.ElOption, {
16746
16775
  "class": {
16747
- "fa-select-page-dropdown__selector__more-detail": props.moreDetail && slots.default
16776
+ "fa-select-dropdown__selector__more-detail": props.moreDetail && slots.default
16748
16777
  },
16749
16778
  "value": state.value,
16750
16779
  "label": state.label,
@@ -16974,6 +17003,11 @@
16974
17003
  };
16975
17004
  const faSelectProps = {
16976
17005
  ...SelectProps,
17006
+ /** @description whether Select is disabled 重载使其支持 ElForm*/
17007
+ disabled: {
17008
+ type: Boolean,
17009
+ default: void 0
17010
+ },
16977
17011
  /** @description displayed text while loading data from server, default is 'Loading' */
16978
17012
  loadingText: {
16979
17013
  type: String,
@@ -17043,6 +17077,7 @@
17043
17077
  initParam: utils.definePropType([String, Number, Object])
17044
17078
  };
17045
17079
  const faSelectEmits = {
17080
+ ...ElementPlus.selectEmits,
17046
17081
  /** @description v-model 回调 */
17047
17082
  "update:modelValue": (value) => isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value),
17048
17083
  /** @description v-model:label 回调 */
@@ -17050,17 +17085,7 @@
17050
17085
  /** @description 数据改变 */
17051
17086
  dataChangeCallBack: (data) => isArray(data),
17052
17087
  /** @description 改变 */
17053
- change: (data, value) => (isObject$1(data) || isArray(data) || isNull(data)) && (isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value)),
17054
- /** @description 下拉框出现/隐藏时触发 */
17055
- visibleChange: (visible) => isBoolean(visible),
17056
- /** @description 多选模式下移除tag时触发 */
17057
- removeTag: (tagValue) => isString(tagValue) || isNumber(tagValue) || isBoolean(tagValue) || isObject$1(tagValue) || isArray(tagValue),
17058
- /** @description 可清空的单选模式下用户点击清空按钮时触发 */
17059
- clear: () => true,
17060
- /** @description 当 input 失去焦点时触发 */
17061
- blur: (event) => event instanceof FocusEvent,
17062
- /** @description 当 input 获得焦点时触发 */
17063
- focus: (event) => event instanceof FocusEvent
17088
+ change: (data, value) => true
17064
17089
  };
17065
17090
  const Select = /* @__PURE__ */ vue.defineComponent({
17066
17091
  name: "FaSelect",
@@ -17073,9 +17098,8 @@
17073
17098
  emit,
17074
17099
  expose
17075
17100
  }) {
17076
- const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit, {
17077
- passive: true
17078
- });
17101
+ const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit);
17102
+ const _globalSize = ElementPlus.useGlobalSize();
17079
17103
  const state = vue.reactive({
17080
17104
  value: utils.withDefineType(),
17081
17105
  loading: false,
@@ -17151,6 +17175,7 @@
17151
17175
  const handleClear = () => {
17152
17176
  state.value = null;
17153
17177
  selectedLabel.value = null;
17178
+ emit("update:modelValue", null);
17154
17179
  emit("clear");
17155
17180
  };
17156
17181
  const handleVisibleChange = async (visible) => {
@@ -17165,7 +17190,7 @@
17165
17190
  }
17166
17191
  }
17167
17192
  }
17168
- emit("visibleChange", visible);
17193
+ emit("visible-change", visible);
17169
17194
  };
17170
17195
  vue.watch(() => props.modelValue, (newValue) => {
17171
17196
  if (state.echo && !isNil(newValue)) {
@@ -17231,10 +17256,18 @@
17231
17256
  });
17232
17257
  });
17233
17258
  const elSelectProps = utils.useProps(props, SelectProps, ["modelValue", "popperClass", "loading"]);
17234
- utils.useRender(() => vue.createVNode(ElementPlus.ElSelect, vue.mergeProps(elSelectProps.value, {
17259
+ const elSelectEmits = utils.useEmits(ElementPlus.selectEmits, emit, ["update:modelValue", "change", "clear", "visible-change"]);
17260
+ const elPopperClass = vue.computed(() => {
17261
+ let localClass = `fa-select-dropdown ${props.popperClass}`;
17262
+ if (props.moreDetail) {
17263
+ localClass += ` fa-select-dropdown__more-detail fa-select-dropdown__more-detail-${_globalSize.value}`;
17264
+ }
17265
+ return localClass;
17266
+ });
17267
+ utils.useRender(() => vue.createVNode(ElementPlus.ElSelect, vue.mergeProps(elSelectProps.value, elSelectEmits.value, {
17235
17268
  "ref": selectRef,
17236
17269
  "class": "fa-select",
17237
- "popperClass": `fa-select-dropdown ${props.popperClass}`,
17270
+ "popperClass": elPopperClass.value,
17238
17271
  "style": {
17239
17272
  width: utils.addUnit(props.width)
17240
17273
  },
@@ -17243,10 +17276,7 @@
17243
17276
  "loading": state.loading,
17244
17277
  "onChange": handleChange,
17245
17278
  "onClear": handleClear,
17246
- "onVisibleChange": handleVisibleChange,
17247
- "onRemoveTag": (tagValue) => emit("removeTag", tagValue),
17248
- "onBlur": (event) => emit("blur", event),
17249
- "onFocus": (event) => emit("focus", event)
17279
+ "onVisibleChange": handleVisibleChange
17250
17280
  }), {
17251
17281
  default: () => state.selectorData.map((item) => vue.createVNode(SelectOption, {
17252
17282
  "data": item,
@@ -17306,6 +17336,11 @@
17306
17336
  const FaSelectOption = utils.withNoopInstall(SelectOption);
17307
17337
  const faSelectPageProps = {
17308
17338
  ...SelectProps,
17339
+ /** @description whether Select is disabled 重载使其支持 ElForm*/
17340
+ disabled: {
17341
+ type: Boolean,
17342
+ default: void 0
17343
+ },
17309
17344
  /** @description displayed text while loading data from server, default is 'Loading' */
17310
17345
  loadingText: {
17311
17346
  type: String,
@@ -17363,6 +17398,7 @@
17363
17398
  initParam: utils.definePropType([String, Number, Object])
17364
17399
  };
17365
17400
  const faSelectPageEmits = {
17401
+ ...ElementPlus.selectEmits,
17366
17402
  /** @description v-model 回调 */
17367
17403
  "update:modelValue": (value) => isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value),
17368
17404
  /** @description v-model:label 回调 */
@@ -17370,17 +17406,7 @@
17370
17406
  /** @description 数据改变 */
17371
17407
  dataChangeCallBack: (data) => isArray(data),
17372
17408
  /** @description 改变 */
17373
- change: (data, value) => (isObject$1(data) || isArray(data) || isNull(data)) && (isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value)),
17374
- /** @description 下拉框出现/隐藏时触发 */
17375
- visibleChange: (visible) => isBoolean(visible),
17376
- /** @description 多选模式下移除tag时触发 */
17377
- removeTag: (tagValue) => isString(tagValue) || isNumber(tagValue) || isBoolean(tagValue) || isObject$1(tagValue) || isArray(tagValue),
17378
- /** @description 可清空的单选模式下用户点击清空按钮时触发 */
17379
- clear: () => true,
17380
- /** @description 当 input 失去焦点时触发 */
17381
- blur: (event) => event instanceof FocusEvent,
17382
- /** @description 当 input 获得焦点时触发 */
17383
- focus: (event) => event instanceof FocusEvent
17409
+ change: (data, value) => true
17384
17410
  };
17385
17411
  const SelectPage = /* @__PURE__ */ vue.defineComponent({
17386
17412
  name: "FaSelectPage",
@@ -17393,9 +17419,7 @@
17393
17419
  emit,
17394
17420
  expose
17395
17421
  }) {
17396
- const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit, {
17397
- passive: true
17398
- });
17422
+ const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit);
17399
17423
  const _globalSize = ElementPlus.useGlobalSize();
17400
17424
  const state = vue.reactive({
17401
17425
  value: utils.withDefineType(),
@@ -17490,6 +17514,7 @@
17490
17514
  state.value = null;
17491
17515
  selectedLabel.value = null;
17492
17516
  state.selectedList = [];
17517
+ emit("update:modelValue", null);
17493
17518
  emit("clear");
17494
17519
  };
17495
17520
  const handleVisibleChange = async (visible) => {
@@ -17504,7 +17529,7 @@
17504
17529
  }
17505
17530
  }
17506
17531
  }
17507
- emit("visibleChange", visible);
17532
+ emit("visible-change", visible);
17508
17533
  };
17509
17534
  vue.watch(() => props.modelValue, (newValue) => {
17510
17535
  if (state.echo && !isNil(newValue)) {
@@ -17552,10 +17577,18 @@
17552
17577
  });
17553
17578
  });
17554
17579
  const elSelectProps = utils.useProps(props, SelectProps, ["modelValue", "popperClass", "loading"]);
17555
- utils.useRender(() => vue.createVNode(ElementPlus.ElSelect, vue.mergeProps(elSelectProps.value, {
17580
+ const elSelectEmits = utils.useEmits(ElementPlus.selectEmits, emit, ["update:modelValue", "change", "clear", "visible-change"]);
17581
+ const elPopperClass = vue.computed(() => {
17582
+ let localClass = `fa-select-page-dropdown fa-select-page-dropdown-${_globalSize.value} ${props.popperClass}`;
17583
+ if (props.moreDetail) {
17584
+ localClass += ` fa-select-dropdown__more-detail fa-select-dropdown__more-detail-${_globalSize.value}`;
17585
+ }
17586
+ return localClass;
17587
+ });
17588
+ utils.useRender(() => vue.createVNode(ElementPlus.ElSelect, vue.mergeProps(elSelectProps.value, elSelectEmits.value, {
17556
17589
  "ref": selectRef,
17557
17590
  "class": "fa-select-page",
17558
- "popperClass": `fa-select-page-dropdown fa-select-page-dropdown-${_globalSize.value} ${props.popperClass}`,
17591
+ "popperClass": elPopperClass.value,
17559
17592
  "style": {
17560
17593
  width: utils.addUnit(props.width)
17561
17594
  },
@@ -17564,10 +17597,7 @@
17564
17597
  "loading": state.loading,
17565
17598
  "onChange": handleChange,
17566
17599
  "onClear": handleClear,
17567
- "onVisibleChange": handleVisibleChange,
17568
- "onRemoveTag": (tagValue) => emit("removeTag", tagValue),
17569
- "onBlur": (event) => emit("blur", event),
17570
- "onFocus": (event) => emit("focus", event)
17600
+ "onVisibleChange": handleVisibleChange
17571
17601
  }), {
17572
17602
  default: () => state.selectorData.map((item) => vue.createVNode(FaSelectOption, {
17573
17603
  "data": item,
@@ -17943,8 +17973,22 @@
17943
17973
  ...ElementPlus.useEmptyValuesProps,
17944
17974
  ...ElementPlus.useAriaProps(["ariaLabel"])
17945
17975
  };
17976
+ const selectV2Emits = {
17977
+ "update:modelValue": (value) => true,
17978
+ change: (val) => true,
17979
+ "remove-tag": (val) => true,
17980
+ "visible-change": (visible) => true,
17981
+ focus: (evt) => true,
17982
+ blur: (evt) => true,
17983
+ clear: () => true
17984
+ };
17946
17985
  const faSelectV2Props = {
17947
17986
  ...SelectV2Props,
17987
+ /** @description whether Select is disabled 重载使其支持 ElForm*/
17988
+ disabled: {
17989
+ type: Boolean,
17990
+ default: void 0
17991
+ },
17948
17992
  /** @description displayed text while loading data from server, default is 'Loading' */
17949
17993
  loadingText: {
17950
17994
  type: String,
@@ -18006,6 +18050,7 @@
18006
18050
  initParam: utils.definePropType([String, Number, Object])
18007
18051
  };
18008
18052
  const faSelectV2Emits = {
18053
+ ...selectV2Emits,
18009
18054
  /** @description v-model 回调 */
18010
18055
  "update:modelValue": (value) => isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value),
18011
18056
  /** @description v-model:label 回调 */
@@ -18013,17 +18058,7 @@
18013
18058
  /** @description 数据改变 */
18014
18059
  dataChangeCallBack: (data) => isArray(data),
18015
18060
  /** @description 改变 */
18016
- change: (data, value) => (isObject$1(data) || isArray(data) || isNull(data)) && (isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value)),
18017
- /** @description 下拉框出现/隐藏时触发 */
18018
- visibleChange: (visible) => isBoolean(visible),
18019
- /** @description 多选模式下移除tag时触发 */
18020
- removeTag: (tagValue) => isString(tagValue) || isNumber(tagValue) || isBoolean(tagValue) || isObject$1(tagValue) || isArray(tagValue),
18021
- /** @description 可清空的单选模式下用户点击清空按钮时触发 */
18022
- clear: () => true,
18023
- /** @description 当 input 失去焦点时触发 */
18024
- blur: (event) => event instanceof FocusEvent,
18025
- /** @description 当 input 获得焦点时触发 */
18026
- focus: (event) => event instanceof FocusEvent
18061
+ change: (data, value) => true
18027
18062
  };
18028
18063
  const SelectV2 = /* @__PURE__ */ vue.defineComponent({
18029
18064
  name: "FaSelectV2",
@@ -18036,9 +18071,7 @@
18036
18071
  emit,
18037
18072
  expose
18038
18073
  }) {
18039
- const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit, {
18040
- passive: true
18041
- });
18074
+ const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit);
18042
18075
  const _globalSize = ElementPlus.useGlobalSize();
18043
18076
  const state = vue.reactive({
18044
18077
  value: utils.withDefineType(),
@@ -18109,6 +18142,7 @@
18109
18142
  const handleClear = () => {
18110
18143
  state.value = null;
18111
18144
  selectedLabel.value = null;
18145
+ emit("update:modelValue", null);
18112
18146
  emit("clear");
18113
18147
  };
18114
18148
  const handleVisibleChange = async (visible) => {
@@ -18123,7 +18157,7 @@
18123
18157
  }
18124
18158
  }
18125
18159
  }
18126
- emit("visibleChange", visible);
18160
+ emit("visible-change", visible);
18127
18161
  };
18128
18162
  vue.watch(() => props.modelValue, (newValue) => {
18129
18163
  if (state.echo && !isNil(newValue)) {
@@ -18189,10 +18223,18 @@
18189
18223
  });
18190
18224
  });
18191
18225
  const elSelectV2Props = utils.useProps(props, SelectV2Props, ["modelValue", "popperClass", "loading", "options", "itemHeight"]);
18192
- utils.useRender(() => vue.createVNode(ElementPlus.ElSelectV2, vue.mergeProps(elSelectV2Props.value, {
18226
+ const elSelectV2Emits = utils.useEmits(faSelectV2Emits, emit, ["update:modelValue", "change", "clear", "visible-change"]);
18227
+ const elPopperClass = vue.computed(() => {
18228
+ let localClass = `fa-select-v2-dropdown ${props.popperClass}`;
18229
+ if (props.moreDetail) {
18230
+ localClass += ` fa-select-dropdown__more-detail fa-select-dropdown__more-detail-${_globalSize.value}`;
18231
+ }
18232
+ return localClass;
18233
+ });
18234
+ utils.useRender(() => vue.createVNode(ElementPlus.ElSelectV2, vue.mergeProps(elSelectV2Props.value, elSelectV2Emits.value, {
18193
18235
  "ref": selectV2Ref,
18194
18236
  "class": "fa-select-v2",
18195
- "popperClass": `${props.moreDetail && `fa-select-v2-dropdown__more-detail`} ${props.popperClass}`,
18237
+ "popperClass": elPopperClass.value,
18196
18238
  "style": {
18197
18239
  width: utils.addUnit(props.width)
18198
18240
  },
@@ -18203,10 +18245,7 @@
18203
18245
  "itemHeight": props.itemHeight + (_globalSize.value === "small" ? 0 : 8),
18204
18246
  "onChange": handleChange,
18205
18247
  "onClear": handleClear,
18206
- "onVisibleChange": handleVisibleChange,
18207
- "onRemoveTag": (tagValue) => emit("removeTag", tagValue),
18208
- "onBlur": (event) => emit("blur", event),
18209
- "onFocus": (event) => emit("focus", event)
18248
+ "onVisibleChange": handleVisibleChange
18210
18249
  }), {
18211
18250
  ...slots.default && {
18212
18251
  default: ({
@@ -18368,9 +18407,7 @@
18368
18407
  setEnumMap(columnEnum, prop, enumMap) {
18369
18408
  if (!columnEnum) return;
18370
18409
  if (isFunction(columnEnum)) {
18371
- columnEnum().then((res) => {
18372
- enumMap.set(prop, res);
18373
- });
18410
+ enumMap.set(prop, columnEnum());
18374
18411
  } else if (isArray(columnEnum)) {
18375
18412
  enumMap.set(prop, columnEnum);
18376
18413
  }
@@ -18395,8 +18432,8 @@
18395
18432
  return flatArr.filter((item) => !item._children?.length);
18396
18433
  }
18397
18434
  };
18398
- const tableStateKey = Symbol("tableState");
18399
- const enumMapKey = Symbol("enumMap");
18435
+ const tableStateKey = /* @__PURE__ */ Symbol("tableState");
18436
+ const enumMapKey = /* @__PURE__ */ Symbol("enumMap");
18400
18437
  const useTable = (props, slots, emit) => {
18401
18438
  const _globalSize = ElementPlus.useGlobalSize();
18402
18439
  const elementRef = vue.ref();
@@ -19013,32 +19050,23 @@
19013
19050
  emit
19014
19051
  }) {
19015
19052
  const _globalSize = ElementPlus.useGlobalSize();
19016
- const tableState = vue.inject(tableStateKey);
19017
- const enumMap = vue.inject(enumMapKey);
19018
- const columnCtx = vue.computed(() => props);
19019
- const renderCellData = ({
19020
- row
19021
- }) => {
19022
- let enumKey = props.prop;
19023
- if (isString(props.enum)) {
19024
- enumKey = props.enum;
19053
+ const tableState = vue.inject(tableStateKey);
19054
+ const enumMap = vue.inject(enumMapKey);
19055
+ const columnCtx = vue.computed(() => props);
19056
+ const getClassName = () => {
19057
+ let className = "";
19058
+ if (props.type === "timeInfo") {
19059
+ className += "fa-table__line-height-normal-column";
19025
19060
  }
19026
- const enumData = enumMap.get(enumKey);
19027
- if (enumData) {
19028
- return tableUtil.filterEnum(tableUtil.handleRowAccordingToProp(row, props.prop), enumData);
19029
- } else {
19030
- return tableUtil.formatValue(tableUtil.handleRowAccordingToProp(row, props.prop));
19061
+ if (props.type === "date" || props.type === "time" || props.type === "dateTime") {
19062
+ if (props.dateFix) {
19063
+ className += "fa-table__line-height-normal-column";
19064
+ }
19031
19065
  }
19032
- };
19033
- const getTagType = ({
19034
- row
19035
- }) => {
19036
- let enumKey = props.prop;
19037
- if (isString(props.enum)) {
19038
- enumKey = props.enum;
19066
+ if (props.className) {
19067
+ return `${className} ${props.className}`;
19039
19068
  }
19040
- const enumData = enumMap.get(enumKey);
19041
- return tableUtil.filterEnum(tableUtil.handleRowAccordingToProp(row, props.prop), enumData, null, "tag");
19069
+ return className ? className : void 0;
19042
19070
  };
19043
19071
  const getWidth = (defAttr) => {
19044
19072
  if (props.autoWidth) {
@@ -19064,6 +19092,15 @@
19064
19092
  return el;
19065
19093
  }
19066
19094
  };
19095
+ const autoWidthRender = (el) => {
19096
+ if (props.autoWidth) {
19097
+ return vue.createVNode("div", {
19098
+ "class": ["fa-table__auto-width-column__cell", `__fa-table__auto-width-column__cell__${props.prop}`]
19099
+ }, [el]);
19100
+ } else {
19101
+ return el;
19102
+ }
19103
+ };
19067
19104
  const headerRender = ({
19068
19105
  column,
19069
19106
  $index
@@ -19084,39 +19121,51 @@
19084
19121
  return autoWidthHeaderRender(vue.createVNode("span", null, [props.label]));
19085
19122
  }
19086
19123
  };
19087
- const autoWidthRender = (el) => {
19088
- if (props.autoWidth) {
19089
- return vue.createVNode("div", {
19090
- "class": ["fa-table__auto-width-column__cell", `__fa-table__auto-width-column__cell__${props.prop}`]
19091
- }, [el]);
19092
- } else {
19093
- return el;
19094
- }
19095
- };
19096
- const handleCopyClick = async (value) => {
19097
- try {
19098
- await utils.stringUtil.copy(String(value));
19099
- ElementPlus.ElMessage({
19100
- type: "success",
19101
- message: "复制成功"
19102
- });
19103
- } catch (error) {
19104
- utils.consoleError("FaTableColumn", error);
19105
- ElementPlus.ElMessage({
19106
- type: "error",
19107
- message: "复制失败"
19108
- });
19109
- }
19110
- };
19111
19124
  const copyRender = (value, copy) => {
19112
19125
  return (props.copy || copy) && value && vue.createVNode(ElementPlus.ElIcon, {
19113
19126
  "class": "fa__copy-icon",
19114
19127
  "title": "复制",
19115
- "onClick": () => handleCopyClick(value)
19128
+ "onClick": async () => {
19129
+ try {
19130
+ await utils.stringUtil.copy(String(value));
19131
+ ElementPlus.ElMessage({
19132
+ type: "success",
19133
+ message: "复制成功"
19134
+ });
19135
+ } catch (error) {
19136
+ utils.consoleError("FaTableColumn", error);
19137
+ ElementPlus.ElMessage({
19138
+ type: "error",
19139
+ message: "复制失败"
19140
+ });
19141
+ }
19142
+ }
19116
19143
  }, {
19117
19144
  default: () => [vue.createVNode(ElementPlusIconsVue.CopyDocument, null, null)]
19118
19145
  });
19119
19146
  };
19147
+ const renderCellData = ({
19148
+ row
19149
+ }) => {
19150
+ const cellValue = tableUtil.handleRowAccordingToProp(row, props.prop);
19151
+ let enumKey = props.prop;
19152
+ let enumData;
19153
+ if (isString(props.enum)) {
19154
+ enumKey = props.enum;
19155
+ enumData = enumMap.get(enumKey);
19156
+ } else if (isArray(props.enum)) {
19157
+ enumData = props.enum;
19158
+ } else if (isFunction(props.enum)) {
19159
+ enumData = props.enum({
19160
+ row
19161
+ });
19162
+ }
19163
+ if (enumData) {
19164
+ return tableUtil.filterEnum(cellValue, enumData);
19165
+ } else {
19166
+ return tableUtil.formatValue(cellValue);
19167
+ }
19168
+ };
19120
19169
  const formatterRender = (row, column, cellValue, index2) => {
19121
19170
  if (column.formatter) {
19122
19171
  return column.formatter(row, column, cellValue, index2);
@@ -19124,147 +19173,170 @@
19124
19173
  return cellValue;
19125
19174
  }
19126
19175
  };
19176
+ const timeInfoRender = (row, column, $index) => {
19177
+ let _slot;
19178
+ const userName = row[props.timeInfoField?.userName ?? "createdUserName"];
19179
+ const time = row[props.timeInfoField?.time ?? "createdTime"];
19180
+ return vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
19181
+ "style": "white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",
19182
+ "title": time
19183
+ }, [userName && vue.createVNode("span", {
19184
+ "style": "margin-right: 5px;"
19185
+ }, [userName]), vue.createVNode("span", null, [time])]), time && vue.createVNode(ElementPlus.ElTag, {
19186
+ "type": "info",
19187
+ "round": true,
19188
+ "effect": "light",
19189
+ "size": "small"
19190
+ }, _isSlot$2(_slot = utils.dateUtil.dateTimeFix(String(time))) ? _slot : {
19191
+ default: () => [_slot]
19192
+ })]);
19193
+ };
19194
+ const tagRender = (row, column, $index) => {
19195
+ const renderValue = formatterRender(row, column, renderCellData({
19196
+ row
19197
+ }), $index);
19198
+ let enumKey = props.prop;
19199
+ if (isString(props.enum)) {
19200
+ enumKey = props.enum;
19201
+ }
19202
+ const enumData = enumMap.get(enumKey);
19203
+ const type = tableUtil.filterEnum(tableUtil.handleRowAccordingToProp(row, props.prop), enumData, null, "tag");
19204
+ return vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue ? vue.createVNode(ElementPlus.ElTag, {
19205
+ "type": type
19206
+ }, _isSlot$2(renderValue) ? renderValue : {
19207
+ default: () => [renderValue]
19208
+ }) : null]);
19209
+ };
19210
+ const dateRender = (row, column, $index) => {
19211
+ let _slot2;
19212
+ let dateFormat;
19213
+ switch (props.type) {
19214
+ case "date":
19215
+ dateFormat = "YYYY-MM-DD";
19216
+ break;
19217
+ case "time":
19218
+ dateFormat = "HH:mm:ss";
19219
+ break;
19220
+ case "dateTime":
19221
+ dateFormat = "YYYY-MM-DD HH:mm:ss";
19222
+ break;
19223
+ }
19224
+ const renderValue = row[props.prop] ? formatterRender(row, column, ElementPlus.dayjs(row[props.prop]).format(props.dateFormat ?? dateFormat), $index) : null;
19225
+ return vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue, props.dateFix && renderValue && vue.createVNode(vue.Fragment, null, [vue.createVNode("br", null, null), vue.createVNode(ElementPlus.ElTag, {
19226
+ "type": "info",
19227
+ "round": true,
19228
+ "effect": "light",
19229
+ "size": "small"
19230
+ }, _isSlot$2(_slot2 = utils.dateUtil.dateTimeFix(String(renderValue))) ? _slot2 : {
19231
+ default: () => [_slot2]
19232
+ })])]);
19233
+ };
19234
+ const numberRender = (row, column, $index) => {
19235
+ const renderValue = row[props.prop];
19236
+ if (!renderValue || !isNumber(renderValue)) {
19237
+ return formatterRender(row, column, renderValue, $index);
19238
+ }
19239
+ let useGrouping = false;
19240
+ let maximumFractionDigits;
19241
+ switch (props.type) {
19242
+ case "d2":
19243
+ maximumFractionDigits = 2;
19244
+ break;
19245
+ case "d4":
19246
+ maximumFractionDigits = 4;
19247
+ break;
19248
+ case "d6":
19249
+ maximumFractionDigits = 6;
19250
+ break;
19251
+ case "gd2":
19252
+ maximumFractionDigits = 2;
19253
+ useGrouping = true;
19254
+ break;
19255
+ case "gd4":
19256
+ maximumFractionDigits = 4;
19257
+ useGrouping = true;
19258
+ break;
19259
+ case "gd6":
19260
+ maximumFractionDigits = 6;
19261
+ useGrouping = true;
19262
+ break;
19263
+ }
19264
+ return formatterRender(row, column, renderValue.toLocaleString("zh-CN", {
19265
+ minimumFractionDigits: 2,
19266
+ maximumFractionDigits,
19267
+ useGrouping
19268
+ }), $index);
19269
+ };
19270
+ const linkRender = (row, column, $index) => {
19271
+ const renderValue = formatterRender(row, column, row[props.prop], $index);
19272
+ return autoWidthRender(vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue && vue.createVNode(ElementPlus.ElText, {
19273
+ "class": "el-link is-hover-underline fa-table__link-column__text",
19274
+ "onClick": () => {
19275
+ if (props.dataDeleteField && row[props.dataDeleteField] === true) return;
19276
+ if (props.click) {
19277
+ props.click({
19278
+ row,
19279
+ $index
19280
+ });
19281
+ } else {
19282
+ emit("customCellClick", props.clickEmit, {
19283
+ row,
19284
+ column: columnCtx.value,
19285
+ $index
19286
+ });
19287
+ }
19288
+ }
19289
+ }, _isSlot$2(renderValue) ? renderValue : {
19290
+ default: () => [renderValue]
19291
+ })]));
19292
+ };
19127
19293
  const defaultRender = ({
19128
19294
  row,
19129
19295
  column,
19130
19296
  $index
19131
19297
  }) => {
19132
19298
  if (props.type === "timeInfo") {
19133
- let _slot;
19134
- const userName = row[props.timeInfoField?.userName ?? "createdUserName"];
19135
- const time = row[props.timeInfoField?.time ?? "createdTime"];
19136
- return vue.createVNode(vue.Fragment, null, [vue.createVNode("div", {
19137
- "style": "white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",
19138
- "title": time
19139
- }, [userName && vue.createVNode("span", {
19140
- "style": "margin-right: 5px;"
19141
- }, [userName]), vue.createVNode("span", null, [time])]), time && vue.createVNode(ElementPlus.ElTag, {
19142
- "type": "info",
19143
- "round": true,
19144
- "effect": "light",
19145
- "size": "small"
19146
- }, _isSlot$2(_slot = utils.dateUtil.dateTimeFix(String(time))) ? _slot : {
19147
- default: () => [_slot]
19148
- })]);
19149
- } else if (props.tag) {
19150
- const renderValue = formatterRender(row, column, renderCellData({
19151
- row
19152
- }), $index);
19153
- return vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue ? vue.createVNode(ElementPlus.ElTag, {
19154
- "type": getTagType({
19155
- row
19156
- })
19157
- }, _isSlot$2(renderValue) ? renderValue : {
19158
- default: () => [renderValue]
19159
- }) : null]);
19160
- } else if (props.type === "date" || props.type === "time" || props.type === "dateTime") {
19161
- let _slot2;
19162
- let dateFormat;
19163
- switch (props.type) {
19164
- case "date":
19165
- dateFormat = "YYYY-MM-DD";
19166
- break;
19167
- case "time":
19168
- dateFormat = "HH:mm:ss";
19169
- break;
19170
- case "dateTime":
19171
- dateFormat = "YYYY-MM-DD HH:mm:ss";
19172
- break;
19173
- }
19174
- const renderValue = row[props.prop] ? formatterRender(row, column, ElementPlus.dayjs(row[props.prop]).format(props.dateFormat ?? dateFormat), $index) : null;
19175
- return vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue, props.dateFix && renderValue && vue.createVNode(vue.Fragment, null, [vue.createVNode("br", null, null), vue.createVNode(ElementPlus.ElTag, {
19176
- "type": "info",
19177
- "round": true,
19178
- "effect": "light",
19179
- "size": "small"
19180
- }, _isSlot$2(_slot2 = utils.dateUtil.dateTimeFix(String(renderValue))) ? _slot2 : {
19181
- default: () => [_slot2]
19182
- })])]);
19183
- } else if (props.type === "d2" || props.type === "d4" || props.type === "d6" || props.type === "gd2" || props.type === "gd4" || props.type === "gd6") {
19184
- const renderValue = row[props.prop];
19185
- if (renderValue) {
19186
- if (isNumber(renderValue)) {
19187
- let useGrouping = false;
19188
- let maximumFractionDigits;
19189
- switch (props.type) {
19190
- case "d2":
19191
- maximumFractionDigits = 2;
19192
- break;
19193
- case "d4":
19194
- maximumFractionDigits = 4;
19195
- break;
19196
- case "d6":
19197
- maximumFractionDigits = 6;
19198
- break;
19199
- case "gd2":
19200
- maximumFractionDigits = 2;
19201
- useGrouping = true;
19202
- break;
19203
- case "gd4":
19204
- maximumFractionDigits = 4;
19205
- useGrouping = true;
19206
- break;
19207
- case "gd6":
19208
- maximumFractionDigits = 6;
19209
- useGrouping = true;
19210
- break;
19211
- }
19212
- return renderValue.toLocaleString("zh-CN", {
19213
- minimumFractionDigits: 2,
19214
- maximumFractionDigits,
19215
- useGrouping
19216
- });
19217
- }
19218
- }
19219
- return renderValue;
19220
- } else if (props.link) {
19221
- const renderValue = formatterRender(row, column, row[props.prop], $index);
19222
- return autoWidthRender(vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue && vue.createVNode(ElementPlus.ElText, {
19223
- "class": "el-link is-hover-underline fa-table__link-column__text",
19224
- "onClick": () => {
19225
- if (props.dataDeleteField && row[props.dataDeleteField] === true) return;
19226
- if (props.click) {
19227
- props.click({
19228
- row,
19229
- $index
19230
- });
19231
- } else {
19232
- emit("customCellClick", props.clickEmit, {
19233
- row,
19234
- column: columnCtx.value,
19235
- $index
19236
- });
19237
- }
19238
- }
19239
- }, _isSlot$2(renderValue) ? renderValue : {
19240
- default: () => [renderValue]
19241
- })]));
19242
- } else if (props.render) {
19299
+ return timeInfoRender(row, column, $index);
19300
+ }
19301
+ if (props.tag) {
19302
+ return tagRender(row, column, $index);
19303
+ }
19304
+ if (props.type === "date" || props.type === "time" || props.type === "dateTime") {
19305
+ return dateRender(row, column, $index);
19306
+ }
19307
+ if (props.type === "d2" || props.type === "d4" || props.type === "d6" || props.type === "gd2" || props.type === "gd4" || props.type === "gd6") {
19308
+ return numberRender(row, column, $index);
19309
+ }
19310
+ if (props.link) {
19311
+ return linkRender(row, column, $index);
19312
+ }
19313
+ if (props.render) {
19243
19314
  return autoWidthRender(props.render({
19244
19315
  row,
19245
19316
  column: columnCtx.value,
19246
19317
  $index,
19247
19318
  ...getTableDefaultSlots(tableState)
19248
19319
  }));
19249
- } else if (props.slot) {
19320
+ }
19321
+ if (props.slot) {
19250
19322
  return autoWidthRender(slots[props.slot] && slots[props.slot]({
19251
19323
  row,
19252
19324
  column: columnCtx.value,
19253
19325
  $index,
19254
19326
  ...getTableDefaultSlots(tableState)
19255
19327
  }));
19256
- } else {
19257
- const renderValue = formatterRender(row, column, row[props.prop], $index);
19258
- return autoWidthRender(vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue]));
19259
19328
  }
19329
+ const renderValue = formatterRender(row, column, row[props.prop], $index);
19330
+ return autoWidthRender(vue.createVNode(vue.Fragment, null, [copyRender(renderValue), renderValue]));
19260
19331
  };
19261
19332
  let elTableColumnProps = utils.useProps(props, tableColumnProps, ["type", "width", "minWidth", "sortable", "sortOrders", "resizable", "showOverflowTooltip"]);
19262
19333
  vue.watch(() => props, () => {
19263
- elTableColumnProps = utils.useProps(props, tableColumnProps, ["type", "minWidth", "sortable", "sortOrders", "resizable", "showOverflowTooltip"]);
19334
+ elTableColumnProps = utils.useProps(props, tableColumnProps, ["type", "className", "minWidth", "sortable", "sortOrders", "resizable", "showOverflowTooltip"]);
19264
19335
  });
19265
19336
  utils.useRender(() => vue.createVNode(vue.Fragment, null, [
19266
19337
  // 如果有配置多级表头的数据,则递归该组件
19267
19338
  props._children?.length ? vue.createVNode(ElementPlus.ElTableColumn, vue.mergeProps(elTableColumnProps.value, {
19339
+ "className": getClassName(),
19268
19340
  "minWidth": getWidth("auto"),
19269
19341
  "sortable": props.sortable ? "custom" : false,
19270
19342
  "sortOrders": props.sortOrders ?? ["descending", "ascending", null],
@@ -19322,6 +19394,7 @@
19322
19394
  }) : (
19323
19395
  // 其他正常的列
19324
19396
  vue.createVNode(ElementPlus.ElTableColumn, vue.mergeProps(elTableColumnProps.value, {
19397
+ "className": getClassName(),
19325
19398
  "minWidth": getWidth("auto"),
19326
19399
  "sortable": props.sortable ? "custom" : false,
19327
19400
  "sortOrders": props.sortOrders ?? ["descending", "ascending", null],
@@ -22286,7 +22359,7 @@
22286
22359
  "onConfirmClick": handleConfirmClick,
22287
22360
  "showFullscreen": false,
22288
22361
  "confirmButtonText": state.change ? "保存更改" : "确认",
22289
- "fillHeight": true
22362
+ "fullHeight": true
22290
22363
  }, {
22291
22364
  header: () => vue.createVNode(vue.Fragment, null, [vue.createTextVNode("列表配置(留空则恢复默认配置)"), vue.createVNode(vue.resolveComponent("el-text"), {
22292
22365
  "type": "info"
@@ -22368,7 +22441,9 @@
22368
22441
  "placeholder": "请输入宽度"
22369
22442
  }, autoWidthDisabled(row), pureSearchDisabled(row), {
22370
22443
  "onChange": handleColumnChange
22371
- }), null)
22444
+ }), {
22445
+ suffix: () => vue.createVNode("span", null, [vue.createTextVNode("px")])
22446
+ })
22372
22447
  }), vue.createVNode(ElementPlus.ElTableColumn, {
22373
22448
  "label": "小的宽度",
22374
22449
  "width": 200
@@ -22386,7 +22461,9 @@
22386
22461
  "placeholder": "请输入小的宽度"
22387
22462
  }, autoWidthDisabled(row), pureSearchDisabled(row), {
22388
22463
  "onChange": handleColumnChange
22389
- }), null)
22464
+ }), {
22465
+ suffix: () => vue.createVNode("span", null, [vue.createTextVNode("px")])
22466
+ })
22390
22467
  }), vue.createVNode(ElementPlus.ElTableColumn, {
22391
22468
  "label": "顺序",
22392
22469
  "width": 100
@@ -22394,6 +22471,7 @@
22394
22471
  default: ({
22395
22472
  row
22396
22473
  }) => vue.createVNode(ElementPlus.ElInputNumber, vue.mergeProps({
22474
+ "style": "width: auto;",
22397
22475
  "modelValue": row.order,
22398
22476
  "onUpdate:modelValue": ($event) => row.order = $event,
22399
22477
  "min": 1,
@@ -23435,14 +23513,14 @@
23435
23513
  }
23436
23514
  state.searchParam.sortList = [.../* @__PURE__ */ new Set([...props.initParam?.sortList ?? [], ...state.searchParam?.sortList ?? []])];
23437
23515
  const orgColumn = state.orgColumns.find((f) => f.prop === prop);
23438
- const enField = orgColumn.sortableField ?? orgColumn.prop ?? orgColumn.property;
23516
+ const enField = orgColumn?.sortableField ?? orgColumn?.prop ?? column.property;
23439
23517
  const fieldIndex = state.searchParam.sortList.findIndex((f) => f.enField === enField);
23440
23518
  if (!column.multiOrder) {
23441
23519
  state.searchParam.sortList.splice(fieldIndex, 1);
23442
23520
  } else if (fieldIndex === -1) {
23443
23521
  state.searchParam.sortList.push({
23444
23522
  enField,
23445
- cnField: orgColumn.label,
23523
+ cnField: column.label,
23446
23524
  mode: column.multiOrder
23447
23525
  });
23448
23526
  } else {
@@ -23493,22 +23571,6 @@
23493
23571
  }
23494
23572
  }
23495
23573
  }
23496
- if (columnInfo?.type === "timeInfo") {
23497
- if (localCellClassName) {
23498
- localCellClassName += " fa-table__line-height-normal-column";
23499
- } else {
23500
- localCellClassName = "fa-table__line-height-normal-column";
23501
- }
23502
- }
23503
- if (columnInfo?.type === "date" || columnInfo?.type === "time" || columnInfo?.type === "dateTime") {
23504
- if (columnInfo?.dateFix) {
23505
- if (localCellClassName) {
23506
- localCellClassName += " fa-table__line-height-normal-column";
23507
- } else {
23508
- localCellClassName = "fa-table__line-height-normal-column";
23509
- }
23510
- }
23511
- }
23512
23574
  if (props.cellClassName) {
23513
23575
  let cellClassName = null;
23514
23576
  if (isString(props.cellClassName)) {
@@ -24076,6 +24138,11 @@
24076
24138
  };
24077
24139
  const faTreeProps = {
24078
24140
  ...treeProps,
24141
+ /** @description whether Select is disabled 重载使其支持 ElForm*/
24142
+ disabled: {
24143
+ type: Boolean,
24144
+ default: void 0
24145
+ },
24079
24146
  /** 每个树节点用来作为唯一标识的属性,整棵树应该是唯一的 */
24080
24147
  nodeKey: {
24081
24148
  type: String,
@@ -24138,40 +24205,15 @@
24138
24205
  initParam: utils.definePropType([String, Number, Object])
24139
24206
  };
24140
24207
  const faTreeEmits = {
24208
+ ...ElementPlus.treeEmits,
24141
24209
  /** @description v-model 回调 */
24142
24210
  "update:modelValue": (value) => isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isNull(value),
24143
24211
  /** @description v-model:label 回调 */
24144
24212
  "update:label": (value) => isString(value) || isNull(value),
24145
24213
  /** @description 数据改变 */
24146
- dataChangeCallBack: (data, orgData) => isArray(data) && isArray(orgData),
24214
+ dataChangeCallBack: (data) => isArray(data),
24147
24215
  /** @description 改变 */
24148
- change: (data, node, instance, event) => isObject$1(data) && isObject$1(node) && isObject$1(instance) && event instanceof MouseEvent,
24149
- /** @description 当节点被点击的时候触发 */
24150
- nodeClick: (data, node, instance, event) => isObject$1(data) && isObject$1(node) && isObject$1(instance) && event instanceof MouseEvent,
24151
- /** @description 当某一节点被鼠标右键点击时会触发该事件 */
24152
- nodeContextmenu: (event, data, node, instance) => event instanceof Event && isObject$1(data) && isObject$1(node) && isObject$1(instance),
24153
- /** @description 当复选框被点击的时候触发 */
24154
- checkChange: (data, checked, indeterminate) => isObject$1(data) && isBoolean(checked) && isBoolean(indeterminate),
24155
- /** @description 点击节点复选框之后触发 */
24156
- check: (data, node) => isObject$1(data) && isObject$1(node),
24157
- /** @description 当前选中节点变化时触发的事件 */
24158
- currentChange: (data, node) => isObject$1(data) && isObject$1(node),
24159
- /** @description 节点被展开时触发的事件 */
24160
- nodeExpand: (data, node, instance) => isObject$1(data) && isObject$1(node) && isObject$1(instance),
24161
- /** @description 节点被关闭时触发的事件 */
24162
- nodeCollapse: (data, node, instance) => isObject$1(data) && isObject$1(node) && isObject$1(instance),
24163
- /** @description 节点开始拖拽时触发的事件 */
24164
- nodeDragStart: (node, event) => isObject$1(node) && event instanceof DragEvent,
24165
- /** @description 拖拽进入其他节点时触发的事件 */
24166
- nodeDragEnter: (node, enterNode, event) => isObject$1(node) && isObject$1(enterNode) && event instanceof DragEvent,
24167
- /** @description 拖拽离开某个节点时触发的事件 */
24168
- nodeDragLeave: (node, leaveNode, event) => isObject$1(node) && isObject$1(leaveNode) && event instanceof DragEvent,
24169
- /** @description 在拖拽节点时触发的事件(类似浏览器的 mouseover 事件) */
24170
- nodeDragOver: (node, dropNode, event) => isObject$1(node) && isObject$1(dropNode) && event instanceof DragEvent,
24171
- /** @description 拖拽结束时(可能未成功)触发的事件 */
24172
- nodeDragEnd: (node, dropNode, dropType, event) => isObject$1(node) && isObject$1(dropNode) && isString(dropType) && event instanceof DragEvent,
24173
- /** @description 拖拽成功完成时触发的事件 */
24174
- nodeDrop: (node, dropNode, dropType, event) => isObject$1(node) && isObject$1(dropNode) && isString(dropType) && event instanceof DragEvent
24216
+ change: (data, node, instance, event) => true
24175
24217
  };
24176
24218
  const Tree = /* @__PURE__ */ vue.defineComponent({
24177
24219
  name: "FaTree",
@@ -24184,9 +24226,7 @@
24184
24226
  emit,
24185
24227
  expose
24186
24228
  }) {
24187
- const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit, {
24188
- passive: true
24189
- });
24229
+ const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit);
24190
24230
  const _globalSize = ElementPlus.useGlobalSize();
24191
24231
  const state = vue.reactive({
24192
24232
  value: utils.withDefineType(),
@@ -24194,9 +24234,9 @@
24194
24234
  searchValue: utils.withDefineType(),
24195
24235
  orgTreeData: utils.withDefineType([]),
24196
24236
  treeData: utils.withDefineType([]),
24197
- hamburger: false,
24237
+ hamburger: props.hamburger || false,
24198
24238
  width: vue.computed(() => {
24199
- if (props.hamburger || state.hamburger) {
24239
+ if (state.hamburger) {
24200
24240
  return "130px";
24201
24241
  } else {
24202
24242
  const width = utils.addUnit(props.width);
@@ -24210,21 +24250,12 @@
24210
24250
  });
24211
24251
  const fold = vue.computed(() => [...state.orgTreeData].filter((f) => f[props.props.children]?.length > 0).length === 0);
24212
24252
  const treeRef = vue.ref();
24213
- const setTreeData = (treeData) => {
24214
- if (!props.hideAll) {
24215
- treeData.unshift({
24216
- [props.nodeKey]: props.allValue,
24217
- label: "全部",
24218
- all: true
24219
- });
24220
- }
24221
- state.treeData = treeData;
24222
- };
24223
24253
  const loadData = async () => {
24224
24254
  let curSelectedData;
24225
24255
  if (props.nodeKey) {
24226
24256
  curSelectedData = treeRef.value.getCurrentKey();
24227
24257
  }
24258
+ let treeData = [];
24228
24259
  if (props.requestApi) {
24229
24260
  state.loading = true;
24230
24261
  const params = {
@@ -24232,21 +24263,26 @@
24232
24263
  searchValue: state.searchValue
24233
24264
  };
24234
24265
  try {
24235
- const resData = await props.requestApi(params);
24236
- state.orgTreeData = resData;
24237
- setTreeData(resData);
24266
+ treeData = await props.requestApi(params);
24238
24267
  } catch (error) {
24239
24268
  utils.consoleError("FaTree", error);
24240
- state.orgTreeData = [];
24241
- setTreeData([]);
24242
- emit("dataChangeCallBack", state.treeData, state.orgTreeData);
24243
24269
  } finally {
24244
24270
  state.loading = false;
24245
24271
  }
24246
24272
  } else {
24247
- state.orgTreeData = props.data;
24248
- setTreeData(props.data);
24273
+ treeData = props.data;
24249
24274
  }
24275
+ if (!props.hideAll) {
24276
+ treeData.unshift({
24277
+ [props.nodeKey]: props.allValue,
24278
+ label: "全部",
24279
+ value: null,
24280
+ all: true
24281
+ });
24282
+ }
24283
+ state.orgTreeData = treeData;
24284
+ state.treeData = treeData;
24285
+ emit("dataChangeCallBack", state.treeData);
24250
24286
  if (props.nodeKey && curSelectedData) {
24251
24287
  vue.nextTick(() => {
24252
24288
  treeRef.value.setCurrentKey(curSelectedData);
@@ -24260,8 +24296,8 @@
24260
24296
  }
24261
24297
  };
24262
24298
  const handleHamburgerClick = () => {
24263
- if (props.hamburger || state.hamburger) {
24264
- setTreeData(state.orgTreeData);
24299
+ if (state.hamburger) {
24300
+ state.treeData = state.orgTreeData;
24265
24301
  } else {
24266
24302
  state.treeData = state.orgTreeData.map((m) => ({
24267
24303
  ...m,
@@ -24296,7 +24332,7 @@
24296
24332
  selectedLabel.value = node.label;
24297
24333
  emit("update:modelValue", state.value);
24298
24334
  emit("change", data, node, instance, event);
24299
- emit("nodeClick", data, node, instance, event);
24335
+ emit("node-click", data, node, instance, event);
24300
24336
  };
24301
24337
  vue.onMounted(async () => {
24302
24338
  await loadData();
@@ -24309,9 +24345,10 @@
24309
24345
  });
24310
24346
  });
24311
24347
  const elTreeProps = utils.useProps(props, treeProps, ["data", "expandOnClickNode", "filterNodeMethod"]);
24348
+ const elTreeEmits = utils.useEmits(ElementPlus.treeEmits, emit, ["node-click"]);
24312
24349
  utils.useRender(() => vue.withDirectives(vue.createVNode("div", {
24313
24350
  "class": ["el-card fa-tree", `fa-tree-${_globalSize.value}`, {
24314
- "fa-tree__fold": props.hamburger && state.hamburger || fold.value
24351
+ "fa-tree__fold": state.hamburger || fold.value
24315
24352
  }],
24316
24353
  "style": {
24317
24354
  width: state.width
@@ -24335,30 +24372,18 @@
24335
24372
  "trim": true
24336
24373
  },
24337
24374
  "onUpdate:modelValue": ($event) => state.searchValue = $event,
24338
- "placeholder": props.hamburger || state.hamburger ? "关键字过滤" : "输入关键字进行过滤",
24375
+ "placeholder": state.hamburger ? "关键字过滤" : "输入关键字进行过滤",
24339
24376
  "clearable": true,
24340
24377
  "onInput": (value) => treeRef.value.filter(value)
24341
24378
  }, null), vue.createVNode(ElementPlus.ElScrollbar, {
24342
24379
  "class": "fa-tree__scrollbar"
24343
24380
  }, {
24344
- default: () => [vue.createVNode(ElementPlus.ElTree, vue.mergeProps(elTreeProps.value, {
24381
+ default: () => [vue.createVNode(ElementPlus.ElTree, vue.mergeProps(elTreeProps.value, elTreeEmits.value, {
24345
24382
  "ref": treeRef,
24346
24383
  "data": state.treeData,
24347
24384
  "expandOnClickNode": props.checkOnClickNode ? false : props.expandOnClickNode,
24348
24385
  "filterNodeMethod": handleFilterNode,
24349
- "onNodeClick": handleNodeClick,
24350
- "onNodeContextmenu": (event, data, node, instance) => emit("nodeContextmenu", event, data, node, instance),
24351
- "onCheckChange": (data, checked, indeterminate) => emit("checkChange", data, checked, indeterminate),
24352
- "onCheck": (data, node) => emit("check", data, node),
24353
- "onCurrentChange": (data, node) => emit("currentChange", data, node),
24354
- "onNodeExpand": (data, node, instance) => emit("nodeExpand", data, node, instance),
24355
- "onNodeCollapse": (data, node, instance) => emit("nodeCollapse", data, node, instance),
24356
- "onNodeDragStart": (node, event) => emit("nodeDragStart", node, event),
24357
- "onNodeDragEnter": (node, enterNode, event) => emit("nodeDragEnter", node, enterNode, event),
24358
- "onNodeDragLeave": (node, leaveNode, event) => emit("nodeDragLeave", node, leaveNode, event),
24359
- "onNodeDragOver": (node, dropNode, event) => emit("nodeDragOver", node, dropNode, event),
24360
- "onNodeDragEnd": (node, dropNode, dropType, event) => emit("nodeDragEnd", node, dropNode, dropType, event),
24361
- "onNodeDrop": (node, dropNode, dropType, event) => emit("nodeDrop", node, dropNode, dropType, event)
24386
+ "onNodeClick": handleNodeClick
24362
24387
  }), {
24363
24388
  default: ({
24364
24389
  node,
@@ -24369,10 +24394,10 @@
24369
24394
  "style": {
24370
24395
  paddingLeft: fold.value ? "3px" : ""
24371
24396
  }
24372
- }, [vue.createVNode("span", null, [slots.label ? slots.label({
24397
+ }, [vue.createVNode("div", null, [data?.all ? data.label : slots.label ? slots.label({
24373
24398
  node,
24374
24399
  data
24375
- }) : data?.all ? data.label : node.label]), node.key && data.showQuantity ? vue.createVNode("span", null, [vue.createTextVNode("["), data.quantity, vue.createTextVNode("]")]) : null, slots.default && vue.createVNode("span", null, [slots.default({
24400
+ }) : node.label]), node.key && data.showQuantity ? vue.createVNode("span", null, [vue.createTextVNode("["), data.quantity, vue.createTextVNode("]")]) : null, !data?.all && slots.default && vue.createVNode("span", null, [slots.default({
24376
24401
  node,
24377
24402
  data
24378
24403
  })])]),
@@ -24429,6 +24454,11 @@
24429
24454
  const faTreeSelectProps = {
24430
24455
  ...SelectProps,
24431
24456
  ...treeProps,
24457
+ /** @description whether Select is disabled 重载使其支持 ElForm*/
24458
+ disabled: {
24459
+ type: Boolean,
24460
+ default: void 0
24461
+ },
24432
24462
  /** @description displayed text while loading data from server, default is 'Loading' */
24433
24463
  loadingText: {
24434
24464
  type: String,
@@ -24483,8 +24513,8 @@
24483
24513
  * @description The cached data of the lazy node, the structure is the same as the data, used to get the label of the unloaded data
24484
24514
  */
24485
24515
  cacheData: {
24486
- type: Array,
24487
- default: () => []
24516
+ type: utils.definePropType(Array),
24517
+ default: []
24488
24518
  },
24489
24519
  /** @description v-model绑定值 */
24490
24520
  modelValue: {
@@ -24530,6 +24560,8 @@
24530
24560
  initParam: utils.definePropType([String, Number, Object])
24531
24561
  };
24532
24562
  const faTreeSelectEmits = {
24563
+ ...ElementPlus.selectEmits,
24564
+ ...ElementPlus.treeEmits,
24533
24565
  /** @description v-model 回调 */
24534
24566
  "update:modelValue": (value) => isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value),
24535
24567
  /** @description v-model:label 回调 */
@@ -24537,43 +24569,7 @@
24537
24569
  /** @description 数据改变 */
24538
24570
  dataChangeCallBack: (data) => isArray(data),
24539
24571
  /** @description 改变 */
24540
- change: (data, value) => (isObject$1(data) || isArray(data) || isNull(data)) && (isString(value) || isNumber(value) || isBoolean(value) || isObject$1(value) || isArray(value) || isNull(value)),
24541
- /** @description 下拉框出现/隐藏时触发 */
24542
- visibleChange: (visible) => isBoolean(visible),
24543
- /** @description 多选模式下移除tag时触发 */
24544
- removeTag: (tagValue) => isString(tagValue) || isNumber(tagValue) || isBoolean(tagValue) || isObject$1(tagValue) || isArray(tagValue),
24545
- /** @description 可清空的单选模式下用户点击清空按钮时触发 */
24546
- clear: () => true,
24547
- /** @description 当 input 失去焦点时触发 */
24548
- blur: (event) => event instanceof FocusEvent,
24549
- /** @description 当 input 获得焦点时触发 */
24550
- focus: (event) => event instanceof FocusEvent,
24551
- /** @description 当节点被点击的时候触发 */
24552
- nodeClick: (data, node, instance) => isObject$1(data) && isObject$1(node) && isObject$1(instance),
24553
- /** @description 当某一节点被鼠标右键点击时会触发该事件 */
24554
- nodeContextmenu: (event, data, node, instance) => event instanceof Event && isObject$1(data) && isObject$1(node) && isObject$1(instance),
24555
- /** @description 当复选框被点击的时候触发 */
24556
- checkChange: (data, checked, indeterminate) => isObject$1(data) && isBoolean(checked) && isBoolean(indeterminate),
24557
- /** @description 点击节点复选框之后触发 */
24558
- check: (data, node) => isObject$1(data) && isObject$1(node),
24559
- /** @description 当前选中节点变化时触发的事件 */
24560
- currentChange: (data, node) => isObject$1(data) && isObject$1(node),
24561
- /** @description 节点被展开时触发的事件 */
24562
- nodeExpand: (data, node, instance) => isObject$1(data) && isObject$1(node) && isObject$1(instance),
24563
- /** @description 节点被关闭时触发的事件 */
24564
- nodeCollapse: (data, node, instance) => isObject$1(data) && isObject$1(node) && isObject$1(instance),
24565
- /** @description 节点开始拖拽时触发的事件 */
24566
- nodeDragStart: (node, event) => isObject$1(node) && event instanceof DragEvent,
24567
- /** @description 拖拽进入其他节点时触发的事件 */
24568
- nodeDragEnter: (node, enterNode, event) => isObject$1(node) && isObject$1(enterNode) && event instanceof DragEvent,
24569
- /** @description 拖拽离开某个节点时触发的事件 */
24570
- nodeDragLeave: (node, leaveNode, event) => isObject$1(node) && isObject$1(leaveNode) && event instanceof DragEvent,
24571
- /** @description 在拖拽节点时触发的事件(类似浏览器的 mouseover 事件) */
24572
- nodeDragOver: (node, dropNode, event) => isObject$1(node) && isObject$1(dropNode) && event instanceof DragEvent,
24573
- /** @description 拖拽结束时(可能未成功)触发的事件 */
24574
- nodeDragEnd: (node, dropNode, dropType, event) => isObject$1(node) && isObject$1(dropNode) && isString(dropType) && event instanceof DragEvent,
24575
- /** @description 拖拽成功完成时触发的事件 */
24576
- nodeDrop: (node, dropNode, dropType, event) => isObject$1(node) && isObject$1(dropNode) && isString(dropType) && event instanceof DragEvent
24572
+ change: (data, value) => true
24577
24573
  };
24578
24574
  const TreeSelect = /* @__PURE__ */ vue.defineComponent({
24579
24575
  name: "FaTreeSelect",
@@ -24586,9 +24582,7 @@
24586
24582
  emit,
24587
24583
  expose
24588
24584
  }) {
24589
- const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit, {
24590
- passive: true
24591
- });
24585
+ const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit);
24592
24586
  const state = vue.reactive({
24593
24587
  value: utils.withDefineType(),
24594
24588
  loading: false,
@@ -24678,6 +24672,7 @@
24678
24672
  const handleClear = () => {
24679
24673
  state.value = null;
24680
24674
  selectedLabel.value = null;
24675
+ emit("update:modelValue", null);
24681
24676
  emit("clear");
24682
24677
  };
24683
24678
  const handleNodeClick = (data, node, instance, event) => {
@@ -24695,7 +24690,7 @@
24695
24690
  handleChange(data.value, data);
24696
24691
  }
24697
24692
  }
24698
- emit("nodeClick", data, node, instance);
24693
+ emit("node-click", data, node, instance, event);
24699
24694
  };
24700
24695
  const handleVisibleChange = async (visible) => {
24701
24696
  if (visible) {
@@ -24709,7 +24704,7 @@
24709
24704
  }
24710
24705
  }
24711
24706
  }
24712
- emit("visibleChange", visible);
24707
+ emit("visible-change", visible);
24713
24708
  };
24714
24709
  vue.watch(() => props.modelValue, (newValue) => {
24715
24710
  if (state.echo && !isNil(newValue)) {
@@ -24782,7 +24777,11 @@
24782
24777
  ...SelectProps,
24783
24778
  ...treeProps
24784
24779
  }, ["modelValue", "popperClass", "loading", "expandOnClickNode", "filterNodeMethod"]);
24785
- utils.useRender(() => vue.createVNode(ElementPlus.ElTreeSelect, vue.mergeProps(elTreeSelectProps.value, {
24780
+ const elTreeSelectEmits = utils.useEmits({
24781
+ ...ElementPlus.selectEmits,
24782
+ ...ElementPlus.treeEmits
24783
+ }, emit, ["update:modelValue", "clear", "visible-change", "node-click"]);
24784
+ utils.useRender(() => vue.createVNode(ElementPlus.ElTreeSelect, vue.mergeProps(elTreeSelectProps.value, elTreeSelectEmits.value, {
24786
24785
  "ref": treeSelectRef,
24787
24786
  "class": "fa-tree-select",
24788
24787
  "popperClass": `fa-tree-select-dropdown ${props.popperClass}`,
@@ -24797,22 +24796,7 @@
24797
24796
  "filterNodeMethod": handleFilterNode,
24798
24797
  "onNodeClick": handleNodeClick,
24799
24798
  "onClear": handleClear,
24800
- "onVisibleChange": handleVisibleChange,
24801
- "onRemoveTag": (tagValue) => emit("removeTag", tagValue),
24802
- "onBlur": (event) => emit("blur", event),
24803
- "onFocus": (event) => emit("focus", event),
24804
- "onNodeContextmenu": (event, data, node, instance) => emit("nodeContextmenu", event, data, node, instance),
24805
- "onCheckChange": (data, checked, indeterminate) => emit("checkChange", data, checked, indeterminate),
24806
- "onCheck": (data, node) => emit("check", data, node),
24807
- "onCurrentChange": (data, node) => emit("currentChange", data, node),
24808
- "onNodeExpand": (data, node, instance) => emit("nodeExpand", data, node, instance),
24809
- "onNodeCollapse": (data, node, instance) => emit("nodeCollapse", data, node, instance),
24810
- "onNodeDragStart": (node, event) => emit("nodeDragStart", node, event),
24811
- "onNodeDragEnter": (node, enterNode, event) => emit("nodeDragEnter", node, enterNode, event),
24812
- "onNodeDragLeave": (node, leaveNode, event) => emit("nodeDragLeave", node, leaveNode, event),
24813
- "onNodeDragOver": (node, dropNode, event) => emit("nodeDragOver", node, dropNode, event),
24814
- "onNodeDragEnd": (node, dropNode, dropType, event) => emit("nodeDragEnd", node, dropNode, dropType, event),
24815
- "onNodeDrop": (node, dropNode, dropType, event) => emit("nodeDrop", node, dropNode, dropType, event)
24799
+ "onVisibleChange": handleVisibleChange
24816
24800
  }), {
24817
24801
  ...slots.default && {
24818
24802
  default: ({
@@ -24852,48 +24836,49 @@
24852
24836
  }
24853
24837
  }));
24854
24838
  return utils.useExpose(expose, {
24855
- /** @description 使选择器的输入框获取焦点 */
24856
- focus: vue.computed(() => treeSelectRef.value?.focus),
24857
- /** @description 使选择器的输入框失去焦点,并隐藏下拉框 */
24858
- blur: vue.computed(() => treeSelectRef.value?.blur),
24859
- /** @description 获取当前选中的标签 */
24860
- selectedLabel: vue.computed(() => treeSelectRef.value?.selectedLabel),
24861
- /** @description 过滤所有树节点,过滤后的节点将被隐藏 */
24862
- filter: vue.computed(() => treeSelectRef.value?.filter),
24863
- /** @description 为节点设置新数据,只有当设置 node-key 属性的时候才可用 */
24864
- updateKeyChildren: vue.computed(() => treeSelectRef.value?.updateKeyChildren),
24865
- /** @description 如果节点可以被选中,(show-checkbox true), 本方法将返回当前选中节点的数组 */
24866
- getCheckedNodes: vue.computed(() => treeSelectRef.value?.getCheckedNodes),
24867
- /** @description 设置目前勾选的节点,使用此方法必须提前设置 node-key 属性 */
24868
- setCheckedNodes: vue.computed(() => treeSelectRef.value?.setCheckedNodes),
24869
- /** @description 若节点可用被选中 (show-checkbox true), 它将返回当前选中节点 key 的数组 */
24870
- getCheckedKeys: vue.computed(() => treeSelectRef.value?.getCheckedKeys),
24871
- /** @description 设置目前选中的节点,使用此方法必须设置 node-key 属性 */
24872
- setCheckedKeys: vue.computed(() => treeSelectRef.value?.setCheckedKeys),
24873
- /** @description 设置节点是否被选中, 使用此方法必须设置 node-key 属性 */
24874
- setChecked: vue.computed(() => treeSelectRef.value?.setChecked),
24875
- /** @description 如果节点可用被选中 (show-checkbox true), 它将返回当前半选中的节点组成的数组 */
24876
- getHalfCheckedNodes: vue.computed(() => treeSelectRef.value?.getHalfCheckedNodes),
24877
- /** @description 若节点可被选中(show-checkbox true),则返回目前半选中的节点的 key 所组成的数组 */
24878
- getHalfCheckedKeys: vue.computed(() => treeSelectRef.value?.getHalfCheckedKeys),
24879
- /** @description 返回当前被选中节点的数据 (如果没有则返回 null) */
24880
- getCurrentKey: vue.computed(() => treeSelectRef.value?.getCurrentKey),
24881
- /** @description 返回当前被选中节点的数据 (如果没有则返回 null) */
24882
- getCurrentNode: vue.computed(() => treeSelectRef.value?.getCurrentNode),
24883
- /** @description 通过 key 设置某个节点的当前选中状态,使用此方法必须设置 node-key 属性 */
24884
- setCurrentKey: vue.computed(() => treeSelectRef.value?.setCurrentKey),
24885
- /** @description 设置节点为选中状态,使用此方法必须设置 node-key 属性 */
24886
- setCurrentNode: vue.computed(() => treeSelectRef.value?.setCurrentNode),
24887
- /** @description 根据 data 或者 key 拿到 Tree 组件中的 node */
24888
- getNode: vue.computed(() => treeSelectRef.value?.getNode),
24889
- /** @description 删除 Tree 中的一个节点,使用此方法必须设置 node-key 属性 */
24890
- remove: vue.computed(() => treeSelectRef.value?.remove),
24891
- /** @description Tree 中的一个节点追加一个子节点 */
24892
- append: vue.computed(() => treeSelectRef.value?.append),
24893
- /** @description Tree 中给定节点前插入一个节点 */
24894
- insertBefore: vue.computed(() => treeSelectRef.value?.insertBefore),
24895
- /** @description Tree 中给定节点后插入一个节点 */
24896
- insertAfter: vue.computed(() => treeSelectRef.value?.insertAfter),
24839
+ // TODO:这里 EL 没有返回类型,等待下一个版本修复
24840
+ // /** @description 使选择器的输入框获取焦点 */
24841
+ // focus: computed(() => treeSelectRef.value?.focus),
24842
+ // /** @description 使选择器的输入框失去焦点,并隐藏下拉框 */
24843
+ // blur: computed(() => treeSelectRef.value?.blur),
24844
+ // /** @description 获取当前选中的标签 */
24845
+ // selectedLabel: computed(() => treeSelectRef.value?.selectedLabel),
24846
+ // /** @description 过滤所有树节点,过滤后的节点将被隐藏 */
24847
+ // filter: computed(() => treeSelectRef.value?.filter),
24848
+ // /** @description 为节点设置新数据,只有当设置 node-key 属性的时候才可用 */
24849
+ // updateKeyChildren: computed(() => treeSelectRef.value?.updateKeyChildren),
24850
+ // /** @description 如果节点可以被选中,(show-checkbox true), 本方法将返回当前选中节点的数组 */
24851
+ // getCheckedNodes: computed(() => treeSelectRef.value?.getCheckedNodes),
24852
+ // /** @description 设置目前勾选的节点,使用此方法必须提前设置 node-key 属性 */
24853
+ // setCheckedNodes: computed(() => treeSelectRef.value?.setCheckedNodes),
24854
+ // /** @description 若节点可用被选中 (show-checkbox true), 它将返回当前选中节点 key 的数组 */
24855
+ // getCheckedKeys: computed(() => treeSelectRef.value?.getCheckedKeys),
24856
+ // /** @description 设置目前选中的节点,使用此方法必须设置 node-key 属性 */
24857
+ // setCheckedKeys: computed(() => treeSelectRef.value?.setCheckedKeys),
24858
+ // /** @description 设置节点是否被选中, 使用此方法必须设置 node-key 属性 */
24859
+ // setChecked: computed(() => treeSelectRef.value?.setChecked),
24860
+ // /** @description 如果节点可用被选中 (show-checkbox true), 它将返回当前半选中的节点组成的数组 */
24861
+ // getHalfCheckedNodes: computed(() => treeSelectRef.value?.getHalfCheckedNodes),
24862
+ // /** @description 若节点可被选中(show-checkbox 为 true),则返回目前半选中的节点的 key 所组成的数组 */
24863
+ // getHalfCheckedKeys: computed(() => treeSelectRef.value?.getHalfCheckedKeys),
24864
+ // /** @description 返回当前被选中节点的数据 (如果没有则返回 null) */
24865
+ // getCurrentKey: computed(() => treeSelectRef.value?.getCurrentKey),
24866
+ // /** @description 返回当前被选中节点的数据 (如果没有则返回 null) */
24867
+ // getCurrentNode: computed(() => treeSelectRef.value?.getCurrentNode),
24868
+ // /** @description 通过 key 设置某个节点的当前选中状态,使用此方法必须设置 node-key 属性 */
24869
+ // setCurrentKey: computed(() => treeSelectRef.value?.setCurrentKey),
24870
+ // /** @description 设置节点为选中状态,使用此方法必须设置 node-key 属性 */
24871
+ // setCurrentNode: computed(() => treeSelectRef.value?.setCurrentNode),
24872
+ // /** @description 根据 data 或者 key 拿到 Tree 组件中的 node */
24873
+ // getNode: computed(() => treeSelectRef.value?.getNode),
24874
+ // /** @description 删除 Tree 中的一个节点,使用此方法必须设置 node-key 属性 */
24875
+ // remove: computed(() => treeSelectRef.value?.remove),
24876
+ // /** @description 为 Tree 中的一个节点追加一个子节点 */
24877
+ // append: computed(() => treeSelectRef.value?.append),
24878
+ // /** @description 在 Tree 中给定节点前插入一个节点 */
24879
+ // insertBefore: computed(() => treeSelectRef.value?.insertBefore),
24880
+ // /** @description 在 Tree 中给定节点后插入一个节点 */
24881
+ // insertAfter: computed(() => treeSelectRef.value?.insertAfter),
24897
24882
  /** @description 加载状态 */
24898
24883
  loading: vue.computed(() => state.loading),
24899
24884
  /** @description 刷新 */
@@ -27050,7 +27035,7 @@
27050
27035
  function trunc(x) {
27051
27036
  return finalise(x = new this(x), x.e + 1, 1);
27052
27037
  }
27053
- P[Symbol.for("nodejs.util.inspect.custom")] = P.toString;
27038
+ P[/* @__PURE__ */ Symbol.for("nodejs.util.inspect.custom")] = P.toString;
27054
27039
  P[Symbol.toStringTag] = "Decimal";
27055
27040
  var Decimal = P.constructor = clone(DEFAULTS);
27056
27041
  LN10 = new Decimal(LN10);
@@ -28311,8 +28296,8 @@
28311
28296
  }
28312
28297
  app.use(ElementPlus);
28313
28298
  };
28314
- const version$1 = "1.0.7";
28315
- const INSTALLED_KEY = Symbol("INSTALLED_KEY");
28299
+ const version$1 = "1.0.10";
28300
+ const INSTALLED_KEY = /* @__PURE__ */ Symbol("INSTALLED_KEY");
28316
28301
  const makeInstaller = () => {
28317
28302
  const install2 = (app) => {
28318
28303
  if (app[INSTALLED_KEY]) return;
@@ -28329,6 +28314,152 @@
28329
28314
  install: install2
28330
28315
  };
28331
28316
  };
28317
+ const faInputDialogPageProps = {
28318
+ /** @description key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used */
28319
+ rowKey: {
28320
+ type: [String, Function],
28321
+ default: "id"
28322
+ },
28323
+ /** @description v-model绑定值 */
28324
+ modelValue: [String, Number],
28325
+ /** @description v-model:label绑定值 */
28326
+ label: String,
28327
+ /** @description 输入框占位文本 */
28328
+ placeholder: {
28329
+ type: String,
28330
+ default: "请选择"
28331
+ },
28332
+ /** @description 禁用 */
28333
+ disabled: Boolean,
28334
+ /** @description 标题 */
28335
+ title: String,
28336
+ /** @description 请求api */
28337
+ requestApi: {
28338
+ type: utils.definePropType(Function)
28339
+ },
28340
+ /** 初始化参数 */
28341
+ initParam: utils.definePropType([String, Number, Object]),
28342
+ /** @description 显示文本 Key */
28343
+ labelKey: {
28344
+ type: String,
28345
+ default: "name"
28346
+ }
28347
+ };
28348
+ const faInputDialogPageEmits = {
28349
+ /** @description v-model 回调 */
28350
+ "update:modelValue": (value) => isString(value) || isNumber(value) || isNull(value),
28351
+ /** @description v-model:label 回调 */
28352
+ "update:label": (value) => isString(value) || isNull(value),
28353
+ /** @description 改变 */
28354
+ change: (value) => isString(value) || isNumber(value) || isNull(value)
28355
+ };
28356
+ const InputDialogPage = /* @__PURE__ */ vue.defineComponent({
28357
+ name: "FaInputDialogPage",
28358
+ props: faInputDialogPageProps,
28359
+ emits: faInputDialogPageEmits,
28360
+ slots: utils.makeSlots(),
28361
+ setup(props, {
28362
+ attrs,
28363
+ slots,
28364
+ emit,
28365
+ expose
28366
+ }) {
28367
+ const modelValue = /* @__PURE__ */ useVModel(props, "modelValue", emit);
28368
+ const selectedLabel = /* @__PURE__ */ useVModel(props, "label", emit);
28369
+ const state = vue.reactive({
28370
+ selectionRow: utils.withDefineType()
28371
+ });
28372
+ const faDialogRef = vue.ref();
28373
+ const faTableRef = vue.ref();
28374
+ const handleDeleteClick = () => {
28375
+ modelValue.value = null;
28376
+ selectedLabel.value = null;
28377
+ emit("change", null);
28378
+ };
28379
+ const handleSearchClick = () => {
28380
+ faDialogRef.value.open(() => {
28381
+ if (state.selectionRow) {
28382
+ const rowSelected = faTableRef.value.selectedListIds.includes(isFunction(props.rowKey) ? props.rowKey(state.selectionRow) : state.selectionRow[props.rowKey]);
28383
+ if (!rowSelected) {
28384
+ faTableRef.value.toggleRowSelection(state.selectionRow);
28385
+ }
28386
+ }
28387
+ });
28388
+ };
28389
+ const handleConfirmClick = () => {
28390
+ faDialogRef.value.close(() => {
28391
+ if (faTableRef.value.selected) {
28392
+ const selectedData = faTableRef.value.selectedList[0];
28393
+ modelValue.value = selectedData[isFunction(props.rowKey) ? props.rowKey(selectedData) : selectedData[props.rowKey]];
28394
+ selectedLabel.value = selectedData[props.labelKey];
28395
+ emit("change", selectedData);
28396
+ } else {
28397
+ modelValue.value = null;
28398
+ selectedLabel.value = null;
28399
+ emit("change", null);
28400
+ }
28401
+ });
28402
+ };
28403
+ const handleTableRowDblclick = (row) => {
28404
+ faTableRef.value.clearSelection();
28405
+ faTableRef.value.toggleRowSelection(row);
28406
+ state.selectionRow = row;
28407
+ handleConfirmClick();
28408
+ };
28409
+ utils.useRender(() => vue.createVNode("div", {
28410
+ "class": "fa-input-dialog-page"
28411
+ }, [vue.createVNode(ElementPlus.ElInput, {
28412
+ "modelValue": selectedLabel.value,
28413
+ "onUpdate:modelValue": ($event) => selectedLabel.value = $event,
28414
+ "placeholder": props.placeholder,
28415
+ "disabled": props.disabled,
28416
+ "readonly": true
28417
+ }, {
28418
+ append: () => vue.createVNode(ElementPlus.ElButtonGroup, null, {
28419
+ default: () => [vue.createVNode(ElementPlus.ElButton, {
28420
+ "disabled": props.disabled,
28421
+ "icon": ElementPlusIconsVue.Delete,
28422
+ "onClick": handleDeleteClick
28423
+ }, null), vue.createVNode(ElementPlus.ElButton, {
28424
+ "disabled": props.disabled,
28425
+ "icon": ElementPlusIconsVue.Search,
28426
+ "onClick": handleSearchClick
28427
+ }, null)]
28428
+ })
28429
+ }), vue.createVNode(FaDialog, {
28430
+ "ref": faDialogRef,
28431
+ "style": "--height: 70%;",
28432
+ "width": "50%",
28433
+ "title": props.title,
28434
+ "fillHeight": true,
28435
+ "disabledConfirmButton": !faTableRef.value?.selected,
28436
+ "onConfirmClick": handleConfirmClick
28437
+ }, {
28438
+ default: () => [vue.createVNode(FaTable, {
28439
+ "ref": faTableRef,
28440
+ "rowKey": props.rowKey,
28441
+ "requestApi": props.requestApi,
28442
+ "initParam": props.initParam,
28443
+ "single": true,
28444
+ "rowClickSelection": true,
28445
+ "hideSearchTime": true,
28446
+ "exportBtn": false,
28447
+ "onRowDblclick": handleTableRowDblclick
28448
+ }, {
28449
+ default: () => slots.default && slots.default()
28450
+ })]
28451
+ })]));
28452
+ return utils.useExpose(expose, {
28453
+ /** @description 选择行数据 */
28454
+ selectionRow: vue.computed(() => state.selectionRow),
28455
+ /** @description 打开选择器弹窗 */
28456
+ open: handleSearchClick,
28457
+ /** @description 清除选择 */
28458
+ clear: handleDeleteClick
28459
+ });
28460
+ }
28461
+ });
28462
+ const FaInputDialogPage = utils.withInstall(InputDialogPage);
28332
28463
  const index = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
28333
28464
  __proto__: null,
28334
28465
  CarNumberArea,
@@ -28346,6 +28477,7 @@
28346
28477
  FaIcon,
28347
28478
  FaIconSelector,
28348
28479
  FaImage,
28480
+ FaInputDialogPage,
28349
28481
  FaLayoutGrid,
28350
28482
  FaLayoutGridItem,
28351
28483
  FaSelect,
@@ -28370,6 +28502,8 @@
28370
28502
  faFormItemTipProps,
28371
28503
  faFormProps,
28372
28504
  faImageProps,
28505
+ faInputDialogPageEmits,
28506
+ faInputDialogPageProps,
28373
28507
  faSelectPageEmits,
28374
28508
  faSelectPageProps,
28375
28509
  faSelectProps,
@@ -28409,6 +28543,7 @@
28409
28543
  exports2.FaIcon = FaIcon;
28410
28544
  exports2.FaIconSelector = FaIconSelector;
28411
28545
  exports2.FaImage = FaImage;
28546
+ exports2.FaInputDialogPage = FaInputDialogPage;
28412
28547
  exports2.FaLayoutGrid = FaLayoutGrid;
28413
28548
  exports2.FaLayoutGridItem = FaLayoutGridItem;
28414
28549
  exports2.FaMimeType = FaMimeType;
@@ -28438,6 +28573,8 @@
28438
28573
  exports2.faFormItemTipProps = faFormItemTipProps;
28439
28574
  exports2.faFormProps = faFormProps;
28440
28575
  exports2.faImageProps = faImageProps;
28576
+ exports2.faInputDialogPageEmits = faInputDialogPageEmits;
28577
+ exports2.faInputDialogPageProps = faInputDialogPageProps;
28441
28578
  exports2.faSelectPageEmits = faSelectPageEmits;
28442
28579
  exports2.faSelectPageProps = faSelectPageProps;
28443
28580
  exports2.faSelectProps = faSelectProps;