@retailcrm/embed-ui-v1-components 0.9.11-alpha.1 → 0.9.11-alpha.2

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.
package/dist/host.cjs CHANGED
@@ -4,8 +4,9 @@ const vue = require("vue");
4
4
  const imagePreview = require("@retailcrm/image-preview");
5
5
  const isEqual = require("lodash.isequal");
6
6
  const dateFns = require("date-fns");
7
+ const locale = require("date-fns/locale");
7
8
  const vue3PerfectScrollbar = require("vue3-perfect-scrollbar");
8
- require("@remote-ui/rpc");
9
+ const host = require("@omnicajs/vue-remote/host");
9
10
  const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
10
11
  __name: "UiTransition",
11
12
  props: {
@@ -34,13 +35,13 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
34
35
  };
35
36
  }
36
37
  });
37
- const _hoisted_1$Q = {
38
+ const _hoisted_1$P = {
38
39
  xmlns: "http://www.w3.org/2000/svg",
39
40
  fill: "none",
40
41
  viewBox: "0 0 24 24"
41
42
  };
42
43
  function render$n(_ctx, _cache) {
43
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$Q, [..._cache[0] || (_cache[0] = [
44
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$P, [..._cache[0] || (_cache[0] = [
44
45
  vue.createElementVNode("path", {
45
46
  fill: "currentColor",
46
47
  "fill-rule": "evenodd",
@@ -50,12 +51,12 @@ function render$n(_ctx, _cache) {
50
51
  ])]);
51
52
  }
52
53
  const IconCheckmarkCircleOutlined = { render: render$n };
53
- const _hoisted_1$P = {
54
+ const _hoisted_1$O = {
54
55
  xmlns: "http://www.w3.org/2000/svg",
55
56
  viewBox: "0 0 24 24"
56
57
  };
57
58
  function render$m(_ctx, _cache) {
58
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$P, [..._cache[0] || (_cache[0] = [
59
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$O, [..._cache[0] || (_cache[0] = [
59
60
  vue.createElementVNode("path", {
60
61
  fill: "currentColor",
61
62
  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"
@@ -63,12 +64,12 @@ function render$m(_ctx, _cache) {
63
64
  ])]);
64
65
  }
65
66
  const IconClear = { render: render$m };
66
- const _hoisted_1$O = {
67
+ const _hoisted_1$N = {
67
68
  xmlns: "http://www.w3.org/2000/svg",
68
69
  viewBox: "0 0 24 24"
69
70
  };
70
71
  function render$l(_ctx, _cache) {
71
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$O, [..._cache[0] || (_cache[0] = [
72
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$N, [..._cache[0] || (_cache[0] = [
72
73
  vue.createElementVNode("path", {
73
74
  fill: "currentColor",
74
75
  "fill-rule": "evenodd",
@@ -78,12 +79,12 @@ function render$l(_ctx, _cache) {
78
79
  ])]);
79
80
  }
80
81
  const IconClearCircleOutlined = { render: render$l };
81
- const _hoisted_1$N = {
82
+ const _hoisted_1$M = {
82
83
  xmlns: "http://www.w3.org/2000/svg",
83
84
  viewBox: "0 0 24 24"
84
85
  };
85
86
  function render$k(_ctx, _cache) {
86
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$N, [..._cache[0] || (_cache[0] = [
87
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$M, [..._cache[0] || (_cache[0] = [
87
88
  vue.createElementVNode("path", {
88
89
  fill: "currentColor",
89
90
  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"
@@ -91,12 +92,12 @@ function render$k(_ctx, _cache) {
91
92
  ])]);
92
93
  }
93
94
  const IconErrorOutlined = { render: render$k };
94
- const _hoisted_1$M = {
95
+ const _hoisted_1$L = {
95
96
  xmlns: "http://www.w3.org/2000/svg",
96
97
  viewBox: "0 0 24 24"
97
98
  };
98
99
  function render$j(_ctx, _cache) {
99
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$M, [..._cache[0] || (_cache[0] = [
100
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$L, [..._cache[0] || (_cache[0] = [
100
101
  vue.createElementVNode("path", {
101
102
  fill: "currentColor",
102
103
  "fill-rule": "evenodd",
@@ -113,7 +114,7 @@ var VARIANT$1 = /* @__PURE__ */ ((VARIANT2) => {
113
114
  VARIANT2["DANGER"] = "danger";
114
115
  return VARIANT2;
115
116
  })(VARIANT$1 || {});
116
- const _hoisted_1$L = ["aria-hidden", "aria-live"];
117
+ const _hoisted_1$K = ["aria-hidden", "aria-live"];
117
118
  const _hoisted_2$k = {
118
119
  key: 0,
119
120
  class: "ui-v1-alert__icon-outline"
@@ -277,7 +278,7 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
277
278
  }, [
278
279
  vue.createVNode(vue.unref(IconClear), { class: "ui-v1-alert__close-icon" })
279
280
  ])) : vue.createCommentVNode("", true)
280
- ], 16, _hoisted_1$L), [
281
+ ], 16, _hoisted_1$K), [
281
282
  [vue.vShow, state.shown]
282
283
  ])
283
284
  ]),
@@ -286,12 +287,12 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
286
287
  };
287
288
  }
288
289
  });
289
- const _hoisted_1$K = {
290
+ const _hoisted_1$J = {
290
291
  xmlns: "http://www.w3.org/2000/svg",
291
292
  viewBox: "0 0 24 24"
292
293
  };
293
294
  function render$i(_ctx, _cache) {
294
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$K, [..._cache[0] || (_cache[0] = [
295
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$J, [..._cache[0] || (_cache[0] = [
295
296
  vue.createElementVNode("path", {
296
297
  fill: "currentColor",
297
298
  "fill-rule": "evenodd",
@@ -313,7 +314,7 @@ const isNumeric = (value) => !isNaN(Number(value));
313
314
  const normalizeHeight = (height) => {
314
315
  return isNumeric(height) ? `${height}px` : `${height}`;
315
316
  };
316
- const _hoisted_1$J = ["type", "disabled"];
317
+ const _hoisted_1$I = ["type", "disabled"];
317
318
  const _hoisted_2$j = { class: "ui-v1-add-button__content" };
318
319
  const _hoisted_3$g = { class: "ui-v1-add-button__title" };
319
320
  const _hoisted_4$b = {
@@ -377,16 +378,16 @@ const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
377
378
  vue.renderSlot(_ctx.$slots, "description")
378
379
  ])) : vue.createCommentVNode("", true)
379
380
  ])
380
- ], 16, _hoisted_1$J);
381
+ ], 16, _hoisted_1$I);
381
382
  };
382
383
  }
383
384
  });
384
- const _hoisted_1$I = {
385
+ const _hoisted_1$H = {
385
386
  xmlns: "http://www.w3.org/2000/svg",
386
387
  viewBox: "0 0 24 24"
387
388
  };
388
389
  function render$h(_ctx, _cache) {
389
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$I, [..._cache[0] || (_cache[0] = [
390
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$H, [..._cache[0] || (_cache[0] = [
390
391
  vue.createElementVNode("path", {
391
392
  fill: "currentColor",
392
393
  "fill-rule": "evenodd",
@@ -396,24 +397,24 @@ function render$h(_ctx, _cache) {
396
397
  ])]);
397
398
  }
398
399
  const IconHelpOutlined = { render: render$h };
399
- const _hoisted_1$H = {
400
+ const _hoisted_1$G = {
400
401
  xmlns: "http://www.w3.org/2000/svg",
401
402
  viewBox: "0 0 18 8"
402
403
  };
403
404
  function render$g(_ctx, _cache) {
404
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$H, [..._cache[0] || (_cache[0] = [
405
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$G, [..._cache[0] || (_cache[0] = [
405
406
  vue.createElementVNode("g", { fill: "currentColor" }, [
406
407
  vue.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" })
407
408
  ], -1)
408
409
  ])]);
409
410
  }
410
411
  const SpriteBAD = { render: render$g };
411
- const _hoisted_1$G = {
412
+ const _hoisted_1$F = {
412
413
  xmlns: "http://www.w3.org/2000/svg",
413
414
  viewBox: "0 0 16 8"
414
415
  };
415
416
  function render$f(_ctx, _cache) {
416
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$G, [..._cache[0] || (_cache[0] = [
417
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$F, [..._cache[0] || (_cache[0] = [
417
418
  vue.createElementVNode("g", { fill: "currentColor" }, [
418
419
  vue.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" })
419
420
  ], -1)
@@ -421,7 +422,7 @@ function render$f(_ctx, _cache) {
421
422
  }
422
423
  const SpriteVIP = { render: render$f };
423
424
  const ImageWorkersKey = Symbol("$image.workers");
424
- const _hoisted_1$F = ["alt", "src"];
425
+ const _hoisted_1$E = ["alt", "src"];
425
426
  const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
426
427
  __name: "UiImage",
427
428
  props: {
@@ -458,7 +459,7 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
458
459
  return vue.openBlock(), vue.createElementBlock("img", vue.mergeProps({
459
460
  alt: __props.alt,
460
461
  src: url.value
461
- }, _ctx.$attrs), null, 16, _hoisted_1$F);
462
+ }, _ctx.$attrs), null, 16, _hoisted_1$E);
462
463
  };
463
464
  }
464
465
  });
@@ -492,7 +493,7 @@ var STATUS = /* @__PURE__ */ ((STATUS2) => {
492
493
  return STATUS2;
493
494
  })(STATUS || {});
494
495
  const AvatarSizeKey = Symbol("UiAvatarSize");
495
- const _hoisted_1$E = {
496
+ const _hoisted_1$D = {
496
497
  key: 1,
497
498
  class: "ui-v1-avatar__unresolved"
498
499
  };
@@ -608,7 +609,7 @@ const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
608
609
  draggable: "false",
609
610
  onLoad: _cache[0] || (_cache[0] = ($event) => loaded.value = true),
610
611
  onError: _cache[1] || (_cache[1] = ($event) => loaded.value = false)
611
- }, null, 8, ["src", "resize", "crop"])) : !__props.src && unresolved.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [
612
+ }, null, 8, ["src", "resize", "crop"])) : !__props.src && unresolved.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$D, [
612
613
  vue.createVNode(vue.unref(IconHelpOutlined))
613
614
  ])) : vue.createCommentVNode("", true),
614
615
  __props.status && !(__props.vip || __props.bad) ? (vue.openBlock(), vue.createElementBlock("span", {
@@ -818,7 +819,7 @@ const _sfc_main$D = vue.defineComponent({
818
819
  };
819
820
  }
820
821
  });
821
- const _hoisted_1$D = { class: "ui-v1-calendar-cell__content" };
822
+ const _hoisted_1$C = { class: "ui-v1-calendar-cell__content" };
822
823
  const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
823
824
  __name: "UiCalendarCell",
824
825
  props: {
@@ -864,19 +865,19 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
864
865
  "aria-hidden": "true",
865
866
  class: "ui-v1-calendar-cell__backdrop"
866
867
  }, null, -1)),
867
- vue.createElementVNode("div", _hoisted_1$D, [
868
+ vue.createElementVNode("div", _hoisted_1$C, [
868
869
  vue.renderSlot(_ctx.$slots, "default")
869
870
  ])
870
871
  ], 16);
871
872
  };
872
873
  }
873
874
  });
874
- const _hoisted_1$C = {
875
+ const _hoisted_1$B = {
875
876
  xmlns: "http://www.w3.org/2000/svg",
876
877
  viewBox: "0 0 24 24"
877
878
  };
878
879
  function render$e(_ctx, _cache) {
879
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$C, [..._cache[0] || (_cache[0] = [
880
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$B, [..._cache[0] || (_cache[0] = [
880
881
  vue.createElementVNode("path", {
881
882
  fill: "currentColor",
882
883
  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"
@@ -884,7 +885,7 @@ function render$e(_ctx, _cache) {
884
885
  ])]);
885
886
  }
886
887
  const IconChevronRight = { render: render$e };
887
- const _hoisted_1$B = {
888
+ const _hoisted_1$A = {
888
889
  key: 1,
889
890
  "aria-hidden": "true",
890
891
  class: "ui-v1-calendar-navigation__placeholder"
@@ -926,11 +927,11 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
926
927
  }, null, 8, ["class"])
927
928
  ]),
928
929
  _: 1
929
- }, 8, ["aria-label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$B));
930
+ }, 8, ["aria-label"])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$A));
930
931
  };
931
932
  }
932
933
  });
933
- const _hoisted_1$A = {
934
+ const _hoisted_1$z = {
934
935
  key: 1,
935
936
  class: "ui-v1-calendar-navigation__text"
936
937
  };
@@ -955,7 +956,7 @@ const _sfc_main$A = /* @__PURE__ */ vue.defineComponent({
955
956
  vue.renderSlot(_ctx.$slots, "default")
956
957
  ]),
957
958
  _: 3
958
- })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$A, [
959
+ })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$z, [
959
960
  vue.renderSlot(_ctx.$slots, "default")
960
961
  ]));
961
962
  };
@@ -1088,14 +1089,14 @@ const inRange = (value, [min2, max2]) => value >= min2 && value < max2;
1088
1089
  const sortDates = (dates) => [...dates].sort((a, b) => a.getTime() - b.getTime());
1089
1090
  class VueI18n {
1090
1091
  _state;
1091
- constructor(locale = void 0) {
1092
- this._state = vue.reactive({ locale });
1092
+ constructor(locale2 = void 0) {
1093
+ this._state = vue.reactive({ locale: locale2 });
1093
1094
  }
1094
1095
  get locale() {
1095
1096
  return this._state.locale;
1096
1097
  }
1097
- set locale(locale) {
1098
- this._state.locale = locale;
1098
+ set locale(locale2) {
1099
+ this._state.locale = locale2;
1099
1100
  }
1100
1101
  }
1101
1102
  const I18nInjectKey = Symbol("$embedI18n");
@@ -1144,11 +1145,11 @@ const compile = (messages, path, values = void 0) => {
1144
1145
  const fail = (message) => {
1145
1146
  throw new Error(message);
1146
1147
  };
1147
- const t = (locale, messages, path, values = void 0) => {
1148
+ const t = (locale2, messages, path, values = void 0) => {
1148
1149
  const keys = path.split(".");
1149
- if (locale) {
1150
- const message = compile(messages[locale] ?? {}, keys, values);
1151
- return typeof message !== "object" ? message : fail(`Translation for "${locale}:${path}" is not translatable`);
1150
+ if (locale2) {
1151
+ const message = compile(messages[locale2] ?? {}, keys, values);
1152
+ return typeof message !== "object" ? message : fail(`Translation for "${locale2}:${path}" is not translatable`);
1152
1153
  }
1153
1154
  return void 0;
1154
1155
  };
@@ -1174,35 +1175,35 @@ class I18n {
1174
1175
  };
1175
1176
  this.fallback = options?.fallback;
1176
1177
  }
1177
- t(locale, path, values = void 0) {
1178
+ t(locale2, path, values = void 0) {
1178
1179
  try {
1179
- const _t = (locale2) => t(locale2, this.messages, path, values);
1180
- return _t(locale) ?? _t(this.fallback) ?? fail(`Translation for "${path}" does not exists`);
1180
+ const _t = (locale22) => t(locale22, this.messages, path, values);
1181
+ return _t(locale2) ?? _t(this.fallback) ?? fail(`Translation for "${path}" does not exists`);
1181
1182
  } catch (e) {
1182
1183
  if (this.parent) {
1183
- return this.parent.t(locale, path, values);
1184
+ return this.parent.t(locale2, path, values);
1184
1185
  }
1185
1186
  throw e;
1186
1187
  }
1187
1188
  }
1188
- tc(locale, path, choice, values = void 0) {
1189
+ tc(locale2, path, choice, values = void 0) {
1189
1190
  return plural(
1190
1191
  this.t(
1191
- locale,
1192
+ locale2,
1192
1193
  path,
1193
1194
  values
1194
1195
  ),
1195
1196
  choice,
1196
- this.pluralization[locale]
1197
+ this.pluralization[locale2]
1197
1198
  );
1198
1199
  }
1199
- compute(locale, key, values) {
1200
+ compute(locale2, key, values) {
1200
1201
  const computed = this.computed[key];
1201
1202
  if (computed) {
1202
- return computed(localize$3(this, locale), values);
1203
+ return computed(localize(this, locale2), values);
1203
1204
  }
1204
1205
  if (this.parent) {
1205
- return this.parent.compute(locale, key, values);
1206
+ return this.parent.compute(locale2, key, values);
1206
1207
  }
1207
1208
  return fail("Key " + key + " is not registered");
1208
1209
  }
@@ -1214,15 +1215,15 @@ class I18n {
1214
1215
  }, this);
1215
1216
  }
1216
1217
  }
1217
- const localize$3 = (i18n, locale) => ({
1218
+ const localize = (i18n, locale2) => ({
1218
1219
  t(path, values = void 0) {
1219
- return i18n.t(locale, path, values);
1220
+ return i18n.t(locale2, path, values);
1220
1221
  },
1221
1222
  tc(path, choice, values = void 0) {
1222
- return i18n.tc(locale, path, choice, values);
1223
+ return i18n.tc(locale2, path, choice, values);
1223
1224
  },
1224
1225
  compute(key, values) {
1225
- return i18n.compute(locale, key, values);
1226
+ return i18n.compute(locale2, key, values);
1226
1227
  }
1227
1228
  });
1228
1229
  const fallback = "en-GB";
@@ -1234,9 +1235,9 @@ const define = (options = void 0, parent = void 0) => {
1234
1235
  const extend = (i18n2, options2 = void 0) => options2 ? i18n2.extend(options2) : i18n2;
1235
1236
  return {
1236
1237
  i18n,
1237
- init: (locale, options2 = void 0) => localize$3(
1238
+ init: (locale2, options2 = void 0) => localize(
1238
1239
  extend(i18n, options2),
1239
- locale
1240
+ locale2
1240
1241
  ),
1241
1242
  fallback
1242
1243
  };
@@ -1380,7 +1381,7 @@ const _i18n$6 = define({
1380
1381
  "ru-RU": messages_ru_RU$6
1381
1382
  }
1382
1383
  });
1383
- const _hoisted_1$z = { class: "ui-v1-calendar-wrapper" };
1384
+ const _hoisted_1$y = { class: "ui-v1-calendar-wrapper" };
1384
1385
  const _hoisted_2$h = ["aria-label"];
1385
1386
  const _hoisted_3$e = ["id"];
1386
1387
  const _hoisted_4$9 = ["aria-labelledby", "aria-multiselectable"];
@@ -1388,9 +1389,9 @@ const _hoisted_5$7 = {
1388
1389
  class: "ui-v1-calendar__row",
1389
1390
  role: "row"
1390
1391
  };
1391
- const _hoisted_6$5 = ["aria-label"];
1392
+ const _hoisted_6$6 = ["aria-label"];
1392
1393
  const _hoisted_7$4 = ["datetime"];
1393
- const _hoisted_8$1 = ["aria-label"];
1394
+ const _hoisted_8$2 = ["aria-label"];
1394
1395
  const _hoisted_9$1 = ["id"];
1395
1396
  const _hoisted_10$1 = ["aria-labelledby"];
1396
1397
  const _hoisted_11 = ["datetime"];
@@ -1539,8 +1540,8 @@ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
1539
1540
  ];
1540
1541
  });
1541
1542
  const weekdaysLongNames = vue.computed(() => {
1542
- const format = (locale) => {
1543
- const formatter = new Intl.DateTimeFormat(locale, { weekday: "long" });
1543
+ const format = (locale2) => {
1544
+ const formatter = new Intl.DateTimeFormat(locale2, { weekday: "long" });
1544
1545
  const sunday = new Date(Date.UTC(2024, 0, 7));
1545
1546
  return Array.from({ length: 7 }, (_, index) => {
1546
1547
  return formatter.format(new Date(sunday.getTime() + index * 24 * 60 * 60 * 1e3));
@@ -2021,7 +2022,7 @@ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
2021
2022
  ));
2022
2023
  };
2023
2024
  return (_ctx, _cache) => {
2024
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$z, [
2025
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$y, [
2025
2026
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(viewsComputed.value, (view, index) => {
2026
2027
  return vue.openBlock(), vue.createElementBlock("div", {
2027
2028
  key: "view-" + index + "-" + view.date,
@@ -2070,7 +2071,7 @@ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
2070
2071
  class: "ui-v1-calendar__cell-weekday",
2071
2072
  role: "columnheader",
2072
2073
  "aria-label": weekdaysLongNames.value[i]
2073
- }, vue.toDisplayString(name), 9, _hoisted_6$5);
2074
+ }, vue.toDisplayString(name), 9, _hoisted_6$6);
2074
2075
  }), 128))
2075
2076
  ]),
2076
2077
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(view.days, (week, i) => {
@@ -2148,7 +2149,7 @@ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
2148
2149
  direction: "next",
2149
2150
  onClick: ($event) => showYear(view.date.year + 1, index)
2150
2151
  }, null, 8, ["label", "onClick"])
2151
- ], 8, _hoisted_8$1),
2152
+ ], 8, _hoisted_8$2),
2152
2153
  vue.createElementVNode("div", {
2153
2154
  class: "ui-v1-calendar__table",
2154
2155
  role: "grid",
@@ -2262,12 +2263,12 @@ const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
2262
2263
  };
2263
2264
  }
2264
2265
  });
2265
- const _hoisted_1$y = {
2266
+ const _hoisted_1$x = {
2266
2267
  xmlns: "http://www.w3.org/2000/svg",
2267
2268
  viewBox: "0 0 24 24"
2268
2269
  };
2269
2270
  function render$d(_ctx, _cache) {
2270
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$y, [..._cache[0] || (_cache[0] = [
2271
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$x, [..._cache[0] || (_cache[0] = [
2271
2272
  vue.createElementVNode("path", {
2272
2273
  fill: "currentColor",
2273
2274
  "fill-rule": "evenodd",
@@ -2304,7 +2305,7 @@ const without = (obj, exclude) => {
2304
2305
  });
2305
2306
  return newObj;
2306
2307
  };
2307
- const _hoisted_1$x = ["id", "value", "name", "disabled", "checked"];
2308
+ const _hoisted_1$w = ["id", "value", "name", "disabled", "checked"];
2308
2309
  const _hoisted_2$g = { class: "ui-v1-checkbox__checkmark" };
2309
2310
  let counter$2 = 0;
2310
2311
  const __default__$2 = {};
@@ -2415,7 +2416,7 @@ const _sfc_main$y = /* @__PURE__ */ vue.defineComponent({
2415
2416
  type: "checkbox",
2416
2417
  class: "ui-v1-checkbox__input",
2417
2418
  onChange
2418
- }), null, 16, _hoisted_1$x),
2419
+ }), null, 16, _hoisted_1$w),
2419
2420
  vue.createElementVNode("span", _hoisted_2$g, [
2420
2421
  checked.value && !__props.indeterminate ? (vue.openBlock(), vue.createBlock(vue.unref(IconDone), {
2421
2422
  key: 0,
@@ -2431,7 +2432,7 @@ var COLLAPSE_BEHAVIOUR = /* @__PURE__ */ ((COLLAPSE_BEHAVIOUR2) => {
2431
2432
  COLLAPSE_BEHAVIOUR2["HIDE"] = "hide";
2432
2433
  return COLLAPSE_BEHAVIOUR2;
2433
2434
  })(COLLAPSE_BEHAVIOUR || {});
2434
- const _hoisted_1$w = {
2435
+ const _hoisted_1$v = {
2435
2436
  key: 0,
2436
2437
  class: "ui-v1-collapse"
2437
2438
  };
@@ -2557,7 +2558,7 @@ const _sfc_main$x = /* @__PURE__ */ vue.defineComponent({
2557
2558
  }, {
2558
2559
  default: vue.withCtx(() => [
2559
2560
  __props.collapseBehaviour === vue.unref(COLLAPSE_BEHAVIOUR).DISPOSE ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
2560
- __props.expanded ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$w, [
2561
+ __props.expanded ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$v, [
2561
2562
  vue.createElementVNode("div", null, [
2562
2563
  vue.renderSlot(_ctx.$slots, "default")
2563
2564
  ])
@@ -2594,17 +2595,17 @@ const CollapseGroupRegisterKey = Symbol("UiCollapseGroup_register");
2594
2595
  const CollapseGroupUnregisterKey = Symbol("UiCollapseGroup_unregister");
2595
2596
  const CollapseGroupExpandKey = Symbol("UiCollapseGroup_expand");
2596
2597
  const CollapseGroupCollapseKey = Symbol("UiCollapseGroup_collapse");
2597
- const _hoisted_1$v = ["id", "aria-labelledby"];
2598
+ const _hoisted_1$u = ["id", "aria-labelledby"];
2598
2599
  const _hoisted_2$e = ["id", "disabled", "aria-controls", "aria-expanded", "aria-disabled"];
2599
2600
  const _hoisted_3$d = { class: "ui-v1-collapse-box__icon-sprite" };
2600
2601
  const _hoisted_4$8 = { class: "ui-v1-collapse-box__header-content" };
2601
2602
  const _hoisted_5$6 = ["id"];
2602
- const _hoisted_6$4 = ["id"];
2603
+ const _hoisted_6$5 = ["id"];
2603
2604
  const _hoisted_7$3 = {
2604
2605
  key: 1,
2605
2606
  class: "ui-v1-collapse-box__action"
2606
2607
  };
2607
- const _hoisted_8 = { class: "ui-v1-collapse-box__body" };
2608
+ const _hoisted_8$1 = { class: "ui-v1-collapse-box__body" };
2608
2609
  const _hoisted_9 = { key: 0 };
2609
2610
  const _hoisted_10 = {
2610
2611
  key: 0,
@@ -2850,7 +2851,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
2850
2851
  class: "ui-v1-collapse-box__description"
2851
2852
  }, [
2852
2853
  vue.renderSlot(_ctx.$slots, "description")
2853
- ], 8, _hoisted_6$4)) : vue.createCommentVNode("", true)
2854
+ ], 8, _hoisted_6$5)) : vue.createCommentVNode("", true)
2854
2855
  ]),
2855
2856
  !__props.disabled ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$3, [
2856
2857
  vue.createVNode(vue.unref(IconChevronRight), { class: "ui-v1-collapse-box__arrow" })
@@ -2871,7 +2872,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
2871
2872
  }, {
2872
2873
  default: vue.withCtx(() => [
2873
2874
  vue.renderSlot(_ctx.$slots, "body", {}, () => [
2874
- vue.createElementVNode("div", _hoisted_8, [
2875
+ vue.createElementVNode("div", _hoisted_8$1, [
2875
2876
  vue.createElementVNode("div", {
2876
2877
  class: vue.normalizeClass([
2877
2878
  "ui-v1-collapse-box__body-content",
@@ -2892,7 +2893,7 @@ const _sfc_main$w = /* @__PURE__ */ vue.defineComponent({
2892
2893
  ]),
2893
2894
  _: 3
2894
2895
  }, 8, ["id", "aria-hidden", "aria-labelledby", "duration", "expanded", "collapse-behaviour"])
2895
- ], 16, _hoisted_1$v);
2896
+ ], 16, _hoisted_1$u);
2896
2897
  };
2897
2898
  }
2898
2899
  });
@@ -3014,12 +3015,12 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
3014
3015
  };
3015
3016
  }
3016
3017
  });
3017
- const _hoisted_1$u = {
3018
+ const _hoisted_1$t = {
3018
3019
  xmlns: "http://www.w3.org/2000/svg",
3019
3020
  viewBox: "0 0 24 24"
3020
3021
  };
3021
3022
  function render$c(_ctx, _cache) {
3022
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$u, [..._cache[0] || (_cache[0] = [
3023
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$t, [..._cache[0] || (_cache[0] = [
3023
3024
  vue.createElementVNode("path", {
3024
3025
  fill: "currentColor",
3025
3026
  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"
@@ -4693,7 +4694,7 @@ if (typeof document !== "undefined" && typeof window !== "undefined") {
4693
4694
  window.addEventListener("click", onGlobalEvent("click"), true);
4694
4695
  }
4695
4696
  }
4696
- const _hoisted_1$t = { class: "ui-v1-popper__content" };
4697
+ const _hoisted_1$s = { class: "ui-v1-popper__content" };
4697
4698
  const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
4698
4699
  __name: "UiPopper",
4699
4700
  props: {
@@ -5040,7 +5041,7 @@ const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
5040
5041
  ref: arrow2,
5041
5042
  class: "ui-v1-popper__arrow"
5042
5043
  }, null, 512)) : vue.createCommentVNode("", true),
5043
- vue.createElementVNode("div", _hoisted_1$t, [
5044
+ vue.createElementVNode("div", _hoisted_1$s, [
5044
5045
  vue.renderSlot(_ctx.$slots, "default")
5045
5046
  ])
5046
5047
  ], 16)
@@ -5193,7 +5194,7 @@ const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
5193
5194
  };
5194
5195
  }
5195
5196
  });
5196
- const _hoisted_1$s = { class: "ui-v1-copy-button__tooltip" };
5197
+ const _hoisted_1$r = { class: "ui-v1-copy-button__tooltip" };
5197
5198
  const _hoisted_2$d = { class: "ui-v1-copy-button__icon" };
5198
5199
  const _hoisted_3$c = { class: "ui-v1-copy-button__text" };
5199
5200
  const _hoisted_4$7 = ["value"];
@@ -5289,7 +5290,7 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
5289
5290
  ...__props.tooltipOptions
5290
5291
  }), {
5291
5292
  default: vue.withCtx(() => [
5292
- vue.createElementVNode("div", _hoisted_1$s, [
5293
+ vue.createElementVNode("div", _hoisted_1$r, [
5293
5294
  copied.value ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
5294
5295
  vue.createElementVNode("div", _hoisted_2$d, [
5295
5296
  vue.createVNode(vue.unref(IconCheckmarkCircleOutlined))
@@ -5314,1606 +5315,11 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
5314
5315
  };
5315
5316
  }
5316
5317
  });
5317
- function buildFormatLongFn(args) {
5318
- return (options = {}) => {
5319
- const width = options.width ? String(options.width) : args.defaultWidth;
5320
- const format = args.formats[width] || args.formats[args.defaultWidth];
5321
- return format;
5322
- };
5323
- }
5324
- function buildLocalizeFn(args) {
5325
- return (value, options) => {
5326
- const context = options?.context ? String(options.context) : "standalone";
5327
- let valuesArray;
5328
- if (context === "formatting" && args.formattingValues) {
5329
- const defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
5330
- const width = options?.width ? String(options.width) : defaultWidth;
5331
- valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
5332
- } else {
5333
- const defaultWidth = args.defaultWidth;
5334
- const width = options?.width ? String(options.width) : args.defaultWidth;
5335
- valuesArray = args.values[width] || args.values[defaultWidth];
5336
- }
5337
- const index = args.argumentCallback ? args.argumentCallback(value) : value;
5338
- return valuesArray[index];
5339
- };
5340
- }
5341
- function buildMatchFn(args) {
5342
- return (string, options = {}) => {
5343
- const width = options.width;
5344
- const matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];
5345
- const matchResult = string.match(matchPattern);
5346
- if (!matchResult) {
5347
- return null;
5348
- }
5349
- const matchedString = matchResult[0];
5350
- const parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
5351
- const key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, (pattern) => pattern.test(matchedString)) : (
5352
- // [TODO] -- I challenge you to fix the type
5353
- findKey(parsePatterns, (pattern) => pattern.test(matchedString))
5354
- );
5355
- let value;
5356
- value = args.valueCallback ? args.valueCallback(key) : key;
5357
- value = options.valueCallback ? (
5358
- // [TODO] -- I challenge you to fix the type
5359
- options.valueCallback(value)
5360
- ) : value;
5361
- const rest = string.slice(matchedString.length);
5362
- return { value, rest };
5363
- };
5364
- }
5365
- function findKey(object, predicate) {
5366
- for (const key in object) {
5367
- if (Object.prototype.hasOwnProperty.call(object, key) && predicate(object[key])) {
5368
- return key;
5369
- }
5370
- }
5371
- return void 0;
5372
- }
5373
- function findIndex(array, predicate) {
5374
- for (let key = 0; key < array.length; key++) {
5375
- if (predicate(array[key])) {
5376
- return key;
5377
- }
5378
- }
5379
- return void 0;
5380
- }
5381
- function buildMatchPatternFn(args) {
5382
- return (string, options = {}) => {
5383
- const matchResult = string.match(args.matchPattern);
5384
- if (!matchResult) return null;
5385
- const matchedString = matchResult[0];
5386
- const parseResult = string.match(args.parsePattern);
5387
- if (!parseResult) return null;
5388
- let value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];
5389
- value = options.valueCallback ? options.valueCallback(value) : value;
5390
- const rest = string.slice(matchedString.length);
5391
- return { value, rest };
5392
- };
5393
- }
5394
- const constructFromSymbol = Symbol.for("constructDateFrom");
5395
- function constructFrom(date, value) {
5396
- if (typeof date === "function") return date(value);
5397
- if (date && typeof date === "object" && constructFromSymbol in date)
5398
- return date[constructFromSymbol](value);
5399
- if (date instanceof Date) return new date.constructor(value);
5400
- return new Date(value);
5401
- }
5402
- function normalizeDates(context, ...dates) {
5403
- const normalize2 = constructFrom.bind(
5404
- null,
5405
- context || dates.find((date) => typeof date === "object")
5406
- );
5407
- return dates.map(normalize2);
5408
- }
5409
- let defaultOptions = {};
5410
- function getDefaultOptions() {
5411
- return defaultOptions;
5412
- }
5413
- function toDate(argument, context) {
5414
- return constructFrom(context || argument, argument);
5415
- }
5416
- function startOfWeek(date, options) {
5417
- const defaultOptions2 = getDefaultOptions();
5418
- const weekStartsOn = options?.weekStartsOn ?? options?.locale?.options?.weekStartsOn ?? defaultOptions2.weekStartsOn ?? defaultOptions2.locale?.options?.weekStartsOn ?? 0;
5419
- const _date = toDate(date, options?.in);
5420
- const day = _date.getDay();
5421
- const diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
5422
- _date.setDate(_date.getDate() - diff);
5423
- _date.setHours(0, 0, 0, 0);
5424
- return _date;
5425
- }
5426
- function isSameWeek(laterDate, earlierDate, options) {
5427
- const [laterDate_, earlierDate_] = normalizeDates(
5428
- options?.in,
5429
- laterDate,
5430
- earlierDate
5431
- );
5432
- return +startOfWeek(laterDate_, options) === +startOfWeek(earlierDate_, options);
5433
- }
5434
- const formatDistanceLocale$2 = {
5435
- lessThanXSeconds: {
5436
- one: "less than a second",
5437
- other: "less than {{count}} seconds"
5438
- },
5439
- xSeconds: {
5440
- one: "1 second",
5441
- other: "{{count}} seconds"
5442
- },
5443
- halfAMinute: "half a minute",
5444
- lessThanXMinutes: {
5445
- one: "less than a minute",
5446
- other: "less than {{count}} minutes"
5447
- },
5448
- xMinutes: {
5449
- one: "1 minute",
5450
- other: "{{count}} minutes"
5451
- },
5452
- aboutXHours: {
5453
- one: "about 1 hour",
5454
- other: "about {{count}} hours"
5455
- },
5456
- xHours: {
5457
- one: "1 hour",
5458
- other: "{{count}} hours"
5459
- },
5460
- xDays: {
5461
- one: "1 day",
5462
- other: "{{count}} days"
5463
- },
5464
- aboutXWeeks: {
5465
- one: "about 1 week",
5466
- other: "about {{count}} weeks"
5467
- },
5468
- xWeeks: {
5469
- one: "1 week",
5470
- other: "{{count}} weeks"
5471
- },
5472
- aboutXMonths: {
5473
- one: "about 1 month",
5474
- other: "about {{count}} months"
5475
- },
5476
- xMonths: {
5477
- one: "1 month",
5478
- other: "{{count}} months"
5479
- },
5480
- aboutXYears: {
5481
- one: "about 1 year",
5482
- other: "about {{count}} years"
5483
- },
5484
- xYears: {
5485
- one: "1 year",
5486
- other: "{{count}} years"
5487
- },
5488
- overXYears: {
5489
- one: "over 1 year",
5490
- other: "over {{count}} years"
5491
- },
5492
- almostXYears: {
5493
- one: "almost 1 year",
5494
- other: "almost {{count}} years"
5495
- }
5496
- };
5497
- const formatDistance$2 = (token, count, options) => {
5498
- let result;
5499
- const tokenValue = formatDistanceLocale$2[token];
5500
- if (typeof tokenValue === "string") {
5501
- result = tokenValue;
5502
- } else if (count === 1) {
5503
- result = tokenValue.one;
5504
- } else {
5505
- result = tokenValue.other.replace("{{count}}", count.toString());
5506
- }
5507
- if (options?.addSuffix) {
5508
- if (options.comparison && options.comparison > 0) {
5509
- return "in " + result;
5510
- } else {
5511
- return result + " ago";
5512
- }
5513
- }
5514
- return result;
5515
- };
5516
- const formatRelativeLocale$2 = {
5517
- lastWeek: "'last' eeee 'at' p",
5518
- yesterday: "'yesterday at' p",
5519
- today: "'today at' p",
5520
- tomorrow: "'tomorrow at' p",
5521
- nextWeek: "eeee 'at' p",
5522
- other: "P"
5523
- };
5524
- const formatRelative$2 = (token, _date, _baseDate, _options) => formatRelativeLocale$2[token];
5525
- const eraValues$2 = {
5526
- narrow: ["B", "A"],
5527
- abbreviated: ["BC", "AD"],
5528
- wide: ["Before Christ", "Anno Domini"]
5529
- };
5530
- const quarterValues$2 = {
5531
- narrow: ["1", "2", "3", "4"],
5532
- abbreviated: ["Q1", "Q2", "Q3", "Q4"],
5533
- wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
5534
- };
5535
- const monthValues$2 = {
5536
- narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
5537
- abbreviated: [
5538
- "Jan",
5539
- "Feb",
5540
- "Mar",
5541
- "Apr",
5542
- "May",
5543
- "Jun",
5544
- "Jul",
5545
- "Aug",
5546
- "Sep",
5547
- "Oct",
5548
- "Nov",
5549
- "Dec"
5550
- ],
5551
- wide: [
5552
- "January",
5553
- "February",
5554
- "March",
5555
- "April",
5556
- "May",
5557
- "June",
5558
- "July",
5559
- "August",
5560
- "September",
5561
- "October",
5562
- "November",
5563
- "December"
5564
- ]
5565
- };
5566
- const dayValues$2 = {
5567
- narrow: ["S", "M", "T", "W", "T", "F", "S"],
5568
- short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
5569
- abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
5570
- wide: [
5571
- "Sunday",
5572
- "Monday",
5573
- "Tuesday",
5574
- "Wednesday",
5575
- "Thursday",
5576
- "Friday",
5577
- "Saturday"
5578
- ]
5579
- };
5580
- const dayPeriodValues$2 = {
5581
- narrow: {
5582
- am: "a",
5583
- pm: "p",
5584
- midnight: "mi",
5585
- noon: "n",
5586
- morning: "morning",
5587
- afternoon: "afternoon",
5588
- evening: "evening",
5589
- night: "night"
5590
- },
5591
- abbreviated: {
5592
- am: "AM",
5593
- pm: "PM",
5594
- midnight: "midnight",
5595
- noon: "noon",
5596
- morning: "morning",
5597
- afternoon: "afternoon",
5598
- evening: "evening",
5599
- night: "night"
5600
- },
5601
- wide: {
5602
- am: "a.m.",
5603
- pm: "p.m.",
5604
- midnight: "midnight",
5605
- noon: "noon",
5606
- morning: "morning",
5607
- afternoon: "afternoon",
5608
- evening: "evening",
5609
- night: "night"
5610
- }
5611
- };
5612
- const formattingDayPeriodValues$2 = {
5613
- narrow: {
5614
- am: "a",
5615
- pm: "p",
5616
- midnight: "mi",
5617
- noon: "n",
5618
- morning: "in the morning",
5619
- afternoon: "in the afternoon",
5620
- evening: "in the evening",
5621
- night: "at night"
5622
- },
5623
- abbreviated: {
5624
- am: "AM",
5625
- pm: "PM",
5626
- midnight: "midnight",
5627
- noon: "noon",
5628
- morning: "in the morning",
5629
- afternoon: "in the afternoon",
5630
- evening: "in the evening",
5631
- night: "at night"
5632
- },
5633
- wide: {
5634
- am: "a.m.",
5635
- pm: "p.m.",
5636
- midnight: "midnight",
5637
- noon: "noon",
5638
- morning: "in the morning",
5639
- afternoon: "in the afternoon",
5640
- evening: "in the evening",
5641
- night: "at night"
5642
- }
5643
- };
5644
- const ordinalNumber$2 = (dirtyNumber, _options) => {
5645
- const number = Number(dirtyNumber);
5646
- const rem100 = number % 100;
5647
- if (rem100 > 20 || rem100 < 10) {
5648
- switch (rem100 % 10) {
5649
- case 1:
5650
- return number + "st";
5651
- case 2:
5652
- return number + "nd";
5653
- case 3:
5654
- return number + "rd";
5655
- }
5656
- }
5657
- return number + "th";
5658
- };
5659
- const localize$2 = {
5660
- ordinalNumber: ordinalNumber$2,
5661
- era: buildLocalizeFn({
5662
- values: eraValues$2,
5663
- defaultWidth: "wide"
5664
- }),
5665
- quarter: buildLocalizeFn({
5666
- values: quarterValues$2,
5667
- defaultWidth: "wide",
5668
- argumentCallback: (quarter) => quarter - 1
5669
- }),
5670
- month: buildLocalizeFn({
5671
- values: monthValues$2,
5672
- defaultWidth: "wide"
5673
- }),
5674
- day: buildLocalizeFn({
5675
- values: dayValues$2,
5676
- defaultWidth: "wide"
5677
- }),
5678
- dayPeriod: buildLocalizeFn({
5679
- values: dayPeriodValues$2,
5680
- defaultWidth: "wide",
5681
- formattingValues: formattingDayPeriodValues$2,
5682
- defaultFormattingWidth: "wide"
5683
- })
5684
- };
5685
- const matchOrdinalNumberPattern$2 = /^(\d+)(th|st|nd|rd)?/i;
5686
- const parseOrdinalNumberPattern$2 = /\d+/i;
5687
- const matchEraPatterns$2 = {
5688
- narrow: /^(b|a)/i,
5689
- abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
5690
- wide: /^(before christ|before common era|anno domini|common era)/i
5691
- };
5692
- const parseEraPatterns$2 = {
5693
- any: [/^b/i, /^(a|c)/i]
5694
- };
5695
- const matchQuarterPatterns$2 = {
5696
- narrow: /^[1234]/i,
5697
- abbreviated: /^q[1234]/i,
5698
- wide: /^[1234](th|st|nd|rd)? quarter/i
5699
- };
5700
- const parseQuarterPatterns$2 = {
5701
- any: [/1/i, /2/i, /3/i, /4/i]
5702
- };
5703
- const matchMonthPatterns$2 = {
5704
- narrow: /^[jfmasond]/i,
5705
- abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
5706
- wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
5707
- };
5708
- const parseMonthPatterns$2 = {
5709
- narrow: [
5710
- /^j/i,
5711
- /^f/i,
5712
- /^m/i,
5713
- /^a/i,
5714
- /^m/i,
5715
- /^j/i,
5716
- /^j/i,
5717
- /^a/i,
5718
- /^s/i,
5719
- /^o/i,
5720
- /^n/i,
5721
- /^d/i
5722
- ],
5723
- any: [
5724
- /^ja/i,
5725
- /^f/i,
5726
- /^mar/i,
5727
- /^ap/i,
5728
- /^may/i,
5729
- /^jun/i,
5730
- /^jul/i,
5731
- /^au/i,
5732
- /^s/i,
5733
- /^o/i,
5734
- /^n/i,
5735
- /^d/i
5736
- ]
5737
- };
5738
- const matchDayPatterns$2 = {
5739
- narrow: /^[smtwf]/i,
5740
- short: /^(su|mo|tu|we|th|fr|sa)/i,
5741
- abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
5742
- wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
5743
- };
5744
- const parseDayPatterns$2 = {
5745
- narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
5746
- any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
5747
- };
5748
- const matchDayPeriodPatterns$2 = {
5749
- narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
5750
- any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
5751
- };
5752
- const parseDayPeriodPatterns$2 = {
5753
- any: {
5754
- am: /^a/i,
5755
- pm: /^p/i,
5756
- midnight: /^mi/i,
5757
- noon: /^no/i,
5758
- morning: /morning/i,
5759
- afternoon: /afternoon/i,
5760
- evening: /evening/i,
5761
- night: /night/i
5762
- }
5763
- };
5764
- const match$2 = {
5765
- ordinalNumber: buildMatchPatternFn({
5766
- matchPattern: matchOrdinalNumberPattern$2,
5767
- parsePattern: parseOrdinalNumberPattern$2,
5768
- valueCallback: (value) => parseInt(value, 10)
5769
- }),
5770
- era: buildMatchFn({
5771
- matchPatterns: matchEraPatterns$2,
5772
- defaultMatchWidth: "wide",
5773
- parsePatterns: parseEraPatterns$2,
5774
- defaultParseWidth: "any"
5775
- }),
5776
- quarter: buildMatchFn({
5777
- matchPatterns: matchQuarterPatterns$2,
5778
- defaultMatchWidth: "wide",
5779
- parsePatterns: parseQuarterPatterns$2,
5780
- defaultParseWidth: "any",
5781
- valueCallback: (index) => index + 1
5782
- }),
5783
- month: buildMatchFn({
5784
- matchPatterns: matchMonthPatterns$2,
5785
- defaultMatchWidth: "wide",
5786
- parsePatterns: parseMonthPatterns$2,
5787
- defaultParseWidth: "any"
5788
- }),
5789
- day: buildMatchFn({
5790
- matchPatterns: matchDayPatterns$2,
5791
- defaultMatchWidth: "wide",
5792
- parsePatterns: parseDayPatterns$2,
5793
- defaultParseWidth: "any"
5794
- }),
5795
- dayPeriod: buildMatchFn({
5796
- matchPatterns: matchDayPeriodPatterns$2,
5797
- defaultMatchWidth: "any",
5798
- parsePatterns: parseDayPeriodPatterns$2,
5799
- defaultParseWidth: "any"
5800
- })
5801
- };
5802
- const dateFormats$2 = {
5803
- full: "EEEE, d MMMM yyyy",
5804
- long: "d MMMM yyyy",
5805
- medium: "d MMM yyyy",
5806
- short: "dd/MM/yyyy"
5807
- };
5808
- const timeFormats$2 = {
5809
- full: "HH:mm:ss zzzz",
5810
- long: "HH:mm:ss z",
5811
- medium: "HH:mm:ss",
5812
- short: "HH:mm"
5813
- };
5814
- const dateTimeFormats$2 = {
5815
- full: "{{date}} 'at' {{time}}",
5816
- long: "{{date}} 'at' {{time}}",
5817
- medium: "{{date}}, {{time}}",
5818
- short: "{{date}}, {{time}}"
5819
- };
5820
- const formatLong$2 = {
5821
- date: buildFormatLongFn({
5822
- formats: dateFormats$2,
5823
- defaultWidth: "full"
5824
- }),
5825
- time: buildFormatLongFn({
5826
- formats: timeFormats$2,
5827
- defaultWidth: "full"
5828
- }),
5829
- dateTime: buildFormatLongFn({
5830
- formats: dateTimeFormats$2,
5831
- defaultWidth: "full"
5832
- })
5833
- };
5834
- const enGB = {
5835
- code: "en-GB",
5836
- formatDistance: formatDistance$2,
5837
- formatLong: formatLong$2,
5838
- formatRelative: formatRelative$2,
5839
- localize: localize$2,
5840
- match: match$2,
5841
- options: {
5842
- weekStartsOn: 1,
5843
- firstWeekContainsDate: 4
5844
- }
5845
- };
5846
- const formatDistanceLocale$1 = {
5847
- lessThanXSeconds: {
5848
- one: "menos de un segundo",
5849
- other: "menos de {{count}} segundos"
5850
- },
5851
- xSeconds: {
5852
- one: "1 segundo",
5853
- other: "{{count}} segundos"
5854
- },
5855
- halfAMinute: "medio minuto",
5856
- lessThanXMinutes: {
5857
- one: "menos de un minuto",
5858
- other: "menos de {{count}} minutos"
5859
- },
5860
- xMinutes: {
5861
- one: "1 minuto",
5862
- other: "{{count}} minutos"
5863
- },
5864
- aboutXHours: {
5865
- one: "alrededor de 1 hora",
5866
- other: "alrededor de {{count}} horas"
5867
- },
5868
- xHours: {
5869
- one: "1 hora",
5870
- other: "{{count}} horas"
5871
- },
5872
- xDays: {
5873
- one: "1 día",
5874
- other: "{{count}} días"
5875
- },
5876
- aboutXWeeks: {
5877
- one: "alrededor de 1 semana",
5878
- other: "alrededor de {{count}} semanas"
5879
- },
5880
- xWeeks: {
5881
- one: "1 semana",
5882
- other: "{{count}} semanas"
5883
- },
5884
- aboutXMonths: {
5885
- one: "alrededor de 1 mes",
5886
- other: "alrededor de {{count}} meses"
5887
- },
5888
- xMonths: {
5889
- one: "1 mes",
5890
- other: "{{count}} meses"
5891
- },
5892
- aboutXYears: {
5893
- one: "alrededor de 1 año",
5894
- other: "alrededor de {{count}} años"
5895
- },
5896
- xYears: {
5897
- one: "1 año",
5898
- other: "{{count}} años"
5899
- },
5900
- overXYears: {
5901
- one: "más de 1 año",
5902
- other: "más de {{count}} años"
5903
- },
5904
- almostXYears: {
5905
- one: "casi 1 año",
5906
- other: "casi {{count}} años"
5907
- }
5908
- };
5909
- const formatDistance$1 = (token, count, options) => {
5910
- let result;
5911
- const tokenValue = formatDistanceLocale$1[token];
5912
- if (typeof tokenValue === "string") {
5913
- result = tokenValue;
5914
- } else if (count === 1) {
5915
- result = tokenValue.one;
5916
- } else {
5917
- result = tokenValue.other.replace("{{count}}", count.toString());
5918
- }
5919
- if (options?.addSuffix) {
5920
- if (options.comparison && options.comparison > 0) {
5921
- return "en " + result;
5922
- } else {
5923
- return "hace " + result;
5924
- }
5925
- }
5926
- return result;
5927
- };
5928
- const dateFormats$1 = {
5929
- full: "EEEE, d 'de' MMMM 'de' y",
5930
- long: "d 'de' MMMM 'de' y",
5931
- medium: "d MMM y",
5932
- short: "dd/MM/y"
5933
- };
5934
- const timeFormats$1 = {
5935
- full: "HH:mm:ss zzzz",
5936
- long: "HH:mm:ss z",
5937
- medium: "HH:mm:ss",
5938
- short: "HH:mm"
5939
- };
5940
- const dateTimeFormats$1 = {
5941
- full: "{{date}} 'a las' {{time}}",
5942
- long: "{{date}} 'a las' {{time}}",
5943
- medium: "{{date}}, {{time}}",
5944
- short: "{{date}}, {{time}}"
5945
- };
5946
- const formatLong$1 = {
5947
- date: buildFormatLongFn({
5948
- formats: dateFormats$1,
5949
- defaultWidth: "full"
5950
- }),
5951
- time: buildFormatLongFn({
5952
- formats: timeFormats$1,
5953
- defaultWidth: "full"
5954
- }),
5955
- dateTime: buildFormatLongFn({
5956
- formats: dateTimeFormats$1,
5957
- defaultWidth: "full"
5958
- })
5959
- };
5960
- const formatRelativeLocale$1 = {
5961
- lastWeek: "'el' eeee 'pasado a la' p",
5962
- yesterday: "'ayer a la' p",
5963
- today: "'hoy a la' p",
5964
- tomorrow: "'mañana a la' p",
5965
- nextWeek: "eeee 'a la' p",
5966
- other: "P"
5967
- };
5968
- const formatRelativeLocalePlural = {
5969
- lastWeek: "'el' eeee 'pasado a las' p",
5970
- yesterday: "'ayer a las' p",
5971
- today: "'hoy a las' p",
5972
- tomorrow: "'mañana a las' p",
5973
- nextWeek: "eeee 'a las' p",
5974
- other: "P"
5975
- };
5976
- const formatRelative$1 = (token, date, _baseDate, _options) => {
5977
- if (date.getHours() !== 1) {
5978
- return formatRelativeLocalePlural[token];
5979
- } else {
5980
- return formatRelativeLocale$1[token];
5981
- }
5982
- };
5983
- const eraValues$1 = {
5984
- narrow: ["AC", "DC"],
5985
- abbreviated: ["AC", "DC"],
5986
- wide: ["antes de cristo", "después de cristo"]
5987
- };
5988
- const quarterValues$1 = {
5989
- narrow: ["1", "2", "3", "4"],
5990
- abbreviated: ["T1", "T2", "T3", "T4"],
5991
- wide: ["1º trimestre", "2º trimestre", "3º trimestre", "4º trimestre"]
5992
- };
5993
- const monthValues$1 = {
5994
- narrow: ["e", "f", "m", "a", "m", "j", "j", "a", "s", "o", "n", "d"],
5995
- abbreviated: [
5996
- "ene",
5997
- "feb",
5998
- "mar",
5999
- "abr",
6000
- "may",
6001
- "jun",
6002
- "jul",
6003
- "ago",
6004
- "sep",
6005
- "oct",
6006
- "nov",
6007
- "dic"
6008
- ],
6009
- wide: [
6010
- "enero",
6011
- "febrero",
6012
- "marzo",
6013
- "abril",
6014
- "mayo",
6015
- "junio",
6016
- "julio",
6017
- "agosto",
6018
- "septiembre",
6019
- "octubre",
6020
- "noviembre",
6021
- "diciembre"
6022
- ]
6023
- };
6024
- const dayValues$1 = {
6025
- narrow: ["d", "l", "m", "m", "j", "v", "s"],
6026
- short: ["do", "lu", "ma", "mi", "ju", "vi", "sá"],
6027
- abbreviated: ["dom", "lun", "mar", "mié", "jue", "vie", "sáb"],
6028
- wide: [
6029
- "domingo",
6030
- "lunes",
6031
- "martes",
6032
- "miércoles",
6033
- "jueves",
6034
- "viernes",
6035
- "sábado"
6036
- ]
6037
- };
6038
- const dayPeriodValues$1 = {
6039
- narrow: {
6040
- am: "a",
6041
- pm: "p",
6042
- midnight: "mn",
6043
- noon: "md",
6044
- morning: "mañana",
6045
- afternoon: "tarde",
6046
- evening: "tarde",
6047
- night: "noche"
6048
- },
6049
- abbreviated: {
6050
- am: "AM",
6051
- pm: "PM",
6052
- midnight: "medianoche",
6053
- noon: "mediodia",
6054
- morning: "mañana",
6055
- afternoon: "tarde",
6056
- evening: "tarde",
6057
- night: "noche"
6058
- },
6059
- wide: {
6060
- am: "a.m.",
6061
- pm: "p.m.",
6062
- midnight: "medianoche",
6063
- noon: "mediodia",
6064
- morning: "mañana",
6065
- afternoon: "tarde",
6066
- evening: "tarde",
6067
- night: "noche"
6068
- }
6069
- };
6070
- const formattingDayPeriodValues$1 = {
6071
- narrow: {
6072
- am: "a",
6073
- pm: "p",
6074
- midnight: "mn",
6075
- noon: "md",
6076
- morning: "de la mañana",
6077
- afternoon: "de la tarde",
6078
- evening: "de la tarde",
6079
- night: "de la noche"
6080
- },
6081
- abbreviated: {
6082
- am: "AM",
6083
- pm: "PM",
6084
- midnight: "medianoche",
6085
- noon: "mediodia",
6086
- morning: "de la mañana",
6087
- afternoon: "de la tarde",
6088
- evening: "de la tarde",
6089
- night: "de la noche"
6090
- },
6091
- wide: {
6092
- am: "a.m.",
6093
- pm: "p.m.",
6094
- midnight: "medianoche",
6095
- noon: "mediodia",
6096
- morning: "de la mañana",
6097
- afternoon: "de la tarde",
6098
- evening: "de la tarde",
6099
- night: "de la noche"
6100
- }
6101
- };
6102
- const ordinalNumber$1 = (dirtyNumber, _options) => {
6103
- const number = Number(dirtyNumber);
6104
- return number + "º";
6105
- };
6106
- const localize$1 = {
6107
- ordinalNumber: ordinalNumber$1,
6108
- era: buildLocalizeFn({
6109
- values: eraValues$1,
6110
- defaultWidth: "wide"
6111
- }),
6112
- quarter: buildLocalizeFn({
6113
- values: quarterValues$1,
6114
- defaultWidth: "wide",
6115
- argumentCallback: (quarter) => Number(quarter) - 1
6116
- }),
6117
- month: buildLocalizeFn({
6118
- values: monthValues$1,
6119
- defaultWidth: "wide"
6120
- }),
6121
- day: buildLocalizeFn({
6122
- values: dayValues$1,
6123
- defaultWidth: "wide"
6124
- }),
6125
- dayPeriod: buildLocalizeFn({
6126
- values: dayPeriodValues$1,
6127
- defaultWidth: "wide",
6128
- formattingValues: formattingDayPeriodValues$1,
6129
- defaultFormattingWidth: "wide"
6130
- })
6131
- };
6132
- const matchOrdinalNumberPattern$1 = /^(\d+)(º)?/i;
6133
- const parseOrdinalNumberPattern$1 = /\d+/i;
6134
- const matchEraPatterns$1 = {
6135
- narrow: /^(ac|dc|a|d)/i,
6136
- abbreviated: /^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,
6137
- wide: /^(antes de cristo|antes de la era com[uú]n|despu[eé]s de cristo|era com[uú]n)/i
6138
- };
6139
- const parseEraPatterns$1 = {
6140
- any: [/^ac/i, /^dc/i],
6141
- wide: [
6142
- /^(antes de cristo|antes de la era com[uú]n)/i,
6143
- /^(despu[eé]s de cristo|era com[uú]n)/i
6144
- ]
6145
- };
6146
- const matchQuarterPatterns$1 = {
6147
- narrow: /^[1234]/i,
6148
- abbreviated: /^T[1234]/i,
6149
- wide: /^[1234](º)? trimestre/i
6150
- };
6151
- const parseQuarterPatterns$1 = {
6152
- any: [/1/i, /2/i, /3/i, /4/i]
6153
- };
6154
- const matchMonthPatterns$1 = {
6155
- narrow: /^[efmajsond]/i,
6156
- abbreviated: /^(ene|feb|mar|abr|may|jun|jul|ago|sep|oct|nov|dic)/i,
6157
- wide: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i
6158
- };
6159
- const parseMonthPatterns$1 = {
6160
- narrow: [
6161
- /^e/i,
6162
- /^f/i,
6163
- /^m/i,
6164
- /^a/i,
6165
- /^m/i,
6166
- /^j/i,
6167
- /^j/i,
6168
- /^a/i,
6169
- /^s/i,
6170
- /^o/i,
6171
- /^n/i,
6172
- /^d/i
6173
- ],
6174
- any: [
6175
- /^en/i,
6176
- /^feb/i,
6177
- /^mar/i,
6178
- /^abr/i,
6179
- /^may/i,
6180
- /^jun/i,
6181
- /^jul/i,
6182
- /^ago/i,
6183
- /^sep/i,
6184
- /^oct/i,
6185
- /^nov/i,
6186
- /^dic/i
6187
- ]
6188
- };
6189
- const matchDayPatterns$1 = {
6190
- narrow: /^[dlmjvs]/i,
6191
- short: /^(do|lu|ma|mi|ju|vi|s[áa])/i,
6192
- abbreviated: /^(dom|lun|mar|mi[ée]|jue|vie|s[áa]b)/i,
6193
- wide: /^(domingo|lunes|martes|mi[ée]rcoles|jueves|viernes|s[áa]bado)/i
6194
- };
6195
- const parseDayPatterns$1 = {
6196
- narrow: [/^d/i, /^l/i, /^m/i, /^m/i, /^j/i, /^v/i, /^s/i],
6197
- any: [/^do/i, /^lu/i, /^ma/i, /^mi/i, /^ju/i, /^vi/i, /^sa/i]
6198
- };
6199
- const matchDayPeriodPatterns$1 = {
6200
- narrow: /^(a|p|mn|md|(de la|a las) (mañana|tarde|noche))/i,
6201
- any: /^([ap]\.?\s?m\.?|medianoche|mediodia|(de la|a las) (mañana|tarde|noche))/i
6202
- };
6203
- const parseDayPeriodPatterns$1 = {
6204
- any: {
6205
- am: /^a/i,
6206
- pm: /^p/i,
6207
- midnight: /^mn/i,
6208
- noon: /^md/i,
6209
- morning: /mañana/i,
6210
- afternoon: /tarde/i,
6211
- evening: /tarde/i,
6212
- night: /noche/i
6213
- }
6214
- };
6215
- const match$1 = {
6216
- ordinalNumber: buildMatchPatternFn({
6217
- matchPattern: matchOrdinalNumberPattern$1,
6218
- parsePattern: parseOrdinalNumberPattern$1,
6219
- valueCallback: function(value) {
6220
- return parseInt(value, 10);
6221
- }
6222
- }),
6223
- era: buildMatchFn({
6224
- matchPatterns: matchEraPatterns$1,
6225
- defaultMatchWidth: "wide",
6226
- parsePatterns: parseEraPatterns$1,
6227
- defaultParseWidth: "any"
6228
- }),
6229
- quarter: buildMatchFn({
6230
- matchPatterns: matchQuarterPatterns$1,
6231
- defaultMatchWidth: "wide",
6232
- parsePatterns: parseQuarterPatterns$1,
6233
- defaultParseWidth: "any",
6234
- valueCallback: (index) => index + 1
6235
- }),
6236
- month: buildMatchFn({
6237
- matchPatterns: matchMonthPatterns$1,
6238
- defaultMatchWidth: "wide",
6239
- parsePatterns: parseMonthPatterns$1,
6240
- defaultParseWidth: "any"
6241
- }),
6242
- day: buildMatchFn({
6243
- matchPatterns: matchDayPatterns$1,
6244
- defaultMatchWidth: "wide",
6245
- parsePatterns: parseDayPatterns$1,
6246
- defaultParseWidth: "any"
6247
- }),
6248
- dayPeriod: buildMatchFn({
6249
- matchPatterns: matchDayPeriodPatterns$1,
6250
- defaultMatchWidth: "any",
6251
- parsePatterns: parseDayPeriodPatterns$1,
6252
- defaultParseWidth: "any"
6253
- })
6254
- };
6255
- const es = {
6256
- code: "es",
6257
- formatDistance: formatDistance$1,
6258
- formatLong: formatLong$1,
6259
- formatRelative: formatRelative$1,
6260
- localize: localize$1,
6261
- match: match$1,
6262
- options: {
6263
- weekStartsOn: 1,
6264
- firstWeekContainsDate: 1
6265
- }
6266
- };
6267
- function declension(scheme, count) {
6268
- if (scheme.one !== void 0 && count === 1) {
6269
- return scheme.one;
6270
- }
6271
- const rem10 = count % 10;
6272
- const rem100 = count % 100;
6273
- if (rem10 === 1 && rem100 !== 11) {
6274
- return scheme.singularNominative.replace("{{count}}", String(count));
6275
- } else if (rem10 >= 2 && rem10 <= 4 && (rem100 < 10 || rem100 > 20)) {
6276
- return scheme.singularGenitive.replace("{{count}}", String(count));
6277
- } else {
6278
- return scheme.pluralGenitive.replace("{{count}}", String(count));
6279
- }
6280
- }
6281
- function buildLocalizeTokenFn(scheme) {
6282
- return (count, options) => {
6283
- if (options?.addSuffix) {
6284
- if (options.comparison && options.comparison > 0) {
6285
- if (scheme.future) {
6286
- return declension(scheme.future, count);
6287
- } else {
6288
- return "через " + declension(scheme.regular, count);
6289
- }
6290
- } else {
6291
- if (scheme.past) {
6292
- return declension(scheme.past, count);
6293
- } else {
6294
- return declension(scheme.regular, count) + " назад";
6295
- }
6296
- }
6297
- } else {
6298
- return declension(scheme.regular, count);
6299
- }
6300
- };
6301
- }
6302
- const formatDistanceLocale = {
6303
- lessThanXSeconds: buildLocalizeTokenFn({
6304
- regular: {
6305
- one: "меньше секунды",
6306
- singularNominative: "меньше {{count}} секунды",
6307
- singularGenitive: "меньше {{count}} секунд",
6308
- pluralGenitive: "меньше {{count}} секунд"
6309
- },
6310
- future: {
6311
- one: "меньше, чем через секунду",
6312
- singularNominative: "меньше, чем через {{count}} секунду",
6313
- singularGenitive: "меньше, чем через {{count}} секунды",
6314
- pluralGenitive: "меньше, чем через {{count}} секунд"
6315
- }
6316
- }),
6317
- xSeconds: buildLocalizeTokenFn({
6318
- regular: {
6319
- singularNominative: "{{count}} секунда",
6320
- singularGenitive: "{{count}} секунды",
6321
- pluralGenitive: "{{count}} секунд"
6322
- },
6323
- past: {
6324
- singularNominative: "{{count}} секунду назад",
6325
- singularGenitive: "{{count}} секунды назад",
6326
- pluralGenitive: "{{count}} секунд назад"
6327
- },
6328
- future: {
6329
- singularNominative: "через {{count}} секунду",
6330
- singularGenitive: "через {{count}} секунды",
6331
- pluralGenitive: "через {{count}} секунд"
6332
- }
6333
- }),
6334
- halfAMinute: (_count, options) => {
6335
- if (options?.addSuffix) {
6336
- if (options.comparison && options.comparison > 0) {
6337
- return "через полминуты";
6338
- } else {
6339
- return "полминуты назад";
6340
- }
6341
- }
6342
- return "полминуты";
6343
- },
6344
- lessThanXMinutes: buildLocalizeTokenFn({
6345
- regular: {
6346
- one: "меньше минуты",
6347
- singularNominative: "меньше {{count}} минуты",
6348
- singularGenitive: "меньше {{count}} минут",
6349
- pluralGenitive: "меньше {{count}} минут"
6350
- },
6351
- future: {
6352
- one: "меньше, чем через минуту",
6353
- singularNominative: "меньше, чем через {{count}} минуту",
6354
- singularGenitive: "меньше, чем через {{count}} минуты",
6355
- pluralGenitive: "меньше, чем через {{count}} минут"
6356
- }
6357
- }),
6358
- xMinutes: buildLocalizeTokenFn({
6359
- regular: {
6360
- singularNominative: "{{count}} минута",
6361
- singularGenitive: "{{count}} минуты",
6362
- pluralGenitive: "{{count}} минут"
6363
- },
6364
- past: {
6365
- singularNominative: "{{count}} минуту назад",
6366
- singularGenitive: "{{count}} минуты назад",
6367
- pluralGenitive: "{{count}} минут назад"
6368
- },
6369
- future: {
6370
- singularNominative: "через {{count}} минуту",
6371
- singularGenitive: "через {{count}} минуты",
6372
- pluralGenitive: "через {{count}} минут"
6373
- }
6374
- }),
6375
- aboutXHours: buildLocalizeTokenFn({
6376
- regular: {
6377
- singularNominative: "около {{count}} часа",
6378
- singularGenitive: "около {{count}} часов",
6379
- pluralGenitive: "около {{count}} часов"
6380
- },
6381
- future: {
6382
- singularNominative: "приблизительно через {{count}} час",
6383
- singularGenitive: "приблизительно через {{count}} часа",
6384
- pluralGenitive: "приблизительно через {{count}} часов"
6385
- }
6386
- }),
6387
- xHours: buildLocalizeTokenFn({
6388
- regular: {
6389
- singularNominative: "{{count}} час",
6390
- singularGenitive: "{{count}} часа",
6391
- pluralGenitive: "{{count}} часов"
6392
- }
6393
- }),
6394
- xDays: buildLocalizeTokenFn({
6395
- regular: {
6396
- singularNominative: "{{count}} день",
6397
- singularGenitive: "{{count}} дня",
6398
- pluralGenitive: "{{count}} дней"
6399
- }
6400
- }),
6401
- aboutXWeeks: buildLocalizeTokenFn({
6402
- regular: {
6403
- singularNominative: "около {{count}} недели",
6404
- singularGenitive: "около {{count}} недель",
6405
- pluralGenitive: "около {{count}} недель"
6406
- },
6407
- future: {
6408
- singularNominative: "приблизительно через {{count}} неделю",
6409
- singularGenitive: "приблизительно через {{count}} недели",
6410
- pluralGenitive: "приблизительно через {{count}} недель"
6411
- }
6412
- }),
6413
- xWeeks: buildLocalizeTokenFn({
6414
- regular: {
6415
- singularNominative: "{{count}} неделя",
6416
- singularGenitive: "{{count}} недели",
6417
- pluralGenitive: "{{count}} недель"
6418
- }
6419
- }),
6420
- aboutXMonths: buildLocalizeTokenFn({
6421
- regular: {
6422
- singularNominative: "около {{count}} месяца",
6423
- singularGenitive: "около {{count}} месяцев",
6424
- pluralGenitive: "около {{count}} месяцев"
6425
- },
6426
- future: {
6427
- singularNominative: "приблизительно через {{count}} месяц",
6428
- singularGenitive: "приблизительно через {{count}} месяца",
6429
- pluralGenitive: "приблизительно через {{count}} месяцев"
6430
- }
6431
- }),
6432
- xMonths: buildLocalizeTokenFn({
6433
- regular: {
6434
- singularNominative: "{{count}} месяц",
6435
- singularGenitive: "{{count}} месяца",
6436
- pluralGenitive: "{{count}} месяцев"
6437
- }
6438
- }),
6439
- aboutXYears: buildLocalizeTokenFn({
6440
- regular: {
6441
- singularNominative: "около {{count}} года",
6442
- singularGenitive: "около {{count}} лет",
6443
- pluralGenitive: "около {{count}} лет"
6444
- },
6445
- future: {
6446
- singularNominative: "приблизительно через {{count}} год",
6447
- singularGenitive: "приблизительно через {{count}} года",
6448
- pluralGenitive: "приблизительно через {{count}} лет"
6449
- }
6450
- }),
6451
- xYears: buildLocalizeTokenFn({
6452
- regular: {
6453
- singularNominative: "{{count}} год",
6454
- singularGenitive: "{{count}} года",
6455
- pluralGenitive: "{{count}} лет"
6456
- }
6457
- }),
6458
- overXYears: buildLocalizeTokenFn({
6459
- regular: {
6460
- singularNominative: "больше {{count}} года",
6461
- singularGenitive: "больше {{count}} лет",
6462
- pluralGenitive: "больше {{count}} лет"
6463
- },
6464
- future: {
6465
- singularNominative: "больше, чем через {{count}} год",
6466
- singularGenitive: "больше, чем через {{count}} года",
6467
- pluralGenitive: "больше, чем через {{count}} лет"
6468
- }
6469
- }),
6470
- almostXYears: buildLocalizeTokenFn({
6471
- regular: {
6472
- singularNominative: "почти {{count}} год",
6473
- singularGenitive: "почти {{count}} года",
6474
- pluralGenitive: "почти {{count}} лет"
6475
- },
6476
- future: {
6477
- singularNominative: "почти через {{count}} год",
6478
- singularGenitive: "почти через {{count}} года",
6479
- pluralGenitive: "почти через {{count}} лет"
6480
- }
6481
- })
6482
- };
6483
- const formatDistance = (token, count, options) => {
6484
- return formatDistanceLocale[token](count, options);
6485
- };
6486
- const dateFormats = {
6487
- full: "EEEE, d MMMM y 'г.'",
6488
- long: "d MMMM y 'г.'",
6489
- medium: "d MMM y 'г.'",
6490
- short: "dd.MM.y"
6491
- };
6492
- const timeFormats = {
6493
- full: "H:mm:ss zzzz",
6494
- long: "H:mm:ss z",
6495
- medium: "H:mm:ss",
6496
- short: "H:mm"
6497
- };
6498
- const dateTimeFormats = {
6499
- any: "{{date}}, {{time}}"
6500
- };
6501
- const formatLong = {
6502
- date: buildFormatLongFn({
6503
- formats: dateFormats,
6504
- defaultWidth: "full"
6505
- }),
6506
- time: buildFormatLongFn({
6507
- formats: timeFormats,
6508
- defaultWidth: "full"
6509
- }),
6510
- dateTime: buildFormatLongFn({
6511
- formats: dateTimeFormats,
6512
- defaultWidth: "any"
6513
- })
6514
- };
6515
- const accusativeWeekdays = [
6516
- "воскресенье",
6517
- "понедельник",
6518
- "вторник",
6519
- "среду",
6520
- "четверг",
6521
- "пятницу",
6522
- "субботу"
6523
- ];
6524
- function lastWeek(day) {
6525
- const weekday = accusativeWeekdays[day];
6526
- switch (day) {
6527
- case 0:
6528
- return "'в прошлое " + weekday + " в' p";
6529
- case 1:
6530
- case 2:
6531
- case 4:
6532
- return "'в прошлый " + weekday + " в' p";
6533
- case 3:
6534
- case 5:
6535
- case 6:
6536
- return "'в прошлую " + weekday + " в' p";
6537
- }
6538
- }
6539
- function thisWeek(day) {
6540
- const weekday = accusativeWeekdays[day];
6541
- if (day === 2) {
6542
- return "'во " + weekday + " в' p";
6543
- } else {
6544
- return "'в " + weekday + " в' p";
6545
- }
6546
- }
6547
- function nextWeek(day) {
6548
- const weekday = accusativeWeekdays[day];
6549
- switch (day) {
6550
- case 0:
6551
- return "'в следующее " + weekday + " в' p";
6552
- case 1:
6553
- case 2:
6554
- case 4:
6555
- return "'в следующий " + weekday + " в' p";
6556
- case 3:
6557
- case 5:
6558
- case 6:
6559
- return "'в следующую " + weekday + " в' p";
6560
- }
6561
- }
6562
- const formatRelativeLocale = {
6563
- lastWeek: (date, baseDate, options) => {
6564
- const day = date.getDay();
6565
- if (isSameWeek(date, baseDate, options)) {
6566
- return thisWeek(day);
6567
- } else {
6568
- return lastWeek(day);
6569
- }
6570
- },
6571
- yesterday: "'вчера в' p",
6572
- today: "'сегодня в' p",
6573
- tomorrow: "'завтра в' p",
6574
- nextWeek: (date, baseDate, options) => {
6575
- const day = date.getDay();
6576
- if (isSameWeek(date, baseDate, options)) {
6577
- return thisWeek(day);
6578
- } else {
6579
- return nextWeek(day);
6580
- }
6581
- },
6582
- other: "P"
6583
- };
6584
- const formatRelative = (token, date, baseDate, options) => {
6585
- const format = formatRelativeLocale[token];
6586
- if (typeof format === "function") {
6587
- return format(date, baseDate, options);
6588
- }
6589
- return format;
6590
- };
6591
- const eraValues = {
6592
- narrow: ["до н.э.", "н.э."],
6593
- abbreviated: ["до н. э.", "н. э."],
6594
- wide: ["до нашей эры", "нашей эры"]
6595
- };
6596
- const quarterValues = {
6597
- narrow: ["1", "2", "3", "4"],
6598
- abbreviated: ["1-й кв.", "2-й кв.", "3-й кв.", "4-й кв."],
6599
- wide: ["1-й квартал", "2-й квартал", "3-й квартал", "4-й квартал"]
6600
- };
6601
- const monthValues = {
6602
- narrow: ["Я", "Ф", "М", "А", "М", "И", "И", "А", "С", "О", "Н", "Д"],
6603
- abbreviated: [
6604
- "янв.",
6605
- "фев.",
6606
- "март",
6607
- "апр.",
6608
- "май",
6609
- "июнь",
6610
- "июль",
6611
- "авг.",
6612
- "сент.",
6613
- "окт.",
6614
- "нояб.",
6615
- "дек."
6616
- ],
6617
- wide: [
6618
- "январь",
6619
- "февраль",
6620
- "март",
6621
- "апрель",
6622
- "май",
6623
- "июнь",
6624
- "июль",
6625
- "август",
6626
- "сентябрь",
6627
- "октябрь",
6628
- "ноябрь",
6629
- "декабрь"
6630
- ]
6631
- };
6632
- const formattingMonthValues = {
6633
- narrow: ["Я", "Ф", "М", "А", "М", "И", "И", "А", "С", "О", "Н", "Д"],
6634
- abbreviated: [
6635
- "янв.",
6636
- "фев.",
6637
- "мар.",
6638
- "апр.",
6639
- "мая",
6640
- "июн.",
6641
- "июл.",
6642
- "авг.",
6643
- "сент.",
6644
- "окт.",
6645
- "нояб.",
6646
- "дек."
6647
- ],
6648
- wide: [
6649
- "января",
6650
- "февраля",
6651
- "марта",
6652
- "апреля",
6653
- "мая",
6654
- "июня",
6655
- "июля",
6656
- "августа",
6657
- "сентября",
6658
- "октября",
6659
- "ноября",
6660
- "декабря"
6661
- ]
6662
- };
6663
- const dayValues = {
6664
- narrow: ["В", "П", "В", "С", "Ч", "П", "С"],
6665
- short: ["вс", "пн", "вт", "ср", "чт", "пт", "сб"],
6666
- abbreviated: ["вск", "пнд", "втр", "срд", "чтв", "птн", "суб"],
6667
- wide: [
6668
- "воскресенье",
6669
- "понедельник",
6670
- "вторник",
6671
- "среда",
6672
- "четверг",
6673
- "пятница",
6674
- "суббота"
6675
- ]
6676
- };
6677
- const dayPeriodValues = {
6678
- narrow: {
6679
- am: "ДП",
6680
- pm: "ПП",
6681
- midnight: "полн.",
6682
- noon: "полд.",
6683
- morning: "утро",
6684
- afternoon: "день",
6685
- evening: "веч.",
6686
- night: "ночь"
6687
- },
6688
- abbreviated: {
6689
- am: "ДП",
6690
- pm: "ПП",
6691
- midnight: "полн.",
6692
- noon: "полд.",
6693
- morning: "утро",
6694
- afternoon: "день",
6695
- evening: "веч.",
6696
- night: "ночь"
6697
- },
6698
- wide: {
6699
- am: "ДП",
6700
- pm: "ПП",
6701
- midnight: "полночь",
6702
- noon: "полдень",
6703
- morning: "утро",
6704
- afternoon: "день",
6705
- evening: "вечер",
6706
- night: "ночь"
6707
- }
6708
- };
6709
- const formattingDayPeriodValues = {
6710
- narrow: {
6711
- am: "ДП",
6712
- pm: "ПП",
6713
- midnight: "полн.",
6714
- noon: "полд.",
6715
- morning: "утра",
6716
- afternoon: "дня",
6717
- evening: "веч.",
6718
- night: "ночи"
6719
- },
6720
- abbreviated: {
6721
- am: "ДП",
6722
- pm: "ПП",
6723
- midnight: "полн.",
6724
- noon: "полд.",
6725
- morning: "утра",
6726
- afternoon: "дня",
6727
- evening: "веч.",
6728
- night: "ночи"
6729
- },
6730
- wide: {
6731
- am: "ДП",
6732
- pm: "ПП",
6733
- midnight: "полночь",
6734
- noon: "полдень",
6735
- morning: "утра",
6736
- afternoon: "дня",
6737
- evening: "вечера",
6738
- night: "ночи"
6739
- }
6740
- };
6741
- const ordinalNumber = (dirtyNumber, options) => {
6742
- const number = Number(dirtyNumber);
6743
- const unit = options?.unit;
6744
- let suffix;
6745
- if (unit === "date") {
6746
- suffix = "-е";
6747
- } else if (unit === "week" || unit === "minute" || unit === "second") {
6748
- suffix = "-я";
6749
- } else {
6750
- suffix = "-й";
6751
- }
6752
- return number + suffix;
6753
- };
6754
- const localize = {
6755
- ordinalNumber,
6756
- era: buildLocalizeFn({
6757
- values: eraValues,
6758
- defaultWidth: "wide"
6759
- }),
6760
- quarter: buildLocalizeFn({
6761
- values: quarterValues,
6762
- defaultWidth: "wide",
6763
- argumentCallback: (quarter) => quarter - 1
6764
- }),
6765
- month: buildLocalizeFn({
6766
- values: monthValues,
6767
- defaultWidth: "wide",
6768
- formattingValues: formattingMonthValues,
6769
- defaultFormattingWidth: "wide"
6770
- }),
6771
- day: buildLocalizeFn({
6772
- values: dayValues,
6773
- defaultWidth: "wide"
6774
- }),
6775
- dayPeriod: buildLocalizeFn({
6776
- values: dayPeriodValues,
6777
- defaultWidth: "any",
6778
- formattingValues: formattingDayPeriodValues,
6779
- defaultFormattingWidth: "wide"
6780
- })
6781
- };
6782
- const matchOrdinalNumberPattern = /^(\d+)(-?(е|я|й|ое|ье|ая|ья|ый|ой|ий|ый))?/i;
6783
- const parseOrdinalNumberPattern = /\d+/i;
6784
- const matchEraPatterns = {
6785
- narrow: /^((до )?н\.?\s?э\.?)/i,
6786
- abbreviated: /^((до )?н\.?\s?э\.?)/i,
6787
- wide: /^(до нашей эры|нашей эры|наша эра)/i
6788
- };
6789
- const parseEraPatterns = {
6790
- any: [/^д/i, /^н/i]
6791
- };
6792
- const matchQuarterPatterns = {
6793
- narrow: /^[1234]/i,
6794
- abbreviated: /^[1234](-?[ыои]?й?)? кв.?/i,
6795
- wide: /^[1234](-?[ыои]?й?)? квартал/i
6796
- };
6797
- const parseQuarterPatterns = {
6798
- any: [/1/i, /2/i, /3/i, /4/i]
6799
- };
6800
- const matchMonthPatterns = {
6801
- narrow: /^[яфмаисонд]/i,
6802
- abbreviated: /^(янв|фев|март?|апр|ма[йя]|июн[ья]?|июл[ья]?|авг|сент?|окт|нояб?|дек)\.?/i,
6803
- wide: /^(январ[ья]|феврал[ья]|марта?|апрел[ья]|ма[йя]|июн[ья]|июл[ья]|августа?|сентябр[ья]|октябр[ья]|октябр[ья]|ноябр[ья]|декабр[ья])/i
6804
- };
6805
- const parseMonthPatterns = {
6806
- narrow: [
6807
- /^я/i,
6808
- /^ф/i,
6809
- /^м/i,
6810
- /^а/i,
6811
- /^м/i,
6812
- /^и/i,
6813
- /^и/i,
6814
- /^а/i,
6815
- /^с/i,
6816
- /^о/i,
6817
- /^н/i,
6818
- /^я/i
6819
- ],
6820
- any: [
6821
- /^я/i,
6822
- /^ф/i,
6823
- /^мар/i,
6824
- /^ап/i,
6825
- /^ма[йя]/i,
6826
- /^июн/i,
6827
- /^июл/i,
6828
- /^ав/i,
6829
- /^с/i,
6830
- /^о/i,
6831
- /^н/i,
6832
- /^д/i
6833
- ]
6834
- };
6835
- const matchDayPatterns = {
6836
- narrow: /^[впсч]/i,
6837
- short: /^(вс|во|пн|по|вт|ср|чт|че|пт|пя|сб|су)\.?/i,
6838
- abbreviated: /^(вск|вос|пнд|пон|втр|вто|срд|сре|чтв|чет|птн|пят|суб).?/i,
6839
- wide: /^(воскресень[ея]|понедельника?|вторника?|сред[аы]|четверга?|пятниц[аы]|суббот[аы])/i
6840
- };
6841
- const parseDayPatterns = {
6842
- narrow: [/^в/i, /^п/i, /^в/i, /^с/i, /^ч/i, /^п/i, /^с/i],
6843
- any: [/^в[ос]/i, /^п[он]/i, /^в/i, /^ср/i, /^ч/i, /^п[ят]/i, /^с[уб]/i]
6844
- };
6845
- const matchDayPeriodPatterns = {
6846
- narrow: /^([дп]п|полн\.?|полд\.?|утр[оа]|день|дня|веч\.?|ноч[ьи])/i,
6847
- abbreviated: /^([дп]п|полн\.?|полд\.?|утр[оа]|день|дня|веч\.?|ноч[ьи])/i,
6848
- wide: /^([дп]п|полночь|полдень|утр[оа]|день|дня|вечера?|ноч[ьи])/i
6849
- };
6850
- const parseDayPeriodPatterns = {
6851
- any: {
6852
- am: /^дп/i,
6853
- pm: /^пп/i,
6854
- midnight: /^полн/i,
6855
- noon: /^полд/i,
6856
- morning: /^у/i,
6857
- afternoon: /^д[ен]/i,
6858
- evening: /^в/i,
6859
- night: /^н/i
6860
- }
6861
- };
6862
- const match = {
6863
- ordinalNumber: buildMatchPatternFn({
6864
- matchPattern: matchOrdinalNumberPattern,
6865
- parsePattern: parseOrdinalNumberPattern,
6866
- valueCallback: (value) => parseInt(value, 10)
6867
- }),
6868
- era: buildMatchFn({
6869
- matchPatterns: matchEraPatterns,
6870
- defaultMatchWidth: "wide",
6871
- parsePatterns: parseEraPatterns,
6872
- defaultParseWidth: "any"
6873
- }),
6874
- quarter: buildMatchFn({
6875
- matchPatterns: matchQuarterPatterns,
6876
- defaultMatchWidth: "wide",
6877
- parsePatterns: parseQuarterPatterns,
6878
- defaultParseWidth: "any",
6879
- valueCallback: (index) => index + 1
6880
- }),
6881
- month: buildMatchFn({
6882
- matchPatterns: matchMonthPatterns,
6883
- defaultMatchWidth: "wide",
6884
- parsePatterns: parseMonthPatterns,
6885
- defaultParseWidth: "any"
6886
- }),
6887
- day: buildMatchFn({
6888
- matchPatterns: matchDayPatterns,
6889
- defaultMatchWidth: "wide",
6890
- parsePatterns: parseDayPatterns,
6891
- defaultParseWidth: "any"
6892
- }),
6893
- dayPeriod: buildMatchFn({
6894
- matchPatterns: matchDayPeriodPatterns,
6895
- defaultMatchWidth: "wide",
6896
- parsePatterns: parseDayPeriodPatterns,
6897
- defaultParseWidth: "any"
6898
- })
6899
- };
6900
- const ru = {
6901
- code: "ru",
6902
- formatDistance,
6903
- formatLong,
6904
- formatRelative,
6905
- localize,
6906
- match,
6907
- options: {
6908
- weekStartsOn: 1,
6909
- firstWeekContainsDate: 1
6910
- }
6911
- };
6912
- const formatDateLat = (date) => dateFns.format(date, "dd/MM/yyyy", { locale: enGB });
6913
- const formatDateEs = (date) => dateFns.format(date, "dd.MM.yyyy", { locale: es });
6914
- const formatDateRu = (date) => dateFns.format(date, "dd.MM.yyyy", { locale: ru });
6915
- const formatDate = (date, locale = void 0) => {
6916
- switch (locale ?? detectLocale()) {
5318
+ const formatDateLat = (date) => dateFns.format(date, "dd/MM/yyyy", { locale: locale.enGB });
5319
+ const formatDateEs = (date) => dateFns.format(date, "dd.MM.yyyy", { locale: locale.es });
5320
+ const formatDateRu = (date) => dateFns.format(date, "dd.MM.yyyy", { locale: locale.ru });
5321
+ const formatDate = (date, locale2 = void 0) => {
5322
+ switch (locale2 ?? detectLocale()) {
6917
5323
  case "es-ES":
6918
5324
  return formatDateEs(date);
6919
5325
  case "ru-RU":
@@ -6922,22 +5328,22 @@ const formatDate = (date, locale = void 0) => {
6922
5328
  return formatDateLat(date);
6923
5329
  }
6924
5330
  };
6925
- const formatDateTime = (date, locale = void 0) => dateFns.format(date, "Pp", {
5331
+ const formatDateTime = (date, locale$1 = void 0) => dateFns.format(date, "Pp", {
6926
5332
  locale: {
6927
- "en-GB": enGB,
6928
- "es-ES": es,
6929
- "ru-RU": ru
6930
- }[locale ?? detectLocale()] ?? enGB
5333
+ "en-GB": locale.enGB,
5334
+ "es-ES": locale.es,
5335
+ "ru-RU": locale.ru
5336
+ }[locale$1 ?? detectLocale()] ?? locale.enGB
6931
5337
  });
6932
5338
  function detectLocale() {
6933
5339
  const instance = vue.getCurrentInstance();
6934
5340
  const i18n = instance?.appContext?.app?.config?.globalProperties?.$i18n;
6935
5341
  if (i18n) {
6936
5342
  try {
6937
- const locale = (typeof i18n.locale === "object" ? i18n.locale.value : i18n.locale) ?? "en-GB";
6938
- if (locale.startsWith("en")) return "en-GB";
6939
- if (locale.startsWith("es")) return "es-ES";
6940
- if (locale.startsWith("ru")) return "ru-RU";
5343
+ const locale2 = (typeof i18n.locale === "object" ? i18n.locale.value : i18n.locale) ?? "en-GB";
5344
+ if (locale2.startsWith("en")) return "en-GB";
5345
+ if (locale2.startsWith("es")) return "es-ES";
5346
+ if (locale2.startsWith("ru")) return "ru-RU";
6941
5347
  } catch (error) {
6942
5348
  console.warn("Error detecting locale:", error);
6943
5349
  }
@@ -6971,12 +5377,12 @@ const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
6971
5377
  };
6972
5378
  }
6973
5379
  });
6974
- const _hoisted_1$r = {
5380
+ const _hoisted_1$q = {
6975
5381
  xmlns: "http://www.w3.org/2000/svg",
6976
5382
  viewBox: "0 0 24 24"
6977
5383
  };
6978
5384
  function render$b(_ctx, _cache) {
6979
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$r, [..._cache[0] || (_cache[0] = [
5385
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$q, [..._cache[0] || (_cache[0] = [
6980
5386
  vue.createElementVNode("path", {
6981
5387
  fill: "currentColor",
6982
5388
  "fill-rule": "evenodd",
@@ -6986,12 +5392,12 @@ function render$b(_ctx, _cache) {
6986
5392
  ])]);
6987
5393
  }
6988
5394
  const IconCalendar = { render: render$b };
6989
- const _hoisted_1$q = {
5395
+ const _hoisted_1$p = {
6990
5396
  xmlns: "http://www.w3.org/2000/svg",
6991
5397
  viewBox: "0 0 24 24"
6992
5398
  };
6993
5399
  function render$a(_ctx, _cache) {
6994
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$q, [..._cache[0] || (_cache[0] = [
5400
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$p, [..._cache[0] || (_cache[0] = [
6995
5401
  vue.createElementVNode("path", {
6996
5402
  fill: "currentColor",
6997
5403
  "fill-rule": "evenodd",
@@ -7100,18 +5506,15 @@ const _i18n$5 = define({
7100
5506
  "ru-RU": messages_ru_RU$5
7101
5507
  }
7102
5508
  });
7103
- const _hoisted_1$p = ["id"];
5509
+ const _hoisted_1$o = ["id"];
7104
5510
  const _hoisted_2$c = {
7105
5511
  key: 0,
7106
5512
  class: "ui-v1-textbox__prefix"
7107
5513
  };
7108
5514
  const _hoisted_3$b = ["id", "type", "value", "max", "min", "step", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "readonly", "required", "disabled"];
7109
5515
  const _hoisted_4$6 = ["id", "value", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "rows", "cols", "readonly", "required", "disabled"];
7110
- const _hoisted_5$5 = {
7111
- key: 5,
7112
- class: "ui-v1-textbox__eraser"
7113
- };
7114
- const _hoisted_6$3 = {
5516
+ const _hoisted_5$5 = ["disabled", "aria-controls", "aria-label"];
5517
+ const _hoisted_6$4 = {
7115
5518
  key: 7,
7116
5519
  class: "ui-v1-textbox__suffix"
7117
5520
  };
@@ -7606,14 +6009,17 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
7606
6009
  ref: placeholderRef,
7607
6010
  class: "ui-v1-textbox__placeholder"
7608
6011
  }, vue.toDisplayString(__props.placeholder), 513)) : vue.createCommentVNode("", true),
7609
- __props.clearable && String(__props.value) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$5, [
7610
- vue.createVNode(vue.unref(IconClearCircle), {
7611
- "aria-controls": __props.id ?? vue.unref(uid2),
7612
- "aria-label": i18n.value.t("clear"),
7613
- role: "button",
7614
- onClick: clear2
7615
- }, null, 8, ["aria-controls", "aria-label"])
7616
- ])) : vue.createCommentVNode("", true),
6012
+ __props.clearable && String(__props.value) ? (vue.openBlock(), vue.createElementBlock("button", {
6013
+ key: 5,
6014
+ type: "button",
6015
+ class: "ui-v1-textbox__eraser",
6016
+ disabled: __props.disabled || __props.readonly,
6017
+ "aria-controls": __props.id ?? vue.unref(uid2),
6018
+ "aria-label": i18n.value.t("clear"),
6019
+ onClick: clear2
6020
+ }, [
6021
+ vue.createVNode(vue.unref(IconClearCircle), { "aria-hidden": "true" })
6022
+ ], 8, _hoisted_5$5)) : vue.createCommentVNode("", true),
7617
6023
  "trailing-icon" in _ctx.$slots ? (vue.openBlock(), vue.createElementBlock("span", {
7618
6024
  key: 6,
7619
6025
  class: "ui-v1-textbox__icon ui-v1-textbox__icon_trailing",
@@ -7621,12 +6027,12 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
7621
6027
  }, [
7622
6028
  vue.renderSlot(_ctx.$slots, "trailing-icon")
7623
6029
  ])) : vue.createCommentVNode("", true),
7624
- __props.suffix || "suffix" in _ctx.$slots ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$3, [
6030
+ __props.suffix || "suffix" in _ctx.$slots ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$4, [
7625
6031
  vue.renderSlot(_ctx.$slots, "default", {}, () => [
7626
6032
  vue.createTextVNode(vue.toDisplayString(__props.suffix), 1)
7627
6033
  ])
7628
6034
  ])) : vue.createCommentVNode("", true)
7629
- ], 16, _hoisted_1$p);
6035
+ ], 16, _hoisted_1$o);
7630
6036
  };
7631
6037
  }
7632
6038
  });
@@ -7644,7 +6050,7 @@ const deltaTransition$1 = (el) => {
7644
6050
  animationDuration: `${delta * 15}ms`
7645
6051
  } : {};
7646
6052
  };
7647
- const _hoisted_1$o = {
6053
+ const _hoisted_1$n = {
7648
6054
  key: 0,
7649
6055
  class: "ui-v1-menu-item__avatar"
7650
6056
  };
@@ -7658,7 +6064,7 @@ const _hoisted_5$4 = {
7658
6064
  key: 0,
7659
6065
  class: "ui-v1-menu-item__description"
7660
6066
  };
7661
- const _hoisted_6$2 = {
6067
+ const _hoisted_6$3 = {
7662
6068
  key: 2,
7663
6069
  class: "ui-v1-menu-item__counter"
7664
6070
  };
@@ -7745,7 +6151,7 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
7745
6151
  }),
7746
6152
  onMouseoverOnce: onHover
7747
6153
  }, [
7748
- _ctx.$slots["avatar"] ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$o, [
6154
+ _ctx.$slots["avatar"] ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$n, [
7749
6155
  vue.renderSlot(_ctx.$slots, "avatar")
7750
6156
  ])) : _ctx.$slots["leading-icon"] ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$b, [
7751
6157
  vue.renderSlot(_ctx.$slots, "leading-icon")
@@ -7768,7 +6174,7 @@ const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
7768
6174
  ])
7769
6175
  ])) : vue.createCommentVNode("", true)
7770
6176
  ]),
7771
- __props.counter !== null ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$2, vue.toDisplayString(__props.counter), 1)) : vue.createCommentVNode("", true),
6177
+ __props.counter !== null ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$3, vue.toDisplayString(__props.counter), 1)) : vue.createCommentVNode("", true),
7772
6178
  _ctx.$slots["trailing-icon"] ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$2, [
7773
6179
  vue.renderSlot(_ctx.$slots, "trailing-icon")
7774
6180
  ])) : vue.createCommentVNode("", true)
@@ -7882,15 +6288,15 @@ var SYNCHRONIZATION = /* @__PURE__ */ ((SYNCHRONIZATION2) => {
7882
6288
  SYNCHRONIZATION2["CONFIRMED"] = "confirmed";
7883
6289
  return SYNCHRONIZATION2;
7884
6290
  })(SYNCHRONIZATION || {});
7885
- const dateFnsLocale = (locale) => ({
7886
- "en-GB": enGB,
7887
- "es-ES": es,
7888
- "ru-RU": ru
7889
- })[locale ?? "en-GB"] ?? enGB;
7890
- const formatDateValue = (date, omitYear = false, locale = void 0) => {
7891
- const template = omitYear ? locale === "en-GB" ? "dd/MM" : "dd.MM" : locale === "en-GB" ? "dd/MM/yyyy" : "dd.MM.yyyy";
6291
+ const dateFnsLocale = (locale$1) => ({
6292
+ "en-GB": locale.enGB,
6293
+ "es-ES": locale.es,
6294
+ "ru-RU": locale.ru
6295
+ })[locale$1 ?? "en-GB"] ?? locale.enGB;
6296
+ const formatDateValue = (date, omitYear = false, locale2 = void 0) => {
6297
+ const template = omitYear ? locale2 === "en-GB" ? "dd/MM" : "dd.MM" : locale2 === "en-GB" ? "dd/MM/yyyy" : "dd.MM.yyyy";
7892
6298
  return dateFns.format(date, template, {
7893
- locale: dateFnsLocale(locale)
6299
+ locale: dateFnsLocale(locale2)
7894
6300
  });
7895
6301
  };
7896
6302
  const toDateKey = (date) => {
@@ -8033,7 +6439,7 @@ const _i18n$4 = define({
8033
6439
  "ru-RU": messages_ru_RU$4
8034
6440
  }
8035
6441
  });
8036
- const _hoisted_1$n = ["id", "aria-controls", "aria-disabled", "aria-expanded", "aria-readonly"];
6442
+ const _hoisted_1$m = ["id", "aria-controls", "aria-disabled", "aria-expanded", "aria-readonly"];
8037
6443
  const _hoisted_2$a = ["id"];
8038
6444
  const _hoisted_3$9 = { class: "ui-v1-date-picker__workspace" };
8039
6445
  const _hoisted_4$4 = { class: "ui-v1-date-picker__action" };
@@ -8520,7 +6926,7 @@ const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
8520
6926
  ]),
8521
6927
  _: 1
8522
6928
  }, 16, ["id", "visible", "target", "container", "placement", "aria-hidden", "class", "disabled"])
8523
- ], 16, _hoisted_1$n);
6929
+ ], 16, _hoisted_1$m);
8524
6930
  };
8525
6931
  }
8526
6932
  });
