@retailcrm/embed-ui-v1-components 0.9.13 → 0.9.15

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 (74) hide show
  1. package/AGENTS.md +126 -0
  2. package/README.md +24 -0
  3. package/assets/stylesheets/palette.less +11 -6
  4. package/bin/embed-ui-v1-components.mjs +209 -0
  5. package/bin/postinstall.mjs +37 -0
  6. package/dist/host.cjs +1900 -590
  7. package/dist/host.css +659 -6
  8. package/dist/host.d.ts +2374 -50
  9. package/dist/host.js +1901 -591
  10. package/dist/remote.cjs +610 -33
  11. package/dist/remote.d.ts +729 -48
  12. package/dist/remote.js +612 -35
  13. package/docs/AI.md +106 -0
  14. package/docs/COMPONENTS.md +96 -0
  15. package/docs/FORMAT.md +248 -0
  16. package/docs/PROFILES.md +64 -0
  17. package/docs/README.md +65 -0
  18. package/docs/STYLING.md +156 -0
  19. package/docs/profiles/UiAddButton.yml +45 -0
  20. package/docs/profiles/UiAlert.yml +36 -0
  21. package/docs/profiles/UiAvatar.yml +36 -0
  22. package/docs/profiles/UiAvatarList.yml +30 -0
  23. package/docs/profiles/UiButton.yml +221 -0
  24. package/docs/profiles/UiCalendar.yml +36 -0
  25. package/docs/profiles/UiCheckbox.yml +41 -0
  26. package/docs/profiles/UiCollapse.yml +28 -0
  27. package/docs/profiles/UiCollapseBox.yml +39 -0
  28. package/docs/profiles/UiCollapseGroup.yml +27 -0
  29. package/docs/profiles/UiCopyButton.yml +40 -0
  30. package/docs/profiles/UiDate.yml +26 -0
  31. package/docs/profiles/UiDatePicker.yml +47 -0
  32. package/docs/profiles/UiError.yml +20 -0
  33. package/docs/profiles/UiField.yml +229 -0
  34. package/docs/profiles/UiImage.yml +27 -0
  35. package/docs/profiles/UiInfobox.yml +33 -0
  36. package/docs/profiles/UiLink.yml +39 -0
  37. package/docs/profiles/UiLoader.yml +26 -0
  38. package/docs/profiles/UiMenuItem.yml +45 -0
  39. package/docs/profiles/UiMenuItemGroup.yml +38 -0
  40. package/docs/profiles/UiModalSidebar.yml +34 -0
  41. package/docs/profiles/UiModalWindow.yml +32 -0
  42. package/docs/profiles/UiModalWindowSurface.yml +29 -0
  43. package/docs/profiles/UiNumberStepper.yml +40 -0
  44. package/docs/profiles/UiPageHeader.yml +240 -0
  45. package/docs/profiles/UiPopper.yml +197 -0
  46. package/docs/profiles/UiPopperConnector.yml +109 -0
  47. package/docs/profiles/UiPopperTarget.yml +112 -0
  48. package/docs/profiles/UiRadio.yml +26 -0
  49. package/docs/profiles/UiRadioSwitch.yml +224 -0
  50. package/docs/profiles/UiRadioSwitchOption.yml +113 -0
  51. package/docs/profiles/UiScrollBox.yml +19 -0
  52. package/docs/profiles/UiSelect.yml +318 -0
  53. package/docs/profiles/UiSelectOption.yml +32 -0
  54. package/docs/profiles/UiSelectOptionGroup.yml +26 -0
  55. package/docs/profiles/UiSlider.yml +26 -0
  56. package/docs/profiles/UiSwitch.yml +25 -0
  57. package/docs/profiles/UiTab.yml +114 -0
  58. package/docs/profiles/UiTabGroup.yml +233 -0
  59. package/docs/profiles/UiTable.yml +148 -0
  60. package/docs/profiles/UiTableBodyCell.yml +35 -0
  61. package/docs/profiles/UiTableColumn.yml +38 -0
  62. package/docs/profiles/UiTableFooterButton.yml +32 -0
  63. package/docs/profiles/UiTableFooterSection.yml +26 -0
  64. package/docs/profiles/UiTableHeadCell.yml +32 -0
  65. package/docs/profiles/UiTableSorter.yml +33 -0
  66. package/docs/profiles/UiTag.yml +29 -0
  67. package/docs/profiles/UiTextbox.yml +388 -0
  68. package/docs/profiles/UiTimePicker.yml +34 -0
  69. package/docs/profiles/UiToolbarButton.yml +25 -0
  70. package/docs/profiles/UiToolbarLink.yml +20 -0
  71. package/docs/profiles/UiTooltip.yml +31 -0
  72. package/docs/profiles/UiTransition.yml +15 -0
  73. package/docs/profiles/UiYandexMap.yml +17 -0
  74. package/package.json +11 -2
package/dist/host.js CHANGED
@@ -1,11 +1,11 @@
1
- import { defineComponent, openBlock, createBlock, Transition, withCtx, renderSlot, createElementBlock, createElementVNode, ref, reactive, computed, watch, onMounted, withDirectives, mergeProps, unref, createCommentVNode, normalizeClass, createTextVNode, toDisplayString, createVNode, vShow, inject, useSlots, resolveDynamicComponent, provide, Fragment, renderList, Text, Comment, h, getCurrentInstance, nextTick, onBeforeUnmount, useId, onActivated, onDeactivated, Teleport, shallowRef, normalizeStyle, createSlots, withModifiers, useAttrs, normalizeProps, guardReactiveProps } from "vue";
1
+ import { defineComponent, openBlock, createBlock, Transition, withCtx, renderSlot, createElementBlock, createElementVNode, ref, reactive, computed, watch, onMounted, withDirectives, mergeProps, unref, createCommentVNode, normalizeClass, createTextVNode, toDisplayString, createVNode, vShow, inject, useSlots, resolveDynamicComponent, provide, Fragment, renderList, Text, Comment, h, getCurrentInstance, nextTick, onBeforeUnmount, useId, onActivated, onDeactivated, Teleport, shallowRef, normalizeStyle, createSlots, withModifiers, useAttrs, normalizeProps, guardReactiveProps, withKeys, isVNode, onUpdated } from "vue";
2
2
  import { preview } from "@retailcrm/image-preview";
3
3
  import isEqual from "lodash.isequal";
4
4
  import { format, formatISO } from "date-fns";
5
5
  import { ru, es, enGB } from "date-fns/locale";
6
6
  import { PerfectScrollbar } from "vue3-perfect-scrollbar";
7
7
  import { createProvider as createProvider$1 } from "@omnicajs/vue-remote/host";
