hzzt-plus 1.0.2 → 1.0.4

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 (168) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +3029 -276
  4. package/dist/index.full.min.js +23 -17
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +24 -18
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +3025 -278
  9. package/es/component.mjs +5 -1
  10. package/es/component.mjs.map +1 -1
  11. package/es/components/cascader/index.d.ts +5 -0
  12. package/es/components/cascader/index.mjs +9 -0
  13. package/es/components/cascader/index.mjs.map +1 -0
  14. package/es/components/cascader/src/cascader.d.ts +35 -0
  15. package/es/components/cascader/src/cascader.mjs +42 -0
  16. package/es/components/cascader/src/cascader.mjs.map +1 -0
  17. package/es/components/cascader/src/cascader.vue.d.ts +2293 -0
  18. package/es/components/cascader/src/cascader2.mjs +128 -0
  19. package/es/components/cascader/src/cascader2.mjs.map +1 -0
  20. package/es/components/cascader/src/hooks/utils.d.ts +2 -0
  21. package/es/components/cascader/src/hooks/utils.mjs +26 -0
  22. package/es/components/cascader/src/hooks/utils.mjs.map +1 -0
  23. package/es/components/cascader/style/css.d.ts +2 -0
  24. package/es/components/cascader/style/css.mjs +3 -0
  25. package/es/components/cascader/style/css.mjs.map +1 -0
  26. package/es/components/cascader/style/index.d.ts +2 -0
  27. package/es/components/cascader/style/index.mjs +3 -0
  28. package/es/components/cascader/style/index.mjs.map +1 -0
  29. package/es/components/collapse/index.mjs +2 -2
  30. package/es/components/collapse/src/collapse.mjs +67 -0
  31. package/es/components/collapse/src/collapse.mjs.map +1 -1
  32. package/es/components/collapse/src/collapse2.mjs +0 -67
  33. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  34. package/es/components/confirm-password/index.d.ts +1 -1
  35. package/es/components/confirm-password/src/confirm-password.vue.d.ts +1 -1
  36. package/es/components/dropdown/index.d.ts +1 -1
  37. package/es/components/dropdown/src/index.vue.d.ts +1 -1
  38. package/es/components/index.d.ts +2 -0
  39. package/es/components/index.mjs +5 -1
  40. package/es/components/index.mjs.map +1 -1
  41. package/es/components/input-range/index.d.ts +5 -0
  42. package/es/components/input-range/index.mjs +9 -0
  43. package/es/components/input-range/index.mjs.map +1 -0
  44. package/es/components/input-range/src/input-range.d.ts +24 -0
  45. package/es/components/input-range/src/input-range.mjs +31 -0
  46. package/es/components/input-range/src/input-range.mjs.map +1 -0
  47. package/es/components/input-range/src/input-range.vue.d.ts +86 -0
  48. package/es/components/input-range/src/input-range2.mjs +81 -0
  49. package/es/components/input-range/src/input-range2.mjs.map +1 -0
  50. package/es/components/input-range/style/css.d.ts +2 -0
  51. package/es/components/input-range/style/css.mjs +3 -0
  52. package/es/components/input-range/style/css.mjs.map +1 -0
  53. package/es/components/input-range/style/index.d.ts +2 -0
  54. package/es/components/input-range/style/index.mjs +3 -0
  55. package/es/components/input-range/style/index.mjs.map +1 -0
  56. package/es/components/page-size/index.d.ts +54 -54
  57. package/es/components/page-size/src/index.vue.d.ts +54 -54
  58. package/es/components/quarter-picker/index.d.ts +16 -16
  59. package/es/components/quarter-picker/src/index.vue.d.ts +16 -16
  60. package/es/components/scan/index.mjs +2 -2
  61. package/es/components/scan/src/scan.mjs +144 -23
  62. package/es/components/scan/src/scan.mjs.map +1 -1
  63. package/es/components/scan/src/scan.vue.d.ts +2 -2
  64. package/es/components/scan/src/scan2.mjs +23 -144
  65. package/es/components/scan/src/scan2.mjs.map +1 -1
  66. package/es/components/select-input/index.d.ts +21 -21
  67. package/es/components/select-input/src/select-input.d.ts +3 -3
  68. package/es/components/select-input/src/select-input.mjs.map +1 -1
  69. package/es/components/select-input/src/select-input.vue.d.ts +21 -21
  70. package/es/components/select-textarea/index.d.ts +3 -13074
  71. package/es/components/select-textarea/index.mjs.map +1 -1
  72. package/es/components/select-textarea/src/select-textarea.d.ts +4 -4
  73. package/es/components/select-textarea/src/select-textarea.mjs +6 -5
  74. package/es/components/select-textarea/src/select-textarea.mjs.map +1 -1
  75. package/es/components/select-textarea/src/select-textarea.vue.d.ts +45 -45
  76. package/es/components/select-textarea/src/select-textarea2.mjs +2 -1
  77. package/es/components/select-textarea/src/select-textarea2.mjs.map +1 -1
  78. package/es/components/tooltip/index.d.ts +14 -14
  79. package/es/components/tooltip/src/tooltip.vue.d.ts +14 -14
  80. package/es/hooks/use-cursor/index.d.ts +1 -1
  81. package/es/hooks/use-cursor/index.mjs.map +1 -1
  82. package/es/index.mjs +5 -1
  83. package/es/index.mjs.map +1 -1
  84. package/global.d.ts +2 -0
  85. package/lib/component.js +5 -1
  86. package/lib/component.js.map +1 -1
  87. package/lib/components/cascader/index.d.ts +5 -0
  88. package/lib/components/cascader/index.js +16 -0
  89. package/lib/components/cascader/index.js.map +1 -0
  90. package/lib/components/cascader/src/cascader.d.ts +35 -0
  91. package/lib/components/cascader/src/cascader.js +47 -0
  92. package/lib/components/cascader/src/cascader.js.map +1 -0
  93. package/lib/components/cascader/src/cascader.vue.d.ts +2293 -0
  94. package/lib/components/cascader/src/cascader2.js +132 -0
  95. package/lib/components/cascader/src/cascader2.js.map +1 -0
  96. package/lib/components/cascader/src/hooks/utils.d.ts +2 -0
  97. package/lib/components/cascader/src/hooks/utils.js +30 -0
  98. package/lib/components/cascader/src/hooks/utils.js.map +1 -0
  99. package/lib/components/cascader/style/css.d.ts +2 -0
  100. package/lib/components/cascader/style/css.js +6 -0
  101. package/lib/components/cascader/style/css.js.map +1 -0
  102. package/lib/components/cascader/style/index.d.ts +2 -0
  103. package/lib/components/cascader/style/index.js +6 -0
  104. package/lib/components/cascader/style/index.js.map +1 -0
  105. package/lib/components/collapse/index.js +2 -2
  106. package/lib/components/collapse/src/collapse.js +70 -0
  107. package/lib/components/collapse/src/collapse.js.map +1 -1
  108. package/lib/components/collapse/src/collapse2.js +0 -70
  109. package/lib/components/collapse/src/collapse2.js.map +1 -1
  110. package/lib/components/confirm-password/index.d.ts +1 -1
  111. package/lib/components/confirm-password/src/confirm-password.vue.d.ts +1 -1
  112. package/lib/components/dropdown/index.d.ts +1 -1
  113. package/lib/components/dropdown/src/index.vue.d.ts +1 -1
  114. package/lib/components/index.d.ts +2 -0
  115. package/lib/components/index.js +11 -1
  116. package/lib/components/index.js.map +1 -1
  117. package/lib/components/input-range/index.d.ts +5 -0
  118. package/lib/components/input-range/index.js +16 -0
  119. package/lib/components/input-range/index.js.map +1 -0
  120. package/lib/components/input-range/src/input-range.d.ts +24 -0
  121. package/lib/components/input-range/src/input-range.js +36 -0
  122. package/lib/components/input-range/src/input-range.js.map +1 -0
  123. package/lib/components/input-range/src/input-range.vue.d.ts +86 -0
  124. package/lib/components/input-range/src/input-range2.js +85 -0
  125. package/lib/components/input-range/src/input-range2.js.map +1 -0
  126. package/lib/components/input-range/style/css.d.ts +2 -0
  127. package/lib/components/input-range/style/css.js +6 -0
  128. package/lib/components/input-range/style/css.js.map +1 -0
  129. package/lib/components/input-range/style/index.d.ts +2 -0
  130. package/lib/components/input-range/style/index.js +6 -0
  131. package/lib/components/input-range/style/index.js.map +1 -0
  132. package/lib/components/page-size/index.d.ts +54 -54
  133. package/lib/components/page-size/src/index.vue.d.ts +54 -54
  134. package/lib/components/quarter-picker/index.d.ts +16 -16
  135. package/lib/components/quarter-picker/src/index.vue.d.ts +16 -16
  136. package/lib/components/scan/index.js +2 -2
  137. package/lib/components/scan/src/scan.js +144 -24
  138. package/lib/components/scan/src/scan.js.map +1 -1
  139. package/lib/components/scan/src/scan.vue.d.ts +2 -2
  140. package/lib/components/scan/src/scan2.js +24 -144
  141. package/lib/components/scan/src/scan2.js.map +1 -1
  142. package/lib/components/select-input/index.d.ts +21 -21
  143. package/lib/components/select-input/src/select-input.d.ts +3 -3
  144. package/lib/components/select-input/src/select-input.js.map +1 -1
  145. package/lib/components/select-input/src/select-input.vue.d.ts +21 -21
  146. package/lib/components/select-textarea/index.d.ts +3 -13074
  147. package/lib/components/select-textarea/index.js.map +1 -1
  148. package/lib/components/select-textarea/src/select-textarea.d.ts +4 -4
  149. package/lib/components/select-textarea/src/select-textarea.js +5 -4
  150. package/lib/components/select-textarea/src/select-textarea.js.map +1 -1
  151. package/lib/components/select-textarea/src/select-textarea.vue.d.ts +45 -45
  152. package/lib/components/select-textarea/src/select-textarea2.js +2 -1
  153. package/lib/components/select-textarea/src/select-textarea2.js.map +1 -1
  154. package/lib/components/tooltip/index.d.ts +14 -14
  155. package/lib/components/tooltip/src/tooltip.vue.d.ts +14 -14
  156. package/lib/hooks/use-cursor/index.d.ts +1 -1
  157. package/lib/hooks/use-cursor/index.js.map +1 -1
  158. package/lib/index.js +41 -31
  159. package/lib/index.js.map +1 -1
  160. package/package.json +1 -1
  161. package/tags.json +1 -1
  162. package/theme/hzzt-cascader.css +1 -0
  163. package/theme/hzzt-input-range.css +0 -0
  164. package/theme/index.css +1 -1
  165. package/theme/src/cascader.scss +28 -0
  166. package/theme/src/index.scss +2 -0
  167. package/theme/src/input-range.scss +0 -0
  168. package/web-types.json +1 -692
@@ -1,6 +1,6 @@
1
1
  /*! Hzzt Plus v1.0.2 */
2
2
 
3
- import { readonly, shallowRef, watchEffect, getCurrentScope, onScopeDispose, unref, getCurrentInstance, onMounted, nextTick, watch, ref, defineComponent, openBlock, createElementBlock, createElementVNode, warn, computed, isRef, inject, provide, renderSlot, useSlots, createCommentVNode, createTextVNode, toDisplayString, mergeProps, toRef, onUnmounted, useAttrs as useAttrs$1, normalizeClass, normalizeStyle, Fragment, createBlock, withCtx, resolveDynamicComponent, withModifiers, createVNode, onBeforeUnmount, Transition, withDirectives, vShow, reactive, onActivated, onUpdated, cloneVNode, Text, Comment, Teleport as Teleport$1, onBeforeMount, onDeactivated, withKeys, createSlots, toRaw, toRefs, resolveComponent, resolveDirective, toHandlerKey, renderList, vModelText, h, normalizeProps, guardReactiveProps } from 'vue';
3
+ import { unref, readonly, shallowRef, watchEffect, getCurrentScope, onScopeDispose, getCurrentInstance, onMounted, nextTick, ref, computed, watch, defineComponent, openBlock, createElementBlock, createElementVNode, warn, isRef, inject, provide, renderSlot, useSlots, createCommentVNode, createTextVNode, toDisplayString, mergeProps, toRef, onUnmounted, useAttrs as useAttrs$1, normalizeClass, normalizeStyle, Fragment, createBlock, withCtx, resolveDynamicComponent, withModifiers, createVNode, onBeforeUnmount, Transition, withDirectives, vShow, reactive, onActivated, onUpdated, cloneVNode, Text, Comment, Teleport as Teleport$1, onBeforeMount, onDeactivated, toRaw, vModelCheckbox, toRefs, vModelRadio, h, resolveComponent, renderList, onBeforeUpdate, withKeys, vModelText, createSlots, resolveDirective, toHandlerKey, normalizeProps, guardReactiveProps } from 'vue';
4
4
 
5
5
  var __defProp$9 = Object.defineProperty;
6
6
  var __defProps$6 = Object.defineProperties;
@@ -161,6 +161,27 @@ const globalKey = "__vueuse_ssr_handlers__";
161
161
  _global[globalKey] = _global[globalKey] || {};
162
162
  _global[globalKey];
163
163
 
164
+ function useCssVar(prop, target, { window = defaultWindow, initialValue = "" } = {}) {
165
+ const variable = ref(initialValue);
166
+ const elRef = computed(() => {
167
+ var _a;
168
+ return unrefElement(target) || ((_a = window == null ? void 0 : window.document) == null ? void 0 : _a.documentElement);
169
+ });
170
+ watch([elRef, () => resolveUnref(prop)], ([el, prop2]) => {
171
+ var _a;
172
+ if (el && window) {
173
+ const value = (_a = window.getComputedStyle(el).getPropertyValue(prop2)) == null ? void 0 : _a.trim();
174
+ variable.value = value || initialValue;
175
+ }
176
+ }, { immediate: true });
177
+ watch(variable, (val) => {
178
+ var _a;
179
+ if ((_a = elRef.value) == null ? void 0 : _a.style)
180
+ elRef.value.style.setProperty(resolveUnref(prop), val);
181
+ });
182
+ return variable;
183
+ }
184
+
164
185
  var __getOwnPropSymbols$f = Object.getOwnPropertySymbols;
165
186
  var __hasOwnProp$f = Object.prototype.hasOwnProperty;
166
187
  var __propIsEnum$f = Object.prototype.propertyIsEnumerable;
@@ -310,9 +331,20 @@ const isArray$1 = Array.isArray;
310
331
  const isFunction$1 = (val) => typeof val === "function";
311
332
  const isString$1 = (val) => typeof val === "string";
312
333
  const isObject$1 = (val) => val !== null && typeof val === "object";
334
+ const isPromise = (val) => {
335
+ return isObject$1(val) && isFunction$1(val.then) && isFunction$1(val.catch);
336
+ };
313
337
  const objectToString$1 = Object.prototype.toString;
314
338
  const toTypeString = (value) => objectToString$1.call(value);
315
339
  const isPlainObject$1 = (val) => toTypeString(val) === "[object Object]";
340
+ const cacheStringFunction = (fn) => {
341
+ const cache = /* @__PURE__ */ Object.create(null);
342
+ return (str) => {
343
+ const hit = cache[str];
344
+ return hit || (cache[str] = fn(str));
345
+ };
346
+ };
347
+ const capitalize$2 = cacheStringFunction((str) => str.charAt(0).toUpperCase() + str.slice(1));
316
348
 
317
349
  var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
318
350
 