@@ -8568,12 +6974,12 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
8568
6974
  };
8569
6975
  }
8570
6976
  });
8571
- const _hoisted_1$m = {
6977
+ const _hoisted_1$l = {
8572
6978
  xmlns: "http://www.w3.org/2000/svg",
8573
6979
  viewBox: "0 0 24 24"
8574
6980
  };
8575
6981
  function render$9(_ctx, _cache) {
8576
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$m, [..._cache[0] || (_cache[0] = [
6982
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$l, [..._cache[0] || (_cache[0] = [
8577
6983
  vue.createElementVNode("path", {
8578
6984
  fill: "currentColor",
8579
6985
  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"
@@ -8581,12 +6987,12 @@ function render$9(_ctx, _cache) {
8581
6987
  ])]);
8582
6988
  }
8583
6989
  const IconChevronDown = { render: render$9 };
8584
- const _hoisted_1$l = {
6990
+ const _hoisted_1$k = {
8585
6991
  xmlns: "http://www.w3.org/2000/svg",
8586
6992
  viewBox: "0 0 24 24"
8587
6993
  };
8588
6994
  function render$8(_ctx, _cache) {
8589
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$l, [..._cache[0] || (_cache[0] = [
6995
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$k, [..._cache[0] || (_cache[0] = [
8590
6996
  vue.createElementVNode("path", {
8591
6997
  fill: "currentColor",
8592
6998
  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"
@@ -8594,7 +7000,7 @@ function render$8(_ctx, _cache) {
8594
7000
  ])]);
8595
7001
  }
8596
7002
  const IconChevronUp = { render: render$8 };
8597
- const _hoisted_1$k = ["id", "aria-expanded", "aria-hidden"];
7003
+ const _hoisted_1$j = ["id", "aria-expanded", "aria-hidden"];
8598
7004
  const _hoisted_2$9 = {
8599
7005
  "aria-hidden": "true",
8600
7006
  class: "ui-v1-infobox__media"
@@ -8605,7 +7011,7 @@ const _hoisted_5$3 = {
8605
7011
  key: 0,
8606
7012
  class: "ui-v1-infobox__header"
8607
7013
  };
8608
- const _hoisted_6$1 = ["id"];
7014
+ const _hoisted_6$2 = ["id"];
8609
7015
  const _hoisted_7$1 = ["aria-controls", "aria-expanded"];
8610
7016
  const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
8611
7017
  ...{
@@ -8785,7 +7191,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
8785
7191
  }, () => [
8786
7192
  vue.createTextVNode(vue.toDisplayString(__props.title), 1)
8787
7193
  ])
8788
- ], 8, _hoisted_6$1)) : vue.createCommentVNode("", true),
7194
+ ], 8, _hoisted_6$2)) : vue.createCommentVNode("", true),
8789
7195
  __props.expandable ? (vue.openBlock(), vue.createElementBlock("button", {
8790
7196
  key: 1,
8791
7197
  "aria-controls": bodyId.value,
@@ -8838,7 +7244,7 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
8838
7244
  }, [
8839
7245
  vue.createVNode(vue.unref(IconClear), { class: "ui-v1-infobox__closer-icon" })
8840
7246
  ])) : vue.createCommentVNode("", true)
8841
- ], 16, _hoisted_1$k), [
7247
+ ], 16, _hoisted_1$j), [
8842
7248
  [vue.vShow, state.shouldBeShown]
8843
7249
  ])
8844
7250
  ]),
