@varlet/ui 3.0.6 → 3.1.0-alpha.1709284240068

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 (67) hide show
  1. package/es/action-sheet/ActionItem.mjs +79 -0
  2. package/es/action-sheet/ActionItemSfc.css +0 -0
  3. package/es/action-sheet/ActionSheet.mjs +29 -56
  4. package/es/action-sheet/actionSheet.css +1 -1
  5. package/es/action-sheet/props.mjs +4 -1
  6. package/es/action-sheet/style/index.mjs +1 -0
  7. package/es/button/Button.mjs +6 -6
  8. package/es/checkbox/Checkbox.mjs +77 -49
  9. package/es/checkbox/checkbox.css +1 -1
  10. package/es/context/stack.mjs +46 -0
  11. package/es/dialog/Dialog.mjs +12 -2
  12. package/es/dialog/props.mjs +4 -1
  13. package/es/field-decorator/FieldDecorator.mjs +10 -7
  14. package/es/field-decorator/props.mjs +1 -1
  15. package/es/hover-overlay/HoverOverlay.mjs +4 -2
  16. package/es/image-preview/ImagePreview.mjs +12 -16
  17. package/es/image-preview/props.mjs +4 -1
  18. package/es/index.bundle.mjs +1 -1
  19. package/es/index.mjs +1 -1
  20. package/es/input/Input.mjs +8 -8
  21. package/es/link/Link.mjs +10 -4
  22. package/es/link/link.css +1 -1
  23. package/es/menu/menu.css +1 -1
  24. package/es/menu/props.mjs +6 -1
  25. package/es/menu/usePopover.mjs +12 -2
  26. package/es/menu-option/MenuOption.mjs +72 -43
  27. package/es/menu-option/menuOption.css +1 -1
  28. package/es/menu-select/MenuSelect.mjs +28 -3
  29. package/es/option/Option.mjs +77 -48
  30. package/es/option/option.css +1 -1
  31. package/es/overlay/Overlay.mjs +19 -2
  32. package/es/overlay/props.mjs +7 -1
  33. package/es/paper/paper.css +1 -1
  34. package/es/picker/Picker.mjs +2 -0
  35. package/es/picker/props.mjs +4 -1
  36. package/es/popup/Popup.mjs +18 -2
  37. package/es/popup/props.mjs +7 -1
  38. package/es/select/Select.mjs +279 -213
  39. package/es/select/select.css +1 -1
  40. package/es/snackbar/style/index.mjs +1 -1
  41. package/es/style.css +1 -1
  42. package/es/switch/Switch.mjs +82 -52
  43. package/es/switch/switch.css +1 -1
  44. package/es/tab/tab.css +1 -1
  45. package/es/themes/dark/link.mjs +2 -1
  46. package/es/themes/dark/paper.mjs +2 -1
  47. package/es/themes/dark/tab.mjs +3 -1
  48. package/es/themes/md3-dark/link.mjs +2 -1
  49. package/es/themes/md3-dark/paper.mjs +2 -1
  50. package/es/themes/md3-dark/tab.mjs +3 -1
  51. package/es/themes/md3-light/link.mjs +2 -1
  52. package/es/themes/md3-light/paper.mjs +2 -1
  53. package/es/themes/md3-light/tab.mjs +3 -1
  54. package/es/tooltip/props.mjs +6 -1
  55. package/es/uploader/Uploader.mjs +70 -44
  56. package/es/uploader/uploader.css +1 -1
  57. package/es/utils/elements.mjs +32 -0
  58. package/es/varlet.esm.js +7721 -7457
  59. package/highlight/web-types.en-US.json +2 -2
  60. package/highlight/web-types.zh-CN.json +3 -3
  61. package/lib/style.css +1 -1
  62. package/lib/varlet.cjs.js +1527 -1084
  63. package/package.json +7 -7
  64. package/types/input.d.ts +1 -1
  65. package/types/select.d.ts +1 -0
  66. package/types/styleVars.d.ts +100 -92
  67. package/umd/varlet.js +6 -6
package/lib/varlet.cjs.js CHANGED
@@ -7,7 +7,7 @@ const context = {
7
7
  enableRipple: true
8
8
  };
9
9
  const _ContextComponent = vue.reactive(context);
10
- var stdin_default$5U = vue.reactive(context);
10
+ var stdin_default$5V = vue.reactive(context);
11
11
  var __defProp$x = Object.defineProperty;
12
12
  var __defProps$a = Object.defineProperties;
13
13
  var __getOwnPropDescs$a = Object.getOwnPropertyDescriptors;
@@ -70,7 +70,7 @@ var find = (arr, callback, from = "start") => {
70
70
  }
71
71
  return [null, -1];
72
72
  };