8
- const _sfc_main$S = /* @__PURE__ */ defineComponent({
8
+ const _sfc_main$10 = /* @__PURE__ */ defineComponent({
9
9
  __name: "UiTransition",
10
10
  props: {
11
11
  /** Наименование анимации перехода */
@@ -33,13 +33,13 @@ const _sfc_main$S = /* @__PURE__ */ defineComponent({
33
33
  };
34
34
  }
35
35
  });
36
- const _hoisted_1$R = {
36
+ const _hoisted_1$V = {
37
37
  xmlns: "http://www.w3.org/2000/svg",
38
38
  fill: "none",
39
39
  viewBox: "0 0 24 24"
40
40
  };
41
- function render$n(_ctx, _cache) {
42
- return openBlock(), createElementBlock("svg", _hoisted_1$R, [..._cache[0] || (_cache[0] = [
41
+ function render$o(_ctx, _cache) {
42
+ return openBlock(), createElementBlock("svg", _hoisted_1$V, [..._cache[0] || (_cache[0] = [
43
43
  createElementVNode("path", {
44
44
  fill: "currentColor",
45
45
  "fill-rule": "evenodd",
@@ -48,26 +48,26 @@ function render$n(_ctx, _cache) {
48
48
  }, null, -1)
49
49
  ])]);
50
50
  }
51
- const IconCheckmarkCircleOutlined = { render: render$n };
52
- const _hoisted_1$Q = {
51
+ const IconCheckmarkCircleOutlined = { render: render$o };
52
+ const _hoisted_1$U = {
53
53
  xmlns: "http://www.w3.org/2000/svg",
54
54
  viewBox: "0 0 24 24"
55
55
  };
56
- function render$m(_ctx, _cache) {
57
- return openBlock(), createElementBlock("svg", _hoisted_1$Q, [..._cache[0] || (_cache[0] = [
56
+ function render$n(_ctx, _cache) {
57
+ return openBlock(), createElementBlock("svg", _hoisted_1$U, [..._cache[0] || (_cache[0] = [
58
58
  createElementVNode("path", {
59
59
  fill: "currentColor",
60
60
  d: "M7.113 6.176a.6.6 0 0 1 .848 0L12 10.214l4.038-4.038a.6.6 0 0 1 .849 0l.937.937a.6.6 0 0 1 0 .848L13.785 12l4.04 4.04a.6.6 0 0 1 0 .848l-.937.937a.6.6 0 0 1-.849 0L12 13.784l-4.038 4.04a.6.6 0 0 1-.849 0l-.937-.937a.6.6 0 0 1 0-.848l4.04-4.04-4.039-4.038a.6.6 0 0 1 0-.849z"
61
61
  }, null, -1)
62
62
  ])]);
63
63
  }
64
- const IconClear = { render: render$m };
65
- const _hoisted_1$P = {
64
+ const IconClear = { render: render$n };
65
+ const _hoisted_1$T = {
66
66
  xmlns: "http://www.w3.org/2000/svg",
67
67
  viewBox: "0 0 24 24"
68
68
  };
69
- function render$l(_ctx, _cache) {
70
- return openBlock(), createElementBlock("svg", _hoisted_1$P, [..._cache[0] || (_cache[0] = [
69
+ function render$m(_ctx, _cache) {
70
+ return openBlock(), createElementBlock("svg", _hoisted_1$T, [..._cache[0] || (_cache[0] = [
71
71
  createElementVNode("path", {
72
72
  fill: "currentColor",
73
73
  "fill-rule": "evenodd",
@@ -76,26 +76,26 @@ function render$l(_ctx, _cache) {
76
76
  }, null, -1)
77
77
  ])]);
78
78
  }
79
- const IconClearCircleOutlined = { render: render$l };
80
- const _hoisted_1$O = {
79
+ const IconClearCircleOutlined = { render: render$m };
80
+ const _hoisted_1$S = {
81
81
  xmlns: "http://www.w3.org/2000/svg",
82
82
  viewBox: "0 0 24 24"
83
83
  };
84
- function render$k(_ctx, _cache) {
85
- return openBlock(), createElementBlock("svg", _hoisted_1$O, [..._cache[0] || (_cache[0] = [
84
+ function render$l(_ctx, _cache) {
85
+ return openBlock(), createElementBlock("svg", _hoisted_1$S, [..._cache[0] || (_cache[0] = [
86
86
  createElementVNode("path", {
87
87
  fill: "currentColor",
88
88
  d: "M2 12C2 6.477 6.477 2 12 2A10 10 0 1 1 2 12m2 0a8 8 0 1 0 16 0 8 8 0 0 0-16 0m7.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-.18-6h1.36a.5.5 0 0 1 .5.56l-.4 3.22a.25.25 0 0 1-.25.22h-1.06a.25.25 0 0 1-.25-.22l-.4-3.22a.5.5 0 0 1 .5-.56"
89
89
  }, null, -1)
90
90
  ])]);
91
91
  }
92
- const IconErrorOutlined = { render: render$k };
93
- const _hoisted_1$N = {
92
+ const IconErrorOutlined = { render: render$l };
93
+ const _hoisted_1$R = {
94
94
  xmlns: "http://www.w3.org/2000/svg",
95
95
  viewBox: "0 0 24 24"
96
96
  };
97
- function render$j(_ctx, _cache) {
98
- return openBlock(), createElementBlock("svg", _hoisted_1$N, [..._cache[0] || (_cache[0] = [
97
+ function render$k(_ctx, _cache) {
98
+ return openBlock(), createElementBlock("svg", _hoisted_1$R, [..._cache[0] || (_cache[0] = [
99
99
  createElementVNode("path", {
100
100
  fill: "currentColor",
101
101
  "fill-rule": "evenodd",
@@ -104,7 +104,7 @@ function render$j(_ctx, _cache) {
104
104
  }, null, -1)
105
105
  ])]);
106
106
  }
107
- const IconInfoOutlined = { render: render$j };
107
+ const IconInfoOutlined = { render: render$k };
108
108
  var VARIANT$1 = /* @__PURE__ */ ((VARIANT2) => {
109
109
  VARIANT2["PRIMARY"] = "primary";
110
110
  VARIANT2["WARNING"] = "warning";
@@ -112,13 +112,13 @@ var VARIANT$1 = /* @__PURE__ */ ((VARIANT2) => {
112
112
  VARIANT2["DANGER"] = "danger";
113
113
  return VARIANT2;
114
114
  })(VARIANT$1 || {});
115
- const _hoisted_1$M = ["aria-hidden", "aria-live"];
116
- const _hoisted_2$m = {
115
+ const _hoisted_1$Q = ["aria-hidden", "aria-live"];
116
+ const _hoisted_2$o = {
117
117
  key: 0,
118
118
  class: "ui-v1-alert__icon-outline"
119
119
  };
120
- const _hoisted_3$h = { class: "ui-v1-alert__icon" };
121
- const _sfc_main$R = /* @__PURE__ */ defineComponent({
120
+ const _hoisted_3$i = { class: "ui-v1-alert__icon" };
121
+ const _sfc_main$$ = /* @__PURE__ */ defineComponent({
122
122
  ...{
123
123
  inheritAttrs: false
124
124
  },
@@ -227,7 +227,7 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
227
227
  }
228
228
  });
229
229
  return (_ctx, _cache) => {
230
- return openBlock(), createBlock(_sfc_main$S, {
230
+ return openBlock(), createBlock(_sfc_main$10, {
231
231
  name: "fade",
232
232
  onBeforeEnter,
233
233
  onBeforeLeave,
@@ -250,8 +250,8 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
250
250
  role: "alert"
251
251
  }, _ctx.$attrs), [
252
252
  renderSlot(_ctx.$slots, "icon", {}, () => [
253
- __props.variant ? (openBlock(), createElementBlock("div", _hoisted_2$m, [
254
- createElementVNode("div", _hoisted_3$h, [
253
+ __props.variant ? (openBlock(), createElementBlock("div", _hoisted_2$o, [
254
+ createElementVNode("div", _hoisted_3$i, [
255
255
  __props.variant === unref(VARIANT$1).PRIMARY ? (openBlock(), createBlock(unref(IconInfoOutlined), { key: 0 })) : __props.variant === unref(VARIANT$1).WARNING ? (openBlock(), createBlock(unref(IconErrorOutlined), { key: 1 })) : __props.variant === unref(VARIANT$1).DANGER ? (openBlock(), createBlock(unref(IconClearCircleOutlined), { key: 2 })) : __props.variant === unref(VARIANT$1).SUCCESS ? (openBlock(), createBlock(unref(IconCheckmarkCircleOutlined), { key: 3 })) : createCommentVNode("", true)
256
256
  ])
257
257
  ])) : createCommentVNode("", true)
@@ -276,7 +276,7 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
276
276
  }, [
277
277
  createVNode(unref(IconClear), { class: "ui-v1-alert__close-icon" })
278
278
  ])) : createCommentVNode("", true)
279
- ], 16, _hoisted_1$M), [
279
+ ], 16, _hoisted_1$Q), [
280
280
  [vShow, state.shown]
281
281
  ])
282
282
  ]),
@@ -285,12 +285,12 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
285
285
  };
286
286
  }
287
287
  });
288
- const _hoisted_1$L = {
288
+ const _hoisted_1$P = {
289
289
  xmlns: "http://www.w3.org/2000/svg",
290
290
  viewBox: "0 0 24 24"
291
291
  };
292
- function render$i(_ctx, _cache) {
293
- return openBlock(), createElementBlock("svg", _hoisted_1$L, [..._cache[0] || (_cache[0] = [
292
+ function render$j(_ctx, _cache) {
293
+ return openBlock(), createElementBlock("svg", _hoisted_1$P, [..._cache[0] || (_cache[0] = [
294
294
  createElementVNode("path", {
295
295
  fill: "currentColor",
296
296
  "fill-rule": "evenodd",
@@ -299,7 +299,7 @@ function render$i(_ctx, _cache) {
299
299
  }, null, -1)
300
300
  ])]);
301
301
  }
302
- const IconAddCircle = { render: render$i };
302
+ const IconAddCircle = { render: render$j };
303
303
  var COLOR$1 = /* @__PURE__ */ ((COLOR2) => {
304
304
  COLOR2["GREEN"] = "green";
305
305
  COLOR2["BLUE"] = "blue";
@@ -312,14 +312,14 @@ const isNumeric = (value) => !isNaN(Number(value));
312
312
  const normalizeHeight = (height) => {
313
313
  return isNumeric(height) ? `${height}px` : `${height}`;
314
314
  };
315
- const _hoisted_1$K = ["type", "disabled"];
316
- const _hoisted_2$l = { class: "ui-v1-add-button__content" };
317
- const _hoisted_3$g = { class: "ui-v1-add-button__title" };
318
- const _hoisted_4$b = {
315
+ const _hoisted_1$O = ["type", "disabled"];
316
+ const _hoisted_2$n = { class: "ui-v1-add-button__content" };
317
+ const _hoisted_3$h = { class: "ui-v1-add-button__title" };
318
+ const _hoisted_4$c = {
319
319
  key: 0,
320
320
  class: "ui-v1-add-button__description"
321
321
  };
322
- const _sfc_main$Q = /* @__PURE__ */ defineComponent({
322
+ const _sfc_main$_ = /* @__PURE__ */ defineComponent({
323
323
  ...{
324
324
  inheritAttrs: false
325
325
  },
@@ -362,8 +362,8 @@ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
362
362
  height: unref(normalizeHeight)(__props.height)
363
363
  }
364
364
  }, _ctx.$attrs), [
365
- createElementVNode("span", _hoisted_2$l, [
366
- createElementVNode("span", _hoisted_3$g, [
365
+ createElementVNode("span", _hoisted_2$n, [
366
+ createElementVNode("span", _hoisted_3$h, [
367
367
  renderSlot(_ctx.$slots, "icon", {}, () => [
368
368
  createVNode(unref(IconAddCircle), {
369
369
  "aria-hidden": "true",
@@ -372,20 +372,20 @@ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
372
372
  ]),
373
373
  renderSlot(_ctx.$slots, "default")
374
374
  ]),
375
- !__props.small && _ctx.$slots.description ? (openBlock(), createElementBlock("span", _hoisted_4$b, [
375
+ !__props.small && _ctx.$slots.description ? (openBlock(), createElementBlock("span", _hoisted_4$c, [
376
376
  renderSlot(_ctx.$slots, "description")
377
377
  ])) : createCommentVNode("", true)
378
378
  ])
379
- ], 16, _hoisted_1$K);
379
+ ], 16, _hoisted_1$O);
380
380
  };
381
381
  }
382
382
  });
383
- const _hoisted_1$J = {
383
+ const _hoisted_1$N = {
384
384
  xmlns: "http://www.w3.org/2000/svg",
385
385
  viewBox: "0 0 24 24"
386
386
  };
387
- function render$h(_ctx, _cache) {
388
- return openBlock(), createElementBlock("svg", _hoisted_1$J, [..._cache[0] || (_cache[0] = [
387
+ function render$i(_ctx, _cache) {
388
+ return openBlock(), createElementBlock("svg", _hoisted_1$N, [..._cache[0] || (_cache[0] = [
389
389
  createElementVNode("path", {
390
390
  fill: "currentColor",
391
391
  "fill-rule": "evenodd",
@@ -394,34 +394,34 @@ function render$h(_ctx, _cache) {
394
394
  }, null, -1)
395
395
  ])]);
396
396
  }
397
- const IconHelpOutlined = { render: render$h };
398
- const _hoisted_1$I = {
397
+ const IconHelpOutlined = { render: render$i };
398
+ const _hoisted_1$M = {
399
399
  xmlns: "http://www.w3.org/2000/svg",
400
400
  viewBox: "0 0 18 8"
401
401
  };
402
- function render$g(_ctx, _cache) {
403
- return openBlock(), createElementBlock("svg", _hoisted_1$I, [..._cache[0] || (_cache[0] = [
402
+ function render$h(_ctx, _cache) {
403
+ return openBlock(), createElementBlock("svg", _hoisted_1$M, [..._cache[0] || (_cache[0] = [
404
404
  createElementVNode("g", { fill: "currentColor" }, [
405
405
  createElementVNode("path", { d: "M0 0v8h2.867q1.257-.011 1.935-.604.68-.594.68-1.748 0-.675-.33-1.143a1.54 1.54 0 0 0-.892-.62q.497-.21.775-.654.279-.45.279-1.039 0-1.077-.694-1.632Q3.926 0 2.584 0zm1.52 6.676v-2.16h1.393q1.048.016 1.048 1.116 0 .488-.303.77-.3.273-.836.274zm1.124-3.324H1.52V1.335h1.064q.628 0 .916.242.294.236.294.78 0 .972-1.15.995M7.503 6.352h2.665L10.679 8h1.616l-2.76-8H8.125L5.38 8h1.616zm2.254-1.336H7.913l.917-2.994zM12.362 8V0h2.27q.972 0 1.737.478.77.473 1.2 1.352.432.873.431 1.989v.368q0 1.115-.425 1.983a3.17 3.17 0 0 1-1.191 1.346A3.26 3.26 0 0 1 14.646 8zm1.52-6.665v5.34h.734q.891 0 1.363-.631.47-.632.481-1.808v-.423q0-1.22-.466-1.846-.466-.632-1.363-.632z" })
406
406
  ], -1)
407
407
  ])]);
408
408
  }
409
- const SpriteBAD = { render: render$g };
410
- const _hoisted_1$H = {
409
+ const SpriteBAD = { render: render$h };
410
+ const _hoisted_1$L = {
411
411
  xmlns: "http://www.w3.org/2000/svg",
412
412
  viewBox: "0 0 16 8"
413
413
  };
414
- function render$f(_ctx, _cache) {
415
- return openBlock(), createElementBlock("svg", _hoisted_1$H, [..._cache[0] || (_cache[0] = [
414
+ function render$g(_ctx, _cache) {
415
+ return openBlock(), createElementBlock("svg", _hoisted_1$L, [..._cache[0] || (_cache[0] = [
416
416
  createElementVNode("g", { fill: "currentColor" }, [
417
417
  createElementVNode("path", { d: "M3.373 6.016 5.058 0h1.704L4.175 8H2.577L0 0h1.7zM8.99 8H7.46V0H8.99zM11.84 8V5.181h1.343q1.322 0 2.067-.676.75-.681.75-1.857 0-.774-.342-1.379a2.3 2.3 0 0 0-.98-.94Q14.045 0 13.208 0H10.31v8zm1.368-4.154h-1.367v-2.51h1.403q.567.01.888.373t.322.95q0 .571-.322.88-.316.307-.924.307" })
418
418
  ], -1)
419
419
  ])]);
420
420
  }
421
- const SpriteVIP = { render: render$f };
421
+ const SpriteVIP = { render: render$g };
422
422
  const ImageWorkersKey = Symbol("$image.workers");
423
- const _hoisted_1$G = ["alt", "src"];
424
- const _sfc_main$P = /* @__PURE__ */ defineComponent({
423
+ const _hoisted_1$K = ["alt", "src"];
424
+ const _sfc_main$Z = /* @__PURE__ */ defineComponent({
425
425
  __name: "UiImage",
426
426
  props: {
427
427
  alt: {
@@ -457,7 +457,7 @@ const _sfc_main$P = /* @__PURE__ */ defineComponent({
457
457
  return openBlock(), createElementBlock("img", mergeProps({
458
458
  alt: __props.alt,
459
459
  src: url.value
460
- }, _ctx.$attrs), null, 16, _hoisted_1$G);
460
+ }, _ctx.$attrs), null, 16, _hoisted_1$K);
461
461
  };
462
462
  }
463
463
  });
@@ -476,12 +476,12 @@ const isURL = (href, loose = true) => {
476
476
  return false;
477
477
  }
478
478
  };
479
- var SIZE$8 = /* @__PURE__ */ ((SIZE2) => {
479
+ var SIZE$a = /* @__PURE__ */ ((SIZE2) => {
480
480
  SIZE2["XS"] = "xs";
481
481
  SIZE2["SM"] = "sm";
482
482
  SIZE2["LG"] = "lg";
483
483
  return SIZE2;
484
- })(SIZE$8 || {});
484
+ })(SIZE$a || {});
485
485
  var STATUS = /* @__PURE__ */ ((STATUS2) => {
486
486
  STATUS2["NONE"] = "";
487
487
  STATUS2["BUSY"] = "busy";
@@ -491,27 +491,27 @@ var STATUS = /* @__PURE__ */ ((STATUS2) => {
491
491
  return STATUS2;
492
492
  })(STATUS || {});
493
493
  const AvatarSizeKey = Symbol("UiAvatarSize");
494
- const _hoisted_1$F = {
494
+ const _hoisted_1$J = {
495
495
  key: 1,
496
496
  class: "ui-v1-avatar__unresolved"
497
497
  };
498
- const _hoisted_2$k = {
498
+ const _hoisted_2$m = {
499
499
  key: 3,
500
500
  class: "ui-v1-avatar__initials"
501
501
  };
502
- const _hoisted_3$f = {
502
+ const _hoisted_3$g = {
503
503
  key: 4,
504
504
  class: "ui-v1-avatar__labels"
505
505
  };
506
- const _hoisted_4$a = {
506
+ const _hoisted_4$b = {
507
507
  key: 0,
508
508
  class: "ui-v1-avatar__label ui-v1-avatar__label_vip"
509
509
  };
510
- const _hoisted_5$8 = {
510
+ const _hoisted_5$9 = {
511
511
  key: 1,
512
512
  class: "ui-v1-avatar__label ui-v1-avatar__label_bad"
513
513
  };
514
- const _sfc_main$O = /* @__PURE__ */ defineComponent({
514
+ const _sfc_main$Y = /* @__PURE__ */ defineComponent({
515
515
  __name: "UiAvatar",
516
516
  props: {
517
517
  /** Путь к изображению */
@@ -550,8 +550,8 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
550
550
  /** Размер изображения */
551
551
  size: {
552
552
  type: String,
553
- validator: (size) => Object.values(SIZE$8).includes(size),
554
- default: SIZE$8.SM
553
+ validator: (size) => Object.values(SIZE$a).includes(size),
554
+ default: SIZE$a.SM
555
555
  },
556
556
  optimize: {
557
557
  type: [Boolean, Object],
@@ -579,9 +579,9 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
579
579
  const processing = typeof props.optimize === "object" ? props.optimize : {};
580
580
  return {
581
581
  resize: processing.resize ?? {
582
- [SIZE$8.XS]: "48x-",
583
- [SIZE$8.SM]: "72x-",
584
- [SIZE$8.LG]: "104x-"
582
+ [SIZE$a.XS]: "48x-",
583
+ [SIZE$a.SM]: "72x-",
584
+ [SIZE$a.LG]: "104x-"
585
585
  }[size.value],
586
586
  crop: processing.crop
587
587
  };
@@ -598,7 +598,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
598
598
  }
599
599
  }, _ctx.$attrs), {
600
600
  default: withCtx(() => [
601
- __props.src ? (openBlock(), createBlock(_sfc_main$P, {
601
+ __props.src ? (openBlock(), createBlock(_sfc_main$Z, {
602
602
  key: 0,
603
603
  src: __props.src,
604
604
  resize: optimization.value.resize,
@@ -607,7 +607,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
607
607
  draggable: "false",
608
608
  onLoad: _cache[0] || (_cache[0] = ($event) => loaded.value = true),
609
609
  onError: _cache[1] || (_cache[1] = ($event) => loaded.value = false)
610
- }, null, 8, ["src", "resize", "crop"])) : !__props.src && unresolved.value ? (openBlock(), createElementBlock("div", _hoisted_1$F, [
610
+ }, null, 8, ["src", "resize", "crop"])) : !__props.src && unresolved.value ? (openBlock(), createElementBlock("div", _hoisted_1$J, [
611
611
  createVNode(unref(IconHelpOutlined))
612
612
  ])) : createCommentVNode("", true),
613
613
  __props.status && !(__props.vip || __props.bad) ? (openBlock(), createElementBlock("span", {
@@ -618,16 +618,16 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
618
618
  [`ui-v1-avatar__status_${__props.status}`]: __props.status
619
619
  })
620
620
  }, null, 2)) : createCommentVNode("", true),
621
- !(unresolved.value || loaded.value) ? (openBlock(), createElementBlock("div", _hoisted_2$k, [
621
+ !(unresolved.value || loaded.value) ? (openBlock(), createElementBlock("div", _hoisted_2$m, [
622
622
  renderSlot(_ctx.$slots, "default", {}, () => [
623
623
  createTextVNode(toDisplayString(initials.value), 1)
624
624
  ])
625
625
  ])) : createCommentVNode("", true),
626
- __props.vip || __props.bad ? (openBlock(), createElementBlock("div", _hoisted_3$f, [
627
- __props.vip ? (openBlock(), createElementBlock("span", _hoisted_4$a, [
626
+ __props.vip || __props.bad ? (openBlock(), createElementBlock("div", _hoisted_3$g, [
627
+ __props.vip ? (openBlock(), createElementBlock("span", _hoisted_4$b, [
628
628
  createVNode(unref(SpriteVIP), { class: "ui-v1-avatar__vip" })
629
629
  ])) : createCommentVNode("", true),
630
- __props.bad ? (openBlock(), createElementBlock("span", _hoisted_5$8, [
630
+ __props.bad ? (openBlock(), createElementBlock("span", _hoisted_5$9, [
631
631
  createVNode(unref(SpriteBAD), { class: "ui-v1-avatar__bad" })
632
632
  ])) : createCommentVNode("", true)
633
633
  ])) : createCommentVNode("", true)
@@ -637,7 +637,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
637
637
  };
638
638
  }
639
639
  });
640
- const _sfc_main$N = /* @__PURE__ */ defineComponent({
640
+ const _sfc_main$X = /* @__PURE__ */ defineComponent({
641
641
  __name: "UiAvatarList",
642
642
  props: {
643
643
  /** Список аватарок пользователей */
@@ -648,8 +648,8 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
648
648
  /** Размер аватарок */
649
649
  size: {
650
650
  type: String,
651
- validator: (size) => Object.values(SIZE$8).includes(size),
652
- default: SIZE$8.SM
651
+ validator: (size) => Object.values(SIZE$a).includes(size),
652
+ default: SIZE$a.SM
653
653
  }
654
654
  },
655
655
  setup(__props) {
@@ -664,7 +664,7 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
664
664
  key: index,
665
665
  class: "ui-v1-avatar-list__item"
666
666
  }, [
667
- createVNode(_sfc_main$O, {
667
+ createVNode(_sfc_main$Y, {
668
668
  src: avatar.src,
669
669
  name: avatar.name
670
670
  }, null, 8, ["src", "name"])
@@ -711,27 +711,27 @@ const useElementRef = () => {
711
711
  provide(ElementRefKey, ref(null));
712
712
  return el;
713
713
  };
714
- var APPEARANCE$3 = /* @__PURE__ */ ((APPEARANCE2) => {
714
+ var APPEARANCE$5 = /* @__PURE__ */ ((APPEARANCE2) => {
715
715
  APPEARANCE2["OUTLINED"] = "outlined";
716
716
  APPEARANCE2["PRIMARY"] = "primary";
717
717
  APPEARANCE2["SECONDARY"] = "secondary";
718
718
  APPEARANCE2["TERTIARY"] = "tertiary";
719
719
  return APPEARANCE2;
720
- })(APPEARANCE$3 || {});
721
- var SIZE$7 = /* @__PURE__ */ ((SIZE2) => {
720
+ })(APPEARANCE$5 || {});
721
+ var SIZE$9 = /* @__PURE__ */ ((SIZE2) => {
722
722
  SIZE2["LG"] = "lg";
723
723
  SIZE2["MD"] = "md";
724
724
  SIZE2["SM"] = "sm";
725
725
  SIZE2["XS"] = "xs";
726
726
  return SIZE2;
727
- })(SIZE$7 || {});
727
+ })(SIZE$9 || {});
728
728
  var VARIANT = /* @__PURE__ */ ((VARIANT2) => {
729
729
  VARIANT2["DEFAULT"] = "default";
730
730
  VARIANT2["SUCCESS"] = "success";
731
731
  VARIANT2["DANGER"] = "danger";
732
732
  return VARIANT2;
733
733
  })(VARIANT || {});
734
- const _sfc_main$M = defineComponent({
734
+ const _sfc_main$W = defineComponent({
735
735
  props: {
736
736
  /** Устанавливает тип кнопки */
737
737
  type: {
@@ -747,7 +747,7 @@ const _sfc_main$M = defineComponent({
747
747
  /** Регулирует внешний вид кнопки: primary, secondary, tertiary or outlined */
748
748
  appearance: {
749
749
  type: String,
750
- default: APPEARANCE$3.PRIMARY
750
+ default: APPEARANCE$5.PRIMARY
751
751
  },
752
752
  /** Регулирует цветовую схему кнопки: default, success or danger */
753
753
  variant: {
@@ -757,7 +757,7 @@ const _sfc_main$M = defineComponent({
757
757
  /** Размер */
758
758
  size: {
759
759
  type: String,
760
- default: SIZE$7.SM
760
+ default: SIZE$9.SM
761
761
  },
762
762
  /** Если кнопка активна */
763
763
  active: {
@@ -817,8 +817,8 @@ const _sfc_main$M = defineComponent({
817
817
  };
818
818
  }
819
819
  });
820
- const _hoisted_1$E = { class: "ui-v1-calendar-cell__content" };
821
- const _sfc_main$L = /* @__PURE__ */ defineComponent({
820
+ const _hoisted_1$I = { class: "ui-v1-calendar-cell__content" };
821
+ const _sfc_main$V = /* @__PURE__ */ defineComponent({
822
822
  __name: "UiCalendarCell",
823
823
  props: {
824
824
  current: {
@@ -863,32 +863,32 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
863
863
  "aria-hidden": "true",
864
864
  class: "ui-v1-calendar-cell__backdrop"
865
865
  }, null, -1)),
866
- createElementVNode("div", _hoisted_1$E, [
866
+ createElementVNode("div", _hoisted_1$I, [
867
867
  renderSlot(_ctx.$slots, "default")
868
868
  ])
869
869
  ], 16);
870
870
  };
871
871
  }
872
872
  });
873
- const _hoisted_1$D = {
873
+ const _hoisted_1$H = {
874
874
  xmlns: "http://www.w3.org/2000/svg",
875
875
  viewBox: "0 0 24 24"
876
876
  };
877
- function render$e(_ctx, _cache) {
878
- return openBlock(), createElementBlock("svg", _hoisted_1$D, [..._cache[0] || (_cache[0] = [
877
+ function render$f(_ctx, _cache) {
878
+ return openBlock(), createElementBlock("svg", _hoisted_1$H, [..._cache[0] || (_cache[0] = [
879
879
  createElementVNode("path", {
880
880
  fill: "currentColor",
881
881
  d: "M15.78 11.28c.14.14.22.331.22.53v.38a.77.77 0 0 1-.22.53l-5.14 5.13a.5.5 0 0 1-.71 0l-.71-.71a.49.49 0 0 1 0-.7L13.67 12 9.22 7.56a.5.5 0 0 1 0-.71l.71-.7a.5.5 0 0 1 .71 0z"
882
882
  }, null, -1)
883
883
  ])]);
884
884
  }
885
- const IconChevronRight = { render: render$e };
886
- const _hoisted_1$C = {
885
+ const IconChevronRight = { render: render$f };
886
+ const _hoisted_1$G = {
887
887
  key: 1,
888
888
  "aria-hidden": "true",
889
889
  class: "ui-v1-calendar-navigation__placeholder"
890
890
  };
891
- const _sfc_main$K = /* @__PURE__ */ defineComponent({
891
+ const _sfc_main$U = /* @__PURE__ */ defineComponent({
892
892
  __name: "UiCalendarDirectionButton",
893
893
  props: {
894
894
  label: {
@@ -908,7 +908,7 @@ const _sfc_main$K = /* @__PURE__ */ defineComponent({
908
908
  emits: ["click"],
909
909
  setup(__props) {
910
910
  return (_ctx, _cache) => {
911
- return !__props.absent ? (openBlock(), createBlock(_sfc_main$M, {
911
+ return !__props.absent ? (openBlock(), createBlock(_sfc_main$W, {
912
912
  key: 0,
913
913
  "aria-label": __props.label,
914
914
  appearance: "tertiary",
@@ -925,15 +925,15 @@ const _sfc_main$K = /* @__PURE__ */ defineComponent({
925
925
  }, null, 8, ["class"])
926
926
  ]),
927
927
  _: 1
928
- }, 8, ["aria-label"])) : (openBlock(), createElementBlock("div", _hoisted_1$C));
928
+ }, 8, ["aria-label"])) : (openBlock(), createElementBlock("div", _hoisted_1$G));
929
929
  };
930
930
  }
931
931
  });
932
- const _hoisted_1$B = {
932
+ const _hoisted_1$F = {
933
933
  key: 1,
934
934
  class: "ui-v1-calendar-navigation__text"
935
935
  };
936
- const _sfc_main$J = /* @__PURE__ */ defineComponent({
936
+ const _sfc_main$T = /* @__PURE__ */ defineComponent({
937
937
  __name: "UiCalendarSwitchButton",
938
938
  props: {
939
939
  locked: {
@@ -944,7 +944,7 @@ const _sfc_main$J = /* @__PURE__ */ defineComponent({
944
944
  emits: ["click"],
945
945
  setup(__props) {
946
946
  return (_ctx, _cache) => {
947
- return !__props.locked ? (openBlock(), createBlock(_sfc_main$M, {
947
+ return !__props.locked ? (openBlock(), createBlock(_sfc_main$W, {
948
948
  key: 0,
949
949
  appearance: "tertiary",
950
950
  class: "ui-v1-calendar-navigation__switch-button",
@@ -954,17 +954,17 @@ const _sfc_main$J = /* @__PURE__ */ defineComponent({
954
954
  renderSlot(_ctx.$slots, "default")
955
955
  ]),
956
956
  _: 3
957
- })) : (openBlock(), createElementBlock("div", _hoisted_1$B, [
957
+ })) : (openBlock(), createElementBlock("div", _hoisted_1$F, [
958
958
  renderSlot(_ctx.$slots, "default")
959
959
  ]));
960
960
  };
961
961
  }
962
962
  });
963
- var APPEARANCE$2 = /* @__PURE__ */ ((APPEARANCE2) => {
963
+ var APPEARANCE$4 = /* @__PURE__ */ ((APPEARANCE2) => {
964
964
  APPEARANCE2["SINGLE"] = "single";
965
965
  APPEARANCE2["DOUBLE"] = "double";
966
966
  return APPEARANCE2;
967
- })(APPEARANCE$2 || {});
967
+ })(APPEARANCE$4 || {});
968
968
  var TYPE$2 = /* @__PURE__ */ ((TYPE2) => {
969
969
  TYPE2["SINGLE"] = "single";
970
970
  TYPE2["RANGE"] = "range";
@@ -1379,11 +1379,11 @@ const _i18n$6 = define({
1379
1379
  "ru-RU": messages_ru_RU$6
1380
1380
  }
1381
1381
  });
1382
- const _hoisted_1$A = { class: "ui-v1-calendar-wrapper" };
1383
- const _hoisted_2$j = ["aria-label"];
1384
- const _hoisted_3$e = ["id"];
1385
- const _hoisted_4$9 = ["aria-labelledby", "aria-multiselectable"];
1386
- const _hoisted_5$7 = {
1382
+ const _hoisted_1$E = { class: "ui-v1-calendar-wrapper" };
1383
+ const _hoisted_2$l = ["aria-label"];
1384
+ const _hoisted_3$f = ["id"];
1385
+ const _hoisted_4$a = ["aria-labelledby", "aria-multiselectable"];
1386
+ const _hoisted_5$8 = {
1387
1387
  class: "ui-v1-calendar__row",
1388
1388
  role: "row"
1389
1389
  };
@@ -1402,7 +1402,7 @@ const _hoisted_16 = {
1402
1402
  "aria-atomic": "true",
1403
1403
  "aria-live": "polite"
1404
1404
  };
1405
- const _sfc_main$I = /* @__PURE__ */ defineComponent({
1405
+ const _sfc_main$S = /* @__PURE__ */ defineComponent({
1406
1406
  __name: "UiCalendar",
1407
1407
  props: {
1408
1408
  /** Текущая дата */
@@ -1420,8 +1420,8 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
1420
1420
  /** Одиночный или двойной вид */
1421
1421
  appearance: {
1422
1422
  type: String,
1423
- validator: (appearance) => Object.values(APPEARANCE$2).includes(appearance),
1424
- default: APPEARANCE$2.SINGLE
1423
+ validator: (appearance) => Object.values(APPEARANCE$4).includes(appearance),
1424
+ default: APPEARANCE$4.SINGLE
1425
1425
  },
1426
1426
  /** Первый день недели */
1427
1427
  firstDayOfWeek: {
@@ -1561,7 +1561,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
1561
1561
  });
1562
1562
  const viewsComputed = computed(() => {
1563
1563
  const view = [views[0]];
1564
- if (props.appearance === APPEARANCE$2.DOUBLE) {
1564
+ if (props.appearance === APPEARANCE$4.DOUBLE) {
1565
1565
  view.push(views[1]);
1566
1566
  }
1567
1567
  return view.map(({ date, decade, mode }) => ({
@@ -1573,7 +1573,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
1573
1573
  });
1574
1574
  const viewsIsSynchronized = computed(() => {
1575
1575
  const [first, last] = views;
1576
- return props.appearance === APPEARANCE$2.DOUBLE && first.mode === last.mode && first.date.inSameMonth(new CalendarDay(last.date.year, last.date.month - 1));
1576
+ return props.appearance === APPEARANCE$4.DOUBLE && first.mode === last.mode && first.date.inSameMonth(new CalendarDay(last.date.year, last.date.month - 1));
1577
1577
  });
1578
1578
  const range = computed(() => {
1579
1579
  const [first, last] = valueComputed.value;
@@ -1997,7 +1997,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
1997
1997
  return date.inSameMonth(views[viewIndex].date);
1998
1998
  };
1999
1999
  const inSelectedView = (date) => {
2000
- return inSelectedMonth(date, 0) || inSelectedMonth(date, 1) && props.appearance === APPEARANCE$2.DOUBLE;
2000
+ return inSelectedMonth(date, 0) || inSelectedMonth(date, 1) && props.appearance === APPEARANCE$4.DOUBLE;
2001
2001
  };
2002
2002
  const inRangeDate = (date) => {
2003
2003
  const [min2, max2] = range.value;
@@ -2020,7 +2020,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2020
2020
  ));
2021
2021
  };
2022
2022
  return (_ctx, _cache) => {
2023
- return openBlock(), createElementBlock("div", _hoisted_1$A, [
2023
+ return openBlock(), createElementBlock("div", _hoisted_1$E, [
2024
2024
  (openBlock(true), createElementBlock(Fragment, null, renderList(viewsComputed.value, (view, index) => {
2025
2025
  return openBlock(), createElementBlock("div", {
2026
2026
  key: "view-" + index + "-" + view.date,
@@ -2031,12 +2031,12 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2031
2031
  class: "ui-v1-calendar-navigation",
2032
2032
  "aria-label": i18n.value.t("monthNavigation")
2033
2033
  }, [
2034
- createVNode(_sfc_main$K, {
2034
+ createVNode(_sfc_main$U, {
2035
2035
  absent: index === 1 && viewsIsSynchronized.value && views[0].mode === unref(VIEW_MODE).DAYS,
2036
2036
  label: i18n.value.t("prevMonth"),
2037
2037
  onClick: ($event) => showPrevMonth(index)
2038
2038
  }, null, 8, ["absent", "label", "onClick"]),
2039
- createVNode(_sfc_main$J, {
2039
+ createVNode(_sfc_main$T, {
2040
2040
  onClick: ($event) => views[index].mode = unref(VIEW_MODE).MONTHS
2041
2041
  }, {
2042
2042
  default: withCtx(() => [
@@ -2044,17 +2044,17 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2044
2044
  id: getGridLabelId(index, unref(VIEW_MODE).DAYS),
2045
2045
  "aria-atomic": "true",
2046
2046
  "aria-live": "polite"
2047
- }, toDisplayString(i18n.value.t(`months.${view.date.month - 1}`)) + " " + toDisplayString(view.date.year), 9, _hoisted_3$e)
2047
+ }, toDisplayString(i18n.value.t(`months.${view.date.month - 1}`)) + " " + toDisplayString(view.date.year), 9, _hoisted_3$f)
2048
2048
  ]),
2049
2049
  _: 2
2050
2050
  }, 1032, ["onClick"]),
2051
- createVNode(_sfc_main$K, {
2051
+ createVNode(_sfc_main$U, {
2052
2052
  absent: index === 0 && viewsIsSynchronized.value && views[1].mode === unref(VIEW_MODE).DAYS,
2053
2053
  label: i18n.value.t("nextMonth"),
2054
2054
  direction: "next",
2055
2055
  onClick: ($event) => showNextMonth(index)
2056
2056
  }, null, 8, ["absent", "label", "onClick"])
2057
- ], 8, _hoisted_2$j),
2057
+ ], 8, _hoisted_2$l),
2058
2058
  createElementVNode("div", {
2059
2059
  class: "ui-v1-calendar__table",
2060
2060
  role: "grid",
@@ -2062,7 +2062,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2062
2062
  "aria-describedby": dayGridHintId,
2063
2063
  "aria-multiselectable": props.type === unref(TYPE$2).RANGE ? "true" : void 0
2064
2064
  }, [
2065
- createElementVNode("div", _hoisted_5$7, [
2065
+ createElementVNode("div", _hoisted_5$8, [
2066
2066
  (openBlock(true), createElementBlock(Fragment, null, renderList(weekdaysNames.value, (name, i) => {
2067
2067
  return openBlock(), createElementBlock("div", {
2068
2068
  key: "weekday-" + i,
@@ -2082,7 +2082,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2082
2082
  role: "row"
2083
2083
  }, [
2084
2084
  (openBlock(true), createElementBlock(Fragment, null, renderList(week, (day) => {
2085
- return openBlock(), createBlock(_sfc_main$L, {
2085
+ return openBlock(), createBlock(_sfc_main$V, {
2086
2086
  key: "day-" + index + "-" + day,
2087
2087
  class: normalizeClass({
2088
2088
  "ui-v1-calendar__cell-day": true,
@@ -2119,18 +2119,18 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2119
2119
  }), 128))
2120
2120
  ], 2);
2121
2121
  }), 128))
2122
- ], 8, _hoisted_4$9)
2122
+ ], 8, _hoisted_4$a)
2123
2123
  ], 64)) : createCommentVNode("", true),
2124
2124
  view.mode === unref(VIEW_MODE).MONTHS ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
2125
2125
  createElementVNode("nav", {
2126
2126
  class: "ui-v1-calendar-navigation",
2127
2127
  "aria-label": i18n.value.t("yearNavigation")
2128
2128
  }, [
2129
- createVNode(_sfc_main$K, {
2129
+ createVNode(_sfc_main$U, {
2130
2130
  label: i18n.value.t("prevYear"),
2131
2131
  onClick: ($event) => showYear(view.date.year - 1, index)
2132
2132
  }, null, 8, ["label", "onClick"]),
2133
- createVNode(_sfc_main$J, {
2133
+ createVNode(_sfc_main$T, {
2134
2134
  onClick: ($event) => views[index].mode = unref(VIEW_MODE).YEARS
2135
2135
  }, {
2136
2136
  default: withCtx(() => [
@@ -2142,7 +2142,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2142
2142
  ]),
2143
2143
  _: 2
2144
2144
  }, 1032, ["onClick"]),
2145
- createVNode(_sfc_main$K, {
2145
+ createVNode(_sfc_main$U, {
2146
2146
  label: i18n.value.t("nextYear"),
2147
2147
  direction: "next",
2148
2148
  onClick: ($event) => showYear(view.date.year + 1, index)
@@ -2160,7 +2160,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2160
2160
  role: "row"
2161
2161
  }, [
2162
2162
  (openBlock(true), createElementBlock(Fragment, null, renderList(months2, (month) => {
2163
- return openBlock(), createBlock(_sfc_main$L, {
2163
+ return openBlock(), createBlock(_sfc_main$V, {
2164
2164
  key: "month-" + month.month,
2165
2165
  class: normalizeClass({ "ui-v1-calendar__cell-month": true }),
2166
2166
  current: isCurrentMonth(month.month, index),
@@ -2191,11 +2191,11 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2191
2191
  class: "ui-v1-calendar-navigation",
2192
2192
  "aria-label": i18n.value.t("decadeNavigation")
2193
2193
  }, [
2194
- createVNode(_sfc_main$K, {
2194
+ createVNode(_sfc_main$U, {
2195
2195
  label: i18n.value.t("prevDecade"),
2196
2196
  onClick: ($event) => showPrevDecade(index)
2197
2197
  }, null, 8, ["label", "onClick"]),
2198
- createVNode(_sfc_main$J, {
2198
+ createVNode(_sfc_main$T, {
2199
2199
  locked: "",
2200
2200
  onClick: ($event) => views[index].mode = unref(VIEW_MODE).MONTHS
2201
2201
  }, {
@@ -2208,7 +2208,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2208
2208
  ]),
2209
2209
  _: 2
2210
2210
  }, 1032, ["onClick"]),
2211
- createVNode(_sfc_main$K, {
2211
+ createVNode(_sfc_main$U, {
2212
2212
  label: i18n.value.t("nextDecade"),
2213
2213
  direction: "next",
2214
2214
  onClick: ($event) => showNextDecade(index)
@@ -2226,7 +2226,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2226
2226
  role: "row"
2227
2227
  }, [
2228
2228
  (openBlock(true), createElementBlock(Fragment, null, renderList(years, (year) => {
2229
- return openBlock(), createBlock(_sfc_main$L, {
2229
+ return openBlock(), createBlock(_sfc_main$V, {
2230
2230
  key: "year-" + year,
2231
2231
  class: normalizeClass({ "ui-v1-calendar__cell-year": true }),
2232
2232
  current: isCurrentYear(year),
@@ -2261,12 +2261,12 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
2261
2261
  };
2262
2262
  }
2263
2263
  });
2264
- const _hoisted_1$z = {
2264
+ const _hoisted_1$D = {
2265
2265
  xmlns: "http://www.w3.org/2000/svg",
2266
2266
  viewBox: "0 0 24 24"
2267
2267
  };
2268
- function render$d(_ctx, _cache) {
2269
- return openBlock(), createElementBlock("svg", _hoisted_1$z, [..._cache[0] || (_cache[0] = [
2268
+ function render$e(_ctx, _cache) {
2269
+ return openBlock(), createElementBlock("svg", _hoisted_1$D, [..._cache[0] || (_cache[0] = [
2270
2270
  createElementVNode("path", {
2271
2271
  fill: "currentColor",
2272
2272
  "fill-rule": "evenodd",
@@ -2275,7 +2275,7 @@ function render$d(_ctx, _cache) {
2275
2275
  }, null, -1)
2276
2276
  ])]);
2277
2277
  }
2278
- const IconDone = { render: render$d };
2278
+ const IconDone = { render: render$e };
2279
2279
  const expect = (value) => ({
2280
2280
  toBeOneOf(variants) {
2281
2281
  return Object.values(variants).includes(value);
@@ -2303,11 +2303,11 @@ const without = (obj, exclude) => {
2303
2303
  });
2304
2304
  return newObj;
2305
2305
  };
2306
- const _hoisted_1$y = ["id", "value", "name", "disabled", "checked"];
2307
- const _hoisted_2$i = { class: "ui-v1-checkbox__checkmark" };
2308
- let counter$2 = 0;
2306
+ const _hoisted_1$C = ["id", "value", "name", "disabled", "checked"];
2307
+ const _hoisted_2$k = { class: "ui-v1-checkbox__checkmark" };
2308
+ let counter$3 = 0;
2309
2309
  const __default__$2 = {};
2310
- const _sfc_main$H = /* @__PURE__ */ defineComponent({
2310
+ const _sfc_main$R = /* @__PURE__ */ defineComponent({
2311
2311
  ...__default__$2,
2312
2312
  __name: "UiCheckbox",
2313
2313
  props: {
@@ -2319,7 +2319,7 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
2319
2319
  /** Атрибут name нативного поля ввода */
2320
2320
  name: {
2321
2321
  type: String,
2322
- default: () => "ui-v1-checkbox-" + ++counter$2
2322
+ default: () => "ui-v1-checkbox-" + ++counter$3
2323
2323
  },
2324
2324
  /** Значение модели используемое с директивой v-model */
2325
2325
  model: {
@@ -2414,8 +2414,8 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
2414
2414
  type: "checkbox",
2415
2415
  class: "ui-v1-checkbox__input",
2416
2416
  onChange
2417
- }), null, 16, _hoisted_1$y),
2418
- createElementVNode("span", _hoisted_2$i, [
2417
+ }), null, 16, _hoisted_1$C),
2418
+ createElementVNode("span", _hoisted_2$k, [
2419
2419
  checked.value && !__props.indeterminate ? (openBlock(), createBlock(unref(IconDone), {
2420
2420
  key: 0,
2421
2421
  class: "ui-v1-checkbox__checkmark-icon"
@@ -2430,15 +2430,15 @@ var COLLAPSE_BEHAVIOUR = /* @__PURE__ */ ((COLLAPSE_BEHAVIOUR2) => {
2430
2430
  COLLAPSE_BEHAVIOUR2["HIDE"] = "hide";
2431
2431
  return COLLAPSE_BEHAVIOUR2;
2432
2432
  })(COLLAPSE_BEHAVIOUR || {});
2433
- const _hoisted_1$x = {
2433
+ const _hoisted_1$B = {
2434
2434
  key: 0,
2435
2435
  class: "ui-v1-collapse"
2436
2436
  };
2437
- const _hoisted_2$h = {
2437
+ const _hoisted_2$j = {
2438
2438
  key: 1,
2439
2439
  class: "ui-v1-collapse"
2440
2440
  };
2441
- const _sfc_main$G = /* @__PURE__ */ defineComponent({
2441
+ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
2442
2442
  __name: "UiCollapse",
2443
2443
  props: {
2444
2444
  /** Свёрнут/Развёрнут */
@@ -2556,12 +2556,12 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
2556
2556
  }, {
2557
2557
  default: withCtx(() => [
2558
2558
  __props.collapseBehaviour === unref(COLLAPSE_BEHAVIOUR).DISPOSE ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
2559
- __props.expanded ? (openBlock(), createElementBlock("div", _hoisted_1$x, [
2559
+ __props.expanded ? (openBlock(), createElementBlock("div", _hoisted_1$B, [
2560
2560
  createElementVNode("div", null, [
2561
2561
  renderSlot(_ctx.$slots, "default")
2562
2562
  ])
2563
2563
  ])) : createCommentVNode("", true)
2564
- ], 64)) : withDirectives((openBlock(), createElementBlock("div", _hoisted_2$h, [
2564
+ ], 64)) : withDirectives((openBlock(), createElementBlock("div", _hoisted_2$j, [
2565
2565
  createElementVNode("div", null, [
2566
2566
  renderSlot(_ctx.$slots, "default")
2567
2567
  ])
@@ -2584,20 +2584,20 @@ var COLOR = /* @__PURE__ */ ((COLOR2) => {
2584
2584
  COLOR2["YELLOW"] = "yellow";
2585
2585
  return COLOR2;
2586
2586
  })(COLOR || {});
2587
- var SIZE$6 = /* @__PURE__ */ ((SIZE2) => {
2587
+ var SIZE$8 = /* @__PURE__ */ ((SIZE2) => {
2588
2588
  SIZE2["SM"] = "sm";
2589
2589
  SIZE2["MD"] = "md";
2590
2590
  return SIZE2;
2591
- })(SIZE$6 || {});
2591
+ })(SIZE$8 || {});
2592
2592
  const CollapseGroupRegisterKey = Symbol("UiCollapseGroup_register");
2593
2593
  const CollapseGroupUnregisterKey = Symbol("UiCollapseGroup_unregister");
2594
2594
  const CollapseGroupExpandKey = Symbol("UiCollapseGroup_expand");
2595
2595
  const CollapseGroupCollapseKey = Symbol("UiCollapseGroup_collapse");
2596
- const _hoisted_1$w = ["id", "aria-labelledby"];
2597
- const _hoisted_2$g = ["id", "disabled", "aria-controls", "aria-expanded", "aria-disabled"];
2598
- const _hoisted_3$d = { class: "ui-v1-collapse-box__icon-sprite" };
2599
- const _hoisted_4$8 = { class: "ui-v1-collapse-box__header-content" };
2600
- const _hoisted_5$6 = ["id"];
2596
+ const _hoisted_1$A = ["id", "aria-labelledby"];
2597
+ const _hoisted_2$i = ["id", "disabled", "aria-controls", "aria-expanded", "aria-disabled"];
2598
+ const _hoisted_3$e = { class: "ui-v1-collapse-box__icon-sprite" };
2599
+ const _hoisted_4$9 = { class: "ui-v1-collapse-box__header-content" };
2600
+ const _hoisted_5$7 = ["id"];
2601
2601
  const _hoisted_6$5 = ["id"];
2602
2602
  const _hoisted_7$3 = {
2603
2603
  key: 1,
@@ -2609,7 +2609,7 @@ const _hoisted_10 = {
2609
2609
  key: 0,
2610
2610
  class: "ui-v1-collapse-box__footer"
2611
2611
  };
2612
- const _sfc_main$F = /* @__PURE__ */ defineComponent({
2612
+ const _sfc_main$P = /* @__PURE__ */ defineComponent({
2613
2613
  ...{
2614
2614
  inheritAttrs: false
2615
2615
  },
@@ -2665,8 +2665,8 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
2665
2665
  /** Размер иконки */
2666
2666
  iconSize: {
2667
2667
  type: String,
2668
- default: SIZE$6.SM,
2669
- validator: (value) => Object.values(SIZE$6).includes(value)
2668
+ default: SIZE$8.SM,
2669
+ validator: (value) => Object.values(SIZE$8).includes(value)
2670
2670
  },
2671
2671
  /** Рамка вместо тени */
2672
2672
  bordered: {
@@ -2832,17 +2832,17 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
2832
2832
  [`ui-v1-collapse-box__icon_${__props.iconSize}`]: __props.iconSize
2833
2833
  })
2834
2834
  }, [
2835
- createElementVNode("span", _hoisted_3$d, [
2835
+ createElementVNode("span", _hoisted_3$e, [
2836
2836
  renderSlot(_ctx.$slots, "icon")
2837
2837
  ])
2838
2838
  ], 2)) : createCommentVNode("", true),
2839
- createElementVNode("span", _hoisted_4$8, [
2839
+ createElementVNode("span", _hoisted_4$9, [
2840
2840
  createElementVNode("span", {
2841
2841
  id: boxId.value + "-title",
2842
2842
  class: "ui-v1-collapse-box__title"
2843
2843
  }, [
2844
2844
  renderSlot(_ctx.$slots, "title")
2845
- ], 8, _hoisted_5$6),
2845
+ ], 8, _hoisted_5$7),
2846
2846
  _ctx.$slots["description"] ? (openBlock(), createElementBlock("span", {
2847
2847
  key: 0,
2848
2848
  id: boxId.value + "-description",
@@ -2854,9 +2854,9 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
2854
2854
  !__props.disabled ? (openBlock(), createElementBlock("span", _hoisted_7$3, [
2855
2855
  createVNode(unref(IconChevronRight), { class: "ui-v1-collapse-box__arrow" })
2856
2856
  ])) : createCommentVNode("", true)
2857
- ], 8, _hoisted_2$g)
2857
+ ], 8, _hoisted_2$i)
2858
2858
  ], 2),
2859
- createVNode(_sfc_main$G, {
2859
+ createVNode(_sfc_main$Q, {
2860
2860
  id: boxId.value + "-collapse",
2861
2861
  "aria-hidden": !state.expanded ? "true" : "false",
2862
2862
  "aria-labelledby": boxId.value + "-button",
@@ -2891,11 +2891,11 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
2891
2891
  ]),
2892
2892
  _: 3
2893
2893
  }, 8, ["id", "aria-hidden", "aria-labelledby", "duration", "expanded", "collapse-behaviour"])
2894
- ], 16, _hoisted_1$w);
2894
+ ], 16, _hoisted_1$A);
2895
2895
  };
2896
2896
  }
2897
2897
  });
2898
- const _sfc_main$E = /* @__PURE__ */ defineComponent({
2898
+ const _sfc_main$O = /* @__PURE__ */ defineComponent({
2899
2899
  __name: "UiCollapseGroup",
2900
2900
  props: {
2901
2901
  /**
@@ -3013,19 +3013,19 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
3013
3013
  };
3014
3014
  }
3015
3015
  });
3016
- const _hoisted_1$v = {
3016
+ const _hoisted_1$z = {
3017
3017
  xmlns: "http://www.w3.org/2000/svg",
3018
3018
  viewBox: "0 0 24 24"
3019
3019
  };
3020
- function render$c(_ctx, _cache) {
3021
- return openBlock(), createElementBlock("svg", _hoisted_1$v, [..._cache[0] || (_cache[0] = [
3020
+ function render$d(_ctx, _cache) {
3021
+ return openBlock(), createElementBlock("svg", _hoisted_1$z, [..._cache[0] || (_cache[0] = [
3022
3022
  createElementVNode("path", {
3023
3023
  fill: "currentColor",
3024
3024
  d: "M18 16V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M4 4h12v12H4zm16 14V6a2 2 0 0 1 2 2v10a4 4 0 0 1-4 4H8a2 2 0 0 1-2-2h12a2 2 0 0 0 2-2"
3025
3025
  }, null, -1)
3026
3026
  ])]);
3027
3027
  }
3028
- const IconCopy = { render: render$c };
3028
+ const IconCopy = { render: render$d };
3029
3029
  const sides$1 = ["top", "right", "bottom", "left"];
3030
3030
  const min = Math.min;
3031
3031
  const max = Math.max;
@@ -4692,8 +4692,8 @@ if (typeof document !== "undefined" && typeof window !== "undefined") {
4692
4692
  window.addEventListener("click", onGlobalEvent("click"), true);
4693
4693
  }
4694
4694
  }
4695
- const _hoisted_1$u = { class: "ui-v1-popper__content" };
4696
- const _sfc_main$D = /* @__PURE__ */ defineComponent({
4695
+ const _hoisted_1$y = { class: "ui-v1-popper__content" };
4696
+ const _sfc_main$N = /* @__PURE__ */ defineComponent({
4697
4697
  __name: "UiPopper",
4698
4698
  props: {
4699
4699
  /** Флаг для ручного переключения видимости */
@@ -5039,7 +5039,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
5039
5039
  ref: arrow2,
5040
5040
  class: "ui-v1-popper__arrow"
5041
5041
  }, null, 512)) : createCommentVNode("", true),
5042
- createElementVNode("div", _hoisted_1$u, [
5042
+ createElementVNode("div", _hoisted_1$y, [
5043
5043
  renderSlot(_ctx.$slots, "default")
5044
5044
  ])
5045
5045
  ], 16)
@@ -5047,7 +5047,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
5047
5047
  };
5048
5048
  }
5049
5049
  });
5050
- const _sfc_main$C = /* @__PURE__ */ defineComponent({
5050
+ const _sfc_main$M = /* @__PURE__ */ defineComponent({
5051
5051
  __name: "UiTooltip",
5052
5052
  props: {
5053
5053
  /** Флаг для ручного переключения видимости */
@@ -5158,7 +5158,7 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
5158
5158
  hide: () => popper.value?.hide()
5159
5159
  });
5160
5160
  return (_ctx, _cache) => {
5161
- return openBlock(), createBlock(_sfc_main$D, mergeProps({
5161
+ return openBlock(), createBlock(_sfc_main$N, mergeProps({
5162
5162
  ref_key: "popper",
5163
5163
  ref: popper,
5164
5164
  visible: __props.visible,
@@ -5192,11 +5192,11 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
5192
5192
  };
5193
5193
  }
5194
5194
  });
5195
- const _hoisted_1$t = { class: "ui-v1-copy-button__tooltip" };
5196
- const _hoisted_2$f = { class: "ui-v1-copy-button__icon" };
5197
- const _hoisted_3$c = { class: "ui-v1-copy-button__text" };
5198
- const _hoisted_4$7 = ["value"];
5199
- const _sfc_main$B = /* @__PURE__ */ defineComponent({
5195
+ const _hoisted_1$x = { class: "ui-v1-copy-button__tooltip" };
5196
+ const _hoisted_2$h = { class: "ui-v1-copy-button__icon" };
5197
+ const _hoisted_3$d = { class: "ui-v1-copy-button__text" };
5198
+ const _hoisted_4$8 = ["value"];
5199
+ const _sfc_main$L = /* @__PURE__ */ defineComponent({
5200
5200
  __name: "UiCopyButton",
5201
5201
  props: {
5202
5202
  /** Текст для копирования в буфер обмена */
@@ -5207,7 +5207,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
5207
5207
  /** Размер кнопки */
5208
5208
  size: {
5209
5209
  type: String,
5210
- default: SIZE$7.XS
5210
+ default: SIZE$9.XS
5211
5211
  },
5212
5212
  /** Объект, содержащий параметры настройки Tooltip */
5213
5213
  tooltipOptions: {
@@ -5268,7 +5268,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
5268
5268
  onClick: copy
5269
5269
  }, [
5270
5270
  renderSlot(_ctx.$slots, "trigger", {}, () => [
5271
- createVNode(_sfc_main$M, {
5271
+ createVNode(_sfc_main$W, {
5272
5272
  size: __props.size,
5273
5273
  appearance: "tertiary"
5274
5274
  }, {
@@ -5278,7 +5278,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
5278
5278
  _: 1
5279
5279
  }, 8, ["size"])
5280
5280
  ]),
5281
- createVNode(_sfc_main$C, mergeProps({
5281
+ createVNode(_sfc_main$M, mergeProps({
5282
5282
  visible: visible.value,
5283
5283
  "onUpdate:visible": _cache[0] || (_cache[0] = ($event) => visible.value = $event),
5284
5284
  target: rootTarget.value,
@@ -5288,12 +5288,12 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
5288
5288
  ...__props.tooltipOptions
5289
5289
  }), {
5290
5290
  default: withCtx(() => [
5291
- createElementVNode("div", _hoisted_1$t, [
5291
+ createElementVNode("div", _hoisted_1$x, [
5292
5292
  copied.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
5293
- createElementVNode("div", _hoisted_2$f, [
5293
+ createElementVNode("div", _hoisted_2$h, [
5294
5294
  createVNode(unref(IconCheckmarkCircleOutlined))
5295
5295
  ]),
5296
- createElementVNode("div", _hoisted_3$c, [
5296
+ createElementVNode("div", _hoisted_3$d, [
5297
5297
  renderSlot(_ctx.$slots, "hint-copied")
5298
5298
  ])
5299
5299
  ], 64)) : renderSlot(_ctx.$slots, "hint", { key: 1 })
@@ -5308,7 +5308,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
5308
5308
  value: __props.text,
5309
5309
  class: "ui-v1-copy-button__area",
5310
5310
  type: "text"
5311
- }, null, 8, _hoisted_4$7)) : createCommentVNode("", true)
5311
+ }, null, 8, _hoisted_4$8)) : createCommentVNode("", true)
5312
5312
  ], 544);
5313
5313
  };
5314
5314
  }
@@ -5348,7 +5348,7 @@ function detectLocale() {
5348
5348
  }
5349
5349
  return "en-GB";
5350
5350
  }
5351
- const _sfc_main$A = /* @__PURE__ */ defineComponent({
5351
+ const _sfc_main$K = /* @__PURE__ */ defineComponent({
5352
5352
  __name: "UiDate",
5353
5353
  props: {
5354
5354
  date: {
@@ -5375,12 +5375,12 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
5375
5375
  };
5376
5376
  }
5377
5377
  });
5378
- const _hoisted_1$s = {
5378
+ const _hoisted_1$w = {
5379
5379
  xmlns: "http://www.w3.org/2000/svg",
5380
5380
  viewBox: "0 0 24 24"
5381
5381
  };
5382
- function render$b(_ctx, _cache) {
5383
- return openBlock(), createElementBlock("svg", _hoisted_1$s, [..._cache[0] || (_cache[0] = [
5382
+ function render$c(_ctx, _cache) {
5383
+ return openBlock(), createElementBlock("svg", _hoisted_1$w, [..._cache[0] || (_cache[0] = [
5384
5384
  createElementVNode("path", {
5385
5385
  fill: "currentColor",
5386
5386
  "fill-rule": "evenodd",
@@ -5389,13 +5389,13 @@ function render$b(_ctx, _cache) {
5389
5389
  }, null, -1)
5390
5390
  ])]);
5391
5391
  }
5392
- const IconCalendar = { render: render$b };
5393
- const _hoisted_1$r = {
5392
+ const IconCalendar = { render: render$c };
5393
+ const _hoisted_1$v = {
5394
5394
  xmlns: "http://www.w3.org/2000/svg",
5395
5395
  viewBox: "0 0 24 24"
5396
5396
  };
5397
- function render$a(_ctx, _cache) {
5398
- return openBlock(), createElementBlock("svg", _hoisted_1$r, [..._cache[0] || (_cache[0] = [
5397
+ function render$b(_ctx, _cache) {
5398
+ return openBlock(), createElementBlock("svg", _hoisted_1$v, [..._cache[0] || (_cache[0] = [
5399
5399
  createElementVNode("path", {
5400
5400
  fill: "currentColor",
5401
5401
  "fill-rule": "evenodd",
@@ -5404,7 +5404,7 @@ function render$a(_ctx, _cache) {
5404
5404
  }, null, -1)
5405
5405
  ])]);
5406
5406
  }
5407
- const IconClearCircle = { render: render$a };
5407
+ const IconClearCircle = { render: render$b };
5408
5408
  var TYPE$1 = /* @__PURE__ */ ((TYPE2) => {
5409
5409
  TYPE2["EMAIL"] = "email";
5410
5410
  TYPE2["PASSWORD"] = "password";
@@ -5425,14 +5425,14 @@ var INPUTMODE = /* @__PURE__ */ ((INPUTMODE2) => {
5425
5425
  INPUTMODE2["URL"] = "url";
5426
5426
  return INPUTMODE2;
5427
5427
  })(INPUTMODE || {});
5428
- var SIZE$5 = /* @__PURE__ */ ((SIZE2) => {
5428
+ var SIZE$7 = /* @__PURE__ */ ((SIZE2) => {
5429
5429
  SIZE2["XS"] = "xs";
5430
5430
  SIZE2["SM"] = "sm";
5431
5431
  SIZE2["MD"] = "md";
5432
5432
  SIZE2["LG"] = "lg";
5433
5433
  SIZE2["XL"] = "xl";
5434
5434
  return SIZE2;
5435
- })(SIZE$5 || {});
5435
+ })(SIZE$7 || {});
5436
5436
  const decimalsOf = (value) => {
5437
5437
  const [, fraction] = String(value).replace(",", ".").split(".");
5438
5438
  return fraction ? fraction.length : 0;
@@ -5504,19 +5504,19 @@ const _i18n$5 = define({
5504
5504
  "ru-RU": messages_ru_RU$5
5505
5505
  }
5506
5506
  });
5507
- const _hoisted_1$q = ["id"];
5508
- const _hoisted_2$e = {
5507
+ const _hoisted_1$u = ["id"];
5508
+ const _hoisted_2$g = {
5509
5509
  key: 0,
5510
5510
  class: "ui-v1-textbox__prefix"
5511
5511
  };
5512
- const _hoisted_3$b = ["id", "type", "value", "max", "min", "step", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "readonly", "required", "disabled"];
5513
- const _hoisted_4$6 = ["id", "value", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "rows", "cols", "readonly", "required", "disabled"];
5514
- const _hoisted_5$5 = ["disabled", "aria-controls", "aria-label"];
5512
+ const _hoisted_3$c = ["id", "type", "value", "max", "min", "step", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "readonly", "required", "disabled"];
5513
+ const _hoisted_4$7 = ["id", "value", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "rows", "cols", "readonly", "required", "disabled"];
5514
+ const _hoisted_5$6 = ["disabled", "aria-controls", "aria-label"];
5515
5515
  const _hoisted_6$4 = {
5516
5516
  key: 7,
5517
5517
  class: "ui-v1-textbox__suffix"
5518
5518
  };
5519
- const _sfc_main$z = /* @__PURE__ */ defineComponent({
5519
+ const _sfc_main$J = /* @__PURE__ */ defineComponent({
5520
5520
  __name: "UiTextbox",
5521
5521
  props: {
5522
5522
  /** Уникальный идентификатор поля */
@@ -5579,7 +5579,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
5579
5579
  /** Размер поля ввода */
5580
5580
  size: {
5581
5581
  type: String,
5582
- default: SIZE$5.SM
5582
+ default: SIZE$7.SM
5583
5583
  },
5584
5584
  /** Нативный атрибут input|textarea */
5585
5585
  placeholder: {
@@ -5934,13 +5934,13 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
5934
5934
  "ui-v1-textbox_autofit": __props.autofit,
5935
5935
  "ui-v1-textbox_invalid": __props.invalid,
5936
5936
  "ui-v1-textbox_outlined": __props.outlined,
5937
- "ui-v1-textbox_xs": __props.size === unref(SIZE$5).XS,
5938
- "ui-v1-textbox_md": __props.size === unref(SIZE$5).MD,
5939
- "ui-v1-textbox_lg": __props.size === unref(SIZE$5).LG,
5940
- "ui-v1-textbox_xl": __props.size === unref(SIZE$5).XL
5937
+ "ui-v1-textbox_xs": __props.size === unref(SIZE$7).XS,
5938
+ "ui-v1-textbox_md": __props.size === unref(SIZE$7).MD,
5939
+ "ui-v1-textbox_lg": __props.size === unref(SIZE$7).LG,
5940
+ "ui-v1-textbox_xl": __props.size === unref(SIZE$7).XL
5941
5941
  }
5942
5942
  }, _ctx.$attrs), [
5943
- __props.prefix || "prefix" in _ctx.$slots ? (openBlock(), createElementBlock("span", _hoisted_2$e, [
5943
+ __props.prefix || "prefix" in _ctx.$slots ? (openBlock(), createElementBlock("span", _hoisted_2$g, [
5944
5944
  renderSlot(_ctx.$slots, "prefix", {}, () => [
5945
5945
  createTextVNode(toDisplayString(__props.prefix), 1)
5946
5946
  ])
@@ -5977,7 +5977,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
5977
5977
  onChange,
5978
5978
  onFocus,
5979
5979
  onBlur
5980
- }), null, 16, _hoisted_3$b)) : (openBlock(), createElementBlock("textarea", mergeProps({
5980
+ }), null, 16, _hoisted_3$c)) : (openBlock(), createElementBlock("textarea", mergeProps({
5981
5981
  key: 3,
5982
5982
  id: __props.id ?? unref(uid2),
5983
5983
  ref_key: "textbox",
@@ -6000,7 +6000,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
6000
6000
  onChange,
6001
6001
  onFocus,
6002
6002
  onBlur
6003
- }), null, 16, _hoisted_4$6)),
6003
+ }), null, 16, _hoisted_4$7)),
6004
6004
  __props.autofit ? (openBlock(), createElementBlock("span", {
6005
6005
  key: 4,
6006
6006
  ref_key: "placeholderRef",
@@ -6017,7 +6017,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
6017
6017
  onClick: clear2
6018
6018
  }, [
6019
6019
  createVNode(unref(IconClearCircle), { "aria-hidden": "true" })
6020
- ], 8, _hoisted_5$5)) : createCommentVNode("", true),
6020
+ ], 8, _hoisted_5$6)) : createCommentVNode("", true),
6021
6021
  "trailing-icon" in _ctx.$slots ? (openBlock(), createElementBlock("span", {
6022
6022
  key: 6,
6023
6023
  class: "ui-v1-textbox__icon ui-v1-textbox__icon_trailing",
@@ -6030,17 +6030,17 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
6030
6030
  createTextVNode(toDisplayString(__props.suffix), 1)
6031
6031
  ])
6032
6032
  ])) : createCommentVNode("", true)
6033
- ], 16, _hoisted_1$q);
6033
+ ], 16, _hoisted_1$u);
6034
6034
  };
6035
6035
  }
6036
6036
  });
6037
- var SIZE$4 = /* @__PURE__ */ ((SIZE2) => {
6037
+ var SIZE$6 = /* @__PURE__ */ ((SIZE2) => {
6038
6038
  SIZE2["XS"] = "xs";
6039
6039
  SIZE2["SM"] = "sm";
6040
6040
  SIZE2["MD"] = "md";
6041
6041
  SIZE2["LG"] = "lg";
6042
6042
  return SIZE2;
6043
- })(SIZE$4 || {});
6043
+ })(SIZE$6 || {});
6044
6044
  const deltaTransition$1 = (el) => {
6045
6045
  const delta = el.scrollWidth - el.clientWidth;
6046
6046
  return delta !== 0 ? {
@@ -6048,17 +6048,17 @@ const deltaTransition$1 = (el) => {
6048
6048
  animationDuration: `${delta * 15}ms`
6049
6049
  } : {};
6050
6050
  };
6051
- const _hoisted_1$p = {
6051
+ const _hoisted_1$t = {
6052
6052
  key: 0,
6053
6053
  class: "ui-v1-menu-item__avatar"
6054
6054
  };
6055
- const _hoisted_2$d = {
6055
+ const _hoisted_2$f = {
6056
6056
  key: 1,
6057
6057
  class: "ui-v1-menu-item__icon ui-v1-menu-item__icon_leading"
6058
6058
  };
6059
- const _hoisted_3$a = { class: "ui-v1-menu-item__content" };
6060
- const _hoisted_4$5 = { class: "ui-v1-menu-item__text" };
6061
- const _hoisted_5$4 = {
6059
+ const _hoisted_3$b = { class: "ui-v1-menu-item__content" };
6060
+ const _hoisted_4$6 = { class: "ui-v1-menu-item__text" };
6061
+ const _hoisted_5$5 = {
6062
6062
  key: 0,
6063
6063
  class: "ui-v1-menu-item__description"
6064
6064
  };
@@ -6070,13 +6070,13 @@ const _hoisted_7$2 = {
6070
6070
  key: 3,
6071
6071
  class: "ui-v1-menu-item__icon ui-v1-menu-item__icon_trailing"
6072
6072
  };
6073
- const _sfc_main$y = /* @__PURE__ */ defineComponent({
6073
+ const _sfc_main$I = /* @__PURE__ */ defineComponent({
6074
6074
  __name: "UiMenuItem",
6075
6075
  props: {
6076
6076
  /** Размер */
6077
6077
  size: {
6078
6078
  type: String,
6079
- default: SIZE$4.MD
6079
+ default: SIZE$6.MD
6080
6080
  },
6081
6081
  /** Описание */
6082
6082
  description: {
@@ -6149,13 +6149,13 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
6149
6149
  }),
6150
6150
  onMouseoverOnce: onHover
6151
6151
  }, [
6152
- _ctx.$slots["avatar"] ? (openBlock(), createElementBlock("div", _hoisted_1$p, [
6152
+ _ctx.$slots["avatar"] ? (openBlock(), createElementBlock("div", _hoisted_1$t, [
6153
6153
  renderSlot(_ctx.$slots, "avatar")
6154
- ])) : _ctx.$slots["leading-icon"] ? (openBlock(), createElementBlock("div", _hoisted_2$d, [
6154
+ ])) : _ctx.$slots["leading-icon"] ? (openBlock(), createElementBlock("div", _hoisted_2$f, [
6155
6155
  renderSlot(_ctx.$slots, "leading-icon")
6156
6156
  ])) : createCommentVNode("", true),
6157
- createElementVNode("div", _hoisted_3$a, [
6158
- createElementVNode("div", _hoisted_4$5, [
6157
+ createElementVNode("div", _hoisted_3$b, [
6158
+ createElementVNode("div", _hoisted_4$6, [
6159
6159
  __props.ticker ? (openBlock(), createElementBlock("div", {
6160
6160
  key: 0,
6161
6161
  ref_key: "textRef",
@@ -6166,7 +6166,7 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
6166
6166
  renderSlot(_ctx.$slots, "default")
6167
6167
  ], 4)) : renderSlot(_ctx.$slots, "default", { key: 1 })
6168
6168
  ]),
6169
- _ctx.$slots["description"] || __props.description ? (openBlock(), createElementBlock("div", _hoisted_5$4, [
6169
+ _ctx.$slots["description"] || __props.description ? (openBlock(), createElementBlock("div", _hoisted_5$5, [
6170
6170
  renderSlot(_ctx.$slots, "description", {}, () => [
6171
6171
  createTextVNode(toDisplayString(__props.description), 1)
6172
6172
  ])
@@ -6181,7 +6181,7 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
6181
6181
  };
6182
6182
  }
6183
6183
  });
6184
- const _sfc_main$x = /* @__PURE__ */ defineComponent({
6184
+ const _sfc_main$H = /* @__PURE__ */ defineComponent({
6185
6185
  __name: "UiScrollBox",
6186
6186
  props: {
6187
6187
  /** Наименование тэга-обёртки для нативного скролла */
@@ -6359,7 +6359,7 @@ const isQuickDateEqual = (first, second) => {
6359
6359
  }
6360
6360
  return false;
6361
6361
  };
6362
- const _sfc_main$w = /* @__PURE__ */ defineComponent({
6362
+ const _sfc_main$G = /* @__PURE__ */ defineComponent({
6363
6363
  __name: "UiDatePickerQuickMenu",
6364
6364
  props: {
6365
6365
  value: {
@@ -6385,18 +6385,18 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
6385
6385
  emit("change", props.nullable && isActive(date) ? null : date);
6386
6386
  };
6387
6387
  return (_ctx, _cache) => {
6388
- return openBlock(), createBlock(_sfc_main$x, {
6388
+ return openBlock(), createBlock(_sfc_main$H, {
6389
6389
  class: "ui-v1-date-picker__quick-menu",
6390
6390
  role: "menu",
6391
6391
  native: ""
6392
6392
  }, {
6393
6393
  default: withCtx(() => [
6394
6394
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item, index) => {
6395
- return openBlock(), createBlock(_sfc_main$y, {
6395
+ return openBlock(), createBlock(_sfc_main$I, {
6396
6396
  key: "quick-item-" + index,
6397
6397
  active: isActive(item.value),
6398
6398
  "aria-current": isActive(item.value) ? "true" : "false",
6399
- size: unref(SIZE$4).SM,
6399
+ size: unref(SIZE$6).SM,
6400
6400
  role: "menuitem",
6401
6401
  onClick: ($event) => onClick(item.value)
6402
6402
  }, {
@@ -6437,11 +6437,11 @@ const _i18n$4 = define({
6437
6437
  "ru-RU": messages_ru_RU$4
6438
6438
  }
6439
6439
  });
6440
- const _hoisted_1$o = ["id", "aria-controls", "aria-disabled", "aria-expanded", "aria-readonly"];
6441
- const _hoisted_2$c = ["id"];
6442
- const _hoisted_3$9 = { class: "ui-v1-date-picker__workspace" };
6443
- const _hoisted_4$4 = { class: "ui-v1-date-picker__action" };
6444
- const _sfc_main$v = /* @__PURE__ */ defineComponent({
6440
+ const _hoisted_1$s = ["id", "aria-controls", "aria-disabled", "aria-expanded", "aria-readonly"];
6441
+ const _hoisted_2$e = ["id"];
6442
+ const _hoisted_3$a = { class: "ui-v1-date-picker__workspace" };
6443
+ const _hoisted_4$5 = { class: "ui-v1-date-picker__action" };
6444
+ const _sfc_main$F = /* @__PURE__ */ defineComponent({
6445
6445
  ...{
6446
6446
  inheritAttrs: false
6447
6447
  },
@@ -6486,8 +6486,8 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6486
6486
  },
6487
6487
  appearance: {
6488
6488
  type: String,
6489
- validator: (appearance) => Object.values(APPEARANCE$2).includes(appearance),
6490
- default: APPEARANCE$2.SINGLE
6489
+ validator: (appearance) => Object.values(APPEARANCE$4).includes(appearance),
6490
+ default: APPEARANCE$4.SINGLE
6491
6491
  },
6492
6492
  synchronization: {
6493
6493
  type: String,
@@ -6808,7 +6808,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6808
6808
  onClick: toggle
6809
6809
  }, [
6810
6810
  renderSlot(_ctx.$slots, "trigger")
6811
- ])) : (openBlock(), createBlock(_sfc_main$z, mergeProps({
6811
+ ])) : (openBlock(), createBlock(_sfc_main$J, mergeProps({
6812
6812
  key: 1,
6813
6813
  id: inputId.value,
6814
6814
  ref_key: "textbox",
@@ -6843,7 +6843,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6843
6843
  key: "0"
6844
6844
  } : void 0
6845
6845
  ]), 1040, ["id", "clearable", "value", "placeholder", "active", "disabled", "readonly"])),
6846
- createVNode(_sfc_main$D, mergeProps({
6846
+ createVNode(_sfc_main$N, mergeProps({
6847
6847
  id: `${inputId.value}-popper`,
6848
6848
  visible: showCalendar.value,
6849
6849
  target: triggerTarget.value,
@@ -6866,15 +6866,15 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6866
6866
  onClick: _cache[0] || (_cache[0] = withModifiers(() => {
6867
6867
  }, ["stop"]))
6868
6868
  }, [
6869
- __props.quickOptions.length > 0 ? (openBlock(), createBlock(_sfc_main$w, {
6869
+ __props.quickOptions.length > 0 ? (openBlock(), createBlock(_sfc_main$G, {
6870
6870
  key: 0,
6871
6871
  value: view.value,
6872
6872
  items: __props.quickOptions,
6873
6873
  nullable: __props.nullable,
6874
6874
  onChange: onQuickChange
6875
6875
  }, null, 8, ["value", "items", "nullable"])) : createCommentVNode("", true),
6876
- createElementVNode("div", _hoisted_3$9, [
6877
- createVNode(_sfc_main$I, {
6876
+ createElementVNode("div", _hoisted_3$a, [
6877
+ createVNode(_sfc_main$S, {
6878
6878
  ref_key: "calendar",
6879
6879
  ref: calendar,
6880
6880
  value: view.value,
@@ -6891,11 +6891,11 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6891
6891
  key: 0,
6892
6892
  class: normalizeClass({
6893
6893
  "ui-v1-date-picker__footer": true,
6894
- "ui-v1-date-picker__footer_horizontal": __props.appearance === unref(APPEARANCE$2).DOUBLE
6894
+ "ui-v1-date-picker__footer_horizontal": __props.appearance === unref(APPEARANCE$4).DOUBLE
6895
6895
  })
6896
6896
  }, [
6897
- createElementVNode("div", _hoisted_4$4, [
6898
- createVNode(_sfc_main$M, {
6897
+ createElementVNode("div", _hoisted_4$5, [
6898
+ createVNode(_sfc_main$W, {
6899
6899
  appearance: "tertiary",
6900
6900
  class: "ui-v1-date-picker__button",
6901
6901
  onClick: reset
@@ -6905,7 +6905,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6905
6905
  ]),
6906
6906
  _: 1
6907
6907
  }),
6908
- createVNode(_sfc_main$M, {
6908
+ createVNode(_sfc_main$W, {
6909
6909
  class: "ui-v1-date-picker__button",
6910
6910
  onClick: apply2
6911
6911
  }, {
@@ -6917,11 +6917,11 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
6917
6917
  ])
6918
6918
  ], 2)) : createCommentVNode("", true)
6919
6919
  ])
6920
- ], 8, _hoisted_2$c)
6920
+ ], 8, _hoisted_2$e)
6921
6921
  ]),
6922
6922
  _: 1
6923
6923
  }, 16, ["id", "visible", "target", "container", "placement", "aria-hidden", "class", "disabled"])
6924
- ], 16, _hoisted_1$o);
6924
+ ], 16, _hoisted_1$s);
6925
6925
  };
6926
6926
  }
6927
6927
  });
@@ -6930,7 +6930,7 @@ var ALIGN$1 = /* @__PURE__ */ ((ALIGN2) => {
6930
6930
  ALIGN2["RIGHT"] = "right";
6931
6931
  return ALIGN2;
6932
6932
  })(ALIGN$1 || {});
6933
- const _sfc_main$u = /* @__PURE__ */ defineComponent({
6933
+ const _sfc_main$E = /* @__PURE__ */ defineComponent({
6934
6934
  __name: "UiError",
6935
6935
  props: {
6936
6936
  /** Тест, разметка ошибки */
@@ -6969,46 +6969,46 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
6969
6969
  };
6970
6970
  }
6971
6971
  });
6972
- const _hoisted_1$n = {
6972
+ const _hoisted_1$r = {
6973
6973
  xmlns: "http://www.w3.org/2000/svg",
6974
6974
  viewBox: "0 0 24 24"
6975
6975
  };
6976
- function render$9(_ctx, _cache) {
6977
- return openBlock(), createElementBlock("svg", _hoisted_1$n, [..._cache[0] || (_cache[0] = [
6976
+ function render$a(_ctx, _cache) {
6977
+ return openBlock(), createElementBlock("svg", _hoisted_1$r, [..._cache[0] || (_cache[0] = [
6978
6978
  createElementVNode("path", {
6979
6979
  fill: "currentColor",
6980
6980
  d: "M12.72 15.78a.75.75 0 0 1-.53.22h-.38a.77.77 0 0 1-.53-.22l-5.13-5.14a.5.5 0 0 1 0-.71l.71-.71a.49.49 0 0 1 .7 0L12 13.67l4.44-4.45a.5.5 0 0 1 .71 0l.7.71a.5.5 0 0 1 0 .71z"
6981
6981
  }, null, -1)
6982
6982
  ])]);
6983
6983
  }
6984
- const IconChevronDown = { render: render$9 };
6985
- const _hoisted_1$m = {
6984
+ const IconChevronDown = { render: render$a };
6985
+ const _hoisted_1$q = {
6986
6986
  xmlns: "http://www.w3.org/2000/svg",
6987
6987
  viewBox: "0 0 24 24"
6988
6988
  };
6989
- function render$8(_ctx, _cache) {
6990
- return openBlock(), createElementBlock("svg", _hoisted_1$m, [..._cache[0] || (_cache[0] = [
6989
+ function render$9(_ctx, _cache) {
6990
+ return openBlock(), createElementBlock("svg", _hoisted_1$q, [..._cache[0] || (_cache[0] = [
6991
6991
  createElementVNode("path", {
6992
6992
  fill: "currentColor",
6993
6993
  d: "M11.28 8.22a.75.75 0 0 1 .53-.22h.38a.77.77 0 0 1 .53.22l5.13 5.14a.5.5 0 0 1 0 .71l-.71.71a.49.49 0 0 1-.7 0L12 10.33l-4.44 4.45a.5.5 0 0 1-.71 0l-.7-.71a.5.5 0 0 1 0-.71z"
6994
6994
  }, null, -1)
6995
6995
  ])]);
6996
6996
  }
6997
- const IconChevronUp = { render: render$8 };
6998
- const _hoisted_1$l = ["id", "aria-expanded", "aria-hidden"];
6999
- const _hoisted_2$b = {
6997
+ const IconChevronUp = { render: render$9 };
6998
+ const _hoisted_1$p = ["id", "aria-expanded", "aria-hidden"];
6999
+ const _hoisted_2$d = {
7000
7000
  "aria-hidden": "true",
7001
7001
  class: "ui-v1-infobox__media"
7002
7002
  };
7003
- const _hoisted_3$8 = { class: "ui-v1-infobox__icon" };
7004
- const _hoisted_4$3 = { class: "ui-v1-infobox__content" };
7005
- const _hoisted_5$3 = {
7003
+ const _hoisted_3$9 = { class: "ui-v1-infobox__icon" };
7004
+ const _hoisted_4$4 = { class: "ui-v1-infobox__content" };
7005
+ const _hoisted_5$4 = {
7006
7006
  key: 0,
7007
7007
  class: "ui-v1-infobox__header"
7008
7008
  };
7009
7009
  const _hoisted_6$2 = ["id"];
7010
7010
  const _hoisted_7$1 = ["aria-controls", "aria-expanded"];
7011
- const _sfc_main$t = /* @__PURE__ */ defineComponent({
7011
+ const _sfc_main$D = /* @__PURE__ */ defineComponent({
7012
7012
  ...{
7013
7013
  inheritAttrs: false
7014
7014
  },
@@ -7145,7 +7145,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7145
7145
  syncExpandedFromProps();
7146
7146
  });
7147
7147
  return (_ctx, _cache) => {
7148
- return openBlock(), createBlock(_sfc_main$S, {
7148
+ return openBlock(), createBlock(_sfc_main$10, {
7149
7149
  name: "fade",
7150
7150
  onAfterEnter,
7151
7151
  onAfterLeave,
@@ -7165,8 +7165,8 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7165
7165
  },
7166
7166
  role: "alert"
7167
7167
  }, rootAttrs.value), [
7168
- createElementVNode("div", _hoisted_2$b, [
7169
- createElementVNode("div", _hoisted_3$8, [
7168
+ createElementVNode("div", _hoisted_2$d, [
7169
+ createElementVNode("div", _hoisted_3$9, [
7170
7170
  renderSlot(_ctx.$slots, "icon", {
7171
7171
  expanded: state.shouldBeExpanded
7172
7172
  }, () => [
@@ -7174,8 +7174,8 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7174
7174
  ])
7175
7175
  ])
7176
7176
  ]),
7177
- createElementVNode("div", _hoisted_4$3, [
7178
- hasHeader.value ? (openBlock(), createElementBlock("div", _hoisted_5$3, [
7177
+ createElementVNode("div", _hoisted_4$4, [
7178
+ hasHeader.value ? (openBlock(), createElementBlock("div", _hoisted_5$4, [
7179
7179
  hasTitle.value ? (openBlock(), createElementBlock("div", {
7180
7180
  key: 0,
7181
7181
  id: titleId.value,
@@ -7211,7 +7211,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7211
7211
  }))
7212
7212
  ], 8, _hoisted_7$1)) : createCommentVNode("", true)
7213
7213
  ])) : createCommentVNode("", true),
7214
- createVNode(_sfc_main$G, {
7214
+ createVNode(_sfc_main$Q, {
7215
7215
  id: bodyId.value,
7216
7216
  "aria-labelledby": hasTitle.value ? titleId.value : void 0,
7217
7217
  expanded: bodyExpanded.value,
@@ -7239,7 +7239,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7239
7239
  }, [
7240
7240
  createVNode(unref(IconClear), { class: "ui-v1-infobox__closer-icon" })
7241
7241
  ])) : createCommentVNode("", true)
7242
- ], 16, _hoisted_1$l), [
7242
+ ], 16, _hoisted_1$p), [
7243
7243
  [vShow, state.shouldBeShown]
7244
7244
  ])
7245
7245
  ]),
@@ -7248,28 +7248,28 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
7248
7248
  };
7249
7249
  }
7250
7250
  });
7251
- const _hoisted_1$k = {
7251
+ const _hoisted_1$o = {
7252
7252
  xmlns: "http://www.w3.org/2000/svg",
7253
7253
  viewBox: "0 0 24 24"
7254
7254
  };
7255
- function render$7(_ctx, _cache) {
7256
- return openBlock(), createElementBlock("svg", _hoisted_1$k, [..._cache[0] || (_cache[0] = [
7255
+ function render$8(_ctx, _cache) {
7256
+ return openBlock(), createElementBlock("svg", _hoisted_1$o, [..._cache[0] || (_cache[0] = [
7257
7257
  createElementVNode("path", {
7258
7258
  fill: "currentColor",
7259
7259
  d: "m6.844 17.854-.7-.703a.5.5 0 0 1 0-.704l8.48-8.456-6.212.007a.49.49 0 0 1-.496-.5l.007-.991a.5.5 0 0 1 .496-.5L16.994 6c.196 0 .385.078.524.218l.265.267c.137.142.215.33.217.528l-.007 8.633a.5.5 0 0 1-.496.5h-.992a.48.48 0 0 1-.49-.493l.007-6.255-8.48 8.456a.49.49 0 0 1-.698 0"
7260
7260
  }, null, -1)
7261
7261
  ])]);
7262
7262
  }
7263
- const IconOpenInNew = { render: render$7 };
7264
- var APPEARANCE$1 = /* @__PURE__ */ ((APPEARANCE2) => {
7263
+ const IconOpenInNew = { render: render$8 };
7264
+ var APPEARANCE$3 = /* @__PURE__ */ ((APPEARANCE2) => {
7265
7265
  APPEARANCE2["BREADCRUMBS"] = "breadcrumbs";
7266
7266
  APPEARANCE2["DEFAULT"] = "default";
7267
7267
  APPEARANCE2["NAVIGATION"] = "navigation";
7268
7268
  APPEARANCE2["NAVIGATION_ANCHOR"] = "navigation-anchor";
7269
7269
  APPEARANCE2["TITLE"] = "title";
7270
7270
  return APPEARANCE2;
7271
- })(APPEARANCE$1 || {});
7272
- var SIZE$3 = /* @__PURE__ */ ((SIZE2) => {
7271
+ })(APPEARANCE$3 || {});
7272
+ var SIZE$5 = /* @__PURE__ */ ((SIZE2) => {
7273
7273
  SIZE2["ARTICLE"] = "article";
7274
7274
  SIZE2["BODY"] = "body";
7275
7275
  SIZE2["PARAGRAPH"] = "paragraph";
@@ -7278,17 +7278,17 @@ var SIZE$3 = /* @__PURE__ */ ((SIZE2) => {
7278
7278
  SIZE2["TITLE01"] = "title-01";
7279
7279
  SIZE2["TITLE02"] = "title-02";
7280
7280
  return SIZE2;
7281
- })(SIZE$3 || {});
7282
- const _hoisted_1$j = ["href", "target"];
7283
- const _hoisted_2$a = {
7281
+ })(SIZE$5 || {});
7282
+ const _hoisted_1$n = ["href", "target"];
7283
+ const _hoisted_2$c = {
7284
7284
  key: 0,
7285
7285
  class: "ui-v1-link__inner"
7286
7286
  };
7287
- const _hoisted_3$7 = {
7287
+ const _hoisted_3$8 = {
7288
7288
  key: 2,
7289
7289
  class: "ui-v1-link__icon"
7290
7290
  };
7291
- const _sfc_main$s = /* @__PURE__ */ defineComponent({
7291
+ const _sfc_main$C = /* @__PURE__ */ defineComponent({
7292
7292
  __name: "UiLink",
7293
7293
  props: {
7294
7294
  /** Атрибут ссылки */
@@ -7308,14 +7308,14 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
7308
7308
  /** Тип ссылок */
7309
7309
  appearance: {
7310
7310
  type: String,
7311
- validator: (appearance) => Object.values(APPEARANCE$1).includes(appearance),
7312
- default: APPEARANCE$1.DEFAULT
7311
+ validator: (appearance) => Object.values(APPEARANCE$3).includes(appearance),
7312
+ default: APPEARANCE$3.DEFAULT
7313
7313
  },
7314
7314
  /** Размер текста */
7315
7315
  size: {
7316
7316
  type: String,
7317
- validator: (size) => Object.values(SIZE$3).includes(size),
7318
- default: SIZE$3.BODY
7317
+ validator: (size) => Object.values(SIZE$5).includes(size),
7318
+ default: SIZE$5.BODY
7319
7319
  },
7320
7320
  /** Инвертированный цвет ссылок для тёмного фона */
7321
7321
  light: {
@@ -7357,19 +7357,19 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
7357
7357
  },
7358
7358
  target: __props.external ? "_blank" : "_self"
7359
7359
  }, _ctx.$attrs), [
7360
- __props.dotted ? (openBlock(), createElementBlock("span", _hoisted_2$a, [
7360
+ __props.dotted ? (openBlock(), createElementBlock("span", _hoisted_2$c, [
7361
7361
  renderSlot(_ctx.$slots, "default")
7362
7362
  ])) : renderSlot(_ctx.$slots, "default", { key: 1 }),
7363
- _ctx.$slots.icon || __props.external ? (openBlock(), createElementBlock("span", _hoisted_3$7, [
7363
+ _ctx.$slots.icon || __props.external ? (openBlock(), createElementBlock("span", _hoisted_3$8, [
7364
7364
  renderSlot(_ctx.$slots, "icon", {}, () => [
7365
7365
  createVNode(unref(IconOpenInNew), { class: "ui-v1-link__icon-sprite" })
7366
7366
  ])
7367
7367
  ])) : createCommentVNode("", true)
7368
- ], 16, _hoisted_1$j);
7368
+ ], 16, _hoisted_1$n);
7369
7369
  };
7370
7370
  }
7371
7371
  });
7372
- const _sfc_main$r = /* @__PURE__ */ defineComponent({
7372
+ const _sfc_main$B = /* @__PURE__ */ defineComponent({
7373
7373
  __name: "UiLoader",
7374
7374
  props: {
7375
7375
  /** Диаметр (размер) окружности индикатора */
@@ -7401,7 +7401,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
7401
7401
  },
7402
7402
  setup(__props) {
7403
7403
  return (_ctx, _cache) => {
7404
- return openBlock(), createBlock(resolveDynamicComponent(__props.transition ? _sfc_main$S : "div"), normalizeProps(guardReactiveProps(__props.transition ? {
7404
+ return openBlock(), createBlock(resolveDynamicComponent(__props.transition ? _sfc_main$10 : "div"), normalizeProps(guardReactiveProps(__props.transition ? {
7405
7405
  appear: true,
7406
7406
  class: "ui-v1-loader-wrapper",
7407
7407
  name: __props.transition
@@ -7435,27 +7435,27 @@ const _export_sfc = (sfc, props) => {
7435
7435
  }
7436
7436
  return target;
7437
7437
  };
7438
- const _sfc_main$q = {};
7439
- const _hoisted_1$i = { class: "ui-v1-menu-item-group" };
7440
- const _hoisted_2$9 = { class: "ui-v1-menu-item-group__head" };
7441
- const _hoisted_3$6 = {
7438
+ const _sfc_main$A = {};
7439
+ const _hoisted_1$m = { class: "ui-v1-menu-item-group" };
7440
+ const _hoisted_2$b = { class: "ui-v1-menu-item-group__head" };
7441
+ const _hoisted_3$7 = {
7442
7442
  key: 0,
7443
7443
  class: "ui-v1-menu-item-group__head-option"
7444
7444
  };
7445
- const _hoisted_4$2 = {
7445
+ const _hoisted_4$3 = {
7446
7446
  key: 1,
7447
7447
  class: "ui-v1-menu-item-group__head-inner"
7448
7448
  };
7449
- const _hoisted_5$2 = {
7449
+ const _hoisted_5$3 = {
7450
7450
  key: 0,
7451
7451
  class: "ui-v1-menu-item-group__count"
7452
7452
  };
7453
7453
  function _sfc_render(_ctx, _cache) {
7454
- return openBlock(), createElementBlock("div", _hoisted_1$i, [
7455
- createElementVNode("div", _hoisted_2$9, [
7456
- _ctx.$slots.option ? (openBlock(), createElementBlock("div", _hoisted_3$6, [
7454
+ return openBlock(), createElementBlock("div", _hoisted_1$m, [
7455
+ createElementVNode("div", _hoisted_2$b, [
7456
+ _ctx.$slots.option ? (openBlock(), createElementBlock("div", _hoisted_3$7, [
7457
7457
  renderSlot(_ctx.$slots, "option")
7458
- ])) : (openBlock(), createElementBlock("div", _hoisted_4$2, [
7458
+ ])) : (openBlock(), createElementBlock("div", _hoisted_4$3, [
7459
7459
  createElementVNode("div", {
7460
7460
  class: normalizeClass({
7461
7461
  "ui-v1-menu-item-group__title": true,
@@ -7464,7 +7464,7 @@ function _sfc_render(_ctx, _cache) {
7464
7464
  }, [
7465
7465
  renderSlot(_ctx.$slots, "label")
7466
7466
  ], 2),
7467
- _ctx.$slots.quantity ? (openBlock(), createElementBlock("div", _hoisted_5$2, [
7467
+ _ctx.$slots.quantity ? (openBlock(), createElementBlock("div", _hoisted_5$3, [
7468
7468
  renderSlot(_ctx.$slots, "quantity")
7469
7469
  ])) : createCommentVNode("", true)
7470
7470
  ]))
@@ -7472,7 +7472,7 @@ function _sfc_render(_ctx, _cache) {
7472
7472
  renderSlot(_ctx.$slots, "default")
7473
7473
  ]);
7474
7474
  }
7475
- const UiMenuItemGroup = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["render", _sfc_render]]);
7475
+ const UiMenuItemGroup = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["render", _sfc_render]]);
7476
7476
  class LayerRegistry {
7477
7477
  registry;
7478
7478
  started = false;
@@ -7544,8 +7544,8 @@ const plugin = {
7544
7544
  }
7545
7545
  };
7546
7546
  const nextAnimationFrame = async () => new Promise((resolve) => requestAnimationFrame(resolve));
7547
- let counter$1 = 0;
7548
- const uid = (prefix) => `${prefix}-${++counter$1}`;
7547
+ let counter$2 = 0;
7548
+ const uid = (prefix) => `${prefix}-${++counter$2}`;
7549
7549
  var CLOSE_METHOD = /* @__PURE__ */ ((CLOSE_METHOD2) => {
7550
7550
  CLOSE_METHOD2["CLICK_CROSS"] = "Cross";
7551
7551
  CLOSE_METHOD2["CLICK_OUTSIDE"] = "Outside";
@@ -7563,16 +7563,16 @@ var SCROLLING$1 = /* @__PURE__ */ ((SCROLLING2) => {
7563
7563
  SCROLLING2["NONE"] = "none";
7564
7564
  return SCROLLING2;
7565
7565
  })(SCROLLING$1 || {});
7566
- var SIZE$2 = /* @__PURE__ */ ((SIZE2) => {
7566
+ var SIZE$4 = /* @__PURE__ */ ((SIZE2) => {
7567
7567
  SIZE2["LG"] = "lg";
7568
7568
  SIZE2["SM"] = "sm";
7569
7569
  return SIZE2;
7570
- })(SIZE$2 || {});
7571
- const _hoisted_1$h = ["id", "aria-hidden", "role"];
7572
- const _hoisted_2$8 = ["id"];
7573
- const _hoisted_3$5 = { class: "ui-v1-modal-sidebar__header" };
7574
- const _hoisted_4$1 = { class: "ui-v1-modal-sidebar__header-inner" };
7575
- const _hoisted_5$1 = {
7570
+ })(SIZE$4 || {});
7571
+ const _hoisted_1$l = ["id", "aria-hidden", "role"];
7572
+ const _hoisted_2$a = ["id"];
7573
+ const _hoisted_3$6 = { class: "ui-v1-modal-sidebar__header" };
7574
+ const _hoisted_4$2 = { class: "ui-v1-modal-sidebar__header-inner" };
7575
+ const _hoisted_5$2 = {
7576
7576
  "aria-level": "1",
7577
7577
  class: "ui-v1-modal-sidebar__title",
7578
7578
  role: "heading"
@@ -7586,7 +7586,7 @@ const _hoisted_8 = {
7586
7586
  key: 2,
7587
7587
  class: "ui-v1-modal-sidebar__footer"
7588
7588
  };
7589
- const _sfc_main$p = /* @__PURE__ */ defineComponent({
7589
+ const _sfc_main$z = /* @__PURE__ */ defineComponent({
7590
7590
  ...{
7591
7591
  inheritAttrs: false
7592
7592
  },
@@ -7632,7 +7632,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7632
7632
  /** Размер панели */
7633
7633
  size: {
7634
7634
  type: String,
7635
- default: SIZE$2.SM
7635
+ default: SIZE$4.SM
7636
7636
  },
7637
7637
  /** ARIA-роль модального контейнера */
7638
7638
  role: {
@@ -7812,7 +7812,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7812
7812
  key: 0,
7813
7813
  to: unref(globals)?.container || "body"
7814
7814
  }, [
7815
- createVNode(_sfc_main$S, {
7815
+ createVNode(_sfc_main$10, {
7816
7816
  name: "fade-2",
7817
7817
  onBeforeEnter: _cache[5] || (_cache[5] = ($event) => visibilityOfOverlay.value = "showing"),
7818
7818
  onAfterEnter: _cache[6] || (_cache[6] = ($event) => visibilityOfOverlay.value = "shown"),
@@ -7833,7 +7833,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7833
7833
  "aria-modal": "true",
7834
7834
  role: __props.role
7835
7835
  }, _ctx.$attrs, { onClick: onBackdropClick }), [
7836
- createVNode(_sfc_main$S, {
7836
+ createVNode(_sfc_main$10, {
7837
7837
  name: `slide-${__props.direction}`,
7838
7838
  onBeforeEnter: _cache[1] || (_cache[1] = ($event) => visibilityOfSidebar.value = "showing"),
7839
7839
  onAfterEnter: _cache[2] || (_cache[2] = ($event) => visibilityOfSidebar.value = "shown"),
@@ -7848,13 +7848,13 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7848
7848
  "ui-v1-modal-sidebar": true,
7849
7849
  "ui-v1-modal-sidebar_fixed": __props.fixed,
7850
7850
  "ui-v1-modal-sidebar_left": __props.direction === unref(DIRECTION$2).LEFT,
7851
- "ui-v1-modal-sidebar_size_sm": __props.size === unref(SIZE$2).SM,
7852
- "ui-v1-modal-sidebar_size_lg": __props.size === unref(SIZE$2).LG
7851
+ "ui-v1-modal-sidebar_size_sm": __props.size === unref(SIZE$4).SM,
7852
+ "ui-v1-modal-sidebar_size_lg": __props.size === unref(SIZE$4).LG
7853
7853
  })
7854
7854
  }, [
7855
- createElementVNode("header", _hoisted_3$5, [
7856
- createElementVNode("div", _hoisted_4$1, [
7857
- createElementVNode("div", _hoisted_5$1, [
7855
+ createElementVNode("header", _hoisted_3$6, [
7856
+ createElementVNode("div", _hoisted_4$2, [
7857
+ createElementVNode("div", _hoisted_5$2, [
7858
7858
  renderSlot(_ctx.$slots, "title", {
7859
7859
  overlapped: state.overlapped
7860
7860
  })
@@ -7874,7 +7874,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7874
7874
  "aria-hidden": "true",
7875
7875
  width: "32"
7876
7876
  }),
7877
- createVNode(_sfc_main$C, {
7877
+ createVNode(_sfc_main$M, {
7878
7878
  target: closerTarget.value,
7879
7879
  "offset-main-axis": 0
7880
7880
  }, {
@@ -7889,7 +7889,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7889
7889
  renderSlot(_ctx.$slots, "default", {
7890
7890
  overlapped: state.overlapped
7891
7891
  })
7892
- ])) : (openBlock(), createBlock(_sfc_main$x, {
7892
+ ])) : (openBlock(), createBlock(_sfc_main$H, {
7893
7893
  key: 1,
7894
7894
  native: __props.scrolling === unref(SCROLLING$1).NATIVE,
7895
7895
  class: "ui-v1-modal-sidebar__body",
@@ -7908,11 +7908,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7908
7908
  overlapped: state.overlapped
7909
7909
  })
7910
7910
  ])) : createCommentVNode("", true)
7911
- ], 10, _hoisted_2$8)) : createCommentVNode("", true)
7911
+ ], 10, _hoisted_2$a)) : createCommentVNode("", true)
7912
7912
  ]),
7913
7913
  _: 3
7914
7914
  }, 8, ["name"])
7915
- ], 16, _hoisted_1$h), [
7915
+ ], 16, _hoisted_1$l), [
7916
7916
  [vShow, state.shown]
7917
7917
  ])
7918
7918
  ]),
@@ -7922,19 +7922,19 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
7922
7922
  };
7923
7923
  }
7924
7924
  });
7925
- var APPEARANCE = /* @__PURE__ */ ((APPEARANCE2) => {
7925
+ var APPEARANCE$2 = /* @__PURE__ */ ((APPEARANCE2) => {
7926
7926
  APPEARANCE2["ALERT"] = "alert";
7927
7927
  APPEARANCE2["DIALOG"] = "dialog";
7928
7928
  APPEARANCE2["POPUP"] = "popup";
7929
7929
  APPEARANCE2["HINT"] = "hint";
7930
7930
  return APPEARANCE2;
7931
- })(APPEARANCE || {});
7931
+ })(APPEARANCE$2 || {});
7932
7932
  var SCROLLING = /* @__PURE__ */ ((SCROLLING2) => {
7933
7933
  SCROLLING2["NORMAL"] = "normal";
7934
7934
  SCROLLING2["NATIVE"] = "native";
7935
7935
  return SCROLLING2;
7936
7936
  })(SCROLLING || {});
7937
- const _sfc_main$o = /* @__PURE__ */ defineComponent({
7937
+ const _sfc_main$y = /* @__PURE__ */ defineComponent({
7938
7938
  __name: "UiModalWindowSurface",
7939
7939
  props: {
7940
7940
  /** Атрибут id корневого элемента модального окна. Должен быть уникальным на странице */
@@ -7955,8 +7955,8 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
7955
7955
  /** Внешний вид */
7956
7956
  appearance: {
7957
7957
  type: String,
7958
- validator: (appearance) => expect(appearance).toBeOneOf(APPEARANCE),
7959
- default: APPEARANCE.POPUP
7958
+ validator: (appearance) => expect(appearance).toBeOneOf(APPEARANCE$2),
7959
+ default: APPEARANCE$2.POPUP
7960
7960
  },
7961
7961
  /** Вывод на весь экран */
7962
7962
  fullscreen: {
@@ -8154,7 +8154,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
8154
8154
  const slots = useSlots();
8155
8155
  const renderBody = () => {
8156
8156
  const appearance = props.appearance;
8157
- return h(_sfc_main$S, {
8157
+ return h(_sfc_main$10, {
8158
8158
  name: "zoom",
8159
8159
  onBeforeEnter: () => visibilityOfBody.value = "showing",
8160
8160
  onAfterEnter: () => visibilityOfBody.value = "shown",
@@ -8164,10 +8164,10 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
8164
8164
  ref: body,
8165
8165
  class: {
8166
8166
  "ui-v1-modal-window": true,
8167
- "ui-v1-modal-window_alert": appearance === APPEARANCE.ALERT,
8168
- "ui-v1-modal-window_dialog": appearance === APPEARANCE.DIALOG,
8169
- "ui-v1-modal-window_popup": appearance === APPEARANCE.POPUP,
8170
- "ui-v1-modal-window_hint": appearance === APPEARANCE.HINT,
8167
+ "ui-v1-modal-window_alert": appearance === APPEARANCE$2.ALERT,
8168
+ "ui-v1-modal-window_dialog": appearance === APPEARANCE$2.DIALOG,
8169
+ "ui-v1-modal-window_popup": appearance === APPEARANCE$2.POPUP,
8170
+ "ui-v1-modal-window_hint": appearance === APPEARANCE$2.HINT,
8171
8171
  "ui-v1-popper-container": true
8172
8172
  }
8173
8173
  }, slots) : []);
@@ -8179,7 +8179,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
8179
8179
  };
8180
8180
  const EmbedModalWindowSurface = () => !state.attached ? void 0 : h(Teleport, {
8181
8181
  to: globals?.container ?? document.body
8182
- }, h(_sfc_main$S, {
8182
+ }, h(_sfc_main$10, {
8183
8183
  name: "fade-2",
8184
8184
  onBeforeEnter: () => visibilityOfOverlay.value = "showing",
8185
8185
  onAfterEnter: () => visibilityOfOverlay.value = "shown",
@@ -8197,11 +8197,11 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
8197
8197
  "ui-v1-modal_overlapped": state.overlapped
8198
8198
  }],
8199
8199
  onClick: onOverlayClick
8200
- }, h(_sfc_main$x, {
8200
+ }, h(_sfc_main$H, {
8201
8201
  class: {
8202
8202
  "ui-v1-modal-window-container": true,
8203
8203
  "ui-v1-modal-window-container_fullscreen": props.fullscreen,
8204
- "ui-v1-modal-window-container_responsive": props.responsive && props.appearance === APPEARANCE.POPUP
8204
+ "ui-v1-modal-window-container_responsive": props.responsive && props.appearance === APPEARANCE$2.POPUP
8205
8205
  },
8206
8206
  showOnMac: true,
8207
8207
  native: props.scrolling === SCROLLING.NATIVE,
@@ -8221,12 +8221,12 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
8221
8221
  };
8222
8222
  }
8223
8223
  });
8224
- const _hoisted_1$g = {
8224
+ const _hoisted_1$k = {
8225
8225
  xmlns: "http://www.w3.org/2000/svg",
8226
8226
  viewBox: "0 0 24 24"
8227
8227
  };
8228
- function render$6(_ctx, _cache) {
8229
- return openBlock(), createElementBlock("svg", _hoisted_1$g, [..._cache[0] || (_cache[0] = [
8228
+ function render$7(_ctx, _cache) {
8229
+ return openBlock(), createElementBlock("svg", _hoisted_1$k, [..._cache[0] || (_cache[0] = [
8230
8230
  createElementVNode("path", {
8231
8231
  fill: "currentColor",
8232
8232
  "fill-rule": "evenodd",
@@ -8235,18 +8235,18 @@ function render$6(_ctx, _cache) {
8235
8235
  }, null, -1)
8236
8236
  ])]);
8237
8237
  }
8238
- const IconWarning = { render: render$6 };
8239
- const _hoisted_1$f = {
8238
+ const IconWarning = { render: render$7 };
8239
+ const _hoisted_1$j = {
8240
8240
  key: 0,
8241
8241
  class: "ui-v1-modal-window__icon"
8242
8242
  };
8243
- const _hoisted_2$7 = ["id"];
8244
- const _hoisted_3$4 = ["disabled"];
8245
- const _hoisted_4 = {
8243
+ const _hoisted_2$9 = ["id"];
8244
+ const _hoisted_3$5 = ["disabled"];
8245
+ const _hoisted_4$1 = {
8246
8246
  key: 1,
8247
8247
  class: "ui-v1-modal-window__content"
8248
8248
  };
8249
- const _hoisted_5 = {
8249
+ const _hoisted_5$1 = {
8250
8250
  key: 2,
8251
8251
  class: "ui-v1-modal-window__footer"
8252
8252
  };
@@ -8254,7 +8254,7 @@ const _hoisted_6 = {
8254
8254
  key: 0,
8255
8255
  class: "ui-v1-modal-window__footer-text"
8256
8256
  };
8257
- const _sfc_main$n = /* @__PURE__ */ defineComponent({
8257
+ const _sfc_main$x = /* @__PURE__ */ defineComponent({
8258
8258
  __name: "UiModalWindow",
8259
8259
  props: {
8260
8260
  /** Атрибут id корневого элемента модального окна. Должен быть уникальным на странице */
@@ -8275,8 +8275,8 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
8275
8275
  /** Внешний вид: алерт, диалог, popup, hint */
8276
8276
  appearance: {
8277
8277
  type: String,
8278
- validator: (value) => expect(value).toBeOneOf(APPEARANCE),
8279
- default: APPEARANCE.POPUP
8278
+ validator: (value) => expect(value).toBeOneOf(APPEARANCE$2),
8279
+ default: APPEARANCE$2.POPUP
8280
8280
  },
8281
8281
  /** Время, через которое плавающий элемент удаляется со страницы, если был скрыт */
8282
8282
  disposeTimeout: {
@@ -8374,7 +8374,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
8374
8374
  });
8375
8375
  watch(() => props.opened, toggle);
8376
8376
  return (_ctx, _cache) => {
8377
- return openBlock(), createBlock(_sfc_main$o, mergeProps({
8377
+ return openBlock(), createBlock(_sfc_main$y, mergeProps({
8378
8378
  id: __props.id,
8379
8379
  opened: state.opened,
8380
8380
  closable: __props.closable,
@@ -8400,10 +8400,10 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
8400
8400
  createElementVNode("div", {
8401
8401
  class: normalizeClass({
8402
8402
  "ui-v1-modal-window__header": true,
8403
- "ui-v1-modal-window__header_pinned": _ctx.$slots.title && state.scrolled && __props.appearance === unref(APPEARANCE).POPUP && !__props.responsive
8403
+ "ui-v1-modal-window__header_pinned": _ctx.$slots.title && state.scrolled && __props.appearance === unref(APPEARANCE$2).POPUP && !__props.responsive
8404
8404
  })
8405
8405
  }, [
8406
- __props.appearance === unref(APPEARANCE).ALERT ? (openBlock(), createElementBlock("div", _hoisted_1$f, [
8406
+ __props.appearance === unref(APPEARANCE$2).ALERT ? (openBlock(), createElementBlock("div", _hoisted_1$j, [
8407
8407
  renderSlot(_ctx.$slots, "icon", {
8408
8408
  overlapped: state.overlapped
8409
8409
  }, () => [
@@ -8418,8 +8418,8 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
8418
8418
  renderSlot(_ctx.$slots, "title", {
8419
8419
  overlapped: state.overlapped
8420
8420
  })
8421
- ], 8, _hoisted_2$7)) : createCommentVNode("", true),
8422
- __props.appearance !== unref(APPEARANCE).ALERT ? (openBlock(), createElementBlock("button", {
8421
+ ], 8, _hoisted_2$9)) : createCommentVNode("", true),
8422
+ __props.appearance !== unref(APPEARANCE$2).ALERT ? (openBlock(), createElementBlock("button", {
8423
8423
  key: 2,
8424
8424
  "aria-keyshortcuts": "Esc",
8425
8425
  "aria-label": "Close dialog",
@@ -8432,9 +8432,9 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
8432
8432
  title: "Close dialog",
8433
8433
  style: { "width": "100%" }
8434
8434
  })
8435
- ], 8, _hoisted_3$4)) : createCommentVNode("", true)
8435
+ ], 8, _hoisted_3$5)) : createCommentVNode("", true)
8436
8436
  ], 2),
8437
- __props.responsive ? (openBlock(), createBlock(_sfc_main$x, {
8437
+ __props.responsive ? (openBlock(), createBlock(_sfc_main$H, {
8438
8438
  key: 0,
8439
8439
  class: "ui-v1-modal-window__content",
8440
8440
  "show-on-mac": "",
@@ -8446,13 +8446,13 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
8446
8446
  })
8447
8447
  ]),
8448
8448
  _: 3
8449
- })) : (openBlock(), createElementBlock("div", _hoisted_4, [
8449
+ })) : (openBlock(), createElementBlock("div", _hoisted_4$1, [
8450
8450
  renderSlot(_ctx.$slots, "default", {
8451
8451
  overlapped: state.overlapped
8452
8452
  })
8453
8453
  ])),
8454
- _ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_5, [
8455
- __props.appearance === unref(APPEARANCE).HINT ? (openBlock(), createElementBlock("div", _hoisted_6, [
8454
+ _ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
8455
+ __props.appearance === unref(APPEARANCE$2).HINT ? (openBlock(), createElementBlock("div", _hoisted_6, [
8456
8456
  renderSlot(_ctx.$slots, "footer", {
8457
8457
  overlapped: state.overlapped
8458
8458
  })
@@ -8467,58 +8467,58 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
8467
8467
  };
8468
8468
  }
8469
8469
  });
8470
- const _hoisted_1$e = {
8470
+ const _hoisted_1$i = {
8471
8471
  xmlns: "http://www.w3.org/2000/svg",
8472
8472
  viewBox: "0 0 24 24"
8473
8473
  };
8474
- function render$5(_ctx, _cache) {
8475
- return openBlock(), createElementBlock("svg", _hoisted_1$e, [..._cache[0] || (_cache[0] = [
8474
+ function render$6(_ctx, _cache) {
8475
+ return openBlock(), createElementBlock("svg", _hoisted_1$i, [..._cache[0] || (_cache[0] = [
8476
8476
  createElementVNode("path", {
8477
8477
  fill: "currentColor",
8478
8478
  d: "M19 11.5v1a.5.5 0 0 1-.5.5H13v5.5a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5V13H5.5a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5H11V5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V11h5.5a.5.5 0 0 1 .5.5"
8479
8479
  }, null, -1)
8480
8480
  ])]);
8481
8481
  }
8482
- const IconAdd = { render: render$5 };
8483
- const _hoisted_1$d = {
8482
+ const IconAdd = { render: render$6 };
8483
+ const _hoisted_1$h = {
8484
8484
  xmlns: "http://www.w3.org/2000/svg",
8485
8485
  viewBox: "0 0 24 24"
8486
8486
  };
8487
- function render$4(_ctx, _cache) {
8488
- return openBlock(), createElementBlock("svg", _hoisted_1$d, [..._cache[0] || (_cache[0] = [
8487
+ function render$5(_ctx, _cache) {
8488
+ return openBlock(), createElementBlock("svg", _hoisted_1$h, [..._cache[0] || (_cache[0] = [
8489
8489
  createElementVNode("path", {
8490
8490
  fill: "currentColor",
8491
8491
  d: "M8.138 11.06A.52.52 0 0 1 8 10.705c0-.133.05-.261.138-.355l.187-.2A.44.44 0 0 1 8.66 10h6.68a.44.44 0 0 1 .335.15l.187.2a.52.52 0 0 1 .138.355c0 .133-.05.26-.138.355l-3.536 3.788A.43.43 0 0 1 12 15a.43.43 0 0 1-.326-.152z"
8492
8492
  }, null, -1)
8493
8493
  ])]);
8494
8494
  }
8495
- const IconCaret = { render: render$4 };
8496
- const _hoisted_1$c = {
8495
+ const IconCaret = { render: render$5 };
8496
+ const _hoisted_1$g = {
8497
8497
  xmlns: "http://www.w3.org/2000/svg",
8498
8498
  viewBox: "0 0 24 24"
8499
8499
  };
8500
- function render$3(_ctx, _cache) {
8501
- return openBlock(), createElementBlock("svg", _hoisted_1$c, [..._cache[0] || (_cache[0] = [
8500
+ function render$4(_ctx, _cache) {
8501
+ return openBlock(), createElementBlock("svg", _hoisted_1$g, [..._cache[0] || (_cache[0] = [
8502
8502
  createElementVNode("path", {
8503
8503
  fill: "currentColor",
8504
8504
  d: "M16.14 12.94a.5.5 0 0 1 0 .71l-.2.2a.5.5 0 0 1-.36.15H8.42a.5.5 0 0 1-.36-.15l-.2-.2a.5.5 0 0 1 0-.71l3.79-3.79a.48.48 0 0 1 .7 0z"
8505
8505
  }, null, -1)
8506
8506
  ])]);
8507
8507
  }
8508
- const IconCaretUp = { render: render$3 };
8509
- const _hoisted_1$b = {
8508
+ const IconCaretUp = { render: render$4 };
8509
+ const _hoisted_1$f = {
8510
8510
  xmlns: "http://www.w3.org/2000/svg",
8511
8511
  viewBox: "0 0 24 24"
8512
8512
  };
8513
- function render$2(_ctx, _cache) {
8514
- return openBlock(), createElementBlock("svg", _hoisted_1$b, [..._cache[0] || (_cache[0] = [
8513
+ function render$3(_ctx, _cache) {
8514
+ return openBlock(), createElementBlock("svg", _hoisted_1$f, [..._cache[0] || (_cache[0] = [
8515
8515
  createElementVNode("path", {
8516
8516
  fill: "currentColor",
8517
8517
  d: "M5.5 13.25c-.276 0-.5-.28-.5-.625v-1.25c0-.345.224-.625.5-.625h13c.276 0 .5.28.5.625v1.25c0 .345-.224.625-.5.625z"
8518
8518
  }, null, -1)
8519
8519
  ])]);
8520
8520
  }
8521
- const IconRemove = { render: render$2 };
8521
+ const IconRemove = { render: render$3 };
8522
8522
  var DIRECTION$1 = /* @__PURE__ */ ((DIRECTION2) => {
8523
8523
  DIRECTION2["HORIZONTAL"] = "horizontal";
8524
8524
  DIRECTION2["VERTICAL"] = "vertical";
@@ -8621,10 +8621,10 @@ const _i18n$3 = define({
8621
8621
  "ru-RU": messages_ru_RU$3
8622
8622
  }
8623
8623
  });
8624
- const _hoisted_1$a = ["id", "aria-disabled", "aria-readonly"];
8625
- const _hoisted_2$6 = ["id", "aria-controls", "aria-label", "disabled"];
8626
- const _hoisted_3$3 = ["id", "aria-controls", "aria-label", "disabled"];
8627
- const _sfc_main$m = /* @__PURE__ */ defineComponent({
8624
+ const _hoisted_1$e = ["id", "aria-disabled", "aria-readonly"];
8625
+ const _hoisted_2$8 = ["id", "aria-controls", "aria-label", "disabled"];
8626
+ const _hoisted_3$4 = ["id", "aria-controls", "aria-label", "disabled"];
8627
+ const _sfc_main$w = /* @__PURE__ */ defineComponent({
8628
8628
  ...{
8629
8629
  inheritAttrs: false
8630
8630
  },
@@ -8686,8 +8686,8 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
8686
8686
  },
8687
8687
  size: {
8688
8688
  type: String,
8689
- validator: (value) => Object.values(SIZE$5).includes(value),
8690
- default: SIZE$5.SM
8689
+ validator: (value) => Object.values(SIZE$7).includes(value),
8690
+ default: SIZE$7.SM
8691
8691
  },
8692
8692
  outlined: {
8693
8693
  type: Boolean,
@@ -8972,8 +8972,8 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
8972
8972
  "aria-hidden": "true",
8973
8973
  class: "ui-v1-number-stepper__icon"
8974
8974
  }))
8975
- ], 8, _hoisted_2$6),
8976
- createVNode(_sfc_main$z, mergeProps(resolvedTextboxOptions.value, {
8975
+ ], 8, _hoisted_2$8),
8976
+ createVNode(_sfc_main$J, mergeProps(resolvedTextboxOptions.value, {
8977
8977
  id: stepperId.value,
8978
8978
  ref_key: "textbox",
8979
8979
  ref: textbox,
@@ -9012,63 +9012,446 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
9012
9012
  "aria-hidden": "true",
9013
9013
  class: "ui-v1-number-stepper__icon"
9014
9014
  }))
9015
- ], 8, _hoisted_3$3)
9016
- ], 16, _hoisted_1$a);
9017
- };
9018
- }
9019
- });
9020
- const _sfc_main$l = /* @__PURE__ */ defineComponent({
9021
- __name: "UiPopperConnector",
9022
- setup(__props) {
9023
- const target = ref(null);
9024
- provide(ElementRefKey, target);
9025
- provide(PopperTargetKey, computed(() => target.value));
9026
- return (_ctx, _cache) => {
9027
- return renderSlot(_ctx.$slots, "default");
9028
- };
9029
- }
9030
- });
9031
- const _sfc_main$k = /* @__PURE__ */ defineComponent({
9032
- __name: "UiPopperTarget",
9033
- props: {
9034
- tag: {
9035
- type: String,
9036
- default: "div"
9037
- }
9038
- },
9039
- setup(__props) {
9040
- const root = useElementRef();
9041
- return (_ctx, _cache) => {
9042
- return openBlock(), createBlock(resolveDynamicComponent(__props.tag), mergeProps({
9043
- ref_key: "root",
9044
- ref: root
9045
- }, _ctx.$attrs), {
9046
- default: withCtx(() => [
9047
- renderSlot(_ctx.$slots, "default")
9048
- ]),
9049
- _: 3
9050
- }, 16);
9015
+ ], 8, _hoisted_3$4)
9016
+ ], 16, _hoisted_1$e);
9051
9017
  };
9052
9018
  }
9053
9019
  });
9054
- const _hoisted_1$9 = ["id", "name", "value", "checked", "required", "disabled"];
9055
- let nameCounter = 0;
9056
- let idCounter = 0;
9057
- const __default__$1 = {};
9058
- const _sfc_main$j = /* @__PURE__ */ defineComponent({
9059
- ...__default__$1,
9060
- ...{
9061
- inheritAttrs: false
9062
- },
9063
- __name: "UiRadio",
9020
+ const _hoisted_1$d = ["id", "aria-label", "role", "tabindex", "onKeydown"];
9021
+ const _sfc_main$v = /* @__PURE__ */ defineComponent({
9022
+ __name: "UiPageHeaderTitle",
9064
9023
  props: {
9024
+ /** Уникальный идентификатор корневого элемента */
9065
9025
  id: {
9066
9026
  type: null,
9067
9027
  validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
9068
- default: () => "ui-v1-radio-" + ++idCounter
9028
+ default: void 0
9069
9029
  },
9070
- /** Атрибут name нативного поля ввода */
9071
- name: {
9030
+ /** Текст заголовка */
9031
+ value: {
9032
+ type: null,
9033
+ default: ""
9034
+ },
9035
+ /** Плейсхолдер, отображаемый при отсутствии текста */
9036
+ placeholder: {
9037
+ type: String,
9038
+ default: ""
9039
+ },
9040
+ /** Текст ошибки для tooltip при пустом невалидном заголовке */
9041
+ error: {
9042
+ type: String,
9043
+ default: ""
9044
+ },
9045
+ /** Разрешает перейти в режим редактирования по клику */
9046
+ editable: {
9047
+ type: Boolean,
9048
+ default: false
9049
+ },
9050
+ /** Автоматически переводит фокус во встроенный UiTextbox при монтировании */
9051
+ autofocus: {
9052
+ type: Boolean,
9053
+ default: false
9054
+ },
9055
+ /** Автоматически выделяет текст заголовка при фокусе на встроенном поле */
9056
+ autoselect: {
9057
+ type: Boolean,
9058
+ default: true
9059
+ },
9060
+ /** Делает встроенное поле только для чтения */
9061
+ readonly: {
9062
+ type: Boolean,
9063
+ default: false
9064
+ },
9065
+ /** Полностью отключает заголовок */
9066
+ disabled: {
9067
+ type: Boolean,
9068
+ default: false
9069
+ },
9070
+ /** Помечает встроенное поле как невалидное */
9071
+ invalid: {
9072
+ type: Boolean,
9073
+ default: false
9074
+ }
9075
+ },
9076
+ emits: ["blur", "change", "focus", "keydown", "update:value"],
9077
+ setup(__props, { expose: __expose, emit: __emit }) {
9078
+ const props = __props;
9079
+ const emit = __emit;
9080
+ const uid2 = useId();
9081
+ const textbox = ref(null);
9082
+ const isEditing = ref(false);
9083
+ const currentValue = ref(props.value === null ? "" : String(props.value));
9084
+ const textboxId = computed(() => `${props.id ?? uid2}-input`);
9085
+ const canEdit = computed(() => props.editable && !props.readonly && !props.disabled);
9086
+ const displayPlaceholder = computed(() => currentValue.value ? "" : props.placeholder);
9087
+ const displayInvalid = computed(() => props.invalid && currentValue.value === "");
9088
+ const displayError = computed(() => displayInvalid.value && props.error !== "");
9089
+ watch(() => props.value, (nextValue) => {
9090
+ currentValue.value = nextValue === null ? "" : String(nextValue);
9091
+ });
9092
+ watch(canEdit, (nextCanEdit) => {
9093
+ if (!nextCanEdit) {
9094
+ isEditing.value = false;
9095
+ }
9096
+ });
9097
+ watch(displayError, async (nextDisplayError) => {
9098
+ if (!nextDisplayError || !canEdit.value) {
9099
+ return;
9100
+ }
9101
+ isEditing.value = true;
9102
+ await nextTick();
9103
+ textbox.value?.focus();
9104
+ }, {
9105
+ immediate: true
9106
+ });
9107
+ const startEditing = async () => {
9108
+ if (!canEdit.value || isEditing.value) {
9109
+ return;
9110
+ }
9111
+ isEditing.value = true;
9112
+ await nextTick();
9113
+ textbox.value?.focus();
9114
+ };
9115
+ const onMouseDown = (event) => {
9116
+ if (!canEdit.value || isEditing.value) {
9117
+ return;
9118
+ }
9119
+ event.preventDefault();
9120
+ void startEditing();
9121
+ };
9122
+ const onBlur = (event) => {
9123
+ if (displayError.value && canEdit.value) {
9124
+ isEditing.value = true;
9125
+ emit("blur", event);
9126
+ void nextTick().then(() => {
9127
+ textbox.value?.focus();
9128
+ });
9129
+ return;
9130
+ }
9131
+ isEditing.value = false;
9132
+ emit("blur", event);
9133
+ };
9134
+ const onUpdateValue = (value) => {
9135
+ currentValue.value = String(value);
9136
+ emit("update:value", value);
9137
+ };
9138
+ const onKeyDown = (event) => {
9139
+ if (event.key === "Enter" && !event.shiftKey && !event.isComposing) {
9140
+ event.preventDefault();
9141
+ if (!displayError.value) {
9142
+ textbox.value?.blur();
9143
+ isEditing.value = false;
9144
+ }
9145
+ }
9146
+ emit("keydown", event);
9147
+ };
9148
+ __expose({
9149
+ focus: () => {
9150
+ void startEditing();
9151
+ },
9152
+ blur: () => {
9153
+ if (displayError.value && canEdit.value) {
9154
+ void nextTick().then(() => {
9155
+ textbox.value?.focus();
9156
+ });
9157
+ return;
9158
+ }
9159
+ textbox.value?.blur();
9160
+ isEditing.value = false;
9161
+ }
9162
+ });
9163
+ return (_ctx, _cache) => {
9164
+ return !isEditing.value && !displayError.value ? (openBlock(), createElementBlock("h1", {
9165
+ key: 0,
9166
+ id: textboxId.value,
9167
+ "aria-label": __props.placeholder || currentValue.value || "Page title",
9168
+ class: normalizeClass({
9169
+ "ui-v1-page-header__trigger": true,
9170
+ "ui-v1-page-header__trigger_editable": canEdit.value,
9171
+ "ui-v1-page-header__trigger_empty": !!displayPlaceholder.value
9172
+ }),
9173
+ role: canEdit.value ? "button" : void 0,
9174
+ tabindex: canEdit.value ? 0 : void 0,
9175
+ onMousedown: onMouseDown,
9176
+ onClick: startEditing,
9177
+ onKeydown: [
9178
+ withKeys(withModifiers(startEditing, ["prevent"]), ["enter"]),
9179
+ withKeys(withModifiers(startEditing, ["prevent"]), ["space"])
9180
+ ]
9181
+ }, toDisplayString(currentValue.value || displayPlaceholder.value), 43, _hoisted_1$d)) : (openBlock(), createBlock(_sfc_main$J, {
9182
+ key: 1,
9183
+ id: textboxId.value,
9184
+ ref_key: "textbox",
9185
+ ref: textbox,
9186
+ value: currentValue.value,
9187
+ autofocus: __props.autofocus,
9188
+ autoselect: __props.autoselect,
9189
+ disabled: __props.disabled,
9190
+ "input-attributes": { "aria-label": __props.placeholder || "Page title" },
9191
+ invalid: displayInvalid.value,
9192
+ outlined: false,
9193
+ placeholder: displayPlaceholder.value,
9194
+ readonly: __props.readonly,
9195
+ size: "xl",
9196
+ autofit: "",
9197
+ class: "ui-v1-page-header__textbox",
9198
+ onBlur,
9199
+ onChange: _cache[0] || (_cache[0] = ($event) => emit("change", $event)),
9200
+ onFocus: _cache[1] || (_cache[1] = ($event) => emit("focus", $event)),
9201
+ onKeydown: onKeyDown,
9202
+ "onUpdate:value": onUpdateValue
9203
+ }, null, 8, ["id", "value", "autofocus", "autoselect", "disabled", "input-attributes", "invalid", "placeholder", "readonly"]));
9204
+ };
9205
+ }
9206
+ });
9207
+ const _hoisted_1$c = ["id"];
9208
+ const _hoisted_2$7 = { class: "ui-v1-page-header__main" };
9209
+ const _hoisted_3$3 = { class: "ui-v1-page-header__title" };
9210
+ const _hoisted_4 = {
9211
+ key: 0,
9212
+ class: "ui-v1-page-header__addon"
9213
+ };
9214
+ const _hoisted_5 = {
9215
+ key: 0,
9216
+ class: "ui-v1-page-header__actions"
9217
+ };
9218
+ const _sfc_main$u = /* @__PURE__ */ defineComponent({
9219
+ ...{
9220
+ inheritAttrs: false
9221
+ },
9222
+ __name: "UiPageHeaderLayout",
9223
+ props: {
9224
+ /** Уникальный идентификатор корневого элемента */
9225
+ id: {
9226
+ type: null,
9227
+ validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
9228
+ default: void 0
9229
+ },
9230
+ /** Текст заголовка */
9231
+ value: {
9232
+ type: null,
9233
+ default: ""
9234
+ },
9235
+ /** Плейсхолдер, отображаемый при отсутствии текста */
9236
+ placeholder: {
9237
+ type: String,
9238
+ default: ""
9239
+ },
9240
+ /** Текст ошибки для tooltip при пустом невалидном заголовке */
9241
+ error: {
9242
+ type: String,
9243
+ default: ""
9244
+ },
9245
+ /** Разрешает перейти в режим редактирования по клику */
9246
+ editable: {
9247
+ type: Boolean,
9248
+ default: false
9249
+ },
9250
+ /** Автоматически переводит фокус во встроенный UiTextbox при монтировании */
9251
+ autofocus: {
9252
+ type: Boolean,
9253
+ default: false
9254
+ },
9255
+ /** Автоматически выделяет текст заголовка при фокусе на встроенном поле */
9256
+ autoselect: {
9257
+ type: Boolean,
9258
+ default: true
9259
+ },
9260
+ /** Делает встроенное поле только для чтения */
9261
+ readonly: {
9262
+ type: Boolean,
9263
+ default: false
9264
+ },
9265
+ /** Полностью отключает заголовок */
9266
+ disabled: {
9267
+ type: Boolean,
9268
+ default: false
9269
+ },
9270
+ /** Помечает встроенное поле как невалидное */
9271
+ invalid: {
9272
+ type: Boolean,
9273
+ default: false
9274
+ }
9275
+ },
9276
+ emits: ["blur", "change", "focus", "keydown", "update:value"],
9277
+ setup(__props, { expose: __expose, emit: __emit }) {
9278
+ const emit = __emit;
9279
+ const uid2 = useId();
9280
+ const main = ref(null);
9281
+ const displayInvalid = computed(() => {
9282
+ const currentValue = __props.value === null ? "" : String(__props.value);
9283
+ return __props.invalid && currentValue === "";
9284
+ });
9285
+ __expose({
9286
+ focus: () => main.value?.focus(),
9287
+ blur: () => main.value?.blur()
9288
+ });
9289
+ return (_ctx, _cache) => {
9290
+ return openBlock(), createElementBlock("div", mergeProps({
9291
+ id: __props.id ?? unref(uid2),
9292
+ class: {
9293
+ "ui-v1-page-header": true,
9294
+ "ui-v1-page-header_disabled": __props.disabled,
9295
+ "ui-v1-page-header_invalid": displayInvalid.value,
9296
+ "ui-v1-page-header_readonly": __props.readonly
9297
+ }
9298
+ }, _ctx.$attrs), [
9299
+ createElementVNode("div", _hoisted_2$7, [
9300
+ createElementVNode("div", _hoisted_3$3, [
9301
+ createVNode(_sfc_main$v, {
9302
+ id: __props.id,
9303
+ ref_key: "main",
9304
+ ref: main,
9305
+ value: __props.value,
9306
+ placeholder: __props.placeholder,
9307
+ error: __props.error,
9308
+ editable: __props.editable,
9309
+ autofocus: __props.autofocus,
9310
+ autoselect: __props.autoselect,
9311
+ readonly: __props.readonly,
9312
+ disabled: __props.disabled,
9313
+ invalid: __props.invalid,
9314
+ onBlur: _cache[0] || (_cache[0] = ($event) => emit("blur", $event)),
9315
+ onChange: _cache[1] || (_cache[1] = ($event) => emit("change", $event)),
9316
+ onFocus: _cache[2] || (_cache[2] = ($event) => emit("focus", $event)),
9317
+ onKeydown: _cache[3] || (_cache[3] = ($event) => emit("keydown", $event)),
9318
+ "onUpdate:value": _cache[4] || (_cache[4] = ($event) => emit("update:value", $event))
9319
+ }, null, 8, ["id", "value", "placeholder", "error", "editable", "autofocus", "autoselect", "readonly", "disabled", "invalid"])
9320
+ ]),
9321
+ "addon" in _ctx.$slots ? (openBlock(), createElementBlock("div", _hoisted_4, [
9322
+ renderSlot(_ctx.$slots, "addon")
9323
+ ])) : createCommentVNode("", true)
9324
+ ]),
9325
+ "actions" in _ctx.$slots ? (openBlock(), createElementBlock("div", _hoisted_5, [
9326
+ renderSlot(_ctx.$slots, "actions")
9327
+ ])) : createCommentVNode("", true)
9328
+ ], 16, _hoisted_1$c);
9329
+ };
9330
+ }
9331
+ });
9332
+ const _sfc_main$t = /* @__PURE__ */ defineComponent({
9333
+ ...{
9334
+ inheritAttrs: false
9335
+ },
9336
+ __name: "UiPageHeader",
9337
+ props: {
9338
+ id: {},
9339
+ value: { default: "" },
9340
+ placeholder: { default: "" },
9341
+ error: { default: "" },
9342
+ editable: { type: Boolean, default: false },
9343
+ autofocus: { type: Boolean, default: false },
9344
+ autoselect: { type: Boolean, default: true },
9345
+ readonly: { type: Boolean, default: false },
9346
+ disabled: { type: Boolean, default: false },
9347
+ invalid: { type: Boolean, default: false }
9348
+ },
9349
+ emits: ["blur", "change", "focus", "keydown", "update:value"],
9350
+ setup(__props, { expose: __expose }) {
9351
+ const props = __props;
9352
+ const attrs = useAttrs();
9353
+ const baseProps = computed(() => ({
9354
+ ...attrs,
9355
+ id: props.id,
9356
+ value: props.value,
9357
+ placeholder: props.placeholder,
9358
+ error: props.error,
9359
+ editable: props.editable,
9360
+ autofocus: props.autofocus,
9361
+ autoselect: props.autoselect,
9362
+ readonly: props.readonly,
9363
+ disabled: props.disabled,
9364
+ invalid: props.invalid
9365
+ }));
9366
+ const base = ref(null);
9367
+ __expose({
9368
+ focus: () => base.value?.focus(),
9369
+ blur: () => base.value?.blur()
9370
+ });
9371
+ return (_ctx, _cache) => {
9372
+ return openBlock(), createBlock(_sfc_main$u, mergeProps({
9373
+ ref_key: "base",
9374
+ ref: base
9375
+ }, baseProps.value, {
9376
+ onBlur: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("blur", $event)),
9377
+ onChange: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("change", $event)),
9378
+ onFocus: _cache[2] || (_cache[2] = ($event) => _ctx.$emit("focus", $event)),
9379
+ onKeydown: _cache[3] || (_cache[3] = ($event) => _ctx.$emit("keydown", $event)),
9380
+ "onUpdate:value": _cache[4] || (_cache[4] = ($event) => _ctx.$emit("update:value", $event))
9381
+ }), createSlots({ _: 2 }, [
9382
+ _ctx.$slots.addon ? {
9383
+ name: "addon",
9384
+ fn: withCtx(() => [
9385
+ renderSlot(_ctx.$slots, "addon")
9386
+ ]),
9387
+ key: "0"
9388
+ } : void 0,
9389
+ _ctx.$slots.actions ? {
9390
+ name: "actions",
9391
+ fn: withCtx(() => [
9392
+ renderSlot(_ctx.$slots, "actions")
9393
+ ]),
9394
+ key: "1"
9395
+ } : void 0
9396
+ ]), 1040);
9397
+ };
9398
+ }
9399
+ });
9400
+ const _sfc_main$s = /* @__PURE__ */ defineComponent({
9401
+ __name: "UiPopperConnector",
9402
+ setup(__props) {
9403
+ const target = ref(null);
9404
+ provide(ElementRefKey, target);
9405
+ provide(PopperTargetKey, computed(() => target.value));
9406
+ return (_ctx, _cache) => {
9407
+ return renderSlot(_ctx.$slots, "default");
9408
+ };
9409
+ }
9410
+ });
9411
+ const _sfc_main$r = /* @__PURE__ */ defineComponent({
9412
+ ...{
9413
+ inheritAttrs: false
9414
+ },
9415
+ __name: "UiPopperTarget",
9416
+ props: {
9417
+ tag: {
9418
+ type: String,
9419
+ default: "div"
9420
+ }
9421
+ },
9422
+ setup(__props) {
9423
+ const root = useElementRef();
9424
+ return (_ctx, _cache) => {
9425
+ return openBlock(), createBlock(resolveDynamicComponent(__props.tag), mergeProps({
9426
+ ref_key: "root",
9427
+ ref: root
9428
+ }, _ctx.$attrs), {
9429
+ default: withCtx(() => [
9430
+ renderSlot(_ctx.$slots, "default")
9431
+ ]),
9432
+ _: 3
9433
+ }, 16);
9434
+ };
9435
+ }
9436
+ });
9437
+ const _hoisted_1$b = ["id", "name", "value", "checked", "required", "disabled"];
9438
+ let nameCounter = 0;
9439
+ let idCounter = 0;
9440
+ const __default__$1 = {};
9441
+ const _sfc_main$q = /* @__PURE__ */ defineComponent({
9442
+ ...__default__$1,
9443
+ ...{
9444
+ inheritAttrs: false
9445
+ },
9446
+ __name: "UiRadio",
9447
+ props: {
9448
+ id: {
9449
+ type: null,
9450
+ validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
9451
+ default: () => "ui-v1-radio-" + ++idCounter
9452
+ },
9453
+ /** Атрибут name нативного поля ввода */
9454
+ name: {
9072
9455
  type: String,
9073
9456
  default: () => "ui-v1-radio-" + ++nameCounter
9074
9457
  },
@@ -9144,32 +9527,125 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
9144
9527
  type: "radio",
9145
9528
  class: "ui-v1-radio__input",
9146
9529
  onChange
9147
- }), null, 16, _hoisted_1$9),
9530
+ }), null, 16, _hoisted_1$b),
9148
9531
  _cache[0] || (_cache[0] = createElementVNode("span", { class: "ui-v1-radio__checkmark" }, null, -1))
9149
9532
  ], 16);
9150
9533
  };
9151
9534
  }
9152
9535
  });
9153
- var TYPE = /* @__PURE__ */ ((TYPE2) => {
9154
- TYPE2["SINGLE"] = "single";
9155
- TYPE2["RANGE"] = "range";
9156
- return TYPE2;
9157
- })(TYPE || {});
9158
- const MIN = 0;
9159
- const MAX = 100;
9160
- const clamp = (value, min2 = MIN, max2 = MAX) => value < min2 ? min2 : value > max2 ? max2 : value;
9161
- const normalize$1 = (value, min2 = MIN, max2 = MAX) => {
9162
- return min2 !== max2 ? 100 * (clamp(value, min2, max2) - min2) / (max2 - min2) : 0;
9163
- };
9164
- const getValue = (values, reverse) => {
9165
- const value = [...values];
9166
- return reverse ? value.reverse() : value;
9167
- };
9168
- const createManipulator = (options) => {
9169
- let trackLeft = 0;
9170
- let trackWidth = 0;
9171
- const actualizeTrack = () => {
9172
- const rect = options.getTrack()?.getBoundingClientRect() ?? null;
9536
+ var APPEARANCE$1 = /* @__PURE__ */ ((APPEARANCE2) => {
9537
+ APPEARANCE2["DEFAULT"] = "default";
9538
+ APPEARANCE2["SECTION"] = "section";
9539
+ return APPEARANCE2;
9540
+ })(APPEARANCE$1 || {});
9541
+ var SIZE$3 = /* @__PURE__ */ ((SIZE2) => {
9542
+ SIZE2["SM"] = "sm";
9543
+ SIZE2["MD"] = "md";
9544
+ SIZE2["LG"] = "lg";
9545
+ return SIZE2;
9546
+ })(SIZE$3 || {});
9547
+ const _sfc_main$p = defineComponent({
9548
+ name: "UiRadioSwitchOptionShell",
9549
+ inheritAttrs: false,
9550
+ props: {
9551
+ id: {
9552
+ type: String,
9553
+ default: void 0
9554
+ },
9555
+ appearance: {
9556
+ type: String,
9557
+ default: APPEARANCE$1.DEFAULT,
9558
+ validator: (appearance) => Object.values(APPEARANCE$1).includes(appearance)
9559
+ },
9560
+ size: {
9561
+ type: String,
9562
+ default: SIZE$3.MD,
9563
+ validator: (size) => Object.values(SIZE$3).includes(size)
9564
+ },
9565
+ checked: {
9566
+ type: Boolean,
9567
+ default: false
9568
+ },
9569
+ disabled: {
9570
+ type: Boolean,
9571
+ default: false
9572
+ }
9573
+ },
9574
+ setup(props, { attrs, expose, slots }) {
9575
+ const root = ref(null);
9576
+ expose({
9577
+ focus: () => root.value?.focus(),
9578
+ blur: () => root.value?.blur()
9579
+ });
9580
+ return () => h("div", {
9581
+ ref: root,
9582
+ ...attrs,
9583
+ id: props.id,
9584
+ role: attrs.role ?? "radio",
9585
+ "aria-checked": `${props.checked}`,
9586
+ "aria-disabled": `${props.disabled}`,
9587
+ class: [attrs.class, {
9588
+ "ui-v1-radio-switch-option": true,
9589
+ "ui-v1-radio-switch-option_standalone": props.appearance === APPEARANCE$1.SECTION,
9590
+ "ui-v1-radio-switch-option_default": props.appearance === APPEARANCE$1.DEFAULT,
9591
+ [`ui-v1-radio-switch-option_${props.size}`]: props.appearance === APPEARANCE$1.DEFAULT,
9592
+ "ui-v1-radio-switch-option_active": props.checked,
9593
+ "ui-v1-radio-switch-option_disabled": props.disabled
9594
+ }]
9595
+ }, slots.default?.());
9596
+ }
9597
+ });
9598
+ const _sfc_main$o = defineComponent({
9599
+ name: "UiRadioSwitchRoot",
9600
+ props: {
9601
+ appearance: {
9602
+ type: String,
9603
+ default: APPEARANCE$1.DEFAULT,
9604
+ validator: (appearance) => Object.values(APPEARANCE$1).includes(appearance)
9605
+ },
9606
+ size: {
9607
+ type: String,
9608
+ default: SIZE$3.MD,
9609
+ validator: (size) => Object.values(SIZE$3).includes(size)
9610
+ },
9611
+ rubber: {
9612
+ type: Boolean,
9613
+ default: false
9614
+ }
9615
+ },
9616
+ setup(props, { attrs, slots }) {
9617
+ return () => h("div", {
9618
+ ...attrs,
9619
+ role: attrs.role ?? "radiogroup",
9620
+ class: [attrs.class, {
9621
+ "ui-v1-radio-switch": true,
9622
+ [`ui-v1-radio-switch_${props.size}`]: props.appearance === APPEARANCE$1.DEFAULT,
9623
+ "ui-v1-radio-switch_borderless": props.appearance === APPEARANCE$1.SECTION,
9624
+ "ui-v1-radio-switch_rubber": props.rubber
9625
+ }]
9626
+ }, slots.default?.());
9627
+ }
9628
+ });
9629
+ var TYPE = /* @__PURE__ */ ((TYPE2) => {
9630
+ TYPE2["SINGLE"] = "single";
9631
+ TYPE2["RANGE"] = "range";
9632
+ return TYPE2;
9633
+ })(TYPE || {});
9634
+ const MIN = 0;
9635
+ const MAX = 100;
9636
+ const clamp = (value, min2 = MIN, max2 = MAX) => value < min2 ? min2 : value > max2 ? max2 : value;
9637
+ const normalize$1 = (value, min2 = MIN, max2 = MAX) => {
9638
+ return min2 !== max2 ? 100 * (clamp(value, min2, max2) - min2) / (max2 - min2) : 0;
9639
+ };
9640
+ const getValue = (values, reverse) => {
9641
+ const value = [...values];
9642
+ return reverse ? value.reverse() : value;
9643
+ };
9644
+ const createManipulator = (options) => {
9645
+ let trackLeft = 0;
9646
+ let trackWidth = 0;
9647
+ const actualizeTrack = () => {
9648
+ const rect = options.getTrack()?.getBoundingClientRect() ?? null;
9173
9649
  trackLeft = rect?.left ?? 0;
9174
9650
  trackWidth = rect?.width ?? 0;
9175
9651
  };
@@ -9250,16 +9726,16 @@ const createManipulator = (options) => {
9250
9726
  onDragEnd
9251
9727
  };
9252
9728
  };
9253
- const _hoisted_1$8 = {
9729
+ const _hoisted_1$a = {
9254
9730
  key: 0,
9255
9731
  class: "ui-v1-slider__label"
9256
9732
  };
9257
- const _hoisted_2$5 = ["onMousedown", "onKeydown", "onFocus"];
9733
+ const _hoisted_2$6 = ["onMousedown", "onKeydown", "onFocus"];
9258
9734
  const _hoisted_3$2 = {
9259
9735
  key: 1,
9260
9736
  class: "ui-v1-slider__label"
9261
9737
  };
9262
- const _sfc_main$i = /* @__PURE__ */ defineComponent({
9738
+ const _sfc_main$n = /* @__PURE__ */ defineComponent({
9263
9739
  __name: "UiSlider",
9264
9740
  props: {
9265
9741
  type: {
@@ -9422,7 +9898,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
9422
9898
  onClick: _cache[2] || (_cache[2] = ($event) => unref(onClick)($event)),
9423
9899
  onKeydown: _cache[3] || (_cache[3] = ($event) => onRootKeydown($event))
9424
9900
  }), [
9425
- props.labelled ? (openBlock(), createElementBlock("div", _hoisted_1$8, [
9901
+ props.labelled ? (openBlock(), createElementBlock("div", _hoisted_1$a, [
9426
9902
  renderSlot(_ctx.$slots, "label", {
9427
9903
  boundary: props.min
9428
9904
  })
@@ -9463,7 +9939,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
9463
9939
  key: 0,
9464
9940
  boundary: handle.value
9465
9941
  }) : createCommentVNode("", true)
9466
- ], 16, _hoisted_2$5);
9942
+ ], 16, _hoisted_2$6);
9467
9943
  }), 128))
9468
9944
  ], 512),
9469
9945
  props.labelled ? (openBlock(), createElementBlock("div", _hoisted_3$2, [
@@ -9486,7 +9962,7 @@ var PLACEMENT = /* @__PURE__ */ ((PLACEMENT2) => {
9486
9962
  PLACEMENT2["LEFT_START"] = "left-start";
9487
9963
  return PLACEMENT2;
9488
9964
  })(PLACEMENT || {});
9489
- const _sfc_main$h = /* @__PURE__ */ defineComponent({
9965
+ const _sfc_main$m = /* @__PURE__ */ defineComponent({
9490
9966
  __name: "UiSelectPopper",
9491
9967
  props: {
9492
9968
  /** Атрибут id корневого элемента выпадающего списка. Должен быть уникальным на странице */
@@ -9609,7 +10085,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
9609
10085
  onMounted(() => {
9610
10086
  });
9611
10087
  return (_ctx, _cache) => {
9612
- return openBlock(), createBlock(_sfc_main$D, mergeProps({
10088
+ return openBlock(), createBlock(_sfc_main$N, mergeProps({
9613
10089
  id: __props.id + "-popper",
9614
10090
  ref_key: "popper",
9615
10091
  ref: popper,
@@ -9677,7 +10153,7 @@ const _i18n$2 = define({
9677
10153
  "ru-RU": messages_ru_RU$2
9678
10154
  }
9679
10155
  });
9680
- const _sfc_main$g = /* @__PURE__ */ defineComponent({
10156
+ const _sfc_main$l = /* @__PURE__ */ defineComponent({
9681
10157
  __name: "UiSelectTrigger",
9682
10158
  props: {
9683
10159
  /** Атрибут id корневого элемента выпадающего списка. Должен быть уникальным на странице */
@@ -9738,8 +10214,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
9738
10214
  /** Размер поля ввода */
9739
10215
  textboxSize: {
9740
10216
  type: String,
9741
- validator: (size) => Object.values(SIZE$5).includes(size),
9742
- default: SIZE$5.SM
10217
+ validator: (size) => Object.values(SIZE$7).includes(size),
10218
+ default: SIZE$7.SM
9743
10219
  },
9744
10220
  /** Состояние открытия выпадающего списка */
9745
10221
  expanded: {
@@ -9903,7 +10379,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
9903
10379
  class: "ui-v1-select__touchstone"
9904
10380
  }, toDisplayString(selectionLabels.value), 513)) : createCommentVNode("", true),
9905
10381
  renderSlot(_ctx.$slots, "trigger", {}, () => [
9906
- createVNode(_sfc_main$z, {
10382
+ createVNode(_sfc_main$J, {
9907
10383
  id: __props.id,
9908
10384
  value: inputValue.value,
9909
10385
  placeholder: !inputReadonly.value && __props.expanded ? i18n.value.t("search.placeholder") : __props.placeholder,
@@ -9944,19 +10420,19 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
9944
10420
  };
9945
10421
  }
9946
10422
  });
9947
- const _hoisted_1$7 = ["id", "checked", "disabled", "aria-checked", "aria-disabled"];
9948
- const _hoisted_2$4 = { class: "ui-v1-switch__track" };
10423
+ const _hoisted_1$9 = ["id", "checked", "disabled", "aria-checked", "aria-disabled"];
10424
+ const _hoisted_2$5 = { class: "ui-v1-switch__track" };
9949
10425
  const _hoisted_3$1 = { class: "ui-v1-switch__handle" };
9950
- let counter = 0;
10426
+ let counter$1 = 0;
9951
10427
  const __default__ = {};
9952
- const _sfc_main$f = /* @__PURE__ */ defineComponent({
10428
+ const _sfc_main$k = /* @__PURE__ */ defineComponent({
9953
10429
  ...__default__,
9954
10430
  __name: "UiSwitch",
9955
10431
  props: {
9956
10432
  id: {
9957
10433
  type: null,
9958
10434
  validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
9959
- default: () => "ui-v1-switch-" + ++counter
10435
+ default: () => "ui-v1-switch-" + ++counter$1
9960
10436
  },
9961
10437
  /** Включен/выключен */
9962
10438
  value: {
@@ -10022,8 +10498,8 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
10022
10498
  role: "switch",
10023
10499
  class: "ui-v1-switch__input",
10024
10500
  onChange
10025
- }), null, 16, _hoisted_1$7),
10026
- createElementVNode("span", _hoisted_2$4, [
10501
+ }), null, 16, _hoisted_1$9),
10502
+ createElementVNode("span", _hoisted_2$5, [
10027
10503
  createElementVNode("span", _hoisted_3$1, [
10028
10504
  !__props.square ? (openBlock(), createBlock(unref(IconDone), {
10029
10505
  key: 0,
@@ -10057,7 +10533,7 @@ const byRowKey = (key) => {
10057
10533
  };
10058
10534
  const asRowClass = (value) => value;
10059
10535
  const asRowAttrs = (value) => value;
10060
- const _sfc_main$e = defineComponent({
10536
+ const _sfc_main$j = defineComponent({
10061
10537
  name: "UiTableBodyCell",
10062
10538
  props: {
10063
10539
  align: {
@@ -10109,7 +10585,7 @@ const toCssSize = (value) => {
10109
10585
  }
10110
10586
  return value;
10111
10587
  };
10112
- const _sfc_main$d = defineComponent({
10588
+ const _sfc_main$i = defineComponent({
10113
10589
  name: "UiTableCol",
10114
10590
  props: {
10115
10591
  width: {
@@ -10128,6 +10604,7 @@ const _sfc_main$d = defineComponent({
10128
10604
  setup(props, { attrs }) {
10129
10605
  return () => h("col", {
10130
10606
  ...attrs,
10607
+ width: props.width,
10131
10608
  style: [
10132
10609
  attrs.style ?? null,
10133
10610
  {
@@ -10139,9 +10616,9 @@ const _sfc_main$d = defineComponent({
10139
10616
  });
10140
10617
  }
10141
10618
  });
10142
- const _hoisted_1$6 = ["type"];
10143
- const _hoisted_2$3 = { class: "ui-v1-table__footer-button-content" };
10144
- const _sfc_main$c = /* @__PURE__ */ defineComponent({
10619
+ const _hoisted_1$8 = ["type"];
10620
+ const _hoisted_2$4 = { class: "ui-v1-table__footer-button-content" };
10621
+ const _sfc_main$h = /* @__PURE__ */ defineComponent({
10145
10622
  ...{
10146
10623
  inheritAttrs: false
10147
10624
  },
@@ -10159,14 +10636,14 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
10159
10636
  type: __props.type,
10160
10637
  class: "ui-v1-table__footer-button"
10161
10638
  }, _ctx.$attrs), [
10162
- createElementVNode("span", _hoisted_2$3, [
10639
+ createElementVNode("span", _hoisted_2$4, [
10163
10640
  renderSlot(_ctx.$slots, "default")
10164
10641
  ])
10165
- ], 16, _hoisted_1$6);
10642
+ ], 16, _hoisted_1$8);
10166
10643
  };
10167
10644
  }
10168
10645
  });
10169
- const _sfc_main$b = /* @__PURE__ */ defineComponent({
10646
+ const _sfc_main$g = /* @__PURE__ */ defineComponent({
10170
10647
  ...{
10171
10648
  inheritAttrs: false
10172
10649
  },
@@ -10179,7 +10656,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
10179
10656
  };
10180
10657
  }
10181
10658
  });
10182
- const _sfc_main$a = defineComponent({
10659
+ const _sfc_main$f = defineComponent({
10183
10660
  name: "UiTableHeadCell",
10184
10661
  props: {
10185
10662
  align: {
@@ -10204,7 +10681,7 @@ const _sfc_main$a = defineComponent({
10204
10681
  }, slots.default?.());
10205
10682
  }
10206
10683
  });
10207
- const _sfc_main$9 = defineComponent({
10684
+ const _sfc_main$e = defineComponent({
10208
10685
  name: "UiTableRoot",
10209
10686
  props: {
10210
10687
  bordered: {
@@ -10227,7 +10704,7 @@ const _sfc_main$9 = defineComponent({
10227
10704
  }, slots.default?.());
10228
10705
  }
10229
10706
  });
10230
- const _sfc_main$8 = defineComponent({
10707
+ const _sfc_main$d = defineComponent({
10231
10708
  name: "UiTableRow",
10232
10709
  props: {
10233
10710
  interactive: {
@@ -10255,7 +10732,7 @@ const sectionTagByKind = {
10255
10732
  body: "tbody",
10256
10733
  foot: "tfoot"
10257
10734
  };
10258
- const _sfc_main$7 = defineComponent({
10735
+ const _sfc_main$c = defineComponent({
10259
10736
  name: "UiTableSection",
10260
10737
  props: {
10261
10738
  kind: {
@@ -10274,14 +10751,14 @@ const _sfc_main$7 = defineComponent({
10274
10751
  }, slots.default?.());
10275
10752
  }
10276
10753
  });
10277
- const _hoisted_1$5 = {
10754
+ const _hoisted_1$7 = {
10278
10755
  "aria-hidden": "true",
10279
10756
  class: "ui-v1-table__sorter-icon",
10280
10757
  xmlns: "http://www.w3.org/2000/svg",
10281
10758
  viewBox: "0 0 24 24"
10282
10759
  };
10283
- const _hoisted_2$2 = { class: "ui-v1-table__sorter-label" };
10284
- const _sfc_main$6 = /* @__PURE__ */ defineComponent({
10760
+ const _hoisted_2$3 = { class: "ui-v1-table__sorter-label" };
10761
+ const _sfc_main$b = /* @__PURE__ */ defineComponent({
10285
10762
  ...{
10286
10763
  inheritAttrs: false
10287
10764
  },
@@ -10299,7 +10776,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
10299
10776
  type: "button",
10300
10777
  class: "ui-v1-table__sorter"
10301
10778
  }, _ctx.$attrs), [
10302
- (openBlock(), createElementBlock("svg", _hoisted_1$5, [
10779
+ (openBlock(), createElementBlock("svg", _hoisted_1$7, [
10303
10780
  createElementVNode("path", {
10304
10781
  class: normalizeClass({
10305
10782
  "ui-v1-table__sorter-path": true,
@@ -10315,13 +10792,832 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
10315
10792
  d: "M7.7,15.7c0,0.1,0.1,0.3,0.1,0.4l3.8,3.8c0.2,0.2,0.5,0.2,0.7,0c0,0,0,0,0,0l3.8-3.8c0.2-0.2,0.2-0.5,0-0.7c0,0,0,0,0,0l-0.2-0.2c-0.1-0.1-0.2-0.2-0.4-0.1H8.4c-0.1,0-0.3,0.1-0.4,0.1l-0.2,0.2C7.8,15.4,7.7,15.6,7.7,15.7z"
10316
10793
  }, null, 2)
10317
10794
  ])),
10318
- createElementVNode("span", _hoisted_2$2, [
10795
+ createElementVNode("span", _hoisted_2$3, [
10319
10796
  renderSlot(_ctx.$slots, "default")
10320
10797
  ])
10321
10798
  ], 16);
10322
10799
  };
10323
10800
  }
10324
10801
  });
10802
+ const _sfc_main$a = defineComponent({
10803
+ name: "UiTab",
10804
+ inheritAttrs: false,
10805
+ props: {
10806
+ id: {
10807
+ type: String,
10808
+ required: true
10809
+ },
10810
+ label: {
10811
+ type: String,
10812
+ default: ""
10813
+ },
10814
+ counter: {
10815
+ type: [String, Number],
10816
+ default: null
10817
+ },
10818
+ disabled: {
10819
+ type: Boolean,
10820
+ default: false
10821
+ }
10822
+ },
10823
+ setup() {
10824
+ return () => null;
10825
+ }
10826
+ });
10827
+ const _hoisted_1$6 = {
10828
+ xmlns: "http://www.w3.org/2000/svg",
10829
+ viewBox: "0 0 24 24"
10830
+ };
10831
+ function render$2(_ctx, _cache) {
10832
+ return openBlock(), createElementBlock("svg", _hoisted_1$6, [..._cache[0] || (_cache[0] = [
10833
+ createElementVNode("path", {
10834
+ fill: "currentColor",
10835
+ "fill-rule": "evenodd",
10836
+ d: "M6 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4m8 2a2 2 0 1 0-4 0 2 2 0 0 0 4 0m4-2a2 2 0 1 1 0 4 2 2 0 0 1 0-4",
10837
+ "clip-rule": "evenodd"
10838
+ }, null, -1)
10839
+ ])]);
10840
+ }
10841
+ const IconMoreHorizontal = { render: render$2 };
10842
+ var SIZE$2 = /* @__PURE__ */ ((SIZE2) => {
10843
+ SIZE2["SM"] = "sm";
10844
+ SIZE2["MD"] = "md";
10845
+ SIZE2["LG"] = "lg";
10846
+ return SIZE2;
10847
+ })(SIZE$2 || {});
10848
+ var APPEARANCE = /* @__PURE__ */ ((APPEARANCE2) => {
10849
+ APPEARANCE2["TEXT"] = "text";
10850
+ APPEARANCE2["FILLED"] = "filled";
10851
+ return APPEARANCE2;
10852
+ })(APPEARANCE || {});
10853
+ const hasCounter = (value) => {
10854
+ return value !== null && typeof value !== "undefined";
10855
+ };
10856
+ const _sfc_main$9 = defineComponent({
10857
+ name: "UiTabButton",
10858
+ inheritAttrs: false,
10859
+ props: {
10860
+ item: {
10861
+ type: Object,
10862
+ required: true
10863
+ },
10864
+ active: {
10865
+ type: Boolean,
10866
+ default: false
10867
+ },
10868
+ size: {
10869
+ type: String,
10870
+ default: SIZE$2.MD,
10871
+ validator: (size) => Object.values(SIZE$2).includes(size)
10872
+ },
10873
+ appearance: {
10874
+ type: String,
10875
+ default: APPEARANCE.TEXT,
10876
+ validator: (appearance) => Object.values(APPEARANCE).includes(appearance)
10877
+ }
10878
+ },
10879
+ setup(props, { attrs, expose }) {
10880
+ const root = ref(null);
10881
+ const isIconOnly = computed(() => {
10882
+ return Boolean(props.item.iconOnly);
10883
+ });
10884
+ const focus = () => {
10885
+ root.value?.focus();
10886
+ };
10887
+ const getWidth = () => {
10888
+ return Math.ceil(root.value?.offsetWidth ?? 0);
10889
+ };
10890
+ expose({
10891
+ focus,
10892
+ getWidth
10893
+ });
10894
+ return () => h("button", {
10895
+ ...attrs,
10896
+ ref: root,
10897
+ class: [attrs.class, {
10898
+ "ui-v1-tab": true,
10899
+ [`ui-v1-tab_${props.appearance}`]: true,
10900
+ [`ui-v1-tab_${props.size}`]: true,
10901
+ "ui-v1-tab_active": props.active,
10902
+ "ui-v1-tab_disabled": Boolean(props.item.disabled),
10903
+ "ui-v1-tab_icon-without-text": isIconOnly.value
10904
+ }],
10905
+ disabled: props.item.disabled,
10906
+ type: "button"
10907
+ }, [
10908
+ props.item.iconSlot ? h("span", { class: "ui-v1-tab__icon" }, props.item.iconSlot()) : null,
10909
+ props.item.labelSlot || props.item.label ? h("span", { class: "ui-v1-tab__label" }, props.item.labelSlot?.() ?? [props.item.label]) : null,
10910
+ props.item.counterSlot || hasCounter(props.item.counter) ? h("span", { class: "ui-v1-tab__counter" }, props.item.counterSlot?.() ?? [String(props.item.counter ?? "")]) : null
10911
+ ]);
10912
+ }
10913
+ });
10914
+ const _hoisted_1$5 = {
10915
+ "aria-hidden": "true",
10916
+ class: "ui-v1-tab-group__measure"
10917
+ };
10918
+ const _hoisted_2$2 = { class: "ui-v1-tab-group__content" };
10919
+ const _sfc_main$8 = /* @__PURE__ */ defineComponent({
10920
+ __name: "UiTabGroupHead",
10921
+ props: {
10922
+ groupId: {
10923
+ type: String,
10924
+ required: true
10925
+ },
10926
+ items: {
10927
+ type: Array,
10928
+ default: () => []
10929
+ },
10930
+ headItems: {
10931
+ type: Array,
10932
+ default: () => []
10933
+ },
10934
+ activeId: {
10935
+ type: String,
10936
+ default: null
10937
+ },
10938
+ focusableId: {
10939
+ type: String,
10940
+ default: null
10941
+ },
10942
+ menuExpanded: {
10943
+ type: Boolean,
10944
+ default: false
10945
+ },
10946
+ hasMenuItems: {
10947
+ type: Boolean,
10948
+ default: false
10949
+ },
10950
+ size: {
10951
+ type: String,
10952
+ default: SIZE$2.MD,
10953
+ validator: (size) => Object.values(SIZE$2).includes(size)
10954
+ },
10955
+ appearance: {
10956
+ type: String,
10957
+ default: APPEARANCE.TEXT,
10958
+ validator: (appearance) => Object.values(APPEARANCE).includes(appearance)
10959
+ }
10960
+ },
10961
+ emits: ["focus-tab", "move-focus", "select"],
10962
+ setup(__props, { expose: __expose, emit: __emit }) {
10963
+ const props = __props;
10964
+ const emit = __emit;
10965
+ const head = ref(null);
10966
+ const headRefs = /* @__PURE__ */ new Map();
10967
+ const measureRefs = /* @__PURE__ */ new Map();
10968
+ const createIntent = (id, direction) => {
10969
+ return { id, direction };
10970
+ };
10971
+ const onTabKeydown = (id, event) => {
10972
+ switch (event.key) {
10973
+ case " ":
10974
+ case "Enter":
10975
+ event.preventDefault();
10976
+ emit("select", id);
10977
+ return;
10978
+ case "ArrowDown":
10979
+ case "ArrowRight":
10980
+ event.preventDefault();
10981
+ emit("move-focus", createIntent(id, "next"));
10982
+ return;
10983
+ case "ArrowUp":
10984
+ case "ArrowLeft":
10985
+ event.preventDefault();
10986
+ emit("move-focus", createIntent(id, "prev"));
10987
+ return;
10988
+ case "Home":
10989
+ event.preventDefault();
10990
+ emit("move-focus", createIntent(id, "first"));
10991
+ return;
10992
+ case "End":
10993
+ event.preventDefault();
10994
+ emit("move-focus", createIntent(id, "last"));
10995
+ }
10996
+ };
10997
+ const setHeadRef = (id, element) => {
10998
+ if (element) {
10999
+ headRefs.set(id, element);
11000
+ return;
11001
+ }
11002
+ headRefs.delete(id);
11003
+ };
11004
+ const setMeasureRef = (id, element) => {
11005
+ if (element) {
11006
+ measureRefs.set(id, element);
11007
+ return;
11008
+ }
11009
+ measureRefs.delete(id);
11010
+ };
11011
+ const focusTab = (id) => {
11012
+ headRefs.get(id)?.focus();
11013
+ };
11014
+ const measure = () => {
11015
+ const widths = /* @__PURE__ */ new Map();
11016
+ props.items.forEach((item) => {
11017
+ widths.set(item.id, measureRefs.get(item.id)?.getWidth() ?? 0);
11018
+ });
11019
+ return {
11020
+ availableWidth: Math.ceil(head.value?.clientWidth ?? 0),
11021
+ widths
11022
+ };
11023
+ };
11024
+ __expose({
11025
+ focusTab,
11026
+ measure
11027
+ });
11028
+ return (_ctx, _cache) => {
11029
+ return openBlock(), createElementBlock(Fragment, null, [
11030
+ createElementVNode("div", _hoisted_1$5, [
11031
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item) => {
11032
+ return openBlock(), createBlock(_sfc_main$9, {
11033
+ id: `${item.id}-measure`,
11034
+ key: `measure-${item.id}`,
11035
+ ref_for: true,
11036
+ ref: (element) => setMeasureRef(item.id, element),
11037
+ active: __props.activeId === item.id,
11038
+ appearance: __props.appearance,
11039
+ class: "ui-v1-tab-group__measure-button",
11040
+ item,
11041
+ size: __props.size,
11042
+ tabindex: "-1"
11043
+ }, null, 8, ["id", "active", "appearance", "item", "size"]);
11044
+ }), 128))
11045
+ ]),
11046
+ createElementVNode("div", {
11047
+ ref_key: "head",
11048
+ ref: head,
11049
+ class: "ui-v1-tab-group__head",
11050
+ role: "tablist"
11051
+ }, [
11052
+ createElementVNode("div", _hoisted_2$2, [
11053
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.headItems, (item) => {
11054
+ return openBlock(), createBlock(_sfc_main$9, {
11055
+ id: `${props.groupId}-tab-${item.id}`,
11056
+ key: `head-${item.id}`,
11057
+ ref_for: true,
11058
+ ref: (element) => setHeadRef(item.id, element),
11059
+ active: __props.activeId === item.id,
11060
+ "aria-disabled": item.disabled ? "true" : "false",
11061
+ "aria-selected": __props.activeId === item.id ? "true" : "false",
11062
+ "aria-controls": item.contentSlot ? `${props.groupId}-panel-${item.id}` : void 0,
11063
+ appearance: __props.appearance,
11064
+ item,
11065
+ size: __props.size,
11066
+ tabindex: !item.disabled && __props.focusableId === item.id ? 0 : -1,
11067
+ role: "tab",
11068
+ onClick: ($event) => _ctx.$emit("select", item.id),
11069
+ onFocus: ($event) => _ctx.$emit("focus-tab", item.id),
11070
+ onKeydown: ($event) => onTabKeydown(item.id, $event)
11071
+ }, null, 8, ["id", "active", "aria-disabled", "aria-selected", "aria-controls", "appearance", "item", "size", "tabindex", "onClick", "onFocus", "onKeydown"]);
11072
+ }), 128))
11073
+ ]),
11074
+ __props.hasMenuItems ? (openBlock(), createBlock(_sfc_main$W, {
11075
+ key: 0,
11076
+ active: __props.menuExpanded,
11077
+ "aria-expanded": __props.menuExpanded ? "true" : "false",
11078
+ "aria-label": "More tabs",
11079
+ "aria-haspopup": "menu",
11080
+ appearance: "tertiary",
11081
+ class: "ui-v1-tab-group__trigger",
11082
+ size: "sm",
11083
+ type: "button"
11084
+ }, {
11085
+ default: withCtx(() => [
11086
+ createVNode(unref(IconMoreHorizontal), {
11087
+ "aria-hidden": "true",
11088
+ class: "ui-v1-tab-group__trigger-icon"
11089
+ })
11090
+ ]),
11091
+ _: 1
11092
+ }, 8, ["active", "aria-expanded"])) : createCommentVNode("", true)
11093
+ ], 512)
11094
+ ], 64);
11095
+ };
11096
+ }
11097
+ });
11098
+ const _sfc_main$7 = defineComponent({
11099
+ name: "UiTabGroupMenu",
11100
+ props: {
11101
+ items: {
11102
+ type: Array,
11103
+ default: () => []
11104
+ },
11105
+ activeId: {
11106
+ type: String,
11107
+ default: null
11108
+ },
11109
+ menuExpanded: {
11110
+ type: Boolean,
11111
+ default: false
11112
+ },
11113
+ size: {
11114
+ type: String,
11115
+ default: SIZE$2.MD,
11116
+ validator: (size) => Object.values(SIZE$2).includes(size)
11117
+ }
11118
+ },
11119
+ emits: {
11120
+ "select": (id) => {
11121
+ return true;
11122
+ },
11123
+ "update:menuExpanded": (expanded) => {
11124
+ return true;
11125
+ }
11126
+ },
11127
+ setup(props, { emit }) {
11128
+ const resolvedMenuItemSize = computed(() => {
11129
+ return props.size === SIZE$2.SM ? SIZE$6.SM : SIZE$6.MD;
11130
+ });
11131
+ const onMenuItemKeydown = (id, event) => {
11132
+ switch (event.key) {
11133
+ case " ":
11134
+ case "Enter":
11135
+ event.preventDefault();
11136
+ emit("select", id);
11137
+ }
11138
+ };
11139
+ const onUpdateVisible = (expanded) => {
11140
+ if (expanded !== props.menuExpanded) {
11141
+ emit("update:menuExpanded", expanded);
11142
+ }
11143
+ };
11144
+ return () => {
11145
+ if (!props.items.length) {
11146
+ return null;
11147
+ }
11148
+ return h(_sfc_main$N, {
11149
+ visible: props.menuExpanded,
11150
+ targetTriggers: {
11151
+ hide: ["click"],
11152
+ show: ["click"]
11153
+ },
11154
+ globalTriggers: ["miss-click", "reference-hidden"],
11155
+ class: "ui-v1-tab-group__popper",
11156
+ placement: "bottom-end",
11157
+ "onUpdate:visible": onUpdateVisible
11158
+ }, {
11159
+ default: () => h("div", {
11160
+ class: "ui-v1-tab-group__menu",
11161
+ role: "menu"
11162
+ }, props.items.map((item) => h(_sfc_main$I, {
11163
+ key: `menu-${item.id}`,
11164
+ active: props.activeId === item.id,
11165
+ "aria-checked": props.activeId === item.id ? "true" : "false",
11166
+ "aria-disabled": item.disabled ? "true" : "false",
11167
+ class: "ui-v1-tab-group__menu-item",
11168
+ counter: item.counter ?? null,
11169
+ disabled: item.disabled,
11170
+ role: "menuitemradio",
11171
+ size: resolvedMenuItemSize.value,
11172
+ tabindex: item.disabled ? -1 : 0,
11173
+ onClick: () => emit("select", item.id),
11174
+ onKeydown: (event) => {
11175
+ onMenuItemKeydown(item.id, event);
11176
+ }
11177
+ }, {
11178
+ default: () => item.labelSlot?.() ?? [item.label ?? item.id],
11179
+ "leading-icon": item.iconSlot ? () => item.iconSlot?.() ?? null : void 0
11180
+ })))
11181
+ });
11182
+ };
11183
+ }
11184
+ });
11185
+ const isNamedComponent = (node, name) => {
11186
+ if (typeof node.type !== "object" || node.type === null) {
11187
+ return false;
11188
+ }
11189
+ return "name" in node.type && node.type.name === name;
11190
+ };
11191
+ const hasTabLikeProps = (node) => {
11192
+ const props = node.props ?? {};
11193
+ const childrenRecord = node.children && !Array.isArray(node.children) && typeof node.children !== "string" ? node.children : {};
11194
+ if (typeof props.id !== "string" || !props.id.length) {
11195
+ return false;
11196
+ }
11197
+ return [
11198
+ "label",
11199
+ "counter",
11200
+ "disabled"
11201
+ ].some((key) => key in props) || [
11202
+ "default",
11203
+ "icon",
11204
+ "label",
11205
+ "counter",
11206
+ "content"
11207
+ ].some((key) => key in childrenRecord);
11208
+ };
11209
+ const isTabVNode = (node) => {
11210
+ return isNamedComponent(node, "UiTab") || hasTabLikeProps(node);
11211
+ };
11212
+ const isWhitespaceText = (value) => value.trim().length === 0;
11213
+ const normalizeNodes = (children) => {
11214
+ const normalized = [];
11215
+ children.forEach((child) => {
11216
+ if (Array.isArray(child)) {
11217
+ normalized.push(...normalizeNodes(child));
11218
+ return;
11219
+ }
11220
+ if (!isVNode(child)) {
11221
+ return;
11222
+ }
11223
+ if (child.type === Comment) {
11224
+ return;
11225
+ }
11226
+ if (child.type === Text) {
11227
+ const text = typeof child.children === "string" ? child.children : "";
11228
+ if (!isWhitespaceText(text)) {
11229
+ normalized.push(child);
11230
+ }
11231
+ return;
11232
+ }
11233
+ if (child.type === Fragment && Array.isArray(child.children)) {
11234
+ normalized.push(...normalizeNodes(child.children));
11235
+ return;
11236
+ }
11237
+ normalized.push(child);
11238
+ });
11239
+ return normalized;
11240
+ };
11241
+ const normalizeString = (value) => {
11242
+ return typeof value === "string" ? value : "";
11243
+ };
11244
+ const normalizeCounter = (value) => {
11245
+ return typeof value === "string" || typeof value === "number" ? value : null;
11246
+ };
11247
+ const normalizeBoolean = (value) => value === "" || value === true;
11248
+ const createTabDefinitions = (items) => {
11249
+ return items.map((item) => ({
11250
+ id: item.id,
11251
+ label: item.label ?? "",
11252
+ counter: item.counter ?? null,
11253
+ disabled: Boolean(item.disabled),
11254
+ iconOnly: Boolean(item.iconOnly)
11255
+ }));
11256
+ };
11257
+ const collectTabs = (children) => {
11258
+ return normalizeNodes(children).filter(isTabVNode).map((node, index) => {
11259
+ const props = node.props ?? {};
11260
+ const childrenRecord = node.children && !Array.isArray(node.children) && typeof node.children !== "string" ? node.children : {};
11261
+ const label2 = normalizeString(props.label);
11262
+ const counter2 = normalizeCounter(props.counter);
11263
+ const hasIcon = Boolean(childrenRecord.icon);
11264
+ const hasLabel = Boolean(childrenRecord.label) || Boolean(label2);
11265
+ const hasCounter2 = typeof childrenRecord.counter !== "undefined" || counter2 !== null;
11266
+ return {
11267
+ id: normalizeString(props.id) || String(node.key ?? `ui-v1-tab-${index}`),
11268
+ label: label2,
11269
+ counter: counter2,
11270
+ disabled: normalizeBoolean(props.disabled),
11271
+ iconOnly: hasIcon && !hasLabel && !hasCounter2,
11272
+ iconSlot: childrenRecord.icon,
11273
+ labelSlot: childrenRecord.label,
11274
+ counterSlot: childrenRecord.counter,
11275
+ contentSlot: childrenRecord.content
11276
+ };
11277
+ });
11278
+ };
11279
+ const resolveActiveId = (tabs, activeId) => {
11280
+ if (!activeId) {
11281
+ return null;
11282
+ }
11283
+ return tabs.some((tab) => tab.id === activeId) ? activeId : null;
11284
+ };
11285
+ const HEAD_GAP = {
11286
+ [SIZE$2.SM]: 20,
11287
+ [SIZE$2.MD]: 24,
11288
+ [SIZE$2.LG]: 24
11289
+ };
11290
+ const FILLED_TRIGGER_GAP = {
11291
+ [SIZE$2.SM]: 10,
11292
+ [SIZE$2.MD]: 12,
11293
+ [SIZE$2.LG]: 32
11294
+ };
11295
+ const MENU_TRIGGER_WIDTH = 36;
11296
+ const widthOf = (id, widths) => {
11297
+ return Math.max(0, Math.ceil(widths.get(id) ?? 0));
11298
+ };
11299
+ const sumWidths = (ids, widths, gap) => ids.reduce((total, id, index) => {
11300
+ return total + widthOf(id, widths) + (index > 0 ? gap : 0);
11301
+ }, 0);
11302
+ const moveActiveToHead = (ids, headIds, widths, limit, gap, activeId) => {
11303
+ if (headIds.includes(activeId)) {
11304
+ return headIds;
11305
+ }
11306
+ const next = [...headIds, activeId].sort((a, b) => ids.indexOf(a) - ids.indexOf(b));
11307
+ while (next.length > 1 && sumWidths(next, widths, gap) > limit) {
11308
+ const removable = [...next].reverse().find((id) => id !== activeId);
11309
+ if (!removable) {
11310
+ break;
11311
+ }
11312
+ next.splice(next.indexOf(removable), 1);
11313
+ }
11314
+ return next;
11315
+ };
11316
+ const resolveTabLayout = (options) => {
11317
+ const ids = options.items.map((item) => item.id);
11318
+ if (!ids.length) {
11319
+ return {
11320
+ headIds: [],
11321
+ menuIds: []
11322
+ };
11323
+ }
11324
+ if (!options.overflowing || options.availableWidth <= 0) {
11325
+ return {
11326
+ headIds: ids,
11327
+ menuIds: []
11328
+ };
11329
+ }
11330
+ if (ids.some((id) => widthOf(id, options.widths) === 0)) {
11331
+ return {
11332
+ headIds: ids,
11333
+ menuIds: []
11334
+ };
11335
+ }
11336
+ const size = options.size;
11337
+ const appearance = options.appearance;
11338
+ const gap = appearance === APPEARANCE.FILLED ? 0 : HEAD_GAP[size] ?? HEAD_GAP[SIZE$2.MD];
11339
+ const totalWidth = sumWidths(ids, options.widths, gap);
11340
+ if (totalWidth <= options.availableWidth) {
11341
+ return {
11342
+ headIds: ids,
11343
+ menuIds: []
11344
+ };
11345
+ }
11346
+ const triggerGap = appearance === APPEARANCE.FILLED ? FILLED_TRIGGER_GAP[size] ?? FILLED_TRIGGER_GAP[SIZE$2.MD] : gap;
11347
+ const limit = Math.max(options.availableWidth - MENU_TRIGGER_WIDTH - triggerGap, 0);
11348
+ const headIds = [];
11349
+ let occupied = 0;
11350
+ options.items.forEach((item) => {
11351
+ const nextWidth = occupied + widthOf(item.id, options.widths) + (headIds.length > 0 ? gap : 0);
11352
+ if (nextWidth <= limit || headIds.length === 0) {
11353
+ headIds.push(item.id);
11354
+ occupied = nextWidth;
11355
+ }
11356
+ });
11357
+ const resolvedHeadIds = options.activeId ? moveActiveToHead(ids, headIds, options.widths, limit, gap, options.activeId) : headIds;
11358
+ const headSet = new Set(resolvedHeadIds);
11359
+ return {
11360
+ headIds: ids.filter((id) => headSet.has(id)),
11361
+ menuIds: ids.filter((id) => !headSet.has(id))
11362
+ };
11363
+ };
11364
+ let counter = 0;
11365
+ const _sfc_main$6 = defineComponent({
11366
+ name: "UiTabGroup",
11367
+ inheritAttrs: false,
11368
+ props: {
11369
+ items: {
11370
+ type: Array,
11371
+ default: () => []
11372
+ },
11373
+ activeId: {
11374
+ type: String,
11375
+ default: null
11376
+ },
11377
+ focusableId: {
11378
+ type: String,
11379
+ default: void 0
11380
+ },
11381
+ menuExpanded: {
11382
+ type: Boolean,
11383
+ default: void 0
11384
+ },
11385
+ overflowing: {
11386
+ type: Boolean,
11387
+ default: false
11388
+ },
11389
+ size: {
11390
+ type: String,
11391
+ default: SIZE$2.MD,
11392
+ validator: (size) => Object.values(SIZE$2).includes(size)
11393
+ },
11394
+ appearance: {
11395
+ type: String,
11396
+ default: APPEARANCE.TEXT,
11397
+ validator: (appearance) => Object.values(APPEARANCE).includes(appearance)
11398
+ }
11399
+ },
11400
+ emits: {
11401
+ "layout": (layout) => {
11402
+ return true;
11403
+ },
11404
+ "change": (id) => {
11405
+ return true;
11406
+ },
11407
+ "update:activeId": (id) => {
11408
+ return true;
11409
+ },
11410
+ "update:focusableId": (id) => {
11411
+ return true;
11412
+ },
11413
+ "update:menuExpanded": (expanded) => {
11414
+ return true;
11415
+ }
11416
+ },
11417
+ setup(props, { attrs, emit, slots }) {
11418
+ const groupId = `ui-v1-tab-group-${++counter}`;
11419
+ const root = ref(null);
11420
+ const headView = ref(null);
11421
+ const widths = ref(/* @__PURE__ */ new Map());
11422
+ const availableWidth = ref(0);
11423
+ const localFocusableId = ref(null);
11424
+ const localMenuExpanded = ref(false);
11425
+ const resolvedMenuExpanded = computed(() => {
11426
+ return typeof props.menuExpanded === "undefined" ? localMenuExpanded.value : props.menuExpanded;
11427
+ });
11428
+ let currentLayout = {
11429
+ headIds: [],
11430
+ menuIds: []
11431
+ };
11432
+ let currentResolvedFocusableId = null;
11433
+ let currentTabs = props.items.length ? createTabDefinitions(props.items) : [];
11434
+ let lastEmittedLayoutKey = "";
11435
+ let lastFocusedId = null;
11436
+ let observer = null;
11437
+ const updateMetrics = () => {
11438
+ const metrics = headView.value?.measure();
11439
+ availableWidth.value = metrics?.availableWidth ?? 0;
11440
+ widths.value = metrics?.widths ?? /* @__PURE__ */ new Map();
11441
+ };
11442
+ const setFocusableId = (id) => {
11443
+ if (typeof props.focusableId === "undefined") {
11444
+ localFocusableId.value = id;
11445
+ }
11446
+ emit("update:focusableId", id);
11447
+ };
11448
+ const setMenuExpanded = (expanded) => {
11449
+ if (typeof props.menuExpanded === "undefined") {
11450
+ localMenuExpanded.value = expanded;
11451
+ }
11452
+ emit("update:menuExpanded", expanded);
11453
+ };
11454
+ const resolveFocusableId = (enabledHeadItems) => {
11455
+ const enabledIds = new Set(enabledHeadItems.map((item) => item.id));
11456
+ const candidateFocusableId = typeof props.focusableId === "undefined" ? localFocusableId.value : props.focusableId;
11457
+ if (candidateFocusableId && enabledIds.has(candidateFocusableId)) {
11458
+ return candidateFocusableId;
11459
+ }
11460
+ const resolvedActiveId = resolveActiveId(currentTabs, props.activeId);
11461
+ if (resolvedActiveId && enabledIds.has(resolvedActiveId)) {
11462
+ return resolvedActiveId;
11463
+ }
11464
+ return enabledHeadItems[0]?.id ?? null;
11465
+ };
11466
+ const moveFocus = (intent) => {
11467
+ const headIds = new Set(currentLayout.headIds);
11468
+ const enabledHeadItems = currentTabs.filter((item) => {
11469
+ return headIds.has(item.id) && !item.disabled;
11470
+ });
11471
+ if (!enabledHeadItems.length) {
11472
+ setFocusableId(null);
11473
+ return;
11474
+ }
11475
+ let target = enabledHeadItems[0];
11476
+ if (intent.direction === "first") {
11477
+ target = enabledHeadItems[0];
11478
+ } else if (intent.direction === "last") {
11479
+ target = enabledHeadItems.at(-1) ?? enabledHeadItems[0];
11480
+ } else {
11481
+ const currentIndex = enabledHeadItems.findIndex((tab) => tab.id === intent.id);
11482
+ const fallbackIndex = currentResolvedFocusableId ? enabledHeadItems.findIndex((tab) => tab.id === currentResolvedFocusableId) : -1;
11483
+ const baseIndex = currentIndex === -1 ? Math.max(fallbackIndex, 0) : currentIndex;
11484
+ const offset2 = intent.direction === "next" ? 1 : -1;
11485
+ const nextIndex = (baseIndex + offset2 + enabledHeadItems.length) % enabledHeadItems.length;
11486
+ target = enabledHeadItems[nextIndex] ?? enabledHeadItems[0];
11487
+ }
11488
+ if (!target) {
11489
+ return;
11490
+ }
11491
+ setFocusableId(target.id);
11492
+ emit("change", target.id);
11493
+ emit("update:activeId", target.id);
11494
+ };
11495
+ const selectTab = (id) => {
11496
+ const tab = currentTabs.find((item) => item.id === id);
11497
+ if (!tab || tab.disabled) {
11498
+ return;
11499
+ }
11500
+ setFocusableId(id);
11501
+ setMenuExpanded(false);
11502
+ emit("change", id);
11503
+ emit("update:activeId", id);
11504
+ };
11505
+ const shouldMoveDomFocus = () => {
11506
+ const activeElement = document.activeElement;
11507
+ return Boolean(activeElement && root.value?.contains(activeElement));
11508
+ };
11509
+ const syncAfterRender = () => {
11510
+ const layoutKey = `${currentLayout.headIds.join("|")}::${currentLayout.menuIds.join("|")}`;
11511
+ if (layoutKey !== lastEmittedLayoutKey) {
11512
+ lastEmittedLayoutKey = layoutKey;
11513
+ emit("layout", currentLayout);
11514
+ }
11515
+ if (!currentResolvedFocusableId || currentResolvedFocusableId === lastFocusedId || !shouldMoveDomFocus()) {
11516
+ return;
11517
+ }
11518
+ lastFocusedId = currentResolvedFocusableId;
11519
+ void nextTick(() => {
11520
+ headView.value?.focusTab(currentResolvedFocusableId);
11521
+ });
11522
+ };
11523
+ onMounted(() => {
11524
+ updateMetrics();
11525
+ syncAfterRender();
11526
+ if (typeof window !== "undefined" && typeof window.ResizeObserver === "function" && root.value) {
11527
+ observer = new window.ResizeObserver(() => {
11528
+ requestAnimationFrame(updateMetrics);
11529
+ });
11530
+ observer.observe(root.value);
11531
+ }
11532
+ });
11533
+ onUpdated(syncAfterRender);
11534
+ onBeforeUnmount(() => {
11535
+ observer?.disconnect();
11536
+ observer = null;
11537
+ });
11538
+ watch(() => props.items, () => {
11539
+ void nextTick(updateMetrics);
11540
+ }, { deep: true });
11541
+ watch(() => [props.appearance, props.size], () => {
11542
+ void nextTick(updateMetrics);
11543
+ });
11544
+ return () => {
11545
+ const tabs = props.items.length ? createTabDefinitions(props.items) : collectTabs(slots.default?.() ?? []);
11546
+ const resolvedActiveId = resolveActiveId(tabs, props.activeId);
11547
+ const layout = resolveTabLayout({
11548
+ items: tabs,
11549
+ widths: widths.value,
11550
+ availableWidth: availableWidth.value,
11551
+ size: props.size ?? SIZE$2.MD,
11552
+ appearance: props.appearance ?? APPEARANCE.TEXT,
11553
+ overflowing: props.overflowing,
11554
+ activeId: resolvedActiveId
11555
+ });
11556
+ const headIds = new Set(layout.headIds);
11557
+ const menuIds = new Set(layout.menuIds);
11558
+ const headItems = tabs.filter((item) => headIds.has(item.id));
11559
+ const menuItems = tabs.filter((item) => menuIds.has(item.id));
11560
+ const enabledHeadItems = headItems.filter((item) => !item.disabled);
11561
+ const activeItem = resolvedActiveId ? tabs.find((item) => item.id === resolvedActiveId) ?? null : null;
11562
+ currentTabs = tabs;
11563
+ currentLayout = layout;
11564
+ currentResolvedFocusableId = resolveFocusableId(enabledHeadItems);
11565
+ return h("div", {
11566
+ ...attrs,
11567
+ ref: root,
11568
+ class: [attrs.class, {
11569
+ "ui-v1-tab-group": true,
11570
+ [`ui-v1-tab-group_${props.appearance}`]: true,
11571
+ [`ui-v1-tab-group_${props.size}`]: true
11572
+ }]
11573
+ }, [
11574
+ h(_sfc_main$s, null, {
11575
+ default: () => [
11576
+ h(_sfc_main$8, {
11577
+ ref: headView,
11578
+ activeId: resolvedActiveId,
11579
+ appearance: props.appearance,
11580
+ focusableId: currentResolvedFocusableId,
11581
+ groupId,
11582
+ hasMenuItems: menuItems.length > 0,
11583
+ headItems,
11584
+ items: tabs,
11585
+ menuExpanded: resolvedMenuExpanded.value,
11586
+ size: props.size,
11587
+ onFocusTab: (id) => {
11588
+ setFocusableId(id);
11589
+ },
11590
+ onMoveFocus: (intent) => {
11591
+ moveFocus(intent);
11592
+ },
11593
+ onSelect: (id) => {
11594
+ selectTab(id);
11595
+ }
11596
+ }),
11597
+ h(_sfc_main$7, {
11598
+ activeId: resolvedActiveId,
11599
+ items: menuItems,
11600
+ menuExpanded: resolvedMenuExpanded.value,
11601
+ size: props.size,
11602
+ onSelect: (id) => {
11603
+ selectTab(id);
11604
+ },
11605
+ "onUpdate:menuExpanded": (expanded) => {
11606
+ setMenuExpanded(expanded);
11607
+ }
11608
+ })
11609
+ ]
11610
+ }),
11611
+ activeItem?.contentSlot ? h("div", {
11612
+ id: `${groupId}-panel-${activeItem.id}`,
11613
+ class: "ui-v1-tab-group__panel",
11614
+ role: "tabpanel",
11615
+ "aria-labelledby": `${groupId}-tab-${activeItem.id}`
11616
+ }, activeItem.contentSlot()) : null
11617
+ ]);
11618
+ };
11619
+ }
11620
+ });
10325
11621
  const _hoisted_1$4 = {
10326
11622
  xmlns: "http://www.w3.org/2000/svg",
10327
11623
  viewBox: "0 0 24 24"
@@ -10933,7 +12229,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
10933
12229
  },
10934
12230
  role: "combobox"
10935
12231
  }, _ctx.$attrs, { onMousedown: onRootMouseDown }), [
10936
- createVNode(_sfc_main$z, mergeProps({
12232
+ createVNode(_sfc_main$J, mergeProps({
10937
12233
  id: inputId.value,
10938
12234
  ref_key: "textbox",
10939
12235
  ref: textbox,
@@ -10960,7 +12256,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
10960
12256
  ]),
10961
12257
  _: 3
10962
12258
  }, 16, ["id", "value", "placeholder", "clearable", "disabled", "readonly"]),
10963
- createVNode(_sfc_main$D, {
12259
+ createVNode(_sfc_main$N, {
10964
12260
  id: `${inputId.value}-listbox`,
10965
12261
  visible: expanded.value,
10966
12262
  target: rootTarget.value,
@@ -10975,14 +12271,14 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
10975
12271
  onAttached: onPopperAttached
10976
12272
  }, {
10977
12273
  default: withCtx(() => [
10978
- createVNode(_sfc_main$x, {
12274
+ createVNode(_sfc_main$H, {
10979
12275
  ref_key: "scrollable",
10980
12276
  ref: scrollable,
10981
12277
  class: "ui-v1-time-picker__list"
10982
12278
  }, {
10983
12279
  default: withCtx(() => [
10984
12280
  (openBlock(true), createElementBlock(Fragment, null, renderList(variants.value, (time2, index) => {
10985
- return openBlock(), createBlock(_sfc_main$y, {
12281
+ return openBlock(), createBlock(_sfc_main$I, {
10986
12282
  id: optionId(index),
10987
12283
  key: `${time2}-${index}`,
10988
12284
  ref_for: true,
@@ -11089,12 +12385,12 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
11089
12385
  const toolbarSize = useToolbarSize();
11090
12386
  const size = computed(() => {
11091
12387
  if (toolbarSize.value === SIZE.SM) {
11092
- return SIZE$7.XS;
12388
+ return SIZE$9.XS;
11093
12389
  }
11094
- return SIZE$7.SM;
12390
+ return SIZE$9.SM;
11095
12391
  });
11096
12392
  return (_ctx, _cache) => {
11097
- return openBlock(), createBlock(_sfc_main$M, mergeProps({
12393
+ return openBlock(), createBlock(_sfc_main$W, mergeProps({
11098
12394
  ref_key: "root",
11099
12395
  ref: root,
11100
12396
  href: __props.href,
@@ -11141,8 +12437,8 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
11141
12437
  /** Тип ссылок */
11142
12438
  appearance: {
11143
12439
  type: String,
11144
- validator: (appearance) => Object.values(APPEARANCE$1).includes(appearance),
11145
- default: APPEARANCE$1.DEFAULT
12440
+ validator: (appearance) => Object.values(APPEARANCE$3).includes(appearance),
12441
+ default: APPEARANCE$3.DEFAULT
11146
12442
  },
11147
12443
  /** Инвертированный цвет ссылок для тёмного фона */
11148
12444
  light: {
@@ -11167,7 +12463,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
11167
12463
  },
11168
12464
  setup(__props) {
11169
12465
  return (_ctx, _cache) => {
11170
- return openBlock(), createBlock(_sfc_main$s, mergeProps({
12466
+ return openBlock(), createBlock(_sfc_main$C, mergeProps({
11171
12467
  href: __props.href,
11172
12468
  external: __props.external,
11173
12469
  appearance: __props.appearance,
@@ -11340,7 +12636,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
11340
12636
  });
11341
12637
  return (_ctx, _cache) => {
11342
12638
  return openBlock(), createElementBlock("div", _hoisted_1, [
11343
- !ready.value ? (openBlock(), createBlock(_sfc_main$r, { key: 0 })) : createCommentVNode("", true),
12639
+ !ready.value ? (openBlock(), createBlock(_sfc_main$B, { key: 0 })) : createCommentVNode("", true),
11344
12640
  withDirectives((openBlock(), createElementBlock("iframe", {
11345
12641
  ref_key: "iframe",
11346
12642
  ref: iframe,
@@ -11355,56 +12651,63 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
11355
12651
  });
11356
12652
  const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
11357
12653
  __proto__: null,
11358
- UiAddButton: _sfc_main$Q,
11359
- UiAlert: _sfc_main$R,
11360
- UiAvatar: _sfc_main$O,
11361
- UiAvatarList: _sfc_main$N,
11362
- UiButton: _sfc_main$M,
11363
- UiCalendar: _sfc_main$I,
11364
- UiCheckbox: _sfc_main$H,
11365
- UiCollapse: _sfc_main$G,
11366
- UiCollapseBox: _sfc_main$F,
11367
- UiCollapseGroup: _sfc_main$E,
11368
- UiCopyButton: _sfc_main$B,
11369
- UiDate: _sfc_main$A,
11370
- UiDatePicker: _sfc_main$v,
11371
- UiError: _sfc_main$u,
11372
- UiImage: _sfc_main$P,
11373
- UiInfobox: _sfc_main$t,
11374
- UiLink: _sfc_main$s,
11375
- UiLoader: _sfc_main$r,
11376
- UiMenuItem: _sfc_main$y,
12654
+ UiAddButton: _sfc_main$_,
12655
+ UiAlert: _sfc_main$$,
12656
+ UiAvatar: _sfc_main$Y,
12657
+ UiAvatarList: _sfc_main$X,
12658
+ UiButton: _sfc_main$W,
12659
+ UiCalendar: _sfc_main$S,
12660
+ UiCheckbox: _sfc_main$R,
12661
+ UiCollapse: _sfc_main$Q,
12662
+ UiCollapseBox: _sfc_main$P,
12663
+ UiCollapseGroup: _sfc_main$O,
12664
+ UiCopyButton: _sfc_main$L,
12665
+ UiDate: _sfc_main$K,
12666
+ UiDatePicker: _sfc_main$F,
12667
+ UiError: _sfc_main$E,
12668
+ UiImage: _sfc_main$Z,
12669
+ UiInfobox: _sfc_main$D,
12670
+ UiLink: _sfc_main$C,
12671
+ UiLoader: _sfc_main$B,
12672
+ UiMenuItem: _sfc_main$I,
11377
12673
  UiMenuItemGroup,
11378
- UiModalSidebar: _sfc_main$p,
11379
- UiModalWindow: _sfc_main$n,
11380
- UiModalWindowSurface: _sfc_main$o,
11381
- UiNumberStepper: _sfc_main$m,
11382
- UiPopper: _sfc_main$D,
11383
- UiPopperConnector: _sfc_main$l,
11384
- UiPopperTarget: _sfc_main$k,
11385
- UiRadio: _sfc_main$j,
11386
- UiScrollBox: _sfc_main$x,
11387
- UiSelectPopper: _sfc_main$h,
11388
- UiSelectTrigger: _sfc_main$g,
11389
- UiSlider: _sfc_main$i,
11390
- UiSwitch: _sfc_main$f,
11391
- UiTableBodyCell: _sfc_main$e,
11392
- UiTableCol: _sfc_main$d,
11393
- UiTableFooterButton: _sfc_main$c,
11394
- UiTableFooterSection: _sfc_main$b,
11395
- UiTableHeadCell: _sfc_main$a,
11396
- UiTableRoot: _sfc_main$9,
11397
- UiTableRow: _sfc_main$8,
11398
- UiTableSection: _sfc_main$7,
11399
- UiTableSorter: _sfc_main$6,
12674
+ UiModalSidebar: _sfc_main$z,
12675
+ UiModalWindow: _sfc_main$x,
12676
+ UiModalWindowSurface: _sfc_main$y,
12677
+ UiNumberStepper: _sfc_main$w,
12678
+ UiPageHeader: _sfc_main$t,
12679
+ UiPageHeaderLayout: _sfc_main$u,
12680
+ UiPageHeaderTitle: _sfc_main$v,
12681
+ UiPopper: _sfc_main$N,
12682
+ UiPopperConnector: _sfc_main$s,
12683
+ UiPopperTarget: _sfc_main$r,
12684
+ UiRadio: _sfc_main$q,
12685
+ UiRadioSwitchOptionShell: _sfc_main$p,
12686
+ UiRadioSwitchRoot: _sfc_main$o,
12687
+ UiScrollBox: _sfc_main$H,
12688
+ UiSelectPopper: _sfc_main$m,
12689
+ UiSelectTrigger: _sfc_main$l,
12690
+ UiSlider: _sfc_main$n,
12691
+ UiSwitch: _sfc_main$k,
12692
+ UiTab: _sfc_main$a,
12693
+ UiTabGroup: _sfc_main$6,
12694
+ UiTableBodyCell: _sfc_main$j,
12695
+ UiTableCol: _sfc_main$i,
12696
+ UiTableFooterButton: _sfc_main$h,
12697
+ UiTableFooterSection: _sfc_main$g,
12698
+ UiTableHeadCell: _sfc_main$f,
12699
+ UiTableRoot: _sfc_main$e,
12700
+ UiTableRow: _sfc_main$d,
12701
+ UiTableSection: _sfc_main$c,
12702
+ UiTableSorter: _sfc_main$b,
11400
12703
  UiTag: _sfc_main$5,
11401
- UiTextbox: _sfc_main$z,
12704
+ UiTextbox: _sfc_main$J,
11402
12705
  UiTimePicker: _sfc_main$4,
11403
12706
  UiToolbar: _sfc_main$3,
11404
12707
  UiToolbarButton: _sfc_main$2,
11405
12708
  UiToolbarLink: _sfc_main$1,
11406
- UiTooltip: _sfc_main$C,
11407
- UiTransition: _sfc_main$S,
12709
+ UiTooltip: _sfc_main$M,
12710
+ UiTransition: _sfc_main$10,
11408
12711
  UiYandexMap: _sfc_main
11409
12712
  }, Symbol.toStringTag, { value: "Module" }));
11410
12713
  const createProvider = () => createProvider$1(components);
@@ -11415,56 +12718,63 @@ export {
11415
12718
  plugin$1 as I18nPlugin,
11416
12719
  ImageWorkersKey,
11417
12720
  plugin as ModalPlugin,
11418
- _sfc_main$Q as UiAddButton,
11419
- _sfc_main$R as UiAlert,
11420
- _sfc_main$O as UiAvatar,
11421
- _sfc_main$N as UiAvatarList,
11422
- _sfc_main$M as UiButton,
11423
- _sfc_main$I as UiCalendar,
11424
- _sfc_main$H as UiCheckbox,
11425
- _sfc_main$G as UiCollapse,
11426
- _sfc_main$F as UiCollapseBox,
11427
- _sfc_main$E as UiCollapseGroup,
11428
- _sfc_main$B as UiCopyButton,
11429
- _sfc_main$A as UiDate,
11430
- _sfc_main$v as UiDatePicker,
11431
- _sfc_main$u as UiError,
11432
- _sfc_main$P as UiImage,
11433
- _sfc_main$t as UiInfobox,
11434
- _sfc_main$s as UiLink,
11435
- _sfc_main$r as UiLoader,
11436
- _sfc_main$y as UiMenuItem,
12721
+ _sfc_main$_ as UiAddButton,
12722
+ _sfc_main$$ as UiAlert,
12723
+ _sfc_main$Y as UiAvatar,
12724
+ _sfc_main$X as UiAvatarList,
12725
+ _sfc_main$W as UiButton,
12726
+ _sfc_main$S as UiCalendar,
12727
+ _sfc_main$R as UiCheckbox,
12728
+ _sfc_main$Q as UiCollapse,
12729
+ _sfc_main$P as UiCollapseBox,
12730
+ _sfc_main$O as UiCollapseGroup,
12731
+ _sfc_main$L as UiCopyButton,
12732
+ _sfc_main$K as UiDate,
12733
+ _sfc_main$F as UiDatePicker,
12734
+ _sfc_main$E as UiError,
12735
+ _sfc_main$Z as UiImage,
12736
+ _sfc_main$D as UiInfobox,
12737
+ _sfc_main$C as UiLink,
12738
+ _sfc_main$B as UiLoader,
12739
+ _sfc_main$I as UiMenuItem,
11437
12740
  UiMenuItemGroup,
11438
- _sfc_main$p as UiModalSidebar,
11439
- _sfc_main$n as UiModalWindow,
11440
- _sfc_main$o as UiModalWindowSurface,
11441
- _sfc_main$m as UiNumberStepper,
11442
- _sfc_main$D as UiPopper,
11443
- _sfc_main$l as UiPopperConnector,
11444
- _sfc_main$k as UiPopperTarget,
11445
- _sfc_main$j as UiRadio,
11446
- _sfc_main$x as UiScrollBox,
11447
- _sfc_main$h as UiSelectPopper,
11448
- _sfc_main$g as UiSelectTrigger,
11449
- _sfc_main$i as UiSlider,
11450
- _sfc_main$f as UiSwitch,
11451
- _sfc_main$e as UiTableBodyCell,
11452
- _sfc_main$d as UiTableCol,
11453
- _sfc_main$c as UiTableFooterButton,
11454
- _sfc_main$b as UiTableFooterSection,
11455
- _sfc_main$a as UiTableHeadCell,
11456
- _sfc_main$9 as UiTableRoot,
11457
- _sfc_main$8 as UiTableRow,
11458
- _sfc_main$7 as UiTableSection,
11459
- _sfc_main$6 as UiTableSorter,
12741
+ _sfc_main$z as UiModalSidebar,
12742
+ _sfc_main$x as UiModalWindow,
12743
+ _sfc_main$y as UiModalWindowSurface,
12744
+ _sfc_main$w as UiNumberStepper,
12745
+ _sfc_main$t as UiPageHeader,
12746
+ _sfc_main$u as UiPageHeaderLayout,
12747
+ _sfc_main$v as UiPageHeaderTitle,
12748
+ _sfc_main$N as UiPopper,
12749
+ _sfc_main$s as UiPopperConnector,
12750
+ _sfc_main$r as UiPopperTarget,
12751
+ _sfc_main$q as UiRadio,
12752
+ _sfc_main$p as UiRadioSwitchOptionShell,
12753
+ _sfc_main$o as UiRadioSwitchRoot,
12754
+ _sfc_main$H as UiScrollBox,
12755
+ _sfc_main$m as UiSelectPopper,
12756
+ _sfc_main$l as UiSelectTrigger,
12757
+ _sfc_main$n as UiSlider,
12758
+ _sfc_main$k as UiSwitch,
12759
+ _sfc_main$a as UiTab,
12760
+ _sfc_main$6 as UiTabGroup,
12761
+ _sfc_main$j as UiTableBodyCell,
12762
+ _sfc_main$i as UiTableCol,
12763
+ _sfc_main$h as UiTableFooterButton,
12764
+ _sfc_main$g as UiTableFooterSection,
12765
+ _sfc_main$f as UiTableHeadCell,
12766
+ _sfc_main$e as UiTableRoot,
12767
+ _sfc_main$d as UiTableRow,
12768
+ _sfc_main$c as UiTableSection,
12769
+ _sfc_main$b as UiTableSorter,
11460
12770
  _sfc_main$5 as UiTag,
11461
- _sfc_main$z as UiTextbox,
12771
+ _sfc_main$J as UiTextbox,
11462
12772
  _sfc_main$4 as UiTimePicker,
11463
12773
  _sfc_main$3 as UiToolbar,
11464
12774
  _sfc_main$2 as UiToolbarButton,
11465
12775
  _sfc_main$1 as UiToolbarLink,
11466
- _sfc_main$C as UiTooltip,
11467
- _sfc_main$S as UiTransition,
12776
+ _sfc_main$M as UiTooltip,
12777
+ _sfc_main$10 as UiTransition,
11468
12778
  _sfc_main as UiYandexMap,
11469
12779
  VALIGN,
11470
12780
  VueI18n,