@@ -8847,12 +7253,12 @@ const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
8847
7253
  };
8848
7254
  }
8849
7255
  });
8850
- const _hoisted_1$j = {
7256
+ const _hoisted_1$i = {
8851
7257
  xmlns: "http://www.w3.org/2000/svg",
8852
7258
  viewBox: "0 0 24 24"
8853
7259
  };
8854
7260
  function render$7(_ctx, _cache) {
8855
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$j, [..._cache[0] || (_cache[0] = [
7261
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$i, [..._cache[0] || (_cache[0] = [
8856
7262
  vue.createElementVNode("path", {
8857
7263
  fill: "currentColor",
8858
7264
  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"
@@ -8878,7 +7284,7 @@ var SIZE$3 = /* @__PURE__ */ ((SIZE2) => {
8878
7284
  SIZE2["TITLE02"] = "title-02";
8879
7285
  return SIZE2;
8880
7286
  })(SIZE$3 || {});
8881
- const _hoisted_1$i = ["href", "target"];
7287
+ const _hoisted_1$h = ["href", "target"];
8882
7288
  const _hoisted_2$8 = {
8883
7289
  key: 0,
8884
7290
  class: "ui-v1-link__inner"
@@ -8964,7 +7370,7 @@ const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
8964
7370
  vue.createVNode(vue.unref(IconOpenInNew), { class: "ui-v1-link__icon-sprite" })
8965
7371
  ])
8966
7372
  ])) : vue.createCommentVNode("", true)
8967
- ], 16, _hoisted_1$i);
7373
+ ], 16, _hoisted_1$h);
8968
7374
  };
8969
7375
  }