73
- var classes$1a = (...classes2) => classes2.map((className) => {
73
+ var classes$1b = (...classes2) => classes2.map((className) => {
74
74
  if (isArray(className)) {
75
75
  const [condition, truthy, falsy = null] = className;
76
76
  return condition ? truthy : falsy;
@@ -216,7 +216,7 @@ function createNamespaceFn(namespace) {
216
216
  return {
217
217
  name: bigCamelize(componentName),
218
218
  n: createBEM,
219
- classes: classes$1a
219
+ classes: classes$1b
220
220
  };
221
221
  };
222
222
  }
@@ -335,10 +335,15 @@ function useClickOutside(target, type, listener) {
335
335
  useEventListener(document, type, handler);
336
336
  }
337
337
  function onSmartUnmounted(hook) {
338
- vue.onUnmounted(() => {
338
+ let keepalive = false;
339
+ vue.onDeactivated(() => {
340
+ keepalive = true;
339
341
  hook();
340
342
  });
341
- vue.onDeactivated(() => {
343
+ vue.onUnmounted(() => {
344
+ if (keepalive) {
345
+ return;
346
+ }
342
347
  hook();
343
348
  });
344
349
  }
@@ -801,7 +806,7 @@ var __spreadValues$u = (a, b) => {
801
806
  return a;
802
807
  };
803
808
  var __spreadProps$8 = (a, b) => __defProps$8(a, __getOwnPropDescs$8(b));
804
- const { n: n$1o } = createNamespace("ripple");
809
+ const { n: n$1p } = createNamespace("ripple");
805
810
  const ANIMATION_DURATION$1 = 250;
806
811
  function setStyles(element) {
807
812
  const { zIndex, position } = getStyle$1(element);
@@ -830,14 +835,14 @@ function computeRippleStyles(element, event) {
830
835
  function createRipple(event) {
831
836
  const _ripple = this._ripple;
832
837
  _ripple.removeRipple();
833
- if (_ripple.disabled || _ripple.tasker || !stdin_default$5U.enableRipple) {
838
+ if (_ripple.disabled || _ripple.tasker || !stdin_default$5V.enableRipple) {
834
839
  return;
835
840
  }
836
841
  const task = () => {
837
842
  _ripple.tasker = null;
838
843
  const { x, y, centerX, centerY, size } = computeRippleStyles(this, event);
839
844
  const ripple = document.createElement("div");
840
- ripple.classList.add(n$1o());
845
+ ripple.classList.add(n$1p());
841
846
  ripple.style.opacity = `0`;
842
847
  ripple.style.transform = `translate(${x}px, ${y}px) scale3d(.3, .3, .3)`;
843
848
  ripple.style.width = `${size}px`;
@@ -856,7 +861,7 @@ function createRipple(event) {
856
861
  function removeRipple() {
857
862
  const _ripple = this._ripple;
858
863
  const task = () => {
859
- const ripples = this.querySelectorAll(`.${n$1o()}`);
864
+ const ripples = this.querySelectorAll(`.${n$1p()}`);
860
865
  if (!ripples.length) {
861
866
  return;
862
867
  }
@@ -873,7 +878,7 @@ function removeRipple() {
873
878
  _ripple.tasker ? window.setTimeout(task, 30) : task();
874
879
  }
875
880
  function forbidRippleTask() {
876
- if (!supportTouch() || !stdin_default$5U.enableRipple) {
881
+ if (!supportTouch() || !stdin_default$5V.enableRipple) {
877
882
  return;
878
883
  }
879
884
  const _ripple = this._ripple;
@@ -946,7 +951,7 @@ const Ripple = {
946
951
  }
947
952
  };
948
953
  const _RippleComponent = Ripple;
949
- var stdin_default$5T = Ripple;
954
+ var stdin_default$5U = Ripple;
950
955
  const props$1g = {
951
956
  show: Boolean,
952
957
  position: {
@@ -985,18 +990,24 @@ const props$1g = {
985
990
  onClickOverlay: defineListenerProp(),
986
991
  "onUpdate:show": defineListenerProp(),
987
992
  // internal for Dialog
988
- onRouteChange: defineListenerProp()
993
+ onRouteChange: defineListenerProp(),
994
+ // internal for esc
995
+ onKeyEscape: defineListenerProp(),
996
+ closeOnKeyEscape: {
997
+ type: Boolean,
998
+ default: true
999
+ }
989
1000
  };
990
1001
  function resolveLock() {
991
- const lockCounts = Object.keys(stdin_default$5U.locks).length;
1002
+ const lockCounts = Object.keys(stdin_default$5V.locks).length;
992
1003
  lockCounts <= 0 ? document.body.classList.remove("var--lock") : document.body.classList.add("var--lock");
993
1004
  }
994
1005
  function addLock(uid) {
995
- stdin_default$5U.locks[uid] = 1;
1006
+ stdin_default$5V.locks[uid] = 1;
996
1007
  resolveLock();
997
1008
  }
998
1009
  function releaseLock(uid) {
999
- delete stdin_default$5U.locks[uid];
1010
+ delete stdin_default$5V.locks[uid];
1000
1011
  resolveLock();
1001
1012
  }
1002
1013
  function useLock(source, useSource) {
@@ -1054,19 +1065,59 @@ function useLock(source, useSource) {
1054
1065
  });
1055
1066
  }
1056
1067
  function useZIndex(source, count) {
1057
- const zIndex = vue.ref(stdin_default$5U.zIndex);
1068
+ const zIndex = vue.ref(stdin_default$5V.zIndex);
1058
1069
  vue.watch(
1059
1070
  source,
1060
1071
  (newValue) => {
1061
1072
  if (newValue) {
1062
- stdin_default$5U.zIndex += process.env.NODE_ENV === "test" ? 0 : count;
1063
- zIndex.value = stdin_default$5U.zIndex;
1073
+ stdin_default$5V.zIndex += process.env.NODE_ENV === "test" ? 0 : count;
1074
+ zIndex.value = stdin_default$5V.zIndex;
1064
1075
  }
1065
1076
  },
1066
1077
  { immediate: true }
1067
1078
  );
1068
1079
  return { zIndex };
1069
1080
  }
1081
+ const stack = [];
1082
+ function useStack(activeGetter, zIndex) {
1083
+ const { uid } = vue.getCurrentInstance();
1084
+ vue.watch(activeGetter, (isActive) => {
1085
+ if (isActive && !getStackItem(uid)) {
1086
+ pushStackItem();
1087
+ } else {
1088
+ setTimeout(() => {
1089
+ removeItem(stack, getStackItem(uid));
1090
+ });
1091
+ }
1092
+ });
1093
+ onSmartMounted(() => {
1094
+ if (activeGetter()) {
1095
+ pushStackItem();
1096
+ }
1097
+ });
1098
+ onSmartUnmounted(() => {
1099
+ removeItem(stack, getStackItem(uid));
1100
+ });
1101
+ function onStackTop() {
1102
+ if (stack.length === 0) {
1103
+ return true;
1104
+ }
1105
+ stack.sort((a, b) => a.zIndex.value - b.zIndex.value);
1106
+ return stack[stack.length - 1].uid === uid;
1107
+ }
1108
+ function pushStackItem() {
1109
+ if (getStackItem(uid)) {
1110
+ return;
1111
+ }
1112
+ stack.push({ uid, zIndex });
1113
+ }
1114
+ function getStackItem(uid2) {
1115
+ return stack.find((item) => item.uid === uid2);
1116
+ }
1117
+ return {
1118
+ onStackTop
1119
+ };
1120
+ }
1070
1121
  const POPUP_BIND_POPUP_ITEM_KEY = Symbol("POPUP_BIND_POPUP_ITEM_KEY");
1071
1122
  function usePopup() {
1072
1123
  const { bindParent, parentProvider, index } = useParent(POPUP_BIND_POPUP_ITEM_KEY);
@@ -1101,12 +1152,12 @@ var __spreadValues$t = (a, b) => {
1101
1152
  return a;
1102
1153
  };
1103
1154
  const {
1104
- name: name$1g,
1105
- n: n$1n,
1106
- classes: classes$19
1155
+ name: name$1h,
1156
+ n: n$1o,
1157
+ classes: classes$1a
1107
1158
  } = createNamespace("popup");
1108
- var stdin_default$5S = vue.defineComponent({
1109
- name: name$1g,
1159
+ var stdin_default$5T = vue.defineComponent({
1160
+ name: name$1h,
1110
1161
  inheritAttrs: false,
1111
1162
  props: props$1g,
1112
1163
  setup(props2, {
@@ -1117,6 +1168,9 @@ var stdin_default$5S = vue.defineComponent({
1117
1168
  const {
1118
1169
  zIndex
1119
1170
  } = useZIndex(() => props2.show, 3);
1171
+ const {
1172
+ onStackTop
1173
+ } = useStack(() => props2.show, zIndex);
1120
1174
  const {
1121
1175
  disabled
1122
1176
  } = useTeleport();
@@ -1130,6 +1184,7 @@ var stdin_default$5S = vue.defineComponent({
1130
1184
  bindPopupItems({
1131
1185
  show: vue.computed(() => props2.show)
1132
1186
  });
1187
+ useEventListener(window, "keydown", handleKeydown);
1133
1188
  useRouteListener(() => call(props2.onRouteChange));
1134
1189
  function hidePopup() {
1135
1190
  const {
@@ -1148,7 +1203,7 @@ var stdin_default$5S = vue.defineComponent({
1148
1203
  overlayStyle
1149
1204
  } = props2;
1150
1205
  return vue.createVNode("div", {
1151
- "class": classes$19(n$1n("overlay"), overlayClass),
1206
+ "class": classes$1a(n$1o("overlay"), overlayClass),
1152
1207
  "style": __spreadValues$t({
1153
1208
  zIndex: zIndex.value - 1
1154
1209
  }, overlayStyle),
@@ -1157,7 +1212,7 @@ var stdin_default$5S = vue.defineComponent({
1157
1212
  }
1158
1213
  function renderContent() {
1159
1214
  return vue.withDirectives(vue.createVNode("div", vue.mergeProps({
1160
- "class": classes$19(n$1n("content"), n$1n(`--${props2.position}`), [props2.defaultStyle, n$1n("--content-background-color")], [props2.defaultStyle, n$1n("$-elevation--3")], [props2.safeArea, n$1n("--safe-area")], [props2.safeAreaTop, n$1n("--safe-area-top")]),
1215
+ "class": classes$1a(n$1o("content"), n$1o(`--${props2.position}`), [props2.defaultStyle, n$1o("--content-background-color")], [props2.defaultStyle, n$1o("$-elevation--3")], [props2.safeArea, n$1o("--safe-area")], [props2.safeAreaTop, n$1o("--safe-area-top")]),
1161
1216
  "style": {
1162
1217
  zIndex: zIndex.value
1163
1218
  }
@@ -1165,22 +1220,33 @@ var stdin_default$5S = vue.defineComponent({
1165
1220
  }
1166
1221
  function renderPopup() {
1167
1222
  return vue.createVNode(vue.Transition, {
1168
- "name": n$1n("$-fade"),
1223
+ "name": n$1o("$-fade"),
1169
1224
  "onAfterEnter": props2.onOpened,
1170
1225
  "onAfterLeave": props2.onClosed
1171
1226
  }, {
1172
1227
  default: () => [vue.withDirectives(vue.createVNode("div", {
1173
- "class": classes$19(n$1n("$--box"), n$1n(), [!props2.overlay, n$1n("--pointer-events-none")]),
1228
+ "class": classes$1a(n$1o("$--box"), n$1o(), [!props2.overlay, n$1o("--pointer-events-none")]),
1174
1229
  "style": {
1175
1230
  zIndex: zIndex.value - 2
1176
1231
  }
1177
1232
  }, [props2.overlay && renderOverlay(), vue.createVNode(vue.Transition, {
1178
- "name": props2.transition || n$1n(`$-pop-${props2.position}`)
1233
+ "name": props2.transition || n$1o(`$-pop-${props2.position}`)
1179
1234
  }, {
1180
1235
  default: () => [renderContent()]
1181
1236
  })]), [[vue.vShow, props2.show]])]
1182
1237
  });
1183
1238
  }
1239
+ function handleKeydown(event) {
1240
+ if (!onStackTop() || event.key !== "Escape" || !props2.show) {
1241
+ return;
1242
+ }
1243
+ call(props2.onKeyEscape);
1244
+ if (!props2.closeOnKeyEscape) {
1245
+ return;
1246
+ }
1247
+ preventDefault(event);
1248
+ call(props2["onUpdate:show"], false);
1249
+ }
1184
1250
  return () => {
1185
1251
  const {
1186
1252
  teleport
@@ -1197,10 +1263,10 @@ var stdin_default$5S = vue.defineComponent({
1197
1263
  };
1198
1264
  }
1199
1265
  });
1200
- withInstall(stdin_default$5S);
1201
- withPropsDefaultsSetter(stdin_default$5S, props$1g);
1202
- const _PopupComponent = stdin_default$5S;
1203
- var stdin_default$5R = stdin_default$5S;
1266
+ withInstall(stdin_default$5T);
1267
+ withPropsDefaultsSetter(stdin_default$5T, props$1g);
1268
+ const _PopupComponent = stdin_default$5T;
1269
+ var stdin_default$5S = stdin_default$5T;
1204
1270
  const props$1f = {
1205
1271
  name: String,
1206
1272
  size: [Number, String],
@@ -1368,6 +1434,37 @@ function formatStyleVars(styleVars) {
1368
1434
  function padStartFlex(style) {
1369
1435
  return style === "start" || style === "end" ? `flex-${style}` : style;
1370
1436
  }
1437
+ const focusableSelector = ["button", "input", "select", "textarea", "[tabindex]", "[href]"].map((s) => `${s}:not([disabled])`).join(", ");
1438
+ function focusChildElementByKey(hostElement, parentElement, key) {
1439
+ var _a;
1440
+ const focusableElements = parentElement.querySelectorAll(focusableSelector);
1441
+ if (!focusableElements.length) {
1442
+ return;
1443
+ }
1444
+ const isActiveHostElement = [hostElement, ...Array.from(hostElement.querySelectorAll(focusableSelector))].findIndex(
1445
+ (el) => el === document.activeElement
1446
+ ) !== -1;
1447
+ const activeElementIndex = Array.from(focusableElements).findIndex((el) => el === document.activeElement);
1448
+ if (key === "ArrowDown") {
1449
+ if (isActiveHostElement && activeElementIndex === -1 || activeElementIndex === focusableElements.length - 1) {
1450
+ focusableElements[0].focus();
1451
+ return;
1452
+ }
1453
+ if (activeElementIndex !== -1 && activeElementIndex < focusableElements.length - 1) {
1454
+ focusableElements[activeElementIndex + 1].focus();
1455
+ return;
1456
+ }
1457
+ }
1458
+ if (key === "ArrowUp") {
1459
+ if (isActiveHostElement && activeElementIndex === -1 || activeElementIndex === 0) {
1460
+ (_a = focusableElements[focusableElements.length - 1]) == null ? void 0 : _a.focus();
1461
+ return;
1462
+ }
1463
+ if (activeElementIndex > 0) {
1464
+ focusableElements[activeElementIndex - 1].focus();
1465
+ }
1466
+ }
1467
+ }
1371
1468
  var __async$g = (__this, __arguments, generator) => {
1372
1469
  return new Promise((resolve, reject) => {
1373
1470
  var fulfilled = (value) => {
@@ -1388,8 +1485,8 @@ var __async$g = (__this, __arguments, generator) => {
1388
1485
  step((generator = generator.apply(__this, __arguments)).next());
1389
1486
  });
1390
1487
  };
1391
- const { name: name$1f, n: n$1m, classes: classes$18 } = createNamespace("icon");
1392
- function __render__$1m(_ctx, _cache) {
1488
+ const { name: name$1g, n: n$1n, classes: classes$19 } = createNamespace("icon");
1489
+ function __render__$1n(_ctx, _cache) {
1393
1490
  return vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.isURL(_ctx.name) ? "img" : "i"), {
1394
1491
  class: vue.normalizeClass(
1395
1492
  _ctx.classes(
@@ -1411,8 +1508,8 @@ function __render__$1m(_ctx, _cache) {
1411
1508
  onClick: _ctx.onClick
1412
1509
  }, null, 8, ["class", "style", "src", "onClick"]);
1413
1510
  }
1414
- const __sfc__$1n = vue.defineComponent({
1415
- name: name$1f,
1511
+ const __sfc__$1o = vue.defineComponent({
1512
+ name: name$1g,
1416
1513
  props: props$1f,
1417
1514
  setup(props2) {
1418
1515
  const nextName = vue.ref("");
@@ -1438,20 +1535,249 @@ const __sfc__$1n = vue.defineComponent({
1438
1535
  return {
1439
1536
  nextName,
1440
1537
  animateInProgress,
1441
- n: n$1m,
1442
- classes: classes$18,
1538
+ n: n$1n,
1539
+ classes: classes$19,
1443
1540
  isURL,
1444
1541
  toNumber,
1445
1542
  toSizeUnit
1446
1543
  };
1447
1544
  }
1448
1545
  });
1546
+ __sfc__$1o.render = __render__$1n;
1547
+ var stdin_default$5R = __sfc__$1o;
1548
+ withInstall(stdin_default$5R);
1549
+ withPropsDefaultsSetter(stdin_default$5R, props$1f);
1550
+ const _IconComponent = stdin_default$5R;
1551
+ var stdin_default$5Q = stdin_default$5R;
1552
+ const props$1e = {
1553
+ hovering: Boolean,
1554
+ focusing: Boolean
1555
+ };
1556
+ const { name: name$1f, n: n$1m, classes: classes$18 } = createNamespace("hover-overlay");
1557
+ function __render__$1m(_ctx, _cache) {
1558
+ return vue.openBlock(), vue.createElementBlock(
1559
+ "div",
1560
+ {
1561
+ class: vue.normalizeClass(_ctx.classes(_ctx.n(), [_ctx.hovering, _ctx.n("--hovering")], [_ctx.focusing && !_ctx.inMobile(), _ctx.n("--focusing")]))
1562
+ },
1563
+ null,
1564
+ 2
1565
+ /* CLASS */
1566
+ );
1567
+ }
1568
+ const __sfc__$1n = vue.defineComponent({
1569
+ name: name$1f,
1570
+ props: props$1e,
1571
+ setup: () => ({
1572
+ n: n$1m,
1573
+ classes: classes$18,
1574
+ inMobile
1575
+ })
1576
+ });
1449
1577
  __sfc__$1n.render = __render__$1m;
1450
- var stdin_default$5Q = __sfc__$1n;
1451
- withInstall(stdin_default$5Q);
1452
- withPropsDefaultsSetter(stdin_default$5Q, props$1f);
1453
- const _IconComponent = stdin_default$5Q;
1454
- var stdin_default$5P = stdin_default$5Q;
1578
+ var stdin_default$5P = __sfc__$1n;
1579
+ withInstall(stdin_default$5P);
1580
+ withPropsDefaultsSetter(stdin_default$5P, props$1e);
1581
+ function useHoverOverlay() {
1582
+ const hovering = vue.ref(false);
1583
+ const handleHovering = (value) => {
1584
+ hovering.value = value;
1585
+ };
1586
+ return {
1587
+ hovering,
1588
+ handleHovering
1589
+ };
1590
+ }
1591
+ const _HoverOverlayComponent = stdin_default$5P;
1592
+ var stdin_default$5O = stdin_default$5P;
1593
+ function shouldDisabled(arg) {
1594
+ if (!arg) {
1595
+ return false;
1596
+ }
1597
+ if (arg === "desktop" && inMobile()) {
1598
+ return true;
1599
+ }
1600
+ if (arg === "mobile" && !inMobile()) {
1601
+ return true;
1602
+ }
1603
+ return false;
1604
+ }
1605
+ function getStyle(element) {
1606
+ const style = element.getAttribute("style");
1607
+ if (!style)
1608
+ return {};
1609
+ return style.split(";").filter(Boolean).reduce((style2, item) => {
1610
+ const [key, value] = item.split(":").map((item2) => item2.trim());
1611
+ style2[camelize(key)] = value;
1612
+ return style2;
1613
+ }, {});
1614
+ }
1615
+ function updateRawStyle(element) {
1616
+ const { value } = element._hover;
1617
+ const style = getStyle(element);
1618
+ Object.keys(value).forEach((key) => {
1619
+ const camelizedKey = camelize(key);
1620
+ const styleValue = value[camelizedKey];
1621
+ if (styleValue != null && style[camelizedKey]) {
1622
+ element._hover.rawStyle[camelizedKey] = style[camelizedKey];
1623
+ }
1624
+ });
1625
+ }
1626
+ function updateStyle(element, styleValue) {
1627
+ Object.keys(styleValue).forEach((key) => {
1628
+ const value = styleValue[key];
1629
+ if (value != null) {
1630
+ element.style[key] = value;
1631
+ }
1632
+ });
1633
+ }
1634
+ function clearStyle(element) {
1635
+ Object.keys(element._hover.value).forEach((key) => {
1636
+ const value = element._hover.value[key];
1637
+ if (value != null) {
1638
+ element.style[key] = "";
1639
+ }
1640
+ });
1641
+ }
1642
+ function restoreStyle(element) {
1643
+ clearStyle(element);
1644
+ updateStyle(element, element._hover.rawStyle);
1645
+ }
1646
+ function createHover() {
1647
+ const { value } = this._hover;
1648
+ this._hover.hovering = true;
1649
+ if (isFunction(value)) {
1650
+ value(this._hover.hovering);
1651
+ return;
1652
+ }
1653
+ updateStyle(this, value);
1654
+ }
1655
+ function removeHover() {
1656
+ this._hover.hovering = false;
1657
+ if (isFunction(this._hover.value)) {
1658
+ this._hover.value(this._hover.hovering);
1659
+ return;
1660
+ }
1661
+ restoreStyle(this);
1662
+ }
1663
+ function mounted$1(element, binding) {
1664
+ var _a, _b;
1665
+ const { arg, value } = binding;
1666
+ if (shouldDisabled(arg)) {
1667
+ return;
1668
+ }
1669
+ element._hover = {
1670
+ value,
1671
+ hovering: (_b = (_a = element._hover) == null ? void 0 : _a.hovering) != null ? _b : false,
1672
+ rawStyle: {}
1673
+ };
1674
+ updateRawStyle(element);
1675
+ element.addEventListener("mouseenter", createHover);
1676
+ element.addEventListener("mouseleave", removeHover);
1677
+ }
1678
+ function unmounted(element, binding) {
1679
+ if (shouldDisabled(binding.arg)) {
1680
+ return;
1681
+ }
1682
+ restoreStyle(element);
1683
+ element.removeEventListener("mouseenter", createHover);
1684
+ element.removeEventListener("mouseleave", removeHover);
1685
+ }
1686
+ function beforeUpdate(element, binding) {
1687
+ if (!element._hover) {
1688
+ return;
1689
+ }
1690
+ unmounted(element, binding);
1691
+ }
1692
+ function shouldUpdateStyle(element, binding) {
1693
+ return !isFunction(binding.value) && element._hover.hovering;
1694
+ }
1695
+ function updated$1(element, binding) {
1696
+ mounted$1(element, binding);
1697
+ if (shouldUpdateStyle(element, binding)) {
1698
+ updateStyle(element, binding.value);
1699
+ }
1700
+ }
1701
+ const Hover = {
1702
+ mounted: mounted$1,
1703
+ unmounted,
1704
+ beforeUpdate,
1705
+ updated: updated$1,
1706
+ install(app) {
1707
+ app.directive("hover", this);
1708
+ }
1709
+ };
1710
+ const _HoverComponent = Hover;
1711
+ var stdin_default$5N = Hover;
1712
+ const { name: name$1e, n: n$1l, classes: classes$17 } = createNamespace("action-sheet");
1713
+ function __render__$1l(_ctx, _cache) {
1714
+ const _component_var_icon = vue.resolveComponent("var-icon");
1715
+ const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
1716
+ const _directive_ripple = vue.resolveDirective("ripple");
1717
+ const _directive_hover = vue.resolveDirective("hover");
1718
+ return vue.withDirectives((vue.openBlock(), vue.createElementBlock(
1719
+ "div",
1720
+ {
1721
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("action-item"), _ctx.className, [_ctx.disabled, _ctx.n("--disabled")])),
1722
+ style: vue.normalizeStyle({ color: _ctx.color })
1723
+ },
1724
+ [
1725
+ _ctx.icon ? (vue.openBlock(), vue.createBlock(_component_var_icon, {
1726
+ key: 0,
1727
+ "var-action-sheet-cover": "",
1728
+ class: vue.normalizeClass(_ctx.n("action-icon")),
1729
+ namespace: _ctx.namespace,
1730
+ name: _ctx.icon,
1731
+ size: _ctx.iconSize
1732
+ }, null, 8, ["class", "namespace", "name", "size"])) : vue.createCommentVNode("v-if", true),
1733
+ vue.createElementVNode(
1734
+ "div",
1735
+ {
1736
+ class: vue.normalizeClass(_ctx.n("action-name"))
1737
+ },
1738
+ vue.toDisplayString(_ctx.name),
1739
+ 3
1740
+ /* TEXT, CLASS */
1741
+ ),
1742
+ vue.createVNode(_component_var_hover_overlay, {
1743
+ hovering: _ctx.disabled ? false : _ctx.hovering
1744
+ }, null, 8, ["hovering"])
1745
+ ],
1746
+ 6
1747
+ /* CLASS, STYLE */
1748
+ )), [
1749
+ [_directive_ripple, { disabled: _ctx.disabled }],
1750
+ [_directive_hover, _ctx.handleHovering, "desktop"]
1751
+ ]);
1752
+ }
1753
+ const __sfc__$1m = vue.defineComponent({
1754
+ name: name$1e,
1755
+ components: {
1756
+ VarHoverOverlay: stdin_default$5O,
1757
+ VarIcon: stdin_default$5Q
1758
+ },
1759
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
1760
+ props: {
1761
+ name: String,
1762
+ className: String,
1763
+ disabled: Boolean,
1764
+ color: String,
1765
+ namespace: String,
1766
+ iconSize: [String, Number],
1767
+ icon: String
1768
+ },
1769
+ setup() {
1770
+ const { hovering, handleHovering } = useHoverOverlay();
1771
+ return {
1772
+ hovering,
1773
+ n: n$1l,
1774
+ classes: classes$17,
1775
+ handleHovering
1776
+ };
1777
+ }
1778
+ });
1779
+ __sfc__$1m.render = __render__$1l;
1780
+ var stdin_default$5M = __sfc__$1m;
1455
1781
  var __defProp$s = Object.defineProperty;
1456
1782
  var __getOwnPropSymbols$s = Object.getOwnPropertySymbols;
1457
1783
  var __hasOwnProp$s = Object.prototype.hasOwnProperty;
@@ -1468,7 +1794,7 @@ var __spreadValues$s = (a, b) => {
1468
1794
  }
1469
1795
  return a;
1470
1796
  };
1471
- const props$1e = __spreadValues$s({
1797
+ const props$1d = __spreadValues$s({
1472
1798
  show: Boolean,
1473
1799
  title: String,
1474
1800
  actions: {
@@ -1495,9 +1821,12 @@ const props$1e = __spreadValues$s({
1495
1821
  "onClosed",
1496
1822
  "onClickOverlay",
1497
1823
  // internal for function call closes the dialog
1498
- "onRouteChange"
1824
+ "onRouteChange",
1825
+ // internal for esc
1826
+ "closeOnKeyEscape",
1827
+ "onKeyEscape"
1499
1828
  ]));
1500
- var stdin_default$5O = {
1829
+ var stdin_default$5L = {
1501
1830
  // Dialog
1502
1831
  dialogTitle: "提示",
1503
1832
  dialogConfirmButtonText: "确认",
@@ -1602,7 +1931,7 @@ var stdin_default$5O = {
1602
1931
  // time-picker
1603
1932
  timePickerHint: "选择时间"
1604
1933
  };
1605
- var stdin_default$5N = {
1934
+ var stdin_default$5K = {
1606
1935
  // Dialog
1607
1936
  dialogTitle: "Hint",
1608
1937
  dialogConfirmButtonText: "Confirm",
@@ -1707,7 +2036,7 @@ var stdin_default$5N = {
1707
2036
  // time-picker
1708
2037
  timePickerHint: "SELECT TIME"
1709
2038
  };
1710
- var stdin_default$5M = {
2039
+ var stdin_default$5J = {
1711
2040
  // Dialog
1712
2041
  dialogTitle: "提示",
1713
2042
  dialogConfirmButtonText: "確認",
@@ -1809,8 +2138,8 @@ var stdin_default$5M = {
1809
2138
  paginationPage: "頁",
1810
2139
  paginationJump: "前往"
1811
2140
  };
1812
- var stdin_default$5L = stdin_default$5M;
1813
- var stdin_default$5K = {
2141
+ var stdin_default$5I = stdin_default$5J;
2142
+ var stdin_default$5H = {
1814
2143
  // Dialog
1815
2144
  dialogTitle: "اشاره",
1816
2145
  dialogConfirmButtonText: "تایید",
@@ -1969,15 +2298,15 @@ function useLocale() {
1969
2298
  };
1970
2299
  }
1971
2300
  const { messages, currentMessage, add: add$2, use, merge, t } = useLocale();
1972
- add$2("zh-CN", stdin_default$5O);
2301
+ add$2("zh-CN", stdin_default$5L);
1973
2302
  use("zh-CN");
1974
- const _LocaleComponent = { zhCN: stdin_default$5O, enUS: stdin_default$5N, messages, currentMessage, add: add$2, use, merge, t, useLocale };
1975
- var stdin_default$5J = {
1976
- zhCN: stdin_default$5O,
1977
- enUS: stdin_default$5N,
1978
- zhTW: stdin_default$5M,
1979
- zhHK: stdin_default$5L,
1980
- faIR: stdin_default$5K,
2303
+ const _LocaleComponent = { zhCN: stdin_default$5L, enUS: stdin_default$5K, messages, currentMessage, add: add$2, use, merge, t, useLocale };
2304
+ var stdin_default$5G = {
2305
+ zhCN: stdin_default$5L,
2306
+ enUS: stdin_default$5K,
2307
+ zhTW: stdin_default$5J,
2308
+ zhHK: stdin_default$5I,
2309
+ faIR: stdin_default$5H,
1981
2310
  messages,
1982
2311
  currentMessage,
1983
2312
  add: add$2,
@@ -1986,32 +2315,30 @@ var stdin_default$5J = {
1986
2315
  t,
1987
2316
  useLocale
1988
2317
  };
1989
- const { name: name$1e, n: n$1l, classes: classes$17 } = createNamespace("action-sheet");
1990
- const _hoisted_1$t = ["onClick"];
1991
- function __render__$1l(_ctx, _cache) {
1992
- const _component_var_icon = vue.resolveComponent("var-icon");
2318
+ const { name: name$1d, n: n$1k, classes: classes$16 } = createNamespace("action-sheet");
2319
+ function __render__$1k(_ctx, _cache) {
2320
+ const _component_var_action_item = vue.resolveComponent("var-action-item");
1993
2321
  const _component_var_popup = vue.resolveComponent("var-popup");
1994
- const _directive_ripple = vue.resolveDirective("ripple");
1995
- return vue.openBlock(), vue.createBlock(_component_var_popup, vue.mergeProps({
1996
- class: _ctx.n("popup-radius"),
2322
+ return vue.openBlock(), vue.createBlock(_component_var_popup, {
1997
2323
  position: "bottom",
1998
- show: _ctx.popupShow,
2324
+ class: vue.normalizeClass(_ctx.n("popup-radius")),
1999
2325
  overlay: _ctx.overlay,
2000
2326
  "overlay-class": _ctx.overlayClass,
2001
2327
  "overlay-style": _ctx.overlayStyle,
2002
2328
  "lock-scroll": _ctx.lockScroll,
2003
2329
  "close-on-click-overlay": _ctx.closeOnClickOverlay,
2330
+ "close-on-key-escape": _ctx.closeOnKeyEscape,
2004
2331
  teleport: _ctx.teleport,
2005
- "safe-area": _ctx.safeArea
2006
- }, {
2007
- "onUpdate:show": _ctx.handlePopupUpdateShow
2008
- }, {
2332
+ "safe-area": _ctx.safeArea,
2333
+ show: _ctx.show,
2334
+ "onUpdate:show": _cache[0] || (_cache[0] = ($event) => _ctx.show = $event),
2009
2335
  onOpen: _ctx.onOpen,
2010
2336
  onClose: _ctx.onClose,
2011
2337
  onClosed: _ctx.onClosed,
2012
2338
  onOpened: _ctx.onOpened,
2013
- onRouteChange: _ctx.onRouteChange
2014
- }), {
2339
+ onRouteChange: _ctx.onRouteChange,
2340
+ onKeyEscape: _ctx.onKeyEscape
2341
+ }, {
2015
2342
  default: vue.withCtx(() => [
2016
2343
  vue.createElementVNode(
2017
2344
  "div",
@@ -2038,32 +2365,16 @@ function __render__$1l(_ctx, _cache) {
2038
2365
  vue.Fragment,
2039
2366
  null,
2040
2367
  vue.renderList(_ctx.actions, (action) => {
2041
- return vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
2042
- class: vue.normalizeClass(_ctx.classes(_ctx.n("action-item"), action.className, [action.disabled, _ctx.n("--disabled")])),
2368
+ return vue.openBlock(), vue.createBlock(_component_var_action_item, {
2043
2369
  key: action.name,
2044
- style: vue.normalizeStyle({ color: action.color }),
2370
+ name: action.name,
2371
+ namespace: action.namespace,
2372
+ icon: action.icon,
2373
+ "icon-size": action.iconSize,
2374
+ "class-name": action.className,
2375
+ color: action.color,
2045
2376
  onClick: ($event) => _ctx.handleSelect(action)
2046
- }, [
2047
- action.icon ? (vue.openBlock(), vue.createBlock(_component_var_icon, {
2048
- key: 0,
2049
- class: vue.normalizeClass(_ctx.n("action-icon")),
2050
- "var-action-sheet-cover": "",
2051
- namespace: action.namespace,
2052
- name: action.icon,
2053
- size: action.iconSize
2054
- }, null, 8, ["class", "namespace", "name", "size"])) : vue.createCommentVNode("v-if", true),
2055
- vue.createElementVNode(
2056
- "div",
2057
- {
2058
- class: vue.normalizeClass(_ctx.n("action-name"))
2059
- },
2060
- vue.toDisplayString(action.name),
2061
- 3
2062
- /* TEXT, CLASS */
2063
- )
2064
- ], 14, _hoisted_1$t)), [
2065
- [_directive_ripple, { disabled: action.disabled }]
2066
- ]);
2377
+ }, null, 8, ["name", "namespace", "icon", "icon-size", "class-name", "color", "onClick"]);
2067
2378
  }),
2068
2379
  128
2069
2380
  /* KEYED_FRAGMENT */
@@ -2076,49 +2387,40 @@ function __render__$1l(_ctx, _cache) {
2076
2387
  ]),
2077
2388
  _: 3
2078
2389
  /* FORWARDED */
2079
- }, 16, ["class", "show", "overlay", "overlay-class", "overlay-style", "lock-scroll", "close-on-click-overlay", "teleport", "safe-area", "onOpen", "onClose", "onClosed", "onOpened", "onRouteChange"]);
2390
+ }, 8, ["class", "overlay", "overlay-class", "overlay-style", "lock-scroll", "close-on-click-overlay", "close-on-key-escape", "teleport", "safe-area", "show", "onOpen", "onClose", "onClosed", "onOpened", "onRouteChange", "onKeyEscape"]);
2080
2391
  }
2081
- const __sfc__$1m = vue.defineComponent({
2082
- name: name$1e,
2083
- directives: { Ripple: stdin_default$5T },
2392
+ const __sfc__$1l = vue.defineComponent({
2393
+ name: name$1d,
2394
+ directives: { Ripple: stdin_default$5U },
2084
2395
  components: {
2085
- VarPopup: stdin_default$5R,
2086
- VarIcon: stdin_default$5P
2396
+ VarPopup: stdin_default$5S,
2397
+ VarActionItem: stdin_default$5M
2087
2398
  },
2088
2399
  inheritAttrs: false,
2089
- props: props$1e,
2400
+ props: props$1d,
2090
2401
  setup(props2) {
2091
- const popupShow = vue.ref(false);
2092
- vue.watch(
2093
- () => props2.show,
2094
- (newValue) => {
2095
- popupShow.value = newValue;
2096
- },
2097
- { immediate: true }
2098
- );
2402
+ const show = useVModel(props2, "show");
2099
2403
  function handleSelect(action) {
2100
2404
  if (action.disabled) {
2101
2405
  return;
2102
2406
  }
2103
2407
  const { closeOnClickAction, onSelect } = props2;
2104
2408
  call(onSelect, action);
2105
- closeOnClickAction && call(props2["onUpdate:show"], false);
2106
- }
2107
- function handlePopupUpdateShow(value) {
2108
- call(props2["onUpdate:show"], value);
2409
+ if (closeOnClickAction) {
2410
+ show.value = false;
2411
+ }
2109
2412
  }
2110
2413
  return {
2111
- popupShow,
2414
+ show,
2112
2415
  t,
2113
- n: n$1l,
2114
- classes: classes$17,
2115
- handlePopupUpdateShow,
2416
+ n: n$1k,
2417
+ classes: classes$16,
2116
2418
  handleSelect
2117
2419
  };
2118
2420
  }
2119
2421
  });
2120
- __sfc__$1m.render = __render__$1l;
2121
- var stdin_default$5I = __sfc__$1m;
2422
+ __sfc__$1l.render = __render__$1k;
2423
+ var stdin_default$5F = __sfc__$1l;
2122
2424
  var __defProp$q = Object.defineProperty;
2123
2425
  var __getOwnPropSymbols$q = Object.getOwnPropertySymbols;
2124
2426
  var __hasOwnProp$q = Object.prototype.hasOwnProperty;
@@ -2149,7 +2451,7 @@ function ActionSheet(options) {
2149
2451
  const reactiveActionSheetOptions = vue.reactive(normalizeOptions$3(options));
2150
2452
  reactiveActionSheetOptions.teleport = "body";
2151
2453
  singletonOptions$3 = reactiveActionSheetOptions;
2152
- const { unmountInstance } = mountInstance(stdin_default$5I, reactiveActionSheetOptions, {
2454
+ const { unmountInstance } = mountInstance(stdin_default$5F, reactiveActionSheetOptions, {
2153
2455
  onSelect: (action) => {
2154
2456
  call(reactiveActionSheetOptions.onSelect, action);
2155
2457
  resolve(action);
@@ -2189,13 +2491,13 @@ ActionSheet.close = function() {
2189
2491
  });
2190
2492
  }
2191
2493
  };
2192
- ActionSheet.Component = stdin_default$5I;
2193
- withInstall(stdin_default$5I);
2194
- withInstall(stdin_default$5I, ActionSheet);
2195
- withPropsDefaultsSetter(ActionSheet, props$1e);
2196
- const _ActionSheetComponent = stdin_default$5I;
2197
- var stdin_default$5H = ActionSheet;
2198
- const props$1d = {
2494
+ ActionSheet.Component = stdin_default$5F;
2495
+ withInstall(stdin_default$5F);
2496
+ withInstall(stdin_default$5F, ActionSheet);
2497
+ withPropsDefaultsSetter(ActionSheet, props$1d);
2498
+ const _ActionSheetComponent = stdin_default$5F;
2499
+ var stdin_default$5E = ActionSheet;
2500
+ const props$1c = {
2199
2501
  color: String,
2200
2502
  textColor: String,
2201
2503
  title: String,
@@ -2217,8 +2519,8 @@ const props$1d = {
2217
2519
  },
2218
2520
  fixed: Boolean
2219
2521
  };
2220
- const { name: name$1d, n: n$1k, classes: classes$16 } = createNamespace("app-bar");
2221
- function __render__$1k(_ctx, _cache) {
2522
+ const { name: name$1c, n: n$1j, classes: classes$15 } = createNamespace("app-bar");
2523
+ function __render__$1j(_ctx, _cache) {
2222
2524
  return vue.openBlock(), vue.createElementBlock(
2223
2525
  "div",
2224
2526
  {
@@ -2329,9 +2631,9 @@ function __render__$1k(_ctx, _cache) {
2329
2631
  /* CLASS, STYLE */
2330
2632
  );
2331
2633
  }
2332
- const __sfc__$1l = vue.defineComponent({
2333
- name: name$1d,
2334
- props: props$1d,
2634
+ const __sfc__$1k = vue.defineComponent({
2635
+ name: name$1c,
2636
+ props: props$1c,
2335
2637
  setup(props2, { slots }) {
2336
2638
  const paddingLeft = vue.ref();
2337
2639
  const paddingRight = vue.ref();
@@ -2362,18 +2664,18 @@ const __sfc__$1l = vue.defineComponent({
2362
2664
  rootStyles,
2363
2665
  paddingLeft,
2364
2666
  paddingRight,
2365
- n: n$1k,
2366
- classes: classes$16,
2667
+ n: n$1j,
2668
+ classes: classes$15,
2367
2669
  formatElevation
2368
2670
  };
2369
2671
  }
2370
2672
  });
2371
- __sfc__$1l.render = __render__$1k;
2372
- var stdin_default$5G = __sfc__$1l;
2373
- withInstall(stdin_default$5G);
2374
- withPropsDefaultsSetter(stdin_default$5G, props$1d);
2375
- const _AppBarComponent = stdin_default$5G;
2376
- var stdin_default$5F = stdin_default$5G;
2673
+ __sfc__$1k.render = __render__$1j;
2674
+ var stdin_default$5D = __sfc__$1k;
2675
+ withInstall(stdin_default$5D);
2676
+ withPropsDefaultsSetter(stdin_default$5D, props$1c);
2677
+ const _AppBarComponent = stdin_default$5D;
2678
+ var stdin_default$5C = stdin_default$5D;
2377
2679
  const isHTMLSupportImage = (val) => {
2378
2680
  if (!isString(val)) {
2379
2681
  return false;
@@ -2585,19 +2887,19 @@ function diff(el, binding) {
2585
2887
  const { src, arg } = el._lazy;
2586
2888
  return src !== binding.value || arg !== binding.arg;
2587
2889
  }
2588
- function mounted$1(el, binding) {
2890
+ function mounted(el, binding) {
2589
2891
  return __async$f(this, null, function* () {
2590
2892
  createLazy(el, binding);
2591
2893
  yield add$1(el);
2592
2894
  });
2593
2895
  }
2594
- function updated$1(el, binding) {
2896
+ function updated(el, binding) {
2595
2897
  return __async$f(this, null, function* () {
2596
2898
  if (!diff(el, binding)) {
2597
2899
  lazyElements.includes(el) && (yield check(el));
2598
2900
  return;
2599
2901
  }
2600
- yield mounted$1(el, binding);
2902
+ yield mounted(el, binding);
2601
2903
  });
2602
2904
  }
2603
2905
  function mergeLazyOptions(lazyOptions = {}) {
@@ -2610,9 +2912,9 @@ function mergeLazyOptions(lazyOptions = {}) {
2610
2912
  defaultLazyOptions.filter = filter;
2611
2913
  }
2612
2914
  const Lazy = {
2613
- mounted: mounted$1,
2915
+ mounted,
2614
2916
  unmounted: clear,
2615
- updated: updated$1,
2917
+ updated,
2616
2918
  install(app, lazyOptions) {
2617
2919
  mergeLazyOptions(lazyOptions);
2618
2920
  checkAllWithThrottle = throttle(checkAll, defaultLazyOptions.throttleWait);
@@ -2620,8 +2922,8 @@ const Lazy = {
2620
2922
  }
2621
2923
  };
2622
2924
  const _LazyComponent = Lazy;
2623
- var stdin_default$5E = Lazy;
2624
- const props$1c = {
2925
+ var stdin_default$5B = Lazy;
2926
+ const props$1b = {
2625
2927
  round: {
2626
2928
  type: Boolean,
2627
2929
  default: true
@@ -2648,10 +2950,10 @@ const props$1c = {
2648
2950
  onError: defineListenerProp()
2649
2951
  };
2650
2952
  const isInternalSize$1 = (size) => ["mini", "small", "normal", "large"].includes(size);
2651
- const { name: name$1c, n: n$1j, classes: classes$15 } = createNamespace("avatar");
2652
- const _hoisted_1$s = ["src", "alt", "lazy-loading", "lazy-error"];
2653
- const _hoisted_2$f = ["src", "alt"];
2654
- function __render__$1j(_ctx, _cache) {
2953
+ const { name: name$1b, n: n$1i, classes: classes$14 } = createNamespace("avatar");
2954
+ const _hoisted_1$v = ["src", "alt", "lazy-loading", "lazy-error"];
2955
+ const _hoisted_2$g = ["src", "alt"];
2956
+ function __render__$1i(_ctx, _cache) {
2655
2957
  const _directive_lazy = vue.resolveDirective("lazy");
2656
2958
  return vue.openBlock(), vue.createElementBlock(
2657
2959
  "div",
@@ -2690,7 +2992,7 @@ function __render__$1j(_ctx, _cache) {
2690
2992
  "lazy-loading": _ctx.loading,
2691
2993
  "lazy-error": _ctx.error,
2692
2994
  onLoad: _cache[0] || (_cache[0] = (...args) => _ctx.handleLoad && _ctx.handleLoad(...args))
2693
- }, null, 46, _hoisted_1$s)), [
2995
+ }, null, 46, _hoisted_1$v)), [
2694
2996
  [_directive_lazy, _ctx.src]
2695
2997
  ]) : (vue.openBlock(), vue.createElementBlock("img", {
2696
2998
  key: 1,
@@ -2701,7 +3003,7 @@ function __render__$1j(_ctx, _cache) {
2701
3003
  style: vue.normalizeStyle({ objectFit: _ctx.fit }),
2702
3004
  onLoad: _cache[1] || (_cache[1] = (...args) => _ctx.handleLoad && _ctx.handleLoad(...args)),
2703
3005
  onError: _cache[2] || (_cache[2] = (...args) => _ctx.handleError && _ctx.handleError(...args))
2704
- }, null, 46, _hoisted_2$f))
3006
+ }, null, 46, _hoisted_2$g))
2705
3007
  ],
2706
3008
  64
2707
3009
  /* STABLE_FRAGMENT */
@@ -2724,10 +3026,10 @@ function __render__$1j(_ctx, _cache) {
2724
3026
  /* CLASS, STYLE */
2725
3027
  );
2726
3028
  }
2727
- const __sfc__$1k = vue.defineComponent({
2728
- name: name$1c,
2729
- directives: { Lazy: stdin_default$5E },
2730
- props: props$1c,
3029
+ const __sfc__$1j = vue.defineComponent({
3030
+ name: name$1b,
3031
+ directives: { Lazy: stdin_default$5B },
3032
+ props: props$1b,
2731
3033
  setup(props2) {
2732
3034
  const avatarElement = vue.ref(null);
2733
3035
  const textElement = vue.ref(null);
@@ -2767,8 +3069,8 @@ const __sfc__$1k = vue.defineComponent({
2767
3069
  avatarElement,
2768
3070
  textElement,
2769
3071
  scale,
2770
- n: n$1j,
2771
- classes: classes$15,
3072
+ n: n$1i,
3073
+ classes: classes$14,
2772
3074
  isInternalSize: isInternalSize$1,
2773
3075
  toSizeUnit,
2774
3076
  handleLoad,
@@ -2777,18 +3079,18 @@ const __sfc__$1k = vue.defineComponent({
2777
3079
  };
2778
3080
  }
2779
3081
  });
2780
- __sfc__$1k.render = __render__$1j;
2781
- var stdin_default$5D = __sfc__$1k;
2782
- withInstall(stdin_default$5D);
2783
- withPropsDefaultsSetter(stdin_default$5D, props$1c);
2784
- const _AvatarComponent = stdin_default$5D;
2785
- var stdin_default$5C = stdin_default$5D;
2786
- const props$1b = {
3082
+ __sfc__$1j.render = __render__$1i;
3083
+ var stdin_default$5A = __sfc__$1j;
3084
+ withInstall(stdin_default$5A);
3085
+ withPropsDefaultsSetter(stdin_default$5A, props$1b);
3086
+ const _AvatarComponent = stdin_default$5A;
3087
+ var stdin_default$5z = stdin_default$5A;
3088
+ const props$1a = {
2787
3089
  offset: [Number, String],
2788
3090
  vertical: Boolean
2789
3091
  };
2790
- const { name: name$1b, n: n$1i, classes: classes$14 } = createNamespace("avatar-group");
2791
- function __render__$1i(_ctx, _cache) {
3092
+ const { name: name$1a, n: n$1h, classes: classes$13 } = createNamespace("avatar-group");
3093
+ function __render__$1h(_ctx, _cache) {
2792
3094
  return vue.openBlock(), vue.createElementBlock(
2793
3095
  "div",
2794
3096
  {
@@ -2802,9 +3104,9 @@ function __render__$1i(_ctx, _cache) {
2802
3104
  /* CLASS, STYLE */
2803
3105
  );
2804
3106
  }
2805
- const __sfc__$1j = vue.defineComponent({
2806
- name: name$1b,
2807
- props: props$1b,
3107
+ const __sfc__$1i = vue.defineComponent({
3108
+ name: name$1a,
3109
+ props: props$1a,
2808
3110
  setup(props2) {
2809
3111
  const rootStyles = vue.computed(() => {
2810
3112
  if (props2.offset == null) {
@@ -2816,19 +3118,19 @@ const __sfc__$1j = vue.defineComponent({
2816
3118
  });
2817
3119
  return {
2818
3120
  rootStyles,
2819
- n: n$1i,
2820
- classes: classes$14,
3121
+ n: n$1h,
3122
+ classes: classes$13,
2821
3123
  toSizeUnit
2822
3124
  };
2823
3125
  }
2824
3126
  });
2825
- __sfc__$1j.render = __render__$1i;
2826
- var stdin_default$5B = __sfc__$1j;
2827
- withInstall(stdin_default$5B);
2828
- withPropsDefaultsSetter(stdin_default$5B, props$1b);
2829
- const _AvatarGroupComponent = stdin_default$5B;
2830
- var stdin_default$5A = stdin_default$5B;
2831
- const props$1a = {
3127
+ __sfc__$1i.render = __render__$1h;
3128
+ var stdin_default$5y = __sfc__$1i;
3129
+ withInstall(stdin_default$5y);
3130
+ withPropsDefaultsSetter(stdin_default$5y, props$1a);
3131
+ const _AvatarGroupComponent = stdin_default$5y;
3132
+ var stdin_default$5x = stdin_default$5y;
3133
+ const props$19 = {
2832
3134
  type: {
2833
3135
  type: String,
2834
3136
  default: "circle"
@@ -2842,9 +3144,9 @@ const props$1a = {
2842
3144
  description: String,
2843
3145
  loading: Boolean
2844
3146
  };
2845
- const { name: name$1a, n: n$1h, classes: classes$13 } = createNamespace("loading");
3147
+ const { name: name$19, n: n$1g, classes: classes$12 } = createNamespace("loading");
2846
3148
  const _withScopeId$6 = (n2) => (vue.pushScopeId(""), n2 = n2(), vue.popScopeId(), n2);
2847
- const _hoisted_1$r = /* @__PURE__ */ _withScopeId$6(() => /* @__PURE__ */ vue.createElementVNode(
3149
+ const _hoisted_1$u = /* @__PURE__ */ _withScopeId$6(() => /* @__PURE__ */ vue.createElementVNode(
2848
3150
  "svg",
2849
3151
  { viewBox: "25 25 50 50" },
2850
3152
  [
@@ -2858,10 +3160,10 @@ const _hoisted_1$r = /* @__PURE__ */ _withScopeId$6(() => /* @__PURE__ */ vue.cr
2858
3160
  -1
2859
3161
  /* HOISTED */
2860
3162
  ));
2861
- const _hoisted_2$e = [
2862
- _hoisted_1$r
3163
+ const _hoisted_2$f = [
3164
+ _hoisted_1$u
2863
3165
  ];
2864
- function __render__$1h(_ctx, _cache) {
3166
+ function __render__$1g(_ctx, _cache) {
2865
3167
  return vue.openBlock(), vue.createElementBlock(
2866
3168
  "div",
2867
3169
  {
@@ -2914,7 +3216,7 @@ function __render__$1h(_ctx, _cache) {
2914
3216
  color: _ctx.color
2915
3217
  })
2916
3218
  },
2917
- [..._hoisted_2$e],
3219
+ [..._hoisted_2$f],
2918
3220
  6
2919
3221
  /* CLASS, STYLE */
2920
3222
  )
@@ -2995,10 +3297,10 @@ function __render__$1h(_ctx, _cache) {
2995
3297
  2
2996
3298
  /* CLASS */
2997
3299
  );
2998
- }
2999
- const __sfc__$1i = vue.defineComponent({
3000
- name: name$1a,
3001
- props: props$1a,
3300
+ }
3301
+ const __sfc__$1h = vue.defineComponent({
3302
+ name: name$19,
3303
+ props: props$19,
3002
3304
  setup(props2, { slots }) {
3003
3305
  const isShow = vue.computed(() => {
3004
3306
  if (!call(slots.default)) {
@@ -3015,177 +3317,18 @@ const __sfc__$1i = vue.defineComponent({
3015
3317
  return {
3016
3318
  loadingTypeDict,
3017
3319
  isShow,
3018
- n: n$1h,
3019
- classes: classes$13,
3320
+ n: n$1g,
3321
+ classes: classes$12,
3020
3322
  multiplySizeUnit
3021
3323
  };
3022
3324
  }
3023
3325
  });
3024
- __sfc__$1i.render = __render__$1h;
3025
- var stdin_default$5z = __sfc__$1i;
3026
- withInstall(stdin_default$5z);
3027
- withPropsDefaultsSetter(stdin_default$5z, props$1a);
3028
- const _LoadingComponent = stdin_default$5z;
3029
- var stdin_default$5y = stdin_default$5z;
3030
- const props$19 = {
3031
- hovering: Boolean,
3032
- focusing: Boolean
3033
- };
3034
- const { name: name$19, n: n$1g, classes: classes$12 } = createNamespace("hover-overlay");
3035
- function __render__$1g(_ctx, _cache) {
3036
- return vue.openBlock(), vue.createElementBlock(
3037
- "div",
3038
- {
3039
- class: vue.normalizeClass(_ctx.classes(_ctx.n(), [_ctx.hovering, _ctx.n("--hovering")], [_ctx.focusing, _ctx.n("--focusing")]))
3040
- },
3041
- null,
3042
- 2
3043
- /* CLASS */
3044
- );
3045
- }
3046
- const __sfc__$1h = vue.defineComponent({
3047
- name: name$19,
3048
- props: props$19,
3049
- setup: () => ({
3050
- n: n$1g,
3051
- classes: classes$12
3052
- })
3053
- });
3054
3326
  __sfc__$1h.render = __render__$1g;
3055
- var stdin_default$5x = __sfc__$1h;
3056
- withInstall(stdin_default$5x);
3057
- withPropsDefaultsSetter(stdin_default$5x, props$19);
3058
- function useHoverOverlay() {
3059
- const hovering = vue.ref(false);
3060
- const handleHovering = (value) => {
3061
- hovering.value = value;
3062
- };
3063
- return {
3064
- hovering,
3065
- handleHovering
3066
- };
3067
- }
3068
- const _HoverOverlayComponent = stdin_default$5x;
3069
- var stdin_default$5w = stdin_default$5x;
3070
- function shouldDisabled(arg) {
3071
- if (!arg) {
3072
- return false;
3073
- }
3074
- if (arg === "desktop" && inMobile()) {
3075
- return true;
3076
- }
3077
- if (arg === "mobile" && !inMobile()) {
3078
- return true;
3079
- }
3080
- return false;
3081
- }
3082
- function getStyle(element) {
3083
- const style = element.getAttribute("style");
3084
- if (!style)
3085
- return {};
3086
- return style.split(";").filter(Boolean).reduce((style2, item) => {
3087
- const [key, value] = item.split(":").map((item2) => item2.trim());
3088
- style2[camelize(key)] = value;
3089
- return style2;
3090
- }, {});
3091
- }
3092
- function updateRawStyle(element) {
3093
- const { value } = element._hover;
3094
- const style = getStyle(element);
3095
- Object.keys(value).forEach((key) => {
3096
- const camelizedKey = camelize(key);
3097
- const styleValue = value[camelizedKey];
3098
- if (styleValue != null && style[camelizedKey]) {
3099
- element._hover.rawStyle[camelizedKey] = style[camelizedKey];
3100
- }
3101
- });
3102
- }
3103
- function updateStyle(element, styleValue) {
3104
- Object.keys(styleValue).forEach((key) => {
3105
- const value = styleValue[key];
3106
- if (value != null) {
3107
- element.style[key] = value;
3108
- }
3109
- });
3110
- }
3111
- function clearStyle(element) {
3112
- Object.keys(element._hover.value).forEach((key) => {
3113
- const value = element._hover.value[key];
3114
- if (value != null) {
3115
- element.style[key] = "";
3116
- }
3117
- });
3118
- }
3119
- function restoreStyle(element) {
3120
- clearStyle(element);
3121
- updateStyle(element, element._hover.rawStyle);
3122
- }
3123
- function createHover() {
3124
- const { value } = this._hover;
3125
- this._hover.hovering = true;
3126
- if (isFunction(value)) {
3127
- value(this._hover.hovering);
3128
- return;
3129
- }
3130
- updateStyle(this, value);
3131
- }
3132
- function removeHover() {
3133
- this._hover.hovering = false;
3134
- if (isFunction(this._hover.value)) {
3135
- this._hover.value(this._hover.hovering);
3136
- return;
3137
- }
3138
- restoreStyle(this);
3139
- }
3140
- function mounted(element, binding) {
3141
- var _a, _b;
3142
- const { arg, value } = binding;
3143
- if (shouldDisabled(arg)) {
3144
- return;
3145
- }
3146
- element._hover = {
3147
- value,
3148
- hovering: (_b = (_a = element._hover) == null ? void 0 : _a.hovering) != null ? _b : false,
3149
- rawStyle: {}
3150
- };
3151
- updateRawStyle(element);
3152
- element.addEventListener("mouseenter", createHover);
3153
- element.addEventListener("mouseleave", removeHover);
3154
- }
3155
- function unmounted(element, binding) {
3156
- if (shouldDisabled(binding.arg)) {
3157
- return;
3158
- }
3159
- restoreStyle(element);
3160
- element.removeEventListener("mouseenter", createHover);
3161
- element.removeEventListener("mouseleave", removeHover);
3162
- }
3163
- function beforeUpdate(element, binding) {
3164
- if (!element._hover) {
3165
- return;
3166
- }
3167
- unmounted(element, binding);
3168
- }
3169
- function shouldUpdateStyle(element, binding) {
3170
- return !isFunction(binding.value) && element._hover.hovering;
3171
- }
3172
- function updated(element, binding) {
3173
- mounted(element, binding);
3174
- if (shouldUpdateStyle(element, binding)) {
3175
- updateStyle(element, binding.value);
3176
- }
3177
- }
3178
- const Hover = {
3179
- mounted,
3180
- unmounted,
3181
- beforeUpdate,
3182
- updated,
3183
- install(app) {
3184
- app.directive("hover", this);
3185
- }
3186
- };
3187
- const _HoverComponent = Hover;
3188
- var stdin_default$5v = Hover;
3327
+ var stdin_default$5w = __sfc__$1h;
3328
+ withInstall(stdin_default$5w);
3329
+ withPropsDefaultsSetter(stdin_default$5w, props$19);
3330
+ const _LoadingComponent = stdin_default$5w;
3331
+ var stdin_default$5v = stdin_default$5w;
3189
3332
  var __defProp$o = Object.defineProperty;
3190
3333
  var __defProps$7 = Object.defineProperties;
3191
3334
  var __getOwnPropDescs$7 = Object.getOwnPropertyDescriptors;
@@ -3231,9 +3374,9 @@ const props$18 = {
3231
3374
  default: true
3232
3375
  },
3233
3376
  loadingRadius: [Number, String],
3234
- loadingType: pickProps(props$1a, "type"),
3235
- loadingSize: pickProps(props$1a, "size"),
3236
- loadingColor: __spreadProps$7(__spreadValues$o({}, pickProps(props$1a, "color")), {
3377
+ loadingType: pickProps(props$19, "type"),
3378
+ loadingSize: pickProps(props$19, "size"),
3379
+ loadingColor: __spreadProps$7(__spreadValues$o({}, pickProps(props$19, "color")), {
3237
3380
  default: "currentColor"
3238
3381
  }),
3239
3382
  onClick: defineListenerProp(),
@@ -3257,7 +3400,7 @@ function useButtonGroup() {
3257
3400
  };
3258
3401
  }
3259
3402
  const { name: name$18, n: n$1f, classes: classes$11 } = createNamespace("button");
3260
- const _hoisted_1$q = ["type", "disabled"];
3403
+ const _hoisted_1$t = ["type", "disabled"];
3261
3404
  function __render__$1f(_ctx, _cache) {
3262
3405
  const _component_var_loading = vue.resolveComponent("var-loading");
3263
3406
  const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
@@ -3289,8 +3432,8 @@ function __render__$1f(_ctx, _cache) {
3289
3432
  disabled: _ctx.disabled,
3290
3433
  onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args)),
3291
3434
  onTouchstart: _cache[1] || (_cache[1] = (...args) => _ctx.handleTouchstart && _ctx.handleTouchstart(...args)),
3292
- onFocus: _cache[2] || (_cache[2] = ($event) => _ctx.isEffectFocusing = true),
3293
- onBlur: _cache[3] || (_cache[3] = ($event) => _ctx.isEffectFocusing = false)
3435
+ onFocus: _cache[2] || (_cache[2] = ($event) => _ctx.isFocusing = true),
3436
+ onBlur: _cache[3] || (_cache[3] = ($event) => _ctx.isFocusing = false)
3294
3437
  }, [
3295
3438
  _ctx.loading || _ctx.pending ? (vue.openBlock(), vue.createBlock(_component_var_loading, {
3296
3439
  key: 0,
@@ -3314,9 +3457,9 @@ function __render__$1f(_ctx, _cache) {
3314
3457
  ),
3315
3458
  vue.createVNode(_component_var_hover_overlay, {
3316
3459
  hovering: _ctx.disabled || _ctx.loading || _ctx.pending ? false : _ctx.hovering,
3317
- focusing: _ctx.disabled || _ctx.loading || _ctx.pending ? false : _ctx.isEffectFocusing
3460
+ focusing: _ctx.disabled || _ctx.loading || _ctx.pending ? false : _ctx.isFocusing
3318
3461
  }, null, 8, ["hovering", "focusing"])
3319
- ], 46, _hoisted_1$q)), [
3462
+ ], 46, _hoisted_1$t)), [
3320
3463
  [_directive_ripple, { disabled: _ctx.disabled || !_ctx.ripple || _ctx.loading || _ctx.pending }],
3321
3464
  [_directive_hover, _ctx.handleHovering, "desktop"]
3322
3465
  ]);
@@ -3324,13 +3467,13 @@ function __render__$1f(_ctx, _cache) {
3324
3467
  const __sfc__$1g = vue.defineComponent({
3325
3468
  name: name$18,
3326
3469
  components: {
3327
- VarLoading: stdin_default$5y,
3328
- VarHoverOverlay: stdin_default$5w
3470
+ VarLoading: stdin_default$5v,
3471
+ VarHoverOverlay: stdin_default$5O
3329
3472
  },
3330
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
3473
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
3331
3474
  props: props$18,
3332
3475
  setup(props2) {
3333
- const isEffectFocusing = inMobile() ? vue.computed(() => false) : vue.ref(false);
3476
+ const isFocusing = vue.ref(false);
3334
3477
  const pending = vue.ref(false);
3335
3478
  const { buttonGroup } = useButtonGroup();
3336
3479
  const { hovering, handleHovering } = useHoverOverlay();
@@ -3393,7 +3536,7 @@ const __sfc__$1g = vue.defineComponent({
3393
3536
  handleHovering,
3394
3537
  handleClick,
3395
3538
  handleTouchstart,
3396
- isEffectFocusing
3539
+ isFocusing
3397
3540
  };
3398
3541
  }
3399
3542
  });
@@ -3465,7 +3608,7 @@ const __sfc__$1f = vue.defineComponent({
3465
3608
  name: name$17,
3466
3609
  components: {
3467
3610
  VarButton: stdin_default$5t,
3468
- VarIcon: stdin_default$5P
3611
+ VarIcon: stdin_default$5Q
3469
3612
  },
3470
3613
  inheritAttrs: false,
3471
3614
  props: props$17,
@@ -3567,7 +3710,7 @@ var __spreadValues$n = (a, b) => {
3567
3710
  return a;
3568
3711
  };
3569
3712
  const { name: name$16, n: n$1d, classes: classes$$ } = createNamespace("badge");
3570
- const _hoisted_1$p = { key: 0 };
3713
+ const _hoisted_1$s = { key: 0 };
3571
3714
  function __render__$1d(_ctx, _cache) {
3572
3715
  const _component_var_icon = vue.resolveComponent("var-icon");
3573
3716
  return vue.openBlock(), vue.createElementBlock(
@@ -3605,7 +3748,7 @@ function __render__$1d(_ctx, _cache) {
3605
3748
  vue.renderSlot(_ctx.$slots, "value", {}, () => [
3606
3749
  !_ctx.icon && !_ctx.dot ? (vue.openBlock(), vue.createElementBlock(
3607
3750
  "span",
3608
- _hoisted_1$p,
3751
+ _hoisted_1$s,
3609
3752
  vue.toDisplayString(_ctx.value),
3610
3753
  1
3611
3754
  /* TEXT */
@@ -3628,7 +3771,7 @@ function __render__$1d(_ctx, _cache) {
3628
3771
  }
3629
3772
  const __sfc__$1e = vue.defineComponent({
3630
3773
  name: name$16,
3631
- components: { VarIcon: stdin_default$5P },
3774
+ components: { VarIcon: stdin_default$5Q },
3632
3775
  inheritAttrs: false,
3633
3776
  props: props$16,
3634
3777
  setup(props2) {
@@ -3952,9 +4095,9 @@ const __sfc__$1c = vue.defineComponent({
3952
4095
  name: name$14,
3953
4096
  components: {
3954
4097
  VarBadge: stdin_default$5p,
3955
- VarIcon: stdin_default$5P
4098
+ VarIcon: stdin_default$5Q
3956
4099
  },
3957
- directives: { Ripple: stdin_default$5T },
4100
+ directives: { Ripple: stdin_default$5U },
3958
4101
  props: props$14,
3959
4102
  setup(props2) {
3960
4103
  const name2 = vue.computed(() => props2.name);
@@ -4248,7 +4391,7 @@ var __async$e = (__this, __arguments, generator) => {
4248
4391
  };
4249
4392
  const { name: name$10, n: n$17, classes: classes$W } = createNamespace("card");
4250
4393
  const RIPPLE_DELAY = 500;
4251
- const _hoisted_1$o = ["src", "alt"];
4394
+ const _hoisted_1$r = ["src", "alt"];
4252
4395
  function __render__$17(_ctx, _cache) {
4253
4396
  const _component_var_icon = vue.resolveComponent("var-icon");
4254
4397
  const _component_var_button = vue.resolveComponent("var-button");
@@ -4293,7 +4436,7 @@ function __render__$17(_ctx, _cache) {
4293
4436
  }),
4294
4437
  src: _ctx.src,
4295
4438
  alt: _ctx.alt
4296
- }, null, 14, _hoisted_1$o)) : vue.createCommentVNode("v-if", true)
4439
+ }, null, 14, _hoisted_1$r)) : vue.createCommentVNode("v-if", true)
4297
4440
  ]),
4298
4441
  vue.createElementVNode(
4299
4442
  "div",
@@ -4429,9 +4572,9 @@ function __render__$17(_ctx, _cache) {
4429
4572
  }
4430
4573
  const __sfc__$18 = vue.defineComponent({
4431
4574
  name: name$10,
4432
- directives: { Ripple: stdin_default$5T },
4575
+ directives: { Ripple: stdin_default$5U },
4433
4576
  components: {
4434
- VarIcon: stdin_default$5P,
4577
+ VarIcon: stdin_default$5Q,
4435
4578
  VarButton: stdin_default$5t
4436
4579
  },
4437
4580
  props: props$10,
@@ -4665,8 +4808,8 @@ function __render__$16(_ctx, _cache) {
4665
4808
  }
4666
4809
  const __sfc__$17 = vue.defineComponent({
4667
4810
  name: name$$,
4668
- components: { VarIcon: stdin_default$5P },
4669
- directives: { Ripple: stdin_default$5T },
4811
+ components: { VarIcon: stdin_default$5Q },
4812
+ directives: { Ripple: stdin_default$5U },
4670
4813
  props: props$$,
4671
4814
  setup(props2) {
4672
4815
  const borderOffsetStyles = vue.computed(() => {
@@ -4707,8 +4850,8 @@ const props$_ = {
4707
4850
  }
4708
4851
  };
4709
4852
  const { name: name$_, n: n$15 } = createNamespace("form-details");
4710
- const _hoisted_1$n = { key: 0 };
4711
- const _hoisted_2$d = { key: 0 };
4853
+ const _hoisted_1$q = { key: 0 };
4854
+ const _hoisted_2$e = { key: 0 };
4712
4855
  function __render__$15(_ctx, _cache) {
4713
4856
  return vue.openBlock(), vue.createBlock(vue.Transition, {
4714
4857
  name: _ctx.n()
@@ -4733,7 +4876,7 @@ function __render__$15(_ctx, _cache) {
4733
4876
  default: vue.withCtx(() => [
4734
4877
  _ctx.errorMessage ? (vue.openBlock(), vue.createElementBlock(
4735
4878
  "div",
4736
- _hoisted_1$n,
4879
+ _hoisted_1$q,
4737
4880
  vue.toDisplayString(_ctx.errorMessage),
4738
4881
  1
4739
4882
  /* TEXT */
@@ -4759,7 +4902,7 @@ function __render__$15(_ctx, _cache) {
4759
4902
  vue.renderSlot(_ctx.$slots, "extra-message", {}, () => [
4760
4903
  _ctx.extraMessage ? (vue.openBlock(), vue.createElementBlock(
4761
4904
  "div",
4762
- _hoisted_2$d,
4905
+ _hoisted_2$e,
4763
4906
  vue.toDisplayString(_ctx.extraMessage),
4764
4907
  1
4765
4908
  /* TEXT */
@@ -4888,6 +5031,7 @@ function useFormItems() {
4888
5031
  };
4889
5032
  }
4890
5033
  const { name: name$Z, n: n$14, classes: classes$U } = createNamespace("checkbox");
5034
+ const _hoisted_1$p = ["tabindex"];
4891
5035
  function __render__$14(_ctx, _cache) {
4892
5036
  const _component_var_icon = vue.resolveComponent("var-icon");
4893
5037
  const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
@@ -4898,7 +5042,7 @@ function __render__$14(_ctx, _cache) {
4898
5042
  "div",
4899
5043
  {
4900
5044
  class: vue.normalizeClass(_ctx.n("wrap")),
4901
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
5045
+ onClick: _cache[2] || (_cache[2] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
4902
5046
  },
4903
5047
  [
4904
5048
  vue.createElementVNode(
@@ -4907,51 +5051,50 @@ function __render__$14(_ctx, _cache) {
4907
5051
  class: vue.normalizeClass(_ctx.n())
4908
5052
  },
4909
5053
  [
4910
- vue.withDirectives((vue.openBlock(), vue.createElementBlock(
4911
- "div",
4912
- {
4913
- class: vue.normalizeClass(
4914
- _ctx.classes(
4915
- _ctx.n("action"),
4916
- [_ctx.checked || _ctx.isIndeterminate, _ctx.n("--checked"), _ctx.n("--unchecked")],
4917
- [_ctx.errorMessage || _ctx.checkboxGroupErrorMessage, _ctx.n("--error")],
4918
- [_ctx.formDisabled || _ctx.disabled, _ctx.n("--disabled")]
4919
- )
4920
- ),
4921
- style: vue.normalizeStyle({ color: _ctx.checked || _ctx.isIndeterminate ? _ctx.checkedColor : _ctx.uncheckedColor })
4922
- },
4923
- [
4924
- _ctx.isIndeterminate ? vue.renderSlot(_ctx.$slots, "indeterminate-icon", { key: 0 }, () => [
4925
- vue.createVNode(_component_var_icon, {
4926
- class: vue.normalizeClass(_ctx.classes(_ctx.n("icon"), [_ctx.withAnimation, _ctx.n("--with-animation")])),
4927
- name: "minus-box",
4928
- size: _ctx.iconSize,
4929
- "var-checkbox-cover": ""
4930
- }, null, 8, ["class", "size"])
4931
- ]) : vue.createCommentVNode("v-if", true),
4932
- _ctx.checked && !_ctx.isIndeterminate ? vue.renderSlot(_ctx.$slots, "checked-icon", { key: 1 }, () => [
4933
- vue.createVNode(_component_var_icon, {
4934
- class: vue.normalizeClass(_ctx.classes(_ctx.n("icon"), [_ctx.withAnimation, _ctx.n("--with-animation")])),
4935
- name: "checkbox-marked",
4936
- size: _ctx.iconSize,
4937
- "var-checkbox-cover": ""
4938
- }, null, 8, ["class", "size"])
4939
- ]) : vue.createCommentVNode("v-if", true),
4940
- !_ctx.checked && !_ctx.isIndeterminate ? vue.renderSlot(_ctx.$slots, "unchecked-icon", { key: 2 }, () => [
4941
- vue.createVNode(_component_var_icon, {
4942
- class: vue.normalizeClass(_ctx.classes(_ctx.n("icon"), [_ctx.withAnimation, _ctx.n("--with-animation")])),
4943
- name: "checkbox-blank-outline",
4944
- size: _ctx.iconSize,
4945
- "var-checkbox-cover": ""
4946
- }, null, 8, ["class", "size"])
4947
- ]) : vue.createCommentVNode("v-if", true),
4948
- vue.createVNode(_component_var_hover_overlay, {
4949
- hovering: !_ctx.disabled && !_ctx.formDisabled && _ctx.hovering
4950
- }, null, 8, ["hovering"])
4951
- ],
4952
- 6
4953
- /* CLASS, STYLE */
4954
- )), [
5054
+ vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
5055
+ ref: "action",
5056
+ class: vue.normalizeClass(
5057
+ _ctx.classes(
5058
+ _ctx.n("action"),
5059
+ [_ctx.checked || _ctx.isIndeterminate, _ctx.n("--checked"), _ctx.n("--unchecked")],
5060
+ [_ctx.errorMessage || _ctx.checkboxGroupErrorMessage, _ctx.n("--error")],
5061
+ [_ctx.formDisabled || _ctx.disabled, _ctx.n("--disabled")]
5062
+ )
5063
+ ),
5064
+ style: vue.normalizeStyle({ color: _ctx.checked || _ctx.isIndeterminate ? _ctx.checkedColor : _ctx.uncheckedColor }),
5065
+ tabindex: _ctx.disabled || _ctx.formDisabled ? void 0 : "0",
5066
+ onFocus: _cache[0] || (_cache[0] = ($event) => _ctx.isFocusing = true),
5067
+ onBlur: _cache[1] || (_cache[1] = ($event) => _ctx.isFocusing = false)
5068
+ }, [
5069
+ _ctx.isIndeterminate ? vue.renderSlot(_ctx.$slots, "indeterminate-icon", { key: 0 }, () => [
5070
+ vue.createVNode(_component_var_icon, {
5071
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("icon"), [_ctx.withAnimation, _ctx.n("--with-animation")])),
5072
+ name: "minus-box",
5073
+ size: _ctx.iconSize,
5074
+ "var-checkbox-cover": ""
5075
+ }, null, 8, ["class", "size"])
5076
+ ]) : vue.createCommentVNode("v-if", true),
5077
+ _ctx.checked && !_ctx.isIndeterminate ? vue.renderSlot(_ctx.$slots, "checked-icon", { key: 1 }, () => [
5078
+ vue.createVNode(_component_var_icon, {
5079
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("icon"), [_ctx.withAnimation, _ctx.n("--with-animation")])),
5080
+ name: "checkbox-marked",
5081
+ size: _ctx.iconSize,
5082
+ "var-checkbox-cover": ""
5083
+ }, null, 8, ["class", "size"])
5084
+ ]) : vue.createCommentVNode("v-if", true),
5085
+ !_ctx.checked && !_ctx.isIndeterminate ? vue.renderSlot(_ctx.$slots, "unchecked-icon", { key: 2 }, () => [
5086
+ vue.createVNode(_component_var_icon, {
5087
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("icon"), [_ctx.withAnimation, _ctx.n("--with-animation")])),
5088
+ name: "checkbox-blank-outline",
5089
+ size: _ctx.iconSize,
5090
+ "var-checkbox-cover": ""
5091
+ }, null, 8, ["class", "size"])
5092
+ ]) : vue.createCommentVNode("v-if", true),
5093
+ vue.createVNode(_component_var_hover_overlay, {
5094
+ hovering: !_ctx.disabled && !_ctx.formDisabled && _ctx.hovering,
5095
+ focusing: !_ctx.disabled && !_ctx.formDisabled && _ctx.isFocusing
5096
+ }, null, 8, ["hovering", "focusing"])
5097
+ ], 46, _hoisted_1$p)), [
4955
5098
  [_directive_hover, _ctx.handleHovering, "desktop"],
4956
5099
  [_directive_ripple, { disabled: _ctx.formReadonly || _ctx.readonly || _ctx.formDisabled || _ctx.disabled || !_ctx.ripple }]
4957
5100
  ]),
@@ -4985,14 +5128,16 @@ function __render__$14(_ctx, _cache) {
4985
5128
  }
4986
5129
  const __sfc__$15 = vue.defineComponent({
4987
5130
  name: name$Z,
4988
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
5131
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
4989
5132
  components: {
4990
- VarIcon: stdin_default$5P,
5133
+ VarIcon: stdin_default$5Q,
4991
5134
  VarFormDetails: stdin_default$59,
4992
- VarHoverOverlay: stdin_default$5w
5135
+ VarHoverOverlay: stdin_default$5O
4993
5136
  },
4994
5137
  props: props$Z,
4995
5138
  setup(props2) {
5139
+ const action = vue.ref(null);
5140
+ const isFocusing = vue.ref(false);
4996
5141
  const value = useVModel(props2, "modelValue");
4997
5142
  const isIndeterminate = useVModel(props2, "indeterminate");
4998
5143
  const checked = vue.computed(() => value.value === props2.checkedValue);
@@ -5068,10 +5213,35 @@ const __sfc__$15 = vue.defineComponent({
5068
5213
  }
5069
5214
  change(changedValue);
5070
5215
  }
5216
+ useEventListener(() => window, "keydown", handleKeydown);
5217
+ useEventListener(() => window, "keyup", handleKeyup);
5218
+ function handleKeydown(event) {
5219
+ if (!isFocusing.value) {
5220
+ return;
5221
+ }
5222
+ const { key } = event;
5223
+ if (key === "Enter" || key === " ") {
5224
+ preventDefault(event);
5225
+ }
5226
+ if (key === "Enter") {
5227
+ action.value.click();
5228
+ }
5229
+ }
5230
+ function handleKeyup(event) {
5231
+ if (!isFocusing.value) {
5232
+ return;
5233
+ }
5234
+ if (event.key === " ") {
5235
+ preventDefault(event);
5236
+ action.value.click();
5237
+ }
5238
+ }
5071
5239
  function validate() {
5072
5240
  return v(props2.rules, props2.modelValue);
5073
5241
  }
5074
5242
  return {
5243
+ action,
5244
+ isFocusing,
5075
5245
  isIndeterminate,
5076
5246
  withAnimation,
5077
5247
  checked,
@@ -5318,7 +5488,7 @@ function __render__$12(_ctx, _cache) {
5318
5488
  const __sfc__$13 = vue.defineComponent({
5319
5489
  name: name$X,
5320
5490
  components: {
5321
- VarIcon: stdin_default$5P
5491
+ VarIcon: stdin_default$5Q
5322
5492
  },
5323
5493
  inheritAttrs: false,
5324
5494
  props: props$X,
@@ -5839,7 +6009,7 @@ function __render__$$(_ctx, _cache) {
5839
6009
  const __sfc__$10 = vue.defineComponent({
5840
6010
  name: name$U,
5841
6011
  components: {
5842
- VarIcon: stdin_default$5P
6012
+ VarIcon: stdin_default$5Q
5843
6013
  },
5844
6014
  props: props$U,
5845
6015
  setup(props2) {
@@ -8506,7 +8676,7 @@ const props$R = {
8506
8676
  const SPEED = 100;
8507
8677
  const DELAY = 600;
8508
8678
  const { name: name$R, n: n$Y, classes: classes$P } = createNamespace("counter");
8509
- const _hoisted_1$m = ["inputmode", "readonly", "disabled"];
8679
+ const _hoisted_1$o = ["inputmode", "readonly", "disabled"];
8510
8680
  function __render__$Y(_ctx, _cache) {
8511
8681
  const _component_var_icon = vue.resolveComponent("var-icon");
8512
8682
  const _component_var_button = vue.resolveComponent("var-button");
@@ -8566,7 +8736,7 @@ function __render__$Y(_ctx, _cache) {
8566
8736
  disabled: _ctx.disabled || _ctx.formDisabled || _ctx.disableInput,
8567
8737
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.inputValue = $event),
8568
8738
  onChange: _cache[1] || (_cache[1] = (...args) => _ctx.handleChange && _ctx.handleChange(...args))
8569
- }, null, 46, _hoisted_1$m), [
8739
+ }, null, 46, _hoisted_1$o), [
8570
8740
  [vue.vModelText, _ctx.inputValue]
8571
8741
  ]),
8572
8742
  vue.createVNode(_component_var_button, {
@@ -8609,10 +8779,10 @@ const __sfc__$Z = vue.defineComponent({
8609
8779
  name: name$R,
8610
8780
  components: {
8611
8781
  VarButton: stdin_default$5t,
8612
- VarIcon: stdin_default$5P,
8782
+ VarIcon: stdin_default$5Q,
8613
8783
  VarFormDetails: stdin_default$59
8614
8784
  },
8615
- directives: { Ripple: stdin_default$5T },
8785
+ directives: { Ripple: stdin_default$5U },
8616
8786
  inheritAttrs: false,
8617
8787
  props: props$R,
8618
8788
  setup(props2) {
@@ -9362,7 +9532,7 @@ const __sfc__$Y = vue.defineComponent({
9362
9532
  name: "PanelHeader",
9363
9533
  components: {
9364
9534
  VarButton: stdin_default$5t,
9365
- VarIcon: stdin_default$5P
9535
+ VarIcon: stdin_default$5Q
9366
9536
  },
9367
9537
  props: {
9368
9538
  date: {
@@ -11228,7 +11398,10 @@ const props$O = __spreadValues$h({
11228
11398
  "onClosed",
11229
11399
  "onClickOverlay",
11230
11400
  // internal for function call closes the dialog
11231
- "onRouteChange"
11401
+ "onRouteChange",
11402
+ // internal for esc
11403
+ "closeOnKeyEscape",
11404
+ "onKeyEscape"
11232
11405
  ]));
11233
11406
  var __defProp$g = Object.defineProperty;
11234
11407
  var __getOwnPropSymbols$g = Object.getOwnPropertySymbols;
@@ -11259,11 +11432,13 @@ function __render__$R(_ctx, _cache) {
11259
11432
  "overlay-style": _ctx.overlayStyle,
11260
11433
  "lock-scroll": _ctx.lockScroll,
11261
11434
  "close-on-click-overlay": _ctx.popupCloseOnClickOverlay,
11435
+ "close-on-key-escape": false,
11262
11436
  teleport: _ctx.teleport,
11263
11437
  onOpen: _ctx.onOpen,
11264
11438
  onClose: _ctx.onClose,
11265
11439
  onClosed: _ctx.onClosed,
11266
11440
  onOpened: _ctx.onOpened,
11441
+ onKeyEscape: _ctx.handleKeyEscape,
11267
11442
  onRouteChange: _ctx.onRouteChange,
11268
11443
  onClickOverlay: _ctx.handleClickOverlay
11269
11444
  }, {
@@ -11374,12 +11549,12 @@ function __render__$R(_ctx, _cache) {
11374
11549
  ]),
11375
11550
  _: 3
11376
11551
  /* FORWARDED */
11377
- }, 8, ["class", "show", "overlay", "overlay-class", "overlay-style", "lock-scroll", "close-on-click-overlay", "teleport", "onOpen", "onClose", "onClosed", "onOpened", "onRouteChange", "onClickOverlay"]);
11552
+ }, 8, ["class", "show", "overlay", "overlay-class", "overlay-style", "lock-scroll", "close-on-click-overlay", "teleport", "onOpen", "onClose", "onClosed", "onOpened", "onKeyEscape", "onRouteChange", "onClickOverlay"]);
11378
11553
  }
11379
11554
  const __sfc__$S = vue.defineComponent({
11380
11555
  name: name$O,
11381
11556
  components: {
11382
- VarPopup: stdin_default$5R,
11557
+ VarPopup: stdin_default$5S,
11383
11558
  VarButton: stdin_default$5t
11384
11559
  },
11385
11560
  inheritAttrs: false,
@@ -11438,6 +11613,13 @@ const __sfc__$S = vue.defineComponent({
11438
11613
  }
11439
11614
  call(props2["onUpdate:show"], false);
11440
11615
  }
11616
+ function handleKeyEscape() {
11617
+ call(props2.onKeyEscape);
11618
+ if (!props2.closeOnKeyEscape) {
11619
+ return;
11620
+ }
11621
+ cancel();
11622
+ }
11441
11623
  return {
11442
11624
  t,
11443
11625
  popupShow,
@@ -11447,7 +11629,8 @@ const __sfc__$S = vue.defineComponent({
11447
11629
  handleClickOverlay,
11448
11630
  confirm,
11449
11631
  cancel,
11450
- toSizeUnit
11632
+ toSizeUnit,
11633
+ handleKeyEscape
11451
11634
  };
11452
11635
  }
11453
11636
  });
@@ -13233,6 +13416,7 @@ function usePopover(options) {
13233
13416
  }
13234
13417
  });
13235
13418
  const { zIndex } = useZIndex(() => show.value, 1);
13419
+ useStack(() => show.value, zIndex);
13236
13420
  let popoverInstance = null;
13237
13421
  let enterPopover = false;
13238
13422
  let enterHost = false;
@@ -13458,6 +13642,13 @@ function usePopover(options) {
13458
13642
  };
13459
13643
  };
13460
13644
  const getReference = () => options.reference ? host.value.querySelector(options.reference) : host.value;
13645
+ const handleKeydown = (event) => {
13646
+ const { closeOnKeyEscape = false } = options;
13647
+ if (event.key === "Escape" && closeOnKeyEscape && show.value) {
13648
+ preventDefault(event);
13649
+ close();
13650
+ }
13651
+ };
13461
13652
  const resize = () => {
13462
13653
  popoverInstance.setOptions(getPopperOptions());
13463
13654
  };
@@ -13473,6 +13664,7 @@ function usePopover(options) {
13473
13664
  show.value = false;
13474
13665
  call(options["onUpdate:show"], false);
13475
13666
  };
13667
+ useEventListener(window, "keydown", handleKeydown);
13476
13668
  useClickOutside(getReference, "click", handleClickOutside);
13477
13669
  onWindowResize(resize);
13478
13670
  vue.watch(() => [options.offsetX, options.offsetY, options.placement, options.strategy], resize);
@@ -13543,7 +13735,12 @@ const props$L = {
13543
13735
  onClose: defineListenerProp(),
13544
13736
  onClosed: defineListenerProp(),
13545
13737
  onClickOutside: defineListenerProp(),
13546
- "onUpdate:show": defineListenerProp()
13738
+ "onUpdate:show": defineListenerProp(),
13739
+ // internal for esc
13740
+ closeOnKeyEscape: {
13741
+ type: Boolean,
13742
+ default: true
13743
+ }
13547
13744
  };
13548
13745
  const { name: name$L, n: n$O, classes: classes$G } = createNamespace("tooltip");
13549
13746
  function __render__$O(_ctx, _cache) {
@@ -13696,7 +13893,7 @@ var __spreadValues$c = (a, b) => {
13696
13893
  return a;
13697
13894
  };
13698
13895
  const { name: name$K, n: n$N, classes: classes$F } = createNamespace("ellipsis");
13699
- const _hoisted_1$l = { key: 0 };
13896
+ const _hoisted_1$n = { key: 0 };
13700
13897
  function __render__$N(_ctx, _cache) {
13701
13898
  const _component_var_tooltip = vue.resolveComponent("var-tooltip");
13702
13899
  return vue.openBlock(), vue.createBlock(
@@ -13709,7 +13906,7 @@ function __render__$N(_ctx, _cache) {
13709
13906
  return [
13710
13907
  ((_a = _ctx.tooltipProps) == null ? void 0 : _a.content) ? (vue.openBlock(), vue.createElementBlock(
13711
13908
  "span",
13712
- _hoisted_1$l,
13909
+ _hoisted_1$n,
13713
13910
  vue.toDisplayString(_ctx.tooltipProps.content),
13714
13911
  1
13715
13912
  /* TEXT */
@@ -13922,7 +14119,7 @@ var stdin_default$4A = vue.defineComponent({
13922
14119
  "elevation": props2.elevation,
13923
14120
  "iconContainer": true
13924
14121
  }, {
13925
- default: () => [vue.createVNode(stdin_default$5P, {
14122
+ default: () => [vue.createVNode(stdin_default$5Q, {
13926
14123
  "var-fab-cover": true,
13927
14124
  "class": classes$E([isActive.value, n$M("trigger-active-icon"), n$M("trigger-inactive-icon")]),
13928
14125
  "name": isActive.value ? props2.activeIcon : props2.inactiveIcon,
@@ -13992,7 +14189,7 @@ const props$I = {
13992
14189
  type: String,
13993
14190
  default: ""
13994
14191
  },
13995
- isFocus: Boolean,
14192
+ isFocusing: Boolean,
13996
14193
  size: {
13997
14194
  type: String,
13998
14195
  default: "normal"
@@ -14027,7 +14224,7 @@ const props$I = {
14027
14224
  onClear: defineListenerProp()
14028
14225
  };
14029
14226
  const { name: name$I, n: n$L, classes: classes$D } = createNamespace("field-decorator");
14030
- const _hoisted_1$k = ["for"];
14227
+ const _hoisted_1$m = ["for"];
14031
14228
  function __render__$M(_ctx, _cache) {
14032
14229
  const _component_var_icon = vue.resolveComponent("var-icon");
14033
14230
  return vue.openBlock(), vue.createElementBlock(
@@ -14043,7 +14240,7 @@ function __render__$M(_ctx, _cache) {
14043
14240
  class: vue.normalizeClass(
14044
14241
  _ctx.classes(
14045
14242
  _ctx.n("controller"),
14046
- [_ctx.isFocus, _ctx.n("--focus")],
14243
+ [_ctx.isFocusing, _ctx.n("--focus")],
14047
14244
  [_ctx.errorMessage, _ctx.n("--error")],
14048
14245
  [_ctx.formDisabled || _ctx.disabled, _ctx.n("--disabled")]
14049
14246
  )
@@ -14087,7 +14284,7 @@ function __render__$M(_ctx, _cache) {
14087
14284
  _ctx.classes(
14088
14285
  _ctx.n("placeholder"),
14089
14286
  _ctx.n("$--ellipsis"),
14090
- [_ctx.isFocus, _ctx.n("--focus")],
14287
+ [_ctx.isFocusing, _ctx.n("--focus")],
14091
14288
  [_ctx.hintCenter, _ctx.n("--hint-center")],
14092
14289
  [_ctx.formDisabled || _ctx.disabled, _ctx.n("--disabled")],
14093
14290
  [_ctx.errorMessage, _ctx.n("--error")],
@@ -14107,14 +14304,17 @@ function __render__$M(_ctx, _cache) {
14107
14304
  1
14108
14305
  /* TEXT */
14109
14306
  )
14110
- ], 14, _hoisted_1$k)) : vue.createCommentVNode("v-if", true),
14307
+ ], 14, _hoisted_1$m)) : vue.createCommentVNode("v-if", true),
14111
14308
  vue.createElementVNode(
14112
14309
  "div",
14113
14310
  {
14114
14311
  class: vue.normalizeClass(_ctx.classes(_ctx.n("icon"), [!_ctx.hint, _ctx.n("--icon-non-hint")]))
14115
14312
  },
14116
14313
  [
14117
- _ctx.clearable && !_ctx.isEmpty(_ctx.value) ? vue.renderSlot(_ctx.$slots, "clear-icon", { key: 0 }, () => [
14314
+ _ctx.clearable && !_ctx.isEmpty(_ctx.value) ? vue.renderSlot(_ctx.$slots, "clear-icon", {
14315
+ key: 0,
14316
+ clear: _ctx.handleClear
14317
+ }, () => [
14118
14318
  vue.createVNode(_component_var_icon, {
14119
14319
  class: vue.normalizeClass(_ctx.n("clear-icon")),
14120
14320
  "var-field-decorator-cover": "",
@@ -14142,7 +14342,7 @@ function __render__$M(_ctx, _cache) {
14142
14342
  class: vue.normalizeClass(
14143
14343
  _ctx.classes(
14144
14344
  _ctx.n("line"),
14145
- [_ctx.isFocus, _ctx.n("--line-focus")],
14345
+ [_ctx.isFocusing, _ctx.n("--line-focus")],
14146
14346
  [_ctx.errorMessage, _ctx.n("--line-error")],
14147
14347
  [_ctx.formDisabled || _ctx.disabled, _ctx.n("--line-disabled")]
14148
14348
  )
@@ -14195,7 +14395,7 @@ function __render__$M(_ctx, _cache) {
14195
14395
  class: vue.normalizeClass(
14196
14396
  _ctx.classes(
14197
14397
  _ctx.n("dot"),
14198
- [_ctx.isFocus, _ctx.n("--line-focus")],
14398
+ [_ctx.isFocusing, _ctx.n("--line-focus")],
14199
14399
  [_ctx.formDisabled || _ctx.disabled, _ctx.n("--line-disabled")],
14200
14400
  [_ctx.errorMessage, _ctx.n("--line-error")]
14201
14401
  )
@@ -14221,7 +14421,7 @@ function __render__$M(_ctx, _cache) {
14221
14421
  }
14222
14422
  const __sfc__$N = vue.defineComponent({
14223
14423
  name: name$I,
14224
- components: { VarIcon: stdin_default$5P },
14424
+ components: { VarIcon: stdin_default$5Q },
14225
14425
  props: props$I,
14226
14426
  setup(props2) {
14227
14427
  const placeholderTextEl = vue.ref(null);
@@ -14231,9 +14431,9 @@ const __sfc__$N = vue.defineComponent({
14231
14431
  const middleOffsetWidth = vue.ref("0px");
14232
14432
  const middleOffsetHeight = vue.ref("0px");
14233
14433
  const transitionDisabled = vue.ref(true);
14234
- const isFloating = vue.computed(() => props2.hint && (!isEmpty(props2.value) || props2.isFocus));
14434
+ const isFloating = vue.computed(() => props2.hint && (!isEmpty(props2.value) || props2.isFocusing));
14235
14435
  const color = vue.computed(
14236
- () => !props2.errorMessage ? props2.isFocus ? props2.focusColor : props2.blurColor : void 0
14436
+ () => !props2.errorMessage ? props2.isFocusing ? props2.focusColor : props2.blurColor : void 0
14237
14437
  );
14238
14438
  onWindowResize(resize);
14239
14439
  onSmartMounted(() => {
@@ -14644,8 +14844,8 @@ const props$F = {
14644
14844
  onError: defineListenerProp()
14645
14845
  };
14646
14846
  const { name: name$F, n: n$I, classes: classes$B } = createNamespace("image");
14647
- const _hoisted_1$j = ["alt", "title", "referrerpolicy", "lazy-loading", "lazy-error"];
14648
- const _hoisted_2$c = ["alt", "title", "referrerpolicy", "src"];
14847
+ const _hoisted_1$l = ["alt", "title", "referrerpolicy", "lazy-loading", "lazy-error"];
14848
+ const _hoisted_2$d = ["alt", "title", "referrerpolicy", "src"];
14649
14849
  function __render__$J(_ctx, _cache) {
14650
14850
  var _a;
14651
14851
  const _directive_lazy = vue.resolveDirective("lazy");
@@ -14673,7 +14873,7 @@ function __render__$J(_ctx, _cache) {
14673
14873
  style: vue.normalizeStyle({ objectFit: _ctx.fit }),
14674
14874
  onLoad: _cache[0] || (_cache[0] = (...args) => _ctx.handleLoad && _ctx.handleLoad(...args)),
14675
14875
  onClick: _cache[1] || (_cache[1] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
14676
- }, null, 46, _hoisted_1$j)), [
14876
+ }, null, 46, _hoisted_1$l)), [
14677
14877
  [_directive_lazy, (_a = _ctx.src) != null ? _a : ""]
14678
14878
  ]) : vue.createCommentVNode("v-if", true),
14679
14879
  !_ctx.lazy && !_ctx.showErrorSlot ? (vue.openBlock(), vue.createElementBlock("img", {
@@ -14688,7 +14888,7 @@ function __render__$J(_ctx, _cache) {
14688
14888
  onLoad: _cache[2] || (_cache[2] = (...args) => _ctx.handleLoad && _ctx.handleLoad(...args)),
14689
14889
  onError: _cache[3] || (_cache[3] = (...args) => _ctx.handleError && _ctx.handleError(...args)),
14690
14890
  onClick: _cache[4] || (_cache[4] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
14691
- }, null, 46, _hoisted_2$c)) : vue.createCommentVNode("v-if", true),
14891
+ }, null, 46, _hoisted_2$d)) : vue.createCommentVNode("v-if", true),
14692
14892
  _ctx.showErrorSlot ? vue.renderSlot(_ctx.$slots, "error", { key: 2 }) : vue.createCommentVNode("v-if", true)
14693
14893
  ],
14694
14894
  6
@@ -14700,8 +14900,8 @@ function __render__$J(_ctx, _cache) {
14700
14900
  const __sfc__$K = vue.defineComponent({
14701
14901
  name: name$F,
14702
14902
  directives: {
14703
- Lazy: stdin_default$5E,
14704
- Ripple: stdin_default$5T
14903
+ Lazy: stdin_default$5B,
14904
+ Ripple: stdin_default$5U
14705
14905
  },
14706
14906
  props: props$F,
14707
14907
  setup(props2, { slots }) {
@@ -14814,7 +15014,7 @@ var __async$7 = (__this, __arguments, generator) => {
14814
15014
  const SWIPE_DELAY = 250;
14815
15015
  const SWIPE_OFFSET = 20;
14816
15016
  const { name: name$E, n: n$H, classes: classes$A } = createNamespace("swipe");
14817
- const _hoisted_1$i = ["onClick"];
15017
+ const _hoisted_1$k = ["onClick"];
14818
15018
  function __render__$I(_ctx, _cache) {
14819
15019
  const _component_var_icon = vue.resolveComponent("var-icon");
14820
15020
  const _component_var_button = vue.resolveComponent("var-button");
@@ -14960,7 +15160,7 @@ function __render__$I(_ctx, _cache) {
14960
15160
  style: vue.normalizeStyle({ background: _ctx.indicatorColor }),
14961
15161
  key: l,
14962
15162
  onClick: ($event) => _ctx.to(idx)
14963
- }, null, 14, _hoisted_1$i);
15163
+ }, null, 14, _hoisted_1$k);
14964
15164
  }),
14965
15165
  128
14966
15166
  /* KEYED_FRAGMENT */
@@ -14979,8 +15179,8 @@ function __render__$I(_ctx, _cache) {
14979
15179
  }
14980
15180
  const __sfc__$J = vue.defineComponent({
14981
15181
  name: name$E,
14982
- directives: { Hover: stdin_default$5v },
14983
- components: { VarButton: stdin_default$5t, VarIcon: stdin_default$5P },
15182
+ directives: { Hover: stdin_default$5N },
15183
+ components: { VarButton: stdin_default$5t, VarIcon: stdin_default$5Q },
14984
15184
  props: props$E,
14985
15185
  setup(props2) {
14986
15186
  const swipeEl = vue.ref(null);
@@ -15388,7 +15588,10 @@ const props$D = __spreadValues$b(__spreadValues$b({
15388
15588
  "onOpened",
15389
15589
  "onClosed",
15390
15590
  // internal for function call closes the dialog
15391
- "onRouteChange"
15591
+ "onRouteChange",
15592
+ // internal for esc
15593
+ "closeOnKeyEscape",
15594
+ "onKeyEscape"
15392
15595
  ]));
15393
15596
  const { name: name$C, n: n$F, classes: classes$z } = createNamespace("image-preview");
15394
15597
  const DISTANCE_OFFSET = 12;
@@ -15397,26 +15600,29 @@ const TAP_DELAY = 350;
15397
15600
  const ANIMATION_DURATION = 200;
15398
15601
  const LONG_PRESS_DELAY = 500;
15399
15602
  const BASE_RATIO = 1;
15400
- const _hoisted_1$h = ["onTouchstart"];
15401
- const _hoisted_2$b = ["src", "alt"];
15603
+ const _hoisted_1$j = ["onTouchstart"];
15604
+ const _hoisted_2$c = ["src", "alt"];
15402
15605
  function __render__$G(_ctx, _cache) {
15403
15606
  const _component_var_swipe_item = vue.resolveComponent("var-swipe-item");
15404
15607
  const _component_var_swipe = vue.resolveComponent("var-swipe");
15405
15608
  const _component_var_icon = vue.resolveComponent("var-icon");
15406
15609
  const _component_var_popup = vue.resolveComponent("var-popup");
15407
15610
  return vue.openBlock(), vue.createBlock(_component_var_popup, {
15408
- class: vue.normalizeClass(_ctx.n("popup")),
15409
15611
  "var-image-preview-cover": "",
15612
+ class: vue.normalizeClass(_ctx.n("popup")),
15410
15613
  transition: _ctx.n("$-fade"),
15411
- show: _ctx.popupShow,
15412
15614
  overlay: false,
15413
15615
  "close-on-click-overlay": false,
15616
+ "close-on-key-escape": _ctx.closeOnKeyEscape,
15414
15617
  "lock-scroll": _ctx.lockScroll,
15415
15618
  teleport: _ctx.teleport,
15619
+ show: _ctx.show,
15620
+ "onUpdate:show": _cache[3] || (_cache[3] = ($event) => _ctx.show = $event),
15416
15621
  onOpen: _ctx.onOpen,
15417
15622
  onClose: _ctx.onClose,
15418
15623
  onClosed: _ctx.onClosed,
15419
15624
  onOpened: _ctx.onOpened,
15625
+ onKeyEscape: _ctx.onKeyEscape,
15420
15626
  onRouteChange: _ctx.onRouteChange
15421
15627
  }, {
15422
15628
  default: vue.withCtx(() => [
@@ -15458,8 +15664,8 @@ function __render__$G(_ctx, _cache) {
15458
15664
  class: vue.normalizeClass(_ctx.classes(_ctx.n("image"), [_ctx.isPreventDefault, _ctx.n("--prevent")])),
15459
15665
  src: image,
15460
15666
  alt: image
15461
- }, null, 10, _hoisted_2$b)
15462
- ], 46, _hoisted_1$h)
15667
+ }, null, 10, _hoisted_2$c)
15668
+ ], 46, _hoisted_1$j)
15463
15669
  ]),
15464
15670
  _: 2
15465
15671
  /* DYNAMIC */
@@ -15513,20 +15719,20 @@ function __render__$G(_ctx, _cache) {
15513
15719
  ]),
15514
15720
  _: 3
15515
15721
  /* FORWARDED */
15516
- }, 8, ["class", "transition", "show", "lock-scroll", "teleport", "onOpen", "onClose", "onClosed", "onOpened", "onRouteChange"]);
15722
+ }, 8, ["class", "transition", "close-on-key-escape", "lock-scroll", "teleport", "show", "onOpen", "onClose", "onClosed", "onOpened", "onKeyEscape", "onRouteChange"]);
15517
15723
  }
15518
15724
  const __sfc__$H = vue.defineComponent({
15519
15725
  name: name$C,
15520
15726
  components: {
15521
15727
  VarSwipe: stdin_default$4p,
15522
15728
  VarSwipeItem: stdin_default$4n,
15523
- VarPopup: stdin_default$5R,
15524
- VarIcon: stdin_default$5P
15729
+ VarPopup: stdin_default$5S,
15730
+ VarIcon: stdin_default$5Q
15525
15731
  },
15526
15732
  inheritAttrs: false,
15527
15733
  props: props$D,
15528
15734
  setup(props2) {
15529
- const popupShow = vue.ref(false);
15735
+ const show = useVModel(props2, "show");
15530
15736
  const scale = vue.ref(1);
15531
15737
  const translateX = vue.ref(0);
15532
15738
  const translateY = vue.ref(0);
@@ -15536,8 +15742,8 @@ const __sfc__$H = vue.defineComponent({
15536
15742
  const swipeRef = vue.ref(null);
15537
15743
  const { moveX, moveY, distance, startTime, startTouch, moveTouch, endTouch } = useTouch();
15538
15744
  const isPreventDefault = vue.computed(() => {
15539
- const { imagePreventDefault, show } = props2;
15540
- return show && imagePreventDefault;
15745
+ const { imagePreventDefault, show: show2 } = props2;
15746
+ return show2 && imagePreventDefault;
15541
15747
  });
15542
15748
  let closeRunner = null;
15543
15749
  let longPressRunner = null;
@@ -15547,13 +15753,6 @@ const __sfc__$H = vue.defineComponent({
15547
15753
  prev: null
15548
15754
  };
15549
15755
  useEventListener(() => document, "contextmenu", preventImageDefault);
15550
- vue.watch(
15551
- () => props2.show,
15552
- (newShow) => {
15553
- popupShow.value = newShow;
15554
- },
15555
- { immediate: true }
15556
- );
15557
15756
  function zoomIn(ratio) {
15558
15757
  scale.value = toNumber(ratio);
15559
15758
  canSwipe.value = false;
@@ -15694,7 +15893,7 @@ const __sfc__$H = vue.defineComponent({
15694
15893
  return {
15695
15894
  swipeRef,
15696
15895
  isPreventDefault,
15697
- popupShow,
15896
+ show,
15698
15897
  scale,
15699
15898
  translateX,
15700
15899
  translateY,
@@ -15946,7 +16145,7 @@ var __async$6 = (__this, __arguments, generator) => {
15946
16145
  });
15947
16146
  };
15948
16147
  const { name: name$A, n: n$D, classes: classes$x } = createNamespace("index-bar");
15949
- const _hoisted_1$g = ["onClick"];
16148
+ const _hoisted_1$i = ["onClick"];
15950
16149
  function __render__$E(_ctx, _cache) {
15951
16150
  return vue.openBlock(), vue.createElementBlock(
15952
16151
  "div",
@@ -15980,7 +16179,7 @@ function __render__$E(_ctx, _cache) {
15980
16179
  /* TEXT */
15981
16180
  )
15982
16181
  ])
15983
- ], 14, _hoisted_1$g);
16182
+ ], 14, _hoisted_1$i);
15984
16183
  }),
15985
16184
  128
15986
16185
  /* KEYED_FRAGMENT */
@@ -16190,9 +16389,9 @@ const props$A = __spreadValues$9({
16190
16389
  "onClick"
16191
16390
  ]));
16192
16391
  const { name: name$z, n: n$C, classes: classes$w } = createNamespace("input");
16193
- const _hoisted_1$f = ["placeholder", "enterkeyhint"];
16194
- const _hoisted_2$a = ["id", "disabled", "readonly", "type", "value", "placeholder", "maxlength", "rows", "enterkeyhint", "inputmode"];
16195
- const _hoisted_3$9 = ["id", "disabled", "readonly", "type", "value", "placeholder", "maxlength", "enterkeyhint", "inputmode"];
16392
+ const _hoisted_1$h = ["placeholder", "enterkeyhint"];
16393
+ const _hoisted_2$b = ["id", "disabled", "readonly", "type", "value", "placeholder", "maxlength", "rows", "enterkeyhint", "inputmode"];
16394
+ const _hoisted_3$a = ["id", "disabled", "readonly", "type", "value", "placeholder", "maxlength", "enterkeyhint", "inputmode"];
16196
16395
  function __render__$D(_ctx, _cache) {
16197
16396
  const _component_var_field_decorator = vue.resolveComponent("var-field-decorator");
16198
16397
  const _component_var_form_details = vue.resolveComponent("var-form-details");
@@ -16216,7 +16415,7 @@ function __render__$D(_ctx, _cache) {
16216
16415
  textColor: _ctx.textColor,
16217
16416
  focusColor: _ctx.focusColor,
16218
16417
  blurColor: _ctx.blurColor,
16219
- isFocus: _ctx.isFocus,
16418
+ isFocusing: _ctx.isFocusing,
16220
16419
  errorMessage: _ctx.errorMessage,
16221
16420
  formDisabled: _ctx.formDisabled,
16222
16421
  disabled: _ctx.disabled,
@@ -16228,8 +16427,8 @@ function __render__$D(_ctx, _cache) {
16228
16427
  onClear: _ctx.handleClear
16229
16428
  })),
16230
16429
  vue.createSlots({
16231
- "clear-icon": vue.withCtx(() => [
16232
- vue.renderSlot(_ctx.$slots, "clear-icon")
16430
+ "clear-icon": vue.withCtx(({ clear: clear2 }) => [
16431
+ vue.renderSlot(_ctx.$slots, "clear-icon", { clear: clear2 })
16233
16432
  ]),
16234
16433
  "append-icon": vue.withCtx(() => [
16235
16434
  vue.renderSlot(_ctx.$slots, "append-icon")
@@ -16244,7 +16443,7 @@ function __render__$D(_ctx, _cache) {
16244
16443
  "--input-placeholder-color": _ctx.placeholderColor
16245
16444
  }),
16246
16445
  enterkeyhint: _ctx.enterkeyhint
16247
- }, null, 14, _hoisted_1$f)) : vue.createCommentVNode("v-if", true),
16446
+ }, null, 14, _hoisted_1$h)) : vue.createCommentVNode("v-if", true),
16248
16447
  _ctx.textarea ? (vue.openBlock(), vue.createElementBlock("textarea", {
16249
16448
  key: 1,
16250
16449
  class: vue.normalizeClass(
@@ -16280,7 +16479,7 @@ function __render__$D(_ctx, _cache) {
16280
16479
  onChange: _cache[3] || (_cache[3] = (...args) => _ctx.handleChange && _ctx.handleChange(...args)),
16281
16480
  onCompositionstart: _cache[4] || (_cache[4] = (...args) => _ctx.handleCompositionStart && _ctx.handleCompositionStart(...args)),
16282
16481
  onCompositionend: _cache[5] || (_cache[5] = (...args) => _ctx.handleCompositionEnd && _ctx.handleCompositionEnd(...args))
16283
- }, null, 46, _hoisted_2$a)) : (vue.openBlock(), vue.createElementBlock("input", {
16482
+ }, null, 46, _hoisted_2$b)) : (vue.openBlock(), vue.createElementBlock("input", {
16284
16483
  key: 2,
16285
16484
  class: vue.normalizeClass(
16286
16485
  _ctx.classes(
@@ -16312,7 +16511,7 @@ function __render__$D(_ctx, _cache) {
16312
16511
  onChange: _cache[9] || (_cache[9] = (...args) => _ctx.handleChange && _ctx.handleChange(...args)),
16313
16512
  onCompositionstart: _cache[10] || (_cache[10] = (...args) => _ctx.handleCompositionStart && _ctx.handleCompositionStart(...args)),
16314
16513
  onCompositionend: _cache[11] || (_cache[11] = (...args) => _ctx.handleCompositionEnd && _ctx.handleCompositionEnd(...args))
16315
- }, null, 46, _hoisted_3$9))
16514
+ }, null, 46, _hoisted_3$a))
16316
16515
  ]),
16317
16516
  _: 2
16318
16517
  /* DYNAMIC */
@@ -16360,7 +16559,7 @@ const __sfc__$E = vue.defineComponent({
16360
16559
  setup(props2) {
16361
16560
  const id = useId();
16362
16561
  const el = vue.ref(null);
16363
- const isFocus = vue.ref(false);
16562
+ const isFocusing = vue.ref(false);
16364
16563
  const isComposing = vue.ref(false);
16365
16564
  const { bindForm, form } = useForm();
16366
16565
  const {
@@ -16395,7 +16594,7 @@ const __sfc__$E = vue.defineComponent({
16395
16594
  if (errorMessage.value) {
16396
16595
  return "var(--field-decorator-error-color)";
16397
16596
  }
16398
- if (isFocus.value) {
16597
+ if (isFocusing.value) {
16399
16598
  return focusColor || "var(--field-decorator-focus-color)";
16400
16599
  }
16401
16600
  return blurColor || "var(--field-decorator-placeholder-color, var(--field-decorator-blur-color))";
@@ -16418,12 +16617,12 @@ const __sfc__$E = vue.defineComponent({
16418
16617
  });
16419
16618
  }
16420
16619
  function handleFocus(e) {
16421
- isFocus.value = true;
16620
+ isFocusing.value = true;
16422
16621
  call(props2.onFocus, e);
16423
16622
  validateWithTrigger("onFocus");
16424
16623
  }
16425
16624
  function handleBlur(e) {
16426
- isFocus.value = false;
16625
+ isFocusing.value = false;
16427
16626
  call(props2.onBlur, e);
16428
16627
  validateWithTrigger("onBlur");
16429
16628
  }
@@ -16522,7 +16721,7 @@ const __sfc__$E = vue.defineComponent({
16522
16721
  return {
16523
16722
  el,
16524
16723
  id,
16525
- isFocus,
16724
+ isFocusing,
16526
16725
  isComposing,
16527
16726
  errorMessage,
16528
16727
  placeholderColor,
@@ -16585,13 +16784,16 @@ function __render__$C(_ctx, _cache) {
16585
16784
  _ctx.n("$--inline-flex"),
16586
16785
  _ctx.n(`--${_ctx.type}`),
16587
16786
  [_ctx.underline !== "none", _ctx.n(`--underline-${_ctx.underline}`)],
16588
- [_ctx.disabled, _ctx.n("--disabled")]
16787
+ [_ctx.disabled, _ctx.n("--disabled")],
16788
+ [_ctx.isFocusing && !_ctx.inMobile(), _ctx.n("--focusing")]
16589
16789
  ),
16590
16790
  style: {
16591
16791
  color: _ctx.textColor,
16592
16792
  fontSize: _ctx.toSizeUnit(_ctx.textSize)
16593
16793
  },
16594
- onClick: _ctx.handleClick
16794
+ onClick: _ctx.handleClick,
16795
+ onFocus: _cache[0] || (_cache[0] = ($event) => _ctx.isFocusing = true),
16796
+ onBlur: _cache[1] || (_cache[1] = ($event) => _ctx.isFocusing = false)
16595
16797
  }), {
16596
16798
  default: vue.withCtx(() => [
16597
16799
  vue.renderSlot(_ctx.$slots, "default")
@@ -16604,6 +16806,7 @@ const __sfc__$D = vue.defineComponent({
16604
16806
  name: name$y,
16605
16807
  props: props$z,
16606
16808
  setup(props2) {
16809
+ const isFocusing = vue.ref(false);
16607
16810
  const tag2 = vue.computed(() => {
16608
16811
  const { disabled, href, to } = props2;
16609
16812
  if (disabled) {
@@ -16639,6 +16842,8 @@ const __sfc__$D = vue.defineComponent({
16639
16842
  return {
16640
16843
  tag: tag2,
16641
16844
  linkProps,
16845
+ isFocusing,
16846
+ inMobile,
16642
16847
  n: n$B,
16643
16848
  classes: classes$v,
16644
16849
  handleClick,
@@ -16826,8 +17031,8 @@ function __render__$B(_ctx, _cache) {
16826
17031
  }
16827
17032
  const __sfc__$C = vue.defineComponent({
16828
17033
  name: name$x,
16829
- directives: { Ripple: stdin_default$5T },
16830
- components: { VarLoading: stdin_default$5y },
17034
+ directives: { Ripple: stdin_default$5U },
17035
+ components: { VarLoading: stdin_default$5v },
16831
17036
  props: props$y,
16832
17037
  setup(props2) {
16833
17038
  const listEl = vue.ref(null);
@@ -16917,7 +17122,7 @@ var stdin_default$4a = vue.defineComponent({
16917
17122
  return () => vue.createVNode("div", {
16918
17123
  "class": classes$t(n$z(), [props2.error, n$z("--error")]),
16919
17124
  "style": {
16920
- zIndex: stdin_default$5U.zIndex + 10,
17125
+ zIndex: stdin_default$5V.zIndex + 10,
16921
17126
  width: `${props2.value}%`,
16922
17127
  opacity: props2.opacity,
16923
17128
  height: toSizeUnit(props2.height),
@@ -17059,7 +17264,12 @@ const props$v = {
17059
17264
  onClose: defineListenerProp(),
17060
17265
  onClosed: defineListenerProp(),
17061
17266
  onClickOutside: defineListenerProp(),
17062
- "onUpdate:show": defineListenerProp()
17267
+ "onUpdate:show": defineListenerProp(),
17268
+ // internal for esc
17269
+ closeOnKeyEscape: {
17270
+ type: Boolean,
17271
+ default: true
17272
+ }
17063
17273
  };
17064
17274
  const { name: name$v, n: n$y, classes: classes$s } = createNamespace("menu");
17065
17275
  function __render__$A(_ctx, _cache) {
@@ -17208,72 +17418,74 @@ const props$u = {
17208
17418
  label: {},
17209
17419
  value: {},
17210
17420
  disabled: Boolean
17211
- };
17212
- const { name: name$u, n: n$x, classes: classes$r } = createNamespace("menu-option");
17213
- function __render__$z(_ctx, _cache) {
17214
- const _component_var_checkbox = vue.resolveComponent("var-checkbox");
17215
- const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
17216
- const _directive_ripple = vue.resolveDirective("ripple");
17217
- const _directive_hover = vue.resolveDirective("hover");
17218
- return vue.withDirectives((vue.openBlock(), vue.createElementBlock(
17219
- "div",
17220
- {
17221
- class: vue.normalizeClass(
17222
- _ctx.classes(_ctx.n(), _ctx.n("$--box"), _ctx.n(`--${_ctx.size}`), [_ctx.optionSelected, _ctx.n("--selected-color")], [_ctx.disabled, _ctx.n("--disabled")])
17223
- ),
17224
- onClick: _cache[2] || (_cache[2] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
17225
- },
17226
- [
17421
+ };
17422
+ const { name: name$u, n: n$x, classes: classes$r } = createNamespace("menu-option");
17423
+ const _hoisted_1$g = ["tabindex"];
17424
+ function __render__$z(_ctx, _cache) {
17425
+ const _component_var_checkbox = vue.resolveComponent("var-checkbox");
17426
+ const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
17427
+ const _directive_ripple = vue.resolveDirective("ripple");
17428
+ const _directive_hover = vue.resolveDirective("hover");
17429
+ return vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
17430
+ ref: "root",
17431
+ class: vue.normalizeClass(
17432
+ _ctx.classes(_ctx.n(), _ctx.n("$--box"), _ctx.n(`--${_ctx.size}`), [_ctx.optionSelected, _ctx.n("--selected-color")], [_ctx.disabled, _ctx.n("--disabled")])
17433
+ ),
17434
+ tabindex: _ctx.disabled ? void 0 : "-1",
17435
+ onClick: _cache[2] || (_cache[2] = (...args) => _ctx.handleClick && _ctx.handleClick(...args)),
17436
+ onFocus: _cache[3] || (_cache[3] = ($event) => _ctx.isFocusing = true),
17437
+ onBlur: _cache[4] || (_cache[4] = ($event) => _ctx.isFocusing = false)
17438
+ }, [
17439
+ vue.createElementVNode(
17440
+ "div",
17441
+ {
17442
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("cover"), [_ctx.optionSelected, _ctx.n("--selected-background")]))
17443
+ },
17444
+ null,
17445
+ 2
17446
+ /* CLASS */
17447
+ ),
17448
+ _ctx.multiple ? (vue.openBlock(), vue.createBlock(_component_var_checkbox, {
17449
+ key: 0,
17450
+ ref: "checkbox",
17451
+ modelValue: _ctx.optionSelected,
17452
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.optionSelected = $event),
17453
+ disabled: _ctx.disabled,
17454
+ onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
17455
+ }, ["stop"])),
17456
+ onChange: _ctx.handleSelect
17457
+ }, null, 8, ["modelValue", "disabled", "onChange"])) : vue.createCommentVNode("v-if", true),
17458
+ vue.renderSlot(_ctx.$slots, "default", {}, () => [
17227
17459
  vue.createElementVNode(
17228
17460
  "div",
17229
17461
  {
17230
- class: vue.normalizeClass(_ctx.classes(_ctx.n("cover"), [_ctx.optionSelected, _ctx.n("--selected-background")]))
17462
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("text"), _ctx.n("$--ellipsis")))
17231
17463
  },
17232
- null,
17233
- 2
17234
- /* CLASS */
17235
- ),
17236
- _ctx.multiple ? (vue.openBlock(), vue.createBlock(_component_var_checkbox, {
17237
- key: 0,
17238
- ref: "checkbox",
17239
- modelValue: _ctx.optionSelected,
17240
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.optionSelected = $event),
17241
- disabled: _ctx.disabled,
17242
- onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
17243
- }, ["stop"])),
17244
- onChange: _ctx.handleSelect
17245
- }, null, 8, ["modelValue", "disabled", "onChange"])) : vue.createCommentVNode("v-if", true),
17246
- vue.renderSlot(_ctx.$slots, "default", {}, () => [
17247
- vue.createElementVNode(
17248
- "div",
17249
- {
17250
- class: vue.normalizeClass(_ctx.classes(_ctx.n("text"), _ctx.n("$--ellipsis")))
17251
- },
17252
- vue.toDisplayString(_ctx.label),
17253
- 3
17254
- /* TEXT, CLASS */
17255
- )
17256
- ]),
17257
- vue.createVNode(_component_var_hover_overlay, {
17258
- hovering: _ctx.hovering && !_ctx.disabled
17259
- }, null, 8, ["hovering"])
17260
- ],
17261
- 2
17262
- /* CLASS */
17263
- )), [
17464
+ vue.toDisplayString(_ctx.label),
17465
+ 3
17466
+ /* TEXT, CLASS */
17467
+ )
17468
+ ]),
17469
+ vue.createVNode(_component_var_hover_overlay, {
17470
+ hovering: _ctx.hovering && !_ctx.disabled,
17471
+ focusing: _ctx.isFocusing && !_ctx.disabled
17472
+ }, null, 8, ["hovering", "focusing"])
17473
+ ], 42, _hoisted_1$g)), [
17264
17474
  [_directive_ripple, { disabled: _ctx.disabled }],
17265
17475
  [_directive_hover, _ctx.handleHovering, "desktop"]
17266
17476
  ]);
17267
17477
  }
17268
17478
  const __sfc__$A = vue.defineComponent({
17269
17479
  name: name$u,
17270
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
17480
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
17271
17481
  components: {
17272
17482
  VarCheckbox: stdin_default$57,
17273
- VarHoverOverlay: stdin_default$5w
17483
+ VarHoverOverlay: stdin_default$5O
17274
17484
  },
17275
17485
  props: props$u,
17276
17486
  setup(props2) {
17487
+ const root = vue.ref();
17488
+ const isFocusing = vue.ref(false);
17277
17489
  const optionSelected = vue.ref(false);
17278
17490
  const selected = vue.computed(() => optionSelected.value);
17279
17491
  const label = vue.computed(() => props2.label);
@@ -17289,12 +17501,34 @@ const __sfc__$A = vue.defineComponent({
17289
17501
  };
17290
17502
  vue.watch([() => props2.label, () => props2.value], computeLabel);
17291
17503
  bindMenuSelect(menuOptionProvider);
17504
+ useEventListener(() => window, "keydown", handleKeydown);
17505
+ useEventListener(() => window, "keyup", handleKeyup);
17292
17506
  function handleClick() {
17293
17507
  if (props2.disabled) {
17294
17508
  return;
17295
17509
  }
17296
17510
  handleSelect();
17297
17511
  }
17512
+ function handleKeydown(event) {
17513
+ if (!isFocusing.value) {
17514
+ return;
17515
+ }
17516
+ if (event.key === " " || event.key === "Enter") {
17517
+ preventDefault(event);
17518
+ }
17519
+ if (event.key === "Enter") {
17520
+ root.value.click();
17521
+ }
17522
+ }
17523
+ function handleKeyup(event) {
17524
+ if (!isFocusing.value) {
17525
+ return;
17526
+ }
17527
+ if (event.key === " ") {
17528
+ preventDefault(event);
17529
+ root.value.click();
17530
+ }
17531
+ }
17298
17532
  function handleSelect() {
17299
17533
  if (multiple.value) {
17300
17534
  optionSelected.value = !optionSelected.value;
@@ -17305,10 +17539,12 @@ const __sfc__$A = vue.defineComponent({
17305
17539
  optionSelected.value = checked;
17306
17540
  }
17307
17541
  return {
17542
+ root,
17308
17543
  optionSelected,
17309
17544
  size,
17310
17545
  multiple,
17311
17546
  hovering,
17547
+ isFocusing,
17312
17548
  n: n$x,
17313
17549
  classes: classes$r,
17314
17550
  handleHovering,
@@ -17443,6 +17679,7 @@ function __render__$y(_ctx, _cache) {
17443
17679
  const _component_var_menu = vue.resolveComponent("var-menu");
17444
17680
  return vue.openBlock(), vue.createBlock(_component_var_menu, {
17445
17681
  ref: "menu",
17682
+ tabindex: "-1",
17446
17683
  class: vue.normalizeClass(_ctx.n()),
17447
17684
  disabled: _ctx.disabled,
17448
17685
  trigger: _ctx.trigger,
@@ -17457,6 +17694,7 @@ function __render__$y(_ctx, _cache) {
17457
17694
  "default-style": false,
17458
17695
  "popover-class": _ctx.popoverClass,
17459
17696
  "close-on-click-reference": _ctx.closeOnClickReference,
17697
+ "close-on-key-escape": false,
17460
17698
  show: _ctx.show,
17461
17699
  "onUpdate:show": _cache[0] || (_cache[0] = ($event) => _ctx.show = $event),
17462
17700
  onOpen: _ctx.onOpen,
@@ -17469,6 +17707,7 @@ function __render__$y(_ctx, _cache) {
17469
17707
  vue.createElementVNode(
17470
17708
  "div",
17471
17709
  {
17710
+ ref: "menuOptionsRef",
17472
17711
  class: vue.normalizeClass(_ctx.classes(_ctx.n("menu"), _ctx.formatElevation(_ctx.elevation, 3), [_ctx.scrollable, _ctx.n("--scrollable")]))
17473
17712
  },
17474
17713
  [
@@ -17491,6 +17730,7 @@ const __sfc__$z = vue.defineComponent({
17491
17730
  props: props$t,
17492
17731
  setup(props2) {
17493
17732
  const menu = vue.ref(null);
17733
+ const menuOptionsRef = vue.ref(null);
17494
17734
  const show = useVModel(props2, "show");
17495
17735
  const { menuOptions, length, bindMenuOptions } = useMenuOptions();
17496
17736
  const { computeLabel, getSelectedValue } = useSelectController({
@@ -17506,11 +17746,30 @@ const __sfc__$z = vue.defineComponent({
17506
17746
  onSelect
17507
17747
  };
17508
17748
  bindMenuOptions(menuSelectProvider);
17749
+ useEventListener(() => window, "keydown", handleKeydown);
17509
17750
  function onSelect(option) {
17510
17751
  const { multiple, closeOnSelect } = props2;
17511
17752
  call(props2["onUpdate:modelValue"], getSelectedValue(option));
17512
17753
  if (!multiple && closeOnSelect) {
17513
- show.value = false;
17754
+ menu.value.$el.focus();
17755
+ close();
17756
+ }
17757
+ }
17758
+ function handleKeydown(event) {
17759
+ if (props2.disabled || !show.value) {
17760
+ return;
17761
+ }
17762
+ const { key } = event;
17763
+ if (["Escape", "ArrowDown", "ArrowUp"].includes(key)) {
17764
+ preventDefault(event);
17765
+ }
17766
+ if (key === "Escape") {
17767
+ menu.value.$el.focus();
17768
+ close();
17769
+ return;
17770
+ }
17771
+ if (key === "ArrowDown" || key === "ArrowUp") {
17772
+ focusChildElementByKey(menu.value.$el, menuOptionsRef.value, key);
17514
17773
  }
17515
17774
  }
17516
17775
  function open() {
@@ -17528,6 +17787,7 @@ const __sfc__$z = vue.defineComponent({
17528
17787
  return {
17529
17788
  show,
17530
17789
  menu,
17790
+ menuOptionsRef,
17531
17791
  n: n$w,
17532
17792
  classes: classes$q,
17533
17793
  formatElevation,
@@ -17569,75 +17829,77 @@ const props$s = {
17569
17829
  disabled: Boolean
17570
17830
  };
17571
17831
  const { name: name$s, n: n$v, classes: classes$p } = createNamespace("option");
17832
+ const _hoisted_1$f = ["tabindex"];
17572
17833
  function __render__$x(_ctx, _cache) {
17573
17834
  const _component_var_checkbox = vue.resolveComponent("var-checkbox");
17574
17835
  const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
17575
17836
  const _directive_ripple = vue.resolveDirective("ripple");
17576
17837
  const _directive_hover = vue.resolveDirective("hover");
17577
- return vue.withDirectives((vue.openBlock(), vue.createElementBlock(
17578
- "div",
17579
- {
17580
- class: vue.normalizeClass(_ctx.classes(_ctx.n(), _ctx.n("$--box"), [_ctx.optionSelected, _ctx.n("--selected-color")], [_ctx.disabled, _ctx.n("--disabled")])),
17581
- style: vue.normalizeStyle({
17582
- color: _ctx.optionSelected ? _ctx.focusColor : void 0
17583
- }),
17584
- onClick: _cache[2] || (_cache[2] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
17585
- },
17586
- [
17838
+ return vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
17839
+ ref: "root",
17840
+ class: vue.normalizeClass(_ctx.classes(_ctx.n(), _ctx.n("$--box"), [_ctx.optionSelected, _ctx.n("--selected-color")], [_ctx.disabled, _ctx.n("--disabled")])),
17841
+ style: vue.normalizeStyle({
17842
+ color: _ctx.optionSelected ? _ctx.focusColor : void 0
17843
+ }),
17844
+ tabindex: _ctx.disabled ? void 0 : "-1",
17845
+ onFocus: _cache[2] || (_cache[2] = ($event) => _ctx.isFocusing = true),
17846
+ onBlur: _cache[3] || (_cache[3] = ($event) => _ctx.isFocusing = false),
17847
+ onClick: _cache[4] || (_cache[4] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
17848
+ }, [
17849
+ vue.createElementVNode(
17850
+ "div",
17851
+ {
17852
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("cover"), [_ctx.optionSelected, _ctx.n("--selected-background")])),
17853
+ style: vue.normalizeStyle({
17854
+ background: _ctx.optionSelected ? _ctx.focusColor : void 0
17855
+ })
17856
+ },
17857
+ null,
17858
+ 6
17859
+ /* CLASS, STYLE */
17860
+ ),
17861
+ _ctx.multiple ? (vue.openBlock(), vue.createBlock(_component_var_checkbox, {
17862
+ key: 0,
17863
+ ref: "checkbox",
17864
+ modelValue: _ctx.optionSelected,
17865
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.optionSelected = $event),
17866
+ "checked-color": _ctx.focusColor,
17867
+ disabled: _ctx.disabled,
17868
+ onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
17869
+ }, ["stop"])),
17870
+ onChange: _ctx.handleSelect
17871
+ }, null, 8, ["modelValue", "checked-color", "disabled", "onChange"])) : vue.createCommentVNode("v-if", true),
17872
+ vue.renderSlot(_ctx.$slots, "default", {}, () => [
17587
17873
  vue.createElementVNode(
17588
17874
  "div",
17589
17875
  {
17590
- class: vue.normalizeClass(_ctx.classes(_ctx.n("cover"), [_ctx.optionSelected, _ctx.n("--selected-background")])),
17591
- style: vue.normalizeStyle({
17592
- background: _ctx.optionSelected ? _ctx.focusColor : void 0
17593
- })
17876
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("text"), _ctx.n("$--ellipsis")))
17594
17877
  },
17595
- null,
17596
- 6
17597
- /* CLASS, STYLE */
17598
- ),
17599
- _ctx.multiple ? (vue.openBlock(), vue.createBlock(_component_var_checkbox, {
17600
- key: 0,
17601
- ref: "checkbox",
17602
- modelValue: _ctx.optionSelected,
17603
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.optionSelected = $event),
17604
- "checked-color": _ctx.focusColor,
17605
- disabled: _ctx.disabled,
17606
- onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
17607
- }, ["stop"])),
17608
- onChange: _ctx.handleSelect
17609
- }, null, 8, ["modelValue", "checked-color", "disabled", "onChange"])) : vue.createCommentVNode("v-if", true),
17610
- vue.renderSlot(_ctx.$slots, "default", {}, () => [
17611
- vue.createElementVNode(
17612
- "div",
17613
- {
17614
- class: vue.normalizeClass(_ctx.classes(_ctx.n("text"), _ctx.n("$--ellipsis")))
17615
- },
17616
- vue.toDisplayString(_ctx.label),
17617
- 3
17618
- /* TEXT, CLASS */
17619
- )
17620
- ]),
17621
- vue.createVNode(_component_var_hover_overlay, {
17622
- hovering: _ctx.hovering && !_ctx.disabled
17623
- }, null, 8, ["hovering"])
17624
- ],
17625
- 6
17626
- /* CLASS, STYLE */
17627
- )), [
17878
+ vue.toDisplayString(_ctx.label),
17879
+ 3
17880
+ /* TEXT, CLASS */
17881
+ )
17882
+ ]),
17883
+ vue.createVNode(_component_var_hover_overlay, {
17884
+ hovering: _ctx.hovering && !_ctx.disabled,
17885
+ focusing: _ctx.isFocusing && !_ctx.disabled
17886
+ }, null, 8, ["hovering", "focusing"])
17887
+ ], 46, _hoisted_1$f)), [
17628
17888
  [_directive_ripple, { disabled: _ctx.disabled }],
17629
17889
  [_directive_hover, _ctx.handleHovering, "desktop"]
17630
17890
  ]);
17631
17891
  }
17632
17892
  const __sfc__$y = vue.defineComponent({
17633
17893
  name: name$s,
17634
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
17894
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
17635
17895
  components: {
17636
17896
  VarCheckbox: stdin_default$57,
17637
- VarHoverOverlay: stdin_default$5w
17897
+ VarHoverOverlay: stdin_default$5O
17638
17898
  },
17639
17899
  props: props$s,
17640
17900
  setup(props2) {
17901
+ const root = vue.ref();
17902
+ const isFocusing = vue.ref(false);
17641
17903
  const optionSelected = vue.ref(false);
17642
17904
  const selected = vue.computed(() => optionSelected.value);
17643
17905
  const label = vue.computed(() => props2.label);
@@ -17653,12 +17915,34 @@ const __sfc__$y = vue.defineComponent({
17653
17915
  };
17654
17916
  vue.watch([() => props2.label, () => props2.value], computeLabel);
17655
17917
  bindSelect(optionProvider);
17918
+ useEventListener(() => window, "keydown", handleKeydown);
17919
+ useEventListener(() => window, "keyup", handleKeyup);
17656
17920
  function handleClick() {
17657
17921
  if (props2.disabled) {
17658
17922
  return;
17659
17923
  }
17660
17924
  handleSelect();
17661
17925
  }
17926
+ function handleKeydown(event) {
17927
+ if (!isFocusing.value) {
17928
+ return;
17929
+ }
17930
+ if (event.key === " " || event.key === "Enter") {
17931
+ preventDefault(event);
17932
+ }
17933
+ if (event.key === "Enter") {
17934
+ root.value.click();
17935
+ }
17936
+ }
17937
+ function handleKeyup(event) {
17938
+ if (!isFocusing.value) {
17939
+ return;
17940
+ }
17941
+ if (event.key === " ") {
17942
+ preventDefault(event);
17943
+ root.value.click();
17944
+ }
17945
+ }
17662
17946
  function handleSelect() {
17663
17947
  if (multiple.value) {
17664
17948
  optionSelected.value = !optionSelected.value;
@@ -17669,10 +17953,12 @@ const __sfc__$y = vue.defineComponent({
17669
17953
  optionSelected.value = checked;
17670
17954
  }
17671
17955
  return {
17956
+ root,
17672
17957
  optionSelected,
17673
17958
  multiple,
17674
17959
  focusColor,
17675
17960
  hovering,
17961
+ isFocusing,
17676
17962
  n: n$v,
17677
17963
  classes: classes$p,
17678
17964
  handleHovering,
@@ -17695,7 +17981,13 @@ const props$r = {
17695
17981
  },
17696
17982
  teleport: [String, Object, Boolean],
17697
17983
  onClick: defineListenerProp(),
17698
- "onUpdate:show": defineListenerProp()
17984
+ "onUpdate:show": defineListenerProp(),
17985
+ // internal for esc
17986
+ onKeyEscape: defineListenerProp(),
17987
+ closeOnKeyEscape: {
17988
+ type: Boolean,
17989
+ default: true
17990
+ }
17699
17991
  };
17700
17992
  const {
17701
17993
  name: name$r,
@@ -17712,10 +18004,25 @@ var stdin_default$40 = vue.defineComponent({
17712
18004
  const {
17713
18005
  zIndex
17714
18006
  } = useZIndex(() => props2.show, 1);
18007
+ const {
18008
+ onStackTop
18009
+ } = useStack(() => props2.show, zIndex);
17715
18010
  const {
17716
18011
  disabled
17717
18012
  } = useTeleport();
17718
18013
  useLock(() => props2.show, () => props2.lockScroll);
18014
+ useEventListener(window, "keydown", handleKeydown);
18015
+ function handleKeydown(event) {
18016
+ if (!onStackTop() || event.key !== "Escape" || !props2.show) {
18017
+ return;
18018
+ }
18019
+ call(props2.onKeyEscape);
18020
+ if (!props2.closeOnKeyEscape) {
18021
+ return;
18022
+ }
18023
+ preventDefault(event);
18024
+ call(props2["onUpdate:show"], false);
18025
+ }
17719
18026
  function handleClickOverlay() {
17720
18027
  call(props2.onClick);
17721
18028
  call(props2["onUpdate:show"], false);
@@ -17724,7 +18031,7 @@ var stdin_default$40 = vue.defineComponent({
17724
18031
  return vue.createVNode("div", vue.mergeProps({
17725
18032
  "class": n$u(),
17726
18033
  "style": {
17727
- zIndex: zIndex.value - 1
18034
+ zIndex: zIndex.value
17728
18035
  }
17729
18036
  }, attrs, {
17730
18037
  "onClick": handleClickOverlay
@@ -18034,10 +18341,10 @@ const __sfc__$x = vue.defineComponent({
18034
18341
  components: {
18035
18342
  VarMenuSelect: stdin_default$43,
18036
18343
  VarMenuOption: stdin_default$45,
18037
- VarIcon: stdin_default$5P,
18344
+ VarIcon: stdin_default$5Q,
18038
18345
  VarInput: stdin_default$4f
18039
18346
  },
18040
- directives: { Ripple: stdin_default$5T },
18347
+ directives: { Ripple: stdin_default$5U },
18041
18348
  props: props$q,
18042
18349
  setup(props2) {
18043
18350
  const quickJumperValue = vue.ref("");
@@ -18244,7 +18551,7 @@ function __render__$v(_ctx, _cache) {
18244
18551
  }
18245
18552
  const __sfc__$w = vue.defineComponent({
18246
18553
  name: name$p,
18247
- directives: { Ripple: stdin_default$5T },
18554
+ directives: { Ripple: stdin_default$5U },
18248
18555
  props: props$p,
18249
18556
  setup(props2) {
18250
18557
  function handleClick(e) {
@@ -18337,7 +18644,10 @@ const props$o = __spreadValues$7({
18337
18644
  "onOpened",
18338
18645
  "onClosed",
18339
18646
  "onClickOverlay",
18340
- "onRouteChange"
18647
+ "onRouteChange",
18648
+ // internal for esc
18649
+ "onKeyEscape",
18650
+ "closeOnKeyEscape"
18341
18651
  ]));
18342
18652
  const { name: name$o, n: n$r, classes: classes$m } = createNamespace("picker");
18343
18653
  const MOMENTUM_RECORD_TIME = 300;
@@ -18346,8 +18656,8 @@ const TRANSITION_DURATION = 200;
18346
18656
  const MOMENTUM_TRANSITION_DURATION = 1e3;
18347
18657
  let sid$1 = 0;
18348
18658
  const _hoisted_1$d = ["onTouchstartPassive", "onTouchmove", "onTouchend"];
18349
- const _hoisted_2$9 = ["onTransitionend"];
18350
- const _hoisted_3$8 = ["onClick"];
18659
+ const _hoisted_2$a = ["onTransitionend"];
18660
+ const _hoisted_3$9 = ["onClick"];
18351
18661
  function __render__$u(_ctx, _cache) {
18352
18662
  const _component_var_button = vue.resolveComponent("var-button");
18353
18663
  return vue.openBlock(), vue.createBlock(
@@ -18360,7 +18670,9 @@ function __render__$u(_ctx, _cache) {
18360
18670
  onClosed: _ctx.onClosed,
18361
18671
  onClickOverlay: _ctx.onClickOverlay,
18362
18672
  onRouteChange: _ctx.onRouteChange,
18673
+ onKeyEscape: _ctx.onKeyEscape,
18363
18674
  closeOnClickOverlay: _ctx.closeOnClickOverlay,
18675
+ closeOnKeyEscape: _ctx.closeOnKeyEscape,
18364
18676
  teleport: _ctx.teleport,
18365
18677
  show: _ctx.show,
18366
18678
  safeArea: _ctx.safeArea,
@@ -18495,12 +18807,12 @@ function __render__$u(_ctx, _cache) {
18495
18807
  3
18496
18808
  /* TEXT, CLASS */
18497
18809
  )
18498
- ], 14, _hoisted_3$8);
18810
+ ], 14, _hoisted_3$9);
18499
18811
  }),
18500
18812
  128
18501
18813
  /* KEYED_FRAGMENT */
18502
18814
  ))
18503
- ], 46, _hoisted_2$9)
18815
+ ], 46, _hoisted_2$a)
18504
18816
  ], 42, _hoisted_1$d);
18505
18817
  }),
18506
18818
  128
@@ -18549,7 +18861,7 @@ const __sfc__$v = vue.defineComponent({
18549
18861
  name: name$o,
18550
18862
  components: {
18551
18863
  VarButton: stdin_default$5t,
18552
- VarPopup: stdin_default$5R
18864
+ VarPopup: stdin_default$5S
18553
18865
  },
18554
18866
  inheritAttrs: false,
18555
18867
  props: props$o,
@@ -18933,11 +19245,11 @@ const RADIUS = 20;
18933
19245
  const CIRCUMFERENCE = 2 * Math.PI * RADIUS;
18934
19246
  const { name: name$n, n: n$q, classes: classes$l } = createNamespace("progress");
18935
19247
  const _hoisted_1$c = ["viewBox"];
18936
- const _hoisted_2$8 = { key: 0 };
18937
- const _hoisted_3$7 = ["id"];
19248
+ const _hoisted_2$9 = { key: 0 };
19249
+ const _hoisted_3$8 = ["id"];
18938
19250
  const _hoisted_4$2 = ["offset", "stop-color"];
18939
19251
  const _hoisted_5$1 = ["d", "stroke-width", "stroke-dasharray"];
18940
- const _hoisted_6 = ["d", "stroke-width", "stroke-dasharray", "stroke-dashoffset"];
19252
+ const _hoisted_6$1 = ["d", "stroke-width", "stroke-dasharray", "stroke-dashoffset"];
18941
19253
  function __render__$t(_ctx, _cache) {
18942
19254
  return vue.openBlock(), vue.createElementBlock(
18943
19255
  "div",
@@ -19038,7 +19350,7 @@ function __render__$t(_ctx, _cache) {
19038
19350
  class: vue.normalizeClass(_ctx.n("circle-svg")),
19039
19351
  viewBox: _ctx.circleProps.viewBox
19040
19352
  }, [
19041
- _ctx.isPlainObject(_ctx.color) ? (vue.openBlock(), vue.createElementBlock("defs", _hoisted_2$8, [
19353
+ _ctx.isPlainObject(_ctx.color) ? (vue.openBlock(), vue.createElementBlock("defs", _hoisted_2$9, [
19042
19354
  vue.createElementVNode("linearGradient", {
19043
19355
  id: _ctx.id,
19044
19356
  x1: "100%",
@@ -19059,7 +19371,7 @@ function __render__$t(_ctx, _cache) {
19059
19371
  128
19060
19372
  /* KEYED_FRAGMENT */
19061
19373
  ))
19062
- ], 8, _hoisted_3$7)
19374
+ ], 8, _hoisted_3$8)
19063
19375
  ])) : vue.createCommentVNode("v-if", true),
19064
19376
  _ctx.track ? (vue.openBlock(), vue.createElementBlock("path", {
19065
19377
  key: 1,
@@ -19084,7 +19396,7 @@ function __render__$t(_ctx, _cache) {
19084
19396
  transform: `rotateZ(${_ctx.rotate}deg)`,
19085
19397
  transformOrigin: "50% 50%"
19086
19398
  })
19087
- }, null, 14, _hoisted_6)
19399
+ }, null, 14, _hoisted_6$1)
19088
19400
  ], 10, _hoisted_1$c)),
19089
19401
  _ctx.label ? (vue.openBlock(), vue.createElementBlock(
19090
19402
  "div",
@@ -19257,7 +19569,7 @@ function __render__$s(_ctx, _cache) {
19257
19569
  }
19258
19570
  const __sfc__$t = vue.defineComponent({
19259
19571
  name: name$m,
19260
- components: { VarIcon: stdin_default$5P },
19572
+ components: { VarIcon: stdin_default$5Q },
19261
19573
  props: props$m,
19262
19574
  setup(props2) {
19263
19575
  const controlPosition = vue.ref(0);
@@ -19546,11 +19858,11 @@ function __render__$r(_ctx, _cache) {
19546
19858
  }
19547
19859
  const __sfc__$s = vue.defineComponent({
19548
19860
  name: name$l,
19549
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
19861
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
19550
19862
  components: {
19551
- VarIcon: stdin_default$5P,
19863
+ VarIcon: stdin_default$5Q,
19552
19864
  VarFormDetails: stdin_default$59,
19553
- VarHoverOverlay: stdin_default$5w
19865
+ VarHoverOverlay: stdin_default$5O
19554
19866
  },
19555
19867
  inheritAttrs: false,
19556
19868
  props: props$l,
@@ -19857,11 +20169,11 @@ function __render__$p(_ctx, _cache) {
19857
20169
  const __sfc__$q = vue.defineComponent({
19858
20170
  name: name$j,
19859
20171
  components: {
19860
- VarIcon: stdin_default$5P,
20172
+ VarIcon: stdin_default$5Q,
19861
20173
  VarFormDetails: stdin_default$59,
19862
- VarHoverOverlay: stdin_default$5w
20174
+ VarHoverOverlay: stdin_default$5O
19863
20175
  },
19864
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
20176
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
19865
20177
  props: props$j,
19866
20178
  setup(props2) {
19867
20179
  const currentHoveringValue = vue.ref(-1);
@@ -19992,18 +20304,18 @@ const _hoisted_1$a = {
19992
20304
  xmlns: "http://www.w3.org/2000/svg",
19993
20305
  viewBox: "2 3.6 20 20"
19994
20306
  };
19995
- const _hoisted_2$7 = /* @__PURE__ */ _withScopeId$5(() => /* @__PURE__ */ vue.createElementVNode(
20307
+ const _hoisted_2$8 = /* @__PURE__ */ _withScopeId$5(() => /* @__PURE__ */ vue.createElementVNode(
19996
20308
  "path",
19997
20309
  { d: "M11,9H13V7H11M11,20H13V11H11V20Z" },
19998
20310
  null,
19999
20311
  -1
20000
20312
  /* HOISTED */
20001
20313
  ));
20002
- const _hoisted_3$6 = [
20003
- _hoisted_2$7
20314
+ const _hoisted_3$7 = [
20315
+ _hoisted_2$8
20004
20316
  ];
20005
20317
  function __render__$o(_ctx, _cache) {
20006
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$a, [..._hoisted_3$6]);
20318
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$a, [..._hoisted_3$7]);
20007
20319
  }
20008
20320
  const __sfc__$p = vue.defineComponent({});
20009
20321
  __sfc__$p.render = __render__$o;
@@ -20013,18 +20325,18 @@ const _hoisted_1$9 = {
20013
20325
  xmlns: "http://www.w3.org/2000/svg",
20014
20326
  viewBox: "2 2 20 20"
20015
20327
  };
20016
- const _hoisted_2$6 = /* @__PURE__ */ _withScopeId$4(() => /* @__PURE__ */ vue.createElementVNode(
20328
+ const _hoisted_2$7 = /* @__PURE__ */ _withScopeId$4(() => /* @__PURE__ */ vue.createElementVNode(
20017
20329
  "path",
20018
20330
  { d: "M19,3V5H19V19M17,8.4L13.4,12L17,15.6L15.6,17L12,13.4L8.4,17L7,15.6L10.6,12L7,8.4L8.4,7L12,10.6L15.6,7L17,8.4Z" },
20019
20331
  null,
20020
20332
  -1
20021
20333
  /* HOISTED */
20022
20334
  ));
20023
- const _hoisted_3$5 = [
20024
- _hoisted_2$6
20335
+ const _hoisted_3$6 = [
20336
+ _hoisted_2$7
20025
20337
  ];
20026
20338
  function __render__$n(_ctx, _cache) {
20027
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$9, [..._hoisted_3$5]);
20339
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$9, [..._hoisted_3$6]);
20028
20340
  }
20029
20341
  const __sfc__$o = vue.defineComponent({});
20030
20342
  __sfc__$o.render = __render__$n;
@@ -20034,18 +20346,18 @@ const _hoisted_1$8 = {
20034
20346
  xmlns: "http://www.w3.org/2000/svg",
20035
20347
  viewBox: "-6 -4 35 35"
20036
20348
  };
20037
- const _hoisted_2$5 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ vue.createElementVNode(
20349
+ const _hoisted_2$6 = /* @__PURE__ */ _withScopeId$3(() => /* @__PURE__ */ vue.createElementVNode(
20038
20350
  "path",
20039
20351
  { d: "M10,21H14A2,2 0 0,1 12,23A2,2 0 0,1 10,21M21,19V20H3V19L5,17V11C5,7.9 7.03,5.17 10,4.29C10,4.19 10,4.1 10,4A2,2 0 0,1 12,2A2,2 0 0,1 14,4C14,4.1 14,4.19 14,4.29C16.97,5.17 19,7.9 19,11V17L21,19M17,11A5,5 0 0,0 12,6A5,5 0 0,0 7,11V18H17V11M19.75,3.19L18.33,4.61M1,11" },
20040
20352
  null,
20041
20353
  -1
20042
20354
  /* HOISTED */
20043
20355
  ));
20044
- const _hoisted_3$4 = [
20045
- _hoisted_2$5
20356
+ const _hoisted_3$5 = [
20357
+ _hoisted_2$6
20046
20358
  ];
20047
20359
  function __render__$m(_ctx, _cache) {
20048
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$8, [..._hoisted_3$4]);
20360
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$8, [..._hoisted_3$5]);
20049
20361
  }
20050
20362
  const __sfc__$n = vue.defineComponent({});
20051
20363
  __sfc__$n.render = __render__$m;
@@ -20152,25 +20464,25 @@ const _hoisted_1$7 = {
20152
20464
  xmlns: "http://www.w3.org/2000/svg",
20153
20465
  viewBox: "-3 -3 30 30"
20154
20466
  };
20155
- const _hoisted_2$4 = /* @__PURE__ */ _withScopeId$2(() => /* @__PURE__ */ vue.createElementVNode(
20467
+ const _hoisted_2$5 = /* @__PURE__ */ _withScopeId$2(() => /* @__PURE__ */ vue.createElementVNode(
20156
20468
  "path",
20157
20469
  { d: "M10,19H13V22H10V19M12,2C17.35,2.22 19.68,7.62 16.5,11.67C15.67,12.67 14.33,13.33 13.67,14.17C13,15 13,16 13,17H10C10,15.33 10,13.92 10.67,12.92C11.33,11.92 12.67,11.33 13.5,10.67C15.92,8.43 15.32,5.26 12,5A3,3 0 0,0 9,8H6A6,6 0 0,1 12,2Z" },
20158
20470
  null,
20159
20471
  -1
20160
20472
  /* HOISTED */
20161
20473
  ));
20162
- const _hoisted_3$3 = [
20163
- _hoisted_2$4
20474
+ const _hoisted_3$4 = [
20475
+ _hoisted_2$5
20164
20476
  ];
20165
20477
  function __render__$k(_ctx, _cache) {
20166
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$7, [..._hoisted_3$3]);
20478
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$7, [..._hoisted_3$4]);
20167
20479
  }
20168
20480
  const __sfc__$l = vue.defineComponent({});
20169
20481
  __sfc__$l.render = __render__$k;
20170
20482
  var stdin_default$3G = __sfc__$l;
20171
20483
  const _withScopeId$1 = (n2) => (vue.pushScopeId(""), n2 = n2(), vue.popScopeId(), n2);
20172
20484
  const _hoisted_1$6 = { viewBox: "-4 -4 32 32" };
20173
- const _hoisted_2$3 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ vue.createElementVNode(
20485
+ const _hoisted_2$4 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ vue.createElementVNode(
20174
20486
  "path",
20175
20487
  {
20176
20488
  fill: "currentColor",
@@ -20180,11 +20492,11 @@ const _hoisted_2$3 = /* @__PURE__ */ _withScopeId$1(() => /* @__PURE__ */ vue.cr
20180
20492
  -1
20181
20493
  /* HOISTED */
20182
20494
  ));
20183
- const _hoisted_3$2 = [
20184
- _hoisted_2$3
20495
+ const _hoisted_3$3 = [
20496
+ _hoisted_2$4
20185
20497
  ];
20186
20498
  function __render__$j(_ctx, _cache) {
20187
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$6, [..._hoisted_3$2]);
20499
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$6, [..._hoisted_3$3]);
20188
20500
  }
20189
20501
  const __sfc__$k = vue.defineComponent({});
20190
20502
  __sfc__$k.render = __render__$j;
@@ -20413,260 +20725,262 @@ const props$g = __spreadValues$6({
20413
20725
  default: void 0
20414
20726
  },
20415
20727
  multiple: Boolean,
20416
- offsetY: {
20417
- type: [String, Number],
20418
- default: 0
20419
- },
20420
- chip: Boolean,
20421
- readonly: Boolean,
20422
- separator: {
20423
- type: String,
20424
- default: ","
20425
- },
20426
- textAlign: {
20427
- type: String,
20428
- default: "left"
20429
- },
20430
- validateTrigger: {
20431
- type: Array,
20432
- default: () => ["onChange", "onClear", "onClose"]
20433
- },
20434
- rules: Array,
20435
- onFocus: defineListenerProp(),
20436
- onBlur: defineListenerProp(),
20437
- onClose: defineListenerProp(),
20438
- onChange: defineListenerProp(),
20439
- onClear: defineListenerProp(),
20440
- "onUpdate:modelValue": defineListenerProp()
20441
- }, pickProps(props$I, [
20442
- "size",
20443
- "variant",
20444
- "placeholder",
20445
- "line",
20446
- "hint",
20447
- "textColor",
20448
- "focusColor",
20449
- "blurColor",
20450
- "disabled",
20451
- "clearable",
20452
- "onClick"
20453
- ]));
20454
- const { name: name$g, n: n$i, classes: classes$e } = createNamespace("select");
20455
- const _hoisted_1$5 = { key: 1 };
20456
- function __render__$g(_ctx, _cache) {
20457
- const _component_var_chip = vue.resolveComponent("var-chip");
20458
- const _component_var_icon = vue.resolveComponent("var-icon");
20459
- const _component_var_field_decorator = vue.resolveComponent("var-field-decorator");
20460
- const _component_var_menu = vue.resolveComponent("var-menu");
20461
- const _component_var_form_details = vue.resolveComponent("var-form-details");
20462
- return vue.openBlock(), vue.createElementBlock(
20463
- "div",
20464
- {
20465
- class: vue.normalizeClass(_ctx.n()),
20466
- onClick: _cache[3] || (_cache[3] = (...args) => _ctx.handleFocus && _ctx.handleFocus(...args))
20467
- },
20468
- [
20469
- vue.createVNode(_component_var_menu, {
20470
- "var-select-cover": "",
20471
- "same-width": "",
20472
- "close-on-click-reference": "",
20473
- show: _ctx.showMenu,
20474
- "onUpdate:show": _cache[1] || (_cache[1] = ($event) => _ctx.showMenu = $event),
20475
- class: vue.normalizeClass(_ctx.n("menu")),
20476
- "popover-class": _ctx.variant === "standard" && _ctx.hint ? _ctx.n("--standard-menu-margin") : void 0,
20477
- "offset-y": _ctx.offsetY,
20478
- disabled: _ctx.formReadonly || _ctx.readonly || _ctx.formDisabled || _ctx.disabled,
20479
- placement: _ctx.placement,
20480
- "default-style": false,
20481
- onClickOutside: _ctx.handleBlur
20482
- }, {
20483
- menu: vue.withCtx(() => [
20484
- vue.createElementVNode(
20485
- "div",
20486
- {
20487
- ref: "menuEl",
20488
- class: vue.normalizeClass(_ctx.classes(_ctx.n("scroller"), _ctx.n("$-elevation--3")))
20489
- },
20490
- [
20491
- vue.renderSlot(_ctx.$slots, "default")
20492
- ],
20493
- 2
20494
- /* CLASS */
20495
- )
20496
- ]),
20497
- default: vue.withCtx(() => [
20498
- vue.createVNode(
20499
- _component_var_field_decorator,
20500
- vue.normalizeProps(vue.guardReactiveProps({
20501
- value: _ctx.modelValue,
20502
- size: _ctx.size,
20503
- variant: _ctx.variant,
20504
- placeholder: _ctx.placeholder,
20505
- line: _ctx.line,
20506
- hint: _ctx.hint,
20507
- textColor: _ctx.textColor,
20508
- focusColor: _ctx.focusColor,
20509
- blurColor: _ctx.blurColor,
20510
- isFocus: _ctx.isFocus,
20511
- errorMessage: _ctx.errorMessage,
20512
- formDisabled: _ctx.formDisabled,
20513
- disabled: _ctx.disabled,
20514
- clearable: _ctx.clearable,
20515
- cursor: _ctx.cursor,
20516
- onClick: _ctx.handleClick,
20517
- onClear: _ctx.handleClear
20518
- })),
20519
- vue.createSlots({
20520
- "clear-icon": vue.withCtx(() => [
20521
- vue.renderSlot(_ctx.$slots, "clear-icon")
20522
- ]),
20523
- "append-icon": vue.withCtx(() => [
20524
- vue.renderSlot(_ctx.$slots, "append-icon")
20525
- ]),
20526
- default: vue.withCtx(() => [
20527
- vue.createElementVNode(
20528
- "div",
20529
- {
20530
- class: vue.normalizeClass(_ctx.classes(_ctx.n("select"), [_ctx.errorMessage, _ctx.n("--error")], [_ctx.formDisabled || _ctx.disabled, _ctx.n("--disabled")])),
20531
- style: vue.normalizeStyle({
20532
- textAlign: _ctx.textAlign,
20533
- color: _ctx.textColor
20534
- })
20535
- },
20536
- [
20537
- vue.createElementVNode(
20538
- "div",
20539
- {
20540
- class: vue.normalizeClass(_ctx.n("label"))
20541
- },
20542
- [
20543
- !_ctx.isEmptyModelValue ? vue.renderSlot(_ctx.$slots, "selected", { key: 0 }, () => [
20544
- _ctx.multiple ? (vue.openBlock(), vue.createElementBlock(
20545
- vue.Fragment,
20546
- { key: 0 },
20547
- [
20548
- _ctx.chip ? (vue.openBlock(), vue.createElementBlock(
20549
- "div",
20550
- {
20551
- key: 0,
20552
- class: vue.normalizeClass(_ctx.n("chips"))
20553
- },
20554
- [
20555
- (vue.openBlock(true), vue.createElementBlock(
20556
- vue.Fragment,
20557
- null,
20558
- vue.renderList(_ctx.labels, (l) => {
20559
- return vue.openBlock(), vue.createBlock(_component_var_chip, {
20560
- class: vue.normalizeClass(_ctx.n("chip")),
20561
- "var-select-cover": "",
20562
- closeable: "",
20563
- size: "small",
20564
- type: _ctx.errorMessage ? "danger" : void 0,
20565
- key: l,
20566
- onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => {
20567
- }, ["stop"])),
20568
- onClose: () => _ctx.handleClose(l)
20569
- }, {
20570
- default: vue.withCtx(() => [
20571
- vue.createTextVNode(
20572
- vue.toDisplayString(l),
20573
- 1
20574
- /* TEXT */
20575
- )
20576
- ]),
20577
- _: 2
20578
- /* DYNAMIC */
20579
- }, 1032, ["class", "type", "onClose"]);
20580
- }),
20581
- 128
20582
- /* KEYED_FRAGMENT */
20583
- ))
20584
- ],
20585
- 2
20586
- /* CLASS */
20587
- )) : (vue.openBlock(), vue.createElementBlock(
20588
- "div",
20589
- {
20590
- key: 1,
20591
- class: vue.normalizeClass(_ctx.n("values"))
20592
- },
20593
- vue.toDisplayString(_ctx.labels.join(_ctx.separator)),
20594
- 3
20595
- /* TEXT, CLASS */
20596
- ))
20597
- ],
20598
- 64
20599
- /* STABLE_FRAGMENT */
20600
- )) : (vue.openBlock(), vue.createElementBlock(
20601
- "span",
20602
- _hoisted_1$5,
20603
- vue.toDisplayString(_ctx.label),
20604
- 1
20605
- /* TEXT */
20606
- ))
20607
- ]) : vue.createCommentVNode("v-if", true)
20608
- ],
20609
- 2
20610
- /* CLASS */
20611
- ),
20612
- _ctx.enableCustomPlaceholder ? (vue.openBlock(), vue.createElementBlock(
20613
- "span",
20614
- {
20615
- key: 0,
20616
- class: vue.normalizeClass(_ctx.classes(_ctx.n("placeholder"), _ctx.n("$--ellipsis"))),
20617
- style: vue.normalizeStyle({
20618
- color: _ctx.placeholderColor
20619
- })
20620
- },
20621
- vue.toDisplayString(_ctx.placeholder),
20622
- 7
20623
- /* TEXT, CLASS, STYLE */
20624
- )) : vue.createCommentVNode("v-if", true),
20625
- vue.renderSlot(_ctx.$slots, "arrow-icon", { focus: _ctx.showMenu }, () => [
20626
- vue.createVNode(_component_var_icon, {
20627
- class: vue.normalizeClass(_ctx.classes(_ctx.n("arrow"), [_ctx.showMenu, _ctx.n("--arrow-rotate")])),
20628
- "var-select-cover": "",
20629
- name: "menu-down",
20630
- transition: 300
20631
- }, null, 8, ["class"])
20632
- ])
20633
- ],
20634
- 6
20635
- /* CLASS, STYLE */
20636
- )
20637
- ]),
20638
- _: 2
20639
- /* DYNAMIC */
20640
- }, [
20641
- _ctx.$slots["prepend-icon"] ? {
20642
- name: "prepend-icon",
20643
- fn: vue.withCtx(() => [
20644
- vue.renderSlot(_ctx.$slots, "prepend-icon")
20645
- ]),
20646
- key: "0"
20647
- } : void 0
20728
+ offsetY: {
20729
+ type: [String, Number],
20730
+ default: 0
20731
+ },
20732
+ chip: Boolean,
20733
+ readonly: Boolean,
20734
+ separator: {
20735
+ type: String,
20736
+ default: ","
20737
+ },
20738
+ textAlign: {
20739
+ type: String,
20740
+ default: "left"
20741
+ },
20742
+ validateTrigger: {
20743
+ type: Array,
20744
+ default: () => ["onChange", "onClear", "onClose"]
20745
+ },
20746
+ rules: Array,
20747
+ onFocus: defineListenerProp(),
20748
+ onBlur: defineListenerProp(),
20749
+ onClose: defineListenerProp(),
20750
+ onChange: defineListenerProp(),
20751
+ onClear: defineListenerProp(),
20752
+ "onUpdate:modelValue": defineListenerProp()
20753
+ }, pickProps(props$I, [
20754
+ "size",
20755
+ "variant",
20756
+ "placeholder",
20757
+ "line",
20758
+ "hint",
20759
+ "textColor",
20760
+ "focusColor",
20761
+ "blurColor",
20762
+ "disabled",
20763
+ "clearable",
20764
+ "onClick"
20765
+ ]));
20766
+ const { name: name$g, n: n$i, classes: classes$e } = createNamespace("select");
20767
+ const _hoisted_1$5 = ["tabindex"];
20768
+ const _hoisted_2$3 = { key: 1 };
20769
+ function __render__$g(_ctx, _cache) {
20770
+ const _component_var_chip = vue.resolveComponent("var-chip");
20771
+ const _component_var_icon = vue.resolveComponent("var-icon");
20772
+ const _component_var_field_decorator = vue.resolveComponent("var-field-decorator");
20773
+ const _component_var_menu = vue.resolveComponent("var-menu");
20774
+ const _component_var_form_details = vue.resolveComponent("var-form-details");
20775
+ return vue.openBlock(), vue.createElementBlock("div", {
20776
+ ref: "root",
20777
+ class: vue.normalizeClass(_ctx.n()),
20778
+ tabindex: _ctx.disabled || _ctx.formDisabled ? void 0 : "0",
20779
+ onFocus: _cache[3] || (_cache[3] = (...args) => _ctx.handleFocus && _ctx.handleFocus(...args)),
20780
+ onBlur: _cache[4] || (_cache[4] = (...args) => _ctx.handleRootBlur && _ctx.handleRootBlur(...args))
20781
+ }, [
20782
+ vue.createVNode(_component_var_menu, {
20783
+ "var-select-cover": "",
20784
+ "same-width": "",
20785
+ "close-on-click-reference": "",
20786
+ "close-on-key-escape": false,
20787
+ class: vue.normalizeClass(_ctx.n("menu")),
20788
+ "popover-class": _ctx.variant === "standard" && _ctx.hint ? _ctx.n("--standard-menu-margin") : void 0,
20789
+ "offset-y": _ctx.offsetY,
20790
+ disabled: _ctx.formReadonly || _ctx.readonly || _ctx.formDisabled || _ctx.disabled,
20791
+ placement: _ctx.placement,
20792
+ "default-style": false,
20793
+ show: _ctx.showMenu,
20794
+ "onUpdate:show": _cache[1] || (_cache[1] = ($event) => _ctx.showMenu = $event),
20795
+ onClickOutside: _ctx.handleClickOutside
20796
+ }, {
20797
+ menu: vue.withCtx(() => [
20798
+ vue.createElementVNode(
20799
+ "div",
20800
+ {
20801
+ ref: "menuEl",
20802
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("scroller"), _ctx.n("$-elevation--3")))
20803
+ },
20804
+ [
20805
+ vue.renderSlot(_ctx.$slots, "default")
20806
+ ],
20807
+ 2
20808
+ /* CLASS */
20809
+ )
20810
+ ]),
20811
+ default: vue.withCtx(() => [
20812
+ vue.createVNode(
20813
+ _component_var_field_decorator,
20814
+ vue.normalizeProps(vue.guardReactiveProps({
20815
+ value: _ctx.modelValue,
20816
+ size: _ctx.size,
20817
+ variant: _ctx.variant,
20818
+ placeholder: _ctx.placeholder,
20819
+ line: _ctx.line,
20820
+ hint: _ctx.hint,
20821
+ textColor: _ctx.textColor,
20822
+ focusColor: _ctx.focusColor,
20823
+ blurColor: _ctx.blurColor,
20824
+ isFocusing: _ctx.isFocusing,
20825
+ errorMessage: _ctx.errorMessage,
20826
+ formDisabled: _ctx.formDisabled,
20827
+ disabled: _ctx.disabled,
20828
+ clearable: _ctx.clearable,
20829
+ cursor: _ctx.cursor,
20830
+ onClick: _ctx.handleClick,
20831
+ onClear: _ctx.handleClear
20832
+ })),
20833
+ vue.createSlots({
20834
+ "clear-icon": vue.withCtx(() => [
20835
+ vue.renderSlot(_ctx.$slots, "clear-icon")
20648
20836
  ]),
20649
- 1040
20650
- /* FULL_PROPS, DYNAMIC_SLOTS */
20651
- )
20652
- ]),
20653
- _: 3
20654
- /* FORWARDED */
20655
- }, 8, ["show", "class", "popover-class", "offset-y", "disabled", "placement", "onClickOutside"]),
20656
- vue.createVNode(_component_var_form_details, {
20657
- "error-message": _ctx.errorMessage,
20658
- onClick: _cache[2] || (_cache[2] = vue.withModifiers(() => {
20659
- }, ["stop"]))
20660
- }, null, 8, ["error-message"])
20661
- ],
20662
- 2
20663
- /* CLASS */
20664
- );
20837
+ "append-icon": vue.withCtx(() => [
20838
+ vue.renderSlot(_ctx.$slots, "append-icon")
20839
+ ]),
20840
+ default: vue.withCtx(() => [
20841
+ vue.createElementVNode(
20842
+ "div",
20843
+ {
20844
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("select"), [_ctx.errorMessage, _ctx.n("--error")], [_ctx.formDisabled || _ctx.disabled, _ctx.n("--disabled")])),
20845
+ style: vue.normalizeStyle({
20846
+ textAlign: _ctx.textAlign,
20847
+ color: _ctx.textColor
20848
+ })
20849
+ },
20850
+ [
20851
+ vue.createElementVNode(
20852
+ "div",
20853
+ {
20854
+ class: vue.normalizeClass(_ctx.n("label"))
20855
+ },
20856
+ [
20857
+ !_ctx.isEmptyModelValue ? vue.renderSlot(_ctx.$slots, "selected", { key: 0 }, () => [
20858
+ _ctx.multiple ? (vue.openBlock(), vue.createElementBlock(
20859
+ vue.Fragment,
20860
+ { key: 0 },
20861
+ [
20862
+ _ctx.chip ? (vue.openBlock(), vue.createElementBlock(
20863
+ "div",
20864
+ {
20865
+ key: 0,
20866
+ class: vue.normalizeClass(_ctx.n("chips"))
20867
+ },
20868
+ [
20869
+ (vue.openBlock(true), vue.createElementBlock(
20870
+ vue.Fragment,
20871
+ null,
20872
+ vue.renderList(_ctx.labels, (l) => {
20873
+ return vue.openBlock(), vue.createBlock(_component_var_chip, {
20874
+ class: vue.normalizeClass(_ctx.n("chip")),
20875
+ "var-select-cover": "",
20876
+ closeable: "",
20877
+ size: "small",
20878
+ type: _ctx.errorMessage ? "danger" : void 0,
20879
+ key: l,
20880
+ onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => {
20881
+ }, ["stop"])),
20882
+ onClose: () => _ctx.handleClose(l)
20883
+ }, {
20884
+ default: vue.withCtx(() => [
20885
+ vue.createTextVNode(
20886
+ vue.toDisplayString(l),
20887
+ 1
20888
+ /* TEXT */
20889
+ )
20890
+ ]),
20891
+ _: 2
20892
+ /* DYNAMIC */
20893
+ }, 1032, ["class", "type", "onClose"]);
20894
+ }),
20895
+ 128
20896
+ /* KEYED_FRAGMENT */
20897
+ ))
20898
+ ],
20899
+ 2
20900
+ /* CLASS */
20901
+ )) : (vue.openBlock(), vue.createElementBlock(
20902
+ "div",
20903
+ {
20904
+ key: 1,
20905
+ class: vue.normalizeClass(_ctx.n("values"))
20906
+ },
20907
+ vue.toDisplayString(_ctx.labels.join(_ctx.separator)),
20908
+ 3
20909
+ /* TEXT, CLASS */
20910
+ ))
20911
+ ],
20912
+ 64
20913
+ /* STABLE_FRAGMENT */
20914
+ )) : (vue.openBlock(), vue.createElementBlock(
20915
+ "span",
20916
+ _hoisted_2$3,
20917
+ vue.toDisplayString(_ctx.label),
20918
+ 1
20919
+ /* TEXT */
20920
+ ))
20921
+ ]) : vue.createCommentVNode("v-if", true)
20922
+ ],
20923
+ 2
20924
+ /* CLASS */
20925
+ ),
20926
+ _ctx.enableCustomPlaceholder ? (vue.openBlock(), vue.createElementBlock(
20927
+ "span",
20928
+ {
20929
+ key: 0,
20930
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("placeholder"), _ctx.n("$--ellipsis"))),
20931
+ style: vue.normalizeStyle({
20932
+ color: _ctx.placeholderColor
20933
+ })
20934
+ },
20935
+ vue.toDisplayString(_ctx.placeholder),
20936
+ 7
20937
+ /* TEXT, CLASS, STYLE */
20938
+ )) : vue.createCommentVNode("v-if", true),
20939
+ vue.renderSlot(_ctx.$slots, "arrow-icon", {
20940
+ focus: _ctx.isFocusing,
20941
+ menuOpen: _ctx.showMenu
20942
+ }, () => [
20943
+ vue.createVNode(_component_var_icon, {
20944
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("arrow"), [_ctx.showMenu, _ctx.n("--arrow-rotate")])),
20945
+ "var-select-cover": "",
20946
+ name: "menu-down",
20947
+ transition: 300
20948
+ }, null, 8, ["class"])
20949
+ ])
20950
+ ],
20951
+ 6
20952
+ /* CLASS, STYLE */
20953
+ )
20954
+ ]),
20955
+ _: 2
20956
+ /* DYNAMIC */
20957
+ }, [
20958
+ _ctx.$slots["prepend-icon"] ? {
20959
+ name: "prepend-icon",
20960
+ fn: vue.withCtx(() => [
20961
+ vue.renderSlot(_ctx.$slots, "prepend-icon")
20962
+ ]),
20963
+ key: "0"
20964
+ } : void 0
20965
+ ]),
20966
+ 1040
20967
+ /* FULL_PROPS, DYNAMIC_SLOTS */
20968
+ )
20969
+ ]),
20970
+ _: 3
20971
+ /* FORWARDED */
20972
+ }, 8, ["class", "popover-class", "offset-y", "disabled", "placement", "show", "onClickOutside"]),
20973
+ vue.createVNode(_component_var_form_details, {
20974
+ "error-message": _ctx.errorMessage,
20975
+ onClick: _cache[2] || (_cache[2] = vue.withModifiers(() => {
20976
+ }, ["stop"]))
20977
+ }, null, 8, ["error-message"])
20978
+ ], 42, _hoisted_1$5);
20665
20979
  }
20666
20980
  const __sfc__$h = vue.defineComponent({
20667
20981
  name: name$g,
20668
20982
  components: {
20669
- VarIcon: stdin_default$5P,
20983
+ VarIcon: stdin_default$5Q,
20670
20984
  VarMenu: stdin_default$47,
20671
20985
  VarChip: stdin_default$53,
20672
20986
  VarFieldDecorator: stdin_default$4x,
@@ -20674,8 +20988,9 @@ const __sfc__$h = vue.defineComponent({
20674
20988
  },
20675
20989
  props: props$g,
20676
20990
  setup(props2) {
20677
- const isFocus = vue.ref(false);
20991
+ const isFocusing = vue.ref(false);
20678
20992
  const showMenu = vue.ref(false);
20993
+ const root = vue.ref(null);
20679
20994
  const multiple = vue.computed(() => props2.multiple);
20680
20995
  const focusColor = vue.computed(() => props2.focusColor);
20681
20996
  const isEmptyModelValue = vue.computed(() => isEmpty(props2.modelValue));
@@ -20706,7 +21021,7 @@ const __sfc__$h = vue.defineComponent({
20706
21021
  if (errorMessage.value) {
20707
21022
  return "var(--field-decorator-error-color)";
20708
21023
  }
20709
- if (isFocus.value) {
21024
+ if (isFocusing.value) {
20710
21025
  return focusColor2 || "var(--field-decorator-focus-color)";
20711
21026
  }
20712
21027
  return blurColor || "var(--field-decorator-placeholder-color, var(--field-decorator-blur-color))";
@@ -20731,7 +21046,52 @@ const __sfc__$h = vue.defineComponent({
20731
21046
  }
20732
21047
  );
20733
21048
  bindOptions(selectProvider);
21049
+ useEventListener(() => window, "keydown", handleKeydown);
21050
+ useEventListener(() => window, "keyup", handleKeyup);
20734
21051
  call(bindForm, selectProvider);
21052
+ function handleKeydown(event) {
21053
+ const { disabled, readonly } = props2;
21054
+ if ((form == null ? void 0 : form.disabled.value) || (form == null ? void 0 : form.readonly.value) || disabled || readonly || !isFocusing.value) {
21055
+ return;
21056
+ }
21057
+ const { key } = event;
21058
+ if (key === " " && !showMenu.value) {
21059
+ preventDefault(event);
21060
+ return;
21061
+ }
21062
+ if (key === "Escape" && showMenu.value) {
21063
+ root.value.focus();
21064
+ preventDefault(event);
21065
+ showMenu.value = false;
21066
+ return;
21067
+ }
21068
+ if (key === "Tab" && showMenu.value) {
21069
+ root.value.focus();
21070
+ preventDefault(event);
21071
+ handleBlur();
21072
+ return;
21073
+ }
21074
+ if (key === "Enter" && !showMenu.value) {
21075
+ preventDefault(event);
21076
+ showMenu.value = true;
21077
+ return;
21078
+ }
21079
+ if ((key === "ArrowDown" || key === "ArrowUp") && showMenu.value) {
21080
+ preventDefault(event);
21081
+ focusChildElementByKey(root.value, menuEl.value, key);
21082
+ }
21083
+ }
21084
+ function handleKeyup(event) {
21085
+ const { disabled, readonly } = props2;
21086
+ if ((form == null ? void 0 : form.disabled.value) || (form == null ? void 0 : form.readonly.value) || disabled || readonly || showMenu.value || !isFocusing.value) {
21087
+ return;
21088
+ }
21089
+ const { key } = event;
21090
+ if (key === " " && !showMenu.value) {
21091
+ preventDefault(event);
21092
+ showMenu.value = true;
21093
+ }
21094
+ }
20735
21095
  function validateWithTrigger(trigger) {
20736
21096
  vue.nextTick(() => {
20737
21097
  const { validateTrigger, rules, modelValue } = props2;
@@ -20744,7 +21104,7 @@ const __sfc__$h = vue.defineComponent({
20744
21104
  return;
20745
21105
  }
20746
21106
  offsetY.value = toPxNum(props2.offsetY);
20747
- isFocus.value = true;
21107
+ focus();
20748
21108
  call(onFocus);
20749
21109
  validateWithTrigger("onFocus");
20750
21110
  }
@@ -20757,6 +21117,18 @@ const __sfc__$h = vue.defineComponent({
20757
21117
  call(onBlur);
20758
21118
  validateWithTrigger("onBlur");
20759
21119
  }
21120
+ function handleRootBlur() {
21121
+ if (showMenu.value) {
21122
+ return;
21123
+ }
21124
+ handleBlur();
21125
+ }
21126
+ function handleClickOutside() {
21127
+ if (!isFocusing.value) {
21128
+ return;
21129
+ }
21130
+ handleBlur();
21131
+ }
20760
21132
  function onSelect(option) {
20761
21133
  const { disabled, readonly, multiple: multiple2, onChange } = props2;
20762
21134
  if ((form == null ? void 0 : form.disabled.value) || (form == null ? void 0 : form.readonly.value) || disabled || readonly) {
@@ -20767,7 +21139,10 @@ const __sfc__$h = vue.defineComponent({
20767
21139
  call(onChange, selectedValue);
20768
21140
  validateWithTrigger("onChange");
20769
21141
  if (!multiple2) {
20770
- blur();
21142
+ root.value.focus();
21143
+ doubleRaf().then(() => {
21144
+ showMenu.value = false;
21145
+ });
20771
21146
  }
20772
21147
  }
20773
21148
  function handleClear() {
@@ -20806,11 +21181,10 @@ const __sfc__$h = vue.defineComponent({
20806
21181
  }
20807
21182
  function focus() {
20808
21183
  offsetY.value = toPxNum(props2.offsetY);
20809
- isFocus.value = true;
20810
- showMenu.value = true;
21184
+ isFocusing.value = true;
20811
21185
  }
20812
21186
  function blur() {
20813
- isFocus.value = false;
21187
+ isFocusing.value = false;
20814
21188
  showMenu.value = false;
20815
21189
  }
20816
21190
  function validate() {
@@ -20821,8 +21195,9 @@ const __sfc__$h = vue.defineComponent({
20821
21195
  resetValidation();
20822
21196
  }
20823
21197
  return {
21198
+ root,
20824
21199
  offsetY,
20825
- isFocus,
21200
+ isFocusing,
20826
21201
  showMenu,
20827
21202
  errorMessage,
20828
21203
  formDisabled: form == null ? void 0 : form.disabled,
@@ -20839,9 +21214,11 @@ const __sfc__$h = vue.defineComponent({
20839
21214
  classes: classes$e,
20840
21215
  handleFocus,
20841
21216
  handleBlur,
21217
+ handleClickOutside,
20842
21218
  handleClear,
20843
21219
  handleClick,
20844
21220
  handleClose,
21221
+ handleRootBlur,
20845
21222
  reset,
20846
21223
  validate,
20847
21224
  resetValidation,
@@ -21268,9 +21645,9 @@ const __sfc__$f = vue.defineComponent({
21268
21645
  name: name$e,
21269
21646
  components: {
21270
21647
  VarFormDetails: stdin_default$59,
21271
- VarHoverOverlay: stdin_default$5w
21648
+ VarHoverOverlay: stdin_default$5O
21272
21649
  },
21273
- directives: { Hover: stdin_default$5v },
21650
+ directives: { Hover: stdin_default$5N },
21274
21651
  props: props$e,
21275
21652
  setup(props2) {
21276
21653
  const maxDistance = vue.ref(0);
@@ -21625,10 +22002,10 @@ const props$d = {
21625
22002
  default: 3e3
21626
22003
  },
21627
22004
  vertical: Boolean,
21628
- loadingType: pickProps(props$1a, "type"),
21629
- loadingSize: pickProps(props$1a, "size"),
21630
- loadingRadius: pickProps(props$1a, "radius"),
21631
- loadingColor: __spreadProps$1(__spreadValues$5({}, pickProps(props$1a, "color")), {
22005
+ loadingType: pickProps(props$19, "type"),
22006
+ loadingSize: pickProps(props$19, "size"),
22007
+ loadingRadius: pickProps(props$19, "radius"),
22008
+ loadingColor: __spreadProps$1(__spreadValues$5({}, pickProps(props$19, "color")), {
21632
22009
  default: "currentColor"
21633
22010
  }),
21634
22011
  lockScroll: Boolean,
@@ -21744,8 +22121,8 @@ function __render__$d(_ctx, _cache) {
21744
22121
  const __sfc__$e = vue.defineComponent({
21745
22122
  name: "VarSnackbarCore",
21746
22123
  components: {
21747
- VarLoading: stdin_default$5y,
21748
- VarIcon: stdin_default$5P
22124
+ VarLoading: stdin_default$5v,
22125
+ VarIcon: stdin_default$5Q
21749
22126
  },
21750
22127
  props: props$d,
21751
22128
  setup(props2) {
@@ -21951,7 +22328,7 @@ const TransitionGroupHost = {
21951
22328
  });
21952
22329
  return vue.createVNode(vue.TransitionGroup, vue.mergeProps(transitionGroupProps, {
21953
22330
  "style": {
21954
- zIndex: stdin_default$5U.zIndex
22331
+ zIndex: stdin_default$5V.zIndex
21955
22332
  },
21956
22333
  "onAfterEnter": opened,
21957
22334
  "onAfterLeave": removeUniqOption
@@ -22299,7 +22676,7 @@ function __render__$b(_ctx, _cache) {
22299
22676
  }
22300
22677
  const __sfc__$c = vue.defineComponent({
22301
22678
  name: name$b,
22302
- components: { VarIcon: stdin_default$5P },
22679
+ components: { VarIcon: stdin_default$5Q },
22303
22680
  props: props$b,
22304
22681
  setup() {
22305
22682
  const { index, steps, bindSteps } = useSteps();
@@ -22463,7 +22840,8 @@ const props$8 = {
22463
22840
  };
22464
22841
  const { name: name$8, n: n$9, classes: classes$8 } = createNamespace("switch");
22465
22842
  const _withScopeId = (n2) => (vue.pushScopeId(""), n2 = n2(), vue.popScopeId(), n2);
22466
- const _hoisted_1$2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode(
22843
+ const _hoisted_1$2 = ["tabindex"];
22844
+ const _hoisted_2$2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.createElementVNode(
22467
22845
  "svg",
22468
22846
  { viewBox: "25 25 50 50" },
22469
22847
  [
@@ -22477,8 +22855,8 @@ const _hoisted_1$2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ vue.crea
22477
22855
  -1
22478
22856
  /* HOISTED */
22479
22857
  ));
22480
- const _hoisted_2$2 = [
22481
- _hoisted_1$2
22858
+ const _hoisted_3$2 = [
22859
+ _hoisted_2$2
22482
22860
  ];
22483
22861
  function __render__$9(_ctx, _cache) {
22484
22862
  const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
@@ -22494,9 +22872,10 @@ function __render__$9(_ctx, _cache) {
22494
22872
  vue.createElementVNode(
22495
22873
  "div",
22496
22874
  {
22875
+ ref: "switchRef",
22497
22876
  class: vue.normalizeClass(_ctx.classes(_ctx.n("block"), [_ctx.disabled || _ctx.formDisabled, _ctx.n("--disabled")])),
22498
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.switchActive && _ctx.switchActive(...args)),
22499
- style: vue.normalizeStyle(_ctx.styleComputed.switch)
22877
+ style: vue.normalizeStyle(_ctx.styleComputed.switch),
22878
+ onClick: _cache[2] || (_cache[2] = (...args) => _ctx.switchActive && _ctx.switchActive(...args))
22500
22879
  },
22501
22880
  [
22502
22881
  vue.createElementVNode(
@@ -22511,52 +22890,52 @@ function __render__$9(_ctx, _cache) {
22511
22890
  6
22512
22891
  /* CLASS, STYLE */
22513
22892
  ),
22514
- vue.withDirectives((vue.openBlock(), vue.createElementBlock(
22515
- "div",
22516
- {
22517
- class: vue.normalizeClass(_ctx.classes(_ctx.n("ripple"), [_ctx.modelValue === _ctx.activeValue, _ctx.n("ripple--active")])),
22518
- style: vue.normalizeStyle(_ctx.styleComputed.ripple)
22519
- },
22520
- [
22521
- vue.createElementVNode(
22522
- "div",
22523
- {
22524
- style: vue.normalizeStyle(_ctx.styleComputed.handle),
22525
- class: vue.normalizeClass(
22526
- _ctx.classes(
22527
- _ctx.n("handle"),
22528
- _ctx.n("$-elevation--2"),
22529
- [_ctx.modelValue === _ctx.activeValue, _ctx.n("handle--active")],
22530
- [_ctx.errorMessage, _ctx.n("handle--error")]
22531
- )
22893
+ vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
22894
+ class: vue.normalizeClass(_ctx.classes(_ctx.n("ripple"), [_ctx.modelValue === _ctx.activeValue, _ctx.n("ripple--active")])),
22895
+ style: vue.normalizeStyle(_ctx.styleComputed.ripple),
22896
+ tabindex: _ctx.disabled || _ctx.formDisabled ? void 0 : "0",
22897
+ onFocus: _cache[0] || (_cache[0] = ($event) => _ctx.isFocusing = true),
22898
+ onBlur: _cache[1] || (_cache[1] = ($event) => _ctx.isFocusing = false)
22899
+ }, [
22900
+ vue.createElementVNode(
22901
+ "div",
22902
+ {
22903
+ style: vue.normalizeStyle(_ctx.styleComputed.handle),
22904
+ class: vue.normalizeClass(
22905
+ _ctx.classes(
22906
+ _ctx.n("handle"),
22907
+ _ctx.n("$-elevation--2"),
22908
+ [_ctx.modelValue === _ctx.activeValue, _ctx.n("handle--active")],
22909
+ [_ctx.errorMessage, _ctx.n("handle--error")]
22532
22910
  )
22533
- },
22534
- [
22535
- _ctx.loading ? (vue.openBlock(), vue.createElementBlock(
22536
- "span",
22537
- {
22538
- key: 0,
22539
- class: vue.normalizeClass(_ctx.n("loading")),
22540
- style: vue.normalizeStyle({
22541
- width: _ctx.radius,
22542
- height: _ctx.radius
22543
- })
22544
- },
22545
- [..._hoisted_2$2],
22546
- 6
22547
- /* CLASS, STYLE */
22548
- )) : vue.createCommentVNode("v-if", true)
22549
- ],
22550
- 6
22551
- /* CLASS, STYLE */
22552
- ),
22553
- vue.createVNode(_component_var_hover_overlay, { hovering: _ctx.hovering }, null, 8, ["hovering"])
22554
- ],
22555
- 6
22556
- /* CLASS, STYLE */
22557
- )), [
22911
+ )
22912
+ },
22913
+ [
22914
+ _ctx.loading ? (vue.openBlock(), vue.createElementBlock(
22915
+ "span",
22916
+ {
22917
+ key: 0,
22918
+ class: vue.normalizeClass(_ctx.n("loading")),
22919
+ style: vue.normalizeStyle({
22920
+ width: _ctx.radius,
22921
+ height: _ctx.radius
22922
+ })
22923
+ },
22924
+ [..._hoisted_3$2],
22925
+ 6
22926
+ /* CLASS, STYLE */
22927
+ )) : vue.createCommentVNode("v-if", true)
22928
+ ],
22929
+ 6
22930
+ /* CLASS, STYLE */
22931
+ ),
22932
+ vue.createVNode(_component_var_hover_overlay, {
22933
+ hovering: _ctx.hovering && !_ctx.disabled && !_ctx.formDisabled,
22934
+ focusing: _ctx.isFocusing && !_ctx.disabled && !_ctx.formDisabled
22935
+ }, null, 8, ["hovering", "focusing"])
22936
+ ], 46, _hoisted_1$2)), [
22558
22937
  [_directive_ripple, {
22559
- disabled: !_ctx.ripple || _ctx.disabled || _ctx.loading || _ctx.formDisabled
22938
+ disabled: !_ctx.ripple || _ctx.disabled || _ctx.loading || _ctx.formDisabled || _ctx.readonly || _ctx.formReadonly
22560
22939
  }]
22561
22940
  ])
22562
22941
  ],
@@ -22575,11 +22954,13 @@ const __sfc__$9 = vue.defineComponent({
22575
22954
  name: name$8,
22576
22955
  components: {
22577
22956
  VarFormDetails: stdin_default$59,
22578
- VarHoverOverlay: stdin_default$5w
22957
+ VarHoverOverlay: stdin_default$5O
22579
22958
  },
22580
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
22959
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
22581
22960
  props: props$8,
22582
22961
  setup(props2) {
22962
+ const switchRef = vue.ref(null);
22963
+ const isFocusing = vue.ref(false);
22583
22964
  const { bindForm, form } = useForm();
22584
22965
  const { errorMessage, validateWithTrigger: vt, validate: v, resetValidation } = useValidation();
22585
22966
  const { hovering, handleHovering } = useHoverOverlay();
@@ -22618,6 +22999,26 @@ const __sfc__$9 = vue.defineComponent({
22618
22999
  resetValidation
22619
23000
  };
22620
23001
  call(bindForm, switchProvider);
23002
+ useEventListener(window, "keydown", handleKeydown);
23003
+ useEventListener(window, "keyup", handleKeyup);
23004
+ function handleKeydown(event) {
23005
+ if (!isFocusing.value) {
23006
+ return;
23007
+ }
23008
+ if (event.key === " " || event.key === "Enter") {
23009
+ preventDefault(event);
23010
+ }
23011
+ if (event.key === "Enter") {
23012
+ switchRef.value.click();
23013
+ }
23014
+ }
23015
+ function handleKeyup(event) {
23016
+ if (!isFocusing.value || event.key !== " ") {
23017
+ return;
23018
+ }
23019
+ preventDefault(event);
23020
+ switchRef.value.click();
23021
+ }
22621
23022
  function validate() {
22622
23023
  return v(props2.rules, props2.modelValue);
22623
23024
  }
@@ -22641,8 +23042,11 @@ const __sfc__$9 = vue.defineComponent({
22641
23042
  "onUpdate:modelValue": updateModelValue,
22642
23043
  onBeforeChange
22643
23044
  } = props2;
23045
+ if (disabled || (form == null ? void 0 : form.disabled.value)) {
23046
+ return;
23047
+ }
22644
23048
  call(onClick, event);
22645
- if (disabled || loading || readonly || (form == null ? void 0 : form.disabled.value) || (form == null ? void 0 : form.readonly.value)) {
23049
+ if (loading || readonly || (form == null ? void 0 : form.readonly.value)) {
22646
23050
  return;
22647
23051
  }
22648
23052
  const newValue = modelValue === activeValue ? inactiveValue : activeValue;
@@ -22668,7 +23072,9 @@ const __sfc__$9 = vue.defineComponent({
22668
23072
  resetValidation();
22669
23073
  }
22670
23074
  return {
23075
+ switchRef,
22671
23076
  hovering,
23077
+ isFocusing,
22672
23078
  radius,
22673
23079
  styleComputed,
22674
23080
  errorMessage,
@@ -22741,7 +23147,7 @@ function __render__$8(_ctx, _cache) {
22741
23147
  }
22742
23148
  const __sfc__$8 = vue.defineComponent({
22743
23149
  name: name$7,
22744
- directives: { Ripple: stdin_default$5T },
23150
+ directives: { Ripple: stdin_default$5U },
22745
23151
  props: props$7,
22746
23152
  setup(props2) {
22747
23153
  const tabEl = vue.ref(null);
@@ -23728,7 +24134,9 @@ var stdin_default$2O = {
23728
24134
  "--tab-active-color": "var(--color-primary)",
23729
24135
  "--tab-disabled-color": "var(--color-text-disabled)",
23730
24136
  "--tab-font-size": "var(--font-size-md)",
23731
- "--tab-font-weight": "400"
24137
+ "--tab-font-weight": "400",
24138
+ "--tab-active-font-size": "var(--font-size-md)",
24139
+ "--tab-active-font-weight": "400"
23732
24140
  };
23733
24141
  var stdin_default$2N = {
23734
24142
  "--table-background": "#303030",
@@ -23891,7 +24299,8 @@ var stdin_default$2E = {
23891
24299
  "--link-warning-color": "var(--color-warning)",
23892
24300
  "--link-info-color": "var(--color-info)",
23893
24301
  "--link-disabled-color": "var(--color-text-disabled)",
23894
- "--link-font-size": "var(--font-size-md)"
24302
+ "--link-font-size": "var(--font-size-md)",
24303
+ "--link-focus-opacity": "0.8"
23895
24304
  };
23896
24305
  var stdin_default$2D = {
23897
24306
  "--progress-label-color": "#fff",
@@ -24067,7 +24476,8 @@ var stdin_default$2i = {
24067
24476
  "--overlay-background-color": "rgba(0, 0, 0, 0.6)"
24068
24477
  };
24069
24478
  var stdin_default$2h = {
24070
- "--paper-background": "var(--color-surface-container-highest)"
24479
+ "--paper-background": "var(--color-surface-container-highest)",
24480
+ "--paper-border-radius": 0
24071
24481
  };
24072
24482
  var stdin_default$2g = {
24073
24483
  "--rate-color": "var(--color-text)",
@@ -24329,7 +24739,8 @@ var stdin_default$20 = {
24329
24739
  "--link-warning-color": "var(--color-warning)",
24330
24740
  "--link-info-color": "var(--color-info)",
24331
24741
  "--link-disabled-color": "var(--color-text-disabled)",
24332
- "--link-font-size": "var(--font-size-md)"
24742
+ "--link-font-size": "var(--font-size-md)",
24743
+ "--link-focus-opacity": "0.8"
24333
24744
  };
24334
24745
  var stdin_default$1$ = {
24335
24746
  "--cell-description-color": "var(--color-on-surface-variant)",
@@ -24346,7 +24757,8 @@ var stdin_default$1$ = {
24346
24757
  "--cell-extra-left": "8px"
24347
24758
  };
24348
24759
  var stdin_default$1_ = {
24349
- "--paper-background": "var(--color-surface-container-low)"
24760
+ "--paper-background": "var(--color-surface-container-low)",
24761
+ "--paper-border-radius": 0
24350
24762
  };
24351
24763
  var stdin_default$1Z = {
24352
24764
  "--avatar-text-color": "#fff",
@@ -24517,7 +24929,9 @@ var stdin_default$1R = {
24517
24929
  "--tab-active-color": "var(--color-primary)",
24518
24930
  "--tab-disabled-color": "var(--color-text-disabled)",
24519
24931
  "--tab-font-size": "var(--font-size-md)",
24520
- "--tab-font-weight": "400"
24932
+ "--tab-font-weight": "400",
24933
+ "--tab-active-font-size": "var(--font-size-md)",
24934
+ "--tab-active-font-weight": "400"
24521
24935
  };
24522
24936
  var stdin_default$1Q = {
24523
24937
  "--table-background": "var(--color-surface-container-low)",
@@ -25234,7 +25648,8 @@ var stdin_default$10 = {
25234
25648
  "--link-warning-color": "var(--color-warning)",
25235
25649
  "--link-info-color": "var(--color-info)",
25236
25650
  "--link-disabled-color": "var(--color-text-disabled)",
25237
- "--link-font-size": "var(--font-size-md)"
25651
+ "--link-font-size": "var(--font-size-md)",
25652
+ "--link-focus-opacity": "0.8"
25238
25653
  };
25239
25654
  var stdin_default$$ = {
25240
25655
  "--cell-description-color": "var(--color-on-surface-variant)",
@@ -25251,7 +25666,8 @@ var stdin_default$$ = {
25251
25666
  "--cell-extra-left": "8px"
25252
25667
  };
25253
25668
  var stdin_default$_ = {
25254
- "--paper-background": "var(--color-surface-container-high)"
25669
+ "--paper-background": "var(--color-surface-container-high)",
25670
+ "--paper-border-radius": 0
25255
25671
  };
25256
25672
  var stdin_default$Z = {
25257
25673
  "--avatar-text-color": "#000",
@@ -25463,7 +25879,9 @@ var stdin_default$P = {
25463
25879
  "--tab-active-color": "var(--color-primary)",
25464
25880
  "--tab-disabled-color": "var(--color-text-disabled)",
25465
25881
  "--tab-font-size": "var(--font-size-md)",
25466
- "--tab-font-weight": "400"
25882
+ "--tab-font-weight": "400",
25883
+ "--tab-active-font-size": "var(--font-size-md)",
25884
+ "--tab-active-font-weight": "400"
25467
25885
  };
25468
25886
  var stdin_default$O = {
25469
25887
  "--step-content-color": "rgba(255, 255, 255, .38)",
@@ -27015,8 +27433,9 @@ let fid = 0;
27015
27433
  const _hoisted_1$1 = ["onClick"];
27016
27434
  const _hoisted_2$1 = ["onClick"];
27017
27435
  const _hoisted_3$1 = ["src", "alt"];
27018
- const _hoisted_4$1 = ["multiple", "accept", "capture", "disabled"];
27019
- const _hoisted_5 = ["src"];
27436
+ const _hoisted_4$1 = ["tabindex"];
27437
+ const _hoisted_5 = ["multiple", "accept", "capture", "disabled"];
27438
+ const _hoisted_6 = ["src"];
27020
27439
  function __render__$1(_ctx, _cache) {
27021
27440
  const _component_var_icon = vue.resolveComponent("var-icon");
27022
27441
  const _component_var_hover_overlay = vue.resolveComponent("var-hover-overlay");
@@ -27102,45 +27521,45 @@ function __render__$1(_ctx, _cache) {
27102
27521
  128
27103
27522
  /* KEYED_FRAGMENT */
27104
27523
  )),
27105
- !_ctx.maxlength || _ctx.modelValue.length < _ctx.toNumber(_ctx.maxlength) ? vue.withDirectives((vue.openBlock(), vue.createElementBlock(
27106
- "div",
27107
- {
27108
- key: 0,
27109
- class: vue.normalizeClass(
27110
- _ctx.classes(
27111
- [!_ctx.$slots.default, `${_ctx.n("action")} ${_ctx.formatElevation(_ctx.elevation, 2)}`],
27112
- [_ctx.disabled || _ctx.formDisabled, _ctx.n("--disabled")]
27113
- )
27114
- ),
27115
- onClick: _cache[2] || (_cache[2] = (...args) => _ctx.handleActionClick && _ctx.handleActionClick(...args))
27116
- },
27117
- [
27118
- vue.createElementVNode("input", {
27119
- ref: "input",
27120
- type: "file",
27121
- class: vue.normalizeClass(_ctx.n("action-input")),
27122
- multiple: _ctx.multiple,
27123
- accept: _ctx.accept,
27124
- capture: _ctx.capture,
27125
- disabled: _ctx.disabled || _ctx.formDisabled || _ctx.readonly || _ctx.formReadonly,
27126
- onChange: _cache[0] || (_cache[0] = (...args) => _ctx.handleChange && _ctx.handleChange(...args)),
27127
- onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
27128
- }, ["stop"]))
27129
- }, null, 42, _hoisted_4$1),
27130
- vue.renderSlot(_ctx.$slots, "default", {}, () => [
27131
- vue.createVNode(_component_var_icon, {
27132
- class: vue.normalizeClass(_ctx.n("action-icon")),
27133
- "var-uploader-cover": "",
27134
- name: "plus"
27135
- }, null, 8, ["class"]),
27136
- vue.createVNode(_component_var_hover_overlay, {
27137
- hovering: _ctx.hovering && !_ctx.disabled && !_ctx.formDisabled
27138
- }, null, 8, ["hovering"])
27139
- ])
27140
- ],
27141
- 2
27142
- /* CLASS */
27143
- )), [
27524
+ !_ctx.maxlength || _ctx.modelValue.length < _ctx.toNumber(_ctx.maxlength) ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("div", {
27525
+ key: 0,
27526
+ ref: "actionRef",
27527
+ class: vue.normalizeClass(
27528
+ _ctx.classes(
27529
+ _ctx.n("--outline-none"),
27530
+ [!_ctx.$slots.default, `${_ctx.n("action")} ${_ctx.formatElevation(_ctx.elevation, 2)}`],
27531
+ [_ctx.disabled || _ctx.formDisabled, _ctx.n("--disabled")]
27532
+ )
27533
+ ),
27534
+ tabindex: _ctx.disabled || _ctx.formDisabled ? void 0 : "0",
27535
+ onClick: _cache[2] || (_cache[2] = (...args) => _ctx.handleActionClick && _ctx.handleActionClick(...args)),
27536
+ onFocus: _cache[3] || (_cache[3] = ($event) => _ctx.isFocusing = true),
27537
+ onBlur: _cache[4] || (_cache[4] = ($event) => _ctx.isFocusing = false)
27538
+ }, [
27539
+ vue.createElementVNode("input", {
27540
+ ref: "input",
27541
+ type: "file",
27542
+ class: vue.normalizeClass(_ctx.n("action-input")),
27543
+ multiple: _ctx.multiple,
27544
+ accept: _ctx.accept,
27545
+ capture: _ctx.capture,
27546
+ disabled: _ctx.disabled || _ctx.formDisabled || _ctx.readonly || _ctx.formReadonly,
27547
+ onChange: _cache[0] || (_cache[0] = (...args) => _ctx.handleChange && _ctx.handleChange(...args)),
27548
+ onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => {
27549
+ }, ["stop"]))
27550
+ }, null, 42, _hoisted_5),
27551
+ vue.renderSlot(_ctx.$slots, "default", {}, () => [
27552
+ vue.createVNode(_component_var_icon, {
27553
+ class: vue.normalizeClass(_ctx.n("action-icon")),
27554
+ "var-uploader-cover": "",
27555
+ name: "plus"
27556
+ }, null, 8, ["class"]),
27557
+ vue.createVNode(_component_var_hover_overlay, {
27558
+ hovering: _ctx.hovering && !_ctx.disabled && !_ctx.formDisabled && !_ctx.readonly && !_ctx.formReadonly,
27559
+ focusing: _ctx.isFocusing && !_ctx.disabled && !_ctx.formDisabled && !_ctx.readonly && !_ctx.formReadonly
27560
+ }, null, 8, ["hovering", "focusing"])
27561
+ ])
27562
+ ], 42, _hoisted_4$1)), [
27144
27563
  [_directive_ripple, {
27145
27564
  disabled: _ctx.disabled || _ctx.formDisabled || _ctx.readonly || _ctx.formReadonly || !_ctx.ripple || Boolean(_ctx.$slots.default)
27146
27565
  }],
@@ -27170,8 +27589,8 @@ function __render__$1(_ctx, _cache) {
27170
27589
  "var-uploader-cover": "",
27171
27590
  position: "center",
27172
27591
  show: _ctx.showPreview,
27173
- "onUpdate:show": _cache[3] || (_cache[3] = ($event) => _ctx.showPreview = $event),
27174
- onClosed: _cache[4] || (_cache[4] = ($event) => _ctx.currentPreview = null)
27592
+ "onUpdate:show": _cache[5] || (_cache[5] = ($event) => _ctx.showPreview = $event),
27593
+ onClosed: _cache[6] || (_cache[6] = ($event) => _ctx.currentPreview = null)
27175
27594
  }, {
27176
27595
  default: vue.withCtx(() => {
27177
27596
  var _a, _b;
@@ -27186,7 +27605,7 @@ function __render__$1(_ctx, _cache) {
27186
27605
  "x5-video-player-fullscreen": "false",
27187
27606
  controls: "",
27188
27607
  src: (_b = _ctx.currentPreview) == null ? void 0 : _b.url
27189
- }, null, 10, _hoisted_5)) : vue.createCommentVNode("v-if", true)
27608
+ }, null, 10, _hoisted_6)) : vue.createCommentVNode("v-if", true)
27190
27609
  ];
27191
27610
  }),
27192
27611
  _: 1
@@ -27199,15 +27618,17 @@ function __render__$1(_ctx, _cache) {
27199
27618
  }
27200
27619
  const __sfc__$1 = vue.defineComponent({
27201
27620
  name: name$1,
27202
- directives: { Ripple: stdin_default$5T, Hover: stdin_default$5v },
27621
+ directives: { Ripple: stdin_default$5U, Hover: stdin_default$5N },
27203
27622
  components: {
27204
- VarIcon: stdin_default$5P,
27205
- VarPopup: stdin_default$5R,
27623
+ VarIcon: stdin_default$5Q,
27624
+ VarPopup: stdin_default$5S,
27206
27625
  VarFormDetails: stdin_default$59,
27207
- VarHoverOverlay: stdin_default$5w
27626
+ VarHoverOverlay: stdin_default$5O
27208
27627
  },
27209
27628
  props: props$1,
27210
27629
  setup(props2) {
27630
+ const isFocusing = vue.ref(false);
27631
+ const actionRef = vue.ref(null);
27211
27632
  const input = vue.ref(null);
27212
27633
  const showPreview = vue.ref(false);
27213
27634
  const currentPreview = vue.ref(null);
@@ -27246,6 +27667,8 @@ const __sfc__$1 = vue.defineComponent({
27246
27667
  reset
27247
27668
  };
27248
27669
  call(bindForm, uploaderProvider);
27670
+ useEventListener(window, "keydown", handleKeydown);
27671
+ useEventListener(window, "keyup", handleKeyup);
27249
27672
  vue.watch(
27250
27673
  () => props2.modelValue,
27251
27674
  () => {
@@ -27254,6 +27677,24 @@ const __sfc__$1 = vue.defineComponent({
27254
27677
  },
27255
27678
  { deep: true }
27256
27679
  );
27680
+ function handleKeydown(event) {
27681
+ if (!isFocusing.value) {
27682
+ return;
27683
+ }
27684
+ if (event.key === " " || event.key === "Enter") {
27685
+ event.preventDefault();
27686
+ }
27687
+ if (event.key === "Enter") {
27688
+ actionRef.value.click();
27689
+ }
27690
+ }
27691
+ function handleKeyup(event) {
27692
+ if (!isFocusing.value || event.key !== " ") {
27693
+ return;
27694
+ }
27695
+ event.preventDefault();
27696
+ actionRef.value.click();
27697
+ }
27257
27698
  function preview(varFile) {
27258
27699
  const { disabled, previewed, preventDefaultPreview, onPreview } = props2;
27259
27700
  if ((form == null ? void 0 : form.disabled.value) || disabled || !previewed) {
@@ -27424,12 +27865,14 @@ const __sfc__$1 = vue.defineComponent({
27424
27865
  }
27425
27866
  return {
27426
27867
  input,
27868
+ actionRef,
27427
27869
  files,
27428
27870
  showPreview,
27429
27871
  currentPreview,
27430
27872
  errorMessage,
27431
27873
  maxlengthText,
27432
27874
  hovering,
27875
+ isFocusing,
27433
27876
  formDisabled: form == null ? void 0 : form.disabled,
27434
27877
  formReadonly: form == null ? void 0 : form.readonly,
27435
27878
  n: n$1,
@@ -27754,12 +28197,12 @@ withInstall(stdin_default$1);
27754
28197
  withPropsDefaultsSetter(stdin_default$1, props);
27755
28198
  const _WatermarkComponent = stdin_default$1;
27756
28199
  var stdin_default = stdin_default$1;
27757
- const version = "3.0.6";
28200
+ const version = "3.1.0-alpha.1709284240068";
27758
28201
  function install(app) {
27759
- stdin_default$5H.install && app.use(stdin_default$5H);
27760
- stdin_default$5F.install && app.use(stdin_default$5F);
28202
+ stdin_default$5E.install && app.use(stdin_default$5E);
27761
28203
  stdin_default$5C.install && app.use(stdin_default$5C);
27762
- stdin_default$5A.install && app.use(stdin_default$5A);
28204
+ stdin_default$5z.install && app.use(stdin_default$5z);
28205
+ stdin_default$5x.install && app.use(stdin_default$5x);
27763
28206
  stdin_default$5r.install && app.use(stdin_default$5r);
27764
28207
  stdin_default$5p.install && app.use(stdin_default$5p);
27765
28208
  stdin_default$5n.install && app.use(stdin_default$5n);
@@ -27777,7 +28220,7 @@ function install(app) {
27777
28220
  stdin_default$4$.install && app.use(stdin_default$4$);
27778
28221
  stdin_default$4Z.install && app.use(stdin_default$4Z);
27779
28222
  stdin_default$4X.install && app.use(stdin_default$4X);
27780
- stdin_default$5U.install && app.use(stdin_default$5U);
28223
+ stdin_default$5V.install && app.use(stdin_default$5V);
27781
28224
  stdin_default$4V.install && app.use(stdin_default$4V);
27782
28225
  stdin_default$4T.install && app.use(stdin_default$4T);
27783
28226
  stdin_default$4L.install && app.use(stdin_default$4L);
@@ -27790,20 +28233,20 @@ function install(app) {
27790
28233
  stdin_default$4v.install && app.use(stdin_default$4v);
27791
28234
  stdin_default$4t.install && app.use(stdin_default$4t);
27792
28235
  stdin_default$59.install && app.use(stdin_default$59);
27793
- stdin_default$5v.install && app.use(stdin_default$5v);
27794
- stdin_default$5w.install && app.use(stdin_default$5w);
27795
- stdin_default$5P.install && app.use(stdin_default$5P);
28236
+ stdin_default$5N.install && app.use(stdin_default$5N);
28237
+ stdin_default$5O.install && app.use(stdin_default$5O);
28238
+ stdin_default$5Q.install && app.use(stdin_default$5Q);
27796
28239
  stdin_default$4r.install && app.use(stdin_default$4r);
27797
28240
  stdin_default$4l.install && app.use(stdin_default$4l);
27798
28241
  stdin_default$4j.install && app.use(stdin_default$4j);
27799
28242
  stdin_default$4h.install && app.use(stdin_default$4h);
27800
28243
  stdin_default$4f.install && app.use(stdin_default$4f);
27801
- stdin_default$5E.install && app.use(stdin_default$5E);
28244
+ stdin_default$5B.install && app.use(stdin_default$5B);
27802
28245
  stdin_default$4d.install && app.use(stdin_default$4d);
27803
28246
  stdin_default$4b.install && app.use(stdin_default$4b);
27804
- stdin_default$5y.install && app.use(stdin_default$5y);
28247
+ stdin_default$5v.install && app.use(stdin_default$5v);
27805
28248
  stdin_default$49.install && app.use(stdin_default$49);
27806
- stdin_default$5J.install && app.use(stdin_default$5J);
28249
+ stdin_default$5G.install && app.use(stdin_default$5G);
27807
28250
  stdin_default$47.install && app.use(stdin_default$47);
27808
28251
  stdin_default$45.install && app.use(stdin_default$45);
27809
28252
  stdin_default$43.install && app.use(stdin_default$43);
@@ -27812,14 +28255,14 @@ function install(app) {
27812
28255
  stdin_default$3Z.install && app.use(stdin_default$3Z);
27813
28256
  stdin_default$3X.install && app.use(stdin_default$3X);
27814
28257
  stdin_default$3V.install && app.use(stdin_default$3V);
27815
- stdin_default$5R.install && app.use(stdin_default$5R);
28258
+ stdin_default$5S.install && app.use(stdin_default$5S);
27816
28259
  stdin_default$3T.install && app.use(stdin_default$3T);
27817
28260
  stdin_default$3R.install && app.use(stdin_default$3R);
27818
28261
  stdin_default$3P.install && app.use(stdin_default$3P);
27819
28262
  stdin_default$3N.install && app.use(stdin_default$3N);
27820
28263
  stdin_default$3L.install && app.use(stdin_default$3L);
27821
28264
  stdin_default$3D.install && app.use(stdin_default$3D);
27822
- stdin_default$5T.install && app.use(stdin_default$5T);
28265
+ stdin_default$5U.install && app.use(stdin_default$5U);
27823
28266
  stdin_default$3B.install && app.use(stdin_default$3B);
27824
28267
  stdin_default$3z.install && app.use(stdin_default$3z);
27825
28268
  stdin_default$3x.install && app.use(stdin_default$3x);
@@ -27847,10 +28290,10 @@ function install(app) {
27847
28290
  const index_bundle = {
27848
28291
  version,
27849
28292
  install,
27850
- ActionSheet: stdin_default$5H,
27851
- AppBar: stdin_default$5F,
27852
- Avatar: stdin_default$5C,
27853
- AvatarGroup: stdin_default$5A,
28293
+ ActionSheet: stdin_default$5E,
28294
+ AppBar: stdin_default$5C,
28295
+ Avatar: stdin_default$5z,
28296
+ AvatarGroup: stdin_default$5x,
27854
28297
  BackTop: stdin_default$5r,
27855
28298
  Badge: stdin_default$5p,
27856
28299
  BottomNavigation: stdin_default$5n,
@@ -27868,7 +28311,7 @@ const index_bundle = {
27868
28311
  Collapse: stdin_default$4$,
27869
28312
  CollapseItem: stdin_default$4Z,
27870
28313
  CollapseTransition: stdin_default$4X,
27871
- Context: stdin_default$5U,
28314
+ Context: stdin_default$5V,
27872
28315
  Countdown: stdin_default$4V,
27873
28316
  Counter: stdin_default$4T,
27874
28317
  DatePicker: stdin_default$4L,
@@ -27881,20 +28324,20 @@ const index_bundle = {
27881
28324
  FloatingPanel: stdin_default$4v,
27882
28325
  Form: stdin_default$4t,
27883
28326
  FormDetails: stdin_default$59,
27884
- Hover: stdin_default$5v,
27885
- HoverOverlay: stdin_default$5w,
27886
- Icon: stdin_default$5P,
28327
+ Hover: stdin_default$5N,
28328
+ HoverOverlay: stdin_default$5O,
28329
+ Icon: stdin_default$5Q,
27887
28330
  Image: stdin_default$4r,
27888
28331
  ImagePreview: stdin_default$4l,
27889
28332
  IndexAnchor: stdin_default$4j,
27890
28333
  IndexBar: stdin_default$4h,
27891
28334
  Input: stdin_default$4f,
27892
- Lazy: stdin_default$5E,
28335
+ Lazy: stdin_default$5B,
27893
28336
  Link: stdin_default$4d,
27894
28337
  List: stdin_default$4b,
27895
- Loading: stdin_default$5y,
28338
+ Loading: stdin_default$5v,
27896
28339
  LoadingBar: stdin_default$49,
27897
- Locale: stdin_default$5J,
28340
+ Locale: stdin_default$5G,
27898
28341
  Menu: stdin_default$47,
27899
28342
  MenuOption: stdin_default$45,
27900
28343
  MenuSelect: stdin_default$43,
@@ -27903,14 +28346,14 @@ const index_bundle = {
27903
28346
  Pagination: stdin_default$3Z,
27904
28347
  Paper: stdin_default$3X,
27905
28348
  Picker: stdin_default$3V,
27906
- Popup: stdin_default$5R,
28349
+ Popup: stdin_default$5S,
27907
28350
  Progress: stdin_default$3T,
27908
28351
  PullRefresh: stdin_default$3R,
27909
28352
  Radio: stdin_default$3P,
27910
28353
  RadioGroup: stdin_default$3N,
27911
28354
  Rate: stdin_default$3L,
27912
28355
  Result: stdin_default$3D,
27913
- Ripple: stdin_default$5T,
28356
+ Ripple: stdin_default$5U,
27914
28357
  Row: stdin_default$3B,
27915
28358
  Select: stdin_default$3z,
27916
28359
  Skeleton: stdin_default$3x,
@@ -27935,10 +28378,10 @@ const index_bundle = {
27935
28378
  Uploader: stdin_default$2,
27936
28379
  Watermark: stdin_default
27937
28380
  };
27938
- exports.ActionSheet = stdin_default$5H;
27939
- exports.AppBar = stdin_default$5F;
27940
- exports.Avatar = stdin_default$5C;
27941
- exports.AvatarGroup = stdin_default$5A;
28381
+ exports.ActionSheet = stdin_default$5E;
28382
+ exports.AppBar = stdin_default$5C;
28383
+ exports.Avatar = stdin_default$5z;
28384
+ exports.AvatarGroup = stdin_default$5x;
27942
28385
  exports.BackTop = stdin_default$5r;
27943
28386
  exports.Badge = stdin_default$5p;
27944
28387
  exports.BottomNavigation = stdin_default$5n;
@@ -27956,7 +28399,7 @@ exports.Col = stdin_default$51;
27956
28399
  exports.Collapse = stdin_default$4$;
27957
28400
  exports.CollapseItem = stdin_default$4Z;
27958
28401
  exports.CollapseTransition = stdin_default$4X;
27959
- exports.Context = stdin_default$5U;
28402
+ exports.Context = stdin_default$5V;
27960
28403
  exports.Countdown = stdin_default$4V;
27961
28404
  exports.Counter = stdin_default$4T;
27962
28405
  exports.DatePicker = stdin_default$4L;
@@ -27969,20 +28412,20 @@ exports.FieldDecorator = stdin_default$4x;
27969
28412
  exports.FloatingPanel = stdin_default$4v;
27970
28413
  exports.Form = stdin_default$4t;
27971
28414
  exports.FormDetails = stdin_default$59;
27972
- exports.Hover = stdin_default$5v;
27973
- exports.HoverOverlay = stdin_default$5w;
27974
- exports.Icon = stdin_default$5P;
28415
+ exports.Hover = stdin_default$5N;
28416
+ exports.HoverOverlay = stdin_default$5O;
28417
+ exports.Icon = stdin_default$5Q;
27975
28418
  exports.Image = stdin_default$4r;
27976
28419
  exports.ImagePreview = stdin_default$4l;
27977
28420
  exports.IndexAnchor = stdin_default$4j;
27978
28421
  exports.IndexBar = stdin_default$4h;
27979
28422
  exports.Input = stdin_default$4f;
27980
- exports.Lazy = stdin_default$5E;
28423
+ exports.Lazy = stdin_default$5B;
27981
28424
  exports.Link = stdin_default$4d;
27982
28425
  exports.List = stdin_default$4b;
27983
- exports.Loading = stdin_default$5y;
28426
+ exports.Loading = stdin_default$5v;
27984
28427
  exports.LoadingBar = stdin_default$49;
27985
- exports.Locale = stdin_default$5J;
28428
+ exports.Locale = stdin_default$5G;
27986
28429
  exports.Menu = stdin_default$47;
27987
28430
  exports.MenuOption = stdin_default$45;
27988
28431
  exports.MenuSelect = stdin_default$43;
@@ -27992,14 +28435,14 @@ exports.PIXEL = PIXEL;
27992
28435
  exports.Pagination = stdin_default$3Z;
27993
28436
  exports.Paper = stdin_default$3X;
27994
28437
  exports.Picker = stdin_default$3V;
27995
- exports.Popup = stdin_default$5R;
28438
+ exports.Popup = stdin_default$5S;
27996
28439
  exports.Progress = stdin_default$3T;
27997
28440
  exports.PullRefresh = stdin_default$3R;
27998
28441
  exports.Radio = stdin_default$3P;
27999
28442
  exports.RadioGroup = stdin_default$3N;
28000
28443
  exports.Rate = stdin_default$3L;
28001
28444
  exports.Result = stdin_default$3D;
28002
- exports.Ripple = stdin_default$5T;
28445
+ exports.Ripple = stdin_default$5U;
28003
28446
  exports.Row = stdin_default$3B;
28004
28447
  exports.SNACKBAR_TYPE = SNACKBAR_TYPE;
28005
28448
  exports.Select = stdin_default$3z;
@@ -28111,11 +28554,11 @@ exports._TimePickerComponent = _TimePickerComponent;
28111
28554
  exports._TooltipComponent = _TooltipComponent;
28112
28555
  exports._UploaderComponent = _UploaderComponent;
28113
28556
  exports._WatermarkComponent = _WatermarkComponent;
28114
- exports.actionSheetProps = props$1e;
28557
+ exports.actionSheetProps = props$1d;
28115
28558
  exports.add = add$2;
28116
- exports.appBarProps = props$1d;
28117
- exports.avatarGroupProps = props$1b;
28118
- exports.avatarProps = props$1c;
28559
+ exports.appBarProps = props$1c;
28560
+ exports.avatarGroupProps = props$1a;
28561
+ exports.avatarProps = props$1b;
28119
28562
  exports.backTopProps = props$17;
28120
28563
  exports.badgeProps = props$16;
28121
28564
  exports.bottomNavigationItemProps = props$14;
@@ -28143,12 +28586,12 @@ exports.dialogProps = props$O;
28143
28586
  exports.dividerProps = props$N;
28144
28587
  exports.dragProps = props$M;
28145
28588
  exports.ellipsisProps = props$K;
28146
- exports.enUS = stdin_default$5N;
28589
+ exports.enUS = stdin_default$5K;
28147
28590
  exports.fabProps = props$J;
28148
28591
  exports.fieldDecoratorProps = props$I;
28149
28592
  exports.formDetailsProps = props$_;
28150
28593
  exports.formProps = props$G;
28151
- exports.hoverOverlayProps = props$19;
28594
+ exports.hoverOverlayProps = props$1e;
28152
28595
  exports.iconProps = props$1f;
28153
28596
  exports.imageCache = imageCache;
28154
28597
  exports.imagePreviewProps = props$D;
@@ -28160,7 +28603,7 @@ exports.install = install;
28160
28603
  exports.linkProps = props$z;
28161
28604
  exports.listProps = props$y;
28162
28605
  exports.loadingBarProps = props$x;
28163
- exports.loadingProps = props$1a;
28606
+ exports.loadingProps = props$19;
28164
28607
  exports.menuOptionProps = props$u;
28165
28608
  exports.menuProps = props$v;
28166
28609
  exports.menuSelectProps = props$t;
@@ -28204,4 +28647,4 @@ exports.useHoverOverlay = useHoverOverlay;
28204
28647
  exports.useLocale = useLocale;
28205
28648
  exports.version = version;
28206
28649
  exports.watermarkProps = props;
28207
- exports.zhCN = stdin_default$5O;
28650
+ exports.zhCN = stdin_default$5L;