@@ -1982,7 +2014,7 @@ function createCaseFirst(methodName) {
1982
2014
 
1983
2015
  var upperFirst = createCaseFirst("toUpperCase");
1984
2016
 
1985
- function capitalize(string) {
2017
+ function capitalize$1(string) {
1986
2018
  return upperFirst(toString(string).toLowerCase());
1987
2019
  }
1988
2020
 
@@ -2291,10 +2323,10 @@ function createCompounder(callback) {
2291
2323
 
2292
2324
  var camelCase = createCompounder(function(result, word, index) {
2293
2325
  word = word.toLowerCase();
2294
- return result + (index ? capitalize(word) : word);
2326
+ return result + (index ? capitalize$1(word) : word);
2295
2327
  });
2296
2328
 
2297
- function castArray() {
2329
+ function castArray$1() {
2298
2330
  if (!arguments.length) {
2299
2331
  return [];
2300
2332
  }
@@ -4289,7 +4321,7 @@ var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer;
4289
4321
  var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;
4290
4322
 
4291
4323
  var boolTag = "[object Boolean]";
4292
- function isBoolean$1(value) {
4324
+ function isBoolean$2(value) {
4293
4325
  return value === true || value === false || isObjectLike(value) && baseGetTag(value) == boolTag;
4294
4326
  }
4295
4327
 
@@ -4309,7 +4341,7 @@ var mapTag$2 = "[object Map]";
4309
4341
  var setTag$2 = "[object Set]";
4310
4342
  var objectProto$3 = Object.prototype;
4311
4343
  var hasOwnProperty$3 = objectProto$3.hasOwnProperty;
4312
- function isEmpty$1(value) {
4344
+ function isEmpty$2(value) {
4313
4345
  if (value == null) {
4314
4346
  return true;
4315
4347
  }
@@ -6323,7 +6355,7 @@ var func = {
6323
6355
  };
6324
6356
 
6325
6357
  var lang = {
6326
- castArray,
6358
+ castArray: castArray$1,
6327
6359
  clone,
6328
6360
  cloneDeep,
6329
6361
  cloneDeepWith,
@@ -6337,11 +6369,11 @@ var lang = {
6337
6369
  isArrayBuffer,
6338
6370
  isArrayLike,
6339
6371
  isArrayLikeObject,
6340
- isBoolean: isBoolean$1,
6372
+ isBoolean: isBoolean$2,
6341
6373
  isBuffer,
6342
6374
  isDate,
6343
6375
  isElement: isElement$1,
6344
- isEmpty: isEmpty$1,
6376
+ isEmpty: isEmpty$2,
6345
6377
  isEqual: isEqual$1,
6346
6378
  isEqualWith,
6347
6379
  isError,
@@ -6474,7 +6506,7 @@ var seq = {
6474
6506
 
6475
6507
  var string = {
6476
6508
  camelCase,
6477
- capitalize,
6509
+ capitalize: capitalize$1,
6478
6510
  deburr,
6479
6511
  endsWith,
6480
6512
  escape,
@@ -7124,8 +7156,9 @@ if (symIterator) {
7124
7156
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
7125
7157
  */
7126
7158
 
7159
+ const isBoolean$1 = (val) => typeof val === "boolean";
7127
7160
  const isNumber$1 = (val) => typeof val === "number";
7128
- const isEmpty = (val) => !val && val !== 0 || isArray$1(val) && val.length === 0 || isObject$1(val) && !Object.keys(val).length;
7161
+ const isEmpty$1 = (val) => !val && val !== 0 || isArray$1(val) && val.length === 0 || isObject$1(val) && !Object.keys(val).length;
7129
7162
 
7130
7163
  const keysOf = (arr) => Object.keys(arr);
7131
7164
 
@@ -12961,7 +12994,7 @@ var _export_sfc$1 = (sfc, props) => {
12961
12994
  return target;
12962
12995
  };
12963
12996
 
12964
- const _hoisted_1$b = {
12997
+ const _hoisted_1$c = {
12965
12998
  key: 0,
12966
12999
  class: "hzzt-title flex align-items-center"
12967
13000
  };
@@ -12970,11 +13003,11 @@ const _hoisted_2$a = {
12970
13003
  class: "decorative-line"
12971
13004
  };
12972
13005
  const _hoisted_3$7 = { class: "label-name" };
12973
- const __default__$s = defineComponent({
13006
+ const __default__$B = defineComponent({
12974
13007
  name: "HzztTitle"
12975
13008
  });
12976
- const _sfc_main$G = /* @__PURE__ */ defineComponent({
12977
- ...__default__$s,
13009
+ const _sfc_main$S = /* @__PURE__ */ defineComponent({
13010
+ ...__default__$B,
12978
13011
  props: titleProps,
12979
13012
  setup(__props) {
12980
13013
  const props = __props;
@@ -12984,7 +13017,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
12984
13017
  return props.label || ((_c = (_b = (_a = slots == null ? void 0 : slots.default) == null ? void 0 : _a.call(slots)) == null ? void 0 : _b[0]) == null ? void 0 : _c.children);
12985
13018
  });
12986
13019
  return (_ctx, _cache) => {
12987
- return unref(showLabel) ? (openBlock(), createElementBlock("div", _hoisted_1$b, [
13020
+ return unref(showLabel) ? (openBlock(), createElementBlock("div", _hoisted_1$c, [
12988
13021
  _ctx.sideline ? (openBlock(), createElementBlock("span", _hoisted_2$a)) : createCommentVNode("v-if", true),
12989
13022
  renderSlot(_ctx.$slots, "before"),
12990
13023
  createElementVNode("label", _hoisted_3$7, [
@@ -12996,7 +13029,7 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
12996
13029
  };
12997
13030
  }
12998
13031
  });
12999
- var HzztTitle$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$G, [["__file", "title.vue"]]);
13032
+ var HzztTitle$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$S, [["__file", "title.vue"]]);
13000
13033
 
13001
13034
  const HzztTitle = withInstall$1(HzztTitle$1);
13002
13035
 
@@ -13078,11 +13111,13 @@ const useNamespace = (block, namespaceOverrides) => {
13078
13111
  const isUndefined = (val) => val === void 0;
13079
13112
  const isBoolean = (val) => typeof val === "boolean";
13080
13113
  const isNumber = (val) => typeof val === "number";
13114
+ const isEmpty = (val) => !val && val !== 0 || isArray$1(val) && val.length === 0 || isObject$1(val) && !Object.keys(val).length;
13081
13115
  const isElement = (e) => {
13082
13116
  if (typeof Element === "undefined")
13083
13117
  return false;
13084
13118
  return e instanceof Element;
13085
13119
  };
13120
+ const isPropAbsent = (prop) => isNil(prop);
13086
13121
  const isStringNumber = (val) => {
13087
13122
  if (!isString$1(val)) {
13088
13123
  return false;
@@ -13517,12 +13552,12 @@ const iconProps = buildProps({
13517
13552
  }
13518
13553
  });
13519
13554
 
13520
- const __default__$r = defineComponent({
13555
+ const __default__$A = defineComponent({
13521
13556
  name: "ElIcon",
13522
13557
  inheritAttrs: false
13523
13558
  });
13524
- const _sfc_main$F = /* @__PURE__ */ defineComponent({
13525
- ...__default__$r,
13559
+ const _sfc_main$R = /* @__PURE__ */ defineComponent({
13560
+ ...__default__$A,
13526
13561
  props: iconProps,
13527
13562
  setup(__props) {
13528
13563
  const props = __props;
@@ -13546,7 +13581,7 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
13546
13581
  };
13547
13582
  }
13548
13583
  });
13549
- var Icon = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__file", "icon.vue"]]);
13584
+ var Icon = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["__file", "icon.vue"]]);
13550
13585
 
13551
13586
  const ElIcon = withInstall(Icon);
13552
13587
 
@@ -13984,12 +14019,12 @@ function useCursor(input) {
13984
14019
  return [recordCursor, setCursor];
13985
14020
  }
13986
14021
 
13987
- const __default__$q = defineComponent({
14022
+ const __default__$z = defineComponent({
13988
14023
  name: "ElInput",
13989
14024
  inheritAttrs: false
13990
14025
  });
13991
- const _sfc_main$E = /* @__PURE__ */ defineComponent({
13992
- ...__default__$q,
14026
+ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
14027
+ ...__default__$z,
13993
14028
  props: inputProps,
13994
14029
  emits: inputEmits,
13995
14030
  setup(__props, { expose, emit }) {
@@ -14394,7 +14429,7 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
14394
14429
  };
14395
14430
  }
14396
14431
  });
14397
- var Input = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__file", "input.vue"]]);
14432
+ var Input = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["__file", "input.vue"]]);
14398
14433
 
14399
14434
  const ElInput = withInstall(Input);
14400
14435
 
@@ -14443,8 +14478,8 @@ const thumbProps = buildProps({
14443
14478
  always: Boolean
14444
14479
  });
14445
14480
 
14446
- const COMPONENT_NAME$2 = "Thumb";
14447
- const _sfc_main$D = /* @__PURE__ */ defineComponent({
14481
+ const COMPONENT_NAME$3 = "Thumb";
14482
+ const _sfc_main$P = /* @__PURE__ */ defineComponent({
14448
14483
  __name: "thumb",
14449
14484
  props: thumbProps,
14450
14485
  setup(__props) {
@@ -14452,7 +14487,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
14452
14487
  const scrollbar = inject(scrollbarContextKey);
14453
14488
  const ns = useNamespace("scrollbar");
14454
14489
  if (!scrollbar)
14455
- throwError(COMPONENT_NAME$2, "can not inject scrollbar context");
14490
+ throwError(COMPONENT_NAME$3, "can not inject scrollbar context");
14456
14491
  const instance = ref();
14457
14492
  const thumb = ref();
14458
14493
  const thumbState = ref({});
@@ -14563,7 +14598,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
14563
14598
  };
14564
14599
  }
14565
14600
  });
14566
- var Thumb = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__file", "thumb.vue"]]);
14601
+ var Thumb = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["__file", "thumb.vue"]]);
14567
14602
 
14568
14603
  const barProps = buildProps({
14569
14604
  always: {
@@ -14576,7 +14611,7 @@ const barProps = buildProps({
14576
14611
  }
14577
14612
  });
14578
14613
 
14579
- const _sfc_main$C = /* @__PURE__ */ defineComponent({
14614
+ const _sfc_main$O = /* @__PURE__ */ defineComponent({
14580
14615
  __name: "bar",
14581
14616
  props: barProps,
14582
14617
  setup(__props, { expose }) {
@@ -14634,7 +14669,7 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
14634
14669
  };
14635
14670
  }
14636
14671
  });
14637
- var Bar = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__file", "bar.vue"]]);
14672
+ var Bar = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["__file", "bar.vue"]]);
14638
14673
 
14639
14674
  const scrollbarProps = buildProps({
14640
14675
  height: {
@@ -14690,12 +14725,12 @@ const scrollbarEmits = {
14690
14725
  }) => [scrollTop, scrollLeft].every(isNumber)
14691
14726
  };
14692
14727
 
14693
- const COMPONENT_NAME$1 = "ElScrollbar";
14694
- const __default__$p = defineComponent({
14695
- name: COMPONENT_NAME$1
14728
+ const COMPONENT_NAME$2 = "ElScrollbar";
14729
+ const __default__$y = defineComponent({
14730
+ name: COMPONENT_NAME$2
14696
14731
  });
14697
- const _sfc_main$B = /* @__PURE__ */ defineComponent({
14698
- ...__default__$p,
14732
+ const _sfc_main$N = /* @__PURE__ */ defineComponent({
14733
+ ...__default__$y,
14699
14734
  props: scrollbarProps,
14700
14735
  emits: scrollbarEmits,
14701
14736
  setup(__props, { expose, emit }) {
@@ -14847,7 +14882,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
14847
14882
  };
14848
14883
  }
14849
14884
  });
14850
- var Scrollbar = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["__file", "scrollbar.vue"]]);
14885
+ var Scrollbar = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["__file", "scrollbar.vue"]]);
14851
14886
 
14852
14887
  const ElScrollbar = withInstall(Scrollbar);
14853
14888
 
@@ -14872,12 +14907,12 @@ const popperProps = buildProps({
14872
14907
  }
14873
14908
  });
14874
14909
 
14875
- const __default__$o = defineComponent({
14910
+ const __default__$x = defineComponent({
14876
14911
  name: "ElPopper",
14877
14912
  inheritAttrs: false
14878
14913
  });
14879
- const _sfc_main$A = /* @__PURE__ */ defineComponent({
14880
- ...__default__$o,
14914
+ const _sfc_main$M = /* @__PURE__ */ defineComponent({
14915
+ ...__default__$x,
14881
14916
  props: popperProps,
14882
14917
  setup(__props, { expose }) {
14883
14918
  const props = __props;
@@ -14900,7 +14935,7 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
14900
14935
  };
14901
14936
  }
14902
14937
  });
14903
- var Popper = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["__file", "popper.vue"]]);
14938
+ var Popper = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["__file", "popper.vue"]]);
14904
14939
 
14905
14940
  const popperArrowProps = buildProps({
14906
14941
  arrowOffset: {
@@ -14909,12 +14944,12 @@ const popperArrowProps = buildProps({
14909
14944
  }
14910
14945
  });
14911
14946
 
14912
- const __default__$n = defineComponent({
14947
+ const __default__$w = defineComponent({
14913
14948
  name: "ElPopperArrow",
14914
14949
  inheritAttrs: false
14915
14950
  });
14916
- const _sfc_main$z = /* @__PURE__ */ defineComponent({
14917
- ...__default__$n,
14951
+ const _sfc_main$L = /* @__PURE__ */ defineComponent({
14952
+ ...__default__$w,
14918
14953
  props: popperArrowProps,
14919
14954
  setup(__props, { expose }) {
14920
14955
  const props = __props;
@@ -14940,7 +14975,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
14940
14975
  };
14941
14976
  }
14942
14977
  });
14943
- var ElPopperArrow = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__file", "arrow.vue"]]);
14978
+ var ElPopperArrow = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["__file", "arrow.vue"]]);
14944
14979
 
14945
14980
  const popperTriggerProps = buildProps({
14946
14981
  virtualRef: {
@@ -15019,6 +15054,21 @@ const isFocusable = (element) => {
15019
15054
  }
15020
15055
  }
15021
15056
  };
15057
+ const isLeaf = (el) => !el.getAttribute("aria-owns");
15058
+ const getSibling = (el, distance, elClass) => {
15059
+ const { parentNode } = el;
15060
+ if (!parentNode)
15061
+ return null;
15062
+ const siblings = parentNode.querySelectorAll(elClass);
15063
+ const index = Array.prototype.indexOf.call(siblings, el);
15064
+ return siblings[index + distance] || null;
15065
+ };
15066
+ const focusNode = (el) => {
15067
+ if (!el)
15068
+ return;
15069
+ el.focus();
15070
+ !isLeaf(el) && el.click();
15071
+ };
15022
15072
 
15023
15073
  const NAME = "ElOnlyChild";
15024
15074
  const OnlyChild = defineComponent({
@@ -15075,12 +15125,12 @@ function wrapTextContent(s) {
15075
15125
  }, [s]);
15076
15126
  }
15077
15127
 
15078
- const __default__$m = defineComponent({
15128
+ const __default__$v = defineComponent({
15079
15129
  name: "ElPopperTrigger",
15080
15130
  inheritAttrs: false
15081
15131
  });
15082
- const _sfc_main$y = /* @__PURE__ */ defineComponent({
15083
- ...__default__$m,
15132
+ const _sfc_main$K = /* @__PURE__ */ defineComponent({
15133
+ ...__default__$v,
15084
15134
  props: popperTriggerProps,
15085
15135
  setup(__props, { expose }) {
15086
15136
  const props = __props;
@@ -15191,7 +15241,7 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
15191
15241
  };
15192
15242
  }
15193
15243
  });
15194
- var ElPopperTrigger = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__file", "trigger.vue"]]);
15244
+ var ElPopperTrigger = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["__file", "trigger.vue"]]);
15195
15245
 
15196
15246
  const FOCUS_AFTER_TRAPPED = "focus-trap.focus-after-trapped";
15197
15247
  const FOCUS_AFTER_RELEASED = "focus-trap.focus-after-released";
@@ -15390,7 +15440,7 @@ const useEscapeKeydown = (handler) => {
15390
15440
  });
15391
15441
  };
15392
15442
 
15393
- const _sfc_main$x = defineComponent({
15443
+ const _sfc_main$J = defineComponent({
15394
15444
  name: "ElFocusTrap",
15395
15445
  inheritAttrs: false,
15396
15446
  props: {
@@ -15632,10 +15682,10 @@ const _sfc_main$x = defineComponent({
15632
15682
  };
15633
15683
  }
15634
15684
  });
15635
- function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
15685
+ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
15636
15686
  return renderSlot(_ctx.$slots, "default", { handleKeydown: _ctx.onKeydown });
15637
15687
  }
15638
- var ElFocusTrap = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["render", _sfc_render$9], ["__file", "focus-trap.vue"]]);
15688
+ var ElFocusTrap = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$c], ["__file", "focus-trap.vue"]]);
15639
15689
 
15640
15690
  var E="top",R="bottom",W="right",P="left",me="auto",G=[E,R,W,P],U="start",J="end",Xe="clippingParents",je="viewport",K="popper",Ye="reference",De=G.reduce(function(t,e){return t.concat([e+"-"+U,e+"-"+J])},[]),Ee=[].concat(G,[me]).reduce(function(t,e){return t.concat([e,e+"-"+U,e+"-"+J])},[]),Ge="beforeRead",Je="read",Ke="afterRead",Qe="beforeMain",Ze="main",et="afterMain",tt="beforeWrite",nt="write",rt="afterWrite",ot=[Ge,Je,Ke,Qe,Ze,et,tt,nt,rt];function C(t){return t?(t.nodeName||"").toLowerCase():null}function H(t){if(t==null)return window;if(t.toString()!=="[object Window]"){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function Q(t){var e=H(t).Element;return t instanceof e||t instanceof Element}function B(t){var e=H(t).HTMLElement;return t instanceof e||t instanceof HTMLElement}function Pe(t){if(typeof ShadowRoot=="undefined")return !1;var e=H(t).ShadowRoot;return t instanceof e||t instanceof ShadowRoot}function Mt(t){var e=t.state;Object.keys(e.elements).forEach(function(n){var r=e.styles[n]||{},o=e.attributes[n]||{},i=e.elements[n];!B(i)||!C(i)||(Object.assign(i.style,r),Object.keys(o).forEach(function(a){var s=o[a];s===!1?i.removeAttribute(a):i.setAttribute(a,s===!0?"":s);}));});}function Rt(t){var e=t.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow),function(){Object.keys(e.elements).forEach(function(r){var o=e.elements[r],i=e.attributes[r]||{},a=Object.keys(e.styles.hasOwnProperty(r)?e.styles[r]:n[r]),s=a.reduce(function(f,c){return f[c]="",f},{});!B(o)||!C(o)||(Object.assign(o.style,s),Object.keys(i).forEach(function(f){o.removeAttribute(f);}));});}}var Ae={name:"applyStyles",enabled:!0,phase:"write",fn:Mt,effect:Rt,requires:["computeStyles"]};function q(t){return t.split("-")[0]}var X=Math.max,ve=Math.min,Z=Math.round;function ee(t,e){e===void 0&&(e=!1);var n=t.getBoundingClientRect(),r=1,o=1;if(B(t)&&e){var i=t.offsetHeight,a=t.offsetWidth;a>0&&(r=Z(n.width)/a||1),i>0&&(o=Z(n.height)/i||1);}return {width:n.width/r,height:n.height/o,top:n.top/o,right:n.right/r,bottom:n.bottom/o,left:n.left/r,x:n.left/r,y:n.top/o}}function ke(t){var e=ee(t),n=t.offsetWidth,r=t.offsetHeight;return Math.abs(e.width-n)<=1&&(n=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:t.offsetLeft,y:t.offsetTop,width:n,height:r}}function it(t,e){var n=e.getRootNode&&e.getRootNode();if(t.contains(e))return !0;if(n&&Pe(n)){var r=e;do{if(r&&t.isSameNode(r))return !0;r=r.parentNode||r.host;}while(r)}return !1}function N(t){return H(t).getComputedStyle(t)}function Wt(t){return ["table","td","th"].indexOf(C(t))>=0}function I(t){return ((Q(t)?t.ownerDocument:t.document)||window.document).documentElement}function ge(t){return C(t)==="html"?t:t.assignedSlot||t.parentNode||(Pe(t)?t.host:null)||I(t)}function at(t){return !B(t)||N(t).position==="fixed"?null:t.offsetParent}function Bt(t){var e=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,n=navigator.userAgent.indexOf("Trident")!==-1;if(n&&B(t)){var r=N(t);if(r.position==="fixed")return null}var o=ge(t);for(Pe(o)&&(o=o.host);B(o)&&["html","body"].indexOf(C(o))<0;){var i=N(o);if(i.transform!=="none"||i.perspective!=="none"||i.contain==="paint"||["transform","perspective"].indexOf(i.willChange)!==-1||e&&i.willChange==="filter"||e&&i.filter&&i.filter!=="none")return o;o=o.parentNode;}return null}function se(t){for(var e=H(t),n=at(t);n&&Wt(n)&&N(n).position==="static";)n=at(n);return n&&(C(n)==="html"||C(n)==="body"&&N(n).position==="static")?e:n||Bt(t)||e}function Le(t){return ["top","bottom"].indexOf(t)>=0?"x":"y"}function fe(t,e,n){return X(t,ve(e,n))}function St(t,e,n){var r=fe(t,e,n);return r>n?n:r}function st(){return {top:0,right:0,bottom:0,left:0}}function ft(t){return Object.assign({},st(),t)}function ct(t,e){return e.reduce(function(n,r){return n[r]=t,n},{})}var Tt=function(t,e){return t=typeof t=="function"?t(Object.assign({},e.rects,{placement:e.placement})):t,ft(typeof t!="number"?t:ct(t,G))};function Ht(t){var e,n=t.state,r=t.name,o=t.options,i=n.elements.arrow,a=n.modifiersData.popperOffsets,s=q(n.placement),f=Le(s),c=[P,W].indexOf(s)>=0,u=c?"height":"width";if(!(!i||!a)){var m=Tt(o.padding,n),v=ke(i),l=f==="y"?E:P,h=f==="y"?R:W,p=n.rects.reference[u]+n.rects.reference[f]-a[f]-n.rects.popper[u],g=a[f]-n.rects.reference[f],x=se(i),y=x?f==="y"?x.clientHeight||0:x.clientWidth||0:0,$=p/2-g/2,d=m[l],b=y-v[u]-m[h],w=y/2-v[u]/2+$,O=fe(d,w,b),j=f;n.modifiersData[r]=(e={},e[j]=O,e.centerOffset=O-w,e);}}function Ct(t){var e=t.state,n=t.options,r=n.element,o=r===void 0?"[data-popper-arrow]":r;o!=null&&(typeof o=="string"&&(o=e.elements.popper.querySelector(o),!o)||!it(e.elements.popper,o)||(e.elements.arrow=o));}var pt={name:"arrow",enabled:!0,phase:"main",fn:Ht,effect:Ct,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function te(t){return t.split("-")[1]}var qt={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Vt(t){var e=t.x,n=t.y,r=window,o=r.devicePixelRatio||1;return {x:Z(e*o)/o||0,y:Z(n*o)/o||0}}function ut(t){var e,n=t.popper,r=t.popperRect,o=t.placement,i=t.variation,a=t.offsets,s=t.position,f=t.gpuAcceleration,c=t.adaptive,u=t.roundOffsets,m=t.isFixed,v=a.x,l=v===void 0?0:v,h=a.y,p=h===void 0?0:h,g=typeof u=="function"?u({x:l,y:p}):{x:l,y:p};l=g.x,p=g.y;var x=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),$=P,d=E,b=window;if(c){var w=se(n),O="clientHeight",j="clientWidth";if(w===H(n)&&(w=I(n),N(w).position!=="static"&&s==="absolute"&&(O="scrollHeight",j="scrollWidth")),w=w,o===E||(o===P||o===W)&&i===J){d=R;var A=m&&w===b&&b.visualViewport?b.visualViewport.height:w[O];p-=A-r.height,p*=f?1:-1;}if(o===P||(o===E||o===R)&&i===J){$=W;var k=m&&w===b&&b.visualViewport?b.visualViewport.width:w[j];l-=k-r.width,l*=f?1:-1;}}var D=Object.assign({position:s},c&&qt),S=u===!0?Vt({x:l,y:p}):{x:l,y:p};if(l=S.x,p=S.y,f){var L;return Object.assign({},D,(L={},L[d]=y?"0":"",L[$]=x?"0":"",L.transform=(b.devicePixelRatio||1)<=1?"translate("+l+"px, "+p+"px)":"translate3d("+l+"px, "+p+"px, 0)",L))}return Object.assign({},D,(e={},e[d]=y?p+"px":"",e[$]=x?l+"px":"",e.transform="",e))}function Nt(t){var e=t.state,n=t.options,r=n.gpuAcceleration,o=r===void 0?!0:r,i=n.adaptive,a=i===void 0?!0:i,s=n.roundOffsets,f=s===void 0?!0:s,c={placement:q(e.placement),variation:te(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:o,isFixed:e.options.strategy==="fixed"};e.modifiersData.popperOffsets!=null&&(e.styles.popper=Object.assign({},e.styles.popper,ut(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:a,roundOffsets:f})))),e.modifiersData.arrow!=null&&(e.styles.arrow=Object.assign({},e.styles.arrow,ut(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:f})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement});}var Me={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Nt,data:{}},ye={passive:!0};function It(t){var e=t.state,n=t.instance,r=t.options,o=r.scroll,i=o===void 0?!0:o,a=r.resize,s=a===void 0?!0:a,f=H(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return i&&c.forEach(function(u){u.addEventListener("scroll",n.update,ye);}),s&&f.addEventListener("resize",n.update,ye),function(){i&&c.forEach(function(u){u.removeEventListener("scroll",n.update,ye);}),s&&f.removeEventListener("resize",n.update,ye);}}var Re={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:It,data:{}},_t={left:"right",right:"left",bottom:"top",top:"bottom"};function be(t){return t.replace(/left|right|bottom|top/g,function(e){return _t[e]})}var zt={start:"end",end:"start"};function lt(t){return t.replace(/start|end/g,function(e){return zt[e]})}function We(t){var e=H(t),n=e.pageXOffset,r=e.pageYOffset;return {scrollLeft:n,scrollTop:r}}function Be(t){return ee(I(t)).left+We(t).scrollLeft}function Ft(t){var e=H(t),n=I(t),r=e.visualViewport,o=n.clientWidth,i=n.clientHeight,a=0,s=0;return r&&(o=r.width,i=r.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(a=r.offsetLeft,s=r.offsetTop)),{width:o,height:i,x:a+Be(t),y:s}}function Ut(t){var e,n=I(t),r=We(t),o=(e=t.ownerDocument)==null?void 0:e.body,i=X(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),a=X(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),s=-r.scrollLeft+Be(t),f=-r.scrollTop;return N(o||n).direction==="rtl"&&(s+=X(n.clientWidth,o?o.clientWidth:0)-i),{width:i,height:a,x:s,y:f}}function Se(t){var e=N(t),n=e.overflow,r=e.overflowX,o=e.overflowY;return /auto|scroll|overlay|hidden/.test(n+o+r)}function dt(t){return ["html","body","#document"].indexOf(C(t))>=0?t.ownerDocument.body:B(t)&&Se(t)?t:dt(ge(t))}function ce(t,e){var n;e===void 0&&(e=[]);var r=dt(t),o=r===((n=t.ownerDocument)==null?void 0:n.body),i=H(r),a=o?[i].concat(i.visualViewport||[],Se(r)?r:[]):r,s=e.concat(a);return o?s:s.concat(ce(ge(a)))}function Te(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Xt(t){var e=ee(t);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}function ht(t,e){return e===je?Te(Ft(t)):Q(e)?Xt(e):Te(Ut(I(t)))}function Yt(t){var e=ce(ge(t)),n=["absolute","fixed"].indexOf(N(t).position)>=0,r=n&&B(t)?se(t):t;return Q(r)?e.filter(function(o){return Q(o)&&it(o,r)&&C(o)!=="body"}):[]}function Gt(t,e,n){var r=e==="clippingParents"?Yt(t):[].concat(e),o=[].concat(r,[n]),i=o[0],a=o.reduce(function(s,f){var c=ht(t,f);return s.top=X(c.top,s.top),s.right=ve(c.right,s.right),s.bottom=ve(c.bottom,s.bottom),s.left=X(c.left,s.left),s},ht(t,i));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function mt(t){var e=t.reference,n=t.element,r=t.placement,o=r?q(r):null,i=r?te(r):null,a=e.x+e.width/2-n.width/2,s=e.y+e.height/2-n.height/2,f;switch(o){case E:f={x:a,y:e.y-n.height};break;case R:f={x:a,y:e.y+e.height};break;case W:f={x:e.x+e.width,y:s};break;case P:f={x:e.x-n.width,y:s};break;default:f={x:e.x,y:e.y};}var c=o?Le(o):null;if(c!=null){var u=c==="y"?"height":"width";switch(i){case U:f[c]=f[c]-(e[u]/2-n[u]/2);break;case J:f[c]=f[c]+(e[u]/2-n[u]/2);break}}return f}function ne(t,e){e===void 0&&(e={});var n=e,r=n.placement,o=r===void 0?t.placement:r,i=n.boundary,a=i===void 0?Xe:i,s=n.rootBoundary,f=s===void 0?je:s,c=n.elementContext,u=c===void 0?K:c,m=n.altBoundary,v=m===void 0?!1:m,l=n.padding,h=l===void 0?0:l,p=ft(typeof h!="number"?h:ct(h,G)),g=u===K?Ye:K,x=t.rects.popper,y=t.elements[v?g:u],$=Gt(Q(y)?y:y.contextElement||I(t.elements.popper),a,f),d=ee(t.elements.reference),b=mt({reference:d,element:x,strategy:"absolute",placement:o}),w=Te(Object.assign({},x,b)),O=u===K?w:d,j={top:$.top-O.top+p.top,bottom:O.bottom-$.bottom+p.bottom,left:$.left-O.left+p.left,right:O.right-$.right+p.right},A=t.modifiersData.offset;if(u===K&&A){var k=A[o];Object.keys(j).forEach(function(D){var S=[W,R].indexOf(D)>=0?1:-1,L=[E,R].indexOf(D)>=0?"y":"x";j[D]+=k[L]*S;});}return j}function Jt(t,e){e===void 0&&(e={});var n=e,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,f=n.allowedAutoPlacements,c=f===void 0?Ee:f,u=te(r),m=u?s?De:De.filter(function(h){return te(h)===u}):G,v=m.filter(function(h){return c.indexOf(h)>=0});v.length===0&&(v=m);var l=v.reduce(function(h,p){return h[p]=ne(t,{placement:p,boundary:o,rootBoundary:i,padding:a})[q(p)],h},{});return Object.keys(l).sort(function(h,p){return l[h]-l[p]})}function Kt(t){if(q(t)===me)return [];var e=be(t);return [lt(t),e,lt(e)]}function Qt(t){var e=t.state,n=t.options,r=t.name;if(!e.modifiersData[r]._skip){for(var o=n.mainAxis,i=o===void 0?!0:o,a=n.altAxis,s=a===void 0?!0:a,f=n.fallbackPlacements,c=n.padding,u=n.boundary,m=n.rootBoundary,v=n.altBoundary,l=n.flipVariations,h=l===void 0?!0:l,p=n.allowedAutoPlacements,g=e.options.placement,x=q(g),y=x===g,$=f||(y||!h?[be(g)]:Kt(g)),d=[g].concat($).reduce(function(z,V){return z.concat(q(V)===me?Jt(e,{placement:V,boundary:u,rootBoundary:m,padding:c,flipVariations:h,allowedAutoPlacements:p}):V)},[]),b=e.rects.reference,w=e.rects.popper,O=new Map,j=!0,A=d[0],k=0;k<d.length;k++){var D=d[k],S=q(D),L=te(D)===U,re=[E,R].indexOf(S)>=0,oe=re?"width":"height",M=ne(e,{placement:D,boundary:u,rootBoundary:m,altBoundary:v,padding:c}),T=re?L?W:P:L?R:E;b[oe]>w[oe]&&(T=be(T));var pe=be(T),_=[];if(i&&_.push(M[S]<=0),s&&_.push(M[T]<=0,M[pe]<=0),_.every(function(z){return z})){A=D,j=!1;break}O.set(D,_);}if(j)for(var ue=h?3:1,xe=function(z){var V=d.find(function(de){var ae=O.get(de);if(ae)return ae.slice(0,z).every(function(Y){return Y})});if(V)return A=V,"break"},ie=ue;ie>0;ie--){var le=xe(ie);if(le==="break")break}e.placement!==A&&(e.modifiersData[r]._skip=!0,e.placement=A,e.reset=!0);}}var vt={name:"flip",enabled:!0,phase:"main",fn:Qt,requiresIfExists:["offset"],data:{_skip:!1}};function gt(t,e,n){return n===void 0&&(n={x:0,y:0}),{top:t.top-e.height-n.y,right:t.right-e.width+n.x,bottom:t.bottom-e.height+n.y,left:t.left-e.width-n.x}}function yt(t){return [E,W,R,P].some(function(e){return t[e]>=0})}function Zt(t){var e=t.state,n=t.name,r=e.rects.reference,o=e.rects.popper,i=e.modifiersData.preventOverflow,a=ne(e,{elementContext:"reference"}),s=ne(e,{altBoundary:!0}),f=gt(a,r),c=gt(s,o,i),u=yt(f),m=yt(c);e.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:m},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":m});}var bt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Zt};function en(t,e,n){var r=q(t),o=[P,E].indexOf(r)>=0?-1:1,i=typeof n=="function"?n(Object.assign({},e,{placement:t})):n,a=i[0],s=i[1];return a=a||0,s=(s||0)*o,[P,W].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}function tn(t){var e=t.state,n=t.options,r=t.name,o=n.offset,i=o===void 0?[0,0]:o,a=Ee.reduce(function(u,m){return u[m]=en(m,e.rects,i),u},{}),s=a[e.placement],f=s.x,c=s.y;e.modifiersData.popperOffsets!=null&&(e.modifiersData.popperOffsets.x+=f,e.modifiersData.popperOffsets.y+=c),e.modifiersData[r]=a;}var wt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:tn};function nn(t){var e=t.state,n=t.name;e.modifiersData[n]=mt({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement});}var He={name:"popperOffsets",enabled:!0,phase:"read",fn:nn,data:{}};function rn(t){return t==="x"?"y":"x"}function on(t){var e=t.state,n=t.options,r=t.name,o=n.mainAxis,i=o===void 0?!0:o,a=n.altAxis,s=a===void 0?!1:a,f=n.boundary,c=n.rootBoundary,u=n.altBoundary,m=n.padding,v=n.tether,l=v===void 0?!0:v,h=n.tetherOffset,p=h===void 0?0:h,g=ne(e,{boundary:f,rootBoundary:c,padding:m,altBoundary:u}),x=q(e.placement),y=te(e.placement),$=!y,d=Le(x),b=rn(d),w=e.modifiersData.popperOffsets,O=e.rects.reference,j=e.rects.popper,A=typeof p=="function"?p(Object.assign({},e.rects,{placement:e.placement})):p,k=typeof A=="number"?{mainAxis:A,altAxis:A}:Object.assign({mainAxis:0,altAxis:0},A),D=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,S={x:0,y:0};if(w){if(i){var L,re=d==="y"?E:P,oe=d==="y"?R:W,M=d==="y"?"height":"width",T=w[d],pe=T+g[re],_=T-g[oe],ue=l?-j[M]/2:0,xe=y===U?O[M]:j[M],ie=y===U?-j[M]:-O[M],le=e.elements.arrow,z=l&&le?ke(le):{width:0,height:0},V=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:st(),de=V[re],ae=V[oe],Y=fe(0,O[M],z[M]),jt=$?O[M]/2-ue-Y-de-k.mainAxis:xe-Y-de-k.mainAxis,Dt=$?-O[M]/2+ue+Y+ae+k.mainAxis:ie+Y+ae+k.mainAxis,Oe=e.elements.arrow&&se(e.elements.arrow),Et=Oe?d==="y"?Oe.clientTop||0:Oe.clientLeft||0:0,Ce=(L=D==null?void 0:D[d])!=null?L:0,Pt=T+jt-Ce-Et,At=T+Dt-Ce,qe=fe(l?ve(pe,Pt):pe,T,l?X(_,At):_);w[d]=qe,S[d]=qe-T;}if(s){var Ve,kt=d==="x"?E:P,Lt=d==="x"?R:W,F=w[b],he=b==="y"?"height":"width",Ne=F+g[kt],Ie=F-g[Lt],$e=[E,P].indexOf(x)!==-1,_e=(Ve=D==null?void 0:D[b])!=null?Ve:0,ze=$e?Ne:F-O[he]-j[he]-_e+k.altAxis,Fe=$e?F+O[he]+j[he]-_e-k.altAxis:Ie,Ue=l&&$e?St(ze,F,Fe):fe(l?ze:Ne,F,l?Fe:Ie);w[b]=Ue,S[b]=Ue-F;}e.modifiersData[r]=S;}}var xt={name:"preventOverflow",enabled:!0,phase:"main",fn:on,requiresIfExists:["offset"]};function an(t){return {scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}}function sn(t){return t===H(t)||!B(t)?We(t):an(t)}function fn(t){var e=t.getBoundingClientRect(),n=Z(e.width)/t.offsetWidth||1,r=Z(e.height)/t.offsetHeight||1;return n!==1||r!==1}function cn(t,e,n){n===void 0&&(n=!1);var r=B(e),o=B(e)&&fn(e),i=I(e),a=ee(t,o),s={scrollLeft:0,scrollTop:0},f={x:0,y:0};return (r||!r&&!n)&&((C(e)!=="body"||Se(i))&&(s=sn(e)),B(e)?(f=ee(e,!0),f.x+=e.clientLeft,f.y+=e.clientTop):i&&(f.x=Be(i))),{x:a.left+s.scrollLeft-f.x,y:a.top+s.scrollTop-f.y,width:a.width,height:a.height}}function pn(t){var e=new Map,n=new Set,r=[];t.forEach(function(i){e.set(i.name,i);});function o(i){n.add(i.name);var a=[].concat(i.requires||[],i.requiresIfExists||[]);a.forEach(function(s){if(!n.has(s)){var f=e.get(s);f&&o(f);}}),r.push(i);}return t.forEach(function(i){n.has(i.name)||o(i);}),r}function un(t){var e=pn(t);return ot.reduce(function(n,r){return n.concat(e.filter(function(o){return o.phase===r}))},[])}function ln(t){var e;return function(){return e||(e=new Promise(function(n){Promise.resolve().then(function(){e=void 0,n(t());});})),e}}function dn(t){var e=t.reduce(function(n,r){var o=n[r.name];return n[r.name]=o?Object.assign({},o,r,{options:Object.assign({},o.options,r.options),data:Object.assign({},o.data,r.data)}):r,n},{});return Object.keys(e).map(function(n){return e[n]})}var Ot={placement:"bottom",modifiers:[],strategy:"absolute"};function $t(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return !e.some(function(r){return !(r&&typeof r.getBoundingClientRect=="function")})}function we(t){t===void 0&&(t={});var e=t,n=e.defaultModifiers,r=n===void 0?[]:n,o=e.defaultOptions,i=o===void 0?Ot:o;return function(a,s,f){f===void 0&&(f=i);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},Ot,i),modifiersData:{},elements:{reference:a,popper:s},attributes:{},styles:{}},u=[],m=!1,v={state:c,setOptions:function(p){var g=typeof p=="function"?p(c.options):p;h(),c.options=Object.assign({},i,c.options,g),c.scrollParents={reference:Q(a)?ce(a):a.contextElement?ce(a.contextElement):[],popper:ce(s)};var x=un(dn([].concat(r,c.options.modifiers)));return c.orderedModifiers=x.filter(function(y){return y.enabled}),l(),v.update()},forceUpdate:function(){if(!m){var p=c.elements,g=p.reference,x=p.popper;if($t(g,x)){c.rects={reference:cn(g,se(x),c.options.strategy==="fixed"),popper:ke(x)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(j){return c.modifiersData[j.name]=Object.assign({},j.data)});for(var y=0;y<c.orderedModifiers.length;y++){if(c.reset===!0){c.reset=!1,y=-1;continue}var $=c.orderedModifiers[y],d=$.fn,b=$.options,w=b===void 0?{}:b,O=$.name;typeof d=="function"&&(c=d({state:c,options:w,name:O,instance:v})||c);}}}},update:ln(function(){return new Promise(function(p){v.forceUpdate(),p(c);})}),destroy:function(){h(),m=!0;}};if(!$t(a,s))return v;v.setOptions(f).then(function(p){!m&&f.onFirstUpdate&&f.onFirstUpdate(p);});function l(){c.orderedModifiers.forEach(function(p){var g=p.name,x=p.options,y=x===void 0?{}:x,$=p.effect;if(typeof $=="function"){var d=$({state:c,name:g,instance:v,options:y}),b=function(){};u.push(d||b);}});}function h(){u.forEach(function(p){return p()}),u=[];}return v}}we();var mn=[Re,He,Me,Ae];we({defaultModifiers:mn});var gn=[Re,He,Me,Ae,wt,vt,xt,pt,bt],yn=we({defaultModifiers:gn});
15641
15691
 
@@ -16014,11 +16064,11 @@ const usePopperContentDOM = (props, {
16014
16064
  };
16015
16065
  };
16016
16066
 
16017
- const __default__$l = defineComponent({
16067
+ const __default__$u = defineComponent({
16018
16068
  name: "ElPopperContent"
16019
16069
  });
16020
- const _sfc_main$w = /* @__PURE__ */ defineComponent({
16021
- ...__default__$l,
16070
+ const _sfc_main$I = /* @__PURE__ */ defineComponent({
16071
+ ...__default__$u,
16022
16072
  props: popperContentProps,
16023
16073
  emits: popperContentEmits,
16024
16074
  setup(__props, { expose, emit }) {
@@ -16134,7 +16184,7 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
16134
16184
  };
16135
16185
  }
16136
16186
  });
16137
- var ElPopperContent = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__file", "content.vue"]]);
16187
+ var ElPopperContent = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["__file", "content.vue"]]);
16138
16188
 
16139
16189
  const ElPopper = withInstall(Popper);
16140
16190
 
@@ -16412,11 +16462,11 @@ const composeEventHandlers = (theirsHandler, oursHandler, { checkForDefaultPreve
16412
16462
  return handleEvent;
16413
16463
  };
16414
16464
 
16415
- const __default__$k = defineComponent({
16465
+ const __default__$t = defineComponent({
16416
16466
  name: "ElTooltipTrigger"
16417
16467
  });
16418
- const _sfc_main$v = /* @__PURE__ */ defineComponent({
16419
- ...__default__$k,
16468
+ const _sfc_main$H = /* @__PURE__ */ defineComponent({
16469
+ ...__default__$t,
16420
16470
  props: useTooltipTriggerProps,
16421
16471
  setup(__props, { expose }) {
16422
16472
  const props = __props;
@@ -16475,7 +16525,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
16475
16525
  };
16476
16526
  }
16477
16527
  });
16478
- var ElTooltipTrigger = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__file", "trigger.vue"]]);
16528
+ var ElTooltipTrigger = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["__file", "trigger.vue"]]);
16479
16529
 
16480
16530
  const teleportProps = buildProps({
16481
16531
  to: {
@@ -16485,7 +16535,7 @@ const teleportProps = buildProps({
16485
16535
  disabled: Boolean
16486
16536
  });
16487
16537
 
16488
- const _sfc_main$u = /* @__PURE__ */ defineComponent({
16538
+ const _sfc_main$G = /* @__PURE__ */ defineComponent({
16489
16539
  __name: "teleport",
16490
16540
  props: teleportProps,
16491
16541
  setup(__props) {
@@ -16499,7 +16549,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
16499
16549
  };
16500
16550
  }
16501
16551
  });
16502
- var Teleport = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__file", "teleport.vue"]]);
16552
+ var Teleport = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["__file", "teleport.vue"]]);
16503
16553
 
16504
16554
  const ElTeleport = withInstall(Teleport);
16505
16555
 
@@ -16536,12 +16586,12 @@ const usePopperContainer = () => {
16536
16586
  };
16537
16587
  };
16538
16588
 
16539
- const __default__$j = defineComponent({
16589
+ const __default__$s = defineComponent({
16540
16590
  name: "ElTooltipContent",
16541
16591
  inheritAttrs: false
16542
16592
  });
16543
- const _sfc_main$t = /* @__PURE__ */ defineComponent({
16544
- ...__default__$j,
16593
+ const _sfc_main$F = /* @__PURE__ */ defineComponent({
16594
+ ...__default__$s,
16545
16595
  props: useTooltipContentProps,
16546
16596
  setup(__props, { expose }) {
16547
16597
  const props = __props;
@@ -16712,13 +16762,13 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
16712
16762
  };
16713
16763
  }
16714
16764
  });
16715
- var ElTooltipContent = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__file", "content.vue"]]);
16765
+ var ElTooltipContent = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__file", "content.vue"]]);
16716
16766
 
16717
- const __default__$i = defineComponent({
16767
+ const __default__$r = defineComponent({
16718
16768
  name: "ElTooltip"
16719
16769
  });
16720
- const _sfc_main$s = /* @__PURE__ */ defineComponent({
16721
- ...__default__$i,
16770
+ const _sfc_main$E = /* @__PURE__ */ defineComponent({
16771
+ ...__default__$r,
16722
16772
  props: useTooltipProps,
16723
16773
  emits: tooltipEmits,
16724
16774
  setup(__props, { expose, emit }) {
@@ -16868,7 +16918,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
16868
16918
  };
16869
16919
  }
16870
16920
  });
16871
- var Tooltip$1 = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__file", "tooltip.vue"]]);
16921
+ var Tooltip$1 = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__file", "tooltip.vue"]]);
16872
16922
 
16873
16923
  const ElTooltip = withInstall(Tooltip$1);
16874
16924
 
@@ -17942,11 +17992,11 @@ function useButtonCustomStyle(props) {
17942
17992
  });
17943
17993
  }
17944
17994
 
17945
- const __default__$h = defineComponent({
17995
+ const __default__$q = defineComponent({
17946
17996
  name: "ElButton"
17947
17997
  });
17948
- const _sfc_main$r = /* @__PURE__ */ defineComponent({
17949
- ...__default__$h,
17998
+ const _sfc_main$D = /* @__PURE__ */ defineComponent({
17999
+ ...__default__$q,
17950
18000
  props: buttonProps,
17951
18001
  emits: buttonEmits,
17952
18002
  setup(__props, { expose, emit }) {
@@ -18012,18 +18062,18 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
18012
18062
  };
18013
18063
  }
18014
18064
  });
18015
- var Button = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__file", "button.vue"]]);
18065
+ var Button = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__file", "button.vue"]]);
18016
18066
 
18017
18067
  const buttonGroupProps = {
18018
18068
  size: buttonProps.size,
18019
18069
  type: buttonProps.type
18020
18070
  };
18021
18071
 
18022
- const __default__$g = defineComponent({
18072
+ const __default__$p = defineComponent({
18023
18073
  name: "ElButtonGroup"
18024
18074
  });
18025
- const _sfc_main$q = /* @__PURE__ */ defineComponent({
18026
- ...__default__$g,
18075
+ const _sfc_main$C = /* @__PURE__ */ defineComponent({
18076
+ ...__default__$p,
18027
18077
  props: buttonGroupProps,
18028
18078
  setup(__props) {
18029
18079
  const props = __props;
@@ -18041,7 +18091,7 @@ const _sfc_main$q = /* @__PURE__ */ defineComponent({
18041
18091
  };
18042
18092
  }
18043
18093
  });
18044
- var ButtonGroup = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__file", "button-group.vue"]]);
18094
+ var ButtonGroup = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__file", "button-group.vue"]]);
18045
18095
 
18046
18096
  const ElButton = withInstall(Button, {
18047
18097
  ButtonGroup
@@ -18050,84 +18100,1837 @@ withNoopInstall(ButtonGroup);
18050
18100
 
18051
18101
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
18052
18102
 
18053
- const escapeStringRegexp = (string = "") => string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
18054
-
18055
- const tagProps = buildProps({
18056
- type: {
18057
- type: String,
18058
- values: ["primary", "success", "info", "warning", "danger"],
18059
- default: "primary"
18103
+ const checkboxProps = {
18104
+ modelValue: {
18105
+ type: [Number, String, Boolean],
18106
+ default: void 0
18060
18107
  },
18061
- closable: Boolean,
18062
- disableTransitions: Boolean,
18063
- hit: Boolean,
18064
- color: String,
18065
- size: {
18108
+ label: {
18109
+ type: [String, Boolean, Number, Object],
18110
+ default: void 0
18111
+ },
18112
+ value: {
18113
+ type: [String, Boolean, Number, Object],
18114
+ default: void 0
18115
+ },
18116
+ indeterminate: Boolean,
18117
+ disabled: Boolean,
18118
+ checked: Boolean,
18119
+ name: {
18066
18120
  type: String,
18067
- values: componentSizes
18121
+ default: void 0
18068
18122
  },
18069
- effect: {
18123
+ trueValue: {
18124
+ type: [String, Number],
18125
+ default: void 0
18126
+ },
18127
+ falseValue: {
18128
+ type: [String, Number],
18129
+ default: void 0
18130
+ },
18131
+ trueLabel: {
18132
+ type: [String, Number],
18133
+ default: void 0
18134
+ },
18135
+ falseLabel: {
18136
+ type: [String, Number],
18137
+ default: void 0
18138
+ },
18139
+ id: {
18070
18140
  type: String,
18071
- values: ["dark", "light", "plain"],
18072
- default: "light"
18141
+ default: void 0
18073
18142
  },
18074
- round: Boolean
18075
- });
18076
- const tagEmits = {
18077
- close: (evt) => evt instanceof MouseEvent,
18078
- click: (evt) => evt instanceof MouseEvent
18143
+ border: Boolean,
18144
+ size: useSizeProp,
18145
+ tabindex: [String, Number],
18146
+ validateEvent: {
18147
+ type: Boolean,
18148
+ default: true
18149
+ },
18150
+ ...useAriaProps(["ariaControls"])
18151
+ };
18152
+ const checkboxEmits = {
18153
+ [UPDATE_MODEL_EVENT]: (val) => isString$1(val) || isNumber(val) || isBoolean(val),
18154
+ change: (val) => isString$1(val) || isNumber(val) || isBoolean(val)
18079
18155
  };
18080
18156
 
18081
- const __default__$f = defineComponent({
18082
- name: "ElTag"
18157
+ const checkboxGroupContextKey = Symbol("checkboxGroupContextKey");
18158
+
18159
+ const useCheckboxDisabled = ({
18160
+ model,
18161
+ isChecked
18162
+ }) => {
18163
+ const checkboxGroup = inject(checkboxGroupContextKey, void 0);
18164
+ const isLimitDisabled = computed(() => {
18165
+ var _a, _b;
18166
+ const max = (_a = checkboxGroup == null ? void 0 : checkboxGroup.max) == null ? void 0 : _a.value;
18167
+ const min = (_b = checkboxGroup == null ? void 0 : checkboxGroup.min) == null ? void 0 : _b.value;
18168
+ return !isUndefined(max) && model.value.length >= max && !isChecked.value || !isUndefined(min) && model.value.length <= min && isChecked.value;
18169
+ });
18170
+ const isDisabled = useFormDisabled(computed(() => (checkboxGroup == null ? void 0 : checkboxGroup.disabled.value) || isLimitDisabled.value));
18171
+ return {
18172
+ isDisabled,
18173
+ isLimitDisabled
18174
+ };
18175
+ };
18176
+
18177
+ const useCheckboxEvent = (props, {
18178
+ model,
18179
+ isLimitExceeded,
18180
+ hasOwnLabel,
18181
+ isDisabled,
18182
+ isLabeledByFormItem
18183
+ }) => {
18184
+ const checkboxGroup = inject(checkboxGroupContextKey, void 0);
18185
+ const { formItem } = useFormItem();
18186
+ const { emit } = getCurrentInstance();
18187
+ function getLabeledValue(value) {
18188
+ var _a, _b, _c, _d;
18189
+ return [true, props.trueValue, props.trueLabel].includes(value) ? (_b = (_a = props.trueValue) != null ? _a : props.trueLabel) != null ? _b : true : (_d = (_c = props.falseValue) != null ? _c : props.falseLabel) != null ? _d : false;
18190
+ }
18191
+ function emitChangeEvent(checked, e) {
18192
+ emit("change", getLabeledValue(checked), e);
18193
+ }
18194
+ function handleChange(e) {
18195
+ if (isLimitExceeded.value)
18196
+ return;
18197
+ const target = e.target;
18198
+ emit("change", getLabeledValue(target.checked), e);
18199
+ }
18200
+ async function onClickRoot(e) {
18201
+ if (isLimitExceeded.value)
18202
+ return;
18203
+ if (!hasOwnLabel.value && !isDisabled.value && isLabeledByFormItem.value) {
18204
+ const eventTargets = e.composedPath();
18205
+ const hasLabel = eventTargets.some((item) => item.tagName === "LABEL");
18206
+ if (!hasLabel) {
18207
+ model.value = getLabeledValue([false, props.falseValue, props.falseLabel].includes(model.value));
18208
+ await nextTick();
18209
+ emitChangeEvent(model.value, e);
18210
+ }
18211
+ }
18212
+ }
18213
+ const validateEvent = computed(() => (checkboxGroup == null ? void 0 : checkboxGroup.validateEvent) || props.validateEvent);
18214
+ watch(() => props.modelValue, () => {
18215
+ if (validateEvent.value) {
18216
+ formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn());
18217
+ }
18218
+ });
18219
+ return {
18220
+ handleChange,
18221
+ onClickRoot
18222
+ };
18223
+ };
18224
+
18225
+ const useCheckboxModel = (props) => {
18226
+ const selfModel = ref(false);
18227
+ const { emit } = getCurrentInstance();
18228
+ const checkboxGroup = inject(checkboxGroupContextKey, void 0);
18229
+ const isGroup = computed(() => isUndefined(checkboxGroup) === false);
18230
+ const isLimitExceeded = ref(false);
18231
+ const model = computed({
18232
+ get() {
18233
+ var _a, _b;
18234
+ return isGroup.value ? (_a = checkboxGroup == null ? void 0 : checkboxGroup.modelValue) == null ? void 0 : _a.value : (_b = props.modelValue) != null ? _b : selfModel.value;
18235
+ },
18236
+ set(val) {
18237
+ var _a, _b;
18238
+ if (isGroup.value && isArray$1(val)) {
18239
+ isLimitExceeded.value = ((_a = checkboxGroup == null ? void 0 : checkboxGroup.max) == null ? void 0 : _a.value) !== void 0 && val.length > (checkboxGroup == null ? void 0 : checkboxGroup.max.value) && val.length > model.value.length;
18240
+ isLimitExceeded.value === false && ((_b = checkboxGroup == null ? void 0 : checkboxGroup.changeEvent) == null ? void 0 : _b.call(checkboxGroup, val));
18241
+ } else {
18242
+ emit(UPDATE_MODEL_EVENT, val);
18243
+ selfModel.value = val;
18244
+ }
18245
+ }
18246
+ });
18247
+ return {
18248
+ model,
18249
+ isGroup,
18250
+ isLimitExceeded
18251
+ };
18252
+ };
18253
+
18254
+ const useCheckboxStatus = (props, slots, { model }) => {
18255
+ const checkboxGroup = inject(checkboxGroupContextKey, void 0);
18256
+ const isFocused = ref(false);
18257
+ const actualValue = computed(() => {
18258
+ if (!isPropAbsent(props.value)) {
18259
+ return props.value;
18260
+ }
18261
+ return props.label;
18262
+ });
18263
+ const isChecked = computed(() => {
18264
+ const value = model.value;
18265
+ if (isBoolean(value)) {
18266
+ return value;
18267
+ } else if (isArray$1(value)) {
18268
+ if (isObject$1(actualValue.value)) {
18269
+ return value.map(toRaw).some((o) => isEqual$1(o, actualValue.value));
18270
+ } else {
18271
+ return value.map(toRaw).includes(actualValue.value);
18272
+ }
18273
+ } else if (value !== null && value !== void 0) {
18274
+ return value === props.trueValue || value === props.trueLabel;
18275
+ } else {
18276
+ return !!value;
18277
+ }
18278
+ });
18279
+ const checkboxButtonSize = useFormSize(computed(() => {
18280
+ var _a;
18281
+ return (_a = checkboxGroup == null ? void 0 : checkboxGroup.size) == null ? void 0 : _a.value;
18282
+ }), {
18283
+ prop: true
18284
+ });
18285
+ const checkboxSize = useFormSize(computed(() => {
18286
+ var _a;
18287
+ return (_a = checkboxGroup == null ? void 0 : checkboxGroup.size) == null ? void 0 : _a.value;
18288
+ }));
18289
+ const hasOwnLabel = computed(() => {
18290
+ return !!slots.default || !isPropAbsent(actualValue.value);
18291
+ });
18292
+ return {
18293
+ checkboxButtonSize,
18294
+ isChecked,
18295
+ isFocused,
18296
+ checkboxSize,
18297
+ hasOwnLabel,
18298
+ actualValue
18299
+ };
18300
+ };
18301
+
18302
+ const useCheckbox = (props, slots) => {
18303
+ const { formItem: elFormItem } = useFormItem();
18304
+ const { model, isGroup, isLimitExceeded } = useCheckboxModel(props);
18305
+ const {
18306
+ isFocused,
18307
+ isChecked,
18308
+ checkboxButtonSize,
18309
+ checkboxSize,
18310
+ hasOwnLabel,
18311
+ actualValue
18312
+ } = useCheckboxStatus(props, slots, { model });
18313
+ const { isDisabled } = useCheckboxDisabled({ model, isChecked });
18314
+ const { inputId, isLabeledByFormItem } = useFormItemInputId(props, {
18315
+ formItemContext: elFormItem,
18316
+ disableIdGeneration: hasOwnLabel,
18317
+ disableIdManagement: isGroup
18318
+ });
18319
+ const { handleChange, onClickRoot } = useCheckboxEvent(props, {
18320
+ model,
18321
+ isLimitExceeded,
18322
+ hasOwnLabel,
18323
+ isDisabled,
18324
+ isLabeledByFormItem
18325
+ });
18326
+ const setStoreValue = () => {
18327
+ function addToStore() {
18328
+ var _a, _b;
18329
+ if (isArray$1(model.value) && !model.value.includes(actualValue.value)) {
18330
+ model.value.push(actualValue.value);
18331
+ } else {
18332
+ model.value = (_b = (_a = props.trueValue) != null ? _a : props.trueLabel) != null ? _b : true;
18333
+ }
18334
+ }
18335
+ props.checked && addToStore();
18336
+ };
18337
+ setStoreValue();
18338
+ useDeprecated({
18339
+ from: "label act as value",
18340
+ replacement: "value",
18341
+ version: "3.0.0",
18342
+ scope: "el-checkbox",
18343
+ ref: "https://element-plus.org/en-US/component/checkbox.html"
18344
+ }, computed(() => isGroup.value && isPropAbsent(props.value)));
18345
+ useDeprecated({
18346
+ from: "true-label",
18347
+ replacement: "true-value",
18348
+ version: "3.0.0",
18349
+ scope: "el-checkbox",
18350
+ ref: "https://element-plus.org/en-US/component/checkbox.html"
18351
+ }, computed(() => !!props.trueLabel));
18352
+ useDeprecated({
18353
+ from: "false-label",
18354
+ replacement: "false-value",
18355
+ version: "3.0.0",
18356
+ scope: "el-checkbox",
18357
+ ref: "https://element-plus.org/en-US/component/checkbox.html"
18358
+ }, computed(() => !!props.falseLabel));
18359
+ return {
18360
+ inputId,
18361
+ isLabeledByFormItem,
18362
+ isChecked,
18363
+ isDisabled,
18364
+ isFocused,
18365
+ checkboxButtonSize,
18366
+ checkboxSize,
18367
+ hasOwnLabel,
18368
+ model,
18369
+ actualValue,
18370
+ handleChange,
18371
+ onClickRoot
18372
+ };
18373
+ };
18374
+
18375
+ const __default__$o = defineComponent({
18376
+ name: "ElCheckbox"
18083
18377
  });
18084
- const _sfc_main$p = /* @__PURE__ */ defineComponent({
18085
- ...__default__$f,
18086
- props: tagProps,
18087
- emits: tagEmits,
18088
- setup(__props, { emit }) {
18378
+ const _sfc_main$B = /* @__PURE__ */ defineComponent({
18379
+ ...__default__$o,
18380
+ props: checkboxProps,
18381
+ emits: checkboxEmits,
18382
+ setup(__props) {
18089
18383
  const props = __props;
18090
- const tagSize = useFormSize();
18091
- const ns = useNamespace("tag");
18092
- const containerKls = computed(() => {
18093
- const { type, hit, effect, closable, round } = props;
18384
+ const slots = useSlots();
18385
+ const {
18386
+ inputId,
18387
+ isLabeledByFormItem,
18388
+ isChecked,
18389
+ isDisabled,
18390
+ isFocused,
18391
+ checkboxSize,
18392
+ hasOwnLabel,
18393
+ model,
18394
+ actualValue,
18395
+ handleChange,
18396
+ onClickRoot
18397
+ } = useCheckbox(props, slots);
18398
+ const ns = useNamespace("checkbox");
18399
+ const compKls = computed(() => {
18094
18400
  return [
18095
18401
  ns.b(),
18096
- ns.is("closable", closable),
18097
- ns.m(type || "primary"),
18098
- ns.m(tagSize.value),
18099
- ns.m(effect),
18100
- ns.is("hit", hit),
18101
- ns.is("round", round)
18402
+ ns.m(checkboxSize.value),
18403
+ ns.is("disabled", isDisabled.value),
18404
+ ns.is("bordered", props.border),
18405
+ ns.is("checked", isChecked.value)
18406
+ ];
18407
+ });
18408
+ const spanKls = computed(() => {
18409
+ return [
18410
+ ns.e("input"),
18411
+ ns.is("disabled", isDisabled.value),
18412
+ ns.is("checked", isChecked.value),
18413
+ ns.is("indeterminate", props.indeterminate),
18414
+ ns.is("focus", isFocused.value)
18102
18415
  ];
18103
18416
  });
18104
- const handleClose = (event) => {
18105
- emit("close", event);
18106
- };
18107
- const handleClick = (event) => {
18108
- emit("click", event);
18109
- };
18110
- const handleVNodeMounted = (vnode) => {
18111
- var _a, _b, _c;
18112
- if ((_c = (_b = (_a = vnode == null ? void 0 : vnode.component) == null ? void 0 : _a.subTree) == null ? void 0 : _b.component) == null ? void 0 : _c.bum) {
18113
- vnode.component.subTree.component.bum = null;
18114
- }
18115
- };
18116
18417
  return (_ctx, _cache) => {
18117
- return _ctx.disableTransitions ? (openBlock(), createElementBlock("span", {
18118
- key: 0,
18119
- class: normalizeClass(unref(containerKls)),
18120
- style: normalizeStyle({ backgroundColor: _ctx.color }),
18121
- onClick: handleClick
18122
- }, [
18123
- createElementVNode("span", {
18124
- class: normalizeClass(unref(ns).e("content"))
18125
- }, [
18126
- renderSlot(_ctx.$slots, "default")
18127
- ], 2),
18128
- _ctx.closable ? (openBlock(), createBlock(unref(ElIcon), {
18129
- key: 0,
18130
- class: normalizeClass(unref(ns).e("close")),
18418
+ return openBlock(), createBlock(resolveDynamicComponent(!unref(hasOwnLabel) && unref(isLabeledByFormItem) ? "span" : "label"), {
18419
+ class: normalizeClass(unref(compKls)),
18420
+ "aria-controls": _ctx.indeterminate ? _ctx.ariaControls : null,
18421
+ onClick: unref(onClickRoot)
18422
+ }, {
18423
+ default: withCtx(() => {
18424
+ var _a, _b, _c, _d;
18425
+ return [
18426
+ createElementVNode("span", {
18427
+ class: normalizeClass(unref(spanKls))
18428
+ }, [
18429
+ _ctx.trueValue || _ctx.falseValue || _ctx.trueLabel || _ctx.falseLabel ? withDirectives((openBlock(), createElementBlock("input", {
18430
+ key: 0,
18431
+ id: unref(inputId),
18432
+ "onUpdate:modelValue": ($event) => isRef(model) ? model.value = $event : null,
18433
+ class: normalizeClass(unref(ns).e("original")),
18434
+ type: "checkbox",
18435
+ indeterminate: _ctx.indeterminate,
18436
+ name: _ctx.name,
18437
+ tabindex: _ctx.tabindex,
18438
+ disabled: unref(isDisabled),
18439
+ "true-value": (_b = (_a = _ctx.trueValue) != null ? _a : _ctx.trueLabel) != null ? _b : true,
18440
+ "false-value": (_d = (_c = _ctx.falseValue) != null ? _c : _ctx.falseLabel) != null ? _d : false,
18441
+ onChange: unref(handleChange),
18442
+ onFocus: ($event) => isFocused.value = true,
18443
+ onBlur: ($event) => isFocused.value = false,
18444
+ onClick: withModifiers(() => {
18445
+ }, ["stop"])
18446
+ }, null, 42, ["id", "onUpdate:modelValue", "indeterminate", "name", "tabindex", "disabled", "true-value", "false-value", "onChange", "onFocus", "onBlur", "onClick"])), [
18447
+ [vModelCheckbox, unref(model)]
18448
+ ]) : withDirectives((openBlock(), createElementBlock("input", {
18449
+ key: 1,
18450
+ id: unref(inputId),
18451
+ "onUpdate:modelValue": ($event) => isRef(model) ? model.value = $event : null,
18452
+ class: normalizeClass(unref(ns).e("original")),
18453
+ type: "checkbox",
18454
+ indeterminate: _ctx.indeterminate,
18455
+ disabled: unref(isDisabled),
18456
+ value: unref(actualValue),
18457
+ name: _ctx.name,
18458
+ tabindex: _ctx.tabindex,
18459
+ onChange: unref(handleChange),
18460
+ onFocus: ($event) => isFocused.value = true,
18461
+ onBlur: ($event) => isFocused.value = false,
18462
+ onClick: withModifiers(() => {
18463
+ }, ["stop"])
18464
+ }, null, 42, ["id", "onUpdate:modelValue", "indeterminate", "disabled", "value", "name", "tabindex", "onChange", "onFocus", "onBlur", "onClick"])), [
18465
+ [vModelCheckbox, unref(model)]
18466
+ ]),
18467
+ createElementVNode("span", {
18468
+ class: normalizeClass(unref(ns).e("inner"))
18469
+ }, null, 2)
18470
+ ], 2),
18471
+ unref(hasOwnLabel) ? (openBlock(), createElementBlock("span", {
18472
+ key: 0,
18473
+ class: normalizeClass(unref(ns).e("label"))
18474
+ }, [
18475
+ renderSlot(_ctx.$slots, "default"),
18476
+ !_ctx.$slots.default ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
18477
+ createTextVNode(toDisplayString(_ctx.label), 1)
18478
+ ], 64)) : createCommentVNode("v-if", true)
18479
+ ], 2)) : createCommentVNode("v-if", true)
18480
+ ];
18481
+ }),
18482
+ _: 3
18483
+ }, 8, ["class", "aria-controls", "onClick"]);
18484
+ };
18485
+ }
18486
+ });
18487
+ var Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["__file", "checkbox.vue"]]);
18488
+
18489
+ const __default__$n = defineComponent({
18490
+ name: "ElCheckboxButton"
18491
+ });
18492
+ const _sfc_main$A = /* @__PURE__ */ defineComponent({
18493
+ ...__default__$n,
18494
+ props: checkboxProps,
18495
+ emits: checkboxEmits,
18496
+ setup(__props) {
18497
+ const props = __props;
18498
+ const slots = useSlots();
18499
+ const {
18500
+ isFocused,
18501
+ isChecked,
18502
+ isDisabled,
18503
+ checkboxButtonSize,
18504
+ model,
18505
+ actualValue,
18506
+ handleChange
18507
+ } = useCheckbox(props, slots);
18508
+ const checkboxGroup = inject(checkboxGroupContextKey, void 0);
18509
+ const ns = useNamespace("checkbox");
18510
+ const activeStyle = computed(() => {
18511
+ var _a, _b, _c, _d;
18512
+ const fillValue = (_b = (_a = checkboxGroup == null ? void 0 : checkboxGroup.fill) == null ? void 0 : _a.value) != null ? _b : "";
18513
+ return {
18514
+ backgroundColor: fillValue,
18515
+ borderColor: fillValue,
18516
+ color: (_d = (_c = checkboxGroup == null ? void 0 : checkboxGroup.textColor) == null ? void 0 : _c.value) != null ? _d : "",
18517
+ boxShadow: fillValue ? `-1px 0 0 0 ${fillValue}` : void 0
18518
+ };
18519
+ });
18520
+ const labelKls = computed(() => {
18521
+ return [
18522
+ ns.b("button"),
18523
+ ns.bm("button", checkboxButtonSize.value),
18524
+ ns.is("disabled", isDisabled.value),
18525
+ ns.is("checked", isChecked.value),
18526
+ ns.is("focus", isFocused.value)
18527
+ ];
18528
+ });
18529
+ return (_ctx, _cache) => {
18530
+ var _a, _b, _c, _d;
18531
+ return openBlock(), createElementBlock("label", {
18532
+ class: normalizeClass(unref(labelKls))
18533
+ }, [
18534
+ _ctx.trueValue || _ctx.falseValue || _ctx.trueLabel || _ctx.falseLabel ? withDirectives((openBlock(), createElementBlock("input", {
18535
+ key: 0,
18536
+ "onUpdate:modelValue": ($event) => isRef(model) ? model.value = $event : null,
18537
+ class: normalizeClass(unref(ns).be("button", "original")),
18538
+ type: "checkbox",
18539
+ name: _ctx.name,
18540
+ tabindex: _ctx.tabindex,
18541
+ disabled: unref(isDisabled),
18542
+ "true-value": (_b = (_a = _ctx.trueValue) != null ? _a : _ctx.trueLabel) != null ? _b : true,
18543
+ "false-value": (_d = (_c = _ctx.falseValue) != null ? _c : _ctx.falseLabel) != null ? _d : false,
18544
+ onChange: unref(handleChange),
18545
+ onFocus: ($event) => isFocused.value = true,
18546
+ onBlur: ($event) => isFocused.value = false,
18547
+ onClick: withModifiers(() => {
18548
+ }, ["stop"])
18549
+ }, null, 42, ["onUpdate:modelValue", "name", "tabindex", "disabled", "true-value", "false-value", "onChange", "onFocus", "onBlur", "onClick"])), [
18550
+ [vModelCheckbox, unref(model)]
18551
+ ]) : withDirectives((openBlock(), createElementBlock("input", {
18552
+ key: 1,
18553
+ "onUpdate:modelValue": ($event) => isRef(model) ? model.value = $event : null,
18554
+ class: normalizeClass(unref(ns).be("button", "original")),
18555
+ type: "checkbox",
18556
+ name: _ctx.name,
18557
+ tabindex: _ctx.tabindex,
18558
+ disabled: unref(isDisabled),
18559
+ value: unref(actualValue),
18560
+ onChange: unref(handleChange),
18561
+ onFocus: ($event) => isFocused.value = true,
18562
+ onBlur: ($event) => isFocused.value = false,
18563
+ onClick: withModifiers(() => {
18564
+ }, ["stop"])
18565
+ }, null, 42, ["onUpdate:modelValue", "name", "tabindex", "disabled", "value", "onChange", "onFocus", "onBlur", "onClick"])), [
18566
+ [vModelCheckbox, unref(model)]
18567
+ ]),
18568
+ _ctx.$slots.default || _ctx.label ? (openBlock(), createElementBlock("span", {
18569
+ key: 2,
18570
+ class: normalizeClass(unref(ns).be("button", "inner")),
18571
+ style: normalizeStyle(unref(isChecked) ? unref(activeStyle) : void 0)
18572
+ }, [
18573
+ renderSlot(_ctx.$slots, "default", {}, () => [
18574
+ createTextVNode(toDisplayString(_ctx.label), 1)
18575
+ ])
18576
+ ], 6)) : createCommentVNode("v-if", true)
18577
+ ], 2);
18578
+ };
18579
+ }
18580
+ });
18581
+ var CheckboxButton = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["__file", "checkbox-button.vue"]]);
18582
+
18583
+ const checkboxGroupProps = buildProps({
18584
+ modelValue: {
18585
+ type: definePropType(Array),
18586
+ default: () => []
18587
+ },
18588
+ disabled: Boolean,
18589
+ min: Number,
18590
+ max: Number,
18591
+ size: useSizeProp,
18592
+ fill: String,
18593
+ textColor: String,
18594
+ tag: {
18595
+ type: String,
18596
+ default: "div"
18597
+ },
18598
+ validateEvent: {
18599
+ type: Boolean,
18600
+ default: true
18601
+ },
18602
+ ...useAriaProps(["ariaLabel"])
18603
+ });
18604
+ const checkboxGroupEmits = {
18605
+ [UPDATE_MODEL_EVENT]: (val) => isArray$1(val),
18606
+ change: (val) => isArray$1(val)
18607
+ };
18608
+
18609
+ const __default__$m = defineComponent({
18610
+ name: "ElCheckboxGroup"
18611
+ });
18612
+ const _sfc_main$z = /* @__PURE__ */ defineComponent({
18613
+ ...__default__$m,
18614
+ props: checkboxGroupProps,
18615
+ emits: checkboxGroupEmits,
18616
+ setup(__props, { emit }) {
18617
+ const props = __props;
18618
+ const ns = useNamespace("checkbox");
18619
+ const { formItem } = useFormItem();
18620
+ const { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {
18621
+ formItemContext: formItem
18622
+ });
18623
+ const changeEvent = async (value) => {
18624
+ emit(UPDATE_MODEL_EVENT, value);
18625
+ await nextTick();
18626
+ emit("change", value);
18627
+ };
18628
+ const modelValue = computed({
18629
+ get() {
18630
+ return props.modelValue;
18631
+ },
18632
+ set(val) {
18633
+ changeEvent(val);
18634
+ }
18635
+ });
18636
+ provide(checkboxGroupContextKey, {
18637
+ ...pick(toRefs(props), [
18638
+ "size",
18639
+ "min",
18640
+ "max",
18641
+ "disabled",
18642
+ "validateEvent",
18643
+ "fill",
18644
+ "textColor"
18645
+ ]),
18646
+ modelValue,
18647
+ changeEvent
18648
+ });
18649
+ watch(() => props.modelValue, () => {
18650
+ if (props.validateEvent) {
18651
+ formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn());
18652
+ }
18653
+ });
18654
+ return (_ctx, _cache) => {
18655
+ var _a;
18656
+ return openBlock(), createBlock(resolveDynamicComponent(_ctx.tag), {
18657
+ id: unref(groupId),
18658
+ class: normalizeClass(unref(ns).b("group")),
18659
+ role: "group",
18660
+ "aria-label": !unref(isLabeledByFormItem) ? _ctx.ariaLabel || "checkbox-group" : void 0,
18661
+ "aria-labelledby": unref(isLabeledByFormItem) ? (_a = unref(formItem)) == null ? void 0 : _a.labelId : void 0
18662
+ }, {
18663
+ default: withCtx(() => [
18664
+ renderSlot(_ctx.$slots, "default")
18665
+ ]),
18666
+ _: 3
18667
+ }, 8, ["id", "class", "aria-label", "aria-labelledby"]);
18668
+ };
18669
+ }
18670
+ });
18671
+ var CheckboxGroup = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__file", "checkbox-group.vue"]]);
18672
+
18673
+ const ElCheckbox = withInstall(Checkbox, {
18674
+ CheckboxButton,
18675
+ CheckboxGroup
18676
+ });
18677
+ withNoopInstall(CheckboxButton);
18678
+ withNoopInstall(CheckboxGroup);
18679
+
18680
+ const radioPropsBase = buildProps({
18681
+ modelValue: {
18682
+ type: [String, Number, Boolean],
18683
+ default: void 0
18684
+ },
18685
+ size: useSizeProp,
18686
+ disabled: Boolean,
18687
+ label: {
18688
+ type: [String, Number, Boolean],
18689
+ default: void 0
18690
+ },
18691
+ value: {
18692
+ type: [String, Number, Boolean],
18693
+ default: void 0
18694
+ },
18695
+ name: {
18696
+ type: String,
18697
+ default: void 0
18698
+ }
18699
+ });
18700
+ const radioProps = buildProps({
18701
+ ...radioPropsBase,
18702
+ border: Boolean
18703
+ });
18704
+ const radioEmits = {
18705
+ [UPDATE_MODEL_EVENT]: (val) => isString$1(val) || isNumber(val) || isBoolean(val),
18706
+ [CHANGE_EVENT]: (val) => isString$1(val) || isNumber(val) || isBoolean(val)
18707
+ };
18708
+
18709
+ const radioGroupKey = Symbol("radioGroupKey");
18710
+
18711
+ const useRadio = (props, emit) => {
18712
+ const radioRef = ref();
18713
+ const radioGroup = inject(radioGroupKey, void 0);
18714
+ const isGroup = computed(() => !!radioGroup);
18715
+ const actualValue = computed(() => {
18716
+ if (!isPropAbsent(props.value)) {
18717
+ return props.value;
18718
+ }
18719
+ return props.label;
18720
+ });
18721
+ const modelValue = computed({
18722
+ get() {
18723
+ return isGroup.value ? radioGroup.modelValue : props.modelValue;
18724
+ },
18725
+ set(val) {
18726
+ if (isGroup.value) {
18727
+ radioGroup.changeEvent(val);
18728
+ } else {
18729
+ emit && emit(UPDATE_MODEL_EVENT, val);
18730
+ }
18731
+ radioRef.value.checked = props.modelValue === actualValue.value;
18732
+ }
18733
+ });
18734
+ const size = useFormSize(computed(() => radioGroup == null ? void 0 : radioGroup.size));
18735
+ const disabled = useFormDisabled(computed(() => radioGroup == null ? void 0 : radioGroup.disabled));
18736
+ const focus = ref(false);
18737
+ const tabIndex = computed(() => {
18738
+ return disabled.value || isGroup.value && modelValue.value !== actualValue.value ? -1 : 0;
18739
+ });
18740
+ useDeprecated({
18741
+ from: "label act as value",
18742
+ replacement: "value",
18743
+ version: "3.0.0",
18744
+ scope: "el-radio",
18745
+ ref: "https://element-plus.org/en-US/component/radio.html"
18746
+ }, computed(() => isGroup.value && isPropAbsent(props.value)));
18747
+ return {
18748
+ radioRef,
18749
+ isGroup,
18750
+ radioGroup,
18751
+ focus,
18752
+ size,
18753
+ disabled,
18754
+ tabIndex,
18755
+ modelValue,
18756
+ actualValue
18757
+ };
18758
+ };
18759
+
18760
+ const __default__$l = defineComponent({
18761
+ name: "ElRadio"
18762
+ });
18763
+ const _sfc_main$y = /* @__PURE__ */ defineComponent({
18764
+ ...__default__$l,
18765
+ props: radioProps,
18766
+ emits: radioEmits,
18767
+ setup(__props, { emit }) {
18768
+ const props = __props;
18769
+ const ns = useNamespace("radio");
18770
+ const { radioRef, radioGroup, focus, size, disabled, modelValue, actualValue } = useRadio(props, emit);
18771
+ function handleChange() {
18772
+ nextTick(() => emit("change", modelValue.value));
18773
+ }
18774
+ return (_ctx, _cache) => {
18775
+ var _a;
18776
+ return openBlock(), createElementBlock("label", {
18777
+ class: normalizeClass([
18778
+ unref(ns).b(),
18779
+ unref(ns).is("disabled", unref(disabled)),
18780
+ unref(ns).is("focus", unref(focus)),
18781
+ unref(ns).is("bordered", _ctx.border),
18782
+ unref(ns).is("checked", unref(modelValue) === unref(actualValue)),
18783
+ unref(ns).m(unref(size))
18784
+ ])
18785
+ }, [
18786
+ createElementVNode("span", {
18787
+ class: normalizeClass([
18788
+ unref(ns).e("input"),
18789
+ unref(ns).is("disabled", unref(disabled)),
18790
+ unref(ns).is("checked", unref(modelValue) === unref(actualValue))
18791
+ ])
18792
+ }, [
18793
+ withDirectives(createElementVNode("input", {
18794
+ ref_key: "radioRef",
18795
+ ref: radioRef,
18796
+ "onUpdate:modelValue": ($event) => isRef(modelValue) ? modelValue.value = $event : null,
18797
+ class: normalizeClass(unref(ns).e("original")),
18798
+ value: unref(actualValue),
18799
+ name: _ctx.name || ((_a = unref(radioGroup)) == null ? void 0 : _a.name),
18800
+ disabled: unref(disabled),
18801
+ checked: unref(modelValue) === unref(actualValue),
18802
+ type: "radio",
18803
+ onFocus: ($event) => focus.value = true,
18804
+ onBlur: ($event) => focus.value = false,
18805
+ onChange: handleChange,
18806
+ onClick: withModifiers(() => {
18807
+ }, ["stop"])
18808
+ }, null, 42, ["onUpdate:modelValue", "value", "name", "disabled", "checked", "onFocus", "onBlur", "onClick"]), [
18809
+ [vModelRadio, unref(modelValue)]
18810
+ ]),
18811
+ createElementVNode("span", {
18812
+ class: normalizeClass(unref(ns).e("inner"))
18813
+ }, null, 2)
18814
+ ], 2),
18815
+ createElementVNode("span", {
18816
+ class: normalizeClass(unref(ns).e("label")),
18817
+ onKeydown: withModifiers(() => {
18818
+ }, ["stop"])
18819
+ }, [
18820
+ renderSlot(_ctx.$slots, "default", {}, () => [
18821
+ createTextVNode(toDisplayString(_ctx.label), 1)
18822
+ ])
18823
+ ], 42, ["onKeydown"])
18824
+ ], 2);
18825
+ };
18826
+ }
18827
+ });
18828
+ var Radio = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__file", "radio.vue"]]);
18829
+
18830
+ const radioButtonProps = buildProps({
18831
+ ...radioPropsBase
18832
+ });
18833
+
18834
+ const __default__$k = defineComponent({
18835
+ name: "ElRadioButton"
18836
+ });
18837
+ const _sfc_main$x = /* @__PURE__ */ defineComponent({
18838
+ ...__default__$k,
18839
+ props: radioButtonProps,
18840
+ setup(__props) {
18841
+ const props = __props;
18842
+ const ns = useNamespace("radio");
18843
+ const { radioRef, focus, size, disabled, modelValue, radioGroup, actualValue } = useRadio(props);
18844
+ const activeStyle = computed(() => {
18845
+ return {
18846
+ backgroundColor: (radioGroup == null ? void 0 : radioGroup.fill) || "",
18847
+ borderColor: (radioGroup == null ? void 0 : radioGroup.fill) || "",
18848
+ boxShadow: (radioGroup == null ? void 0 : radioGroup.fill) ? `-1px 0 0 0 ${radioGroup.fill}` : "",
18849
+ color: (radioGroup == null ? void 0 : radioGroup.textColor) || ""
18850
+ };
18851
+ });
18852
+ return (_ctx, _cache) => {
18853
+ var _a;
18854
+ return openBlock(), createElementBlock("label", {
18855
+ class: normalizeClass([
18856
+ unref(ns).b("button"),
18857
+ unref(ns).is("active", unref(modelValue) === unref(actualValue)),
18858
+ unref(ns).is("disabled", unref(disabled)),
18859
+ unref(ns).is("focus", unref(focus)),
18860
+ unref(ns).bm("button", unref(size))
18861
+ ])
18862
+ }, [
18863
+ withDirectives(createElementVNode("input", {
18864
+ ref_key: "radioRef",
18865
+ ref: radioRef,
18866
+ "onUpdate:modelValue": ($event) => isRef(modelValue) ? modelValue.value = $event : null,
18867
+ class: normalizeClass(unref(ns).be("button", "original-radio")),
18868
+ value: unref(actualValue),
18869
+ type: "radio",
18870
+ name: _ctx.name || ((_a = unref(radioGroup)) == null ? void 0 : _a.name),
18871
+ disabled: unref(disabled),
18872
+ onFocus: ($event) => focus.value = true,
18873
+ onBlur: ($event) => focus.value = false,
18874
+ onClick: withModifiers(() => {
18875
+ }, ["stop"])
18876
+ }, null, 42, ["onUpdate:modelValue", "value", "name", "disabled", "onFocus", "onBlur", "onClick"]), [
18877
+ [vModelRadio, unref(modelValue)]
18878
+ ]),
18879
+ createElementVNode("span", {
18880
+ class: normalizeClass(unref(ns).be("button", "inner")),
18881
+ style: normalizeStyle(unref(modelValue) === unref(actualValue) ? unref(activeStyle) : {}),
18882
+ onKeydown: withModifiers(() => {
18883
+ }, ["stop"])
18884
+ }, [
18885
+ renderSlot(_ctx.$slots, "default", {}, () => [
18886
+ createTextVNode(toDisplayString(_ctx.label), 1)
18887
+ ])
18888
+ ], 46, ["onKeydown"])
18889
+ ], 2);
18890
+ };
18891
+ }
18892
+ });
18893
+ var RadioButton = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__file", "radio-button.vue"]]);
18894
+
18895
+ const radioGroupProps = buildProps({
18896
+ id: {
18897
+ type: String,
18898
+ default: void 0
18899
+ },
18900
+ size: useSizeProp,
18901
+ disabled: Boolean,
18902
+ modelValue: {
18903
+ type: [String, Number, Boolean],
18904
+ default: void 0
18905
+ },
18906
+ fill: {
18907
+ type: String,
18908
+ default: ""
18909
+ },
18910
+ textColor: {
18911
+ type: String,
18912
+ default: ""
18913
+ },
18914
+ name: {
18915
+ type: String,
18916
+ default: void 0
18917
+ },
18918
+ validateEvent: {
18919
+ type: Boolean,
18920
+ default: true
18921
+ },
18922
+ ...useAriaProps(["ariaLabel"])
18923
+ });
18924
+ const radioGroupEmits = radioEmits;
18925
+
18926
+ const __default__$j = defineComponent({
18927
+ name: "ElRadioGroup"
18928
+ });
18929
+ const _sfc_main$w = /* @__PURE__ */ defineComponent({
18930
+ ...__default__$j,
18931
+ props: radioGroupProps,
18932
+ emits: radioGroupEmits,
18933
+ setup(__props, { emit }) {
18934
+ const props = __props;
18935
+ const ns = useNamespace("radio");
18936
+ const radioId = useId();
18937
+ const radioGroupRef = ref();
18938
+ const { formItem } = useFormItem();
18939
+ const { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {
18940
+ formItemContext: formItem
18941
+ });
18942
+ const changeEvent = (value) => {
18943
+ emit(UPDATE_MODEL_EVENT, value);
18944
+ nextTick(() => emit("change", value));
18945
+ };
18946
+ onMounted(() => {
18947
+ const radios = radioGroupRef.value.querySelectorAll("[type=radio]");
18948
+ const firstLabel = radios[0];
18949
+ if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {
18950
+ firstLabel.tabIndex = 0;
18951
+ }
18952
+ });
18953
+ const name = computed(() => {
18954
+ return props.name || radioId.value;
18955
+ });
18956
+ provide(radioGroupKey, reactive({
18957
+ ...toRefs(props),
18958
+ changeEvent,
18959
+ name
18960
+ }));
18961
+ watch(() => props.modelValue, () => {
18962
+ if (props.validateEvent) {
18963
+ formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn());
18964
+ }
18965
+ });
18966
+ return (_ctx, _cache) => {
18967
+ return openBlock(), createElementBlock("div", {
18968
+ id: unref(groupId),
18969
+ ref_key: "radioGroupRef",
18970
+ ref: radioGroupRef,
18971
+ class: normalizeClass(unref(ns).b("group")),
18972
+ role: "radiogroup",
18973
+ "aria-label": !unref(isLabeledByFormItem) ? _ctx.ariaLabel || "radio-group" : void 0,
18974
+ "aria-labelledby": unref(isLabeledByFormItem) ? unref(formItem).labelId : void 0
18975
+ }, [
18976
+ renderSlot(_ctx.$slots, "default")
18977
+ ], 10, ["id", "aria-label", "aria-labelledby"]);
18978
+ };
18979
+ }
18980
+ });
18981
+ var RadioGroup = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__file", "radio-group.vue"]]);
18982
+
18983
+ const ElRadio = withInstall(Radio, {
18984
+ RadioButton,
18985
+ RadioGroup
18986
+ });
18987
+ withNoopInstall(RadioGroup);
18988
+ withNoopInstall(RadioButton);
18989
+
18990
+ var NodeContent = defineComponent({
18991
+ name: "NodeContent",
18992
+ setup() {
18993
+ const ns = useNamespace("cascader-node");
18994
+ return {
18995
+ ns
18996
+ };
18997
+ },
18998
+ render() {
18999
+ const { ns } = this;
19000
+ const { node, panel } = this.$parent;
19001
+ const { data, label } = node;
19002
+ const { renderLabelFn } = panel;
19003
+ return h("span", { class: ns.e("label") }, renderLabelFn ? renderLabelFn({ node, data }) : label);
19004
+ }
19005
+ });
19006
+
19007
+ const CASCADER_PANEL_INJECTION_KEY = Symbol();
19008
+
19009
+ const _sfc_main$v = defineComponent({
19010
+ name: "ElCascaderNode",
19011
+ components: {
19012
+ ElCheckbox,
19013
+ ElRadio,
19014
+ NodeContent,
19015
+ ElIcon,
19016
+ Check: check_default,
19017
+ Loading: loading_default,
19018
+ ArrowRight: arrow_right_default
19019
+ },
19020
+ props: {
19021
+ node: {
19022
+ type: Object,
19023
+ required: true
19024
+ },
19025
+ menuId: String
19026
+ },
19027
+ emits: ["expand"],
19028
+ setup(props, { emit }) {
19029
+ const panel = inject(CASCADER_PANEL_INJECTION_KEY);
19030
+ const ns = useNamespace("cascader-node");
19031
+ const isHoverMenu = computed(() => panel.isHoverMenu);
19032
+ const multiple = computed(() => panel.config.multiple);
19033
+ const checkStrictly = computed(() => panel.config.checkStrictly);
19034
+ const checkedNodeId = computed(() => {
19035
+ var _a;
19036
+ return (_a = panel.checkedNodes[0]) == null ? void 0 : _a.uid;
19037
+ });
19038
+ const isDisabled = computed(() => props.node.isDisabled);
19039
+ const isLeaf = computed(() => props.node.isLeaf);
19040
+ const expandable = computed(() => checkStrictly.value && !isLeaf.value || !isDisabled.value);
19041
+ const inExpandingPath = computed(() => isInPath(panel.expandingNode));
19042
+ const inCheckedPath = computed(() => checkStrictly.value && panel.checkedNodes.some(isInPath));
19043
+ const isInPath = (node) => {
19044
+ var _a;
19045
+ const { level, uid } = props.node;
19046
+ return ((_a = node == null ? void 0 : node.pathNodes[level - 1]) == null ? void 0 : _a.uid) === uid;
19047
+ };
19048
+ const doExpand = () => {
19049
+ if (inExpandingPath.value)
19050
+ return;
19051
+ panel.expandNode(props.node);
19052
+ };
19053
+ const doCheck = (checked) => {
19054
+ const { node } = props;
19055
+ if (checked === node.checked)
19056
+ return;
19057
+ panel.handleCheckChange(node, checked);
19058
+ };
19059
+ const doLoad = () => {
19060
+ panel.lazyLoad(props.node, () => {
19061
+ if (!isLeaf.value)
19062
+ doExpand();
19063
+ });
19064
+ };
19065
+ const handleHoverExpand = (e) => {
19066
+ if (!isHoverMenu.value)
19067
+ return;
19068
+ handleExpand();
19069
+ !isLeaf.value && emit("expand", e);
19070
+ };
19071
+ const handleExpand = () => {
19072
+ const { node } = props;
19073
+ if (!expandable.value || node.loading)
19074
+ return;
19075
+ node.loaded ? doExpand() : doLoad();
19076
+ };
19077
+ const handleClick = () => {
19078
+ if (isHoverMenu.value && !isLeaf.value)
19079
+ return;
19080
+ if (isLeaf.value && !isDisabled.value && !checkStrictly.value && !multiple.value) {
19081
+ handleCheck(true);
19082
+ } else {
19083
+ handleExpand();
19084
+ }
19085
+ };
19086
+ const handleSelectCheck = (checked) => {
19087
+ if (checkStrictly.value) {
19088
+ doCheck(checked);
19089
+ if (props.node.loaded) {
19090
+ doExpand();
19091
+ }
19092
+ } else {
19093
+ handleCheck(checked);
19094
+ }
19095
+ };
19096
+ const handleCheck = (checked) => {
19097
+ if (!props.node.loaded) {
19098
+ doLoad();
19099
+ } else {
19100
+ doCheck(checked);
19101
+ !checkStrictly.value && doExpand();
19102
+ }
19103
+ };
19104
+ return {
19105
+ panel,
19106
+ isHoverMenu,
19107
+ multiple,
19108
+ checkStrictly,
19109
+ checkedNodeId,
19110
+ isDisabled,
19111
+ isLeaf,
19112
+ expandable,
19113
+ inExpandingPath,
19114
+ inCheckedPath,
19115
+ ns,
19116
+ handleHoverExpand,
19117
+ handleExpand,
19118
+ handleClick,
19119
+ handleCheck,
19120
+ handleSelectCheck
19121
+ };
19122
+ }
19123
+ });
19124
+ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
19125
+ const _component_el_checkbox = resolveComponent("el-checkbox");
19126
+ const _component_el_radio = resolveComponent("el-radio");
19127
+ const _component_check = resolveComponent("check");
19128
+ const _component_el_icon = resolveComponent("el-icon");
19129
+ const _component_node_content = resolveComponent("node-content");
19130
+ const _component_loading = resolveComponent("loading");
19131
+ const _component_arrow_right = resolveComponent("arrow-right");
19132
+ return openBlock(), createElementBlock("li", {
19133
+ id: `${_ctx.menuId}-${_ctx.node.uid}`,
19134
+ role: "menuitem",
19135
+ "aria-haspopup": !_ctx.isLeaf,
19136
+ "aria-owns": _ctx.isLeaf ? null : _ctx.menuId,
19137
+ "aria-expanded": _ctx.inExpandingPath,
19138
+ tabindex: _ctx.expandable ? -1 : void 0,
19139
+ class: normalizeClass([
19140
+ _ctx.ns.b(),
19141
+ _ctx.ns.is("selectable", _ctx.checkStrictly),
19142
+ _ctx.ns.is("active", _ctx.node.checked),
19143
+ _ctx.ns.is("disabled", !_ctx.expandable),
19144
+ _ctx.inExpandingPath && "in-active-path",
19145
+ _ctx.inCheckedPath && "in-checked-path"
19146
+ ]),
19147
+ onMouseenter: _ctx.handleHoverExpand,
19148
+ onFocus: _ctx.handleHoverExpand,
19149
+ onClick: _ctx.handleClick
19150
+ }, [
19151
+ createCommentVNode(" prefix "),
19152
+ _ctx.multiple ? (openBlock(), createBlock(_component_el_checkbox, {
19153
+ key: 0,
19154
+ "model-value": _ctx.node.checked,
19155
+ indeterminate: _ctx.node.indeterminate,
19156
+ disabled: _ctx.isDisabled,
19157
+ onClick: withModifiers(() => {
19158
+ }, ["stop"]),
19159
+ "onUpdate:modelValue": _ctx.handleSelectCheck
19160
+ }, null, 8, ["model-value", "indeterminate", "disabled", "onClick", "onUpdate:modelValue"])) : _ctx.checkStrictly ? (openBlock(), createBlock(_component_el_radio, {
19161
+ key: 1,
19162
+ "model-value": _ctx.checkedNodeId,
19163
+ label: _ctx.node.uid,
19164
+ disabled: _ctx.isDisabled,
19165
+ "onUpdate:modelValue": _ctx.handleSelectCheck,
19166
+ onClick: withModifiers(() => {
19167
+ }, ["stop"])
19168
+ }, {
19169
+ default: withCtx(() => [
19170
+ createCommentVNode("\n Add an empty element to avoid render label,\n do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485\n "),
19171
+ createElementVNode("span")
19172
+ ]),
19173
+ _: 1
19174
+ }, 8, ["model-value", "label", "disabled", "onUpdate:modelValue", "onClick"])) : _ctx.isLeaf && _ctx.node.checked ? (openBlock(), createBlock(_component_el_icon, {
19175
+ key: 2,
19176
+ class: normalizeClass(_ctx.ns.e("prefix"))
19177
+ }, {
19178
+ default: withCtx(() => [
19179
+ createVNode(_component_check)
19180
+ ]),
19181
+ _: 1
19182
+ }, 8, ["class"])) : createCommentVNode("v-if", true),
19183
+ createCommentVNode(" content "),
19184
+ createVNode(_component_node_content),
19185
+ createCommentVNode(" postfix "),
19186
+ !_ctx.isLeaf ? (openBlock(), createElementBlock(Fragment, { key: 3 }, [
19187
+ _ctx.node.loading ? (openBlock(), createBlock(_component_el_icon, {
19188
+ key: 0,
19189
+ class: normalizeClass([_ctx.ns.is("loading"), _ctx.ns.e("postfix")])
19190
+ }, {
19191
+ default: withCtx(() => [
19192
+ createVNode(_component_loading)
19193
+ ]),
19194
+ _: 1
19195
+ }, 8, ["class"])) : (openBlock(), createBlock(_component_el_icon, {
19196
+ key: 1,
19197
+ class: normalizeClass(["arrow-right", _ctx.ns.e("postfix")])
19198
+ }, {
19199
+ default: withCtx(() => [
19200
+ createVNode(_component_arrow_right)
19201
+ ]),
19202
+ _: 1
19203
+ }, 8, ["class"]))
19204
+ ], 64)) : createCommentVNode("v-if", true)
19205
+ ], 42, ["id", "aria-haspopup", "aria-owns", "aria-expanded", "tabindex", "onMouseenter", "onFocus", "onClick"]);
19206
+ }
19207
+ var ElCascaderNode = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["render", _sfc_render$b], ["__file", "node.vue"]]);
19208
+
19209
+ const _sfc_main$u = defineComponent({
19210
+ name: "ElCascaderMenu",
19211
+ components: {
19212
+ Loading: loading_default,
19213
+ ElIcon,
19214
+ ElScrollbar,
19215
+ ElCascaderNode
19216
+ },
19217
+ props: {
19218
+ nodes: {
19219
+ type: Array,
19220
+ required: true
19221
+ },
19222
+ index: {
19223
+ type: Number,
19224
+ required: true
19225
+ }
19226
+ },
19227
+ setup(props) {
19228
+ const instance = getCurrentInstance();
19229
+ const ns = useNamespace("cascader-menu");
19230
+ const { t } = useLocale();
19231
+ const id = useId();
19232
+ let activeNode = null;
19233
+ let hoverTimer = null;
19234
+ const panel = inject(CASCADER_PANEL_INJECTION_KEY);
19235
+ const hoverZone = ref(null);
19236
+ const isEmpty = computed(() => !props.nodes.length);
19237
+ const isLoading = computed(() => !panel.initialLoaded);
19238
+ const menuId = computed(() => `${id.value}-${props.index}`);
19239
+ const handleExpand = (e) => {
19240
+ activeNode = e.target;
19241
+ };
19242
+ const handleMouseMove = (e) => {
19243
+ if (!panel.isHoverMenu || !activeNode || !hoverZone.value)
19244
+ return;
19245
+ if (activeNode.contains(e.target)) {
19246
+ clearHoverTimer();
19247
+ const el = instance.vnode.el;
19248
+ const { left } = el.getBoundingClientRect();
19249
+ const { offsetWidth, offsetHeight } = el;
19250
+ const startX = e.clientX - left;
19251
+ const top = activeNode.offsetTop;
19252
+ const bottom = top + activeNode.offsetHeight;
19253
+ hoverZone.value.innerHTML = `
19254
+ <path style="pointer-events: auto;" fill="transparent" d="M${startX} ${top} L${offsetWidth} 0 V${top} Z" />
19255
+ <path style="pointer-events: auto;" fill="transparent" d="M${startX} ${bottom} L${offsetWidth} ${offsetHeight} V${bottom} Z" />
19256
+ `;
19257
+ } else if (!hoverTimer) {
19258
+ hoverTimer = window.setTimeout(clearHoverZone, panel.config.hoverThreshold);
19259
+ }
19260
+ };
19261
+ const clearHoverTimer = () => {
19262
+ if (!hoverTimer)
19263
+ return;
19264
+ clearTimeout(hoverTimer);
19265
+ hoverTimer = null;
19266
+ };
19267
+ const clearHoverZone = () => {
19268
+ if (!hoverZone.value)
19269
+ return;
19270
+ hoverZone.value.innerHTML = "";
19271
+ clearHoverTimer();
19272
+ };
19273
+ return {
19274
+ ns,
19275
+ panel,
19276
+ hoverZone,
19277
+ isEmpty,
19278
+ isLoading,
19279
+ menuId,
19280
+ t,
19281
+ handleExpand,
19282
+ handleMouseMove,
19283
+ clearHoverZone
19284
+ };
19285
+ }
19286
+ });
19287
+ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
19288
+ const _component_el_cascader_node = resolveComponent("el-cascader-node");
19289
+ const _component_loading = resolveComponent("loading");
19290
+ const _component_el_icon = resolveComponent("el-icon");
19291
+ const _component_el_scrollbar = resolveComponent("el-scrollbar");
19292
+ return openBlock(), createBlock(_component_el_scrollbar, {
19293
+ key: _ctx.menuId,
19294
+ tag: "ul",
19295
+ role: "menu",
19296
+ class: normalizeClass(_ctx.ns.b()),
19297
+ "wrap-class": _ctx.ns.e("wrap"),
19298
+ "view-class": [_ctx.ns.e("list"), _ctx.ns.is("empty", _ctx.isEmpty)],
19299
+ onMousemove: _ctx.handleMouseMove,
19300
+ onMouseleave: _ctx.clearHoverZone
19301
+ }, {
19302
+ default: withCtx(() => {
19303
+ var _a;
19304
+ return [
19305
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.nodes, (node) => {
19306
+ return openBlock(), createBlock(_component_el_cascader_node, {
19307
+ key: node.uid,
19308
+ node,
19309
+ "menu-id": _ctx.menuId,
19310
+ onExpand: _ctx.handleExpand
19311
+ }, null, 8, ["node", "menu-id", "onExpand"]);
19312
+ }), 128)),
19313
+ _ctx.isLoading ? (openBlock(), createElementBlock("div", {
19314
+ key: 0,
19315
+ class: normalizeClass(_ctx.ns.e("empty-text"))
19316
+ }, [
19317
+ createVNode(_component_el_icon, {
19318
+ size: "14",
19319
+ class: normalizeClass(_ctx.ns.is("loading"))
19320
+ }, {
19321
+ default: withCtx(() => [
19322
+ createVNode(_component_loading)
19323
+ ]),
19324
+ _: 1
19325
+ }, 8, ["class"]),
19326
+ createTextVNode(" " + toDisplayString(_ctx.t("el.cascader.loading")), 1)
19327
+ ], 2)) : _ctx.isEmpty ? (openBlock(), createElementBlock("div", {
19328
+ key: 1,
19329
+ class: normalizeClass(_ctx.ns.e("empty-text"))
19330
+ }, [
19331
+ renderSlot(_ctx.$slots, "empty", {}, () => [
19332
+ createTextVNode(toDisplayString(_ctx.t("el.cascader.noData")), 1)
19333
+ ])
19334
+ ], 2)) : ((_a = _ctx.panel) == null ? void 0 : _a.isHoverMenu) ? (openBlock(), createElementBlock("svg", {
19335
+ key: 2,
19336
+ ref: "hoverZone",
19337
+ class: normalizeClass(_ctx.ns.e("hover-zone"))
19338
+ }, null, 2)) : createCommentVNode("v-if", true)
19339
+ ];
19340
+ }),
19341
+ _: 3
19342
+ }, 8, ["class", "wrap-class", "view-class", "onMousemove", "onMouseleave"]);
19343
+ }
19344
+ var ElCascaderMenu = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render$a], ["__file", "menu.vue"]]);
19345
+
19346
+ const escapeStringRegexp = (string = "") => string.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
19347
+ const capitalize = (str) => capitalize$2(str);
19348
+
19349
+ let uid = 0;
19350
+ const calculatePathNodes = (node) => {
19351
+ const nodes = [node];
19352
+ let { parent } = node;
19353
+ while (parent) {
19354
+ nodes.unshift(parent);
19355
+ parent = parent.parent;
19356
+ }
19357
+ return nodes;
19358
+ };
19359
+ class Node {
19360
+ constructor(data, config, parent, root = false) {
19361
+ this.data = data;
19362
+ this.config = config;
19363
+ this.parent = parent;
19364
+ this.root = root;
19365
+ this.uid = uid++;
19366
+ this.checked = false;
19367
+ this.indeterminate = false;
19368
+ this.loading = false;
19369
+ const { value: valueKey, label: labelKey, children: childrenKey } = config;
19370
+ const childrenData = data[childrenKey];
19371
+ const pathNodes = calculatePathNodes(this);
19372
+ this.level = root ? 0 : parent ? parent.level + 1 : 1;
19373
+ this.value = data[valueKey];
19374
+ this.label = data[labelKey];
19375
+ this.pathNodes = pathNodes;
19376
+ this.pathValues = pathNodes.map((node) => node.value);
19377
+ this.pathLabels = pathNodes.map((node) => node.label);
19378
+ this.childrenData = childrenData;
19379
+ this.children = (childrenData || []).map((child) => new Node(child, config, this));
19380
+ this.loaded = !config.lazy || this.isLeaf || !isEmpty(childrenData);
19381
+ }
19382
+ get isDisabled() {
19383
+ const { data, parent, config } = this;
19384
+ const { disabled, checkStrictly } = config;
19385
+ const isDisabled = isFunction$1(disabled) ? disabled(data, this) : !!data[disabled];
19386
+ return isDisabled || !checkStrictly && (parent == null ? void 0 : parent.isDisabled);
19387
+ }
19388
+ get isLeaf() {
19389
+ const { data, config, childrenData, loaded } = this;
19390
+ const { lazy, leaf } = config;
19391
+ const isLeaf = isFunction$1(leaf) ? leaf(data, this) : data[leaf];
19392
+ return isUndefined(isLeaf) ? lazy && !loaded ? false : !(isArray$1(childrenData) && childrenData.length) : !!isLeaf;
19393
+ }
19394
+ get valueByOption() {
19395
+ return this.config.emitPath ? this.pathValues : this.value;
19396
+ }
19397
+ appendChild(childData) {
19398
+ const { childrenData, children } = this;
19399
+ const node = new Node(childData, this.config, this);
19400
+ if (isArray$1(childrenData)) {
19401
+ childrenData.push(childData);
19402
+ } else {
19403
+ this.childrenData = [childData];
19404
+ }
19405
+ children.push(node);
19406
+ return node;
19407
+ }
19408
+ calcText(allLevels, separator) {
19409
+ const text = allLevels ? this.pathLabels.join(separator) : this.label;
19410
+ this.text = text;
19411
+ return text;
19412
+ }
19413
+ broadcast(event, ...args) {
19414
+ const handlerName = `onParent${capitalize(event)}`;
19415
+ this.children.forEach((child) => {
19416
+ if (child) {
19417
+ child.broadcast(event, ...args);
19418
+ child[handlerName] && child[handlerName](...args);
19419
+ }
19420
+ });
19421
+ }
19422
+ emit(event, ...args) {
19423
+ const { parent } = this;
19424
+ const handlerName = `onChild${capitalize(event)}`;
19425
+ if (parent) {
19426
+ parent[handlerName] && parent[handlerName](...args);
19427
+ parent.emit(event, ...args);
19428
+ }
19429
+ }
19430
+ onParentCheck(checked) {
19431
+ if (!this.isDisabled) {
19432
+ this.setCheckState(checked);
19433
+ }
19434
+ }
19435
+ onChildCheck() {
19436
+ const { children } = this;
19437
+ const validChildren = children.filter((child) => !child.isDisabled);
19438
+ const checked = validChildren.length ? validChildren.every((child) => child.checked) : false;
19439
+ this.setCheckState(checked);
19440
+ }
19441
+ setCheckState(checked) {
19442
+ const totalNum = this.children.length;
19443
+ const checkedNum = this.children.reduce((c, p) => {
19444
+ const num = p.checked ? 1 : p.indeterminate ? 0.5 : 0;
19445
+ return c + num;
19446
+ }, 0);
19447
+ this.checked = this.loaded && this.children.filter((child) => !child.isDisabled).every((child) => child.loaded && child.checked) && checked;
19448
+ this.indeterminate = this.loaded && checkedNum !== totalNum && checkedNum > 0;
19449
+ }
19450
+ doCheck(checked) {
19451
+ if (this.checked === checked)
19452
+ return;
19453
+ const { checkStrictly, multiple } = this.config;
19454
+ if (checkStrictly || !multiple) {
19455
+ this.checked = checked;
19456
+ } else {
19457
+ this.broadcast("check", checked);
19458
+ this.setCheckState(checked);
19459
+ this.emit("check");
19460
+ }
19461
+ }
19462
+ }
19463
+
19464
+ const flatNodes = (nodes, leafOnly) => {
19465
+ return nodes.reduce((res, node) => {
19466
+ if (node.isLeaf) {
19467
+ res.push(node);
19468
+ } else {
19469
+ !leafOnly && res.push(node);
19470
+ res = res.concat(flatNodes(node.children, leafOnly));
19471
+ }
19472
+ return res;
19473
+ }, []);
19474
+ };
19475
+ class Store {
19476
+ constructor(data, config) {
19477
+ this.config = config;
19478
+ const nodes = (data || []).map((nodeData) => new Node(nodeData, this.config));
19479
+ this.nodes = nodes;
19480
+ this.allNodes = flatNodes(nodes, false);
19481
+ this.leafNodes = flatNodes(nodes, true);
19482
+ }
19483
+ getNodes() {
19484
+ return this.nodes;
19485
+ }
19486
+ getFlattedNodes(leafOnly) {
19487
+ return leafOnly ? this.leafNodes : this.allNodes;
19488
+ }
19489
+ appendNode(nodeData, parentNode) {
19490
+ const node = parentNode ? parentNode.appendChild(nodeData) : new Node(nodeData, this.config);
19491
+ if (!parentNode)
19492
+ this.nodes.push(node);
19493
+ this.allNodes.push(node);
19494
+ node.isLeaf && this.leafNodes.push(node);
19495
+ }
19496
+ appendNodes(nodeDataList, parentNode) {
19497
+ nodeDataList.forEach((nodeData) => this.appendNode(nodeData, parentNode));
19498
+ }
19499
+ getNodeByValue(value, leafOnly = false) {
19500
+ if (!value && value !== 0)
19501
+ return null;
19502
+ const node = this.getFlattedNodes(leafOnly).find((node2) => isEqual$1(node2.value, value) || isEqual$1(node2.pathValues, value));
19503
+ return node || null;
19504
+ }
19505
+ getSameNode(node) {
19506
+ if (!node)
19507
+ return null;
19508
+ const node_ = this.getFlattedNodes(false).find(({ value, level }) => isEqual$1(node.value, value) && node.level === level);
19509
+ return node_ || null;
19510
+ }
19511
+ }
19512
+
19513
+ const CommonProps = buildProps({
19514
+ modelValue: {
19515
+ type: definePropType([Number, String, Array])
19516
+ },
19517
+ options: {
19518
+ type: definePropType(Array),
19519
+ default: () => []
19520
+ },
19521
+ props: {
19522
+ type: definePropType(Object),
19523
+ default: () => ({})
19524
+ }
19525
+ });
19526
+ const DefaultProps = {
19527
+ expandTrigger: "click",
19528
+ multiple: false,
19529
+ checkStrictly: false,
19530
+ emitPath: true,
19531
+ lazy: false,
19532
+ lazyLoad: NOOP,
19533
+ value: "value",
19534
+ label: "label",
19535
+ children: "children",
19536
+ leaf: "leaf",
19537
+ disabled: "disabled",
19538
+ hoverThreshold: 500
19539
+ };
19540
+ const useCascaderConfig = (props) => {
19541
+ return computed(() => ({
19542
+ ...DefaultProps,
19543
+ ...props.props
19544
+ }));
19545
+ };
19546
+
19547
+ const getMenuIndex = (el) => {
19548
+ if (!el)
19549
+ return 0;
19550
+ const pieces = el.id.split("-");
19551
+ return Number(pieces[pieces.length - 2]);
19552
+ };
19553
+ const checkNode = (el) => {
19554
+ if (!el)
19555
+ return;
19556
+ const input = el.querySelector("input");
19557
+ if (input) {
19558
+ input.click();
19559
+ } else if (isLeaf(el)) {
19560
+ el.click();
19561
+ }
19562
+ };
19563
+ const sortByOriginalOrder = (oldNodes, newNodes) => {
19564
+ const newNodesCopy = newNodes.slice(0);
19565
+ const newIds = newNodesCopy.map((node) => node.uid);
19566
+ const res = oldNodes.reduce((acc, item) => {
19567
+ const index = newIds.indexOf(item.uid);
19568
+ if (index > -1) {
19569
+ acc.push(item);
19570
+ newNodesCopy.splice(index, 1);
19571
+ newIds.splice(index, 1);
19572
+ }
19573
+ return acc;
19574
+ }, []);
19575
+ res.push(...newNodesCopy);
19576
+ return res;
19577
+ };
19578
+
19579
+ const unique = (arr) => [...new Set(arr)];
19580
+ const castArray = (arr) => {
19581
+ if (!arr && arr !== 0)
19582
+ return [];
19583
+ return isArray$1(arr) ? arr : [arr];
19584
+ };
19585
+
19586
+ const _sfc_main$t = defineComponent({
19587
+ name: "ElCascaderPanel",
19588
+ components: {
19589
+ ElCascaderMenu
19590
+ },
19591
+ props: {
19592
+ ...CommonProps,
19593
+ border: {
19594
+ type: Boolean,
19595
+ default: true
19596
+ },
19597
+ renderLabel: Function
19598
+ },
19599
+ emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT, "close", "expand-change"],
19600
+ setup(props, { emit, slots }) {
19601
+ let manualChecked = false;
19602
+ const ns = useNamespace("cascader");
19603
+ const config = useCascaderConfig(props);
19604
+ let store = null;
19605
+ const initialLoaded = ref(true);
19606
+ const menuList = ref([]);
19607
+ const checkedValue = ref(null);
19608
+ const menus = ref([]);
19609
+ const expandingNode = ref(null);
19610
+ const checkedNodes = ref([]);
19611
+ const isHoverMenu = computed(() => config.value.expandTrigger === "hover");
19612
+ const renderLabelFn = computed(() => props.renderLabel || slots.default);
19613
+ const initStore = () => {
19614
+ const { options } = props;
19615
+ const cfg = config.value;
19616
+ manualChecked = false;
19617
+ store = new Store(options, cfg);
19618
+ menus.value = [store.getNodes()];
19619
+ if (cfg.lazy && isEmpty(props.options)) {
19620
+ initialLoaded.value = false;
19621
+ lazyLoad(void 0, (list) => {
19622
+ if (list) {
19623
+ store = new Store(list, cfg);
19624
+ menus.value = [store.getNodes()];
19625
+ }
19626
+ initialLoaded.value = true;
19627
+ syncCheckedValue(false, true);
19628
+ });
19629
+ } else {
19630
+ syncCheckedValue(false, true);
19631
+ }
19632
+ };
19633
+ const lazyLoad = (node, cb) => {
19634
+ const cfg = config.value;
19635
+ node = node || new Node({}, cfg, void 0, true);
19636
+ node.loading = true;
19637
+ const resolve = (dataList) => {
19638
+ const _node = node;
19639
+ const parent = _node.root ? null : _node;
19640
+ dataList && (store == null ? void 0 : store.appendNodes(dataList, parent));
19641
+ _node.loading = false;
19642
+ _node.loaded = true;
19643
+ _node.childrenData = _node.childrenData || [];
19644
+ cb && cb(dataList);
19645
+ };
19646
+ cfg.lazyLoad(node, resolve);
19647
+ };
19648
+ const expandNode = (node, silent) => {
19649
+ var _a;
19650
+ const { level } = node;
19651
+ const newMenus = menus.value.slice(0, level);
19652
+ let newExpandingNode;
19653
+ if (node.isLeaf) {
19654
+ newExpandingNode = node.pathNodes[level - 2];
19655
+ } else {
19656
+ newExpandingNode = node;
19657
+ newMenus.push(node.children);
19658
+ }
19659
+ if (((_a = expandingNode.value) == null ? void 0 : _a.uid) !== (newExpandingNode == null ? void 0 : newExpandingNode.uid)) {
19660
+ expandingNode.value = node;
19661
+ menus.value = newMenus;
19662
+ !silent && emit("expand-change", (node == null ? void 0 : node.pathValues) || []);
19663
+ }
19664
+ };
19665
+ const handleCheckChange = (node, checked, emitClose = true) => {
19666
+ const { checkStrictly, multiple } = config.value;
19667
+ const oldNode = checkedNodes.value[0];
19668
+ manualChecked = true;
19669
+ !multiple && (oldNode == null ? void 0 : oldNode.doCheck(false));
19670
+ node.doCheck(checked);
19671
+ calculateCheckedValue();
19672
+ emitClose && !multiple && !checkStrictly && emit("close");
19673
+ !emitClose && !multiple && !checkStrictly && expandParentNode(node);
19674
+ };
19675
+ const expandParentNode = (node) => {
19676
+ if (!node)
19677
+ return;
19678
+ node = node.parent;
19679
+ expandParentNode(node);
19680
+ node && expandNode(node);
19681
+ };
19682
+ const getFlattedNodes = (leafOnly) => {
19683
+ return store == null ? void 0 : store.getFlattedNodes(leafOnly);
19684
+ };
19685
+ const getCheckedNodes = (leafOnly) => {
19686
+ var _a;
19687
+ return (_a = getFlattedNodes(leafOnly)) == null ? void 0 : _a.filter((node) => node.checked !== false);
19688
+ };
19689
+ const clearCheckedNodes = () => {
19690
+ checkedNodes.value.forEach((node) => node.doCheck(false));
19691
+ calculateCheckedValue();
19692
+ menus.value = menus.value.slice(0, 1);
19693
+ expandingNode.value = null;
19694
+ emit("expand-change", []);
19695
+ };
19696
+ const calculateCheckedValue = () => {
19697
+ var _a;
19698
+ const { checkStrictly, multiple } = config.value;
19699
+ const oldNodes = checkedNodes.value;
19700
+ const newNodes = getCheckedNodes(!checkStrictly);
19701
+ const nodes = sortByOriginalOrder(oldNodes, newNodes);
19702
+ const values = nodes.map((node) => node.valueByOption);
19703
+ checkedNodes.value = nodes;
19704
+ checkedValue.value = multiple ? values : (_a = values[0]) != null ? _a : null;
19705
+ };
19706
+ const syncCheckedValue = (loaded = false, forced = false) => {
19707
+ const { modelValue } = props;
19708
+ const { lazy, multiple, checkStrictly } = config.value;
19709
+ const leafOnly = !checkStrictly;
19710
+ if (!initialLoaded.value || manualChecked || !forced && isEqual$1(modelValue, checkedValue.value))
19711
+ return;
19712
+ if (lazy && !loaded) {
19713
+ const values = unique(flattenDeep(castArray(modelValue)));
19714
+ const nodes = values.map((val) => store == null ? void 0 : store.getNodeByValue(val)).filter((node) => !!node && !node.loaded && !node.loading);
19715
+ if (nodes.length) {
19716
+ nodes.forEach((node) => {
19717
+ lazyLoad(node, () => syncCheckedValue(false, forced));
19718
+ });
19719
+ } else {
19720
+ syncCheckedValue(true, forced);
19721
+ }
19722
+ } else {
19723
+ const values = multiple ? castArray(modelValue) : [modelValue];
19724
+ const nodes = unique(values.map((val) => store == null ? void 0 : store.getNodeByValue(val, leafOnly)));
19725
+ syncMenuState(nodes, forced);
19726
+ checkedValue.value = cloneDeep(modelValue);
19727
+ }
19728
+ };
19729
+ const syncMenuState = (newCheckedNodes, reserveExpandingState = true) => {
19730
+ const { checkStrictly } = config.value;
19731
+ const oldNodes = checkedNodes.value;
19732
+ const newNodes = newCheckedNodes.filter((node) => !!node && (checkStrictly || node.isLeaf));
19733
+ const oldExpandingNode = store == null ? void 0 : store.getSameNode(expandingNode.value);
19734
+ const newExpandingNode = reserveExpandingState && oldExpandingNode || newNodes[0];
19735
+ if (newExpandingNode) {
19736
+ newExpandingNode.pathNodes.forEach((node) => expandNode(node, true));
19737
+ } else {
19738
+ expandingNode.value = null;
19739
+ }
19740
+ oldNodes.forEach((node) => node.doCheck(false));
19741
+ reactive(newNodes).forEach((node) => node.doCheck(true));
19742
+ checkedNodes.value = newNodes;
19743
+ nextTick(scrollToExpandingNode);
19744
+ };
19745
+ const scrollToExpandingNode = () => {
19746
+ if (!isClient)
19747
+ return;
19748
+ menuList.value.forEach((menu) => {
19749
+ const menuElement = menu == null ? void 0 : menu.$el;
19750
+ if (menuElement) {
19751
+ const container = menuElement.querySelector(`.${ns.namespace.value}-scrollbar__wrap`);
19752
+ const activeNode = menuElement.querySelector(`.${ns.b("node")}.${ns.is("active")}`) || menuElement.querySelector(`.${ns.b("node")}.in-active-path`);
19753
+ scrollIntoView(container, activeNode);
19754
+ }
19755
+ });
19756
+ };
19757
+ const handleKeyDown = (e) => {
19758
+ const target = e.target;
19759
+ const { code } = e;
19760
+ switch (code) {
19761
+ case EVENT_CODE.up:
19762
+ case EVENT_CODE.down: {
19763
+ e.preventDefault();
19764
+ const distance = code === EVENT_CODE.up ? -1 : 1;
19765
+ focusNode(getSibling(target, distance, `.${ns.b("node")}[tabindex="-1"]`));
19766
+ break;
19767
+ }
19768
+ case EVENT_CODE.left: {
19769
+ e.preventDefault();
19770
+ const preMenu = menuList.value[getMenuIndex(target) - 1];
19771
+ const expandedNode = preMenu == null ? void 0 : preMenu.$el.querySelector(`.${ns.b("node")}[aria-expanded="true"]`);
19772
+ focusNode(expandedNode);
19773
+ break;
19774
+ }
19775
+ case EVENT_CODE.right: {
19776
+ e.preventDefault();
19777
+ const nextMenu = menuList.value[getMenuIndex(target) + 1];
19778
+ const firstNode = nextMenu == null ? void 0 : nextMenu.$el.querySelector(`.${ns.b("node")}[tabindex="-1"]`);
19779
+ focusNode(firstNode);
19780
+ break;
19781
+ }
19782
+ case EVENT_CODE.enter:
19783
+ case EVENT_CODE.numpadEnter:
19784
+ checkNode(target);
19785
+ break;
19786
+ }
19787
+ };
19788
+ provide(CASCADER_PANEL_INJECTION_KEY, reactive({
19789
+ config,
19790
+ expandingNode,
19791
+ checkedNodes,
19792
+ isHoverMenu,
19793
+ initialLoaded,
19794
+ renderLabelFn,
19795
+ lazyLoad,
19796
+ expandNode,
19797
+ handleCheckChange
19798
+ }));
19799
+ watch([config, () => props.options], initStore, {
19800
+ deep: true,
19801
+ immediate: true
19802
+ });
19803
+ watch(() => props.modelValue, () => {
19804
+ manualChecked = false;
19805
+ syncCheckedValue();
19806
+ }, {
19807
+ deep: true
19808
+ });
19809
+ watch(() => checkedValue.value, (val) => {
19810
+ if (!isEqual$1(val, props.modelValue)) {
19811
+ emit(UPDATE_MODEL_EVENT, val);
19812
+ emit(CHANGE_EVENT, val);
19813
+ }
19814
+ });
19815
+ onBeforeUpdate(() => menuList.value = []);
19816
+ onMounted(() => !isEmpty(props.modelValue) && syncCheckedValue());
19817
+ return {
19818
+ ns,
19819
+ menuList,
19820
+ menus,
19821
+ checkedNodes,
19822
+ handleKeyDown,
19823
+ handleCheckChange,
19824
+ getFlattedNodes,
19825
+ getCheckedNodes,
19826
+ clearCheckedNodes,
19827
+ calculateCheckedValue,
19828
+ scrollToExpandingNode
19829
+ };
19830
+ }
19831
+ });
19832
+ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
19833
+ const _component_el_cascader_menu = resolveComponent("el-cascader-menu");
19834
+ return openBlock(), createElementBlock("div", {
19835
+ class: normalizeClass([_ctx.ns.b("panel"), _ctx.ns.is("bordered", _ctx.border)]),
19836
+ onKeydown: _ctx.handleKeyDown
19837
+ }, [
19838
+ (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.menus, (menu, index) => {
19839
+ return openBlock(), createBlock(_component_el_cascader_menu, {
19840
+ key: index,
19841
+ ref_for: true,
19842
+ ref: (item) => _ctx.menuList[index] = item,
19843
+ index,
19844
+ nodes: [...menu]
19845
+ }, {
19846
+ empty: withCtx(() => [
19847
+ renderSlot(_ctx.$slots, "empty")
19848
+ ]),
19849
+ _: 2
19850
+ }, 1032, ["index", "nodes"]);
19851
+ }), 128))
19852
+ ], 42, ["onKeydown"]);
19853
+ }
19854
+ var CascaderPanel = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["render", _sfc_render$9], ["__file", "index.vue"]]);
19855
+
19856
+ const ElCascaderPanel = withInstall(CascaderPanel);
19857
+
19858
+ const tagProps = buildProps({
19859
+ type: {
19860
+ type: String,
19861
+ values: ["primary", "success", "info", "warning", "danger"],
19862
+ default: "primary"
19863
+ },
19864
+ closable: Boolean,
19865
+ disableTransitions: Boolean,
19866
+ hit: Boolean,
19867
+ color: String,
19868
+ size: {
19869
+ type: String,
19870
+ values: componentSizes
19871
+ },
19872
+ effect: {
19873
+ type: String,
19874
+ values: ["dark", "light", "plain"],
19875
+ default: "light"
19876
+ },
19877
+ round: Boolean
19878
+ });
19879
+ const tagEmits = {
19880
+ close: (evt) => evt instanceof MouseEvent,
19881
+ click: (evt) => evt instanceof MouseEvent
19882
+ };
19883
+
19884
+ const __default__$i = defineComponent({
19885
+ name: "ElTag"
19886
+ });
19887
+ const _sfc_main$s = /* @__PURE__ */ defineComponent({
19888
+ ...__default__$i,
19889
+ props: tagProps,
19890
+ emits: tagEmits,
19891
+ setup(__props, { emit }) {
19892
+ const props = __props;
19893
+ const tagSize = useFormSize();
19894
+ const ns = useNamespace("tag");
19895
+ const containerKls = computed(() => {
19896
+ const { type, hit, effect, closable, round } = props;
19897
+ return [
19898
+ ns.b(),
19899
+ ns.is("closable", closable),
19900
+ ns.m(type || "primary"),
19901
+ ns.m(tagSize.value),
19902
+ ns.m(effect),
19903
+ ns.is("hit", hit),
19904
+ ns.is("round", round)
19905
+ ];
19906
+ });
19907
+ const handleClose = (event) => {
19908
+ emit("close", event);
19909
+ };
19910
+ const handleClick = (event) => {
19911
+ emit("click", event);
19912
+ };
19913
+ const handleVNodeMounted = (vnode) => {
19914
+ var _a, _b, _c;
19915
+ if ((_c = (_b = (_a = vnode == null ? void 0 : vnode.component) == null ? void 0 : _a.subTree) == null ? void 0 : _b.component) == null ? void 0 : _c.bum) {
19916
+ vnode.component.subTree.component.bum = null;
19917
+ }
19918
+ };
19919
+ return (_ctx, _cache) => {
19920
+ return _ctx.disableTransitions ? (openBlock(), createElementBlock("span", {
19921
+ key: 0,
19922
+ class: normalizeClass(unref(containerKls)),
19923
+ style: normalizeStyle({ backgroundColor: _ctx.color }),
19924
+ onClick: handleClick
19925
+ }, [
19926
+ createElementVNode("span", {
19927
+ class: normalizeClass(unref(ns).e("content"))
19928
+ }, [
19929
+ renderSlot(_ctx.$slots, "default")
19930
+ ], 2),
19931
+ _ctx.closable ? (openBlock(), createBlock(unref(ElIcon), {
19932
+ key: 0,
19933
+ class: normalizeClass(unref(ns).e("close")),
18131
19934
  onClick: withModifiers(handleClose, ["stop"])
18132
19935
  }, {
18133
19936
  default: withCtx(() => [
@@ -18169,10 +19972,83 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
18169
19972
  };
18170
19973
  }
18171
19974
  });
18172
- var Tag = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__file", "tag.vue"]]);
19975
+ var Tag = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__file", "tag.vue"]]);
18173
19976
 
18174
19977
  const ElTag = withInstall(Tag);
18175
19978
 
19979
+ const cascaderProps$1 = buildProps({
19980
+ ...CommonProps,
19981
+ size: useSizeProp,
19982
+ placeholder: String,
19983
+ disabled: Boolean,
19984
+ clearable: Boolean,
19985
+ filterable: Boolean,
19986
+ filterMethod: {
19987
+ type: definePropType(Function),
19988
+ default: (node, keyword) => node.text.includes(keyword)
19989
+ },
19990
+ separator: {
19991
+ type: String,
19992
+ default: " / "
19993
+ },
19994
+ showAllLevels: {
19995
+ type: Boolean,
19996
+ default: true
19997
+ },
19998
+ collapseTags: Boolean,
19999
+ maxCollapseTags: {
20000
+ type: Number,
20001
+ default: 1
20002
+ },
20003
+ collapseTagsTooltip: {
20004
+ type: Boolean,
20005
+ default: false
20006
+ },
20007
+ debounce: {
20008
+ type: Number,
20009
+ default: 300
20010
+ },
20011
+ beforeFilter: {
20012
+ type: definePropType(Function),
20013
+ default: () => true
20014
+ },
20015
+ placement: {
20016
+ type: definePropType(String),
20017
+ values: Ee,
20018
+ default: "bottom-start"
20019
+ },
20020
+ fallbackPlacements: {
20021
+ type: definePropType(Array),
20022
+ default: ["bottom-start", "bottom", "top-start", "top", "right", "left"]
20023
+ },
20024
+ popperClass: {
20025
+ type: String,
20026
+ default: ""
20027
+ },
20028
+ teleported: useTooltipContentProps.teleported,
20029
+ tagType: { ...tagProps.type, default: "info" },
20030
+ tagEffect: { ...tagProps.effect, default: "light" },
20031
+ validateEvent: {
20032
+ type: Boolean,
20033
+ default: true
20034
+ },
20035
+ persistent: {
20036
+ type: Boolean,
20037
+ default: true
20038
+ },
20039
+ ...useEmptyValuesProps
20040
+ });
20041
+ const cascaderEmits$1 = {
20042
+ [UPDATE_MODEL_EVENT]: (_) => true,
20043
+ [CHANGE_EVENT]: (_) => true,
20044
+ focus: (evt) => evt instanceof FocusEvent,
20045
+ blur: (evt) => evt instanceof FocusEvent,
20046
+ clear: () => true,
20047
+ visibleChange: (val) => isBoolean(val),
20048
+ expandChange: (val) => !!val,
20049
+ removeTag: (val) => !!val
20050
+ };
20051
+
18176
20052
  const nodeList$1 = /* @__PURE__ */ new Map();
18177
20053
  if (isClient) {
18178
20054
  let startClick;
@@ -18231,16 +20107,623 @@ const ClickOutside = {
18231
20107
  documentHandler: createDocumentHandler$1(el, binding),
18232
20108
  bindingFn: binding.value
18233
20109
  };
18234
- if (oldHandlerIndex >= 0) {
18235
- handlers.splice(oldHandlerIndex, 1, newHandler);
18236
- } else {
18237
- handlers.push(newHandler);
18238
- }
18239
- },
18240
- unmounted(el) {
18241
- nodeList$1.delete(el);
20110
+ if (oldHandlerIndex >= 0) {
20111
+ handlers.splice(oldHandlerIndex, 1, newHandler);
20112
+ } else {
20113
+ handlers.push(newHandler);
20114
+ }
20115
+ },
20116
+ unmounted(el) {
20117
+ nodeList$1.delete(el);
20118
+ }
20119
+ };
20120
+
20121
+ const COMPONENT_NAME$1 = "ElCascader";
20122
+ const __default__$h = defineComponent({
20123
+ name: COMPONENT_NAME$1
20124
+ });
20125
+ const _sfc_main$r = /* @__PURE__ */ defineComponent({
20126
+ ...__default__$h,
20127
+ props: cascaderProps$1,
20128
+ emits: cascaderEmits$1,
20129
+ setup(__props, { expose, emit }) {
20130
+ const props = __props;
20131
+ const popperOptions = {
20132
+ modifiers: [
20133
+ {
20134
+ name: "arrowPosition",
20135
+ enabled: true,
20136
+ phase: "main",
20137
+ fn: ({ state }) => {
20138
+ const { modifiersData, placement } = state;
20139
+ if (["right", "left", "bottom", "top"].includes(placement))
20140
+ return;
20141
+ modifiersData.arrow.x = 35;
20142
+ },
20143
+ requires: ["arrow"]
20144
+ }
20145
+ ]
20146
+ };
20147
+ const attrs = useAttrs$1();
20148
+ let inputInitialHeight = 0;
20149
+ let pressDeleteCount = 0;
20150
+ const nsCascader = useNamespace("cascader");
20151
+ const nsInput = useNamespace("input");
20152
+ const { t } = useLocale();
20153
+ const { form, formItem } = useFormItem();
20154
+ const { valueOnClear } = useEmptyValues(props);
20155
+ const { isComposing, handleComposition } = useComposition({
20156
+ afterComposition(event) {
20157
+ var _a;
20158
+ const text = (_a = event.target) == null ? void 0 : _a.value;
20159
+ handleInput(text);
20160
+ }
20161
+ });
20162
+ const tooltipRef = ref(null);
20163
+ const input = ref(null);
20164
+ const tagWrapper = ref(null);
20165
+ const cascaderPanelRef = ref(null);
20166
+ const suggestionPanel = ref(null);
20167
+ const popperVisible = ref(false);
20168
+ const inputHover = ref(false);
20169
+ const filtering = ref(false);
20170
+ const filterFocus = ref(false);
20171
+ const inputValue = ref("");
20172
+ const searchInputValue = ref("");
20173
+ const presentTags = ref([]);
20174
+ const allPresentTags = ref([]);
20175
+ const suggestions = ref([]);
20176
+ const cascaderStyle = computed(() => {
20177
+ return attrs.style;
20178
+ });
20179
+ const isDisabled = computed(() => props.disabled || (form == null ? void 0 : form.disabled));
20180
+ const inputPlaceholder = computed(() => props.placeholder || t("el.cascader.placeholder"));
20181
+ const currentPlaceholder = computed(() => searchInputValue.value || presentTags.value.length > 0 || isComposing.value ? "" : inputPlaceholder.value);
20182
+ const realSize = useFormSize();
20183
+ const tagSize = computed(() => realSize.value === "small" ? "small" : "default");
20184
+ const multiple = computed(() => !!props.props.multiple);
20185
+ const readonly = computed(() => !props.filterable || multiple.value);
20186
+ const searchKeyword = computed(() => multiple.value ? searchInputValue.value : inputValue.value);
20187
+ const checkedNodes = computed(() => {
20188
+ var _a;
20189
+ return ((_a = cascaderPanelRef.value) == null ? void 0 : _a.checkedNodes) || [];
20190
+ });
20191
+ const clearBtnVisible = computed(() => {
20192
+ if (!props.clearable || isDisabled.value || filtering.value || !inputHover.value)
20193
+ return false;
20194
+ return !!checkedNodes.value.length;
20195
+ });
20196
+ const presentText = computed(() => {
20197
+ const { showAllLevels, separator } = props;
20198
+ const nodes = checkedNodes.value;
20199
+ return nodes.length ? multiple.value ? "" : nodes[0].calcText(showAllLevels, separator) : "";
20200
+ });
20201
+ const validateState = computed(() => (formItem == null ? void 0 : formItem.validateState) || "");
20202
+ const checkedValue = computed({
20203
+ get() {
20204
+ return cloneDeep(props.modelValue);
20205
+ },
20206
+ set(val) {
20207
+ const value = val != null ? val : valueOnClear.value;
20208
+ emit(UPDATE_MODEL_EVENT, value);
20209
+ emit(CHANGE_EVENT, value);
20210
+ if (props.validateEvent) {
20211
+ formItem == null ? void 0 : formItem.validate("change").catch((err) => debugWarn());
20212
+ }
20213
+ }
20214
+ });
20215
+ const cascaderKls = computed(() => {
20216
+ return [
20217
+ nsCascader.b(),
20218
+ nsCascader.m(realSize.value),
20219
+ nsCascader.is("disabled", isDisabled.value),
20220
+ attrs.class
20221
+ ];
20222
+ });
20223
+ const cascaderIconKls = computed(() => {
20224
+ return [
20225
+ nsInput.e("icon"),
20226
+ "icon-arrow-down",
20227
+ nsCascader.is("reverse", popperVisible.value)
20228
+ ];
20229
+ });
20230
+ const inputClass = computed(() => {
20231
+ return nsCascader.is("focus", popperVisible.value || filterFocus.value);
20232
+ });
20233
+ const contentRef = computed(() => {
20234
+ var _a, _b;
20235
+ return (_b = (_a = tooltipRef.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
20236
+ });
20237
+ const togglePopperVisible = (visible) => {
20238
+ var _a, _b, _c;
20239
+ if (isDisabled.value)
20240
+ return;
20241
+ visible = visible != null ? visible : !popperVisible.value;
20242
+ if (visible !== popperVisible.value) {
20243
+ popperVisible.value = visible;
20244
+ (_b = (_a = input.value) == null ? void 0 : _a.input) == null ? void 0 : _b.setAttribute("aria-expanded", `${visible}`);
20245
+ if (visible) {
20246
+ updatePopperPosition();
20247
+ nextTick((_c = cascaderPanelRef.value) == null ? void 0 : _c.scrollToExpandingNode);
20248
+ } else if (props.filterable) {
20249
+ syncPresentTextValue();
20250
+ }
20251
+ emit("visibleChange", visible);
20252
+ }
20253
+ };
20254
+ const updatePopperPosition = () => {
20255
+ nextTick(() => {
20256
+ var _a;
20257
+ (_a = tooltipRef.value) == null ? void 0 : _a.updatePopper();
20258
+ });
20259
+ };
20260
+ const hideSuggestionPanel = () => {
20261
+ filtering.value = false;
20262
+ };
20263
+ const genTag = (node) => {
20264
+ const { showAllLevels, separator } = props;
20265
+ return {
20266
+ node,
20267
+ key: node.uid,
20268
+ text: node.calcText(showAllLevels, separator),
20269
+ hitState: false,
20270
+ closable: !isDisabled.value && !node.isDisabled,
20271
+ isCollapseTag: false
20272
+ };
20273
+ };
20274
+ const deleteTag = (tag) => {
20275
+ var _a;
20276
+ const node = tag.node;
20277
+ node.doCheck(false);
20278
+ (_a = cascaderPanelRef.value) == null ? void 0 : _a.calculateCheckedValue();
20279
+ emit("removeTag", node.valueByOption);
20280
+ };
20281
+ const calculatePresentTags = () => {
20282
+ if (!multiple.value)
20283
+ return;
20284
+ const nodes = checkedNodes.value;
20285
+ const tags = [];
20286
+ const allTags = [];
20287
+ nodes.forEach((node) => allTags.push(genTag(node)));
20288
+ allPresentTags.value = allTags;
20289
+ if (nodes.length) {
20290
+ nodes.slice(0, props.maxCollapseTags).forEach((node) => tags.push(genTag(node)));
20291
+ const rest = nodes.slice(props.maxCollapseTags);
20292
+ const restCount = rest.length;
20293
+ if (restCount) {
20294
+ if (props.collapseTags) {
20295
+ tags.push({
20296
+ key: -1,
20297
+ text: `+ ${restCount}`,
20298
+ closable: false,
20299
+ isCollapseTag: true
20300
+ });
20301
+ } else {
20302
+ rest.forEach((node) => tags.push(genTag(node)));
20303
+ }
20304
+ }
20305
+ }
20306
+ presentTags.value = tags;
20307
+ };
20308
+ const calculateSuggestions = () => {
20309
+ var _a, _b;
20310
+ const { filterMethod, showAllLevels, separator } = props;
20311
+ const res = (_b = (_a = cascaderPanelRef.value) == null ? void 0 : _a.getFlattedNodes(!props.props.checkStrictly)) == null ? void 0 : _b.filter((node) => {
20312
+ if (node.isDisabled)
20313
+ return false;
20314
+ node.calcText(showAllLevels, separator);
20315
+ return filterMethod(node, searchKeyword.value);
20316
+ });
20317
+ if (multiple.value) {
20318
+ presentTags.value.forEach((tag) => {
20319
+ tag.hitState = false;
20320
+ });
20321
+ allPresentTags.value.forEach((tag) => {
20322
+ tag.hitState = false;
20323
+ });
20324
+ }
20325
+ filtering.value = true;
20326
+ suggestions.value = res;
20327
+ updatePopperPosition();
20328
+ };
20329
+ const focusFirstNode = () => {
20330
+ var _a;
20331
+ let firstNode;
20332
+ if (filtering.value && suggestionPanel.value) {
20333
+ firstNode = suggestionPanel.value.$el.querySelector(`.${nsCascader.e("suggestion-item")}`);
20334
+ } else {
20335
+ firstNode = (_a = cascaderPanelRef.value) == null ? void 0 : _a.$el.querySelector(`.${nsCascader.b("node")}[tabindex="-1"]`);
20336
+ }
20337
+ if (firstNode) {
20338
+ firstNode.focus();
20339
+ !filtering.value && firstNode.click();
20340
+ }
20341
+ };
20342
+ const updateStyle = () => {
20343
+ var _a, _b;
20344
+ const inputInner = (_a = input.value) == null ? void 0 : _a.input;
20345
+ const tagWrapperEl = tagWrapper.value;
20346
+ const suggestionPanelEl = (_b = suggestionPanel.value) == null ? void 0 : _b.$el;
20347
+ if (!isClient || !inputInner)
20348
+ return;
20349
+ if (suggestionPanelEl) {
20350
+ const suggestionList = suggestionPanelEl.querySelector(`.${nsCascader.e("suggestion-list")}`);
20351
+ suggestionList.style.minWidth = `${inputInner.offsetWidth}px`;
20352
+ }
20353
+ if (tagWrapperEl) {
20354
+ const { offsetHeight } = tagWrapperEl;
20355
+ const height = presentTags.value.length > 0 ? `${Math.max(offsetHeight, inputInitialHeight) - 2}px` : `${inputInitialHeight}px`;
20356
+ inputInner.style.height = height;
20357
+ updatePopperPosition();
20358
+ }
20359
+ };
20360
+ const getCheckedNodes = (leafOnly) => {
20361
+ var _a;
20362
+ return (_a = cascaderPanelRef.value) == null ? void 0 : _a.getCheckedNodes(leafOnly);
20363
+ };
20364
+ const handleExpandChange = (value) => {
20365
+ updatePopperPosition();
20366
+ emit("expandChange", value);
20367
+ };
20368
+ const handleKeyDown = (e) => {
20369
+ if (isComposing.value)
20370
+ return;
20371
+ switch (e.code) {
20372
+ case EVENT_CODE.enter:
20373
+ case EVENT_CODE.numpadEnter:
20374
+ togglePopperVisible();
20375
+ break;
20376
+ case EVENT_CODE.down:
20377
+ togglePopperVisible(true);
20378
+ nextTick(focusFirstNode);
20379
+ e.preventDefault();
20380
+ break;
20381
+ case EVENT_CODE.esc:
20382
+ if (popperVisible.value === true) {
20383
+ e.preventDefault();
20384
+ e.stopPropagation();
20385
+ togglePopperVisible(false);
20386
+ }
20387
+ break;
20388
+ case EVENT_CODE.tab:
20389
+ togglePopperVisible(false);
20390
+ break;
20391
+ }
20392
+ };
20393
+ const handleClear = () => {
20394
+ var _a;
20395
+ (_a = cascaderPanelRef.value) == null ? void 0 : _a.clearCheckedNodes();
20396
+ if (!popperVisible.value && props.filterable) {
20397
+ syncPresentTextValue();
20398
+ }
20399
+ togglePopperVisible(false);
20400
+ emit("clear");
20401
+ };
20402
+ const syncPresentTextValue = () => {
20403
+ const { value } = presentText;
20404
+ inputValue.value = value;
20405
+ searchInputValue.value = value;
20406
+ };
20407
+ const handleSuggestionClick = (node) => {
20408
+ var _a, _b;
20409
+ const { checked } = node;
20410
+ if (multiple.value) {
20411
+ (_a = cascaderPanelRef.value) == null ? void 0 : _a.handleCheckChange(node, !checked, false);
20412
+ } else {
20413
+ !checked && ((_b = cascaderPanelRef.value) == null ? void 0 : _b.handleCheckChange(node, true, false));
20414
+ togglePopperVisible(false);
20415
+ }
20416
+ };
20417
+ const handleSuggestionKeyDown = (e) => {
20418
+ const target = e.target;
20419
+ const { code } = e;
20420
+ switch (code) {
20421
+ case EVENT_CODE.up:
20422
+ case EVENT_CODE.down: {
20423
+ const distance = code === EVENT_CODE.up ? -1 : 1;
20424
+ focusNode(getSibling(target, distance, `.${nsCascader.e("suggestion-item")}[tabindex="-1"]`));
20425
+ break;
20426
+ }
20427
+ case EVENT_CODE.enter:
20428
+ case EVENT_CODE.numpadEnter:
20429
+ target.click();
20430
+ break;
20431
+ }
20432
+ };
20433
+ const handleDelete = () => {
20434
+ const tags = presentTags.value;
20435
+ const lastTag = tags[tags.length - 1];
20436
+ pressDeleteCount = searchInputValue.value ? 0 : pressDeleteCount + 1;
20437
+ if (!lastTag || !pressDeleteCount || props.collapseTags && tags.length > 1)
20438
+ return;
20439
+ if (lastTag.hitState) {
20440
+ deleteTag(lastTag);
20441
+ } else {
20442
+ lastTag.hitState = true;
20443
+ }
20444
+ };
20445
+ const handleFocus = (e) => {
20446
+ const el = e.target;
20447
+ const name = nsCascader.e("search-input");
20448
+ if (el.className === name) {
20449
+ filterFocus.value = true;
20450
+ }
20451
+ emit("focus", e);
20452
+ };
20453
+ const handleBlur = (e) => {
20454
+ filterFocus.value = false;
20455
+ emit("blur", e);
20456
+ };
20457
+ const handleFilter = debounce(() => {
20458
+ const { value } = searchKeyword;
20459
+ if (!value)
20460
+ return;
20461
+ const passed = props.beforeFilter(value);
20462
+ if (isPromise(passed)) {
20463
+ passed.then(calculateSuggestions).catch(() => {
20464
+ });
20465
+ } else if (passed !== false) {
20466
+ calculateSuggestions();
20467
+ } else {
20468
+ hideSuggestionPanel();
20469
+ }
20470
+ }, props.debounce);
20471
+ const handleInput = (val, e) => {
20472
+ !popperVisible.value && togglePopperVisible(true);
20473
+ if (e == null ? void 0 : e.isComposing)
20474
+ return;
20475
+ val ? handleFilter() : hideSuggestionPanel();
20476
+ };
20477
+ const getInputInnerHeight = (inputInner) => Number.parseFloat(useCssVar(nsInput.cssVarName("input-height"), inputInner).value) - 2;
20478
+ watch(filtering, updatePopperPosition);
20479
+ watch([checkedNodes, isDisabled, () => props.collapseTags], calculatePresentTags);
20480
+ watch(presentTags, () => {
20481
+ nextTick(() => updateStyle());
20482
+ });
20483
+ watch(realSize, async () => {
20484
+ await nextTick();
20485
+ const inputInner = input.value.input;
20486
+ inputInitialHeight = getInputInnerHeight(inputInner) || inputInitialHeight;
20487
+ updateStyle();
20488
+ });
20489
+ watch(presentText, syncPresentTextValue, { immediate: true });
20490
+ onMounted(() => {
20491
+ const inputInner = input.value.input;
20492
+ const inputInnerHeight = getInputInnerHeight(inputInner);
20493
+ inputInitialHeight = inputInner.offsetHeight || inputInnerHeight;
20494
+ useResizeObserver(inputInner, updateStyle);
20495
+ });
20496
+ expose({
20497
+ getCheckedNodes,
20498
+ cascaderPanelRef,
20499
+ togglePopperVisible,
20500
+ contentRef,
20501
+ presentText
20502
+ });
20503
+ return (_ctx, _cache) => {
20504
+ return openBlock(), createBlock(unref(ElTooltip), {
20505
+ ref_key: "tooltipRef",
20506
+ ref: tooltipRef,
20507
+ visible: popperVisible.value,
20508
+ teleported: _ctx.teleported,
20509
+ "popper-class": [unref(nsCascader).e("dropdown"), _ctx.popperClass],
20510
+ "popper-options": popperOptions,
20511
+ "fallback-placements": _ctx.fallbackPlacements,
20512
+ "stop-popper-mouse-event": false,
20513
+ "gpu-acceleration": false,
20514
+ placement: _ctx.placement,
20515
+ transition: `${unref(nsCascader).namespace.value}-zoom-in-top`,
20516
+ effect: "light",
20517
+ pure: "",
20518
+ persistent: _ctx.persistent,
20519
+ onHide: hideSuggestionPanel
20520
+ }, {
20521
+ default: withCtx(() => [
20522
+ withDirectives((openBlock(), createElementBlock("div", {
20523
+ class: normalizeClass(unref(cascaderKls)),
20524
+ style: normalizeStyle(unref(cascaderStyle)),
20525
+ onClick: () => togglePopperVisible(unref(readonly) ? void 0 : true),
20526
+ onKeydown: handleKeyDown,
20527
+ onMouseenter: ($event) => inputHover.value = true,
20528
+ onMouseleave: ($event) => inputHover.value = false
20529
+ }, [
20530
+ createVNode(unref(ElInput), {
20531
+ ref_key: "input",
20532
+ ref: input,
20533
+ modelValue: inputValue.value,
20534
+ "onUpdate:modelValue": ($event) => inputValue.value = $event,
20535
+ placeholder: unref(currentPlaceholder),
20536
+ readonly: unref(readonly),
20537
+ disabled: unref(isDisabled),
20538
+ "validate-event": false,
20539
+ size: unref(realSize),
20540
+ class: normalizeClass(unref(inputClass)),
20541
+ tabindex: unref(multiple) && _ctx.filterable && !unref(isDisabled) ? -1 : void 0,
20542
+ onCompositionstart: unref(handleComposition),
20543
+ onCompositionupdate: unref(handleComposition),
20544
+ onCompositionend: unref(handleComposition),
20545
+ onFocus: handleFocus,
20546
+ onBlur: handleBlur,
20547
+ onInput: handleInput
20548
+ }, {
20549
+ suffix: withCtx(() => [
20550
+ unref(clearBtnVisible) ? (openBlock(), createBlock(unref(ElIcon), {
20551
+ key: "clear",
20552
+ class: normalizeClass([unref(nsInput).e("icon"), "icon-circle-close"]),
20553
+ onClick: withModifiers(handleClear, ["stop"])
20554
+ }, {
20555
+ default: withCtx(() => [
20556
+ createVNode(unref(circle_close_default))
20557
+ ]),
20558
+ _: 1
20559
+ }, 8, ["class", "onClick"])) : (openBlock(), createBlock(unref(ElIcon), {
20560
+ key: "arrow-down",
20561
+ class: normalizeClass(unref(cascaderIconKls)),
20562
+ onClick: withModifiers(($event) => togglePopperVisible(), ["stop"])
20563
+ }, {
20564
+ default: withCtx(() => [
20565
+ createVNode(unref(arrow_down_default))
20566
+ ]),
20567
+ _: 1
20568
+ }, 8, ["class", "onClick"]))
20569
+ ]),
20570
+ _: 1
20571
+ }, 8, ["modelValue", "onUpdate:modelValue", "placeholder", "readonly", "disabled", "size", "class", "tabindex", "onCompositionstart", "onCompositionupdate", "onCompositionend"]),
20572
+ unref(multiple) ? (openBlock(), createElementBlock("div", {
20573
+ key: 0,
20574
+ ref_key: "tagWrapper",
20575
+ ref: tagWrapper,
20576
+ class: normalizeClass([
20577
+ unref(nsCascader).e("tags"),
20578
+ unref(nsCascader).is("validate", Boolean(unref(validateState)))
20579
+ ])
20580
+ }, [
20581
+ (openBlock(true), createElementBlock(Fragment, null, renderList(presentTags.value, (tag) => {
20582
+ return openBlock(), createBlock(unref(ElTag), {
20583
+ key: tag.key,
20584
+ type: _ctx.tagType,
20585
+ size: unref(tagSize),
20586
+ effect: _ctx.tagEffect,
20587
+ hit: tag.hitState,
20588
+ closable: tag.closable,
20589
+ "disable-transitions": "",
20590
+ onClose: ($event) => deleteTag(tag)
20591
+ }, {
20592
+ default: withCtx(() => [
20593
+ tag.isCollapseTag === false ? (openBlock(), createElementBlock("span", { key: 0 }, toDisplayString(tag.text), 1)) : (openBlock(), createBlock(unref(ElTooltip), {
20594
+ key: 1,
20595
+ disabled: popperVisible.value || !_ctx.collapseTagsTooltip,
20596
+ "fallback-placements": ["bottom", "top", "right", "left"],
20597
+ placement: "bottom",
20598
+ effect: "light"
20599
+ }, {
20600
+ default: withCtx(() => [
20601
+ createElementVNode("span", null, toDisplayString(tag.text), 1)
20602
+ ]),
20603
+ content: withCtx(() => [
20604
+ createElementVNode("div", {
20605
+ class: normalizeClass(unref(nsCascader).e("collapse-tags"))
20606
+ }, [
20607
+ (openBlock(true), createElementBlock(Fragment, null, renderList(allPresentTags.value.slice(_ctx.maxCollapseTags), (tag2, idx) => {
20608
+ return openBlock(), createElementBlock("div", {
20609
+ key: idx,
20610
+ class: normalizeClass(unref(nsCascader).e("collapse-tag"))
20611
+ }, [
20612
+ (openBlock(), createBlock(unref(ElTag), {
20613
+ key: tag2.key,
20614
+ class: "in-tooltip",
20615
+ type: _ctx.tagType,
20616
+ size: unref(tagSize),
20617
+ effect: _ctx.tagEffect,
20618
+ hit: tag2.hitState,
20619
+ closable: tag2.closable,
20620
+ "disable-transitions": "",
20621
+ onClose: ($event) => deleteTag(tag2)
20622
+ }, {
20623
+ default: withCtx(() => [
20624
+ createElementVNode("span", null, toDisplayString(tag2.text), 1)
20625
+ ]),
20626
+ _: 2
20627
+ }, 1032, ["type", "size", "effect", "hit", "closable", "onClose"]))
20628
+ ], 2);
20629
+ }), 128))
20630
+ ], 2)
20631
+ ]),
20632
+ _: 2
20633
+ }, 1032, ["disabled"]))
20634
+ ]),
20635
+ _: 2
20636
+ }, 1032, ["type", "size", "effect", "hit", "closable", "onClose"]);
20637
+ }), 128)),
20638
+ _ctx.filterable && !unref(isDisabled) ? withDirectives((openBlock(), createElementBlock("input", {
20639
+ key: 0,
20640
+ "onUpdate:modelValue": ($event) => searchInputValue.value = $event,
20641
+ type: "text",
20642
+ class: normalizeClass(unref(nsCascader).e("search-input")),
20643
+ placeholder: unref(presentText) ? "" : unref(inputPlaceholder),
20644
+ onInput: (e) => handleInput(searchInputValue.value, e),
20645
+ onClick: withModifiers(($event) => togglePopperVisible(true), ["stop"]),
20646
+ onKeydown: withKeys(handleDelete, ["delete"]),
20647
+ onCompositionstart: unref(handleComposition),
20648
+ onCompositionupdate: unref(handleComposition),
20649
+ onCompositionend: unref(handleComposition),
20650
+ onFocus: handleFocus,
20651
+ onBlur: handleBlur
20652
+ }, null, 42, ["onUpdate:modelValue", "placeholder", "onInput", "onClick", "onKeydown", "onCompositionstart", "onCompositionupdate", "onCompositionend"])), [
20653
+ [vModelText, searchInputValue.value]
20654
+ ]) : createCommentVNode("v-if", true)
20655
+ ], 2)) : createCommentVNode("v-if", true)
20656
+ ], 46, ["onClick", "onMouseenter", "onMouseleave"])), [
20657
+ [unref(ClickOutside), () => togglePopperVisible(false), unref(contentRef)]
20658
+ ])
20659
+ ]),
20660
+ content: withCtx(() => [
20661
+ withDirectives(createVNode(unref(ElCascaderPanel), {
20662
+ ref_key: "cascaderPanelRef",
20663
+ ref: cascaderPanelRef,
20664
+ modelValue: unref(checkedValue),
20665
+ "onUpdate:modelValue": ($event) => isRef(checkedValue) ? checkedValue.value = $event : null,
20666
+ options: _ctx.options,
20667
+ props: props.props,
20668
+ border: false,
20669
+ "render-label": _ctx.$slots.default,
20670
+ onExpandChange: handleExpandChange,
20671
+ onClose: ($event) => _ctx.$nextTick(() => togglePopperVisible(false))
20672
+ }, {
20673
+ empty: withCtx(() => [
20674
+ renderSlot(_ctx.$slots, "empty")
20675
+ ]),
20676
+ _: 3
20677
+ }, 8, ["modelValue", "onUpdate:modelValue", "options", "props", "render-label", "onClose"]), [
20678
+ [vShow, !filtering.value]
20679
+ ]),
20680
+ _ctx.filterable ? withDirectives((openBlock(), createBlock(unref(ElScrollbar), {
20681
+ key: 0,
20682
+ ref_key: "suggestionPanel",
20683
+ ref: suggestionPanel,
20684
+ tag: "ul",
20685
+ class: normalizeClass(unref(nsCascader).e("suggestion-panel")),
20686
+ "view-class": unref(nsCascader).e("suggestion-list"),
20687
+ onKeydown: handleSuggestionKeyDown
20688
+ }, {
20689
+ default: withCtx(() => [
20690
+ suggestions.value.length ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(suggestions.value, (item) => {
20691
+ return openBlock(), createElementBlock("li", {
20692
+ key: item.uid,
20693
+ class: normalizeClass([
20694
+ unref(nsCascader).e("suggestion-item"),
20695
+ unref(nsCascader).is("checked", item.checked)
20696
+ ]),
20697
+ tabindex: -1,
20698
+ onClick: ($event) => handleSuggestionClick(item)
20699
+ }, [
20700
+ createElementVNode("span", null, toDisplayString(item.text), 1),
20701
+ item.checked ? (openBlock(), createBlock(unref(ElIcon), { key: 0 }, {
20702
+ default: withCtx(() => [
20703
+ createVNode(unref(check_default))
20704
+ ]),
20705
+ _: 1
20706
+ })) : createCommentVNode("v-if", true)
20707
+ ], 10, ["onClick"]);
20708
+ }), 128)) : renderSlot(_ctx.$slots, "empty", { key: 1 }, () => [
20709
+ createElementVNode("li", {
20710
+ class: normalizeClass(unref(nsCascader).e("empty-text"))
20711
+ }, toDisplayString(unref(t)("el.cascader.noMatch")), 3)
20712
+ ])
20713
+ ]),
20714
+ _: 3
20715
+ }, 8, ["class", "view-class"])), [
20716
+ [vShow, filtering.value]
20717
+ ]) : createCommentVNode("v-if", true)
20718
+ ]),
20719
+ _: 3
20720
+ }, 8, ["visible", "teleported", "popper-class", "fallback-placements", "placement", "transition", "persistent"]);
20721
+ };
18242
20722
  }
18243
- };
20723
+ });
20724
+ var Cascader$1 = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__file", "cascader.vue"]]);
20725
+
20726
+ const ElCascader = withInstall(Cascader$1);
18244
20727
 
18245
20728
  const REPEAT_INTERVAL = 100;
18246
20729
  const REPEAT_DELAY = 600;
@@ -18278,22 +20761,22 @@ const vRepeatClick = {
18278
20761
  }
18279
20762
  };
18280
20763
 
18281
- const _sfc_main$o = /* @__PURE__ */ defineComponent({
20764
+ const _sfc_main$q = /* @__PURE__ */ defineComponent({
18282
20765
  inheritAttrs: false
18283
20766
  });
18284
20767
  function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
18285
20768
  return renderSlot(_ctx.$slots, "default");
18286
20769
  }
18287
- var Collection = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["render", _sfc_render$8], ["__file", "collection.vue"]]);
20770
+ var Collection = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["render", _sfc_render$8], ["__file", "collection.vue"]]);
18288
20771
 
18289
- const _sfc_main$n = /* @__PURE__ */ defineComponent({
20772
+ const _sfc_main$p = /* @__PURE__ */ defineComponent({
18290
20773
  name: "ElCollectionItem",
18291
20774
  inheritAttrs: false
18292
20775
  });
18293
20776
  function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
18294
20777
  return renderSlot(_ctx.$slots, "default");
18295
20778
  }
18296
- var CollectionItem = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["render", _sfc_render$7], ["__file", "collection-item.vue"]]);
20779
+ var CollectionItem = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["render", _sfc_render$7], ["__file", "collection-item.vue"]]);
18297
20780
 
18298
20781
  const COLLECTION_ITEM_SIGN = `data-el-collection-item`;
18299
20782
  const createCollectionWithScope = (name) => {
@@ -18439,12 +20922,6 @@ buildProps({
18439
20922
  buildProps({
18440
20923
  onKeydown: { type: definePropType(Function) }
18441
20924
  });
18442
- [
18443
- EVENT_CODE.down,
18444
- EVENT_CODE.pageDown,
18445
- EVENT_CODE.home
18446
- ];
18447
- [EVENT_CODE.up, EVENT_CODE.pageUp, EVENT_CODE.end];
18448
20925
  createCollectionWithScope("Dropdown");
18449
20926
 
18450
20927
  const inputNumberProps = buildProps({
@@ -18503,11 +20980,11 @@ const inputNumberEmits = {
18503
20980
  [UPDATE_MODEL_EVENT]: (val) => isNumber(val) || isNil(val)
18504
20981
  };
18505
20982
 
18506
- const __default__$e = defineComponent({
20983
+ const __default__$g = defineComponent({
18507
20984
  name: "ElInputNumber"
18508
20985
  });
18509
- const _sfc_main$m = /* @__PURE__ */ defineComponent({
18510
- ...__default__$e,
20986
+ const _sfc_main$o = /* @__PURE__ */ defineComponent({
20987
+ ...__default__$g,
18511
20988
  props: inputNumberProps,
18512
20989
  emits: inputNumberEmits,
18513
20990
  setup(__props, { expose, emit }) {
@@ -18833,7 +21310,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
18833
21310
  };
18834
21311
  }
18835
21312
  });
18836
- var InputNumber = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__file", "input-number.vue"]]);
21313
+ var InputNumber = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__file", "input-number.vue"]]);
18837
21314
 
18838
21315
  const ElInputNumber = withInstall(InputNumber);
18839
21316
 
@@ -18880,11 +21357,11 @@ const linkEmits = {
18880
21357
  click: (evt) => evt instanceof MouseEvent
18881
21358
  };
18882
21359
 
18883
- const __default__$d = defineComponent({
21360
+ const __default__$f = defineComponent({
18884
21361
  name: "ElLink"
18885
21362
  });
18886
- const _sfc_main$l = /* @__PURE__ */ defineComponent({
18887
- ...__default__$d,
21363
+ const _sfc_main$n = /* @__PURE__ */ defineComponent({
21364
+ ...__default__$f,
18888
21365
  props: linkProps,
18889
21366
  emits: linkEmits,
18890
21367
  setup(__props, { emit }) {
@@ -18924,7 +21401,7 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
18924
21401
  };
18925
21402
  }
18926
21403
  });
18927
- var Link = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__file", "link.vue"]]);
21404
+ var Link = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__file", "link.vue"]]);
18928
21405
 
18929
21406
  const ElLink = withInstall(Link);
18930
21407
 
@@ -18935,12 +21412,12 @@ function useOption$1(props, states) {
18935
21412
  const select = inject(selectKey);
18936
21413
  const selectGroup = inject(selectGroupKey, { disabled: false });
18937
21414
  const itemSelected = computed(() => {
18938
- return contains(castArray(select.props.modelValue), props.value);
21415
+ return contains(castArray$1(select.props.modelValue), props.value);
18939
21416
  });
18940
21417
  const limitReached = computed(() => {
18941
21418
  var _a;
18942
21419
  if (select.props.multiple) {
18943
- const modelValue = castArray((_a = select.props.modelValue) != null ? _a : []);
21420
+ const modelValue = castArray$1((_a = select.props.modelValue) != null ? _a : []);
18944
21421
  return !itemSelected.value && modelValue.length >= select.props.multipleLimit && select.props.multipleLimit > 0;
18945
21422
  } else {
18946
21423
  return false;
@@ -19006,7 +21483,7 @@ function useOption$1(props, states) {
19006
21483
  };
19007
21484
  }
19008
21485
 
19009
- const _sfc_main$k = defineComponent({
21486
+ const _sfc_main$m = defineComponent({
19010
21487
  name: "ElOption",
19011
21488
  componentName: "ElOption",
19012
21489
  props: {
@@ -19096,9 +21573,9 @@ function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) {
19096
21573
  [vShow, _ctx.visible]
19097
21574
  ]);
19098
21575
  }
19099
- var Option = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$6], ["__file", "option.vue"]]);
21576
+ var Option = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["render", _sfc_render$6], ["__file", "option.vue"]]);
19100
21577
 
19101
- const _sfc_main$j = defineComponent({
21578
+ const _sfc_main$l = defineComponent({
19102
21579
  name: "ElSelectDropdown",
19103
21580
  componentName: "ElSelectDropdown",
19104
21581
  setup() {
@@ -19145,7 +21622,7 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
19145
21622
  ], 2)) : createCommentVNode("v-if", true)
19146
21623
  ], 6);
19147
21624
  }
19148
- var ElSelectMenu$1 = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$5], ["__file", "select-dropdown.vue"]]);
21625
+ var ElSelectMenu$1 = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$5], ["__file", "select-dropdown.vue"]]);
19149
21626
 
19150
21627
  const useSelect$1 = (props, emit) => {
19151
21628
  const { t } = useLocale();
@@ -19285,7 +21762,7 @@ const useSelect$1 = (props, emit) => {
19285
21762
  });
19286
21763
  const shouldShowPlaceholder = computed(() => {
19287
21764
  if (props.multiple && !isUndefined(props.modelValue)) {
19288
- return castArray(props.modelValue).length === 0 && !states.inputValue;
21765
+ return castArray$1(props.modelValue).length === 0 && !states.inputValue;
19289
21766
  }
19290
21767
  const value = isArray$1(props.modelValue) ? props.modelValue[0] : props.modelValue;
19291
21768
  return props.filterable || isUndefined(value) ? !states.inputValue : true;
@@ -19381,7 +21858,7 @@ const useSelect$1 = (props, emit) => {
19381
21858
  }
19382
21859
  const result = [];
19383
21860
  if (!isUndefined(props.modelValue)) {
19384
- castArray(props.modelValue).forEach((value) => {
21861
+ castArray$1(props.modelValue).forEach((value) => {
19385
21862
  result.push(getOption(value));
19386
21863
  });
19387
21864
  }
@@ -19462,7 +21939,7 @@ const useSelect$1 = (props, emit) => {
19462
21939
  if (e.code === EVENT_CODE.delete)
19463
21940
  return;
19464
21941
  if (e.target.value.length <= 0) {
19465
- const value = castArray(props.modelValue).slice();
21942
+ const value = castArray$1(props.modelValue).slice();
19466
21943
  const lastNotDisabledIndex = getLastNotDisabledIndex(value);
19467
21944
  if (lastNotDisabledIndex < 0)
19468
21945
  return;
@@ -19476,7 +21953,7 @@ const useSelect$1 = (props, emit) => {
19476
21953
  const deleteTag = (event, tag) => {
19477
21954
  const index = states.selected.indexOf(tag);
19478
21955
  if (index > -1 && !selectDisabled.value) {
19479
- const value = castArray(props.modelValue).slice();
21956
+ const value = castArray$1(props.modelValue).slice();
19480
21957
  value.splice(index, 1);
19481
21958
  emit(UPDATE_MODEL_EVENT, value);
19482
21959
  emitChange(value);
@@ -19504,7 +21981,7 @@ const useSelect$1 = (props, emit) => {
19504
21981
  const handleOptionSelect = (option) => {
19505
21982
  var _a;
19506
21983
  if (props.multiple) {
19507
- const value = castArray((_a = props.modelValue) != null ? _a : []).slice();
21984
+ const value = castArray$1((_a = props.modelValue) != null ? _a : []).slice();
19508
21985
  const optionIndex = getValueIndex(value, option);
19509
21986
  if (optionIndex > -1) {
19510
21987
  value.splice(optionIndex, 1);
@@ -19911,7 +22388,7 @@ const SelectProps$1 = buildProps({
19911
22388
  });
19912
22389
 
19913
22390
  const COMPONENT_NAME = "ElSelect";
19914
- const _sfc_main$i = defineComponent({
22391
+ const _sfc_main$k = defineComponent({
19915
22392
  name: COMPONENT_NAME,
19916
22393
  componentName: COMPONENT_NAME,
19917
22394
  components: {
@@ -20321,9 +22798,9 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
20321
22798
  [_directive_click_outside, _ctx.handleClickOutside, _ctx.popperRef]
20322
22799
  ]);
20323
22800
  }
20324
- var Select$1 = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$4], ["__file", "select.vue"]]);
22801
+ var Select$1 = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$4], ["__file", "select.vue"]]);
20325
22802
 
20326
- const _sfc_main$h = defineComponent({
22803
+ const _sfc_main$j = defineComponent({
20327
22804
  name: "ElOptionGroup",
20328
22805
  componentName: "ElOptionGroup",
20329
22806
  props: {
@@ -20344,7 +22821,7 @@ const _sfc_main$h = defineComponent({
20344
22821
  return ((_a = node.type) == null ? void 0 : _a.name) === "ElOption" && !!((_b = node.component) == null ? void 0 : _b.proxy);
20345
22822
  };
20346
22823
  const flattedChildren = (node) => {
20347
- const Nodes = castArray(node);
22824
+ const Nodes = castArray$1(node);
20348
22825
  const children2 = [];
20349
22826
  Nodes.forEach((child) => {
20350
22827
  var _a, _b;
@@ -20395,7 +22872,7 @@ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
20395
22872
  [vShow, _ctx.visible]
20396
22873
  ]);
20397
22874
  }
20398
- var OptionGroup = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$3], ["__file", "option-group.vue"]]);
22875
+ var OptionGroup = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$3], ["__file", "option-group.vue"]]);
20399
22876
 
20400
22877
  const ElSelect = withInstall(Select$1, {
20401
22878
  Option,
@@ -20466,11 +22943,11 @@ const popoverEmits = {
20466
22943
  };
20467
22944
 
20468
22945
  const updateEventKeyRaw = `onUpdate:visible`;
20469
- const __default__$c = defineComponent({
22946
+ const __default__$e = defineComponent({
20470
22947
  name: "ElPopover"
20471
22948
  });
20472
- const _sfc_main$g = /* @__PURE__ */ defineComponent({
20473
- ...__default__$c,
22949
+ const _sfc_main$i = /* @__PURE__ */ defineComponent({
22950
+ ...__default__$e,
20474
22951
  props: popoverProps,
20475
22952
  emits: popoverEmits,
20476
22953
  setup(__props, { expose, emit }) {
@@ -20569,7 +23046,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
20569
23046
  };
20570
23047
  }
20571
23048
  });
20572
- var Popover = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__file", "popover.vue"]]);
23049
+ var Popover = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__file", "popover.vue"]]);
20573
23050
 
20574
23051
  const attachEvents = (el, binding) => {
20575
23052
  const popperComponent = binding.arg || binding.value;
@@ -20593,7 +23070,7 @@ const ElPopover = withInstall(Popover, {
20593
23070
  directive: ElPopoverDirective
20594
23071
  });
20595
23072
 
20596
- const _sfc_main$f = defineComponent({
23073
+ const _sfc_main$h = defineComponent({
20597
23074
  props: {
20598
23075
  item: {
20599
23076
  type: Object,
@@ -20617,7 +23094,7 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
20617
23094
  style: normalizeStyle({ ..._ctx.style, lineHeight: `${_ctx.height}px` })
20618
23095
  }, toDisplayString(_ctx.item.label), 7);
20619
23096
  }
20620
- var GroupItem = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$2], ["__file", "group-item.vue"]]);
23097
+ var GroupItem = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$2], ["__file", "group-item.vue"]]);
20621
23098
 
20622
23099
  function useOption(props, { emit }) {
20623
23100
  return {
@@ -20810,7 +23287,7 @@ const optionEmits = {
20810
23287
 
20811
23288
  const selectV2InjectionKey = Symbol("ElSelectV2Injection");
20812
23289
 
20813
- const _sfc_main$e = defineComponent({
23290
+ const _sfc_main$g = defineComponent({
20814
23291
  props: OptionProps,
20815
23292
  emits: optionEmits,
20816
23293
  setup(props, { emit }) {
@@ -20849,7 +23326,7 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
20849
23326
  ])
20850
23327
  ], 46, ["aria-selected", "onMousemove", "onClick"]);
20851
23328
  }
20852
- var OptionItem = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$1], ["__file", "option-item.vue"]]);
23329
+ var OptionItem = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$1], ["__file", "option-item.vue"]]);
20853
23330
 
20854
23331
  var safeIsNaN = Number.isNaN || function ponyfill(value) {
20855
23332
  return typeof value === "number" && value !== value;
@@ -22863,7 +25340,7 @@ const useSelect = (props, emit) => {
22863
25340
  };
22864
25341
  };
22865
25342
 
22866
- const _sfc_main$d = defineComponent({
25343
+ const _sfc_main$f = defineComponent({
22867
25344
  name: "ElSelectV2",
22868
25345
  components: {
22869
25346
  ElSelectMenu,
@@ -23250,22 +25727,22 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
23250
25727
  [_directive_click_outside, _ctx.handleClickOutside, _ctx.popperRef]
23251
25728
  ]);
23252
25729
  }
23253
- var Select = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render], ["__file", "select.vue"]]);
25730
+ var Select = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render], ["__file", "select.vue"]]);
23254
25731
 
23255
25732
  const ElSelectV2 = withInstall(Select);
23256
25733
 
23257
- const _hoisted_1$a = ["onClick"];
25734
+ const _hoisted_1$b = ["onClick"];
23258
25735
  const _hoisted_2$9 = { class: "hzzt-dropdown-name" };
23259
25736
  const _hoisted_3$6 = /* @__PURE__ */ createElementVNode("span", { class: "caret" }, null, -1);
23260
25737
  const _hoisted_4$5 = { class: "hzzt-dropdown-menu" };
23261
25738
  const _hoisted_5$3 = ["onClick"];
23262
25739
  const _hoisted_6$3 = { class: "submenu" };
23263
25740
  const _hoisted_7$3 = ["onClick"];
23264
- const __default__$b = defineComponent({
25741
+ const __default__$d = defineComponent({
23265
25742
  name: "HzztDropDown"
23266
25743
  });
23267
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
23268
- ...__default__$b,
25744
+ const _sfc_main$e = /* @__PURE__ */ defineComponent({
25745
+ ...__default__$d,
23269
25746
  props: {
23270
25747
  options: {
23271
25748
  type: definePropType$1(Array),
@@ -23325,7 +25802,7 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
23325
25802
  createElementVNode("ul", _hoisted_4$5, [
23326
25803
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option, index) => {
23327
25804
  return openBlock(), createElementBlock(Fragment, null, [
23328
- unref(isEmpty)(option[__props.props.children]) ? (openBlock(), createElementBlock("li", {
25805
+ unref(isEmpty$1)(option[__props.props.children]) ? (openBlock(), createElementBlock("li", {
23329
25806
  key: index,
23330
25807
  class: normalizeClass({
23331
25808
  "hzzt-dropdown-menu-item": true,
@@ -23368,17 +25845,17 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
23368
25845
  }), 256))
23369
25846
  ])
23370
25847
  ], 2)
23371
- ], 8, _hoisted_1$a)), [
25848
+ ], 8, _hoisted_1$b)), [
23372
25849
  [unref(ClickOutside), close]
23373
25850
  ]);
23374
25851
  };
23375
25852
  }
23376
25853
  });
23377
- var Dropdown = /* @__PURE__ */ _export_sfc$1(_sfc_main$c, [["__file", "index.vue"]]);
25854
+ var Dropdown = /* @__PURE__ */ _export_sfc$1(_sfc_main$e, [["__file", "index.vue"]]);
23378
25855
 
23379
25856
  const HzztDropdown = withInstall$1(Dropdown);
23380
25857
 
23381
- const _hoisted_1$9 = { class: "hzzt-collapse" };
25858
+ const _hoisted_1$a = { class: "hzzt-collapse" };
23382
25859
  const _hoisted_2$8 = { class: "flex align-items-center" };
23383
25860
  const _hoisted_3$5 = { class: "hzzt-collapse-title-wrapper" };
23384
25861
  const _hoisted_4$4 = /* @__PURE__ */ createElementVNode("div", { class: "hzzt-collapse-title-block" }, null, -1);
@@ -23388,11 +25865,11 @@ const _hoisted_7$2 = {
23388
25865
  key: 0,
23389
25866
  class: "hzzt-collapse-text"
23390
25867
  };
23391
- const __default__$a = defineComponent({
25868
+ const __default__$c = defineComponent({
23392
25869
  name: "HzztCollapse"
23393
25870
  });
23394
- const _sfc_main$b = /* @__PURE__ */ defineComponent({
23395
- ...__default__$a,
25871
+ const _sfc_main$d = /* @__PURE__ */ defineComponent({
25872
+ ...__default__$c,
23396
25873
  props: {
23397
25874
  defaultActive: {
23398
25875
  type: Boolean,
@@ -23418,7 +25895,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
23418
25895
  active.value = !active.value;
23419
25896
  }
23420
25897
  return (_ctx, _cache) => {
23421
- return openBlock(), createElementBlock("div", _hoisted_1$9, [
25898
+ return openBlock(), createElementBlock("div", _hoisted_1$a, [
23422
25899
  createElementVNode("div", {
23423
25900
  class: "hzzt-collapse-header",
23424
25901
  onClick: toggle
@@ -23438,11 +25915,11 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
23438
25915
  };
23439
25916
  }
23440
25917
  });
23441
- var Collapse = /* @__PURE__ */ _export_sfc$1(_sfc_main$b, [["__file", "collapse.vue"]]);
25918
+ var Collapse = /* @__PURE__ */ _export_sfc$1(_sfc_main$d, [["__file", "collapse.vue"]]);
23442
25919
 
23443
25920
  const HzztCollapse = withInstall$1(Collapse);
23444
25921
 
23445
- const _sfc_main$a = /* @__PURE__ */ defineComponent({
25922
+ const _sfc_main$c = /* @__PURE__ */ defineComponent({
23446
25923
  __name: "index",
23447
25924
  props: {
23448
25925
  name: {
@@ -23468,9 +25945,9 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
23468
25945
  };
23469
25946
  }
23470
25947
  });
23471
- var HzztIcon$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$a, [["__file", "index.vue"]]);
25948
+ var HzztIcon$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$c, [["__file", "index.vue"]]);
23472
25949
 
23473
- const _hoisted_1$8 = { class: "hzzt-tab flex align-items-center justify-content-between wrap" };
25950
+ const _hoisted_1$9 = { class: "hzzt-tab flex align-items-center justify-content-between wrap" };
23474
25951
  const _hoisted_2$7 = { class: "flex align-items-center" };
23475
25952
  const _hoisted_3$4 = { class: "flex" };
23476
25953
  const _hoisted_4$3 = ["onClick"];
@@ -23480,11 +25957,11 @@ const _hoisted_6$1 = {
23480
25957
  class: "hzzt-tab-badge-count"
23481
25958
  };
23482
25959
  const _hoisted_7$1 = { class: "flex wrap" };
23483
- const __default__$9 = defineComponent({
25960
+ const __default__$b = defineComponent({
23484
25961
  name: "HzztTab"
23485
25962
  });
23486
- const _sfc_main$9 = /* @__PURE__ */ defineComponent({
23487
- ...__default__$9,
25963
+ const _sfc_main$b = /* @__PURE__ */ defineComponent({
25964
+ ...__default__$b,
23488
25965
  props: {
23489
25966
  tabList: {
23490
25967
  type: Array,
@@ -23521,7 +25998,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
23521
25998
  emit("tab-close", index);
23522
25999
  }
23523
26000
  return (_ctx, _cache) => {
23524
- return openBlock(), createElementBlock("div", _hoisted_1$8, [
26001
+ return openBlock(), createElementBlock("div", _hoisted_1$9, [
23525
26002
  createElementVNode("div", _hoisted_2$7, [
23526
26003
  createElementVNode("div", _hoisted_3$4, [
23527
26004
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(customTabList), (tab, index) => {
@@ -23555,7 +26032,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
23555
26032
  };
23556
26033
  }
23557
26034
  });
23558
- var Tab = /* @__PURE__ */ _export_sfc$1(_sfc_main$9, [["__file", "index.vue"]]);
26035
+ var Tab = /* @__PURE__ */ _export_sfc$1(_sfc_main$b, [["__file", "index.vue"]]);
23559
26036
 
23560
26037
  const HzztTab = withInstall$1(Tab);
23561
26038
 
@@ -23571,15 +26048,15 @@ function tarnsElIconName(name) {
23571
26048
  return `hzzt-el${name.replace(/[A-Z]/g, (match) => `-${match.toLocaleLowerCase()}`)}`;
23572
26049
  }
23573
26050
 
23574
- const _hoisted_1$7 = { class: "flex justify-content-between hzzt-pagination" };
26051
+ const _hoisted_1$8 = { class: "flex justify-content-between hzzt-pagination" };
23575
26052
  const _hoisted_2$6 = { class: "flex align-items-center font-12 hzzt-pagination-total" };
23576
26053
  const _hoisted_3$3 = { class: "flex align-items-center hzzt-pagination-page font-14" };
23577
26054
  const _hoisted_4$2 = { class: "flex" };
23578
- const __default__$8 = defineComponent({
26055
+ const __default__$a = defineComponent({
23579
26056
  name: "HzztPagination"
23580
26057
  });
23581
- const _sfc_main$8 = /* @__PURE__ */ defineComponent({
23582
- ...__default__$8,
26058
+ const _sfc_main$a = /* @__PURE__ */ defineComponent({
26059
+ ...__default__$a,
23583
26060
  props: {
23584
26061
  pagination: {
23585
26062
  type: Object,
@@ -23609,7 +26086,7 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
23609
26086
  }
23610
26087
  }
23611
26088
  return (_ctx, _cache) => {
23612
- return openBlock(), createElementBlock("div", _hoisted_1$7, [
26089
+ return openBlock(), createElementBlock("div", _hoisted_1$8, [
23613
26090
  createElementVNode("p", _hoisted_2$6, toDisplayString(unref(t)("hzzt.pagination.total")) + toDisplayString(__props.pagination.total) + toDisplayString(unref(t)("hzzt.pagination.strip")), 1),
23614
26091
  createElementVNode("div", _hoisted_3$3, [
23615
26092
  renderSlot(_ctx.$slots, "right"),
@@ -23629,18 +26106,18 @@ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
23629
26106
  };
23630
26107
  }
23631
26108
  });
23632
- var Pagination = /* @__PURE__ */ _export_sfc$1(_sfc_main$8, [["__file", "index.vue"]]);
26109
+ var Pagination = /* @__PURE__ */ _export_sfc$1(_sfc_main$a, [["__file", "index.vue"]]);
23633
26110
 
23634
26111
  const HzztPagination = withInstall$1(Pagination);
23635
26112
 
23636
- const _hoisted_1$6 = { class: "flex align-content-center" };
26113
+ const _hoisted_1$7 = { class: "flex align-content-center" };
23637
26114
  const _hoisted_2$5 = { style: { "max-width": "300px" } };
23638
26115
  const _hoisted_3$2 = { style: { "padding": "0", "margin": "0", "word-break": "break-all", "white-space": "pre-wrap" } };
23639
- const __default__$7 = defineComponent({
26116
+ const __default__$9 = defineComponent({
23640
26117
  name: "HzztTooltip"
23641
26118
  });
23642
- const _sfc_main$7 = /* @__PURE__ */ defineComponent({
23643
- ...__default__$7,
26119
+ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
26120
+ ...__default__$9,
23644
26121
  props: {
23645
26122
  content: {
23646
26123
  type: String,
@@ -23651,7 +26128,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
23651
26128
  setup(__props, { emit }) {
23652
26129
  const attrs = useAttrs$1();
23653
26130
  return (_ctx, _cache) => {
23654
- return openBlock(), createElementBlock("div", _hoisted_1$6, [
26131
+ return openBlock(), createElementBlock("div", _hoisted_1$7, [
23655
26132
  createVNode(unref(ElTooltip), mergeProps({ effect: "dark" }, unref(attrs)), {
23656
26133
  content: withCtx(() => [
23657
26134
  renderSlot(_ctx.$slots, "content", {}, () => [
@@ -23674,11 +26151,11 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
23674
26151
  };
23675
26152
  }
23676
26153
  });
23677
- var Tooltip = /* @__PURE__ */ _export_sfc$1(_sfc_main$7, [["__file", "tooltip.vue"]]);
26154
+ var Tooltip = /* @__PURE__ */ _export_sfc$1(_sfc_main$9, [["__file", "tooltip.vue"]]);
23678
26155
 
23679
26156
  const HzztTooltip = withInstall$1(Tooltip);
23680
26157
 
23681
- const _hoisted_1$5 = {
26158
+ const _hoisted_1$6 = {
23682
26159
  key: 0,
23683
26160
  style: { "white-space": "nowrap" }
23684
26161
  };
@@ -23691,11 +26168,11 @@ const _hoisted_4$1 = {
23691
26168
  key: 0,
23692
26169
  class: "margin-l-1 margin-r-2"
23693
26170
  };
23694
- const __default__$6 = defineComponent({
26171
+ const __default__$8 = defineComponent({
23695
26172
  name: "HzztPageSize"
23696
26173
  });
23697
- const _sfc_main$6 = /* @__PURE__ */ defineComponent({
23698
- ...__default__$6,
26174
+ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
26175
+ ...__default__$8,
23699
26176
  props: {
23700
26177
  modelValue: {
23701
26178
  type: Number,
@@ -23752,7 +26229,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
23752
26229
  return openBlock(), createElementBlock("main", {
23753
26230
  class: normalizeClass([unref(compKls), "flex wrap align-items-center justify-content-end"])
23754
26231
  }, [
23755
- __props.total > 0 && !__props.isManual ? (openBlock(), createElementBlock("span", _hoisted_1$5, toDisplayString(unref(t)("hzzt.pageSize.total")) + toDisplayString(__props.total) + toDisplayString(unref(t)("hzzt.pageSize.strip")), 1)) : createCommentVNode("v-if", true),
26232
+ __props.total > 0 && !__props.isManual ? (openBlock(), createElementBlock("span", _hoisted_1$6, toDisplayString(unref(t)("hzzt.pageSize.total")) + toDisplayString(__props.total) + toDisplayString(unref(t)("hzzt.pageSize.strip")), 1)) : createCommentVNode("v-if", true),
23756
26233
  __props.isManual ? (openBlock(), createElementBlock("span", _hoisted_2$4, toDisplayString(unref(t)("hzzt.pageSize.d")) + toDisplayString(__props.modelValue) + toDisplayString(unref(t)("hzzt.pageSize.page")), 1)) : createCommentVNode("v-if", true),
23757
26234
  __props.pageSizeOptions.length ? (openBlock(), createElementBlock("div", {
23758
26235
  key: 2,
@@ -23822,15 +26299,15 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
23822
26299
  };
23823
26300
  }
23824
26301
  });
23825
- var PageSize = /* @__PURE__ */ _export_sfc$1(_sfc_main$6, [["__file", "index.vue"]]);
26302
+ var PageSize = /* @__PURE__ */ _export_sfc$1(_sfc_main$8, [["__file", "index.vue"]]);
23826
26303
 
23827
26304
  const HzztPageSize = withInstall$1(PageSize);
23828
26305
 
23829
- const __default__$5 = defineComponent({
26306
+ const __default__$7 = defineComponent({
23830
26307
  name: "HzztConfirmPassword"
23831
26308
  });
23832
- const _sfc_main$5 = /* @__PURE__ */ defineComponent({
23833
- ...__default__$5,
26309
+ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
26310
+ ...__default__$7,
23834
26311
  props: {
23835
26312
  placeholder: {
23836
26313
  type: String,
@@ -23890,16 +26367,16 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
23890
26367
  };
23891
26368
  }
23892
26369
  });
23893
- var ConfirmPassword = /* @__PURE__ */ _export_sfc$1(_sfc_main$5, [["__file", "confirm-password.vue"]]);
26370
+ var ConfirmPassword = /* @__PURE__ */ _export_sfc$1(_sfc_main$7, [["__file", "confirm-password.vue"]]);
23894
26371
 
23895
26372
  const HzztConfirmPassword = withInstall$1(ConfirmPassword);
23896
26373
 
23897
- const _hoisted_1$4 = ["onClick"];
23898
- const __default__$4 = defineComponent({
26374
+ const _hoisted_1$5 = ["onClick"];
26375
+ const __default__$6 = defineComponent({
23899
26376
  name: "HzztCheckButton"
23900
26377
  });
23901
- const _sfc_main$4 = /* @__PURE__ */ defineComponent({
23902
- ...__default__$4,
26378
+ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
26379
+ ...__default__$6,
23903
26380
  props: {
23904
26381
  options: {
23905
26382
  type: Array,
@@ -23960,7 +26437,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
23960
26437
  ...unref(spanKls)
23961
26438
  ], "flex-1"]),
23962
26439
  onClick: ($event) => selectValue(item.value)
23963
- }, toDisplayString(item.label), 11, _hoisted_1$4)
26440
+ }, toDisplayString(item.label), 11, _hoisted_1$5)
23964
26441
  ]),
23965
26442
  _: 2
23966
26443
  }, 1032, ["hidden", "value"]);
@@ -23969,7 +26446,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
23969
26446
  };
23970
26447
  }
23971
26448
  });
23972
- var CheckButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$4, [["__file", "index.vue"]]);
26449
+ var CheckButton = /* @__PURE__ */ _export_sfc$1(_sfc_main$6, [["__file", "index.vue"]]);
23973
26450
 
23974
26451
  const HzztCheckButton = withInstall$1(CheckButton);
23975
26452
 
@@ -24182,11 +26659,11 @@ var dayjs_min = {exports: {}};
24182
26659
  var dayjs = dayjs_min.exports;
24183
26660
 
24184
26661
  const parseDate = function(date, format, lang) {
24185
- const day = isEmpty(format) || format === "x" ? dayjs(date).locale(lang) : dayjs(date, format).locale(lang);
26662
+ const day = isEmpty$1(format) || format === "x" ? dayjs(date).locale(lang) : dayjs(date, format).locale(lang);
24186
26663
  return day.isValid() ? day : void 0;
24187
26664
  };
24188
26665
  const formatter = function(date, format, lang) {
24189
- if (isEmpty(format))
26666
+ if (isEmpty$1(format))
24190
26667
  return date;
24191
26668
  if (format === "x")
24192
26669
  return +date;
@@ -24210,7 +26687,7 @@ function range(n) {
24210
26687
  return Array.from({ length: n }).map((_, n2) => n2);
24211
26688
  }
24212
26689
 
24213
- const _hoisted_1$3 = { class: "el-date-picker" };
26690
+ const _hoisted_1$4 = { class: "el-date-picker" };
24214
26691
  const _hoisted_2$3 = { class: "el-picker-panel__body" };
24215
26692
  const _hoisted_3 = {
24216
26693
  class: "el-date-picker__header el-date-picker__header--bordered",
@@ -24227,11 +26704,11 @@ const _hoisted_8 = { class: "cell" };
24227
26704
  const _hoisted_9 = { class: "cell" };
24228
26705
  const _hoisted_10 = { class: "cell" };
24229
26706
  const _hoisted_11 = { class: "cell" };
24230
- const __default__$3 = defineComponent({
26707
+ const __default__$5 = defineComponent({
24231
26708
  name: "HzztQuarterPicker"
24232
26709
  });
24233
- const _sfc_main$3 = /* @__PURE__ */ defineComponent({
24234
- ...__default__$3,
26710
+ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
26711
+ ...__default__$5,
24235
26712
  props: {
24236
26713
  size: useSizeProp$1,
24237
26714
  format: {
@@ -24409,7 +26886,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
24409
26886
  }, 16, ["disabled", "size", "placeholder", "value"])
24410
26887
  ]),
24411
26888
  default: withCtx(() => [
24412
- createElementVNode("div", _hoisted_1$3, [
26889
+ createElementVNode("div", _hoisted_1$4, [
24413
26890
  createElementVNode("div", _hoisted_2$3, [
24414
26891
  createElementVNode("div", _hoisted_3, [
24415
26892
  createElementVNode("button", {
@@ -24471,7 +26948,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
24471
26948
  };
24472
26949
  }
24473
26950
  });
24474
- var QuarterPicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$3, [["__file", "index.vue"]]);
26951
+ var QuarterPicker = /* @__PURE__ */ _export_sfc$1(_sfc_main$5, [["__file", "index.vue"]]);
24475
26952
 
24476
26953
  const HzztQuarterPicker = withInstall$1(QuarterPicker);
24477
26954
 
@@ -24495,7 +26972,7 @@ const scanEmits = {
24495
26972
  [INPUT_EVENT$1]: (value) => isString$1(value)
24496
26973
  };
24497
26974
 
24498
- const _hoisted_1$2 = /* @__PURE__ */ createElementVNode("div", { style: { "width": "0", "height": "0", "overflow": "hidden" } }, [
26975
+ const _hoisted_1$3 = /* @__PURE__ */ createElementVNode("div", { style: { "width": "0", "height": "0", "overflow": "hidden" } }, [
24499
26976
  /* @__PURE__ */ createElementVNode("input", {
24500
26977
  readonly: "",
24501
26978
  style: { "width": "0", "height": "0", "overflow": "hidden" }
@@ -24511,12 +26988,12 @@ const _hoisted_2$2 = {
24511
26988
  class: "width-100%",
24512
26989
  style: { "overflow": "hidden" }
24513
26990
  };
24514
- const __default__$2 = defineComponent({
26991
+ const __default__$4 = defineComponent({
24515
26992
  inheritAttrs: false,
24516
26993
  name: "HzztScan"
24517
26994
  });
24518
- const _sfc_main$2 = /* @__PURE__ */ defineComponent({
24519
- ...__default__$2,
26995
+ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
26996
+ ...__default__$4,
24520
26997
  props: scanProps,
24521
26998
  emits: scanEmits,
24522
26999
  setup(__props, { expose, emit }) {
@@ -24595,7 +27072,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
24595
27072
  class: normalizeClass(["hzzt-scan", _ctx.$attrs.class]),
24596
27073
  style: normalizeStyle([{ "position": "relative" }, _ctx.$attrs.style])
24597
27074
  }, [
24598
- _hoisted_1$2,
27075
+ _hoisted_1$3,
24599
27076
  createVNode(unref(ElInput), mergeProps({
24600
27077
  ref_key: "inputRef",
24601
27078
  ref: inputRef,
@@ -24635,7 +27112,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
24635
27112
  };
24636
27113
  }
24637
27114
  });
24638
- var Scan = /* @__PURE__ */ _export_sfc$1(_sfc_main$2, [["__file", "scan.vue"]]);
27115
+ var Scan = /* @__PURE__ */ _export_sfc$1(_sfc_main$4, [["__file", "scan.vue"]]);
24639
27116
 
24640
27117
  const HzztScan = withInstall$1(Scan);
24641
27118
 
@@ -24679,13 +27156,13 @@ const selectInputEmits = {
24679
27156
  change: (value) => isString$1(value)
24680
27157
  };
24681
27158
 
24682
- const _hoisted_1$1 = { slot: "append" };
27159
+ const _hoisted_1$2 = { slot: "append" };
24683
27160
  const _hoisted_2$1 = { key: 0 };
24684
- const __default__$1 = defineComponent({
27161
+ const __default__$3 = defineComponent({
24685
27162
  name: "HzztSelectInput"
24686
27163
  });
24687
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
24688
- ...__default__$1,
27164
+ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
27165
+ ...__default__$3,
24689
27166
  props: selectInputProps,
24690
27167
  emits: selectInputEmits,
24691
27168
  setup(__props, { emit }) {
@@ -24768,7 +27245,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
24768
27245
  onChange: change
24769
27246
  }), {
24770
27247
  default: withCtx(() => [
24771
- createElementVNode("template", _hoisted_1$1, [
27248
+ createElementVNode("template", _hoisted_1$2, [
24772
27249
  renderSlot(_ctx.$slots, "append")
24773
27250
  ])
24774
27251
  ]),
@@ -24794,7 +27271,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
24794
27271
  };
24795
27272
  }
24796
27273
  });
24797
- var SelectInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$1, [["__file", "select-input.vue"]]);
27274
+ var SelectInput = /* @__PURE__ */ _export_sfc$1(_sfc_main$3, [["__file", "select-input.vue"]]);
24798
27275
 
24799
27276
  const HzztSelectInput = withInstall$1(SelectInput);
24800
27277
 
@@ -24817,19 +27294,19 @@ const selectTextareaProps = buildProps$1({
24817
27294
  }
24818
27295
  });
24819
27296
  const selectTextareaEmits = {
24820
- [UPDATE_MODEL_EVENT$1]: (value) => isString$1(value),
24821
- input: (value) => isString$1(value),
24822
- change: (value) => isString$1(value),
24823
- select: (value) => isString$1(value)
27297
+ [UPDATE_MODEL_EVENT$1]: (val) => isString$1(val) || isNumber$1(val) || isBoolean$1(val),
27298
+ [CHANGE_EVENT$1]: (val) => isString$1(val) || isNumber$1(val) || isBoolean$1(val),
27299
+ [INPUT_EVENT$1]: (val) => isString$1(val) || isNumber$1(val) || isBoolean$1(val),
27300
+ select: (val) => isString$1(val) || isNumber$1(val) || isBoolean$1(val)
24824
27301
  };
24825
27302
 
24826
- const _hoisted_1 = { class: "flex column" };
27303
+ const _hoisted_1$1 = { class: "flex column" };
24827
27304
  const _hoisted_2 = { class: "flex align-items-center" };
24828
- const __default__ = defineComponent({
27305
+ const __default__$2 = defineComponent({
24829
27306
  name: "HzztSelectTextarea"
24830
27307
  });
24831
- const _sfc_main = /* @__PURE__ */ defineComponent({
24832
- ...__default__,
27308
+ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
27309
+ ...__default__$2,
24833
27310
  props: selectTextareaProps,
24834
27311
  emits: selectTextareaEmits,
24835
27312
  setup(__props, { emit }) {
@@ -24865,9 +27342,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
24865
27342
  function selectChange(val) {
24866
27343
  if (!inputVal.value && inputVal.value !== 0)
24867
27344
  inputVal.value = "";
27345
+ selectValue.value = "";
24868
27346
  let content = val;
24869
27347
  if (!props.replace) {
24870
- const inputEl = inputRef.value.getElementsByTagName("textarea")[0];
27348
+ const inputEl = inputRef.value.$el.getElementsByTagName("textarea")[0];
24871
27349
  content = insertCursorPosition(inputEl, val);
24872
27350
  }
24873
27351
  input(content);
@@ -24878,7 +27356,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
24878
27356
  return openBlock(), createElementBlock("div", {
24879
27357
  class: normalizeClass(unref(containerCls))
24880
27358
  }, [
24881
- createElementVNode("div", _hoisted_1, [
27359
+ createElementVNode("div", _hoisted_1$1, [
24882
27360
  createElementVNode("div", _hoisted_2, [
24883
27361
  renderSlot(_ctx.$slots, "title", {}, () => [
24884
27362
  createVNode(HzztTitle$1, {
@@ -24914,10 +27392,277 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
24914
27392
  };
24915
27393
  }
24916
27394
  });
24917
- var SelectTextarea = /* @__PURE__ */ _export_sfc$1(_sfc_main, [["__file", "select-textarea.vue"]]);
27395
+ var SelectTextarea = /* @__PURE__ */ _export_sfc$1(_sfc_main$2, [["__file", "select-textarea.vue"]]);
24918
27396
 
24919
27397
  const HzztSelectTextarea = withInstall$1(SelectTextarea);
24920
27398
 
27399
+ const inputRangeProps = buildProps$1({
27400
+ modelValue: {
27401
+ type: Array,
27402
+ default: () => []
27403
+ },
27404
+ size: useSizeProp$1,
27405
+ disabled: Boolean,
27406
+ clearable: {
27407
+ type: Boolean,
27408
+ default: false
27409
+ },
27410
+ startPlaceholder: String,
27411
+ endPlaceholder: String,
27412
+ startProps: Object,
27413
+ endProps: Object
27414
+ });
27415
+ const inputRangeEmits = {
27416
+ [UPDATE_MODEL_EVENT$1]: (val) => isArray$1(val),
27417
+ [CHANGE_EVENT$1]: (val) => isArray$1(val)
27418
+ };
27419
+
27420
+ const _hoisted_1 = /* @__PURE__ */ createElementVNode("span", { class: "margin-h-1" }, "\u2014\u2014", -1);
27421
+ const __default__$1 = defineComponent({
27422
+ name: "HzztInputRange"
27423
+ });
27424
+ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
27425
+ ...__default__$1,
27426
+ props: inputRangeProps,
27427
+ emits: inputRangeEmits,
27428
+ setup(__props, { emit }) {
27429
+ const props = __props;
27430
+ const startValue = ref(props.modelValue[0]);
27431
+ const endValue = ref(props.modelValue[1]);
27432
+ const nsInput = useNamespace$1("input-range");
27433
+ const formSize = useFormSize();
27434
+ const formDisabled = useFormDisabled();
27435
+ const trueSize = computed(() => props.size || formSize.value || useGlobalSize$1().value);
27436
+ const trueDisabled = computed(() => props.disabled || formDisabled.value);
27437
+ const containerCls = computed(() => [
27438
+ nsInput.b(),
27439
+ nsInput.m(trueSize.value)
27440
+ ]);
27441
+ watch(() => props.modelValue, (v) => {
27442
+ startValue.value = v[0];
27443
+ endValue.value = v[1];
27444
+ }, {
27445
+ deep: true
27446
+ });
27447
+ function change() {
27448
+ if (startValue.value || endValue.value) {
27449
+ const modelValue = [startValue.value, endValue.value];
27450
+ emit("update:modelValue", modelValue);
27451
+ emit("change", modelValue);
27452
+ } else if (!startValue.value && !endValue.value) {
27453
+ emit("update:modelValue", []);
27454
+ emit("change", []);
27455
+ }
27456
+ }
27457
+ return (_ctx, _cache) => {
27458
+ const _component_el_input = resolveComponent("el-input");
27459
+ return openBlock(), createElementBlock("div", {
27460
+ class: normalizeClass(["flex align-items-center", unref(containerCls)])
27461
+ }, [
27462
+ createVNode(_component_el_input, mergeProps({
27463
+ modelValue: startValue.value,
27464
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => startValue.value = $event)
27465
+ }, _ctx.startProps, {
27466
+ clearable: _ctx.clearable,
27467
+ placeholder: _ctx.startPlaceholder,
27468
+ size: unref(trueSize),
27469
+ disabled: unref(trueDisabled),
27470
+ class: "flex-1",
27471
+ onChange: change
27472
+ }), null, 16, ["modelValue", "clearable", "placeholder", "size", "disabled"]),
27473
+ _hoisted_1,
27474
+ createVNode(_component_el_input, mergeProps({
27475
+ modelValue: endValue.value,
27476
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => endValue.value = $event)
27477
+ }, _ctx.endProps, {
27478
+ clearable: _ctx.clearable,
27479
+ placeholder: _ctx.endPlaceholder,
27480
+ size: unref(trueSize),
27481
+ disabled: unref(trueDisabled),
27482
+ class: "flex-1",
27483
+ onChange: change
27484
+ }), null, 16, ["modelValue", "clearable", "placeholder", "size", "disabled"])
27485
+ ], 2);
27486
+ };
27487
+ }
27488
+ });
27489
+ var InputRange = /* @__PURE__ */ _export_sfc$1(_sfc_main$1, [["__file", "input-range.vue"]]);
27490
+
27491
+ const HzztInputRange = withInstall$1(InputRange);
27492
+
27493
+ const cascaderProps = buildProps$1({
27494
+ cascaderProps: {
27495
+ type: Object,
27496
+ default: () => ({
27497
+ showAllLevels: true
27498
+ })
27499
+ },
27500
+ disabled: Boolean,
27501
+ readonly: Boolean,
27502
+ clearable: Boolean,
27503
+ size: useSizeProp$1,
27504
+ options: {
27505
+ type: definePropType$1(Array),
27506
+ default: () => []
27507
+ },
27508
+ placeholder: {
27509
+ type: String,
27510
+ default: ""
27511
+ },
27512
+ modelValue: {
27513
+ type: definePropType$1([
27514
+ String
27515
+ ]),
27516
+ default: ""
27517
+ }
27518
+ });
27519
+ const cascaderEmits = {
27520
+ [UPDATE_MODEL_EVENT$1]: (value) => isString$1(value),
27521
+ input: (value) => isString$1(value),
27522
+ change: (value) => isString$1(value)
27523
+ };
27524
+
27525
+ function getCascaderId(targetId = "", list = []) {
27526
+ function get(list2, arr = []) {
27527
+ var _a;
27528
+ for (let i = 0; i < list2.length; i++) {
27529
+ const item = list2[i];
27530
+ if (item.value === targetId) {
27531
+ arr.unshift(item.value);
27532
+ break;
27533
+ }
27534
+ if ((_a = item == null ? void 0 : item.children) == null ? void 0 : _a.length) {
27535
+ arr = get(item.children, arr);
27536
+ if (arr.length) {
27537
+ if (item.value) {
27538
+ arr.unshift(item.value);
27539
+ }
27540
+ break;
27541
+ }
27542
+ }
27543
+ }
27544
+ return arr;
27545
+ }
27546
+ return get(list, []);
27547
+ }
27548
+
27549
+ const __default__ = defineComponent({
27550
+ name: "HzztCascader"
27551
+ });
27552
+ const _sfc_main = /* @__PURE__ */ defineComponent({
27553
+ ...__default__,
27554
+ props: cascaderProps,
27555
+ emits: cascaderEmits,
27556
+ setup(__props, { emit }) {
27557
+ const props = __props;
27558
+ const attrs = useAttrs$1();
27559
+ const inputVal = ref(props.modelValue);
27560
+ const cascaderVal = ref();
27561
+ const inputRef = ref();
27562
+ const cascaderRef = ref();
27563
+ const nsCascader = useNamespace$1("cascader");
27564
+ const formSize = useFormSize();
27565
+ const formDisabled = useFormDisabled();
27566
+ const trueSize = computed(() => props.size || formSize.value || useGlobalSize$1().value);
27567
+ const trueDisabled = computed(() => props.disabled || formDisabled.value);
27568
+ const containerCls = computed(() => [
27569
+ "relative",
27570
+ nsCascader.b(),
27571
+ nsCascader.m(trueSize.value)
27572
+ ]);
27573
+ const inputCls = computed(() => [
27574
+ nsCascader.e("input")
27575
+ ]);
27576
+ const cascaderCls = computed(() => [
27577
+ nsCascader.e("cascader")
27578
+ ]);
27579
+ const _inputProps = computed(() => ({
27580
+ disabled: trueDisabled.value,
27581
+ size: trueSize.value,
27582
+ clearable: props.clearable,
27583
+ placeholder: props.placeholder,
27584
+ readonly: props.readonly,
27585
+ ...attrs
27586
+ }));
27587
+ const _cascaderProps = computed(() => ({
27588
+ options: props.options,
27589
+ disabled: trueDisabled.value,
27590
+ size: trueSize.value,
27591
+ clearable: props.clearable,
27592
+ placeholder: props.placeholder,
27593
+ props: { checkStrictly: true, expandTrigger: "hover" },
27594
+ filterable: true,
27595
+ separator: "/",
27596
+ showAllLevels: true,
27597
+ ...props.cascaderProps
27598
+ }));
27599
+ watch(() => props.modelValue, (v) => {
27600
+ inputVal.value = v;
27601
+ getCascaderVal();
27602
+ });
27603
+ watch(() => props.options, (v) => {
27604
+ if (!v)
27605
+ return;
27606
+ getCascaderVal();
27607
+ });
27608
+ getCascaderVal();
27609
+ function input(str) {
27610
+ emit("update:modelValue", str);
27611
+ emit("input", str);
27612
+ }
27613
+ function change(str) {
27614
+ emit("change", str);
27615
+ }
27616
+ function click(e) {
27617
+ cascaderRef.value.togglePopperVisible();
27618
+ const target = e.target;
27619
+ target.focus();
27620
+ }
27621
+ function cascaderChange(val) {
27622
+ const separator = _cascaderProps.value.separator || "/";
27623
+ inputVal.value = val ? isArray$1(val) ? val.join(separator) : [val].join(separator) : "";
27624
+ input(inputVal.value);
27625
+ change(inputVal.value);
27626
+ }
27627
+ function getCascaderVal() {
27628
+ const separator = _cascaderProps.value.separator || "/";
27629
+ if (_cascaderProps.value.showAllLevels === false) {
27630
+ const list = getCascaderId(props.modelValue, props.options);
27631
+ cascaderVal.value = list.join(separator);
27632
+ } else {
27633
+ cascaderVal.value = (props.modelValue || "").split(separator);
27634
+ }
27635
+ }
27636
+ return (_ctx, _cache) => {
27637
+ return openBlock(), createElementBlock("div", {
27638
+ class: normalizeClass(unref(containerCls))
27639
+ }, [
27640
+ createVNode(unref(ElInput), mergeProps({
27641
+ class: unref(inputCls),
27642
+ modelValue: inputVal.value,
27643
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => inputVal.value = $event),
27644
+ ref_key: "inputRef",
27645
+ ref: inputRef
27646
+ }, unref(_inputProps), {
27647
+ onInput: input,
27648
+ onClick: click,
27649
+ onChange: change
27650
+ }), null, 16, ["class", "modelValue"]),
27651
+ createVNode(unref(ElCascader), mergeProps({
27652
+ class: unref(cascaderCls),
27653
+ modelValue: cascaderVal.value,
27654
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => cascaderVal.value = $event),
27655
+ ref_key: "cascaderRef",
27656
+ ref: cascaderRef
27657
+ }, unref(_cascaderProps), { onChange: cascaderChange }), null, 16, ["class", "modelValue"])
27658
+ ], 2);
27659
+ };
27660
+ }
27661
+ });
27662
+ var Cascader = /* @__PURE__ */ _export_sfc$1(_sfc_main, [["__file", "cascader.vue"]]);
27663
+
27664
+ const HzztCascader = withInstall$1(Cascader);
27665
+
24921
27666
  var Components = [
24922
27667
  HzztConfigProvider,
24923
27668
  HzztTitle,
@@ -24933,7 +27678,9 @@ var Components = [
24933
27678
  HzztQuarterPicker,
24934
27679
  HzztScan,
24935
27680
  HzztSelectInput,
24936
- HzztSelectTextarea
27681
+ HzztSelectTextarea,
27682
+ HzztInputRange,
27683
+ HzztCascader
24937
27684
  ];
24938
27685
 
24939
27686
  var Plugins = [];
@@ -25145,4 +27892,4 @@ function initMouseEvent(el, callback) {
25145
27892
  const install = installer.install;
25146
27893
  const version = installer.version;
25147
27894
 
25148
- export { Blur, CHANGE_EVENT$1 as CHANGE_EVENT, Download, Drag, Height, Highlight, HzztCheckButton, HzztCollapse, HzztConfigProvider, HzztConfirmPassword, HzztDropdown, HzztIcon, HzztPageSize, HzztPagination, HzztQuarterPicker, HzztScan, HzztSelectInput, HzztSelectTextarea, HzztTab, HzztTitle, HzztTooltip, INPUT_EVENT$1 as INPUT_EVENT, INSTALLED_KEY, SIZE_INJECTION_KEY$1 as SIZE_INJECTION_KEY, UPDATE_MODEL_EVENT$1 as UPDATE_MODEL_EVENT, WEEK_DAYS, buildLocaleContext$1 as buildLocaleContext, buildTranslator$1 as buildTranslator, componentSizeMap, componentSizes$1 as componentSizes, configProviderContextKey$1 as configProviderContextKey, configProviderProps, datePickTypes, installer as default, defaultNamespace$1 as defaultNamespace, insertCursorPosition, install, localeContextKey$1 as localeContextKey, makeInstaller, namespaceContextKey$1 as namespaceContextKey, numberToLetter, provideGlobalConfig, scanEmits, scanProps, selectInputEmits, selectInputProps, selectTextareaEmits, selectTextareaProps, titleProps, translate$1 as translate, useGetDerivedNamespace$1 as useGetDerivedNamespace, useGlobalConfig$1 as useGlobalConfig, useGlobalSize$1 as useGlobalSize, useLocale$1 as useLocale, useNamespace$1 as useNamespace, useSizeProp$1 as useSizeProp, useSizeProps, version };
27895
+ export { Blur, CHANGE_EVENT$1 as CHANGE_EVENT, Download, Drag, Height, Highlight, HzztCascader, HzztCheckButton, HzztCollapse, HzztConfigProvider, HzztConfirmPassword, HzztDropdown, HzztIcon, HzztInputRange, HzztPageSize, HzztPagination, HzztQuarterPicker, HzztScan, HzztSelectInput, HzztSelectTextarea, HzztTab, HzztTitle, HzztTooltip, INPUT_EVENT$1 as INPUT_EVENT, INSTALLED_KEY, SIZE_INJECTION_KEY$1 as SIZE_INJECTION_KEY, UPDATE_MODEL_EVENT$1 as UPDATE_MODEL_EVENT, WEEK_DAYS, buildLocaleContext$1 as buildLocaleContext, buildTranslator$1 as buildTranslator, cascaderEmits, cascaderProps, componentSizeMap, componentSizes$1 as componentSizes, configProviderContextKey$1 as configProviderContextKey, configProviderProps, datePickTypes, installer as default, defaultNamespace$1 as defaultNamespace, inputRangeEmits, inputRangeProps, insertCursorPosition, install, localeContextKey$1 as localeContextKey, makeInstaller, namespaceContextKey$1 as namespaceContextKey, numberToLetter, provideGlobalConfig, scanEmits, scanProps, selectInputEmits, selectInputProps, selectTextareaEmits, selectTextareaProps, titleProps, translate$1 as translate, useGetDerivedNamespace$1 as useGetDerivedNamespace, useGlobalConfig$1 as useGlobalConfig, useGlobalSize$1 as useGlobalSize, useLocale$1 as useLocale, useNamespace$1 as useNamespace, useSizeProp$1 as useSizeProp, useSizeProps, version };