8970
7376
  });
@@ -9035,7 +7441,7 @@ const _export_sfc = (sfc, props) => {
9035
7441
  return target;
9036
7442
  };
9037
7443
  const _sfc_main$h = {};
9038
- const _hoisted_1$h = { class: "ui-v1-menu-item-group" };
7444
+ const _hoisted_1$g = { class: "ui-v1-menu-item-group" };
9039
7445
  const _hoisted_2$7 = { class: "ui-v1-menu-item-group__head" };
9040
7446
  const _hoisted_3$6 = {
9041
7447
  key: 0,
@@ -9050,7 +7456,7 @@ const _hoisted_5$2 = {
9050
7456
  class: "ui-v1-menu-item-group__count"
9051
7457
  };
9052
7458
  function _sfc_render(_ctx, _cache) {
9053
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$h, [
7459
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, [
9054
7460
  vue.createElementVNode("div", _hoisted_2$7, [
9055
7461
  _ctx.$slots.option ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$6, [
9056
7462
  vue.renderSlot(_ctx.$slots, "option")
@@ -9167,7 +7573,7 @@ var SIZE$2 = /* @__PURE__ */ ((SIZE2) => {
9167
7573
  SIZE2["SM"] = "sm";
9168
7574
  return SIZE2;
9169
7575
  })(SIZE$2 || {});
9170
- const _hoisted_1$g = ["id", "aria-hidden"];
7576
+ const _hoisted_1$f = ["id", "aria-hidden", "role"];
9171
7577
  const _hoisted_2$6 = ["id"];
9172
7578
  const _hoisted_3$5 = { class: "ui-v1-modal-sidebar__header" };
9173
7579
  const _hoisted_4$1 = { class: "ui-v1-modal-sidebar__header-inner" };
@@ -9176,11 +7582,12 @@ const _hoisted_5$1 = {
9176
7582
  class: "ui-v1-modal-sidebar__title",
9177
7583
  role: "heading"
9178
7584
  };
9179
- const _hoisted_6 = {
7585
+ const _hoisted_6$1 = ["disabled"];
7586
+ const _hoisted_7 = {
9180
7587
  key: 0,
9181
7588
  class: "ui-v1-modal-sidebar__body-fixed"
9182
7589
  };
9183
- const _hoisted_7 = {
7590
+ const _hoisted_8 = {
9184
7591
  key: 2,
9185
7592
  class: "ui-v1-modal-sidebar__footer"
9186
7593
  };
@@ -9231,6 +7638,12 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
9231
7638
  size: {
9232
7639
  type: String,
9233
7640
  default: SIZE$2.SM
7641
+ },
7642
+ /** ARIA-роль модального контейнера */
7643
+ role: {
7644
+ type: String,
7645
+ validator: (role) => ["dialog", "alertdialog"].includes(role),
7646
+ default: "dialog"
9234
7647
  }
9235
7648
  },
9236
7649
  emits: [
@@ -9422,7 +7835,8 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
9422
7835
  ["ui-v1-modal-sidebar-overlay_fixed"]: __props.fixed,
9423
7836
  [`ui-v1-modal-sidebar-overlay_${__props.direction}`]: __props.fixed
9424
7837
  }],
9425
- "aria-modal": "true"
7838
+ "aria-modal": "true",
7839
+ role: __props.role
9426
7840
  }, _ctx.$attrs, { onClick: onBackdropClick }), [
9427
7841
  vue.createVNode(_sfc_main$J, {
9428
7842
  name: `slide-${__props.direction}`,
@@ -9450,12 +7864,14 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
9450
7864
  })
9451
7865
  ])
9452
7866
  ]),
9453
- vue.createElementVNode("div", {
7867
+ vue.createElementVNode("button", {
9454
7868
  ref_key: "closer",
9455
7869
  ref: closer,
9456
- "aria-label": "Esc",
7870
+ "aria-keyshortcuts": "Esc",
7871
+ "aria-label": "Close dialog",
9457
7872
  class: "ui-v1-modal-sidebar__close",
9458
- role: "button",
7873
+ type: "button",
7874
+ disabled: state.overlapped,
9459
7875
  onClick: onCloserClick
9460
7876
  }, [
9461
7877
  vue.createVNode(vue.unref(IconClear), {
@@ -9471,9 +7887,9 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
9471
7887
  ])]),
9472
7888
  _: 1
9473
7889
  }, 8, ["target"])
9474
- ], 512)
7890
+ ], 8, _hoisted_6$1)
9475
7891
  ]),
9476
- __props.scrolling === vue.unref(SCROLLING$1).NONE ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6, [
7892
+ __props.scrolling === vue.unref(SCROLLING$1).NONE ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7, [
9477
7893
  vue.renderSlot(_ctx.$slots, "default", {
9478
7894
  overlapped: state.overlapped
9479
7895
  })
@@ -9491,7 +7907,7 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
9491
7907
  ]),
9492
7908
  _: 3
9493
7909
  }, 8, ["native"])),
9494
- "footer" in _ctx.$slots ? (vue.openBlock(), vue.createElementBlock("footer", _hoisted_7, [
7910
+ "footer" in _ctx.$slots ? (vue.openBlock(), vue.createElementBlock("footer", _hoisted_8, [
9495
7911
  vue.renderSlot(_ctx.$slots, "footer", {
9496
7912
  overlapped: state.overlapped
9497
7913
  })
@@ -9500,7 +7916,7 @@ const _sfc_main$g = /* @__PURE__ */ vue.defineComponent({
9500
7916
  ]),
9501
7917
  _: 3
9502
7918
  }, 8, ["name"])
9503
- ], 16, _hoisted_1$g), [
7919
+ ], 16, _hoisted_1$f), [
9504
7920
  [vue.vShow, state.shown]
9505
7921
  ])
9506
7922
  ]),
@@ -9571,6 +7987,12 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
9571
7987
  type: String,
9572
7988
  validator: (scrolling) => Object.values(SCROLLING).includes(scrolling),
9573
7989
  default: SCROLLING.NORMAL
7990
+ },
7991
+ /** ARIA-роль модального контейнера */
7992
+ role: {
7993
+ type: String,
7994
+ validator: (role) => ["dialog", "alertdialog"].includes(role),
7995
+ default: "dialog"
9574
7996
  }
9575
7997
  },
9576
7998
  emits: [
@@ -9772,6 +8194,7 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
9772
8194
  id: props.id,
9773
8195
  "aria-hidden": visibility.value !== "shown" ? "true" : "false",
9774
8196
  "aria-modal": "true",
8197
+ role: props.role,
9775
8198
  ...attrs,
9776
8199
  class: [attrs.class, {
9777
8200
  "ui-v1-modal": true,
@@ -9802,12 +8225,12 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
9802
8225
  };
9803
8226
  }
9804
8227
  });
9805
- const _hoisted_1$f = {
8228
+ const _hoisted_1$e = {
9806
8229
  xmlns: "http://www.w3.org/2000/svg",
9807
8230
  viewBox: "0 0 24 24"
9808
8231
  };
9809
8232
  function render$6(_ctx, _cache) {
9810
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$f, [..._cache[0] || (_cache[0] = [
8233
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$e, [..._cache[0] || (_cache[0] = [
9811
8234
  vue.createElementVNode("path", {
9812
8235
  fill: "currentColor",
9813
8236
  "fill-rule": "evenodd",
@@ -9817,20 +8240,21 @@ function render$6(_ctx, _cache) {
9817
8240
  ])]);
9818
8241
  }
9819
8242
  const IconWarning = { render: render$6 };
9820
- const _hoisted_1$e = {
8243
+ const _hoisted_1$d = {
9821
8244
  key: 0,
9822
8245
  class: "ui-v1-modal-window__icon"
9823
8246
  };
9824
8247
  const _hoisted_2$5 = ["id"];
9825
- const _hoisted_3$4 = {
8248
+ const _hoisted_3$4 = ["disabled"];
8249
+ const _hoisted_4 = {
9826
8250
  key: 1,
9827
8251
  class: "ui-v1-modal-window__content"
9828
8252
  };
9829
- const _hoisted_4 = {
8253
+ const _hoisted_5 = {
9830
8254
  key: 2,
9831
8255
  class: "ui-v1-modal-window__footer"
9832
8256
  };
9833
- const _hoisted_5 = {
8257
+ const _hoisted_6 = {
9834
8258
  key: 0,
9835
8259
  class: "ui-v1-modal-window__footer-text"
9836
8260
  };
@@ -9883,6 +8307,12 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
9883
8307
  type: String,
9884
8308
  validator: (scrolling) => Object.values(SCROLLING).includes(scrolling),
9885
8309
  default: SCROLLING.NORMAL
8310
+ },
8311
+ /** ARIA-роль модального контейнера */
8312
+ role: {
8313
+ type: String,
8314
+ validator: (role) => ["dialog", "alertdialog"].includes(role),
8315
+ default: "dialog"
9886
8316
  }
9887
8317
  },
9888
8318
  emits: [
@@ -9956,7 +8386,8 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
9956
8386
  fullscreen: __props.fullscreen,
9957
8387
  responsive: __props.responsive,
9958
8388
  "dispose-timeout": __props.disposeTimeout,
9959
- scrolling: __props.scrolling
8389
+ scrolling: __props.scrolling,
8390
+ role: __props.role
9960
8391
  }, {
9961
8392
  ..._ctx.$attrs,
9962
8393
  ..._ctx.$slots.title ? { "aria-labelledby": __props.id + "-title" } : {}
@@ -9976,7 +8407,7 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
9976
8407
  "ui-v1-modal-window__header_pinned": _ctx.$slots.title && state.scrolled && __props.appearance === vue.unref(APPEARANCE).POPUP && !__props.responsive
9977
8408
  })
9978
8409
  }, [
9979
- __props.appearance === vue.unref(APPEARANCE).ALERT ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$e, [
8410
+ __props.appearance === vue.unref(APPEARANCE).ALERT ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$d, [
9980
8411
  vue.renderSlot(_ctx.$slots, "icon", {
9981
8412
  overlapped: state.overlapped
9982
8413
  }, () => [
@@ -9992,18 +8423,20 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
9992
8423
  overlapped: state.overlapped
9993
8424
  })
9994
8425
  ], 8, _hoisted_2$5)) : vue.createCommentVNode("", true),
9995
- __props.appearance !== vue.unref(APPEARANCE).ALERT ? (vue.openBlock(), vue.createElementBlock("div", {
8426
+ __props.appearance !== vue.unref(APPEARANCE).ALERT ? (vue.openBlock(), vue.createElementBlock("button", {
9996
8427
  key: 2,
9997
- "aria-label": "Esc",
8428
+ "aria-keyshortcuts": "Esc",
8429
+ "aria-label": "Close dialog",
9998
8430
  class: "ui-v1-modal-window__close",
9999
- role: "button",
10000
- onClick: _cache[0] || (_cache[0] = ($event) => state.overlapped ? null : close())
8431
+ type: "button",
8432
+ disabled: state.overlapped,
8433
+ onClick: _cache[0] || (_cache[0] = ($event) => close())
10001
8434
  }, [
10002
8435
  vue.createVNode(vue.unref(IconClear), {
10003
- title: "Esc",
8436
+ title: "Close dialog",
10004
8437
  style: { "width": "100%" }
10005
8438
  })
10006
- ])) : vue.createCommentVNode("", true)
8439
+ ], 8, _hoisted_3$4)) : vue.createCommentVNode("", true)
10007
8440
  ], 2),
10008
8441
  __props.responsive ? (vue.openBlock(), vue.createBlock(_sfc_main$o, {
10009
8442
  key: 0,
@@ -10017,13 +8450,13 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
10017
8450
  })
10018
8451
  ]),
10019
8452
  _: 3
10020
- })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$4, [
8453
+ })) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4, [
10021
8454
  vue.renderSlot(_ctx.$slots, "default", {
10022
8455
  overlapped: state.overlapped
10023
8456
  })
10024
8457
  ])),
10025
- _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4, [
10026
- __props.appearance === vue.unref(APPEARANCE).HINT ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5, [
8458
+ _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5, [
8459
+ __props.appearance === vue.unref(APPEARANCE).HINT ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6, [
10027
8460
  vue.renderSlot(_ctx.$slots, "footer", {
10028
8461
  overlapped: state.overlapped
10029
8462
  })
@@ -10034,16 +8467,16 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
10034
8467
  ])) : vue.createCommentVNode("", true)
10035
8468
  ]),
10036
8469
  _: 3
10037
- }, 16, ["id", "opened", "closable", "appearance", "fullscreen", "responsive", "dispose-timeout", "scrolling"]);
8470
+ }, 16, ["id", "opened", "closable", "appearance", "fullscreen", "responsive", "dispose-timeout", "scrolling", "role"]);
10038
8471
  };
10039
8472
  }
10040
8473
  });
10041
- const _hoisted_1$d = {
8474
+ const _hoisted_1$c = {
10042
8475
  xmlns: "http://www.w3.org/2000/svg",
10043
8476
  viewBox: "0 0 24 24"
10044
8477
  };
10045
8478
  function render$5(_ctx, _cache) {
10046
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$d, [..._cache[0] || (_cache[0] = [
8479
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$c, [..._cache[0] || (_cache[0] = [
10047
8480
  vue.createElementVNode("path", {
10048
8481
  fill: "currentColor",
10049
8482
  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"
@@ -10051,12 +8484,12 @@ function render$5(_ctx, _cache) {
10051
8484
  ])]);
10052
8485
  }
10053
8486
  const IconAdd = { render: render$5 };
10054
- const _hoisted_1$c = {
8487
+ const _hoisted_1$b = {
10055
8488
  xmlns: "http://www.w3.org/2000/svg",
10056
8489
  viewBox: "0 0 24 24"
10057
8490
  };
10058
8491
  function render$4(_ctx, _cache) {
10059
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$c, [..._cache[0] || (_cache[0] = [
8492
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$b, [..._cache[0] || (_cache[0] = [
10060
8493
  vue.createElementVNode("path", {
10061
8494
  fill: "currentColor",
10062
8495
  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"
@@ -10064,12 +8497,12 @@ function render$4(_ctx, _cache) {
10064
8497
  ])]);
10065
8498
  }
10066
8499
  const IconCaret = { render: render$4 };
10067
- const _hoisted_1$b = {
8500
+ const _hoisted_1$a = {
10068
8501
  xmlns: "http://www.w3.org/2000/svg",
10069
8502
  viewBox: "0 0 24 24"
10070
8503
  };
10071
8504
  function render$3(_ctx, _cache) {
10072
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$b, [..._cache[0] || (_cache[0] = [
8505
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$a, [..._cache[0] || (_cache[0] = [
10073
8506
  vue.createElementVNode("path", {
10074
8507
  fill: "currentColor",
10075
8508
  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"
@@ -10077,12 +8510,12 @@ function render$3(_ctx, _cache) {
10077
8510
  ])]);
10078
8511
  }
10079
8512
  const IconCaretUp = { render: render$3 };
10080
- const _hoisted_1$a = {
8513
+ const _hoisted_1$9 = {
10081
8514
  xmlns: "http://www.w3.org/2000/svg",
10082
8515
  viewBox: "0 0 24 24"
10083
8516
  };
10084
8517
  function render$2(_ctx, _cache) {
10085
- return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$a, [..._cache[0] || (_cache[0] = [
8518
+ return vue.openBlock(), vue.createElementBlock("svg", _hoisted_1$9, [..._cache[0] || (_cache[0] = [
10086
8519
  vue.createElementVNode("path", {
10087
8520
  fill: "currentColor",
10088
8521
  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"
@@ -10192,7 +8625,7 @@ const _i18n$3 = define({
10192
8625
  "ru-RU": messages_ru_RU$3
10193
8626
  }
10194
8627
  });
10195
- const _hoisted_1$9 = ["id", "aria-disabled", "aria-readonly"];
8628
+ const _hoisted_1$8 = ["id", "aria-disabled", "aria-readonly"];
10196
8629
  const _hoisted_2$4 = ["id", "aria-controls", "aria-label", "disabled"];
10197
8630
  const _hoisted_3$3 = ["id", "aria-controls", "aria-label", "disabled"];
10198
8631
  const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
@@ -10587,7 +9020,7 @@ const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
10587
9020
  class: "ui-v1-number-stepper__icon"
10588
9021
  }))
10589
9022
  ], 8, _hoisted_3$3)
10590
- ], 16, _hoisted_1$9);
9023
+ ], 16, _hoisted_1$8);
10591
9024
  };
10592
9025
  }
10593
9026
  });
@@ -10625,7 +9058,7 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
10625
9058
  };
10626
9059
  }
10627
9060
  });
10628
- const _hoisted_1$8 = ["id", "name", "value", "checked", "required", "disabled"];
9061
+ const _hoisted_1$7 = ["id", "name", "value", "checked", "required", "disabled"];
10629
9062
  let nameCounter = 0;
10630
9063
  let idCounter = 0;
10631
9064
  const __default__$1 = {};
@@ -10718,7 +9151,7 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
10718
9151
  type: "radio",
10719
9152
  class: "ui-v1-radio__input",
10720
9153
  onChange
10721
- }), null, 16, _hoisted_1$8),
9154
+ }), null, 16, _hoisted_1$7),
10722
9155
  _cache[0] || (_cache[0] = vue.createElementVNode("span", { class: "ui-v1-radio__checkmark" }, null, -1))
10723
9156
  ], 16);
10724
9157
  };
@@ -10824,7 +9257,7 @@ const createManipulator = (options) => {
10824
9257
  onDragEnd
10825
9258
  };
10826
9259
  };
10827
- const _hoisted_1$7 = {
9260
+ const _hoisted_1$6 = {
10828
9261
  key: 0,
10829
9262
  class: "ui-v1-slider__label"
10830
9263
  };
@@ -10996,7 +9429,7 @@ const _sfc_main$9 = /* @__PURE__ */ vue.defineComponent({
10996
9429
  onClick: _cache[2] || (_cache[2] = ($event) => vue.unref(onClick)($event)),
10997
9430
  onKeydown: _cache[3] || (_cache[3] = ($event) => onRootKeydown($event))
10998
9431
  }), [
10999
- props.labelled ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [
9432
+ props.labelled ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$6, [
11000
9433
  vue.renderSlot(_ctx.$slots, "label", {
11001
9434
  boundary: props.min
11002
9435
  })
@@ -11249,7 +9682,6 @@ const _i18n$2 = define({
11249
9682
  "ru-RU": messages_ru_RU$2
11250
9683
  }
11251
9684
  });
11252
- const _hoisted_1$6 = ["aria-controls", "aria-expanded", "aria-invalid"];
11253
9685
  const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11254
9686
  __name: "UiSelectTrigger",
11255
9687
  props: {
@@ -11319,6 +9751,11 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11319
9751
  type: Boolean,
11320
9752
  default: false
11321
9753
  },
9754
+ /** Идентификатор активной опции для aria-activedescendant */
9755
+ activeDescendant: {
9756
+ type: null,
9757
+ default: null
9758
+ },
11322
9759
  /** Выбранные элементы из выпадающего списка. Должен содержать значение или массив значений, соответствующих атрибуту value опций из выпадающего списка */
11323
9760
  selection: {
11324
9761
  type: Array,
@@ -11337,7 +9774,9 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11337
9774
  /** Изменение значения */
11338
9775
  "update:value",
11339
9776
  /** Открытие выпадающего списка */
11340
- "update:expanded"
9777
+ "update:expanded",
9778
+ /** Нажатие клавиши в поле ввода */
9779
+ "keydown"
11341
9780
  ],
11342
9781
  setup(__props, { emit: __emit }) {
11343
9782
  const props = __props;
@@ -11359,6 +9798,16 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11359
9798
  return selectionLabels.value;
11360
9799
  });
11361
9800
  const selectionWidth = vue.ref(0);
9801
+ const textboxAttributes = vue.computed(() => ({
9802
+ role: "combobox",
9803
+ "aria-controls": props.id ? `${props.id}-popper` : void 0,
9804
+ "aria-expanded": props.expanded ? "true" : "false",
9805
+ "aria-haspopup": "listbox",
9806
+ "aria-activedescendant": props.activeDescendant ?? void 0,
9807
+ ...!inputReadonly.value && {
9808
+ "aria-autocomplete": "list"
9809
+ }
9810
+ }));
11362
9811
  const updateSelectionWidth = () => {
11363
9812
  if (touchstone.value && !props.placeholderOnly) {
11364
9813
  vue.nextTick().then(() => {
@@ -11387,6 +9836,28 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11387
9836
  if (props.disabled || props.readonly) return;
11388
9837
  return props.expanded ? close() : open();
11389
9838
  };
9839
+ const onKeyDown = (event) => {
9840
+ if (props.disabled || props.readonly) return;
9841
+ if (event.key === "ArrowDown" || event.key === "ArrowUp") {
9842
+ event.preventDefault();
9843
+ open();
9844
+ }
9845
+ if (event.key === "Escape") {
9846
+ event.preventDefault();
9847
+ close();
9848
+ }
9849
+ if (event.key === "Enter") {
9850
+ event.preventDefault();
9851
+ if (!props.expanded) {
9852
+ open();
9853
+ }
9854
+ }
9855
+ if (event.key === " " && inputReadonly.value) {
9856
+ event.preventDefault();
9857
+ onClick();
9858
+ }
9859
+ emit("keydown", event);
9860
+ };
11390
9861
  const onInput = (event) => {
11391
9862
  const target = event.target;
11392
9863
  emit("input", target?.value ?? "");
@@ -11412,11 +9883,6 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11412
9883
  return vue.openBlock(), vue.createElementBlock("div", {
11413
9884
  ref_key: "trigger",
11414
9885
  ref: trigger,
11415
- "aria-controls": __props.id + "-popper",
11416
- "aria-expanded": __props.expanded ? "true" : "false",
11417
- "aria-invalid": __props.invalid ? "true" : "false",
11418
- role: "combobox",
11419
- "aria-haspopup": "listbox",
11420
9886
  class: vue.normalizeClass({
11421
9887
  "ui-v1-select": true,
11422
9888
  "ui-v1-select_active": __props.expanded,
@@ -11442,11 +9908,13 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11442
9908
  readonly: inputReadonly.value,
11443
9909
  size: __props.textboxSize,
11444
9910
  disabled: __props.disabled,
9911
+ "input-attributes": textboxAttributes.value,
11445
9912
  class: "ui-v1-select__trigger",
11446
9913
  onInput,
11447
9914
  onFocus,
11448
9915
  onBlur,
11449
- onClear
9916
+ onClear,
9917
+ onKeydown: onKeyDown
11450
9918
  }, vue.createSlots({
11451
9919
  "trailing-icon": vue.withCtx(() => [
11452
9920
  vue.renderSlot(_ctx.$slots, "trailing-icon", {}, () => [
@@ -11465,9 +9933,9 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
11465
9933
  ]),
11466
9934
  key: "0"
11467
9935
  } : void 0
11468
- ]), 1032, ["id", "value", "placeholder", "active", "clearable", "invalid", "readonly", "size", "disabled"])
9936
+ ]), 1032, ["id", "value", "placeholder", "active", "clearable", "invalid", "readonly", "size", "disabled", "input-attributes"])
11469
9937
  ])
11470
- ], 10, _hoisted_1$6);
9938
+ ], 2);
11471
9939
  };
11472
9940
  }
11473
9941
  });
@@ -11689,8 +10157,9 @@ const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({
11689
10157
  vue.renderSlot(_ctx.$slots, "default")
11690
10158
  ])
11691
10159
  ], 4),
11692
- __props.removable || _ctx.$slots["remove-icon"] ? (vue.openBlock(), vue.createElementBlock("div", {
10160
+ __props.removable || _ctx.$slots["remove-icon"] ? (vue.openBlock(), vue.createElementBlock("button", {
11693
10161
  key: 1,
10162
+ type: "button",
11694
10163
  class: "ui-v1-tag__remove-icon",
11695
10164
  "aria-label": i18n.value.t("delete"),
11696
10165
  onClick: _cache[0] || (_cache[0] = vue.withModifiers(($event) => _ctx.$emit("remove"), ["stop"]))
@@ -12638,19 +11107,7 @@ const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePr
12638
11107
  UiTransition: _sfc_main$J,
12639
11108
  UiYandexMap: _sfc_main
12640
11109
  }, Symbol.toStringTag, { value: "Module" }));
12641
- const createProvider$1 = (components2 = {}) => {
12642
- const registry = new Map(Object.entries(components2));
12643
- return {
12644
- get(type) {
12645
- const value = registry.get(type);
12646
- if (value == null) {
12647
- throw new Error(`Unknown component: ${type}`);
12648
- }
12649
- return value;
12650
- }
12651
- };
12652
- };
12653
- const createProvider = () => createProvider$1(components);
11110
+ const createProvider = () => host.createProvider(components);
12654
11111
  const provider = createProvider();
12655
11112
  exports.I18nPlugin = plugin$1;
12656
11113
  exports.ImageWorkersKey = ImageWorkersKey;