@retailcrm/embed-ui-v1-components 0.9.14 → 0.9.16
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/AGENTS.md +126 -0
- package/README.md +24 -0
- package/assets/sprites/map-and-places/navigate.svg +3 -0
- package/assets/stylesheets/palette.less +11 -6
- package/bin/embed-ui-v1-components.mjs +209 -0
- package/bin/postinstall.mjs +37 -0
- package/dist/host.cjs +2443 -657
- package/dist/host.css +920 -6
- package/dist/host.d.ts +2440 -6
- package/dist/host.js +2444 -658
- package/dist/remote.cjs +1009 -46
- package/dist/remote.d.ts +1240 -67
- package/dist/remote.js +1011 -48
- package/docs/AI.md +106 -0
- package/docs/COMPONENTS.md +99 -0
- package/docs/FORMAT.md +267 -0
- package/docs/PROFILES.md +66 -0
- package/docs/README.md +65 -0
- package/docs/STYLING.md +156 -0
- package/docs/profiles/UiAddButton.yml +57 -0
- package/docs/profiles/UiAlert.yml +48 -0
- package/docs/profiles/UiAvatar.yml +48 -0
- package/docs/profiles/UiAvatarList.yml +42 -0
- package/docs/profiles/UiButton.yml +229 -0
- package/docs/profiles/UiCalendar.yml +48 -0
- package/docs/profiles/UiCheckbox.yml +53 -0
- package/docs/profiles/UiCollapse.yml +40 -0
- package/docs/profiles/UiCollapseBox.yml +51 -0
- package/docs/profiles/UiCollapseGroup.yml +39 -0
- package/docs/profiles/UiCopyButton.yml +52 -0
- package/docs/profiles/UiDate.yml +38 -0
- package/docs/profiles/UiDatePicker.yml +59 -0
- package/docs/profiles/UiError.yml +32 -0
- package/docs/profiles/UiField.yml +233 -0
- package/docs/profiles/UiImage.yml +39 -0
- package/docs/profiles/UiInfobox.yml +45 -0
- package/docs/profiles/UiLink.yml +51 -0
- package/docs/profiles/UiLoader.yml +38 -0
- package/docs/profiles/UiMenuItem.yml +57 -0
- package/docs/profiles/UiMenuItemGroup.yml +50 -0
- package/docs/profiles/UiModalSidebar.yml +46 -0
- package/docs/profiles/UiModalWindow.yml +44 -0
- package/docs/profiles/UiModalWindowSurface.yml +41 -0
- package/docs/profiles/UiNumberStepper.yml +52 -0
- package/docs/profiles/UiPageHeader.yml +244 -0
- package/docs/profiles/UiPopper.yml +201 -0
- package/docs/profiles/UiPopperConnector.yml +115 -0
- package/docs/profiles/UiPopperTarget.yml +118 -0
- package/docs/profiles/UiRadio.yml +38 -0
- package/docs/profiles/UiRadioSwitch.yml +231 -0
- package/docs/profiles/UiRadioSwitchOption.yml +121 -0
- package/docs/profiles/UiScrollBox.yml +31 -0
- package/docs/profiles/UiSelect.yml +327 -0
- package/docs/profiles/UiSelectOption.yml +44 -0
- package/docs/profiles/UiSelectOptionGroup.yml +38 -0
- package/docs/profiles/UiSlider.yml +38 -0
- package/docs/profiles/UiSwitch.yml +37 -0
- package/docs/profiles/UiTab.yml +119 -0
- package/docs/profiles/UiTabGroup.yml +238 -0
- package/docs/profiles/UiTable.yml +152 -0
- package/docs/profiles/UiTableBodyCell.yml +47 -0
- package/docs/profiles/UiTableColumn.yml +50 -0
- package/docs/profiles/UiTableFooterButton.yml +44 -0
- package/docs/profiles/UiTableFooterSection.yml +38 -0
- package/docs/profiles/UiTableHeadCell.yml +44 -0
- package/docs/profiles/UiTableSorter.yml +45 -0
- package/docs/profiles/UiTag.yml +41 -0
- package/docs/profiles/UiTextbox.yml +392 -0
- package/docs/profiles/UiTimePicker.yml +46 -0
- package/docs/profiles/UiToggleButton.yml +211 -0
- package/docs/profiles/UiToggleGroup.yml +211 -0
- package/docs/profiles/UiToggleGroupOption.yml +116 -0
- package/docs/profiles/UiToolbarButton.yml +37 -0
- package/docs/profiles/UiToolbarLink.yml +32 -0
- package/docs/profiles/UiTooltip.yml +43 -0
- package/docs/profiles/UiTransition.yml +27 -0
- package/docs/profiles/UiYandexMap.yml +29 -0
- package/package.json +8 -3
package/dist/host.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { defineComponent, openBlock, createBlock, Transition, withCtx, renderSlot, createElementBlock, createElementVNode, ref, reactive, computed, watch, onMounted, withDirectives, mergeProps, unref, createCommentVNode, normalizeClass, createTextVNode, toDisplayString, createVNode, vShow, inject, useSlots, resolveDynamicComponent, provide, Fragment, renderList, Text, Comment, h, getCurrentInstance, nextTick, onBeforeUnmount, useId, onActivated, onDeactivated, Teleport, shallowRef, normalizeStyle, createSlots, withModifiers, useAttrs, normalizeProps, guardReactiveProps } from "vue";
|
|
1
|
+
import { defineComponent, openBlock, createBlock, Transition, withCtx, renderSlot, createElementBlock, createElementVNode, ref, reactive, computed, watch, onMounted, withDirectives, mergeProps, unref, createCommentVNode, normalizeClass, createTextVNode, toDisplayString, createVNode, vShow, inject, useSlots, resolveDynamicComponent, provide, Fragment, renderList, Text, Comment, h, getCurrentInstance, nextTick, onBeforeUnmount, useId, onActivated, onDeactivated, Teleport, shallowRef, normalizeStyle, createSlots, withModifiers, useAttrs, normalizeProps, guardReactiveProps, withKeys, isVNode, onUpdated } from "vue";
|
|
2
2
|
import { preview } from "@retailcrm/image-preview";
|
|
3
3
|
import isEqual from "lodash.isequal";
|
|
4
4
|
import { format, formatISO } from "date-fns";
|
|
5
5
|
import { ru, es, enGB } from "date-fns/locale";
|
|
6
6
|
import { PerfectScrollbar } from "vue3-perfect-scrollbar";
|
|
7
7
|
import { createProvider as createProvider$1 } from "@omnicajs/vue-remote/host";
|
|
8
|
-
const _sfc_main$
|
|
8
|
+
const _sfc_main$12 = /* @__PURE__ */ defineComponent({
|
|
9
9
|
__name: "UiTransition",
|
|
10
10
|
props: {
|
|
11
11
|
/** Наименование анимации перехода */
|
|
@@ -33,13 +33,13 @@ const _sfc_main$S = /* @__PURE__ */ defineComponent({
|
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
-
const _hoisted_1$
|
|
36
|
+
const _hoisted_1$W = {
|
|
37
37
|
xmlns: "http://www.w3.org/2000/svg",
|
|
38
38
|
fill: "none",
|
|
39
39
|
viewBox: "0 0 24 24"
|
|
40
40
|
};
|
|
41
|
-
function render$
|
|
42
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
41
|
+
function render$p(_ctx, _cache) {
|
|
42
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$W, [..._cache[0] || (_cache[0] = [
|
|
43
43
|
createElementVNode("path", {
|
|
44
44
|
fill: "currentColor",
|
|
45
45
|
"fill-rule": "evenodd",
|
|
@@ -48,26 +48,26 @@ function render$n(_ctx, _cache) {
|
|
|
48
48
|
}, null, -1)
|
|
49
49
|
])]);
|
|
50
50
|
}
|
|
51
|
-
const IconCheckmarkCircleOutlined = { render: render$
|
|
52
|
-
const _hoisted_1$
|
|
51
|
+
const IconCheckmarkCircleOutlined = { render: render$p };
|
|
52
|
+
const _hoisted_1$V = {
|
|
53
53
|
xmlns: "http://www.w3.org/2000/svg",
|
|
54
54
|
viewBox: "0 0 24 24"
|
|
55
55
|
};
|
|
56
|
-
function render$
|
|
57
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
56
|
+
function render$o(_ctx, _cache) {
|
|
57
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$V, [..._cache[0] || (_cache[0] = [
|
|
58
58
|
createElementVNode("path", {
|
|
59
59
|
fill: "currentColor",
|
|
60
60
|
d: "M7.113 6.176a.6.6 0 0 1 .848 0L12 10.214l4.038-4.038a.6.6 0 0 1 .849 0l.937.937a.6.6 0 0 1 0 .848L13.785 12l4.04 4.04a.6.6 0 0 1 0 .848l-.937.937a.6.6 0 0 1-.849 0L12 13.784l-4.038 4.04a.6.6 0 0 1-.849 0l-.937-.937a.6.6 0 0 1 0-.848l4.04-4.04-4.039-4.038a.6.6 0 0 1 0-.849z"
|
|
61
61
|
}, null, -1)
|
|
62
62
|
])]);
|
|
63
63
|
}
|
|
64
|
-
const IconClear = { render: render$
|
|
65
|
-
const _hoisted_1$
|
|
64
|
+
const IconClear = { render: render$o };
|
|
65
|
+
const _hoisted_1$U = {
|
|
66
66
|
xmlns: "http://www.w3.org/2000/svg",
|
|
67
67
|
viewBox: "0 0 24 24"
|
|
68
68
|
};
|
|
69
|
-
function render$
|
|
70
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
69
|
+
function render$n(_ctx, _cache) {
|
|
70
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$U, [..._cache[0] || (_cache[0] = [
|
|
71
71
|
createElementVNode("path", {
|
|
72
72
|
fill: "currentColor",
|
|
73
73
|
"fill-rule": "evenodd",
|
|
@@ -76,26 +76,26 @@ function render$l(_ctx, _cache) {
|
|
|
76
76
|
}, null, -1)
|
|
77
77
|
])]);
|
|
78
78
|
}
|
|
79
|
-
const IconClearCircleOutlined = { render: render$
|
|
80
|
-
const _hoisted_1$
|
|
79
|
+
const IconClearCircleOutlined = { render: render$n };
|
|
80
|
+
const _hoisted_1$T = {
|
|
81
81
|
xmlns: "http://www.w3.org/2000/svg",
|
|
82
82
|
viewBox: "0 0 24 24"
|
|
83
83
|
};
|
|
84
|
-
function render$
|
|
85
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
84
|
+
function render$m(_ctx, _cache) {
|
|
85
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$T, [..._cache[0] || (_cache[0] = [
|
|
86
86
|
createElementVNode("path", {
|
|
87
87
|
fill: "currentColor",
|
|
88
88
|
d: "M2 12C2 6.477 6.477 2 12 2A10 10 0 1 1 2 12m2 0a8 8 0 1 0 16 0 8 8 0 0 0-16 0m7.5 2a.5.5 0 0 0-.5.5v1a.5.5 0 0 0 .5.5h1a.5.5 0 0 0 .5-.5v-1a.5.5 0 0 0-.5-.5zm-.18-6h1.36a.5.5 0 0 1 .5.56l-.4 3.22a.25.25 0 0 1-.25.22h-1.06a.25.25 0 0 1-.25-.22l-.4-3.22a.5.5 0 0 1 .5-.56"
|
|
89
89
|
}, null, -1)
|
|
90
90
|
])]);
|
|
91
91
|
}
|
|
92
|
-
const IconErrorOutlined = { render: render$
|
|
93
|
-
const _hoisted_1$
|
|
92
|
+
const IconErrorOutlined = { render: render$m };
|
|
93
|
+
const _hoisted_1$S = {
|
|
94
94
|
xmlns: "http://www.w3.org/2000/svg",
|
|
95
95
|
viewBox: "0 0 24 24"
|
|
96
96
|
};
|
|
97
|
-
function render$
|
|
98
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
97
|
+
function render$l(_ctx, _cache) {
|
|
98
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$S, [..._cache[0] || (_cache[0] = [
|
|
99
99
|
createElementVNode("path", {
|
|
100
100
|
fill: "currentColor",
|
|
101
101
|
"fill-rule": "evenodd",
|
|
@@ -104,7 +104,7 @@ function render$j(_ctx, _cache) {
|
|
|
104
104
|
}, null, -1)
|
|
105
105
|
])]);
|
|
106
106
|
}
|
|
107
|
-
const IconInfoOutlined = { render: render$
|
|
107
|
+
const IconInfoOutlined = { render: render$l };
|
|
108
108
|
var VARIANT$1 = /* @__PURE__ */ ((VARIANT2) => {
|
|
109
109
|
VARIANT2["PRIMARY"] = "primary";
|
|
110
110
|
VARIANT2["WARNING"] = "warning";
|
|
@@ -112,13 +112,13 @@ var VARIANT$1 = /* @__PURE__ */ ((VARIANT2) => {
|
|
|
112
112
|
VARIANT2["DANGER"] = "danger";
|
|
113
113
|
return VARIANT2;
|
|
114
114
|
})(VARIANT$1 || {});
|
|
115
|
-
const _hoisted_1$
|
|
116
|
-
const _hoisted_2$
|
|
115
|
+
const _hoisted_1$R = ["aria-hidden", "aria-live"];
|
|
116
|
+
const _hoisted_2$p = {
|
|
117
117
|
key: 0,
|
|
118
118
|
class: "ui-v1-alert__icon-outline"
|
|
119
119
|
};
|
|
120
|
-
const _hoisted_3$
|
|
121
|
-
const _sfc_main$
|
|
120
|
+
const _hoisted_3$j = { class: "ui-v1-alert__icon" };
|
|
121
|
+
const _sfc_main$11 = /* @__PURE__ */ defineComponent({
|
|
122
122
|
...{
|
|
123
123
|
inheritAttrs: false
|
|
124
124
|
},
|
|
@@ -227,7 +227,7 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
|
227
227
|
}
|
|
228
228
|
});
|
|
229
229
|
return (_ctx, _cache) => {
|
|
230
|
-
return openBlock(), createBlock(_sfc_main$
|
|
230
|
+
return openBlock(), createBlock(_sfc_main$12, {
|
|
231
231
|
name: "fade",
|
|
232
232
|
onBeforeEnter,
|
|
233
233
|
onBeforeLeave,
|
|
@@ -250,8 +250,8 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
|
250
250
|
role: "alert"
|
|
251
251
|
}, _ctx.$attrs), [
|
|
252
252
|
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
253
|
-
__props.variant ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
254
|
-
createElementVNode("div", _hoisted_3$
|
|
253
|
+
__props.variant ? (openBlock(), createElementBlock("div", _hoisted_2$p, [
|
|
254
|
+
createElementVNode("div", _hoisted_3$j, [
|
|
255
255
|
__props.variant === unref(VARIANT$1).PRIMARY ? (openBlock(), createBlock(unref(IconInfoOutlined), { key: 0 })) : __props.variant === unref(VARIANT$1).WARNING ? (openBlock(), createBlock(unref(IconErrorOutlined), { key: 1 })) : __props.variant === unref(VARIANT$1).DANGER ? (openBlock(), createBlock(unref(IconClearCircleOutlined), { key: 2 })) : __props.variant === unref(VARIANT$1).SUCCESS ? (openBlock(), createBlock(unref(IconCheckmarkCircleOutlined), { key: 3 })) : createCommentVNode("", true)
|
|
256
256
|
])
|
|
257
257
|
])) : createCommentVNode("", true)
|
|
@@ -276,7 +276,7 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
|
276
276
|
}, [
|
|
277
277
|
createVNode(unref(IconClear), { class: "ui-v1-alert__close-icon" })
|
|
278
278
|
])) : createCommentVNode("", true)
|
|
279
|
-
], 16, _hoisted_1$
|
|
279
|
+
], 16, _hoisted_1$R), [
|
|
280
280
|
[vShow, state.shown]
|
|
281
281
|
])
|
|
282
282
|
]),
|
|
@@ -285,12 +285,12 @@ const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
|
285
285
|
};
|
|
286
286
|
}
|
|
287
287
|
});
|
|
288
|
-
const _hoisted_1$
|
|
288
|
+
const _hoisted_1$Q = {
|
|
289
289
|
xmlns: "http://www.w3.org/2000/svg",
|
|
290
290
|
viewBox: "0 0 24 24"
|
|
291
291
|
};
|
|
292
|
-
function render$
|
|
293
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
292
|
+
function render$k(_ctx, _cache) {
|
|
293
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$Q, [..._cache[0] || (_cache[0] = [
|
|
294
294
|
createElementVNode("path", {
|
|
295
295
|
fill: "currentColor",
|
|
296
296
|
"fill-rule": "evenodd",
|
|
@@ -299,7 +299,7 @@ function render$i(_ctx, _cache) {
|
|
|
299
299
|
}, null, -1)
|
|
300
300
|
])]);
|
|
301
301
|
}
|
|
302
|
-
const IconAddCircle = { render: render$
|
|
302
|
+
const IconAddCircle = { render: render$k };
|
|
303
303
|
var COLOR$1 = /* @__PURE__ */ ((COLOR2) => {
|
|
304
304
|
COLOR2["GREEN"] = "green";
|
|
305
305
|
COLOR2["BLUE"] = "blue";
|
|
@@ -312,14 +312,14 @@ const isNumeric = (value) => !isNaN(Number(value));
|
|
|
312
312
|
const normalizeHeight = (height) => {
|
|
313
313
|
return isNumeric(height) ? `${height}px` : `${height}`;
|
|
314
314
|
};
|
|
315
|
-
const _hoisted_1$
|
|
316
|
-
const _hoisted_2$
|
|
317
|
-
const _hoisted_3$
|
|
318
|
-
const _hoisted_4$
|
|
315
|
+
const _hoisted_1$P = ["type", "disabled"];
|
|
316
|
+
const _hoisted_2$o = { class: "ui-v1-add-button__content" };
|
|
317
|
+
const _hoisted_3$i = { class: "ui-v1-add-button__title" };
|
|
318
|
+
const _hoisted_4$c = {
|
|
319
319
|
key: 0,
|
|
320
320
|
class: "ui-v1-add-button__description"
|
|
321
321
|
};
|
|
322
|
-
const _sfc_main$
|
|
322
|
+
const _sfc_main$10 = /* @__PURE__ */ defineComponent({
|
|
323
323
|
...{
|
|
324
324
|
inheritAttrs: false
|
|
325
325
|
},
|
|
@@ -362,8 +362,8 @@ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
|
|
|
362
362
|
height: unref(normalizeHeight)(__props.height)
|
|
363
363
|
}
|
|
364
364
|
}, _ctx.$attrs), [
|
|
365
|
-
createElementVNode("span", _hoisted_2$
|
|
366
|
-
createElementVNode("span", _hoisted_3$
|
|
365
|
+
createElementVNode("span", _hoisted_2$o, [
|
|
366
|
+
createElementVNode("span", _hoisted_3$i, [
|
|
367
367
|
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
368
368
|
createVNode(unref(IconAddCircle), {
|
|
369
369
|
"aria-hidden": "true",
|
|
@@ -372,20 +372,20 @@ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
|
|
|
372
372
|
]),
|
|
373
373
|
renderSlot(_ctx.$slots, "default")
|
|
374
374
|
]),
|
|
375
|
-
!__props.small && _ctx.$slots.description ? (openBlock(), createElementBlock("span", _hoisted_4$
|
|
375
|
+
!__props.small && _ctx.$slots.description ? (openBlock(), createElementBlock("span", _hoisted_4$c, [
|
|
376
376
|
renderSlot(_ctx.$slots, "description")
|
|
377
377
|
])) : createCommentVNode("", true)
|
|
378
378
|
])
|
|
379
|
-
], 16, _hoisted_1$
|
|
379
|
+
], 16, _hoisted_1$P);
|
|
380
380
|
};
|
|
381
381
|
}
|
|
382
382
|
});
|
|
383
|
-
const _hoisted_1$
|
|
383
|
+
const _hoisted_1$O = {
|
|
384
384
|
xmlns: "http://www.w3.org/2000/svg",
|
|
385
385
|
viewBox: "0 0 24 24"
|
|
386
386
|
};
|
|
387
|
-
function render$
|
|
388
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
387
|
+
function render$j(_ctx, _cache) {
|
|
388
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$O, [..._cache[0] || (_cache[0] = [
|
|
389
389
|
createElementVNode("path", {
|
|
390
390
|
fill: "currentColor",
|
|
391
391
|
"fill-rule": "evenodd",
|
|
@@ -394,34 +394,34 @@ function render$h(_ctx, _cache) {
|
|
|
394
394
|
}, null, -1)
|
|
395
395
|
])]);
|
|
396
396
|
}
|
|
397
|
-
const IconHelpOutlined = { render: render$
|
|
398
|
-
const _hoisted_1$
|
|
397
|
+
const IconHelpOutlined = { render: render$j };
|
|
398
|
+
const _hoisted_1$N = {
|
|
399
399
|
xmlns: "http://www.w3.org/2000/svg",
|
|
400
400
|
viewBox: "0 0 18 8"
|
|
401
401
|
};
|
|
402
|
-
function render$
|
|
403
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
402
|
+
function render$i(_ctx, _cache) {
|
|
403
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$N, [..._cache[0] || (_cache[0] = [
|
|
404
404
|
createElementVNode("g", { fill: "currentColor" }, [
|
|
405
405
|
createElementVNode("path", { d: "M0 0v8h2.867q1.257-.011 1.935-.604.68-.594.68-1.748 0-.675-.33-1.143a1.54 1.54 0 0 0-.892-.62q.497-.21.775-.654.279-.45.279-1.039 0-1.077-.694-1.632Q3.926 0 2.584 0zm1.52 6.676v-2.16h1.393q1.048.016 1.048 1.116 0 .488-.303.77-.3.273-.836.274zm1.124-3.324H1.52V1.335h1.064q.628 0 .916.242.294.236.294.78 0 .972-1.15.995M7.503 6.352h2.665L10.679 8h1.616l-2.76-8H8.125L5.38 8h1.616zm2.254-1.336H7.913l.917-2.994zM12.362 8V0h2.27q.972 0 1.737.478.77.473 1.2 1.352.432.873.431 1.989v.368q0 1.115-.425 1.983a3.17 3.17 0 0 1-1.191 1.346A3.26 3.26 0 0 1 14.646 8zm1.52-6.665v5.34h.734q.891 0 1.363-.631.47-.632.481-1.808v-.423q0-1.22-.466-1.846-.466-.632-1.363-.632z" })
|
|
406
406
|
], -1)
|
|
407
407
|
])]);
|
|
408
408
|
}
|
|
409
|
-
const SpriteBAD = { render: render$
|
|
410
|
-
const _hoisted_1$
|
|
409
|
+
const SpriteBAD = { render: render$i };
|
|
410
|
+
const _hoisted_1$M = {
|
|
411
411
|
xmlns: "http://www.w3.org/2000/svg",
|
|
412
412
|
viewBox: "0 0 16 8"
|
|
413
413
|
};
|
|
414
|
-
function render$
|
|
415
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
414
|
+
function render$h(_ctx, _cache) {
|
|
415
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$M, [..._cache[0] || (_cache[0] = [
|
|
416
416
|
createElementVNode("g", { fill: "currentColor" }, [
|
|
417
417
|
createElementVNode("path", { d: "M3.373 6.016 5.058 0h1.704L4.175 8H2.577L0 0h1.7zM8.99 8H7.46V0H8.99zM11.84 8V5.181h1.343q1.322 0 2.067-.676.75-.681.75-1.857 0-.774-.342-1.379a2.3 2.3 0 0 0-.98-.94Q14.045 0 13.208 0H10.31v8zm1.368-4.154h-1.367v-2.51h1.403q.567.01.888.373t.322.95q0 .571-.322.88-.316.307-.924.307" })
|
|
418
418
|
], -1)
|
|
419
419
|
])]);
|
|
420
420
|
}
|
|
421
|
-
const SpriteVIP = { render: render$
|
|
421
|
+
const SpriteVIP = { render: render$h };
|
|
422
422
|
const ImageWorkersKey = Symbol("$image.workers");
|
|
423
|
-
const _hoisted_1$
|
|
424
|
-
const _sfc_main
|
|
423
|
+
const _hoisted_1$L = ["alt", "src"];
|
|
424
|
+
const _sfc_main$$ = /* @__PURE__ */ defineComponent({
|
|
425
425
|
__name: "UiImage",
|
|
426
426
|
props: {
|
|
427
427
|
alt: {
|
|
@@ -457,7 +457,7 @@ const _sfc_main$P = /* @__PURE__ */ defineComponent({
|
|
|
457
457
|
return openBlock(), createElementBlock("img", mergeProps({
|
|
458
458
|
alt: __props.alt,
|
|
459
459
|
src: url.value
|
|
460
|
-
}, _ctx.$attrs), null, 16, _hoisted_1$
|
|
460
|
+
}, _ctx.$attrs), null, 16, _hoisted_1$L);
|
|
461
461
|
};
|
|
462
462
|
}
|
|
463
463
|
});
|
|
@@ -476,12 +476,12 @@ const isURL = (href, loose = true) => {
|
|
|
476
476
|
return false;
|
|
477
477
|
}
|
|
478
478
|
};
|
|
479
|
-
var SIZE$
|
|
479
|
+
var SIZE$a = /* @__PURE__ */ ((SIZE2) => {
|
|
480
480
|
SIZE2["XS"] = "xs";
|
|
481
481
|
SIZE2["SM"] = "sm";
|
|
482
482
|
SIZE2["LG"] = "lg";
|
|
483
483
|
return SIZE2;
|
|
484
|
-
})(SIZE$
|
|
484
|
+
})(SIZE$a || {});
|
|
485
485
|
var STATUS = /* @__PURE__ */ ((STATUS2) => {
|
|
486
486
|
STATUS2["NONE"] = "";
|
|
487
487
|
STATUS2["BUSY"] = "busy";
|
|
@@ -491,27 +491,27 @@ var STATUS = /* @__PURE__ */ ((STATUS2) => {
|
|
|
491
491
|
return STATUS2;
|
|
492
492
|
})(STATUS || {});
|
|
493
493
|
const AvatarSizeKey = Symbol("UiAvatarSize");
|
|
494
|
-
const _hoisted_1$
|
|
494
|
+
const _hoisted_1$K = {
|
|
495
495
|
key: 1,
|
|
496
496
|
class: "ui-v1-avatar__unresolved"
|
|
497
497
|
};
|
|
498
|
-
const _hoisted_2$
|
|
498
|
+
const _hoisted_2$n = {
|
|
499
499
|
key: 3,
|
|
500
500
|
class: "ui-v1-avatar__initials"
|
|
501
501
|
};
|
|
502
|
-
const _hoisted_3$
|
|
502
|
+
const _hoisted_3$h = {
|
|
503
503
|
key: 4,
|
|
504
504
|
class: "ui-v1-avatar__labels"
|
|
505
505
|
};
|
|
506
|
-
const _hoisted_4$
|
|
506
|
+
const _hoisted_4$b = {
|
|
507
507
|
key: 0,
|
|
508
508
|
class: "ui-v1-avatar__label ui-v1-avatar__label_vip"
|
|
509
509
|
};
|
|
510
|
-
const _hoisted_5$
|
|
510
|
+
const _hoisted_5$9 = {
|
|
511
511
|
key: 1,
|
|
512
512
|
class: "ui-v1-avatar__label ui-v1-avatar__label_bad"
|
|
513
513
|
};
|
|
514
|
-
const _sfc_main$
|
|
514
|
+
const _sfc_main$_ = /* @__PURE__ */ defineComponent({
|
|
515
515
|
__name: "UiAvatar",
|
|
516
516
|
props: {
|
|
517
517
|
/** Путь к изображению */
|
|
@@ -550,8 +550,8 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
|
550
550
|
/** Размер изображения */
|
|
551
551
|
size: {
|
|
552
552
|
type: String,
|
|
553
|
-
validator: (size) => Object.values(SIZE$
|
|
554
|
-
default: SIZE$
|
|
553
|
+
validator: (size) => Object.values(SIZE$a).includes(size),
|
|
554
|
+
default: SIZE$a.SM
|
|
555
555
|
},
|
|
556
556
|
optimize: {
|
|
557
557
|
type: [Boolean, Object],
|
|
@@ -579,9 +579,9 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
|
579
579
|
const processing = typeof props.optimize === "object" ? props.optimize : {};
|
|
580
580
|
return {
|
|
581
581
|
resize: processing.resize ?? {
|
|
582
|
-
[SIZE$
|
|
583
|
-
[SIZE$
|
|
584
|
-
[SIZE$
|
|
582
|
+
[SIZE$a.XS]: "48x-",
|
|
583
|
+
[SIZE$a.SM]: "72x-",
|
|
584
|
+
[SIZE$a.LG]: "104x-"
|
|
585
585
|
}[size.value],
|
|
586
586
|
crop: processing.crop
|
|
587
587
|
};
|
|
@@ -598,7 +598,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
|
598
598
|
}
|
|
599
599
|
}, _ctx.$attrs), {
|
|
600
600
|
default: withCtx(() => [
|
|
601
|
-
__props.src ? (openBlock(), createBlock(_sfc_main
|
|
601
|
+
__props.src ? (openBlock(), createBlock(_sfc_main$$, {
|
|
602
602
|
key: 0,
|
|
603
603
|
src: __props.src,
|
|
604
604
|
resize: optimization.value.resize,
|
|
@@ -607,7 +607,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
|
607
607
|
draggable: "false",
|
|
608
608
|
onLoad: _cache[0] || (_cache[0] = ($event) => loaded.value = true),
|
|
609
609
|
onError: _cache[1] || (_cache[1] = ($event) => loaded.value = false)
|
|
610
|
-
}, null, 8, ["src", "resize", "crop"])) : !__props.src && unresolved.value ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
610
|
+
}, null, 8, ["src", "resize", "crop"])) : !__props.src && unresolved.value ? (openBlock(), createElementBlock("div", _hoisted_1$K, [
|
|
611
611
|
createVNode(unref(IconHelpOutlined))
|
|
612
612
|
])) : createCommentVNode("", true),
|
|
613
613
|
__props.status && !(__props.vip || __props.bad) ? (openBlock(), createElementBlock("span", {
|
|
@@ -618,16 +618,16 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
|
618
618
|
[`ui-v1-avatar__status_${__props.status}`]: __props.status
|
|
619
619
|
})
|
|
620
620
|
}, null, 2)) : createCommentVNode("", true),
|
|
621
|
-
!(unresolved.value || loaded.value) ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
621
|
+
!(unresolved.value || loaded.value) ? (openBlock(), createElementBlock("div", _hoisted_2$n, [
|
|
622
622
|
renderSlot(_ctx.$slots, "default", {}, () => [
|
|
623
623
|
createTextVNode(toDisplayString(initials.value), 1)
|
|
624
624
|
])
|
|
625
625
|
])) : createCommentVNode("", true),
|
|
626
|
-
__props.vip || __props.bad ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
627
|
-
__props.vip ? (openBlock(), createElementBlock("span", _hoisted_4$
|
|
626
|
+
__props.vip || __props.bad ? (openBlock(), createElementBlock("div", _hoisted_3$h, [
|
|
627
|
+
__props.vip ? (openBlock(), createElementBlock("span", _hoisted_4$b, [
|
|
628
628
|
createVNode(unref(SpriteVIP), { class: "ui-v1-avatar__vip" })
|
|
629
629
|
])) : createCommentVNode("", true),
|
|
630
|
-
__props.bad ? (openBlock(), createElementBlock("span", _hoisted_5$
|
|
630
|
+
__props.bad ? (openBlock(), createElementBlock("span", _hoisted_5$9, [
|
|
631
631
|
createVNode(unref(SpriteBAD), { class: "ui-v1-avatar__bad" })
|
|
632
632
|
])) : createCommentVNode("", true)
|
|
633
633
|
])) : createCommentVNode("", true)
|
|
@@ -637,7 +637,7 @@ const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
|
637
637
|
};
|
|
638
638
|
}
|
|
639
639
|
});
|
|
640
|
-
const _sfc_main$
|
|
640
|
+
const _sfc_main$Z = /* @__PURE__ */ defineComponent({
|
|
641
641
|
__name: "UiAvatarList",
|
|
642
642
|
props: {
|
|
643
643
|
/** Список аватарок пользователей */
|
|
@@ -648,8 +648,8 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
|
|
|
648
648
|
/** Размер аватарок */
|
|
649
649
|
size: {
|
|
650
650
|
type: String,
|
|
651
|
-
validator: (size) => Object.values(SIZE$
|
|
652
|
-
default: SIZE$
|
|
651
|
+
validator: (size) => Object.values(SIZE$a).includes(size),
|
|
652
|
+
default: SIZE$a.SM
|
|
653
653
|
}
|
|
654
654
|
},
|
|
655
655
|
setup(__props) {
|
|
@@ -664,7 +664,7 @@ const _sfc_main$N = /* @__PURE__ */ defineComponent({
|
|
|
664
664
|
key: index,
|
|
665
665
|
class: "ui-v1-avatar-list__item"
|
|
666
666
|
}, [
|
|
667
|
-
createVNode(_sfc_main$
|
|
667
|
+
createVNode(_sfc_main$_, {
|
|
668
668
|
src: avatar.src,
|
|
669
669
|
name: avatar.name
|
|
670
670
|
}, null, 8, ["src", "name"])
|
|
@@ -711,27 +711,27 @@ const useElementRef = () => {
|
|
|
711
711
|
provide(ElementRefKey, ref(null));
|
|
712
712
|
return el;
|
|
713
713
|
};
|
|
714
|
-
var APPEARANCE$
|
|
714
|
+
var APPEARANCE$5 = /* @__PURE__ */ ((APPEARANCE2) => {
|
|
715
715
|
APPEARANCE2["OUTLINED"] = "outlined";
|
|
716
716
|
APPEARANCE2["PRIMARY"] = "primary";
|
|
717
717
|
APPEARANCE2["SECONDARY"] = "secondary";
|
|
718
718
|
APPEARANCE2["TERTIARY"] = "tertiary";
|
|
719
719
|
return APPEARANCE2;
|
|
720
|
-
})(APPEARANCE$
|
|
721
|
-
var SIZE$
|
|
720
|
+
})(APPEARANCE$5 || {});
|
|
721
|
+
var SIZE$9 = /* @__PURE__ */ ((SIZE2) => {
|
|
722
722
|
SIZE2["LG"] = "lg";
|
|
723
723
|
SIZE2["MD"] = "md";
|
|
724
724
|
SIZE2["SM"] = "sm";
|
|
725
725
|
SIZE2["XS"] = "xs";
|
|
726
726
|
return SIZE2;
|
|
727
|
-
})(SIZE$
|
|
727
|
+
})(SIZE$9 || {});
|
|
728
728
|
var VARIANT = /* @__PURE__ */ ((VARIANT2) => {
|
|
729
729
|
VARIANT2["DEFAULT"] = "default";
|
|
730
730
|
VARIANT2["SUCCESS"] = "success";
|
|
731
731
|
VARIANT2["DANGER"] = "danger";
|
|
732
732
|
return VARIANT2;
|
|
733
733
|
})(VARIANT || {});
|
|
734
|
-
const _sfc_main$
|
|
734
|
+
const _sfc_main$Y = defineComponent({
|
|
735
735
|
props: {
|
|
736
736
|
/** Устанавливает тип кнопки */
|
|
737
737
|
type: {
|
|
@@ -747,7 +747,7 @@ const _sfc_main$M = defineComponent({
|
|
|
747
747
|
/** Регулирует внешний вид кнопки: primary, secondary, tertiary or outlined */
|
|
748
748
|
appearance: {
|
|
749
749
|
type: String,
|
|
750
|
-
default: APPEARANCE$
|
|
750
|
+
default: APPEARANCE$5.PRIMARY
|
|
751
751
|
},
|
|
752
752
|
/** Регулирует цветовую схему кнопки: default, success or danger */
|
|
753
753
|
variant: {
|
|
@@ -757,7 +757,7 @@ const _sfc_main$M = defineComponent({
|
|
|
757
757
|
/** Размер */
|
|
758
758
|
size: {
|
|
759
759
|
type: String,
|
|
760
|
-
default: SIZE$
|
|
760
|
+
default: SIZE$9.SM
|
|
761
761
|
},
|
|
762
762
|
/** Если кнопка активна */
|
|
763
763
|
active: {
|
|
@@ -817,8 +817,8 @@ const _sfc_main$M = defineComponent({
|
|
|
817
817
|
};
|
|
818
818
|
}
|
|
819
819
|
});
|
|
820
|
-
const _hoisted_1$
|
|
821
|
-
const _sfc_main$
|
|
820
|
+
const _hoisted_1$J = { class: "ui-v1-calendar-cell__content" };
|
|
821
|
+
const _sfc_main$X = /* @__PURE__ */ defineComponent({
|
|
822
822
|
__name: "UiCalendarCell",
|
|
823
823
|
props: {
|
|
824
824
|
current: {
|
|
@@ -863,32 +863,32 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
863
863
|
"aria-hidden": "true",
|
|
864
864
|
class: "ui-v1-calendar-cell__backdrop"
|
|
865
865
|
}, null, -1)),
|
|
866
|
-
createElementVNode("div", _hoisted_1$
|
|
866
|
+
createElementVNode("div", _hoisted_1$J, [
|
|
867
867
|
renderSlot(_ctx.$slots, "default")
|
|
868
868
|
])
|
|
869
869
|
], 16);
|
|
870
870
|
};
|
|
871
871
|
}
|
|
872
872
|
});
|
|
873
|
-
const _hoisted_1$
|
|
873
|
+
const _hoisted_1$I = {
|
|
874
874
|
xmlns: "http://www.w3.org/2000/svg",
|
|
875
875
|
viewBox: "0 0 24 24"
|
|
876
876
|
};
|
|
877
|
-
function render$
|
|
878
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
877
|
+
function render$g(_ctx, _cache) {
|
|
878
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$I, [..._cache[0] || (_cache[0] = [
|
|
879
879
|
createElementVNode("path", {
|
|
880
880
|
fill: "currentColor",
|
|
881
881
|
d: "M15.78 11.28c.14.14.22.331.22.53v.38a.77.77 0 0 1-.22.53l-5.14 5.13a.5.5 0 0 1-.71 0l-.71-.71a.49.49 0 0 1 0-.7L13.67 12 9.22 7.56a.5.5 0 0 1 0-.71l.71-.7a.5.5 0 0 1 .71 0z"
|
|
882
882
|
}, null, -1)
|
|
883
883
|
])]);
|
|
884
884
|
}
|
|
885
|
-
const IconChevronRight = { render: render$
|
|
886
|
-
const _hoisted_1$
|
|
885
|
+
const IconChevronRight = { render: render$g };
|
|
886
|
+
const _hoisted_1$H = {
|
|
887
887
|
key: 1,
|
|
888
888
|
"aria-hidden": "true",
|
|
889
889
|
class: "ui-v1-calendar-navigation__placeholder"
|
|
890
890
|
};
|
|
891
|
-
const _sfc_main$
|
|
891
|
+
const _sfc_main$W = /* @__PURE__ */ defineComponent({
|
|
892
892
|
__name: "UiCalendarDirectionButton",
|
|
893
893
|
props: {
|
|
894
894
|
label: {
|
|
@@ -908,7 +908,7 @@ const _sfc_main$K = /* @__PURE__ */ defineComponent({
|
|
|
908
908
|
emits: ["click"],
|
|
909
909
|
setup(__props) {
|
|
910
910
|
return (_ctx, _cache) => {
|
|
911
|
-
return !__props.absent ? (openBlock(), createBlock(_sfc_main$
|
|
911
|
+
return !__props.absent ? (openBlock(), createBlock(_sfc_main$Y, {
|
|
912
912
|
key: 0,
|
|
913
913
|
"aria-label": __props.label,
|
|
914
914
|
appearance: "tertiary",
|
|
@@ -925,15 +925,15 @@ const _sfc_main$K = /* @__PURE__ */ defineComponent({
|
|
|
925
925
|
}, null, 8, ["class"])
|
|
926
926
|
]),
|
|
927
927
|
_: 1
|
|
928
|
-
}, 8, ["aria-label"])) : (openBlock(), createElementBlock("div", _hoisted_1$
|
|
928
|
+
}, 8, ["aria-label"])) : (openBlock(), createElementBlock("div", _hoisted_1$H));
|
|
929
929
|
};
|
|
930
930
|
}
|
|
931
931
|
});
|
|
932
|
-
const _hoisted_1$
|
|
932
|
+
const _hoisted_1$G = {
|
|
933
933
|
key: 1,
|
|
934
934
|
class: "ui-v1-calendar-navigation__text"
|
|
935
935
|
};
|
|
936
|
-
const _sfc_main$
|
|
936
|
+
const _sfc_main$V = /* @__PURE__ */ defineComponent({
|
|
937
937
|
__name: "UiCalendarSwitchButton",
|
|
938
938
|
props: {
|
|
939
939
|
locked: {
|
|
@@ -944,7 +944,7 @@ const _sfc_main$J = /* @__PURE__ */ defineComponent({
|
|
|
944
944
|
emits: ["click"],
|
|
945
945
|
setup(__props) {
|
|
946
946
|
return (_ctx, _cache) => {
|
|
947
|
-
return !__props.locked ? (openBlock(), createBlock(_sfc_main$
|
|
947
|
+
return !__props.locked ? (openBlock(), createBlock(_sfc_main$Y, {
|
|
948
948
|
key: 0,
|
|
949
949
|
appearance: "tertiary",
|
|
950
950
|
class: "ui-v1-calendar-navigation__switch-button",
|
|
@@ -954,17 +954,17 @@ const _sfc_main$J = /* @__PURE__ */ defineComponent({
|
|
|
954
954
|
renderSlot(_ctx.$slots, "default")
|
|
955
955
|
]),
|
|
956
956
|
_: 3
|
|
957
|
-
})) : (openBlock(), createElementBlock("div", _hoisted_1$
|
|
957
|
+
})) : (openBlock(), createElementBlock("div", _hoisted_1$G, [
|
|
958
958
|
renderSlot(_ctx.$slots, "default")
|
|
959
959
|
]));
|
|
960
960
|
};
|
|
961
961
|
}
|
|
962
962
|
});
|
|
963
|
-
var APPEARANCE$
|
|
963
|
+
var APPEARANCE$4 = /* @__PURE__ */ ((APPEARANCE2) => {
|
|
964
964
|
APPEARANCE2["SINGLE"] = "single";
|
|
965
965
|
APPEARANCE2["DOUBLE"] = "double";
|
|
966
966
|
return APPEARANCE2;
|
|
967
|
-
})(APPEARANCE$
|
|
967
|
+
})(APPEARANCE$4 || {});
|
|
968
968
|
var TYPE$2 = /* @__PURE__ */ ((TYPE2) => {
|
|
969
969
|
TYPE2["SINGLE"] = "single";
|
|
970
970
|
TYPE2["RANGE"] = "range";
|
|
@@ -1379,11 +1379,11 @@ const _i18n$6 = define({
|
|
|
1379
1379
|
"ru-RU": messages_ru_RU$6
|
|
1380
1380
|
}
|
|
1381
1381
|
});
|
|
1382
|
-
const _hoisted_1$
|
|
1383
|
-
const _hoisted_2$
|
|
1384
|
-
const _hoisted_3$
|
|
1385
|
-
const _hoisted_4$
|
|
1386
|
-
const _hoisted_5$
|
|
1382
|
+
const _hoisted_1$F = { class: "ui-v1-calendar-wrapper" };
|
|
1383
|
+
const _hoisted_2$m = ["aria-label"];
|
|
1384
|
+
const _hoisted_3$g = ["id"];
|
|
1385
|
+
const _hoisted_4$a = ["aria-labelledby", "aria-multiselectable"];
|
|
1386
|
+
const _hoisted_5$8 = {
|
|
1387
1387
|
class: "ui-v1-calendar__row",
|
|
1388
1388
|
role: "row"
|
|
1389
1389
|
};
|
|
@@ -1402,7 +1402,7 @@ const _hoisted_16 = {
|
|
|
1402
1402
|
"aria-atomic": "true",
|
|
1403
1403
|
"aria-live": "polite"
|
|
1404
1404
|
};
|
|
1405
|
-
const _sfc_main$
|
|
1405
|
+
const _sfc_main$U = /* @__PURE__ */ defineComponent({
|
|
1406
1406
|
__name: "UiCalendar",
|
|
1407
1407
|
props: {
|
|
1408
1408
|
/** Текущая дата */
|
|
@@ -1420,8 +1420,8 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1420
1420
|
/** Одиночный или двойной вид */
|
|
1421
1421
|
appearance: {
|
|
1422
1422
|
type: String,
|
|
1423
|
-
validator: (appearance) => Object.values(APPEARANCE$
|
|
1424
|
-
default: APPEARANCE$
|
|
1423
|
+
validator: (appearance) => Object.values(APPEARANCE$4).includes(appearance),
|
|
1424
|
+
default: APPEARANCE$4.SINGLE
|
|
1425
1425
|
},
|
|
1426
1426
|
/** Первый день недели */
|
|
1427
1427
|
firstDayOfWeek: {
|
|
@@ -1561,7 +1561,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1561
1561
|
});
|
|
1562
1562
|
const viewsComputed = computed(() => {
|
|
1563
1563
|
const view = [views[0]];
|
|
1564
|
-
if (props.appearance === APPEARANCE$
|
|
1564
|
+
if (props.appearance === APPEARANCE$4.DOUBLE) {
|
|
1565
1565
|
view.push(views[1]);
|
|
1566
1566
|
}
|
|
1567
1567
|
return view.map(({ date, decade, mode }) => ({
|
|
@@ -1573,7 +1573,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1573
1573
|
});
|
|
1574
1574
|
const viewsIsSynchronized = computed(() => {
|
|
1575
1575
|
const [first, last] = views;
|
|
1576
|
-
return props.appearance === APPEARANCE$
|
|
1576
|
+
return props.appearance === APPEARANCE$4.DOUBLE && first.mode === last.mode && first.date.inSameMonth(new CalendarDay(last.date.year, last.date.month - 1));
|
|
1577
1577
|
});
|
|
1578
1578
|
const range = computed(() => {
|
|
1579
1579
|
const [first, last] = valueComputed.value;
|
|
@@ -1997,7 +1997,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
1997
1997
|
return date.inSameMonth(views[viewIndex].date);
|
|
1998
1998
|
};
|
|
1999
1999
|
const inSelectedView = (date) => {
|
|
2000
|
-
return inSelectedMonth(date, 0) || inSelectedMonth(date, 1) && props.appearance === APPEARANCE$
|
|
2000
|
+
return inSelectedMonth(date, 0) || inSelectedMonth(date, 1) && props.appearance === APPEARANCE$4.DOUBLE;
|
|
2001
2001
|
};
|
|
2002
2002
|
const inRangeDate = (date) => {
|
|
2003
2003
|
const [min2, max2] = range.value;
|
|
@@ -2020,7 +2020,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2020
2020
|
));
|
|
2021
2021
|
};
|
|
2022
2022
|
return (_ctx, _cache) => {
|
|
2023
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
2023
|
+
return openBlock(), createElementBlock("div", _hoisted_1$F, [
|
|
2024
2024
|
(openBlock(true), createElementBlock(Fragment, null, renderList(viewsComputed.value, (view, index) => {
|
|
2025
2025
|
return openBlock(), createElementBlock("div", {
|
|
2026
2026
|
key: "view-" + index + "-" + view.date,
|
|
@@ -2031,12 +2031,12 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2031
2031
|
class: "ui-v1-calendar-navigation",
|
|
2032
2032
|
"aria-label": i18n.value.t("monthNavigation")
|
|
2033
2033
|
}, [
|
|
2034
|
-
createVNode(_sfc_main$
|
|
2034
|
+
createVNode(_sfc_main$W, {
|
|
2035
2035
|
absent: index === 1 && viewsIsSynchronized.value && views[0].mode === unref(VIEW_MODE).DAYS,
|
|
2036
2036
|
label: i18n.value.t("prevMonth"),
|
|
2037
2037
|
onClick: ($event) => showPrevMonth(index)
|
|
2038
2038
|
}, null, 8, ["absent", "label", "onClick"]),
|
|
2039
|
-
createVNode(_sfc_main$
|
|
2039
|
+
createVNode(_sfc_main$V, {
|
|
2040
2040
|
onClick: ($event) => views[index].mode = unref(VIEW_MODE).MONTHS
|
|
2041
2041
|
}, {
|
|
2042
2042
|
default: withCtx(() => [
|
|
@@ -2044,17 +2044,17 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2044
2044
|
id: getGridLabelId(index, unref(VIEW_MODE).DAYS),
|
|
2045
2045
|
"aria-atomic": "true",
|
|
2046
2046
|
"aria-live": "polite"
|
|
2047
|
-
}, toDisplayString(i18n.value.t(`months.${view.date.month - 1}`)) + " " + toDisplayString(view.date.year), 9, _hoisted_3$
|
|
2047
|
+
}, toDisplayString(i18n.value.t(`months.${view.date.month - 1}`)) + " " + toDisplayString(view.date.year), 9, _hoisted_3$g)
|
|
2048
2048
|
]),
|
|
2049
2049
|
_: 2
|
|
2050
2050
|
}, 1032, ["onClick"]),
|
|
2051
|
-
createVNode(_sfc_main$
|
|
2051
|
+
createVNode(_sfc_main$W, {
|
|
2052
2052
|
absent: index === 0 && viewsIsSynchronized.value && views[1].mode === unref(VIEW_MODE).DAYS,
|
|
2053
2053
|
label: i18n.value.t("nextMonth"),
|
|
2054
2054
|
direction: "next",
|
|
2055
2055
|
onClick: ($event) => showNextMonth(index)
|
|
2056
2056
|
}, null, 8, ["absent", "label", "onClick"])
|
|
2057
|
-
], 8, _hoisted_2$
|
|
2057
|
+
], 8, _hoisted_2$m),
|
|
2058
2058
|
createElementVNode("div", {
|
|
2059
2059
|
class: "ui-v1-calendar__table",
|
|
2060
2060
|
role: "grid",
|
|
@@ -2062,7 +2062,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2062
2062
|
"aria-describedby": dayGridHintId,
|
|
2063
2063
|
"aria-multiselectable": props.type === unref(TYPE$2).RANGE ? "true" : void 0
|
|
2064
2064
|
}, [
|
|
2065
|
-
createElementVNode("div", _hoisted_5$
|
|
2065
|
+
createElementVNode("div", _hoisted_5$8, [
|
|
2066
2066
|
(openBlock(true), createElementBlock(Fragment, null, renderList(weekdaysNames.value, (name, i) => {
|
|
2067
2067
|
return openBlock(), createElementBlock("div", {
|
|
2068
2068
|
key: "weekday-" + i,
|
|
@@ -2082,7 +2082,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2082
2082
|
role: "row"
|
|
2083
2083
|
}, [
|
|
2084
2084
|
(openBlock(true), createElementBlock(Fragment, null, renderList(week, (day) => {
|
|
2085
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2085
|
+
return openBlock(), createBlock(_sfc_main$X, {
|
|
2086
2086
|
key: "day-" + index + "-" + day,
|
|
2087
2087
|
class: normalizeClass({
|
|
2088
2088
|
"ui-v1-calendar__cell-day": true,
|
|
@@ -2119,18 +2119,18 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2119
2119
|
}), 128))
|
|
2120
2120
|
], 2);
|
|
2121
2121
|
}), 128))
|
|
2122
|
-
], 8, _hoisted_4$
|
|
2122
|
+
], 8, _hoisted_4$a)
|
|
2123
2123
|
], 64)) : createCommentVNode("", true),
|
|
2124
2124
|
view.mode === unref(VIEW_MODE).MONTHS ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [
|
|
2125
2125
|
createElementVNode("nav", {
|
|
2126
2126
|
class: "ui-v1-calendar-navigation",
|
|
2127
2127
|
"aria-label": i18n.value.t("yearNavigation")
|
|
2128
2128
|
}, [
|
|
2129
|
-
createVNode(_sfc_main$
|
|
2129
|
+
createVNode(_sfc_main$W, {
|
|
2130
2130
|
label: i18n.value.t("prevYear"),
|
|
2131
2131
|
onClick: ($event) => showYear(view.date.year - 1, index)
|
|
2132
2132
|
}, null, 8, ["label", "onClick"]),
|
|
2133
|
-
createVNode(_sfc_main$
|
|
2133
|
+
createVNode(_sfc_main$V, {
|
|
2134
2134
|
onClick: ($event) => views[index].mode = unref(VIEW_MODE).YEARS
|
|
2135
2135
|
}, {
|
|
2136
2136
|
default: withCtx(() => [
|
|
@@ -2142,7 +2142,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2142
2142
|
]),
|
|
2143
2143
|
_: 2
|
|
2144
2144
|
}, 1032, ["onClick"]),
|
|
2145
|
-
createVNode(_sfc_main$
|
|
2145
|
+
createVNode(_sfc_main$W, {
|
|
2146
2146
|
label: i18n.value.t("nextYear"),
|
|
2147
2147
|
direction: "next",
|
|
2148
2148
|
onClick: ($event) => showYear(view.date.year + 1, index)
|
|
@@ -2160,7 +2160,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2160
2160
|
role: "row"
|
|
2161
2161
|
}, [
|
|
2162
2162
|
(openBlock(true), createElementBlock(Fragment, null, renderList(months2, (month) => {
|
|
2163
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2163
|
+
return openBlock(), createBlock(_sfc_main$X, {
|
|
2164
2164
|
key: "month-" + month.month,
|
|
2165
2165
|
class: normalizeClass({ "ui-v1-calendar__cell-month": true }),
|
|
2166
2166
|
current: isCurrentMonth(month.month, index),
|
|
@@ -2191,11 +2191,11 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2191
2191
|
class: "ui-v1-calendar-navigation",
|
|
2192
2192
|
"aria-label": i18n.value.t("decadeNavigation")
|
|
2193
2193
|
}, [
|
|
2194
|
-
createVNode(_sfc_main$
|
|
2194
|
+
createVNode(_sfc_main$W, {
|
|
2195
2195
|
label: i18n.value.t("prevDecade"),
|
|
2196
2196
|
onClick: ($event) => showPrevDecade(index)
|
|
2197
2197
|
}, null, 8, ["label", "onClick"]),
|
|
2198
|
-
createVNode(_sfc_main$
|
|
2198
|
+
createVNode(_sfc_main$V, {
|
|
2199
2199
|
locked: "",
|
|
2200
2200
|
onClick: ($event) => views[index].mode = unref(VIEW_MODE).MONTHS
|
|
2201
2201
|
}, {
|
|
@@ -2208,7 +2208,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2208
2208
|
]),
|
|
2209
2209
|
_: 2
|
|
2210
2210
|
}, 1032, ["onClick"]),
|
|
2211
|
-
createVNode(_sfc_main$
|
|
2211
|
+
createVNode(_sfc_main$W, {
|
|
2212
2212
|
label: i18n.value.t("nextDecade"),
|
|
2213
2213
|
direction: "next",
|
|
2214
2214
|
onClick: ($event) => showNextDecade(index)
|
|
@@ -2226,7 +2226,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2226
2226
|
role: "row"
|
|
2227
2227
|
}, [
|
|
2228
2228
|
(openBlock(true), createElementBlock(Fragment, null, renderList(years, (year) => {
|
|
2229
|
-
return openBlock(), createBlock(_sfc_main$
|
|
2229
|
+
return openBlock(), createBlock(_sfc_main$X, {
|
|
2230
2230
|
key: "year-" + year,
|
|
2231
2231
|
class: normalizeClass({ "ui-v1-calendar__cell-year": true }),
|
|
2232
2232
|
current: isCurrentYear(year),
|
|
@@ -2261,12 +2261,12 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
2261
2261
|
};
|
|
2262
2262
|
}
|
|
2263
2263
|
});
|
|
2264
|
-
const _hoisted_1$
|
|
2264
|
+
const _hoisted_1$E = {
|
|
2265
2265
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2266
2266
|
viewBox: "0 0 24 24"
|
|
2267
2267
|
};
|
|
2268
|
-
function render$
|
|
2269
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
2268
|
+
function render$f(_ctx, _cache) {
|
|
2269
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$E, [..._cache[0] || (_cache[0] = [
|
|
2270
2270
|
createElementVNode("path", {
|
|
2271
2271
|
fill: "currentColor",
|
|
2272
2272
|
"fill-rule": "evenodd",
|
|
@@ -2275,7 +2275,7 @@ function render$d(_ctx, _cache) {
|
|
|
2275
2275
|
}, null, -1)
|
|
2276
2276
|
])]);
|
|
2277
2277
|
}
|
|
2278
|
-
const IconDone = { render: render$
|
|
2278
|
+
const IconDone = { render: render$f };
|
|
2279
2279
|
const expect = (value) => ({
|
|
2280
2280
|
toBeOneOf(variants) {
|
|
2281
2281
|
return Object.values(variants).includes(value);
|
|
@@ -2303,11 +2303,11 @@ const without = (obj, exclude) => {
|
|
|
2303
2303
|
});
|
|
2304
2304
|
return newObj;
|
|
2305
2305
|
};
|
|
2306
|
-
const _hoisted_1$
|
|
2307
|
-
const _hoisted_2$
|
|
2308
|
-
let counter$
|
|
2306
|
+
const _hoisted_1$D = ["id", "value", "name", "disabled", "checked"];
|
|
2307
|
+
const _hoisted_2$l = { class: "ui-v1-checkbox__checkmark" };
|
|
2308
|
+
let counter$3 = 0;
|
|
2309
2309
|
const __default__$2 = {};
|
|
2310
|
-
const _sfc_main$
|
|
2310
|
+
const _sfc_main$T = /* @__PURE__ */ defineComponent({
|
|
2311
2311
|
...__default__$2,
|
|
2312
2312
|
__name: "UiCheckbox",
|
|
2313
2313
|
props: {
|
|
@@ -2319,7 +2319,7 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
2319
2319
|
/** Атрибут name нативного поля ввода */
|
|
2320
2320
|
name: {
|
|
2321
2321
|
type: String,
|
|
2322
|
-
default: () => "ui-v1-checkbox-" + ++counter$
|
|
2322
|
+
default: () => "ui-v1-checkbox-" + ++counter$3
|
|
2323
2323
|
},
|
|
2324
2324
|
/** Значение модели используемое с директивой v-model */
|
|
2325
2325
|
model: {
|
|
@@ -2414,8 +2414,8 @@ const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
|
2414
2414
|
type: "checkbox",
|
|
2415
2415
|
class: "ui-v1-checkbox__input",
|
|
2416
2416
|
onChange
|
|
2417
|
-
}), null, 16, _hoisted_1$
|
|
2418
|
-
createElementVNode("span", _hoisted_2$
|
|
2417
|
+
}), null, 16, _hoisted_1$D),
|
|
2418
|
+
createElementVNode("span", _hoisted_2$l, [
|
|
2419
2419
|
checked.value && !__props.indeterminate ? (openBlock(), createBlock(unref(IconDone), {
|
|
2420
2420
|
key: 0,
|
|
2421
2421
|
class: "ui-v1-checkbox__checkmark-icon"
|
|
@@ -2430,15 +2430,15 @@ var COLLAPSE_BEHAVIOUR = /* @__PURE__ */ ((COLLAPSE_BEHAVIOUR2) => {
|
|
|
2430
2430
|
COLLAPSE_BEHAVIOUR2["HIDE"] = "hide";
|
|
2431
2431
|
return COLLAPSE_BEHAVIOUR2;
|
|
2432
2432
|
})(COLLAPSE_BEHAVIOUR || {});
|
|
2433
|
-
const _hoisted_1$
|
|
2433
|
+
const _hoisted_1$C = {
|
|
2434
2434
|
key: 0,
|
|
2435
2435
|
class: "ui-v1-collapse"
|
|
2436
2436
|
};
|
|
2437
|
-
const _hoisted_2$
|
|
2437
|
+
const _hoisted_2$k = {
|
|
2438
2438
|
key: 1,
|
|
2439
2439
|
class: "ui-v1-collapse"
|
|
2440
2440
|
};
|
|
2441
|
-
const _sfc_main$
|
|
2441
|
+
const _sfc_main$S = /* @__PURE__ */ defineComponent({
|
|
2442
2442
|
__name: "UiCollapse",
|
|
2443
2443
|
props: {
|
|
2444
2444
|
/** Свёрнут/Развёрнут */
|
|
@@ -2556,12 +2556,12 @@ const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
|
2556
2556
|
}, {
|
|
2557
2557
|
default: withCtx(() => [
|
|
2558
2558
|
__props.collapseBehaviour === unref(COLLAPSE_BEHAVIOUR).DISPOSE ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
2559
|
-
__props.expanded ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
2559
|
+
__props.expanded ? (openBlock(), createElementBlock("div", _hoisted_1$C, [
|
|
2560
2560
|
createElementVNode("div", null, [
|
|
2561
2561
|
renderSlot(_ctx.$slots, "default")
|
|
2562
2562
|
])
|
|
2563
2563
|
])) : createCommentVNode("", true)
|
|
2564
|
-
], 64)) : withDirectives((openBlock(), createElementBlock("div", _hoisted_2$
|
|
2564
|
+
], 64)) : withDirectives((openBlock(), createElementBlock("div", _hoisted_2$k, [
|
|
2565
2565
|
createElementVNode("div", null, [
|
|
2566
2566
|
renderSlot(_ctx.$slots, "default")
|
|
2567
2567
|
])
|
|
@@ -2584,20 +2584,20 @@ var COLOR = /* @__PURE__ */ ((COLOR2) => {
|
|
|
2584
2584
|
COLOR2["YELLOW"] = "yellow";
|
|
2585
2585
|
return COLOR2;
|
|
2586
2586
|
})(COLOR || {});
|
|
2587
|
-
var SIZE$
|
|
2587
|
+
var SIZE$8 = /* @__PURE__ */ ((SIZE2) => {
|
|
2588
2588
|
SIZE2["SM"] = "sm";
|
|
2589
2589
|
SIZE2["MD"] = "md";
|
|
2590
2590
|
return SIZE2;
|
|
2591
|
-
})(SIZE$
|
|
2591
|
+
})(SIZE$8 || {});
|
|
2592
2592
|
const CollapseGroupRegisterKey = Symbol("UiCollapseGroup_register");
|
|
2593
2593
|
const CollapseGroupUnregisterKey = Symbol("UiCollapseGroup_unregister");
|
|
2594
2594
|
const CollapseGroupExpandKey = Symbol("UiCollapseGroup_expand");
|
|
2595
2595
|
const CollapseGroupCollapseKey = Symbol("UiCollapseGroup_collapse");
|
|
2596
|
-
const _hoisted_1$
|
|
2597
|
-
const _hoisted_2$
|
|
2598
|
-
const _hoisted_3$
|
|
2599
|
-
const _hoisted_4$
|
|
2600
|
-
const _hoisted_5$
|
|
2596
|
+
const _hoisted_1$B = ["id", "aria-labelledby"];
|
|
2597
|
+
const _hoisted_2$j = ["id", "disabled", "aria-controls", "aria-expanded", "aria-disabled"];
|
|
2598
|
+
const _hoisted_3$f = { class: "ui-v1-collapse-box__icon-sprite" };
|
|
2599
|
+
const _hoisted_4$9 = { class: "ui-v1-collapse-box__header-content" };
|
|
2600
|
+
const _hoisted_5$7 = ["id"];
|
|
2601
2601
|
const _hoisted_6$5 = ["id"];
|
|
2602
2602
|
const _hoisted_7$3 = {
|
|
2603
2603
|
key: 1,
|
|
@@ -2609,7 +2609,7 @@ const _hoisted_10 = {
|
|
|
2609
2609
|
key: 0,
|
|
2610
2610
|
class: "ui-v1-collapse-box__footer"
|
|
2611
2611
|
};
|
|
2612
|
-
const _sfc_main$
|
|
2612
|
+
const _sfc_main$R = /* @__PURE__ */ defineComponent({
|
|
2613
2613
|
...{
|
|
2614
2614
|
inheritAttrs: false
|
|
2615
2615
|
},
|
|
@@ -2665,8 +2665,8 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
2665
2665
|
/** Размер иконки */
|
|
2666
2666
|
iconSize: {
|
|
2667
2667
|
type: String,
|
|
2668
|
-
default: SIZE$
|
|
2669
|
-
validator: (value) => Object.values(SIZE$
|
|
2668
|
+
default: SIZE$8.SM,
|
|
2669
|
+
validator: (value) => Object.values(SIZE$8).includes(value)
|
|
2670
2670
|
},
|
|
2671
2671
|
/** Рамка вместо тени */
|
|
2672
2672
|
bordered: {
|
|
@@ -2832,17 +2832,17 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
2832
2832
|
[`ui-v1-collapse-box__icon_${__props.iconSize}`]: __props.iconSize
|
|
2833
2833
|
})
|
|
2834
2834
|
}, [
|
|
2835
|
-
createElementVNode("span", _hoisted_3$
|
|
2835
|
+
createElementVNode("span", _hoisted_3$f, [
|
|
2836
2836
|
renderSlot(_ctx.$slots, "icon")
|
|
2837
2837
|
])
|
|
2838
2838
|
], 2)) : createCommentVNode("", true),
|
|
2839
|
-
createElementVNode("span", _hoisted_4$
|
|
2839
|
+
createElementVNode("span", _hoisted_4$9, [
|
|
2840
2840
|
createElementVNode("span", {
|
|
2841
2841
|
id: boxId.value + "-title",
|
|
2842
2842
|
class: "ui-v1-collapse-box__title"
|
|
2843
2843
|
}, [
|
|
2844
2844
|
renderSlot(_ctx.$slots, "title")
|
|
2845
|
-
], 8, _hoisted_5$
|
|
2845
|
+
], 8, _hoisted_5$7),
|
|
2846
2846
|
_ctx.$slots["description"] ? (openBlock(), createElementBlock("span", {
|
|
2847
2847
|
key: 0,
|
|
2848
2848
|
id: boxId.value + "-description",
|
|
@@ -2854,9 +2854,9 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
2854
2854
|
!__props.disabled ? (openBlock(), createElementBlock("span", _hoisted_7$3, [
|
|
2855
2855
|
createVNode(unref(IconChevronRight), { class: "ui-v1-collapse-box__arrow" })
|
|
2856
2856
|
])) : createCommentVNode("", true)
|
|
2857
|
-
], 8, _hoisted_2$
|
|
2857
|
+
], 8, _hoisted_2$j)
|
|
2858
2858
|
], 2),
|
|
2859
|
-
createVNode(_sfc_main$
|
|
2859
|
+
createVNode(_sfc_main$S, {
|
|
2860
2860
|
id: boxId.value + "-collapse",
|
|
2861
2861
|
"aria-hidden": !state.expanded ? "true" : "false",
|
|
2862
2862
|
"aria-labelledby": boxId.value + "-button",
|
|
@@ -2891,11 +2891,11 @@ const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
|
2891
2891
|
]),
|
|
2892
2892
|
_: 3
|
|
2893
2893
|
}, 8, ["id", "aria-hidden", "aria-labelledby", "duration", "expanded", "collapse-behaviour"])
|
|
2894
|
-
], 16, _hoisted_1$
|
|
2894
|
+
], 16, _hoisted_1$B);
|
|
2895
2895
|
};
|
|
2896
2896
|
}
|
|
2897
2897
|
});
|
|
2898
|
-
const _sfc_main$
|
|
2898
|
+
const _sfc_main$Q = /* @__PURE__ */ defineComponent({
|
|
2899
2899
|
__name: "UiCollapseGroup",
|
|
2900
2900
|
props: {
|
|
2901
2901
|
/**
|
|
@@ -3013,19 +3013,19 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
3013
3013
|
};
|
|
3014
3014
|
}
|
|
3015
3015
|
});
|
|
3016
|
-
const _hoisted_1$
|
|
3016
|
+
const _hoisted_1$A = {
|
|
3017
3017
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3018
3018
|
viewBox: "0 0 24 24"
|
|
3019
3019
|
};
|
|
3020
|
-
function render$
|
|
3021
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
3020
|
+
function render$e(_ctx, _cache) {
|
|
3021
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$A, [..._cache[0] || (_cache[0] = [
|
|
3022
3022
|
createElementVNode("path", {
|
|
3023
3023
|
fill: "currentColor",
|
|
3024
3024
|
d: "M18 16V4a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M4 4h12v12H4zm16 14V6a2 2 0 0 1 2 2v10a4 4 0 0 1-4 4H8a2 2 0 0 1-2-2h12a2 2 0 0 0 2-2"
|
|
3025
3025
|
}, null, -1)
|
|
3026
3026
|
])]);
|
|
3027
3027
|
}
|
|
3028
|
-
const IconCopy = { render: render$
|
|
3028
|
+
const IconCopy = { render: render$e };
|
|
3029
3029
|
const sides$1 = ["top", "right", "bottom", "left"];
|
|
3030
3030
|
const min = Math.min;
|
|
3031
3031
|
const max = Math.max;
|
|
@@ -4692,8 +4692,8 @@ if (typeof document !== "undefined" && typeof window !== "undefined") {
|
|
|
4692
4692
|
window.addEventListener("click", onGlobalEvent("click"), true);
|
|
4693
4693
|
}
|
|
4694
4694
|
}
|
|
4695
|
-
const _hoisted_1$
|
|
4696
|
-
const _sfc_main$
|
|
4695
|
+
const _hoisted_1$z = { class: "ui-v1-popper__content" };
|
|
4696
|
+
const _sfc_main$P = /* @__PURE__ */ defineComponent({
|
|
4697
4697
|
__name: "UiPopper",
|
|
4698
4698
|
props: {
|
|
4699
4699
|
/** Флаг для ручного переключения видимости */
|
|
@@ -5039,7 +5039,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
|
|
|
5039
5039
|
ref: arrow2,
|
|
5040
5040
|
class: "ui-v1-popper__arrow"
|
|
5041
5041
|
}, null, 512)) : createCommentVNode("", true),
|
|
5042
|
-
createElementVNode("div", _hoisted_1$
|
|
5042
|
+
createElementVNode("div", _hoisted_1$z, [
|
|
5043
5043
|
renderSlot(_ctx.$slots, "default")
|
|
5044
5044
|
])
|
|
5045
5045
|
], 16)
|
|
@@ -5047,7 +5047,7 @@ const _sfc_main$D = /* @__PURE__ */ defineComponent({
|
|
|
5047
5047
|
};
|
|
5048
5048
|
}
|
|
5049
5049
|
});
|
|
5050
|
-
const _sfc_main$
|
|
5050
|
+
const _sfc_main$O = /* @__PURE__ */ defineComponent({
|
|
5051
5051
|
__name: "UiTooltip",
|
|
5052
5052
|
props: {
|
|
5053
5053
|
/** Флаг для ручного переключения видимости */
|
|
@@ -5158,7 +5158,7 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
|
|
|
5158
5158
|
hide: () => popper.value?.hide()
|
|
5159
5159
|
});
|
|
5160
5160
|
return (_ctx, _cache) => {
|
|
5161
|
-
return openBlock(), createBlock(_sfc_main$
|
|
5161
|
+
return openBlock(), createBlock(_sfc_main$P, mergeProps({
|
|
5162
5162
|
ref_key: "popper",
|
|
5163
5163
|
ref: popper,
|
|
5164
5164
|
visible: __props.visible,
|
|
@@ -5192,11 +5192,11 @@ const _sfc_main$C = /* @__PURE__ */ defineComponent({
|
|
|
5192
5192
|
};
|
|
5193
5193
|
}
|
|
5194
5194
|
});
|
|
5195
|
-
const _hoisted_1$
|
|
5196
|
-
const _hoisted_2$
|
|
5197
|
-
const _hoisted_3$
|
|
5198
|
-
const _hoisted_4$
|
|
5199
|
-
const _sfc_main$
|
|
5195
|
+
const _hoisted_1$y = { class: "ui-v1-copy-button__tooltip" };
|
|
5196
|
+
const _hoisted_2$i = { class: "ui-v1-copy-button__icon" };
|
|
5197
|
+
const _hoisted_3$e = { class: "ui-v1-copy-button__text" };
|
|
5198
|
+
const _hoisted_4$8 = ["value"];
|
|
5199
|
+
const _sfc_main$N = /* @__PURE__ */ defineComponent({
|
|
5200
5200
|
__name: "UiCopyButton",
|
|
5201
5201
|
props: {
|
|
5202
5202
|
/** Текст для копирования в буфер обмена */
|
|
@@ -5207,7 +5207,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5207
5207
|
/** Размер кнопки */
|
|
5208
5208
|
size: {
|
|
5209
5209
|
type: String,
|
|
5210
|
-
default: SIZE$
|
|
5210
|
+
default: SIZE$9.XS
|
|
5211
5211
|
},
|
|
5212
5212
|
/** Объект, содержащий параметры настройки Tooltip */
|
|
5213
5213
|
tooltipOptions: {
|
|
@@ -5268,7 +5268,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5268
5268
|
onClick: copy
|
|
5269
5269
|
}, [
|
|
5270
5270
|
renderSlot(_ctx.$slots, "trigger", {}, () => [
|
|
5271
|
-
createVNode(_sfc_main$
|
|
5271
|
+
createVNode(_sfc_main$Y, {
|
|
5272
5272
|
size: __props.size,
|
|
5273
5273
|
appearance: "tertiary"
|
|
5274
5274
|
}, {
|
|
@@ -5278,7 +5278,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5278
5278
|
_: 1
|
|
5279
5279
|
}, 8, ["size"])
|
|
5280
5280
|
]),
|
|
5281
|
-
createVNode(_sfc_main$
|
|
5281
|
+
createVNode(_sfc_main$O, mergeProps({
|
|
5282
5282
|
visible: visible.value,
|
|
5283
5283
|
"onUpdate:visible": _cache[0] || (_cache[0] = ($event) => visible.value = $event),
|
|
5284
5284
|
target: rootTarget.value,
|
|
@@ -5288,12 +5288,12 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5288
5288
|
...__props.tooltipOptions
|
|
5289
5289
|
}), {
|
|
5290
5290
|
default: withCtx(() => [
|
|
5291
|
-
createElementVNode("div", _hoisted_1$
|
|
5291
|
+
createElementVNode("div", _hoisted_1$y, [
|
|
5292
5292
|
copied.value ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
5293
|
-
createElementVNode("div", _hoisted_2$
|
|
5293
|
+
createElementVNode("div", _hoisted_2$i, [
|
|
5294
5294
|
createVNode(unref(IconCheckmarkCircleOutlined))
|
|
5295
5295
|
]),
|
|
5296
|
-
createElementVNode("div", _hoisted_3$
|
|
5296
|
+
createElementVNode("div", _hoisted_3$e, [
|
|
5297
5297
|
renderSlot(_ctx.$slots, "hint-copied")
|
|
5298
5298
|
])
|
|
5299
5299
|
], 64)) : renderSlot(_ctx.$slots, "hint", { key: 1 })
|
|
@@ -5308,7 +5308,7 @@ const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
|
5308
5308
|
value: __props.text,
|
|
5309
5309
|
class: "ui-v1-copy-button__area",
|
|
5310
5310
|
type: "text"
|
|
5311
|
-
}, null, 8, _hoisted_4$
|
|
5311
|
+
}, null, 8, _hoisted_4$8)) : createCommentVNode("", true)
|
|
5312
5312
|
], 544);
|
|
5313
5313
|
};
|
|
5314
5314
|
}
|
|
@@ -5348,7 +5348,7 @@ function detectLocale() {
|
|
|
5348
5348
|
}
|
|
5349
5349
|
return "en-GB";
|
|
5350
5350
|
}
|
|
5351
|
-
const _sfc_main$
|
|
5351
|
+
const _sfc_main$M = /* @__PURE__ */ defineComponent({
|
|
5352
5352
|
__name: "UiDate",
|
|
5353
5353
|
props: {
|
|
5354
5354
|
date: {
|
|
@@ -5375,12 +5375,12 @@ const _sfc_main$A = /* @__PURE__ */ defineComponent({
|
|
|
5375
5375
|
};
|
|
5376
5376
|
}
|
|
5377
5377
|
});
|
|
5378
|
-
const _hoisted_1$
|
|
5378
|
+
const _hoisted_1$x = {
|
|
5379
5379
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5380
5380
|
viewBox: "0 0 24 24"
|
|
5381
5381
|
};
|
|
5382
|
-
function render$
|
|
5383
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
5382
|
+
function render$d(_ctx, _cache) {
|
|
5383
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$x, [..._cache[0] || (_cache[0] = [
|
|
5384
5384
|
createElementVNode("path", {
|
|
5385
5385
|
fill: "currentColor",
|
|
5386
5386
|
"fill-rule": "evenodd",
|
|
@@ -5389,13 +5389,13 @@ function render$b(_ctx, _cache) {
|
|
|
5389
5389
|
}, null, -1)
|
|
5390
5390
|
])]);
|
|
5391
5391
|
}
|
|
5392
|
-
const IconCalendar = { render: render$
|
|
5393
|
-
const _hoisted_1$
|
|
5392
|
+
const IconCalendar = { render: render$d };
|
|
5393
|
+
const _hoisted_1$w = {
|
|
5394
5394
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5395
5395
|
viewBox: "0 0 24 24"
|
|
5396
5396
|
};
|
|
5397
|
-
function render$
|
|
5398
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
5397
|
+
function render$c(_ctx, _cache) {
|
|
5398
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$w, [..._cache[0] || (_cache[0] = [
|
|
5399
5399
|
createElementVNode("path", {
|
|
5400
5400
|
fill: "currentColor",
|
|
5401
5401
|
"fill-rule": "evenodd",
|
|
@@ -5404,7 +5404,7 @@ function render$a(_ctx, _cache) {
|
|
|
5404
5404
|
}, null, -1)
|
|
5405
5405
|
])]);
|
|
5406
5406
|
}
|
|
5407
|
-
const IconClearCircle = { render: render$
|
|
5407
|
+
const IconClearCircle = { render: render$c };
|
|
5408
5408
|
var TYPE$1 = /* @__PURE__ */ ((TYPE2) => {
|
|
5409
5409
|
TYPE2["EMAIL"] = "email";
|
|
5410
5410
|
TYPE2["PASSWORD"] = "password";
|
|
@@ -5425,14 +5425,14 @@ var INPUTMODE = /* @__PURE__ */ ((INPUTMODE2) => {
|
|
|
5425
5425
|
INPUTMODE2["URL"] = "url";
|
|
5426
5426
|
return INPUTMODE2;
|
|
5427
5427
|
})(INPUTMODE || {});
|
|
5428
|
-
var SIZE$
|
|
5428
|
+
var SIZE$7 = /* @__PURE__ */ ((SIZE2) => {
|
|
5429
5429
|
SIZE2["XS"] = "xs";
|
|
5430
5430
|
SIZE2["SM"] = "sm";
|
|
5431
5431
|
SIZE2["MD"] = "md";
|
|
5432
5432
|
SIZE2["LG"] = "lg";
|
|
5433
5433
|
SIZE2["XL"] = "xl";
|
|
5434
5434
|
return SIZE2;
|
|
5435
|
-
})(SIZE$
|
|
5435
|
+
})(SIZE$7 || {});
|
|
5436
5436
|
const decimalsOf = (value) => {
|
|
5437
5437
|
const [, fraction] = String(value).replace(",", ".").split(".");
|
|
5438
5438
|
return fraction ? fraction.length : 0;
|
|
@@ -5504,19 +5504,19 @@ const _i18n$5 = define({
|
|
|
5504
5504
|
"ru-RU": messages_ru_RU$5
|
|
5505
5505
|
}
|
|
5506
5506
|
});
|
|
5507
|
-
const _hoisted_1$
|
|
5508
|
-
const _hoisted_2$
|
|
5507
|
+
const _hoisted_1$v = ["id"];
|
|
5508
|
+
const _hoisted_2$h = {
|
|
5509
5509
|
key: 0,
|
|
5510
5510
|
class: "ui-v1-textbox__prefix"
|
|
5511
5511
|
};
|
|
5512
|
-
const _hoisted_3$
|
|
5513
|
-
const _hoisted_4$
|
|
5514
|
-
const _hoisted_5$
|
|
5512
|
+
const _hoisted_3$d = ["id", "type", "value", "max", "min", "step", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "readonly", "required", "disabled"];
|
|
5513
|
+
const _hoisted_4$7 = ["id", "value", "aria-invalid", "autocomplete", "inputmode", "maxlength", "placeholder", "rows", "cols", "readonly", "required", "disabled"];
|
|
5514
|
+
const _hoisted_5$6 = ["disabled", "aria-controls", "aria-label"];
|
|
5515
5515
|
const _hoisted_6$4 = {
|
|
5516
5516
|
key: 7,
|
|
5517
5517
|
class: "ui-v1-textbox__suffix"
|
|
5518
5518
|
};
|
|
5519
|
-
const _sfc_main$
|
|
5519
|
+
const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
5520
5520
|
__name: "UiTextbox",
|
|
5521
5521
|
props: {
|
|
5522
5522
|
/** Уникальный идентификатор поля */
|
|
@@ -5579,7 +5579,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
5579
5579
|
/** Размер поля ввода */
|
|
5580
5580
|
size: {
|
|
5581
5581
|
type: String,
|
|
5582
|
-
default: SIZE$
|
|
5582
|
+
default: SIZE$7.SM
|
|
5583
5583
|
},
|
|
5584
5584
|
/** Нативный атрибут input|textarea */
|
|
5585
5585
|
placeholder: {
|
|
@@ -5934,13 +5934,13 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
5934
5934
|
"ui-v1-textbox_autofit": __props.autofit,
|
|
5935
5935
|
"ui-v1-textbox_invalid": __props.invalid,
|
|
5936
5936
|
"ui-v1-textbox_outlined": __props.outlined,
|
|
5937
|
-
"ui-v1-textbox_xs": __props.size === unref(SIZE$
|
|
5938
|
-
"ui-v1-textbox_md": __props.size === unref(SIZE$
|
|
5939
|
-
"ui-v1-textbox_lg": __props.size === unref(SIZE$
|
|
5940
|
-
"ui-v1-textbox_xl": __props.size === unref(SIZE$
|
|
5937
|
+
"ui-v1-textbox_xs": __props.size === unref(SIZE$7).XS,
|
|
5938
|
+
"ui-v1-textbox_md": __props.size === unref(SIZE$7).MD,
|
|
5939
|
+
"ui-v1-textbox_lg": __props.size === unref(SIZE$7).LG,
|
|
5940
|
+
"ui-v1-textbox_xl": __props.size === unref(SIZE$7).XL
|
|
5941
5941
|
}
|
|
5942
5942
|
}, _ctx.$attrs), [
|
|
5943
|
-
__props.prefix || "prefix" in _ctx.$slots ? (openBlock(), createElementBlock("span", _hoisted_2$
|
|
5943
|
+
__props.prefix || "prefix" in _ctx.$slots ? (openBlock(), createElementBlock("span", _hoisted_2$h, [
|
|
5944
5944
|
renderSlot(_ctx.$slots, "prefix", {}, () => [
|
|
5945
5945
|
createTextVNode(toDisplayString(__props.prefix), 1)
|
|
5946
5946
|
])
|
|
@@ -5977,7 +5977,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
5977
5977
|
onChange,
|
|
5978
5978
|
onFocus,
|
|
5979
5979
|
onBlur
|
|
5980
|
-
}), null, 16, _hoisted_3$
|
|
5980
|
+
}), null, 16, _hoisted_3$d)) : (openBlock(), createElementBlock("textarea", mergeProps({
|
|
5981
5981
|
key: 3,
|
|
5982
5982
|
id: __props.id ?? unref(uid2),
|
|
5983
5983
|
ref_key: "textbox",
|
|
@@ -6000,7 +6000,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
6000
6000
|
onChange,
|
|
6001
6001
|
onFocus,
|
|
6002
6002
|
onBlur
|
|
6003
|
-
}), null, 16, _hoisted_4$
|
|
6003
|
+
}), null, 16, _hoisted_4$7)),
|
|
6004
6004
|
__props.autofit ? (openBlock(), createElementBlock("span", {
|
|
6005
6005
|
key: 4,
|
|
6006
6006
|
ref_key: "placeholderRef",
|
|
@@ -6017,7 +6017,7 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
6017
6017
|
onClick: clear2
|
|
6018
6018
|
}, [
|
|
6019
6019
|
createVNode(unref(IconClearCircle), { "aria-hidden": "true" })
|
|
6020
|
-
], 8, _hoisted_5$
|
|
6020
|
+
], 8, _hoisted_5$6)) : createCommentVNode("", true),
|
|
6021
6021
|
"trailing-icon" in _ctx.$slots ? (openBlock(), createElementBlock("span", {
|
|
6022
6022
|
key: 6,
|
|
6023
6023
|
class: "ui-v1-textbox__icon ui-v1-textbox__icon_trailing",
|
|
@@ -6030,17 +6030,17 @@ const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
|
6030
6030
|
createTextVNode(toDisplayString(__props.suffix), 1)
|
|
6031
6031
|
])
|
|
6032
6032
|
])) : createCommentVNode("", true)
|
|
6033
|
-
], 16, _hoisted_1$
|
|
6033
|
+
], 16, _hoisted_1$v);
|
|
6034
6034
|
};
|
|
6035
6035
|
}
|
|
6036
6036
|
});
|
|
6037
|
-
var SIZE$
|
|
6037
|
+
var SIZE$6 = /* @__PURE__ */ ((SIZE2) => {
|
|
6038
6038
|
SIZE2["XS"] = "xs";
|
|
6039
6039
|
SIZE2["SM"] = "sm";
|
|
6040
6040
|
SIZE2["MD"] = "md";
|
|
6041
6041
|
SIZE2["LG"] = "lg";
|
|
6042
6042
|
return SIZE2;
|
|
6043
|
-
})(SIZE$
|
|
6043
|
+
})(SIZE$6 || {});
|
|
6044
6044
|
const deltaTransition$1 = (el) => {
|
|
6045
6045
|
const delta = el.scrollWidth - el.clientWidth;
|
|
6046
6046
|
return delta !== 0 ? {
|
|
@@ -6048,17 +6048,17 @@ const deltaTransition$1 = (el) => {
|
|
|
6048
6048
|
animationDuration: `${delta * 15}ms`
|
|
6049
6049
|
} : {};
|
|
6050
6050
|
};
|
|
6051
|
-
const _hoisted_1$
|
|
6051
|
+
const _hoisted_1$u = {
|
|
6052
6052
|
key: 0,
|
|
6053
6053
|
class: "ui-v1-menu-item__avatar"
|
|
6054
6054
|
};
|
|
6055
|
-
const _hoisted_2$
|
|
6055
|
+
const _hoisted_2$g = {
|
|
6056
6056
|
key: 1,
|
|
6057
6057
|
class: "ui-v1-menu-item__icon ui-v1-menu-item__icon_leading"
|
|
6058
6058
|
};
|
|
6059
|
-
const _hoisted_3$
|
|
6060
|
-
const _hoisted_4$
|
|
6061
|
-
const _hoisted_5$
|
|
6059
|
+
const _hoisted_3$c = { class: "ui-v1-menu-item__content" };
|
|
6060
|
+
const _hoisted_4$6 = { class: "ui-v1-menu-item__text" };
|
|
6061
|
+
const _hoisted_5$5 = {
|
|
6062
6062
|
key: 0,
|
|
6063
6063
|
class: "ui-v1-menu-item__description"
|
|
6064
6064
|
};
|
|
@@ -6070,13 +6070,13 @@ const _hoisted_7$2 = {
|
|
|
6070
6070
|
key: 3,
|
|
6071
6071
|
class: "ui-v1-menu-item__icon ui-v1-menu-item__icon_trailing"
|
|
6072
6072
|
};
|
|
6073
|
-
const _sfc_main$
|
|
6073
|
+
const _sfc_main$K = /* @__PURE__ */ defineComponent({
|
|
6074
6074
|
__name: "UiMenuItem",
|
|
6075
6075
|
props: {
|
|
6076
6076
|
/** Размер */
|
|
6077
6077
|
size: {
|
|
6078
6078
|
type: String,
|
|
6079
|
-
default: SIZE$
|
|
6079
|
+
default: SIZE$6.MD
|
|
6080
6080
|
},
|
|
6081
6081
|
/** Описание */
|
|
6082
6082
|
description: {
|
|
@@ -6149,13 +6149,13 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
|
6149
6149
|
}),
|
|
6150
6150
|
onMouseoverOnce: onHover
|
|
6151
6151
|
}, [
|
|
6152
|
-
_ctx.$slots["avatar"] ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
6152
|
+
_ctx.$slots["avatar"] ? (openBlock(), createElementBlock("div", _hoisted_1$u, [
|
|
6153
6153
|
renderSlot(_ctx.$slots, "avatar")
|
|
6154
|
-
])) : _ctx.$slots["leading-icon"] ? (openBlock(), createElementBlock("div", _hoisted_2$
|
|
6154
|
+
])) : _ctx.$slots["leading-icon"] ? (openBlock(), createElementBlock("div", _hoisted_2$g, [
|
|
6155
6155
|
renderSlot(_ctx.$slots, "leading-icon")
|
|
6156
6156
|
])) : createCommentVNode("", true),
|
|
6157
|
-
createElementVNode("div", _hoisted_3$
|
|
6158
|
-
createElementVNode("div", _hoisted_4$
|
|
6157
|
+
createElementVNode("div", _hoisted_3$c, [
|
|
6158
|
+
createElementVNode("div", _hoisted_4$6, [
|
|
6159
6159
|
__props.ticker ? (openBlock(), createElementBlock("div", {
|
|
6160
6160
|
key: 0,
|
|
6161
6161
|
ref_key: "textRef",
|
|
@@ -6166,7 +6166,7 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
|
6166
6166
|
renderSlot(_ctx.$slots, "default")
|
|
6167
6167
|
], 4)) : renderSlot(_ctx.$slots, "default", { key: 1 })
|
|
6168
6168
|
]),
|
|
6169
|
-
_ctx.$slots["description"] || __props.description ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
6169
|
+
_ctx.$slots["description"] || __props.description ? (openBlock(), createElementBlock("div", _hoisted_5$5, [
|
|
6170
6170
|
renderSlot(_ctx.$slots, "description", {}, () => [
|
|
6171
6171
|
createTextVNode(toDisplayString(__props.description), 1)
|
|
6172
6172
|
])
|
|
@@ -6181,7 +6181,7 @@ const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
|
6181
6181
|
};
|
|
6182
6182
|
}
|
|
6183
6183
|
});
|
|
6184
|
-
const _sfc_main$
|
|
6184
|
+
const _sfc_main$J = /* @__PURE__ */ defineComponent({
|
|
6185
6185
|
__name: "UiScrollBox",
|
|
6186
6186
|
props: {
|
|
6187
6187
|
/** Наименование тэга-обёртки для нативного скролла */
|
|
@@ -6359,7 +6359,7 @@ const isQuickDateEqual = (first, second) => {
|
|
|
6359
6359
|
}
|
|
6360
6360
|
return false;
|
|
6361
6361
|
};
|
|
6362
|
-
const _sfc_main$
|
|
6362
|
+
const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
6363
6363
|
__name: "UiDatePickerQuickMenu",
|
|
6364
6364
|
props: {
|
|
6365
6365
|
value: {
|
|
@@ -6385,18 +6385,18 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
6385
6385
|
emit("change", props.nullable && isActive(date) ? null : date);
|
|
6386
6386
|
};
|
|
6387
6387
|
return (_ctx, _cache) => {
|
|
6388
|
-
return openBlock(), createBlock(_sfc_main$
|
|
6388
|
+
return openBlock(), createBlock(_sfc_main$J, {
|
|
6389
6389
|
class: "ui-v1-date-picker__quick-menu",
|
|
6390
6390
|
role: "menu",
|
|
6391
6391
|
native: ""
|
|
6392
6392
|
}, {
|
|
6393
6393
|
default: withCtx(() => [
|
|
6394
6394
|
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item, index) => {
|
|
6395
|
-
return openBlock(), createBlock(_sfc_main$
|
|
6395
|
+
return openBlock(), createBlock(_sfc_main$K, {
|
|
6396
6396
|
key: "quick-item-" + index,
|
|
6397
6397
|
active: isActive(item.value),
|
|
6398
6398
|
"aria-current": isActive(item.value) ? "true" : "false",
|
|
6399
|
-
size: unref(SIZE$
|
|
6399
|
+
size: unref(SIZE$6).SM,
|
|
6400
6400
|
role: "menuitem",
|
|
6401
6401
|
onClick: ($event) => onClick(item.value)
|
|
6402
6402
|
}, {
|
|
@@ -6437,11 +6437,11 @@ const _i18n$4 = define({
|
|
|
6437
6437
|
"ru-RU": messages_ru_RU$4
|
|
6438
6438
|
}
|
|
6439
6439
|
});
|
|
6440
|
-
const _hoisted_1$
|
|
6441
|
-
const _hoisted_2$
|
|
6442
|
-
const _hoisted_3$
|
|
6443
|
-
const _hoisted_4$
|
|
6444
|
-
const _sfc_main$
|
|
6440
|
+
const _hoisted_1$t = ["id", "aria-controls", "aria-disabled", "aria-expanded", "aria-readonly"];
|
|
6441
|
+
const _hoisted_2$f = ["id"];
|
|
6442
|
+
const _hoisted_3$b = { class: "ui-v1-date-picker__workspace" };
|
|
6443
|
+
const _hoisted_4$5 = { class: "ui-v1-date-picker__action" };
|
|
6444
|
+
const _sfc_main$H = /* @__PURE__ */ defineComponent({
|
|
6445
6445
|
...{
|
|
6446
6446
|
inheritAttrs: false
|
|
6447
6447
|
},
|
|
@@ -6486,8 +6486,8 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6486
6486
|
},
|
|
6487
6487
|
appearance: {
|
|
6488
6488
|
type: String,
|
|
6489
|
-
validator: (appearance) => Object.values(APPEARANCE$
|
|
6490
|
-
default: APPEARANCE$
|
|
6489
|
+
validator: (appearance) => Object.values(APPEARANCE$4).includes(appearance),
|
|
6490
|
+
default: APPEARANCE$4.SINGLE
|
|
6491
6491
|
},
|
|
6492
6492
|
synchronization: {
|
|
6493
6493
|
type: String,
|
|
@@ -6808,7 +6808,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6808
6808
|
onClick: toggle
|
|
6809
6809
|
}, [
|
|
6810
6810
|
renderSlot(_ctx.$slots, "trigger")
|
|
6811
|
-
])) : (openBlock(), createBlock(_sfc_main$
|
|
6811
|
+
])) : (openBlock(), createBlock(_sfc_main$L, mergeProps({
|
|
6812
6812
|
key: 1,
|
|
6813
6813
|
id: inputId.value,
|
|
6814
6814
|
ref_key: "textbox",
|
|
@@ -6843,7 +6843,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6843
6843
|
key: "0"
|
|
6844
6844
|
} : void 0
|
|
6845
6845
|
]), 1040, ["id", "clearable", "value", "placeholder", "active", "disabled", "readonly"])),
|
|
6846
|
-
createVNode(_sfc_main$
|
|
6846
|
+
createVNode(_sfc_main$P, mergeProps({
|
|
6847
6847
|
id: `${inputId.value}-popper`,
|
|
6848
6848
|
visible: showCalendar.value,
|
|
6849
6849
|
target: triggerTarget.value,
|
|
@@ -6866,15 +6866,15 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6866
6866
|
onClick: _cache[0] || (_cache[0] = withModifiers(() => {
|
|
6867
6867
|
}, ["stop"]))
|
|
6868
6868
|
}, [
|
|
6869
|
-
__props.quickOptions.length > 0 ? (openBlock(), createBlock(_sfc_main$
|
|
6869
|
+
__props.quickOptions.length > 0 ? (openBlock(), createBlock(_sfc_main$I, {
|
|
6870
6870
|
key: 0,
|
|
6871
6871
|
value: view.value,
|
|
6872
6872
|
items: __props.quickOptions,
|
|
6873
6873
|
nullable: __props.nullable,
|
|
6874
6874
|
onChange: onQuickChange
|
|
6875
6875
|
}, null, 8, ["value", "items", "nullable"])) : createCommentVNode("", true),
|
|
6876
|
-
createElementVNode("div", _hoisted_3$
|
|
6877
|
-
createVNode(_sfc_main$
|
|
6876
|
+
createElementVNode("div", _hoisted_3$b, [
|
|
6877
|
+
createVNode(_sfc_main$U, {
|
|
6878
6878
|
ref_key: "calendar",
|
|
6879
6879
|
ref: calendar,
|
|
6880
6880
|
value: view.value,
|
|
@@ -6891,11 +6891,11 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6891
6891
|
key: 0,
|
|
6892
6892
|
class: normalizeClass({
|
|
6893
6893
|
"ui-v1-date-picker__footer": true,
|
|
6894
|
-
"ui-v1-date-picker__footer_horizontal": __props.appearance === unref(APPEARANCE$
|
|
6894
|
+
"ui-v1-date-picker__footer_horizontal": __props.appearance === unref(APPEARANCE$4).DOUBLE
|
|
6895
6895
|
})
|
|
6896
6896
|
}, [
|
|
6897
|
-
createElementVNode("div", _hoisted_4$
|
|
6898
|
-
createVNode(_sfc_main$
|
|
6897
|
+
createElementVNode("div", _hoisted_4$5, [
|
|
6898
|
+
createVNode(_sfc_main$Y, {
|
|
6899
6899
|
appearance: "tertiary",
|
|
6900
6900
|
class: "ui-v1-date-picker__button",
|
|
6901
6901
|
onClick: reset
|
|
@@ -6905,7 +6905,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6905
6905
|
]),
|
|
6906
6906
|
_: 1
|
|
6907
6907
|
}),
|
|
6908
|
-
createVNode(_sfc_main$
|
|
6908
|
+
createVNode(_sfc_main$Y, {
|
|
6909
6909
|
class: "ui-v1-date-picker__button",
|
|
6910
6910
|
onClick: apply2
|
|
6911
6911
|
}, {
|
|
@@ -6917,11 +6917,11 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
6917
6917
|
])
|
|
6918
6918
|
], 2)) : createCommentVNode("", true)
|
|
6919
6919
|
])
|
|
6920
|
-
], 8, _hoisted_2$
|
|
6920
|
+
], 8, _hoisted_2$f)
|
|
6921
6921
|
]),
|
|
6922
6922
|
_: 1
|
|
6923
6923
|
}, 16, ["id", "visible", "target", "container", "placement", "aria-hidden", "class", "disabled"])
|
|
6924
|
-
], 16, _hoisted_1$
|
|
6924
|
+
], 16, _hoisted_1$t);
|
|
6925
6925
|
};
|
|
6926
6926
|
}
|
|
6927
6927
|
});
|
|
@@ -6930,7 +6930,7 @@ var ALIGN$1 = /* @__PURE__ */ ((ALIGN2) => {
|
|
|
6930
6930
|
ALIGN2["RIGHT"] = "right";
|
|
6931
6931
|
return ALIGN2;
|
|
6932
6932
|
})(ALIGN$1 || {});
|
|
6933
|
-
const _sfc_main$
|
|
6933
|
+
const _sfc_main$G = /* @__PURE__ */ defineComponent({
|
|
6934
6934
|
__name: "UiError",
|
|
6935
6935
|
props: {
|
|
6936
6936
|
/** Тест, разметка ошибки */
|
|
@@ -6969,46 +6969,46 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
|
6969
6969
|
};
|
|
6970
6970
|
}
|
|
6971
6971
|
});
|
|
6972
|
-
const _hoisted_1$
|
|
6972
|
+
const _hoisted_1$s = {
|
|
6973
6973
|
xmlns: "http://www.w3.org/2000/svg",
|
|
6974
6974
|
viewBox: "0 0 24 24"
|
|
6975
6975
|
};
|
|
6976
|
-
function render$
|
|
6977
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
6976
|
+
function render$b(_ctx, _cache) {
|
|
6977
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$s, [..._cache[0] || (_cache[0] = [
|
|
6978
6978
|
createElementVNode("path", {
|
|
6979
6979
|
fill: "currentColor",
|
|
6980
6980
|
d: "M12.72 15.78a.75.75 0 0 1-.53.22h-.38a.77.77 0 0 1-.53-.22l-5.13-5.14a.5.5 0 0 1 0-.71l.71-.71a.49.49 0 0 1 .7 0L12 13.67l4.44-4.45a.5.5 0 0 1 .71 0l.7.71a.5.5 0 0 1 0 .71z"
|
|
6981
6981
|
}, null, -1)
|
|
6982
6982
|
])]);
|
|
6983
6983
|
}
|
|
6984
|
-
const IconChevronDown = { render: render$
|
|
6985
|
-
const _hoisted_1$
|
|
6984
|
+
const IconChevronDown = { render: render$b };
|
|
6985
|
+
const _hoisted_1$r = {
|
|
6986
6986
|
xmlns: "http://www.w3.org/2000/svg",
|
|
6987
6987
|
viewBox: "0 0 24 24"
|
|
6988
6988
|
};
|
|
6989
|
-
function render$
|
|
6990
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
6989
|
+
function render$a(_ctx, _cache) {
|
|
6990
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$r, [..._cache[0] || (_cache[0] = [
|
|
6991
6991
|
createElementVNode("path", {
|
|
6992
6992
|
fill: "currentColor",
|
|
6993
6993
|
d: "M11.28 8.22a.75.75 0 0 1 .53-.22h.38a.77.77 0 0 1 .53.22l5.13 5.14a.5.5 0 0 1 0 .71l-.71.71a.49.49 0 0 1-.7 0L12 10.33l-4.44 4.45a.5.5 0 0 1-.71 0l-.7-.71a.5.5 0 0 1 0-.71z"
|
|
6994
6994
|
}, null, -1)
|
|
6995
6995
|
])]);
|
|
6996
6996
|
}
|
|
6997
|
-
const IconChevronUp = { render: render$
|
|
6998
|
-
const _hoisted_1$
|
|
6999
|
-
const _hoisted_2$
|
|
6997
|
+
const IconChevronUp = { render: render$a };
|
|
6998
|
+
const _hoisted_1$q = ["id", "aria-expanded", "aria-hidden"];
|
|
6999
|
+
const _hoisted_2$e = {
|
|
7000
7000
|
"aria-hidden": "true",
|
|
7001
7001
|
class: "ui-v1-infobox__media"
|
|
7002
7002
|
};
|
|
7003
|
-
const _hoisted_3$
|
|
7004
|
-
const _hoisted_4$
|
|
7005
|
-
const _hoisted_5$
|
|
7003
|
+
const _hoisted_3$a = { class: "ui-v1-infobox__icon" };
|
|
7004
|
+
const _hoisted_4$4 = { class: "ui-v1-infobox__content" };
|
|
7005
|
+
const _hoisted_5$4 = {
|
|
7006
7006
|
key: 0,
|
|
7007
7007
|
class: "ui-v1-infobox__header"
|
|
7008
7008
|
};
|
|
7009
7009
|
const _hoisted_6$2 = ["id"];
|
|
7010
7010
|
const _hoisted_7$1 = ["aria-controls", "aria-expanded"];
|
|
7011
|
-
const _sfc_main$
|
|
7011
|
+
const _sfc_main$F = /* @__PURE__ */ defineComponent({
|
|
7012
7012
|
...{
|
|
7013
7013
|
inheritAttrs: false
|
|
7014
7014
|
},
|
|
@@ -7145,7 +7145,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
7145
7145
|
syncExpandedFromProps();
|
|
7146
7146
|
});
|
|
7147
7147
|
return (_ctx, _cache) => {
|
|
7148
|
-
return openBlock(), createBlock(_sfc_main$
|
|
7148
|
+
return openBlock(), createBlock(_sfc_main$12, {
|
|
7149
7149
|
name: "fade",
|
|
7150
7150
|
onAfterEnter,
|
|
7151
7151
|
onAfterLeave,
|
|
@@ -7165,8 +7165,8 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
7165
7165
|
},
|
|
7166
7166
|
role: "alert"
|
|
7167
7167
|
}, rootAttrs.value), [
|
|
7168
|
-
createElementVNode("div", _hoisted_2$
|
|
7169
|
-
createElementVNode("div", _hoisted_3$
|
|
7168
|
+
createElementVNode("div", _hoisted_2$e, [
|
|
7169
|
+
createElementVNode("div", _hoisted_3$a, [
|
|
7170
7170
|
renderSlot(_ctx.$slots, "icon", {
|
|
7171
7171
|
expanded: state.shouldBeExpanded
|
|
7172
7172
|
}, () => [
|
|
@@ -7174,8 +7174,8 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
7174
7174
|
])
|
|
7175
7175
|
])
|
|
7176
7176
|
]),
|
|
7177
|
-
createElementVNode("div", _hoisted_4$
|
|
7178
|
-
hasHeader.value ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
7177
|
+
createElementVNode("div", _hoisted_4$4, [
|
|
7178
|
+
hasHeader.value ? (openBlock(), createElementBlock("div", _hoisted_5$4, [
|
|
7179
7179
|
hasTitle.value ? (openBlock(), createElementBlock("div", {
|
|
7180
7180
|
key: 0,
|
|
7181
7181
|
id: titleId.value,
|
|
@@ -7211,7 +7211,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
7211
7211
|
}))
|
|
7212
7212
|
], 8, _hoisted_7$1)) : createCommentVNode("", true)
|
|
7213
7213
|
])) : createCommentVNode("", true),
|
|
7214
|
-
createVNode(_sfc_main$
|
|
7214
|
+
createVNode(_sfc_main$S, {
|
|
7215
7215
|
id: bodyId.value,
|
|
7216
7216
|
"aria-labelledby": hasTitle.value ? titleId.value : void 0,
|
|
7217
7217
|
expanded: bodyExpanded.value,
|
|
@@ -7239,7 +7239,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
7239
7239
|
}, [
|
|
7240
7240
|
createVNode(unref(IconClear), { class: "ui-v1-infobox__closer-icon" })
|
|
7241
7241
|
])) : createCommentVNode("", true)
|
|
7242
|
-
], 16, _hoisted_1$
|
|
7242
|
+
], 16, _hoisted_1$q), [
|
|
7243
7243
|
[vShow, state.shouldBeShown]
|
|
7244
7244
|
])
|
|
7245
7245
|
]),
|
|
@@ -7248,28 +7248,28 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
|
7248
7248
|
};
|
|
7249
7249
|
}
|
|
7250
7250
|
});
|
|
7251
|
-
const _hoisted_1$
|
|
7251
|
+
const _hoisted_1$p = {
|
|
7252
7252
|
xmlns: "http://www.w3.org/2000/svg",
|
|
7253
7253
|
viewBox: "0 0 24 24"
|
|
7254
7254
|
};
|
|
7255
|
-
function render$
|
|
7256
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
7255
|
+
function render$9(_ctx, _cache) {
|
|
7256
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$p, [..._cache[0] || (_cache[0] = [
|
|
7257
7257
|
createElementVNode("path", {
|
|
7258
7258
|
fill: "currentColor",
|
|
7259
7259
|
d: "m6.844 17.854-.7-.703a.5.5 0 0 1 0-.704l8.48-8.456-6.212.007a.49.49 0 0 1-.496-.5l.007-.991a.5.5 0 0 1 .496-.5L16.994 6c.196 0 .385.078.524.218l.265.267c.137.142.215.33.217.528l-.007 8.633a.5.5 0 0 1-.496.5h-.992a.48.48 0 0 1-.49-.493l.007-6.255-8.48 8.456a.49.49 0 0 1-.698 0"
|
|
7260
7260
|
}, null, -1)
|
|
7261
7261
|
])]);
|
|
7262
7262
|
}
|
|
7263
|
-
const IconOpenInNew = { render: render$
|
|
7264
|
-
var APPEARANCE$
|
|
7263
|
+
const IconOpenInNew = { render: render$9 };
|
|
7264
|
+
var APPEARANCE$3 = /* @__PURE__ */ ((APPEARANCE2) => {
|
|
7265
7265
|
APPEARANCE2["BREADCRUMBS"] = "breadcrumbs";
|
|
7266
7266
|
APPEARANCE2["DEFAULT"] = "default";
|
|
7267
7267
|
APPEARANCE2["NAVIGATION"] = "navigation";
|
|
7268
7268
|
APPEARANCE2["NAVIGATION_ANCHOR"] = "navigation-anchor";
|
|
7269
7269
|
APPEARANCE2["TITLE"] = "title";
|
|
7270
7270
|
return APPEARANCE2;
|
|
7271
|
-
})(APPEARANCE$
|
|
7272
|
-
var SIZE$
|
|
7271
|
+
})(APPEARANCE$3 || {});
|
|
7272
|
+
var SIZE$5 = /* @__PURE__ */ ((SIZE2) => {
|
|
7273
7273
|
SIZE2["ARTICLE"] = "article";
|
|
7274
7274
|
SIZE2["BODY"] = "body";
|
|
7275
7275
|
SIZE2["PARAGRAPH"] = "paragraph";
|
|
@@ -7278,17 +7278,17 @@ var SIZE$3 = /* @__PURE__ */ ((SIZE2) => {
|
|
|
7278
7278
|
SIZE2["TITLE01"] = "title-01";
|
|
7279
7279
|
SIZE2["TITLE02"] = "title-02";
|
|
7280
7280
|
return SIZE2;
|
|
7281
|
-
})(SIZE$
|
|
7282
|
-
const _hoisted_1$
|
|
7283
|
-
const _hoisted_2$
|
|
7281
|
+
})(SIZE$5 || {});
|
|
7282
|
+
const _hoisted_1$o = ["href", "target"];
|
|
7283
|
+
const _hoisted_2$d = {
|
|
7284
7284
|
key: 0,
|
|
7285
7285
|
class: "ui-v1-link__inner"
|
|
7286
7286
|
};
|
|
7287
|
-
const _hoisted_3$
|
|
7287
|
+
const _hoisted_3$9 = {
|
|
7288
7288
|
key: 2,
|
|
7289
7289
|
class: "ui-v1-link__icon"
|
|
7290
7290
|
};
|
|
7291
|
-
const _sfc_main$
|
|
7291
|
+
const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
7292
7292
|
__name: "UiLink",
|
|
7293
7293
|
props: {
|
|
7294
7294
|
/** Атрибут ссылки */
|
|
@@ -7308,14 +7308,14 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
7308
7308
|
/** Тип ссылок */
|
|
7309
7309
|
appearance: {
|
|
7310
7310
|
type: String,
|
|
7311
|
-
validator: (appearance) => Object.values(APPEARANCE$
|
|
7312
|
-
default: APPEARANCE$
|
|
7311
|
+
validator: (appearance) => Object.values(APPEARANCE$3).includes(appearance),
|
|
7312
|
+
default: APPEARANCE$3.DEFAULT
|
|
7313
7313
|
},
|
|
7314
7314
|
/** Размер текста */
|
|
7315
7315
|
size: {
|
|
7316
7316
|
type: String,
|
|
7317
|
-
validator: (size) => Object.values(SIZE$
|
|
7318
|
-
default: SIZE$
|
|
7317
|
+
validator: (size) => Object.values(SIZE$5).includes(size),
|
|
7318
|
+
default: SIZE$5.BODY
|
|
7319
7319
|
},
|
|
7320
7320
|
/** Инвертированный цвет ссылок для тёмного фона */
|
|
7321
7321
|
light: {
|
|
@@ -7357,19 +7357,19 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
7357
7357
|
},
|
|
7358
7358
|
target: __props.external ? "_blank" : "_self"
|
|
7359
7359
|
}, _ctx.$attrs), [
|
|
7360
|
-
__props.dotted ? (openBlock(), createElementBlock("span", _hoisted_2$
|
|
7360
|
+
__props.dotted ? (openBlock(), createElementBlock("span", _hoisted_2$d, [
|
|
7361
7361
|
renderSlot(_ctx.$slots, "default")
|
|
7362
7362
|
])) : renderSlot(_ctx.$slots, "default", { key: 1 }),
|
|
7363
|
-
_ctx.$slots.icon || __props.external ? (openBlock(), createElementBlock("span", _hoisted_3$
|
|
7363
|
+
_ctx.$slots.icon || __props.external ? (openBlock(), createElementBlock("span", _hoisted_3$9, [
|
|
7364
7364
|
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
7365
7365
|
createVNode(unref(IconOpenInNew), { class: "ui-v1-link__icon-sprite" })
|
|
7366
7366
|
])
|
|
7367
7367
|
])) : createCommentVNode("", true)
|
|
7368
|
-
], 16, _hoisted_1$
|
|
7368
|
+
], 16, _hoisted_1$o);
|
|
7369
7369
|
};
|
|
7370
7370
|
}
|
|
7371
7371
|
});
|
|
7372
|
-
const _sfc_main$
|
|
7372
|
+
const _sfc_main$D = /* @__PURE__ */ defineComponent({
|
|
7373
7373
|
__name: "UiLoader",
|
|
7374
7374
|
props: {
|
|
7375
7375
|
/** Диаметр (размер) окружности индикатора */
|
|
@@ -7401,7 +7401,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
|
|
|
7401
7401
|
},
|
|
7402
7402
|
setup(__props) {
|
|
7403
7403
|
return (_ctx, _cache) => {
|
|
7404
|
-
return openBlock(), createBlock(resolveDynamicComponent(__props.transition ? _sfc_main$
|
|
7404
|
+
return openBlock(), createBlock(resolveDynamicComponent(__props.transition ? _sfc_main$12 : "div"), normalizeProps(guardReactiveProps(__props.transition ? {
|
|
7405
7405
|
appear: true,
|
|
7406
7406
|
class: "ui-v1-loader-wrapper",
|
|
7407
7407
|
name: __props.transition
|
|
@@ -7435,27 +7435,27 @@ const _export_sfc = (sfc, props) => {
|
|
|
7435
7435
|
}
|
|
7436
7436
|
return target;
|
|
7437
7437
|
};
|
|
7438
|
-
const _sfc_main$
|
|
7439
|
-
const _hoisted_1$
|
|
7440
|
-
const _hoisted_2$
|
|
7441
|
-
const _hoisted_3$
|
|
7438
|
+
const _sfc_main$C = {};
|
|
7439
|
+
const _hoisted_1$n = { class: "ui-v1-menu-item-group" };
|
|
7440
|
+
const _hoisted_2$c = { class: "ui-v1-menu-item-group__head" };
|
|
7441
|
+
const _hoisted_3$8 = {
|
|
7442
7442
|
key: 0,
|
|
7443
7443
|
class: "ui-v1-menu-item-group__head-option"
|
|
7444
7444
|
};
|
|
7445
|
-
const _hoisted_4$
|
|
7445
|
+
const _hoisted_4$3 = {
|
|
7446
7446
|
key: 1,
|
|
7447
7447
|
class: "ui-v1-menu-item-group__head-inner"
|
|
7448
7448
|
};
|
|
7449
|
-
const _hoisted_5$
|
|
7449
|
+
const _hoisted_5$3 = {
|
|
7450
7450
|
key: 0,
|
|
7451
7451
|
class: "ui-v1-menu-item-group__count"
|
|
7452
7452
|
};
|
|
7453
7453
|
function _sfc_render(_ctx, _cache) {
|
|
7454
|
-
return openBlock(), createElementBlock("div", _hoisted_1$
|
|
7455
|
-
createElementVNode("div", _hoisted_2$
|
|
7456
|
-
_ctx.$slots.option ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
7454
|
+
return openBlock(), createElementBlock("div", _hoisted_1$n, [
|
|
7455
|
+
createElementVNode("div", _hoisted_2$c, [
|
|
7456
|
+
_ctx.$slots.option ? (openBlock(), createElementBlock("div", _hoisted_3$8, [
|
|
7457
7457
|
renderSlot(_ctx.$slots, "option")
|
|
7458
|
-
])) : (openBlock(), createElementBlock("div", _hoisted_4$
|
|
7458
|
+
])) : (openBlock(), createElementBlock("div", _hoisted_4$3, [
|
|
7459
7459
|
createElementVNode("div", {
|
|
7460
7460
|
class: normalizeClass({
|
|
7461
7461
|
"ui-v1-menu-item-group__title": true,
|
|
@@ -7464,7 +7464,7 @@ function _sfc_render(_ctx, _cache) {
|
|
|
7464
7464
|
}, [
|
|
7465
7465
|
renderSlot(_ctx.$slots, "label")
|
|
7466
7466
|
], 2),
|
|
7467
|
-
_ctx.$slots.quantity ? (openBlock(), createElementBlock("div", _hoisted_5$
|
|
7467
|
+
_ctx.$slots.quantity ? (openBlock(), createElementBlock("div", _hoisted_5$3, [
|
|
7468
7468
|
renderSlot(_ctx.$slots, "quantity")
|
|
7469
7469
|
])) : createCommentVNode("", true)
|
|
7470
7470
|
]))
|
|
@@ -7472,7 +7472,7 @@ function _sfc_render(_ctx, _cache) {
|
|
|
7472
7472
|
renderSlot(_ctx.$slots, "default")
|
|
7473
7473
|
]);
|
|
7474
7474
|
}
|
|
7475
|
-
const UiMenuItemGroup = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
7475
|
+
const UiMenuItemGroup = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["render", _sfc_render]]);
|
|
7476
7476
|
class LayerRegistry {
|
|
7477
7477
|
registry;
|
|
7478
7478
|
started = false;
|
|
@@ -7544,8 +7544,8 @@ const plugin = {
|
|
|
7544
7544
|
}
|
|
7545
7545
|
};
|
|
7546
7546
|
const nextAnimationFrame = async () => new Promise((resolve) => requestAnimationFrame(resolve));
|
|
7547
|
-
let counter$
|
|
7548
|
-
const uid = (prefix) => `${prefix}-${++counter$
|
|
7547
|
+
let counter$2 = 0;
|
|
7548
|
+
const uid = (prefix) => `${prefix}-${++counter$2}`;
|
|
7549
7549
|
var CLOSE_METHOD = /* @__PURE__ */ ((CLOSE_METHOD2) => {
|
|
7550
7550
|
CLOSE_METHOD2["CLICK_CROSS"] = "Cross";
|
|
7551
7551
|
CLOSE_METHOD2["CLICK_OUTSIDE"] = "Outside";
|
|
@@ -7563,16 +7563,16 @@ var SCROLLING$1 = /* @__PURE__ */ ((SCROLLING2) => {
|
|
|
7563
7563
|
SCROLLING2["NONE"] = "none";
|
|
7564
7564
|
return SCROLLING2;
|
|
7565
7565
|
})(SCROLLING$1 || {});
|
|
7566
|
-
var SIZE$
|
|
7566
|
+
var SIZE$4 = /* @__PURE__ */ ((SIZE2) => {
|
|
7567
7567
|
SIZE2["LG"] = "lg";
|
|
7568
7568
|
SIZE2["SM"] = "sm";
|
|
7569
7569
|
return SIZE2;
|
|
7570
|
-
})(SIZE$
|
|
7571
|
-
const _hoisted_1$
|
|
7572
|
-
const _hoisted_2$
|
|
7573
|
-
const _hoisted_3$
|
|
7574
|
-
const _hoisted_4$
|
|
7575
|
-
const _hoisted_5$
|
|
7570
|
+
})(SIZE$4 || {});
|
|
7571
|
+
const _hoisted_1$m = ["id", "aria-hidden", "role"];
|
|
7572
|
+
const _hoisted_2$b = ["id"];
|
|
7573
|
+
const _hoisted_3$7 = { class: "ui-v1-modal-sidebar__header" };
|
|
7574
|
+
const _hoisted_4$2 = { class: "ui-v1-modal-sidebar__header-inner" };
|
|
7575
|
+
const _hoisted_5$2 = {
|
|
7576
7576
|
"aria-level": "1",
|
|
7577
7577
|
class: "ui-v1-modal-sidebar__title",
|
|
7578
7578
|
role: "heading"
|
|
@@ -7586,7 +7586,7 @@ const _hoisted_8 = {
|
|
|
7586
7586
|
key: 2,
|
|
7587
7587
|
class: "ui-v1-modal-sidebar__footer"
|
|
7588
7588
|
};
|
|
7589
|
-
const _sfc_main$
|
|
7589
|
+
const _sfc_main$B = /* @__PURE__ */ defineComponent({
|
|
7590
7590
|
...{
|
|
7591
7591
|
inheritAttrs: false
|
|
7592
7592
|
},
|
|
@@ -7632,7 +7632,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7632
7632
|
/** Размер панели */
|
|
7633
7633
|
size: {
|
|
7634
7634
|
type: String,
|
|
7635
|
-
default: SIZE$
|
|
7635
|
+
default: SIZE$4.SM
|
|
7636
7636
|
},
|
|
7637
7637
|
/** ARIA-роль модального контейнера */
|
|
7638
7638
|
role: {
|
|
@@ -7812,7 +7812,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7812
7812
|
key: 0,
|
|
7813
7813
|
to: unref(globals)?.container || "body"
|
|
7814
7814
|
}, [
|
|
7815
|
-
createVNode(_sfc_main$
|
|
7815
|
+
createVNode(_sfc_main$12, {
|
|
7816
7816
|
name: "fade-2",
|
|
7817
7817
|
onBeforeEnter: _cache[5] || (_cache[5] = ($event) => visibilityOfOverlay.value = "showing"),
|
|
7818
7818
|
onAfterEnter: _cache[6] || (_cache[6] = ($event) => visibilityOfOverlay.value = "shown"),
|
|
@@ -7833,7 +7833,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7833
7833
|
"aria-modal": "true",
|
|
7834
7834
|
role: __props.role
|
|
7835
7835
|
}, _ctx.$attrs, { onClick: onBackdropClick }), [
|
|
7836
|
-
createVNode(_sfc_main$
|
|
7836
|
+
createVNode(_sfc_main$12, {
|
|
7837
7837
|
name: `slide-${__props.direction}`,
|
|
7838
7838
|
onBeforeEnter: _cache[1] || (_cache[1] = ($event) => visibilityOfSidebar.value = "showing"),
|
|
7839
7839
|
onAfterEnter: _cache[2] || (_cache[2] = ($event) => visibilityOfSidebar.value = "shown"),
|
|
@@ -7848,13 +7848,13 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7848
7848
|
"ui-v1-modal-sidebar": true,
|
|
7849
7849
|
"ui-v1-modal-sidebar_fixed": __props.fixed,
|
|
7850
7850
|
"ui-v1-modal-sidebar_left": __props.direction === unref(DIRECTION$2).LEFT,
|
|
7851
|
-
"ui-v1-modal-sidebar_size_sm": __props.size === unref(SIZE$
|
|
7852
|
-
"ui-v1-modal-sidebar_size_lg": __props.size === unref(SIZE$
|
|
7851
|
+
"ui-v1-modal-sidebar_size_sm": __props.size === unref(SIZE$4).SM,
|
|
7852
|
+
"ui-v1-modal-sidebar_size_lg": __props.size === unref(SIZE$4).LG
|
|
7853
7853
|
})
|
|
7854
7854
|
}, [
|
|
7855
|
-
createElementVNode("header", _hoisted_3$
|
|
7856
|
-
createElementVNode("div", _hoisted_4$
|
|
7857
|
-
createElementVNode("div", _hoisted_5$
|
|
7855
|
+
createElementVNode("header", _hoisted_3$7, [
|
|
7856
|
+
createElementVNode("div", _hoisted_4$2, [
|
|
7857
|
+
createElementVNode("div", _hoisted_5$2, [
|
|
7858
7858
|
renderSlot(_ctx.$slots, "title", {
|
|
7859
7859
|
overlapped: state.overlapped
|
|
7860
7860
|
})
|
|
@@ -7874,7 +7874,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7874
7874
|
"aria-hidden": "true",
|
|
7875
7875
|
width: "32"
|
|
7876
7876
|
}),
|
|
7877
|
-
createVNode(_sfc_main$
|
|
7877
|
+
createVNode(_sfc_main$O, {
|
|
7878
7878
|
target: closerTarget.value,
|
|
7879
7879
|
"offset-main-axis": 0
|
|
7880
7880
|
}, {
|
|
@@ -7889,7 +7889,7 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7889
7889
|
renderSlot(_ctx.$slots, "default", {
|
|
7890
7890
|
overlapped: state.overlapped
|
|
7891
7891
|
})
|
|
7892
|
-
])) : (openBlock(), createBlock(_sfc_main$
|
|
7892
|
+
])) : (openBlock(), createBlock(_sfc_main$J, {
|
|
7893
7893
|
key: 1,
|
|
7894
7894
|
native: __props.scrolling === unref(SCROLLING$1).NATIVE,
|
|
7895
7895
|
class: "ui-v1-modal-sidebar__body",
|
|
@@ -7908,11 +7908,11 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7908
7908
|
overlapped: state.overlapped
|
|
7909
7909
|
})
|
|
7910
7910
|
])) : createCommentVNode("", true)
|
|
7911
|
-
], 10, _hoisted_2$
|
|
7911
|
+
], 10, _hoisted_2$b)) : createCommentVNode("", true)
|
|
7912
7912
|
]),
|
|
7913
7913
|
_: 3
|
|
7914
7914
|
}, 8, ["name"])
|
|
7915
|
-
], 16, _hoisted_1$
|
|
7915
|
+
], 16, _hoisted_1$m), [
|
|
7916
7916
|
[vShow, state.shown]
|
|
7917
7917
|
])
|
|
7918
7918
|
]),
|
|
@@ -7922,19 +7922,19 @@ const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
|
7922
7922
|
};
|
|
7923
7923
|
}
|
|
7924
7924
|
});
|
|
7925
|
-
var APPEARANCE = /* @__PURE__ */ ((APPEARANCE2) => {
|
|
7925
|
+
var APPEARANCE$2 = /* @__PURE__ */ ((APPEARANCE2) => {
|
|
7926
7926
|
APPEARANCE2["ALERT"] = "alert";
|
|
7927
7927
|
APPEARANCE2["DIALOG"] = "dialog";
|
|
7928
7928
|
APPEARANCE2["POPUP"] = "popup";
|
|
7929
7929
|
APPEARANCE2["HINT"] = "hint";
|
|
7930
7930
|
return APPEARANCE2;
|
|
7931
|
-
})(APPEARANCE || {});
|
|
7931
|
+
})(APPEARANCE$2 || {});
|
|
7932
7932
|
var SCROLLING = /* @__PURE__ */ ((SCROLLING2) => {
|
|
7933
7933
|
SCROLLING2["NORMAL"] = "normal";
|
|
7934
7934
|
SCROLLING2["NATIVE"] = "native";
|
|
7935
7935
|
return SCROLLING2;
|
|
7936
7936
|
})(SCROLLING || {});
|
|
7937
|
-
const _sfc_main$
|
|
7937
|
+
const _sfc_main$A = /* @__PURE__ */ defineComponent({
|
|
7938
7938
|
__name: "UiModalWindowSurface",
|
|
7939
7939
|
props: {
|
|
7940
7940
|
/** Атрибут id корневого элемента модального окна. Должен быть уникальным на странице */
|
|
@@ -7955,8 +7955,8 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
7955
7955
|
/** Внешний вид */
|
|
7956
7956
|
appearance: {
|
|
7957
7957
|
type: String,
|
|
7958
|
-
validator: (appearance) => expect(appearance).toBeOneOf(APPEARANCE),
|
|
7959
|
-
default: APPEARANCE.POPUP
|
|
7958
|
+
validator: (appearance) => expect(appearance).toBeOneOf(APPEARANCE$2),
|
|
7959
|
+
default: APPEARANCE$2.POPUP
|
|
7960
7960
|
},
|
|
7961
7961
|
/** Вывод на весь экран */
|
|
7962
7962
|
fullscreen: {
|
|
@@ -8154,7 +8154,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
8154
8154
|
const slots = useSlots();
|
|
8155
8155
|
const renderBody = () => {
|
|
8156
8156
|
const appearance = props.appearance;
|
|
8157
|
-
return h(_sfc_main$
|
|
8157
|
+
return h(_sfc_main$12, {
|
|
8158
8158
|
name: "zoom",
|
|
8159
8159
|
onBeforeEnter: () => visibilityOfBody.value = "showing",
|
|
8160
8160
|
onAfterEnter: () => visibilityOfBody.value = "shown",
|
|
@@ -8164,10 +8164,10 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
8164
8164
|
ref: body,
|
|
8165
8165
|
class: {
|
|
8166
8166
|
"ui-v1-modal-window": true,
|
|
8167
|
-
"ui-v1-modal-window_alert": appearance === APPEARANCE.ALERT,
|
|
8168
|
-
"ui-v1-modal-window_dialog": appearance === APPEARANCE.DIALOG,
|
|
8169
|
-
"ui-v1-modal-window_popup": appearance === APPEARANCE.POPUP,
|
|
8170
|
-
"ui-v1-modal-window_hint": appearance === APPEARANCE.HINT,
|
|
8167
|
+
"ui-v1-modal-window_alert": appearance === APPEARANCE$2.ALERT,
|
|
8168
|
+
"ui-v1-modal-window_dialog": appearance === APPEARANCE$2.DIALOG,
|
|
8169
|
+
"ui-v1-modal-window_popup": appearance === APPEARANCE$2.POPUP,
|
|
8170
|
+
"ui-v1-modal-window_hint": appearance === APPEARANCE$2.HINT,
|
|
8171
8171
|
"ui-v1-popper-container": true
|
|
8172
8172
|
}
|
|
8173
8173
|
}, slots) : []);
|
|
@@ -8179,7 +8179,7 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
8179
8179
|
};
|
|
8180
8180
|
const EmbedModalWindowSurface = () => !state.attached ? void 0 : h(Teleport, {
|
|
8181
8181
|
to: globals?.container ?? document.body
|
|
8182
|
-
}, h(_sfc_main$
|
|
8182
|
+
}, h(_sfc_main$12, {
|
|
8183
8183
|
name: "fade-2",
|
|
8184
8184
|
onBeforeEnter: () => visibilityOfOverlay.value = "showing",
|
|
8185
8185
|
onAfterEnter: () => visibilityOfOverlay.value = "shown",
|
|
@@ -8197,11 +8197,11 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
8197
8197
|
"ui-v1-modal_overlapped": state.overlapped
|
|
8198
8198
|
}],
|
|
8199
8199
|
onClick: onOverlayClick
|
|
8200
|
-
}, h(_sfc_main$
|
|
8200
|
+
}, h(_sfc_main$J, {
|
|
8201
8201
|
class: {
|
|
8202
8202
|
"ui-v1-modal-window-container": true,
|
|
8203
8203
|
"ui-v1-modal-window-container_fullscreen": props.fullscreen,
|
|
8204
|
-
"ui-v1-modal-window-container_responsive": props.responsive && props.appearance === APPEARANCE.POPUP
|
|
8204
|
+
"ui-v1-modal-window-container_responsive": props.responsive && props.appearance === APPEARANCE$2.POPUP
|
|
8205
8205
|
},
|
|
8206
8206
|
showOnMac: true,
|
|
8207
8207
|
native: props.scrolling === SCROLLING.NATIVE,
|
|
@@ -8221,12 +8221,12 @@ const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
|
8221
8221
|
};
|
|
8222
8222
|
}
|
|
8223
8223
|
});
|
|
8224
|
-
const _hoisted_1$
|
|
8224
|
+
const _hoisted_1$l = {
|
|
8225
8225
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8226
8226
|
viewBox: "0 0 24 24"
|
|
8227
8227
|
};
|
|
8228
|
-
function render$
|
|
8229
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
8228
|
+
function render$8(_ctx, _cache) {
|
|
8229
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$l, [..._cache[0] || (_cache[0] = [
|
|
8230
8230
|
createElementVNode("path", {
|
|
8231
8231
|
fill: "currentColor",
|
|
8232
8232
|
"fill-rule": "evenodd",
|
|
@@ -8235,18 +8235,18 @@ function render$6(_ctx, _cache) {
|
|
|
8235
8235
|
}, null, -1)
|
|
8236
8236
|
])]);
|
|
8237
8237
|
}
|
|
8238
|
-
const IconWarning = { render: render$
|
|
8239
|
-
const _hoisted_1$
|
|
8238
|
+
const IconWarning = { render: render$8 };
|
|
8239
|
+
const _hoisted_1$k = {
|
|
8240
8240
|
key: 0,
|
|
8241
8241
|
class: "ui-v1-modal-window__icon"
|
|
8242
8242
|
};
|
|
8243
|
-
const _hoisted_2$
|
|
8244
|
-
const _hoisted_3$
|
|
8245
|
-
const _hoisted_4 = {
|
|
8243
|
+
const _hoisted_2$a = ["id"];
|
|
8244
|
+
const _hoisted_3$6 = ["disabled"];
|
|
8245
|
+
const _hoisted_4$1 = {
|
|
8246
8246
|
key: 1,
|
|
8247
8247
|
class: "ui-v1-modal-window__content"
|
|
8248
8248
|
};
|
|
8249
|
-
const _hoisted_5 = {
|
|
8249
|
+
const _hoisted_5$1 = {
|
|
8250
8250
|
key: 2,
|
|
8251
8251
|
class: "ui-v1-modal-window__footer"
|
|
8252
8252
|
};
|
|
@@ -8254,7 +8254,7 @@ const _hoisted_6 = {
|
|
|
8254
8254
|
key: 0,
|
|
8255
8255
|
class: "ui-v1-modal-window__footer-text"
|
|
8256
8256
|
};
|
|
8257
|
-
const _sfc_main$
|
|
8257
|
+
const _sfc_main$z = /* @__PURE__ */ defineComponent({
|
|
8258
8258
|
__name: "UiModalWindow",
|
|
8259
8259
|
props: {
|
|
8260
8260
|
/** Атрибут id корневого элемента модального окна. Должен быть уникальным на странице */
|
|
@@ -8275,8 +8275,8 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
8275
8275
|
/** Внешний вид: алерт, диалог, popup, hint */
|
|
8276
8276
|
appearance: {
|
|
8277
8277
|
type: String,
|
|
8278
|
-
validator: (value) => expect(value).toBeOneOf(APPEARANCE),
|
|
8279
|
-
default: APPEARANCE.POPUP
|
|
8278
|
+
validator: (value) => expect(value).toBeOneOf(APPEARANCE$2),
|
|
8279
|
+
default: APPEARANCE$2.POPUP
|
|
8280
8280
|
},
|
|
8281
8281
|
/** Время, через которое плавающий элемент удаляется со страницы, если был скрыт */
|
|
8282
8282
|
disposeTimeout: {
|
|
@@ -8374,7 +8374,7 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
8374
8374
|
});
|
|
8375
8375
|
watch(() => props.opened, toggle);
|
|
8376
8376
|
return (_ctx, _cache) => {
|
|
8377
|
-
return openBlock(), createBlock(_sfc_main$
|
|
8377
|
+
return openBlock(), createBlock(_sfc_main$A, mergeProps({
|
|
8378
8378
|
id: __props.id,
|
|
8379
8379
|
opened: state.opened,
|
|
8380
8380
|
closable: __props.closable,
|
|
@@ -8400,10 +8400,10 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
8400
8400
|
createElementVNode("div", {
|
|
8401
8401
|
class: normalizeClass({
|
|
8402
8402
|
"ui-v1-modal-window__header": true,
|
|
8403
|
-
"ui-v1-modal-window__header_pinned": _ctx.$slots.title && state.scrolled && __props.appearance === unref(APPEARANCE).POPUP && !__props.responsive
|
|
8403
|
+
"ui-v1-modal-window__header_pinned": _ctx.$slots.title && state.scrolled && __props.appearance === unref(APPEARANCE$2).POPUP && !__props.responsive
|
|
8404
8404
|
})
|
|
8405
8405
|
}, [
|
|
8406
|
-
__props.appearance === unref(APPEARANCE).ALERT ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
8406
|
+
__props.appearance === unref(APPEARANCE$2).ALERT ? (openBlock(), createElementBlock("div", _hoisted_1$k, [
|
|
8407
8407
|
renderSlot(_ctx.$slots, "icon", {
|
|
8408
8408
|
overlapped: state.overlapped
|
|
8409
8409
|
}, () => [
|
|
@@ -8418,8 +8418,8 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
8418
8418
|
renderSlot(_ctx.$slots, "title", {
|
|
8419
8419
|
overlapped: state.overlapped
|
|
8420
8420
|
})
|
|
8421
|
-
], 8, _hoisted_2$
|
|
8422
|
-
__props.appearance !== unref(APPEARANCE).ALERT ? (openBlock(), createElementBlock("button", {
|
|
8421
|
+
], 8, _hoisted_2$a)) : createCommentVNode("", true),
|
|
8422
|
+
__props.appearance !== unref(APPEARANCE$2).ALERT ? (openBlock(), createElementBlock("button", {
|
|
8423
8423
|
key: 2,
|
|
8424
8424
|
"aria-keyshortcuts": "Esc",
|
|
8425
8425
|
"aria-label": "Close dialog",
|
|
@@ -8432,9 +8432,9 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
8432
8432
|
title: "Close dialog",
|
|
8433
8433
|
style: { "width": "100%" }
|
|
8434
8434
|
})
|
|
8435
|
-
], 8, _hoisted_3$
|
|
8435
|
+
], 8, _hoisted_3$6)) : createCommentVNode("", true)
|
|
8436
8436
|
], 2),
|
|
8437
|
-
__props.responsive ? (openBlock(), createBlock(_sfc_main$
|
|
8437
|
+
__props.responsive ? (openBlock(), createBlock(_sfc_main$J, {
|
|
8438
8438
|
key: 0,
|
|
8439
8439
|
class: "ui-v1-modal-window__content",
|
|
8440
8440
|
"show-on-mac": "",
|
|
@@ -8446,13 +8446,13 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
8446
8446
|
})
|
|
8447
8447
|
]),
|
|
8448
8448
|
_: 3
|
|
8449
|
-
})) : (openBlock(), createElementBlock("div", _hoisted_4, [
|
|
8449
|
+
})) : (openBlock(), createElementBlock("div", _hoisted_4$1, [
|
|
8450
8450
|
renderSlot(_ctx.$slots, "default", {
|
|
8451
8451
|
overlapped: state.overlapped
|
|
8452
8452
|
})
|
|
8453
8453
|
])),
|
|
8454
|
-
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_5, [
|
|
8455
|
-
__props.appearance === unref(APPEARANCE).HINT ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
|
8454
|
+
_ctx.$slots.footer ? (openBlock(), createElementBlock("div", _hoisted_5$1, [
|
|
8455
|
+
__props.appearance === unref(APPEARANCE$2).HINT ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
|
8456
8456
|
renderSlot(_ctx.$slots, "footer", {
|
|
8457
8457
|
overlapped: state.overlapped
|
|
8458
8458
|
})
|
|
@@ -8467,58 +8467,58 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
|
8467
8467
|
};
|
|
8468
8468
|
}
|
|
8469
8469
|
});
|
|
8470
|
-
const _hoisted_1$
|
|
8470
|
+
const _hoisted_1$j = {
|
|
8471
8471
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8472
8472
|
viewBox: "0 0 24 24"
|
|
8473
8473
|
};
|
|
8474
|
-
function render$
|
|
8475
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
8474
|
+
function render$7(_ctx, _cache) {
|
|
8475
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$j, [..._cache[0] || (_cache[0] = [
|
|
8476
8476
|
createElementVNode("path", {
|
|
8477
8477
|
fill: "currentColor",
|
|
8478
8478
|
d: "M19 11.5v1a.5.5 0 0 1-.5.5H13v5.5a.5.5 0 0 1-.5.5h-1a.5.5 0 0 1-.5-.5V13H5.5a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5H11V5.5a.5.5 0 0 1 .5-.5h1a.5.5 0 0 1 .5.5V11h5.5a.5.5 0 0 1 .5.5"
|
|
8479
8479
|
}, null, -1)
|
|
8480
8480
|
])]);
|
|
8481
8481
|
}
|
|
8482
|
-
const IconAdd = { render: render$
|
|
8483
|
-
const _hoisted_1$
|
|
8482
|
+
const IconAdd = { render: render$7 };
|
|
8483
|
+
const _hoisted_1$i = {
|
|
8484
8484
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8485
8485
|
viewBox: "0 0 24 24"
|
|
8486
8486
|
};
|
|
8487
|
-
function render$
|
|
8488
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
8487
|
+
function render$6(_ctx, _cache) {
|
|
8488
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$i, [..._cache[0] || (_cache[0] = [
|
|
8489
8489
|
createElementVNode("path", {
|
|
8490
8490
|
fill: "currentColor",
|
|
8491
8491
|
d: "M8.138 11.06A.52.52 0 0 1 8 10.705c0-.133.05-.261.138-.355l.187-.2A.44.44 0 0 1 8.66 10h6.68a.44.44 0 0 1 .335.15l.187.2a.52.52 0 0 1 .138.355c0 .133-.05.26-.138.355l-3.536 3.788A.43.43 0 0 1 12 15a.43.43 0 0 1-.326-.152z"
|
|
8492
8492
|
}, null, -1)
|
|
8493
8493
|
])]);
|
|
8494
8494
|
}
|
|
8495
|
-
const IconCaret = { render: render$
|
|
8496
|
-
const _hoisted_1$
|
|
8495
|
+
const IconCaret = { render: render$6 };
|
|
8496
|
+
const _hoisted_1$h = {
|
|
8497
8497
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8498
8498
|
viewBox: "0 0 24 24"
|
|
8499
8499
|
};
|
|
8500
|
-
function render$
|
|
8501
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
8500
|
+
function render$5(_ctx, _cache) {
|
|
8501
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$h, [..._cache[0] || (_cache[0] = [
|
|
8502
8502
|
createElementVNode("path", {
|
|
8503
8503
|
fill: "currentColor",
|
|
8504
8504
|
d: "M16.14 12.94a.5.5 0 0 1 0 .71l-.2.2a.5.5 0 0 1-.36.15H8.42a.5.5 0 0 1-.36-.15l-.2-.2a.5.5 0 0 1 0-.71l3.79-3.79a.48.48 0 0 1 .7 0z"
|
|
8505
8505
|
}, null, -1)
|
|
8506
8506
|
])]);
|
|
8507
8507
|
}
|
|
8508
|
-
const IconCaretUp = { render: render$
|
|
8509
|
-
const _hoisted_1$
|
|
8508
|
+
const IconCaretUp = { render: render$5 };
|
|
8509
|
+
const _hoisted_1$g = {
|
|
8510
8510
|
xmlns: "http://www.w3.org/2000/svg",
|
|
8511
8511
|
viewBox: "0 0 24 24"
|
|
8512
8512
|
};
|
|
8513
|
-
function render$
|
|
8514
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
8513
|
+
function render$4(_ctx, _cache) {
|
|
8514
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$g, [..._cache[0] || (_cache[0] = [
|
|
8515
8515
|
createElementVNode("path", {
|
|
8516
8516
|
fill: "currentColor",
|
|
8517
8517
|
d: "M5.5 13.25c-.276 0-.5-.28-.5-.625v-1.25c0-.345.224-.625.5-.625h13c.276 0 .5.28.5.625v1.25c0 .345-.224.625-.5.625z"
|
|
8518
8518
|
}, null, -1)
|
|
8519
8519
|
])]);
|
|
8520
8520
|
}
|
|
8521
|
-
const IconRemove = { render: render$
|
|
8521
|
+
const IconRemove = { render: render$4 };
|
|
8522
8522
|
var DIRECTION$1 = /* @__PURE__ */ ((DIRECTION2) => {
|
|
8523
8523
|
DIRECTION2["HORIZONTAL"] = "horizontal";
|
|
8524
8524
|
DIRECTION2["VERTICAL"] = "vertical";
|
|
@@ -8621,10 +8621,10 @@ const _i18n$3 = define({
|
|
|
8621
8621
|
"ru-RU": messages_ru_RU$3
|
|
8622
8622
|
}
|
|
8623
8623
|
});
|
|
8624
|
-
const _hoisted_1$
|
|
8625
|
-
const _hoisted_2$
|
|
8626
|
-
const _hoisted_3$
|
|
8627
|
-
const _sfc_main$
|
|
8624
|
+
const _hoisted_1$f = ["id", "aria-disabled", "aria-readonly"];
|
|
8625
|
+
const _hoisted_2$9 = ["id", "aria-controls", "aria-label", "disabled"];
|
|
8626
|
+
const _hoisted_3$5 = ["id", "aria-controls", "aria-label", "disabled"];
|
|
8627
|
+
const _sfc_main$y = /* @__PURE__ */ defineComponent({
|
|
8628
8628
|
...{
|
|
8629
8629
|
inheritAttrs: false
|
|
8630
8630
|
},
|
|
@@ -8686,8 +8686,8 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
8686
8686
|
},
|
|
8687
8687
|
size: {
|
|
8688
8688
|
type: String,
|
|
8689
|
-
validator: (value) => Object.values(SIZE$
|
|
8690
|
-
default: SIZE$
|
|
8689
|
+
validator: (value) => Object.values(SIZE$7).includes(value),
|
|
8690
|
+
default: SIZE$7.SM
|
|
8691
8691
|
},
|
|
8692
8692
|
outlined: {
|
|
8693
8693
|
type: Boolean,
|
|
@@ -8972,8 +8972,8 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
8972
8972
|
"aria-hidden": "true",
|
|
8973
8973
|
class: "ui-v1-number-stepper__icon"
|
|
8974
8974
|
}))
|
|
8975
|
-
], 8, _hoisted_2$
|
|
8976
|
-
createVNode(_sfc_main$
|
|
8975
|
+
], 8, _hoisted_2$9),
|
|
8976
|
+
createVNode(_sfc_main$L, mergeProps(resolvedTextboxOptions.value, {
|
|
8977
8977
|
id: stepperId.value,
|
|
8978
8978
|
ref_key: "textbox",
|
|
8979
8979
|
ref: textbox,
|
|
@@ -9012,75 +9012,458 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
9012
9012
|
"aria-hidden": "true",
|
|
9013
9013
|
class: "ui-v1-number-stepper__icon"
|
|
9014
9014
|
}))
|
|
9015
|
-
], 8, _hoisted_3$
|
|
9016
|
-
], 16, _hoisted_1$
|
|
9017
|
-
};
|
|
9018
|
-
}
|
|
9019
|
-
});
|
|
9020
|
-
const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
9021
|
-
__name: "UiPopperConnector",
|
|
9022
|
-
setup(__props) {
|
|
9023
|
-
const target = ref(null);
|
|
9024
|
-
provide(ElementRefKey, target);
|
|
9025
|
-
provide(PopperTargetKey, computed(() => target.value));
|
|
9026
|
-
return (_ctx, _cache) => {
|
|
9027
|
-
return renderSlot(_ctx.$slots, "default");
|
|
9028
|
-
};
|
|
9029
|
-
}
|
|
9030
|
-
});
|
|
9031
|
-
const _sfc_main$k = /* @__PURE__ */ defineComponent({
|
|
9032
|
-
__name: "UiPopperTarget",
|
|
9033
|
-
props: {
|
|
9034
|
-
tag: {
|
|
9035
|
-
type: String,
|
|
9036
|
-
default: "div"
|
|
9037
|
-
}
|
|
9038
|
-
},
|
|
9039
|
-
setup(__props) {
|
|
9040
|
-
const root = useElementRef();
|
|
9041
|
-
return (_ctx, _cache) => {
|
|
9042
|
-
return openBlock(), createBlock(resolveDynamicComponent(__props.tag), mergeProps({
|
|
9043
|
-
ref_key: "root",
|
|
9044
|
-
ref: root
|
|
9045
|
-
}, _ctx.$attrs), {
|
|
9046
|
-
default: withCtx(() => [
|
|
9047
|
-
renderSlot(_ctx.$slots, "default")
|
|
9048
|
-
]),
|
|
9049
|
-
_: 3
|
|
9050
|
-
}, 16);
|
|
9015
|
+
], 8, _hoisted_3$5)
|
|
9016
|
+
], 16, _hoisted_1$f);
|
|
9051
9017
|
};
|
|
9052
9018
|
}
|
|
9053
9019
|
});
|
|
9054
|
-
const _hoisted_1$
|
|
9055
|
-
|
|
9056
|
-
|
|
9057
|
-
const __default__$1 = {};
|
|
9058
|
-
const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
9059
|
-
...__default__$1,
|
|
9060
|
-
...{
|
|
9061
|
-
inheritAttrs: false
|
|
9062
|
-
},
|
|
9063
|
-
__name: "UiRadio",
|
|
9020
|
+
const _hoisted_1$e = ["id", "aria-label", "role", "tabindex", "onKeydown"];
|
|
9021
|
+
const _sfc_main$x = /* @__PURE__ */ defineComponent({
|
|
9022
|
+
__name: "UiPageHeaderTitle",
|
|
9064
9023
|
props: {
|
|
9024
|
+
/** Уникальный идентификатор корневого элемента */
|
|
9065
9025
|
id: {
|
|
9066
9026
|
type: null,
|
|
9067
9027
|
validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
|
|
9068
|
-
default: () => "ui-v1-radio-" + ++idCounter
|
|
9069
|
-
},
|
|
9070
|
-
/** Атрибут name нативного поля ввода */
|
|
9071
|
-
name: {
|
|
9072
|
-
type: String,
|
|
9073
|
-
default: () => "ui-v1-radio-" + ++nameCounter
|
|
9074
|
-
},
|
|
9075
|
-
/** Значение модели, используемое с директивой v-model */
|
|
9076
|
-
model: {
|
|
9077
|
-
type: null,
|
|
9078
9028
|
default: void 0
|
|
9079
9029
|
},
|
|
9080
|
-
/**
|
|
9030
|
+
/** Текст заголовка */
|
|
9081
9031
|
value: {
|
|
9082
9032
|
type: null,
|
|
9083
|
-
|
|
9033
|
+
default: ""
|
|
9034
|
+
},
|
|
9035
|
+
/** Плейсхолдер, отображаемый при отсутствии текста */
|
|
9036
|
+
placeholder: {
|
|
9037
|
+
type: String,
|
|
9038
|
+
default: ""
|
|
9039
|
+
},
|
|
9040
|
+
/** Текст ошибки для tooltip при пустом невалидном заголовке */
|
|
9041
|
+
error: {
|
|
9042
|
+
type: String,
|
|
9043
|
+
default: ""
|
|
9044
|
+
},
|
|
9045
|
+
/** Разрешает перейти в режим редактирования по клику */
|
|
9046
|
+
editable: {
|
|
9047
|
+
type: Boolean,
|
|
9048
|
+
default: false
|
|
9049
|
+
},
|
|
9050
|
+
/** Автоматически переводит фокус во встроенный UiTextbox при монтировании */
|
|
9051
|
+
autofocus: {
|
|
9052
|
+
type: Boolean,
|
|
9053
|
+
default: false
|
|
9054
|
+
},
|
|
9055
|
+
/** Автоматически выделяет текст заголовка при фокусе на встроенном поле */
|
|
9056
|
+
autoselect: {
|
|
9057
|
+
type: Boolean,
|
|
9058
|
+
default: true
|
|
9059
|
+
},
|
|
9060
|
+
/** Делает встроенное поле только для чтения */
|
|
9061
|
+
readonly: {
|
|
9062
|
+
type: Boolean,
|
|
9063
|
+
default: false
|
|
9064
|
+
},
|
|
9065
|
+
/** Полностью отключает заголовок */
|
|
9066
|
+
disabled: {
|
|
9067
|
+
type: Boolean,
|
|
9068
|
+
default: false
|
|
9069
|
+
},
|
|
9070
|
+
/** Помечает встроенное поле как невалидное */
|
|
9071
|
+
invalid: {
|
|
9072
|
+
type: Boolean,
|
|
9073
|
+
default: false
|
|
9074
|
+
}
|
|
9075
|
+
},
|
|
9076
|
+
emits: ["blur", "change", "focus", "keydown", "update:value"],
|
|
9077
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
9078
|
+
const props = __props;
|
|
9079
|
+
const emit = __emit;
|
|
9080
|
+
const uid2 = useId();
|
|
9081
|
+
const textbox = ref(null);
|
|
9082
|
+
const isEditing = ref(false);
|
|
9083
|
+
const currentValue = ref(props.value === null ? "" : String(props.value));
|
|
9084
|
+
const textboxId = computed(() => `${props.id ?? uid2}-input`);
|
|
9085
|
+
const canEdit = computed(() => props.editable && !props.readonly && !props.disabled);
|
|
9086
|
+
const displayPlaceholder = computed(() => currentValue.value ? "" : props.placeholder);
|
|
9087
|
+
const displayInvalid = computed(() => props.invalid && currentValue.value === "");
|
|
9088
|
+
const displayError = computed(() => displayInvalid.value && props.error !== "");
|
|
9089
|
+
watch(() => props.value, (nextValue) => {
|
|
9090
|
+
currentValue.value = nextValue === null ? "" : String(nextValue);
|
|
9091
|
+
});
|
|
9092
|
+
watch(canEdit, (nextCanEdit) => {
|
|
9093
|
+
if (!nextCanEdit) {
|
|
9094
|
+
isEditing.value = false;
|
|
9095
|
+
}
|
|
9096
|
+
});
|
|
9097
|
+
watch(displayError, async (nextDisplayError) => {
|
|
9098
|
+
if (!nextDisplayError || !canEdit.value) {
|
|
9099
|
+
return;
|
|
9100
|
+
}
|
|
9101
|
+
isEditing.value = true;
|
|
9102
|
+
await nextTick();
|
|
9103
|
+
textbox.value?.focus();
|
|
9104
|
+
}, {
|
|
9105
|
+
immediate: true
|
|
9106
|
+
});
|
|
9107
|
+
const startEditing = async () => {
|
|
9108
|
+
if (!canEdit.value || isEditing.value) {
|
|
9109
|
+
return;
|
|
9110
|
+
}
|
|
9111
|
+
isEditing.value = true;
|
|
9112
|
+
await nextTick();
|
|
9113
|
+
textbox.value?.focus();
|
|
9114
|
+
};
|
|
9115
|
+
const onMouseDown = (event) => {
|
|
9116
|
+
if (!canEdit.value || isEditing.value) {
|
|
9117
|
+
return;
|
|
9118
|
+
}
|
|
9119
|
+
event.preventDefault();
|
|
9120
|
+
void startEditing();
|
|
9121
|
+
};
|
|
9122
|
+
const onBlur = (event) => {
|
|
9123
|
+
if (displayError.value && canEdit.value) {
|
|
9124
|
+
isEditing.value = true;
|
|
9125
|
+
emit("blur", event);
|
|
9126
|
+
void nextTick().then(() => {
|
|
9127
|
+
textbox.value?.focus();
|
|
9128
|
+
});
|
|
9129
|
+
return;
|
|
9130
|
+
}
|
|
9131
|
+
isEditing.value = false;
|
|
9132
|
+
emit("blur", event);
|
|
9133
|
+
};
|
|
9134
|
+
const onUpdateValue = (value) => {
|
|
9135
|
+
currentValue.value = String(value);
|
|
9136
|
+
emit("update:value", value);
|
|
9137
|
+
};
|
|
9138
|
+
const onKeyDown = (event) => {
|
|
9139
|
+
if (event.key === "Enter" && !event.shiftKey && !event.isComposing) {
|
|
9140
|
+
event.preventDefault();
|
|
9141
|
+
if (!displayError.value) {
|
|
9142
|
+
textbox.value?.blur();
|
|
9143
|
+
isEditing.value = false;
|
|
9144
|
+
}
|
|
9145
|
+
}
|
|
9146
|
+
emit("keydown", event);
|
|
9147
|
+
};
|
|
9148
|
+
__expose({
|
|
9149
|
+
focus: () => {
|
|
9150
|
+
void startEditing();
|
|
9151
|
+
},
|
|
9152
|
+
blur: () => {
|
|
9153
|
+
if (displayError.value && canEdit.value) {
|
|
9154
|
+
void nextTick().then(() => {
|
|
9155
|
+
textbox.value?.focus();
|
|
9156
|
+
});
|
|
9157
|
+
return;
|
|
9158
|
+
}
|
|
9159
|
+
textbox.value?.blur();
|
|
9160
|
+
isEditing.value = false;
|
|
9161
|
+
}
|
|
9162
|
+
});
|
|
9163
|
+
return (_ctx, _cache) => {
|
|
9164
|
+
return !isEditing.value && !displayError.value ? (openBlock(), createElementBlock("h1", {
|
|
9165
|
+
key: 0,
|
|
9166
|
+
id: textboxId.value,
|
|
9167
|
+
"aria-label": __props.placeholder || currentValue.value || "Page title",
|
|
9168
|
+
class: normalizeClass({
|
|
9169
|
+
"ui-v1-page-header__trigger": true,
|
|
9170
|
+
"ui-v1-page-header__trigger_editable": canEdit.value,
|
|
9171
|
+
"ui-v1-page-header__trigger_empty": !!displayPlaceholder.value
|
|
9172
|
+
}),
|
|
9173
|
+
role: canEdit.value ? "button" : void 0,
|
|
9174
|
+
tabindex: canEdit.value ? 0 : void 0,
|
|
9175
|
+
onMousedown: onMouseDown,
|
|
9176
|
+
onClick: startEditing,
|
|
9177
|
+
onKeydown: [
|
|
9178
|
+
withKeys(withModifiers(startEditing, ["prevent"]), ["enter"]),
|
|
9179
|
+
withKeys(withModifiers(startEditing, ["prevent"]), ["space"])
|
|
9180
|
+
]
|
|
9181
|
+
}, toDisplayString(currentValue.value || displayPlaceholder.value), 43, _hoisted_1$e)) : (openBlock(), createBlock(_sfc_main$L, {
|
|
9182
|
+
key: 1,
|
|
9183
|
+
id: textboxId.value,
|
|
9184
|
+
ref_key: "textbox",
|
|
9185
|
+
ref: textbox,
|
|
9186
|
+
value: currentValue.value,
|
|
9187
|
+
autofocus: __props.autofocus,
|
|
9188
|
+
autoselect: __props.autoselect,
|
|
9189
|
+
disabled: __props.disabled,
|
|
9190
|
+
"input-attributes": { "aria-label": __props.placeholder || "Page title" },
|
|
9191
|
+
invalid: displayInvalid.value,
|
|
9192
|
+
outlined: false,
|
|
9193
|
+
placeholder: displayPlaceholder.value,
|
|
9194
|
+
readonly: __props.readonly,
|
|
9195
|
+
size: "xl",
|
|
9196
|
+
autofit: "",
|
|
9197
|
+
class: "ui-v1-page-header__textbox",
|
|
9198
|
+
onBlur,
|
|
9199
|
+
onChange: _cache[0] || (_cache[0] = ($event) => emit("change", $event)),
|
|
9200
|
+
onFocus: _cache[1] || (_cache[1] = ($event) => emit("focus", $event)),
|
|
9201
|
+
onKeydown: onKeyDown,
|
|
9202
|
+
"onUpdate:value": onUpdateValue
|
|
9203
|
+
}, null, 8, ["id", "value", "autofocus", "autoselect", "disabled", "input-attributes", "invalid", "placeholder", "readonly"]));
|
|
9204
|
+
};
|
|
9205
|
+
}
|
|
9206
|
+
});
|
|
9207
|
+
const _hoisted_1$d = ["id"];
|
|
9208
|
+
const _hoisted_2$8 = { class: "ui-v1-page-header__main" };
|
|
9209
|
+
const _hoisted_3$4 = { class: "ui-v1-page-header__title" };
|
|
9210
|
+
const _hoisted_4 = {
|
|
9211
|
+
key: 0,
|
|
9212
|
+
class: "ui-v1-page-header__addon"
|
|
9213
|
+
};
|
|
9214
|
+
const _hoisted_5 = {
|
|
9215
|
+
key: 0,
|
|
9216
|
+
class: "ui-v1-page-header__actions"
|
|
9217
|
+
};
|
|
9218
|
+
const _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
9219
|
+
...{
|
|
9220
|
+
inheritAttrs: false
|
|
9221
|
+
},
|
|
9222
|
+
__name: "UiPageHeaderLayout",
|
|
9223
|
+
props: {
|
|
9224
|
+
/** Уникальный идентификатор корневого элемента */
|
|
9225
|
+
id: {
|
|
9226
|
+
type: null,
|
|
9227
|
+
validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
|
|
9228
|
+
default: void 0
|
|
9229
|
+
},
|
|
9230
|
+
/** Текст заголовка */
|
|
9231
|
+
value: {
|
|
9232
|
+
type: null,
|
|
9233
|
+
default: ""
|
|
9234
|
+
},
|
|
9235
|
+
/** Плейсхолдер, отображаемый при отсутствии текста */
|
|
9236
|
+
placeholder: {
|
|
9237
|
+
type: String,
|
|
9238
|
+
default: ""
|
|
9239
|
+
},
|
|
9240
|
+
/** Текст ошибки для tooltip при пустом невалидном заголовке */
|
|
9241
|
+
error: {
|
|
9242
|
+
type: String,
|
|
9243
|
+
default: ""
|
|
9244
|
+
},
|
|
9245
|
+
/** Разрешает перейти в режим редактирования по клику */
|
|
9246
|
+
editable: {
|
|
9247
|
+
type: Boolean,
|
|
9248
|
+
default: false
|
|
9249
|
+
},
|
|
9250
|
+
/** Автоматически переводит фокус во встроенный UiTextbox при монтировании */
|
|
9251
|
+
autofocus: {
|
|
9252
|
+
type: Boolean,
|
|
9253
|
+
default: false
|
|
9254
|
+
},
|
|
9255
|
+
/** Автоматически выделяет текст заголовка при фокусе на встроенном поле */
|
|
9256
|
+
autoselect: {
|
|
9257
|
+
type: Boolean,
|
|
9258
|
+
default: true
|
|
9259
|
+
},
|
|
9260
|
+
/** Делает встроенное поле только для чтения */
|
|
9261
|
+
readonly: {
|
|
9262
|
+
type: Boolean,
|
|
9263
|
+
default: false
|
|
9264
|
+
},
|
|
9265
|
+
/** Полностью отключает заголовок */
|
|
9266
|
+
disabled: {
|
|
9267
|
+
type: Boolean,
|
|
9268
|
+
default: false
|
|
9269
|
+
},
|
|
9270
|
+
/** Помечает встроенное поле как невалидное */
|
|
9271
|
+
invalid: {
|
|
9272
|
+
type: Boolean,
|
|
9273
|
+
default: false
|
|
9274
|
+
}
|
|
9275
|
+
},
|
|
9276
|
+
emits: ["blur", "change", "focus", "keydown", "update:value"],
|
|
9277
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
9278
|
+
const emit = __emit;
|
|
9279
|
+
const uid2 = useId();
|
|
9280
|
+
const main = ref(null);
|
|
9281
|
+
const displayInvalid = computed(() => {
|
|
9282
|
+
const currentValue = __props.value === null ? "" : String(__props.value);
|
|
9283
|
+
return __props.invalid && currentValue === "";
|
|
9284
|
+
});
|
|
9285
|
+
__expose({
|
|
9286
|
+
focus: () => main.value?.focus(),
|
|
9287
|
+
blur: () => main.value?.blur()
|
|
9288
|
+
});
|
|
9289
|
+
return (_ctx, _cache) => {
|
|
9290
|
+
return openBlock(), createElementBlock("div", mergeProps({
|
|
9291
|
+
id: __props.id ?? unref(uid2),
|
|
9292
|
+
class: {
|
|
9293
|
+
"ui-v1-page-header": true,
|
|
9294
|
+
"ui-v1-page-header_disabled": __props.disabled,
|
|
9295
|
+
"ui-v1-page-header_invalid": displayInvalid.value,
|
|
9296
|
+
"ui-v1-page-header_readonly": __props.readonly
|
|
9297
|
+
}
|
|
9298
|
+
}, _ctx.$attrs), [
|
|
9299
|
+
createElementVNode("div", _hoisted_2$8, [
|
|
9300
|
+
createElementVNode("div", _hoisted_3$4, [
|
|
9301
|
+
createVNode(_sfc_main$x, {
|
|
9302
|
+
id: __props.id,
|
|
9303
|
+
ref_key: "main",
|
|
9304
|
+
ref: main,
|
|
9305
|
+
value: __props.value,
|
|
9306
|
+
placeholder: __props.placeholder,
|
|
9307
|
+
error: __props.error,
|
|
9308
|
+
editable: __props.editable,
|
|
9309
|
+
autofocus: __props.autofocus,
|
|
9310
|
+
autoselect: __props.autoselect,
|
|
9311
|
+
readonly: __props.readonly,
|
|
9312
|
+
disabled: __props.disabled,
|
|
9313
|
+
invalid: __props.invalid,
|
|
9314
|
+
onBlur: _cache[0] || (_cache[0] = ($event) => emit("blur", $event)),
|
|
9315
|
+
onChange: _cache[1] || (_cache[1] = ($event) => emit("change", $event)),
|
|
9316
|
+
onFocus: _cache[2] || (_cache[2] = ($event) => emit("focus", $event)),
|
|
9317
|
+
onKeydown: _cache[3] || (_cache[3] = ($event) => emit("keydown", $event)),
|
|
9318
|
+
"onUpdate:value": _cache[4] || (_cache[4] = ($event) => emit("update:value", $event))
|
|
9319
|
+
}, null, 8, ["id", "value", "placeholder", "error", "editable", "autofocus", "autoselect", "readonly", "disabled", "invalid"])
|
|
9320
|
+
]),
|
|
9321
|
+
"addon" in _ctx.$slots ? (openBlock(), createElementBlock("div", _hoisted_4, [
|
|
9322
|
+
renderSlot(_ctx.$slots, "addon")
|
|
9323
|
+
])) : createCommentVNode("", true)
|
|
9324
|
+
]),
|
|
9325
|
+
"actions" in _ctx.$slots ? (openBlock(), createElementBlock("div", _hoisted_5, [
|
|
9326
|
+
renderSlot(_ctx.$slots, "actions")
|
|
9327
|
+
])) : createCommentVNode("", true)
|
|
9328
|
+
], 16, _hoisted_1$d);
|
|
9329
|
+
};
|
|
9330
|
+
}
|
|
9331
|
+
});
|
|
9332
|
+
const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
9333
|
+
...{
|
|
9334
|
+
inheritAttrs: false
|
|
9335
|
+
},
|
|
9336
|
+
__name: "UiPageHeader",
|
|
9337
|
+
props: {
|
|
9338
|
+
id: {},
|
|
9339
|
+
value: { default: "" },
|
|
9340
|
+
placeholder: { default: "" },
|
|
9341
|
+
error: { default: "" },
|
|
9342
|
+
editable: { type: Boolean, default: false },
|
|
9343
|
+
autofocus: { type: Boolean, default: false },
|
|
9344
|
+
autoselect: { type: Boolean, default: true },
|
|
9345
|
+
readonly: { type: Boolean, default: false },
|
|
9346
|
+
disabled: { type: Boolean, default: false },
|
|
9347
|
+
invalid: { type: Boolean, default: false }
|
|
9348
|
+
},
|
|
9349
|
+
emits: ["blur", "change", "focus", "keydown", "update:value"],
|
|
9350
|
+
setup(__props, { expose: __expose }) {
|
|
9351
|
+
const props = __props;
|
|
9352
|
+
const attrs = useAttrs();
|
|
9353
|
+
const baseProps = computed(() => ({
|
|
9354
|
+
...attrs,
|
|
9355
|
+
id: props.id,
|
|
9356
|
+
value: props.value,
|
|
9357
|
+
placeholder: props.placeholder,
|
|
9358
|
+
error: props.error,
|
|
9359
|
+
editable: props.editable,
|
|
9360
|
+
autofocus: props.autofocus,
|
|
9361
|
+
autoselect: props.autoselect,
|
|
9362
|
+
readonly: props.readonly,
|
|
9363
|
+
disabled: props.disabled,
|
|
9364
|
+
invalid: props.invalid
|
|
9365
|
+
}));
|
|
9366
|
+
const base = ref(null);
|
|
9367
|
+
__expose({
|
|
9368
|
+
focus: () => base.value?.focus(),
|
|
9369
|
+
blur: () => base.value?.blur()
|
|
9370
|
+
});
|
|
9371
|
+
return (_ctx, _cache) => {
|
|
9372
|
+
return openBlock(), createBlock(_sfc_main$w, mergeProps({
|
|
9373
|
+
ref_key: "base",
|
|
9374
|
+
ref: base
|
|
9375
|
+
}, baseProps.value, {
|
|
9376
|
+
onBlur: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("blur", $event)),
|
|
9377
|
+
onChange: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("change", $event)),
|
|
9378
|
+
onFocus: _cache[2] || (_cache[2] = ($event) => _ctx.$emit("focus", $event)),
|
|
9379
|
+
onKeydown: _cache[3] || (_cache[3] = ($event) => _ctx.$emit("keydown", $event)),
|
|
9380
|
+
"onUpdate:value": _cache[4] || (_cache[4] = ($event) => _ctx.$emit("update:value", $event))
|
|
9381
|
+
}), createSlots({ _: 2 }, [
|
|
9382
|
+
_ctx.$slots.addon ? {
|
|
9383
|
+
name: "addon",
|
|
9384
|
+
fn: withCtx(() => [
|
|
9385
|
+
renderSlot(_ctx.$slots, "addon")
|
|
9386
|
+
]),
|
|
9387
|
+
key: "0"
|
|
9388
|
+
} : void 0,
|
|
9389
|
+
_ctx.$slots.actions ? {
|
|
9390
|
+
name: "actions",
|
|
9391
|
+
fn: withCtx(() => [
|
|
9392
|
+
renderSlot(_ctx.$slots, "actions")
|
|
9393
|
+
]),
|
|
9394
|
+
key: "1"
|
|
9395
|
+
} : void 0
|
|
9396
|
+
]), 1040);
|
|
9397
|
+
};
|
|
9398
|
+
}
|
|
9399
|
+
});
|
|
9400
|
+
const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
9401
|
+
__name: "UiPopperConnector",
|
|
9402
|
+
setup(__props) {
|
|
9403
|
+
const target = ref(null);
|
|
9404
|
+
provide(ElementRefKey, target);
|
|
9405
|
+
provide(PopperTargetKey, computed(() => target.value));
|
|
9406
|
+
return (_ctx, _cache) => {
|
|
9407
|
+
return renderSlot(_ctx.$slots, "default");
|
|
9408
|
+
};
|
|
9409
|
+
}
|
|
9410
|
+
});
|
|
9411
|
+
const _sfc_main$t = /* @__PURE__ */ defineComponent({
|
|
9412
|
+
...{
|
|
9413
|
+
inheritAttrs: false
|
|
9414
|
+
},
|
|
9415
|
+
__name: "UiPopperTarget",
|
|
9416
|
+
props: {
|
|
9417
|
+
tag: {
|
|
9418
|
+
type: String,
|
|
9419
|
+
default: "div"
|
|
9420
|
+
}
|
|
9421
|
+
},
|
|
9422
|
+
setup(__props) {
|
|
9423
|
+
const root = useElementRef();
|
|
9424
|
+
return (_ctx, _cache) => {
|
|
9425
|
+
return openBlock(), createBlock(resolveDynamicComponent(__props.tag), mergeProps({
|
|
9426
|
+
ref_key: "root",
|
|
9427
|
+
ref: root
|
|
9428
|
+
}, _ctx.$attrs), {
|
|
9429
|
+
default: withCtx(() => [
|
|
9430
|
+
renderSlot(_ctx.$slots, "default")
|
|
9431
|
+
]),
|
|
9432
|
+
_: 3
|
|
9433
|
+
}, 16);
|
|
9434
|
+
};
|
|
9435
|
+
}
|
|
9436
|
+
});
|
|
9437
|
+
const _hoisted_1$c = ["id", "name", "value", "checked", "required", "disabled"];
|
|
9438
|
+
let nameCounter = 0;
|
|
9439
|
+
let idCounter = 0;
|
|
9440
|
+
const __default__$1 = {};
|
|
9441
|
+
const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
9442
|
+
...__default__$1,
|
|
9443
|
+
...{
|
|
9444
|
+
inheritAttrs: false
|
|
9445
|
+
},
|
|
9446
|
+
__name: "UiRadio",
|
|
9447
|
+
props: {
|
|
9448
|
+
id: {
|
|
9449
|
+
type: null,
|
|
9450
|
+
validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
|
|
9451
|
+
default: () => "ui-v1-radio-" + ++idCounter
|
|
9452
|
+
},
|
|
9453
|
+
/** Атрибут name нативного поля ввода */
|
|
9454
|
+
name: {
|
|
9455
|
+
type: String,
|
|
9456
|
+
default: () => "ui-v1-radio-" + ++nameCounter
|
|
9457
|
+
},
|
|
9458
|
+
/** Значение модели, используемое с директивой v-model */
|
|
9459
|
+
model: {
|
|
9460
|
+
type: null,
|
|
9461
|
+
default: void 0
|
|
9462
|
+
},
|
|
9463
|
+
/** Атрибут value нативного поля ввода */
|
|
9464
|
+
value: {
|
|
9465
|
+
type: null,
|
|
9466
|
+
required: true
|
|
9084
9467
|
},
|
|
9085
9468
|
/** Заблокированный */
|
|
9086
9469
|
disabled: {
|
|
@@ -9144,21 +9527,114 @@ const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
|
9144
9527
|
type: "radio",
|
|
9145
9528
|
class: "ui-v1-radio__input",
|
|
9146
9529
|
onChange
|
|
9147
|
-
}), null, 16, _hoisted_1$
|
|
9530
|
+
}), null, 16, _hoisted_1$c),
|
|
9148
9531
|
_cache[0] || (_cache[0] = createElementVNode("span", { class: "ui-v1-radio__checkmark" }, null, -1))
|
|
9149
9532
|
], 16);
|
|
9150
9533
|
};
|
|
9151
9534
|
}
|
|
9152
9535
|
});
|
|
9153
|
-
var
|
|
9154
|
-
|
|
9155
|
-
|
|
9156
|
-
return
|
|
9157
|
-
})(
|
|
9158
|
-
|
|
9159
|
-
|
|
9160
|
-
|
|
9161
|
-
|
|
9536
|
+
var APPEARANCE$1 = /* @__PURE__ */ ((APPEARANCE2) => {
|
|
9537
|
+
APPEARANCE2["DEFAULT"] = "default";
|
|
9538
|
+
APPEARANCE2["SECTION"] = "section";
|
|
9539
|
+
return APPEARANCE2;
|
|
9540
|
+
})(APPEARANCE$1 || {});
|
|
9541
|
+
var SIZE$3 = /* @__PURE__ */ ((SIZE2) => {
|
|
9542
|
+
SIZE2["SM"] = "sm";
|
|
9543
|
+
SIZE2["MD"] = "md";
|
|
9544
|
+
SIZE2["LG"] = "lg";
|
|
9545
|
+
return SIZE2;
|
|
9546
|
+
})(SIZE$3 || {});
|
|
9547
|
+
const _sfc_main$r = defineComponent({
|
|
9548
|
+
name: "UiRadioSwitchOptionShell",
|
|
9549
|
+
inheritAttrs: false,
|
|
9550
|
+
props: {
|
|
9551
|
+
id: {
|
|
9552
|
+
type: String,
|
|
9553
|
+
default: void 0
|
|
9554
|
+
},
|
|
9555
|
+
appearance: {
|
|
9556
|
+
type: String,
|
|
9557
|
+
default: APPEARANCE$1.DEFAULT,
|
|
9558
|
+
validator: (appearance) => Object.values(APPEARANCE$1).includes(appearance)
|
|
9559
|
+
},
|
|
9560
|
+
size: {
|
|
9561
|
+
type: String,
|
|
9562
|
+
default: SIZE$3.MD,
|
|
9563
|
+
validator: (size) => Object.values(SIZE$3).includes(size)
|
|
9564
|
+
},
|
|
9565
|
+
checked: {
|
|
9566
|
+
type: Boolean,
|
|
9567
|
+
default: false
|
|
9568
|
+
},
|
|
9569
|
+
disabled: {
|
|
9570
|
+
type: Boolean,
|
|
9571
|
+
default: false
|
|
9572
|
+
}
|
|
9573
|
+
},
|
|
9574
|
+
setup(props, { attrs, expose, slots }) {
|
|
9575
|
+
const root = ref(null);
|
|
9576
|
+
expose({
|
|
9577
|
+
focus: () => root.value?.focus(),
|
|
9578
|
+
blur: () => root.value?.blur()
|
|
9579
|
+
});
|
|
9580
|
+
return () => h("div", {
|
|
9581
|
+
ref: root,
|
|
9582
|
+
...attrs,
|
|
9583
|
+
id: props.id,
|
|
9584
|
+
role: attrs.role ?? "radio",
|
|
9585
|
+
"aria-checked": `${props.checked}`,
|
|
9586
|
+
"aria-disabled": `${props.disabled}`,
|
|
9587
|
+
class: [attrs.class, {
|
|
9588
|
+
"ui-v1-radio-switch-option": true,
|
|
9589
|
+
"ui-v1-radio-switch-option_standalone": props.appearance === APPEARANCE$1.SECTION,
|
|
9590
|
+
"ui-v1-radio-switch-option_default": props.appearance === APPEARANCE$1.DEFAULT,
|
|
9591
|
+
[`ui-v1-radio-switch-option_${props.size}`]: props.appearance === APPEARANCE$1.DEFAULT,
|
|
9592
|
+
"ui-v1-radio-switch-option_active": props.checked,
|
|
9593
|
+
"ui-v1-radio-switch-option_disabled": props.disabled
|
|
9594
|
+
}]
|
|
9595
|
+
}, slots.default?.());
|
|
9596
|
+
}
|
|
9597
|
+
});
|
|
9598
|
+
const _sfc_main$q = defineComponent({
|
|
9599
|
+
name: "UiRadioSwitchRoot",
|
|
9600
|
+
props: {
|
|
9601
|
+
appearance: {
|
|
9602
|
+
type: String,
|
|
9603
|
+
default: APPEARANCE$1.DEFAULT,
|
|
9604
|
+
validator: (appearance) => Object.values(APPEARANCE$1).includes(appearance)
|
|
9605
|
+
},
|
|
9606
|
+
size: {
|
|
9607
|
+
type: String,
|
|
9608
|
+
default: SIZE$3.MD,
|
|
9609
|
+
validator: (size) => Object.values(SIZE$3).includes(size)
|
|
9610
|
+
},
|
|
9611
|
+
rubber: {
|
|
9612
|
+
type: Boolean,
|
|
9613
|
+
default: false
|
|
9614
|
+
}
|
|
9615
|
+
},
|
|
9616
|
+
setup(props, { attrs, slots }) {
|
|
9617
|
+
return () => h("div", {
|
|
9618
|
+
...attrs,
|
|
9619
|
+
role: attrs.role ?? "radiogroup",
|
|
9620
|
+
class: [attrs.class, {
|
|
9621
|
+
"ui-v1-radio-switch": true,
|
|
9622
|
+
[`ui-v1-radio-switch_${props.size}`]: props.appearance === APPEARANCE$1.DEFAULT,
|
|
9623
|
+
"ui-v1-radio-switch_borderless": props.appearance === APPEARANCE$1.SECTION,
|
|
9624
|
+
"ui-v1-radio-switch_rubber": props.rubber
|
|
9625
|
+
}]
|
|
9626
|
+
}, slots.default?.());
|
|
9627
|
+
}
|
|
9628
|
+
});
|
|
9629
|
+
var TYPE = /* @__PURE__ */ ((TYPE2) => {
|
|
9630
|
+
TYPE2["SINGLE"] = "single";
|
|
9631
|
+
TYPE2["RANGE"] = "range";
|
|
9632
|
+
return TYPE2;
|
|
9633
|
+
})(TYPE || {});
|
|
9634
|
+
const MIN = 0;
|
|
9635
|
+
const MAX = 100;
|
|
9636
|
+
const clamp = (value, min2 = MIN, max2 = MAX) => value < min2 ? min2 : value > max2 ? max2 : value;
|
|
9637
|
+
const normalize$1 = (value, min2 = MIN, max2 = MAX) => {
|
|
9162
9638
|
return min2 !== max2 ? 100 * (clamp(value, min2, max2) - min2) / (max2 - min2) : 0;
|
|
9163
9639
|
};
|
|
9164
9640
|
const getValue = (values, reverse) => {
|
|
@@ -9250,16 +9726,16 @@ const createManipulator = (options) => {
|
|
|
9250
9726
|
onDragEnd
|
|
9251
9727
|
};
|
|
9252
9728
|
};
|
|
9253
|
-
const _hoisted_1$
|
|
9729
|
+
const _hoisted_1$b = {
|
|
9254
9730
|
key: 0,
|
|
9255
9731
|
class: "ui-v1-slider__label"
|
|
9256
9732
|
};
|
|
9257
|
-
const _hoisted_2$
|
|
9258
|
-
const _hoisted_3$
|
|
9733
|
+
const _hoisted_2$7 = ["onMousedown", "onKeydown", "onFocus"];
|
|
9734
|
+
const _hoisted_3$3 = {
|
|
9259
9735
|
key: 1,
|
|
9260
9736
|
class: "ui-v1-slider__label"
|
|
9261
9737
|
};
|
|
9262
|
-
const _sfc_main$
|
|
9738
|
+
const _sfc_main$p = /* @__PURE__ */ defineComponent({
|
|
9263
9739
|
__name: "UiSlider",
|
|
9264
9740
|
props: {
|
|
9265
9741
|
type: {
|
|
@@ -9422,7 +9898,7 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
9422
9898
|
onClick: _cache[2] || (_cache[2] = ($event) => unref(onClick)($event)),
|
|
9423
9899
|
onKeydown: _cache[3] || (_cache[3] = ($event) => onRootKeydown($event))
|
|
9424
9900
|
}), [
|
|
9425
|
-
props.labelled ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
9901
|
+
props.labelled ? (openBlock(), createElementBlock("div", _hoisted_1$b, [
|
|
9426
9902
|
renderSlot(_ctx.$slots, "label", {
|
|
9427
9903
|
boundary: props.min
|
|
9428
9904
|
})
|
|
@@ -9463,10 +9939,10 @@ const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
|
9463
9939
|
key: 0,
|
|
9464
9940
|
boundary: handle.value
|
|
9465
9941
|
}) : createCommentVNode("", true)
|
|
9466
|
-
], 16, _hoisted_2$
|
|
9942
|
+
], 16, _hoisted_2$7);
|
|
9467
9943
|
}), 128))
|
|
9468
9944
|
], 512),
|
|
9469
|
-
props.labelled ? (openBlock(), createElementBlock("div", _hoisted_3$
|
|
9945
|
+
props.labelled ? (openBlock(), createElementBlock("div", _hoisted_3$3, [
|
|
9470
9946
|
renderSlot(_ctx.$slots, "label", {
|
|
9471
9947
|
boundary: props.max
|
|
9472
9948
|
})
|
|
@@ -9486,7 +9962,7 @@ var PLACEMENT = /* @__PURE__ */ ((PLACEMENT2) => {
|
|
|
9486
9962
|
PLACEMENT2["LEFT_START"] = "left-start";
|
|
9487
9963
|
return PLACEMENT2;
|
|
9488
9964
|
})(PLACEMENT || {});
|
|
9489
|
-
const _sfc_main$
|
|
9965
|
+
const _sfc_main$o = /* @__PURE__ */ defineComponent({
|
|
9490
9966
|
__name: "UiSelectPopper",
|
|
9491
9967
|
props: {
|
|
9492
9968
|
/** Атрибут id корневого элемента выпадающего списка. Должен быть уникальным на странице */
|
|
@@ -9600,7 +10076,9 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
9600
10076
|
__expose({
|
|
9601
10077
|
autoScroll,
|
|
9602
10078
|
updateWidth,
|
|
9603
|
-
adjust: () =>
|
|
10079
|
+
adjust: async () => {
|
|
10080
|
+
await popper.value?.adjust();
|
|
10081
|
+
},
|
|
9604
10082
|
dispose: () => popper.value?.dispose(),
|
|
9605
10083
|
show: () => popper.value?.show(),
|
|
9606
10084
|
hide: () => popper.value?.hide()
|
|
@@ -9609,7 +10087,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
|
|
|
9609
10087
|
onMounted(() => {
|
|
9610
10088
|
});
|
|
9611
10089
|
return (_ctx, _cache) => {
|
|
9612
|
-
return openBlock(), createBlock(_sfc_main$
|
|
10090
|
+
return openBlock(), createBlock(_sfc_main$P, mergeProps({
|
|
9613
10091
|
id: __props.id + "-popper",
|
|
9614
10092
|
ref_key: "popper",
|
|
9615
10093
|
ref: popper,
|
|
@@ -9677,7 +10155,7 @@ const _i18n$2 = define({
|
|
|
9677
10155
|
"ru-RU": messages_ru_RU$2
|
|
9678
10156
|
}
|
|
9679
10157
|
});
|
|
9680
|
-
const _sfc_main$
|
|
10158
|
+
const _sfc_main$n = /* @__PURE__ */ defineComponent({
|
|
9681
10159
|
__name: "UiSelectTrigger",
|
|
9682
10160
|
props: {
|
|
9683
10161
|
/** Атрибут id корневого элемента выпадающего списка. Должен быть уникальным на странице */
|
|
@@ -9738,8 +10216,8 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
9738
10216
|
/** Размер поля ввода */
|
|
9739
10217
|
textboxSize: {
|
|
9740
10218
|
type: String,
|
|
9741
|
-
validator: (size) => Object.values(SIZE$
|
|
9742
|
-
default: SIZE$
|
|
10219
|
+
validator: (size) => Object.values(SIZE$7).includes(size),
|
|
10220
|
+
default: SIZE$7.SM
|
|
9743
10221
|
},
|
|
9744
10222
|
/** Состояние открытия выпадающего списка */
|
|
9745
10223
|
expanded: {
|
|
@@ -9903,7 +10381,7 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
9903
10381
|
class: "ui-v1-select__touchstone"
|
|
9904
10382
|
}, toDisplayString(selectionLabels.value), 513)) : createCommentVNode("", true),
|
|
9905
10383
|
renderSlot(_ctx.$slots, "trigger", {}, () => [
|
|
9906
|
-
createVNode(_sfc_main$
|
|
10384
|
+
createVNode(_sfc_main$L, {
|
|
9907
10385
|
id: __props.id,
|
|
9908
10386
|
value: inputValue.value,
|
|
9909
10387
|
placeholder: !inputReadonly.value && __props.expanded ? i18n.value.t("search.placeholder") : __props.placeholder,
|
|
@@ -9944,19 +10422,19 @@ const _sfc_main$g = /* @__PURE__ */ defineComponent({
|
|
|
9944
10422
|
};
|
|
9945
10423
|
}
|
|
9946
10424
|
});
|
|
9947
|
-
const _hoisted_1$
|
|
9948
|
-
const _hoisted_2$
|
|
9949
|
-
const _hoisted_3$
|
|
9950
|
-
let counter = 0;
|
|
10425
|
+
const _hoisted_1$a = ["id", "checked", "disabled", "aria-checked", "aria-disabled"];
|
|
10426
|
+
const _hoisted_2$6 = { class: "ui-v1-switch__track" };
|
|
10427
|
+
const _hoisted_3$2 = { class: "ui-v1-switch__handle" };
|
|
10428
|
+
let counter$1 = 0;
|
|
9951
10429
|
const __default__ = {};
|
|
9952
|
-
const _sfc_main$
|
|
10430
|
+
const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
9953
10431
|
...__default__,
|
|
9954
10432
|
__name: "UiSwitch",
|
|
9955
10433
|
props: {
|
|
9956
10434
|
id: {
|
|
9957
10435
|
type: null,
|
|
9958
10436
|
validator: (id) => id === void 0 || typeof id === "string" && id.length > 0 && /^[A-Za-z]/.test(id),
|
|
9959
|
-
default: () => "ui-v1-switch-" + ++counter
|
|
10437
|
+
default: () => "ui-v1-switch-" + ++counter$1
|
|
9960
10438
|
},
|
|
9961
10439
|
/** Включен/выключен */
|
|
9962
10440
|
value: {
|
|
@@ -10022,9 +10500,9 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
10022
10500
|
role: "switch",
|
|
10023
10501
|
class: "ui-v1-switch__input",
|
|
10024
10502
|
onChange
|
|
10025
|
-
}), null, 16, _hoisted_1$
|
|
10026
|
-
createElementVNode("span", _hoisted_2$
|
|
10027
|
-
createElementVNode("span", _hoisted_3$
|
|
10503
|
+
}), null, 16, _hoisted_1$a),
|
|
10504
|
+
createElementVNode("span", _hoisted_2$6, [
|
|
10505
|
+
createElementVNode("span", _hoisted_3$2, [
|
|
10028
10506
|
!__props.square ? (openBlock(), createBlock(unref(IconDone), {
|
|
10029
10507
|
key: 0,
|
|
10030
10508
|
class: "ui-v1-switch__icon"
|
|
@@ -10057,7 +10535,7 @@ const byRowKey = (key) => {
|
|
|
10057
10535
|
};
|
|
10058
10536
|
const asRowClass = (value) => value;
|
|
10059
10537
|
const asRowAttrs = (value) => value;
|
|
10060
|
-
const _sfc_main$
|
|
10538
|
+
const _sfc_main$l = defineComponent({
|
|
10061
10539
|
name: "UiTableBodyCell",
|
|
10062
10540
|
props: {
|
|
10063
10541
|
align: {
|
|
@@ -10109,7 +10587,7 @@ const toCssSize = (value) => {
|
|
|
10109
10587
|
}
|
|
10110
10588
|
return value;
|
|
10111
10589
|
};
|
|
10112
|
-
const _sfc_main$
|
|
10590
|
+
const _sfc_main$k = defineComponent({
|
|
10113
10591
|
name: "UiTableCol",
|
|
10114
10592
|
props: {
|
|
10115
10593
|
width: {
|
|
@@ -10140,9 +10618,9 @@ const _sfc_main$d = defineComponent({
|
|
|
10140
10618
|
});
|
|
10141
10619
|
}
|
|
10142
10620
|
});
|
|
10143
|
-
const _hoisted_1$
|
|
10144
|
-
const _hoisted_2$
|
|
10145
|
-
const _sfc_main$
|
|
10621
|
+
const _hoisted_1$9 = ["type"];
|
|
10622
|
+
const _hoisted_2$5 = { class: "ui-v1-table__footer-button-content" };
|
|
10623
|
+
const _sfc_main$j = /* @__PURE__ */ defineComponent({
|
|
10146
10624
|
...{
|
|
10147
10625
|
inheritAttrs: false
|
|
10148
10626
|
},
|
|
@@ -10160,14 +10638,14 @@ const _sfc_main$c = /* @__PURE__ */ defineComponent({
|
|
|
10160
10638
|
type: __props.type,
|
|
10161
10639
|
class: "ui-v1-table__footer-button"
|
|
10162
10640
|
}, _ctx.$attrs), [
|
|
10163
|
-
createElementVNode("span", _hoisted_2$
|
|
10641
|
+
createElementVNode("span", _hoisted_2$5, [
|
|
10164
10642
|
renderSlot(_ctx.$slots, "default")
|
|
10165
10643
|
])
|
|
10166
|
-
], 16, _hoisted_1$
|
|
10644
|
+
], 16, _hoisted_1$9);
|
|
10167
10645
|
};
|
|
10168
10646
|
}
|
|
10169
10647
|
});
|
|
10170
|
-
const _sfc_main$
|
|
10648
|
+
const _sfc_main$i = /* @__PURE__ */ defineComponent({
|
|
10171
10649
|
...{
|
|
10172
10650
|
inheritAttrs: false
|
|
10173
10651
|
},
|
|
@@ -10180,7 +10658,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
|
|
|
10180
10658
|
};
|
|
10181
10659
|
}
|
|
10182
10660
|
});
|
|
10183
|
-
const _sfc_main$
|
|
10661
|
+
const _sfc_main$h = defineComponent({
|
|
10184
10662
|
name: "UiTableHeadCell",
|
|
10185
10663
|
props: {
|
|
10186
10664
|
align: {
|
|
@@ -10205,7 +10683,7 @@ const _sfc_main$a = defineComponent({
|
|
|
10205
10683
|
}, slots.default?.());
|
|
10206
10684
|
}
|
|
10207
10685
|
});
|
|
10208
|
-
const _sfc_main$
|
|
10686
|
+
const _sfc_main$g = defineComponent({
|
|
10209
10687
|
name: "UiTableRoot",
|
|
10210
10688
|
props: {
|
|
10211
10689
|
bordered: {
|
|
@@ -10228,7 +10706,7 @@ const _sfc_main$9 = defineComponent({
|
|
|
10228
10706
|
}, slots.default?.());
|
|
10229
10707
|
}
|
|
10230
10708
|
});
|
|
10231
|
-
const _sfc_main$
|
|
10709
|
+
const _sfc_main$f = defineComponent({
|
|
10232
10710
|
name: "UiTableRow",
|
|
10233
10711
|
props: {
|
|
10234
10712
|
interactive: {
|
|
@@ -10256,7 +10734,7 @@ const sectionTagByKind = {
|
|
|
10256
10734
|
body: "tbody",
|
|
10257
10735
|
foot: "tfoot"
|
|
10258
10736
|
};
|
|
10259
|
-
const _sfc_main$
|
|
10737
|
+
const _sfc_main$e = defineComponent({
|
|
10260
10738
|
name: "UiTableSection",
|
|
10261
10739
|
props: {
|
|
10262
10740
|
kind: {
|
|
@@ -10275,14 +10753,14 @@ const _sfc_main$7 = defineComponent({
|
|
|
10275
10753
|
}, slots.default?.());
|
|
10276
10754
|
}
|
|
10277
10755
|
});
|
|
10278
|
-
const _hoisted_1$
|
|
10756
|
+
const _hoisted_1$8 = {
|
|
10279
10757
|
"aria-hidden": "true",
|
|
10280
10758
|
class: "ui-v1-table__sorter-icon",
|
|
10281
10759
|
xmlns: "http://www.w3.org/2000/svg",
|
|
10282
10760
|
viewBox: "0 0 24 24"
|
|
10283
10761
|
};
|
|
10284
|
-
const _hoisted_2$
|
|
10285
|
-
const _sfc_main$
|
|
10762
|
+
const _hoisted_2$4 = { class: "ui-v1-table__sorter-label" };
|
|
10763
|
+
const _sfc_main$d = /* @__PURE__ */ defineComponent({
|
|
10286
10764
|
...{
|
|
10287
10765
|
inheritAttrs: false
|
|
10288
10766
|
},
|
|
@@ -10300,7 +10778,7 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
10300
10778
|
type: "button",
|
|
10301
10779
|
class: "ui-v1-table__sorter"
|
|
10302
10780
|
}, _ctx.$attrs), [
|
|
10303
|
-
(openBlock(), createElementBlock("svg", _hoisted_1$
|
|
10781
|
+
(openBlock(), createElementBlock("svg", _hoisted_1$8, [
|
|
10304
10782
|
createElementVNode("path", {
|
|
10305
10783
|
class: normalizeClass({
|
|
10306
10784
|
"ui-v1-table__sorter-path": true,
|
|
@@ -10313,29 +10791,848 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
|
10313
10791
|
"ui-v1-table__sorter-path": true,
|
|
10314
10792
|
"ui-v1-table__sorter-path_active": __props.direction === unref(DIRECTION).DESC
|
|
10315
10793
|
}),
|
|
10316
|
-
d: "M7.7,15.7c0,0.1,0.1,0.3,0.1,0.4l3.8,3.8c0.2,0.2,0.5,0.2,0.7,0c0,0,0,0,0,0l3.8-3.8c0.2-0.2,0.2-0.5,0-0.7c0,0,0,0,0,0l-0.2-0.2c-0.1-0.1-0.2-0.2-0.4-0.1H8.4c-0.1,0-0.3,0.1-0.4,0.1l-0.2,0.2C7.8,15.4,7.7,15.6,7.7,15.7z"
|
|
10317
|
-
}, null, 2)
|
|
10318
|
-
])),
|
|
10319
|
-
createElementVNode("span", _hoisted_2$
|
|
10320
|
-
renderSlot(_ctx.$slots, "default")
|
|
10321
|
-
])
|
|
10322
|
-
], 16);
|
|
10794
|
+
d: "M7.7,15.7c0,0.1,0.1,0.3,0.1,0.4l3.8,3.8c0.2,0.2,0.5,0.2,0.7,0c0,0,0,0,0,0l3.8-3.8c0.2-0.2,0.2-0.5,0-0.7c0,0,0,0,0,0l-0.2-0.2c-0.1-0.1-0.2-0.2-0.4-0.1H8.4c-0.1,0-0.3,0.1-0.4,0.1l-0.2,0.2C7.8,15.4,7.7,15.6,7.7,15.7z"
|
|
10795
|
+
}, null, 2)
|
|
10796
|
+
])),
|
|
10797
|
+
createElementVNode("span", _hoisted_2$4, [
|
|
10798
|
+
renderSlot(_ctx.$slots, "default")
|
|
10799
|
+
])
|
|
10800
|
+
], 16);
|
|
10801
|
+
};
|
|
10802
|
+
}
|
|
10803
|
+
});
|
|
10804
|
+
const _sfc_main$c = defineComponent({
|
|
10805
|
+
name: "UiTab",
|
|
10806
|
+
inheritAttrs: false,
|
|
10807
|
+
props: {
|
|
10808
|
+
id: {
|
|
10809
|
+
type: String,
|
|
10810
|
+
required: true
|
|
10811
|
+
},
|
|
10812
|
+
label: {
|
|
10813
|
+
type: String,
|
|
10814
|
+
default: ""
|
|
10815
|
+
},
|
|
10816
|
+
counter: {
|
|
10817
|
+
type: [String, Number],
|
|
10818
|
+
default: null
|
|
10819
|
+
},
|
|
10820
|
+
disabled: {
|
|
10821
|
+
type: Boolean,
|
|
10822
|
+
default: false
|
|
10823
|
+
}
|
|
10824
|
+
},
|
|
10825
|
+
setup() {
|
|
10826
|
+
return () => null;
|
|
10827
|
+
}
|
|
10828
|
+
});
|
|
10829
|
+
const _hoisted_1$7 = {
|
|
10830
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
10831
|
+
viewBox: "0 0 24 24"
|
|
10832
|
+
};
|
|
10833
|
+
function render$3(_ctx, _cache) {
|
|
10834
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$7, [..._cache[0] || (_cache[0] = [
|
|
10835
|
+
createElementVNode("path", {
|
|
10836
|
+
fill: "currentColor",
|
|
10837
|
+
"fill-rule": "evenodd",
|
|
10838
|
+
d: "M6 10a2 2 0 1 1 0 4 2 2 0 0 1 0-4m8 2a2 2 0 1 0-4 0 2 2 0 0 0 4 0m4-2a2 2 0 1 1 0 4 2 2 0 0 1 0-4",
|
|
10839
|
+
"clip-rule": "evenodd"
|
|
10840
|
+
}, null, -1)
|
|
10841
|
+
])]);
|
|
10842
|
+
}
|
|
10843
|
+
const IconMoreHorizontal = { render: render$3 };
|
|
10844
|
+
var SIZE$2 = /* @__PURE__ */ ((SIZE2) => {
|
|
10845
|
+
SIZE2["SM"] = "sm";
|
|
10846
|
+
SIZE2["MD"] = "md";
|
|
10847
|
+
SIZE2["LG"] = "lg";
|
|
10848
|
+
return SIZE2;
|
|
10849
|
+
})(SIZE$2 || {});
|
|
10850
|
+
var APPEARANCE = /* @__PURE__ */ ((APPEARANCE2) => {
|
|
10851
|
+
APPEARANCE2["TEXT"] = "text";
|
|
10852
|
+
APPEARANCE2["FILLED"] = "filled";
|
|
10853
|
+
return APPEARANCE2;
|
|
10854
|
+
})(APPEARANCE || {});
|
|
10855
|
+
const hasCounter = (value) => {
|
|
10856
|
+
return value !== null && typeof value !== "undefined";
|
|
10857
|
+
};
|
|
10858
|
+
const _sfc_main$b = defineComponent({
|
|
10859
|
+
name: "UiTabButton",
|
|
10860
|
+
inheritAttrs: false,
|
|
10861
|
+
props: {
|
|
10862
|
+
item: {
|
|
10863
|
+
type: Object,
|
|
10864
|
+
required: true
|
|
10865
|
+
},
|
|
10866
|
+
active: {
|
|
10867
|
+
type: Boolean,
|
|
10868
|
+
default: false
|
|
10869
|
+
},
|
|
10870
|
+
size: {
|
|
10871
|
+
type: String,
|
|
10872
|
+
default: SIZE$2.MD,
|
|
10873
|
+
validator: (size) => Object.values(SIZE$2).includes(size)
|
|
10874
|
+
},
|
|
10875
|
+
appearance: {
|
|
10876
|
+
type: String,
|
|
10877
|
+
default: APPEARANCE.TEXT,
|
|
10878
|
+
validator: (appearance) => Object.values(APPEARANCE).includes(appearance)
|
|
10879
|
+
}
|
|
10880
|
+
},
|
|
10881
|
+
setup(props, { attrs, expose }) {
|
|
10882
|
+
const root = ref(null);
|
|
10883
|
+
const isIconOnly = computed(() => {
|
|
10884
|
+
return Boolean(props.item.iconOnly);
|
|
10885
|
+
});
|
|
10886
|
+
const focus = () => {
|
|
10887
|
+
root.value?.focus();
|
|
10888
|
+
};
|
|
10889
|
+
const getWidth = () => {
|
|
10890
|
+
return Math.ceil(root.value?.offsetWidth ?? 0);
|
|
10891
|
+
};
|
|
10892
|
+
expose({
|
|
10893
|
+
focus,
|
|
10894
|
+
getWidth
|
|
10895
|
+
});
|
|
10896
|
+
return () => h("button", {
|
|
10897
|
+
...attrs,
|
|
10898
|
+
ref: root,
|
|
10899
|
+
class: [attrs.class, {
|
|
10900
|
+
"ui-v1-tab": true,
|
|
10901
|
+
[`ui-v1-tab_${props.appearance}`]: true,
|
|
10902
|
+
[`ui-v1-tab_${props.size}`]: true,
|
|
10903
|
+
"ui-v1-tab_active": props.active,
|
|
10904
|
+
"ui-v1-tab_disabled": Boolean(props.item.disabled),
|
|
10905
|
+
"ui-v1-tab_icon-without-text": isIconOnly.value
|
|
10906
|
+
}],
|
|
10907
|
+
disabled: props.item.disabled,
|
|
10908
|
+
type: "button"
|
|
10909
|
+
}, [
|
|
10910
|
+
props.item.iconSlot ? h("span", { class: "ui-v1-tab__icon" }, props.item.iconSlot()) : null,
|
|
10911
|
+
props.item.labelSlot || props.item.label ? h("span", { class: "ui-v1-tab__label" }, props.item.labelSlot?.() ?? [props.item.label]) : null,
|
|
10912
|
+
props.item.counterSlot || hasCounter(props.item.counter) ? h("span", { class: "ui-v1-tab__counter" }, props.item.counterSlot?.() ?? [String(props.item.counter ?? "")]) : null
|
|
10913
|
+
]);
|
|
10914
|
+
}
|
|
10915
|
+
});
|
|
10916
|
+
const _hoisted_1$6 = {
|
|
10917
|
+
"aria-hidden": "true",
|
|
10918
|
+
class: "ui-v1-tab-group__measure"
|
|
10919
|
+
};
|
|
10920
|
+
const _hoisted_2$3 = { class: "ui-v1-tab-group__content" };
|
|
10921
|
+
const _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
10922
|
+
__name: "UiTabGroupHead",
|
|
10923
|
+
props: {
|
|
10924
|
+
groupId: {
|
|
10925
|
+
type: String,
|
|
10926
|
+
required: true
|
|
10927
|
+
},
|
|
10928
|
+
items: {
|
|
10929
|
+
type: Array,
|
|
10930
|
+
default: () => []
|
|
10931
|
+
},
|
|
10932
|
+
headItems: {
|
|
10933
|
+
type: Array,
|
|
10934
|
+
default: () => []
|
|
10935
|
+
},
|
|
10936
|
+
activeId: {
|
|
10937
|
+
type: String,
|
|
10938
|
+
default: null
|
|
10939
|
+
},
|
|
10940
|
+
focusableId: {
|
|
10941
|
+
type: String,
|
|
10942
|
+
default: null
|
|
10943
|
+
},
|
|
10944
|
+
menuExpanded: {
|
|
10945
|
+
type: Boolean,
|
|
10946
|
+
default: false
|
|
10947
|
+
},
|
|
10948
|
+
hasMenuItems: {
|
|
10949
|
+
type: Boolean,
|
|
10950
|
+
default: false
|
|
10951
|
+
},
|
|
10952
|
+
size: {
|
|
10953
|
+
type: String,
|
|
10954
|
+
default: SIZE$2.MD,
|
|
10955
|
+
validator: (size) => Object.values(SIZE$2).includes(size)
|
|
10956
|
+
},
|
|
10957
|
+
appearance: {
|
|
10958
|
+
type: String,
|
|
10959
|
+
default: APPEARANCE.TEXT,
|
|
10960
|
+
validator: (appearance) => Object.values(APPEARANCE).includes(appearance)
|
|
10961
|
+
}
|
|
10962
|
+
},
|
|
10963
|
+
emits: ["focus-tab", "move-focus", "select"],
|
|
10964
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
10965
|
+
const props = __props;
|
|
10966
|
+
const emit = __emit;
|
|
10967
|
+
const head = ref(null);
|
|
10968
|
+
const headRefs = /* @__PURE__ */ new Map();
|
|
10969
|
+
const measureRefs = /* @__PURE__ */ new Map();
|
|
10970
|
+
const createIntent = (id, direction) => {
|
|
10971
|
+
return { id, direction };
|
|
10972
|
+
};
|
|
10973
|
+
const onTabKeydown = (id, event) => {
|
|
10974
|
+
switch (event.key) {
|
|
10975
|
+
case " ":
|
|
10976
|
+
case "Enter":
|
|
10977
|
+
event.preventDefault();
|
|
10978
|
+
emit("select", id);
|
|
10979
|
+
return;
|
|
10980
|
+
case "ArrowDown":
|
|
10981
|
+
case "ArrowRight":
|
|
10982
|
+
event.preventDefault();
|
|
10983
|
+
emit("move-focus", createIntent(id, "next"));
|
|
10984
|
+
return;
|
|
10985
|
+
case "ArrowUp":
|
|
10986
|
+
case "ArrowLeft":
|
|
10987
|
+
event.preventDefault();
|
|
10988
|
+
emit("move-focus", createIntent(id, "prev"));
|
|
10989
|
+
return;
|
|
10990
|
+
case "Home":
|
|
10991
|
+
event.preventDefault();
|
|
10992
|
+
emit("move-focus", createIntent(id, "first"));
|
|
10993
|
+
return;
|
|
10994
|
+
case "End":
|
|
10995
|
+
event.preventDefault();
|
|
10996
|
+
emit("move-focus", createIntent(id, "last"));
|
|
10997
|
+
}
|
|
10998
|
+
};
|
|
10999
|
+
const setHeadRef = (id, element) => {
|
|
11000
|
+
if (element) {
|
|
11001
|
+
headRefs.set(id, element);
|
|
11002
|
+
return;
|
|
11003
|
+
}
|
|
11004
|
+
headRefs.delete(id);
|
|
11005
|
+
};
|
|
11006
|
+
const setMeasureRef = (id, element) => {
|
|
11007
|
+
if (element) {
|
|
11008
|
+
measureRefs.set(id, element);
|
|
11009
|
+
return;
|
|
11010
|
+
}
|
|
11011
|
+
measureRefs.delete(id);
|
|
11012
|
+
};
|
|
11013
|
+
const focusTab = (id) => {
|
|
11014
|
+
headRefs.get(id)?.focus();
|
|
11015
|
+
};
|
|
11016
|
+
const measure = () => {
|
|
11017
|
+
const widths = /* @__PURE__ */ new Map();
|
|
11018
|
+
props.items.forEach((item) => {
|
|
11019
|
+
widths.set(item.id, measureRefs.get(item.id)?.getWidth() ?? 0);
|
|
11020
|
+
});
|
|
11021
|
+
return {
|
|
11022
|
+
availableWidth: Math.ceil(head.value?.clientWidth ?? 0),
|
|
11023
|
+
widths
|
|
11024
|
+
};
|
|
11025
|
+
};
|
|
11026
|
+
__expose({
|
|
11027
|
+
focusTab,
|
|
11028
|
+
measure
|
|
11029
|
+
});
|
|
11030
|
+
return (_ctx, _cache) => {
|
|
11031
|
+
return openBlock(), createElementBlock(Fragment, null, [
|
|
11032
|
+
createElementVNode("div", _hoisted_1$6, [
|
|
11033
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item) => {
|
|
11034
|
+
return openBlock(), createBlock(_sfc_main$b, {
|
|
11035
|
+
id: `${item.id}-measure`,
|
|
11036
|
+
key: `measure-${item.id}`,
|
|
11037
|
+
ref_for: true,
|
|
11038
|
+
ref: (element) => setMeasureRef(item.id, element),
|
|
11039
|
+
active: __props.activeId === item.id,
|
|
11040
|
+
appearance: __props.appearance,
|
|
11041
|
+
class: "ui-v1-tab-group__measure-button",
|
|
11042
|
+
item,
|
|
11043
|
+
size: __props.size,
|
|
11044
|
+
tabindex: "-1"
|
|
11045
|
+
}, null, 8, ["id", "active", "appearance", "item", "size"]);
|
|
11046
|
+
}), 128))
|
|
11047
|
+
]),
|
|
11048
|
+
createElementVNode("div", {
|
|
11049
|
+
ref_key: "head",
|
|
11050
|
+
ref: head,
|
|
11051
|
+
class: "ui-v1-tab-group__head",
|
|
11052
|
+
role: "tablist"
|
|
11053
|
+
}, [
|
|
11054
|
+
createElementVNode("div", _hoisted_2$3, [
|
|
11055
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(__props.headItems, (item) => {
|
|
11056
|
+
return openBlock(), createBlock(_sfc_main$b, {
|
|
11057
|
+
id: `${props.groupId}-tab-${item.id}`,
|
|
11058
|
+
key: `head-${item.id}`,
|
|
11059
|
+
ref_for: true,
|
|
11060
|
+
ref: (element) => setHeadRef(item.id, element),
|
|
11061
|
+
active: __props.activeId === item.id,
|
|
11062
|
+
"aria-disabled": item.disabled ? "true" : "false",
|
|
11063
|
+
"aria-selected": __props.activeId === item.id ? "true" : "false",
|
|
11064
|
+
"aria-controls": item.contentSlot ? `${props.groupId}-panel-${item.id}` : void 0,
|
|
11065
|
+
appearance: __props.appearance,
|
|
11066
|
+
item,
|
|
11067
|
+
size: __props.size,
|
|
11068
|
+
tabindex: !item.disabled && __props.focusableId === item.id ? 0 : -1,
|
|
11069
|
+
role: "tab",
|
|
11070
|
+
onClick: ($event) => _ctx.$emit("select", item.id),
|
|
11071
|
+
onFocus: ($event) => _ctx.$emit("focus-tab", item.id),
|
|
11072
|
+
onKeydown: ($event) => onTabKeydown(item.id, $event)
|
|
11073
|
+
}, null, 8, ["id", "active", "aria-disabled", "aria-selected", "aria-controls", "appearance", "item", "size", "tabindex", "onClick", "onFocus", "onKeydown"]);
|
|
11074
|
+
}), 128))
|
|
11075
|
+
]),
|
|
11076
|
+
__props.hasMenuItems ? (openBlock(), createBlock(_sfc_main$Y, {
|
|
11077
|
+
key: 0,
|
|
11078
|
+
active: __props.menuExpanded,
|
|
11079
|
+
"aria-expanded": __props.menuExpanded ? "true" : "false",
|
|
11080
|
+
"aria-label": "More tabs",
|
|
11081
|
+
"aria-haspopup": "menu",
|
|
11082
|
+
appearance: "tertiary",
|
|
11083
|
+
class: "ui-v1-tab-group__trigger",
|
|
11084
|
+
size: "sm",
|
|
11085
|
+
type: "button"
|
|
11086
|
+
}, {
|
|
11087
|
+
default: withCtx(() => [
|
|
11088
|
+
createVNode(unref(IconMoreHorizontal), {
|
|
11089
|
+
"aria-hidden": "true",
|
|
11090
|
+
class: "ui-v1-tab-group__trigger-icon"
|
|
11091
|
+
})
|
|
11092
|
+
]),
|
|
11093
|
+
_: 1
|
|
11094
|
+
}, 8, ["active", "aria-expanded"])) : createCommentVNode("", true)
|
|
11095
|
+
], 512)
|
|
11096
|
+
], 64);
|
|
11097
|
+
};
|
|
11098
|
+
}
|
|
11099
|
+
});
|
|
11100
|
+
const _sfc_main$9 = defineComponent({
|
|
11101
|
+
name: "UiTabGroupMenu",
|
|
11102
|
+
props: {
|
|
11103
|
+
items: {
|
|
11104
|
+
type: Array,
|
|
11105
|
+
default: () => []
|
|
11106
|
+
},
|
|
11107
|
+
activeId: {
|
|
11108
|
+
type: String,
|
|
11109
|
+
default: null
|
|
11110
|
+
},
|
|
11111
|
+
menuExpanded: {
|
|
11112
|
+
type: Boolean,
|
|
11113
|
+
default: false
|
|
11114
|
+
},
|
|
11115
|
+
size: {
|
|
11116
|
+
type: String,
|
|
11117
|
+
default: SIZE$2.MD,
|
|
11118
|
+
validator: (size) => Object.values(SIZE$2).includes(size)
|
|
11119
|
+
}
|
|
11120
|
+
},
|
|
11121
|
+
emits: {
|
|
11122
|
+
"select": (id) => {
|
|
11123
|
+
return true;
|
|
11124
|
+
},
|
|
11125
|
+
"update:menuExpanded": (expanded) => {
|
|
11126
|
+
return true;
|
|
11127
|
+
}
|
|
11128
|
+
},
|
|
11129
|
+
setup(props, { emit }) {
|
|
11130
|
+
const resolvedMenuItemSize = computed(() => {
|
|
11131
|
+
return props.size === SIZE$2.SM ? SIZE$6.SM : SIZE$6.MD;
|
|
11132
|
+
});
|
|
11133
|
+
const onMenuItemKeydown = (id, event) => {
|
|
11134
|
+
switch (event.key) {
|
|
11135
|
+
case " ":
|
|
11136
|
+
case "Enter":
|
|
11137
|
+
event.preventDefault();
|
|
11138
|
+
emit("select", id);
|
|
11139
|
+
}
|
|
11140
|
+
};
|
|
11141
|
+
const onUpdateVisible = (expanded) => {
|
|
11142
|
+
if (expanded !== props.menuExpanded) {
|
|
11143
|
+
emit("update:menuExpanded", expanded);
|
|
11144
|
+
}
|
|
11145
|
+
};
|
|
11146
|
+
return () => {
|
|
11147
|
+
if (!props.items.length) {
|
|
11148
|
+
return null;
|
|
11149
|
+
}
|
|
11150
|
+
return h(_sfc_main$P, {
|
|
11151
|
+
visible: props.menuExpanded,
|
|
11152
|
+
targetTriggers: {
|
|
11153
|
+
hide: ["click"],
|
|
11154
|
+
show: ["click"]
|
|
11155
|
+
},
|
|
11156
|
+
globalTriggers: ["miss-click", "reference-hidden"],
|
|
11157
|
+
class: "ui-v1-tab-group__popper",
|
|
11158
|
+
placement: "bottom-end",
|
|
11159
|
+
"onUpdate:visible": onUpdateVisible
|
|
11160
|
+
}, {
|
|
11161
|
+
default: () => h("div", {
|
|
11162
|
+
class: "ui-v1-tab-group__menu",
|
|
11163
|
+
role: "menu"
|
|
11164
|
+
}, props.items.map((item) => h(_sfc_main$K, {
|
|
11165
|
+
key: `menu-${item.id}`,
|
|
11166
|
+
active: props.activeId === item.id,
|
|
11167
|
+
"aria-checked": props.activeId === item.id ? "true" : "false",
|
|
11168
|
+
"aria-disabled": item.disabled ? "true" : "false",
|
|
11169
|
+
class: "ui-v1-tab-group__menu-item",
|
|
11170
|
+
counter: item.counter ?? null,
|
|
11171
|
+
disabled: item.disabled,
|
|
11172
|
+
role: "menuitemradio",
|
|
11173
|
+
size: resolvedMenuItemSize.value,
|
|
11174
|
+
tabindex: item.disabled ? -1 : 0,
|
|
11175
|
+
onClick: () => emit("select", item.id),
|
|
11176
|
+
onKeydown: (event) => {
|
|
11177
|
+
onMenuItemKeydown(item.id, event);
|
|
11178
|
+
}
|
|
11179
|
+
}, {
|
|
11180
|
+
default: () => item.labelSlot?.() ?? [item.label ?? item.id],
|
|
11181
|
+
"leading-icon": item.iconSlot ? () => item.iconSlot?.() ?? null : void 0
|
|
11182
|
+
})))
|
|
11183
|
+
});
|
|
11184
|
+
};
|
|
11185
|
+
}
|
|
11186
|
+
});
|
|
11187
|
+
const isNamedComponent = (node, name) => {
|
|
11188
|
+
if (typeof node.type !== "object" || node.type === null) {
|
|
11189
|
+
return false;
|
|
11190
|
+
}
|
|
11191
|
+
return "name" in node.type && node.type.name === name;
|
|
11192
|
+
};
|
|
11193
|
+
const hasTabLikeProps = (node) => {
|
|
11194
|
+
const props = node.props ?? {};
|
|
11195
|
+
const childrenRecord = node.children && !Array.isArray(node.children) && typeof node.children !== "string" ? node.children : {};
|
|
11196
|
+
if (typeof props.id !== "string" || !props.id.length) {
|
|
11197
|
+
return false;
|
|
11198
|
+
}
|
|
11199
|
+
return [
|
|
11200
|
+
"label",
|
|
11201
|
+
"counter",
|
|
11202
|
+
"disabled"
|
|
11203
|
+
].some((key) => key in props) || [
|
|
11204
|
+
"default",
|
|
11205
|
+
"icon",
|
|
11206
|
+
"label",
|
|
11207
|
+
"counter",
|
|
11208
|
+
"content"
|
|
11209
|
+
].some((key) => key in childrenRecord);
|
|
11210
|
+
};
|
|
11211
|
+
const isTabVNode = (node) => {
|
|
11212
|
+
return isNamedComponent(node, "UiTab") || hasTabLikeProps(node);
|
|
11213
|
+
};
|
|
11214
|
+
const isWhitespaceText = (value) => value.trim().length === 0;
|
|
11215
|
+
const normalizeNodes = (children) => {
|
|
11216
|
+
const normalized = [];
|
|
11217
|
+
children.forEach((child) => {
|
|
11218
|
+
if (Array.isArray(child)) {
|
|
11219
|
+
normalized.push(...normalizeNodes(child));
|
|
11220
|
+
return;
|
|
11221
|
+
}
|
|
11222
|
+
if (!isVNode(child)) {
|
|
11223
|
+
return;
|
|
11224
|
+
}
|
|
11225
|
+
if (child.type === Comment) {
|
|
11226
|
+
return;
|
|
11227
|
+
}
|
|
11228
|
+
if (child.type === Text) {
|
|
11229
|
+
const text = typeof child.children === "string" ? child.children : "";
|
|
11230
|
+
if (!isWhitespaceText(text)) {
|
|
11231
|
+
normalized.push(child);
|
|
11232
|
+
}
|
|
11233
|
+
return;
|
|
11234
|
+
}
|
|
11235
|
+
if (child.type === Fragment && Array.isArray(child.children)) {
|
|
11236
|
+
normalized.push(...normalizeNodes(child.children));
|
|
11237
|
+
return;
|
|
11238
|
+
}
|
|
11239
|
+
normalized.push(child);
|
|
11240
|
+
});
|
|
11241
|
+
return normalized;
|
|
11242
|
+
};
|
|
11243
|
+
const normalizeString = (value) => {
|
|
11244
|
+
return typeof value === "string" ? value : "";
|
|
11245
|
+
};
|
|
11246
|
+
const normalizeCounter = (value) => {
|
|
11247
|
+
return typeof value === "string" || typeof value === "number" ? value : null;
|
|
11248
|
+
};
|
|
11249
|
+
const normalizeBoolean = (value) => value === "" || value === true;
|
|
11250
|
+
const createTabDefinitions = (items) => {
|
|
11251
|
+
return items.map((item) => ({
|
|
11252
|
+
id: item.id,
|
|
11253
|
+
label: item.label ?? "",
|
|
11254
|
+
counter: item.counter ?? null,
|
|
11255
|
+
disabled: Boolean(item.disabled),
|
|
11256
|
+
iconOnly: Boolean(item.iconOnly)
|
|
11257
|
+
}));
|
|
11258
|
+
};
|
|
11259
|
+
const collectTabs = (children) => {
|
|
11260
|
+
return normalizeNodes(children).filter(isTabVNode).map((node, index) => {
|
|
11261
|
+
const props = node.props ?? {};
|
|
11262
|
+
const childrenRecord = node.children && !Array.isArray(node.children) && typeof node.children !== "string" ? node.children : {};
|
|
11263
|
+
const label2 = normalizeString(props.label);
|
|
11264
|
+
const counter2 = normalizeCounter(props.counter);
|
|
11265
|
+
const hasIcon = Boolean(childrenRecord.icon);
|
|
11266
|
+
const hasLabel = Boolean(childrenRecord.label) || Boolean(label2);
|
|
11267
|
+
const hasCounter2 = typeof childrenRecord.counter !== "undefined" || counter2 !== null;
|
|
11268
|
+
return {
|
|
11269
|
+
id: normalizeString(props.id) || String(node.key ?? `ui-v1-tab-${index}`),
|
|
11270
|
+
label: label2,
|
|
11271
|
+
counter: counter2,
|
|
11272
|
+
disabled: normalizeBoolean(props.disabled),
|
|
11273
|
+
iconOnly: hasIcon && !hasLabel && !hasCounter2,
|
|
11274
|
+
iconSlot: childrenRecord.icon,
|
|
11275
|
+
labelSlot: childrenRecord.label,
|
|
11276
|
+
counterSlot: childrenRecord.counter,
|
|
11277
|
+
contentSlot: childrenRecord.content
|
|
11278
|
+
};
|
|
11279
|
+
});
|
|
11280
|
+
};
|
|
11281
|
+
const resolveActiveId = (tabs, activeId) => {
|
|
11282
|
+
if (!activeId) {
|
|
11283
|
+
return null;
|
|
11284
|
+
}
|
|
11285
|
+
return tabs.some((tab) => tab.id === activeId) ? activeId : null;
|
|
11286
|
+
};
|
|
11287
|
+
const HEAD_GAP = {
|
|
11288
|
+
[SIZE$2.SM]: 20,
|
|
11289
|
+
[SIZE$2.MD]: 24,
|
|
11290
|
+
[SIZE$2.LG]: 24
|
|
11291
|
+
};
|
|
11292
|
+
const FILLED_TRIGGER_GAP = {
|
|
11293
|
+
[SIZE$2.SM]: 10,
|
|
11294
|
+
[SIZE$2.MD]: 12,
|
|
11295
|
+
[SIZE$2.LG]: 32
|
|
11296
|
+
};
|
|
11297
|
+
const MENU_TRIGGER_WIDTH = 36;
|
|
11298
|
+
const widthOf = (id, widths) => {
|
|
11299
|
+
return Math.max(0, Math.ceil(widths.get(id) ?? 0));
|
|
11300
|
+
};
|
|
11301
|
+
const sumWidths = (ids, widths, gap) => ids.reduce((total, id, index) => {
|
|
11302
|
+
return total + widthOf(id, widths) + (index > 0 ? gap : 0);
|
|
11303
|
+
}, 0);
|
|
11304
|
+
const moveActiveToHead = (ids, headIds, widths, limit, gap, activeId) => {
|
|
11305
|
+
if (headIds.includes(activeId)) {
|
|
11306
|
+
return headIds;
|
|
11307
|
+
}
|
|
11308
|
+
const next = [...headIds, activeId].sort((a, b) => ids.indexOf(a) - ids.indexOf(b));
|
|
11309
|
+
while (next.length > 1 && sumWidths(next, widths, gap) > limit) {
|
|
11310
|
+
const removable = [...next].reverse().find((id) => id !== activeId);
|
|
11311
|
+
if (!removable) {
|
|
11312
|
+
break;
|
|
11313
|
+
}
|
|
11314
|
+
next.splice(next.indexOf(removable), 1);
|
|
11315
|
+
}
|
|
11316
|
+
return next;
|
|
11317
|
+
};
|
|
11318
|
+
const resolveTabLayout = (options) => {
|
|
11319
|
+
const ids = options.items.map((item) => item.id);
|
|
11320
|
+
if (!ids.length) {
|
|
11321
|
+
return {
|
|
11322
|
+
headIds: [],
|
|
11323
|
+
menuIds: []
|
|
11324
|
+
};
|
|
11325
|
+
}
|
|
11326
|
+
if (!options.overflowing || options.availableWidth <= 0) {
|
|
11327
|
+
return {
|
|
11328
|
+
headIds: ids,
|
|
11329
|
+
menuIds: []
|
|
11330
|
+
};
|
|
11331
|
+
}
|
|
11332
|
+
if (ids.some((id) => widthOf(id, options.widths) === 0)) {
|
|
11333
|
+
return {
|
|
11334
|
+
headIds: ids,
|
|
11335
|
+
menuIds: []
|
|
11336
|
+
};
|
|
11337
|
+
}
|
|
11338
|
+
const size = options.size;
|
|
11339
|
+
const appearance = options.appearance;
|
|
11340
|
+
const gap = appearance === APPEARANCE.FILLED ? 0 : HEAD_GAP[size] ?? HEAD_GAP[SIZE$2.MD];
|
|
11341
|
+
const totalWidth = sumWidths(ids, options.widths, gap);
|
|
11342
|
+
if (totalWidth <= options.availableWidth) {
|
|
11343
|
+
return {
|
|
11344
|
+
headIds: ids,
|
|
11345
|
+
menuIds: []
|
|
11346
|
+
};
|
|
11347
|
+
}
|
|
11348
|
+
const triggerGap = appearance === APPEARANCE.FILLED ? FILLED_TRIGGER_GAP[size] ?? FILLED_TRIGGER_GAP[SIZE$2.MD] : gap;
|
|
11349
|
+
const limit = Math.max(options.availableWidth - MENU_TRIGGER_WIDTH - triggerGap, 0);
|
|
11350
|
+
const headIds = [];
|
|
11351
|
+
let occupied = 0;
|
|
11352
|
+
options.items.forEach((item) => {
|
|
11353
|
+
const nextWidth = occupied + widthOf(item.id, options.widths) + (headIds.length > 0 ? gap : 0);
|
|
11354
|
+
if (nextWidth <= limit || headIds.length === 0) {
|
|
11355
|
+
headIds.push(item.id);
|
|
11356
|
+
occupied = nextWidth;
|
|
11357
|
+
}
|
|
11358
|
+
});
|
|
11359
|
+
const resolvedHeadIds = options.activeId ? moveActiveToHead(ids, headIds, options.widths, limit, gap, options.activeId) : headIds;
|
|
11360
|
+
const headSet = new Set(resolvedHeadIds);
|
|
11361
|
+
return {
|
|
11362
|
+
headIds: ids.filter((id) => headSet.has(id)),
|
|
11363
|
+
menuIds: ids.filter((id) => !headSet.has(id))
|
|
11364
|
+
};
|
|
11365
|
+
};
|
|
11366
|
+
let counter = 0;
|
|
11367
|
+
const _sfc_main$8 = defineComponent({
|
|
11368
|
+
name: "UiTabGroup",
|
|
11369
|
+
inheritAttrs: false,
|
|
11370
|
+
props: {
|
|
11371
|
+
items: {
|
|
11372
|
+
type: Array,
|
|
11373
|
+
default: () => []
|
|
11374
|
+
},
|
|
11375
|
+
activeId: {
|
|
11376
|
+
type: String,
|
|
11377
|
+
default: null
|
|
11378
|
+
},
|
|
11379
|
+
focusableId: {
|
|
11380
|
+
type: String,
|
|
11381
|
+
default: void 0
|
|
11382
|
+
},
|
|
11383
|
+
menuExpanded: {
|
|
11384
|
+
type: Boolean,
|
|
11385
|
+
default: void 0
|
|
11386
|
+
},
|
|
11387
|
+
overflowing: {
|
|
11388
|
+
type: Boolean,
|
|
11389
|
+
default: false
|
|
11390
|
+
},
|
|
11391
|
+
size: {
|
|
11392
|
+
type: String,
|
|
11393
|
+
default: SIZE$2.MD,
|
|
11394
|
+
validator: (size) => Object.values(SIZE$2).includes(size)
|
|
11395
|
+
},
|
|
11396
|
+
appearance: {
|
|
11397
|
+
type: String,
|
|
11398
|
+
default: APPEARANCE.TEXT,
|
|
11399
|
+
validator: (appearance) => Object.values(APPEARANCE).includes(appearance)
|
|
11400
|
+
}
|
|
11401
|
+
},
|
|
11402
|
+
emits: {
|
|
11403
|
+
"layout": (layout) => {
|
|
11404
|
+
return true;
|
|
11405
|
+
},
|
|
11406
|
+
"change": (id) => {
|
|
11407
|
+
return true;
|
|
11408
|
+
},
|
|
11409
|
+
"update:activeId": (id) => {
|
|
11410
|
+
return true;
|
|
11411
|
+
},
|
|
11412
|
+
"update:focusableId": (id) => {
|
|
11413
|
+
return true;
|
|
11414
|
+
},
|
|
11415
|
+
"update:menuExpanded": (expanded) => {
|
|
11416
|
+
return true;
|
|
11417
|
+
}
|
|
11418
|
+
},
|
|
11419
|
+
setup(props, { attrs, emit, slots }) {
|
|
11420
|
+
const groupId = `ui-v1-tab-group-${++counter}`;
|
|
11421
|
+
const root = ref(null);
|
|
11422
|
+
const headView = ref(null);
|
|
11423
|
+
const widths = ref(/* @__PURE__ */ new Map());
|
|
11424
|
+
const availableWidth = ref(0);
|
|
11425
|
+
const localFocusableId = ref(null);
|
|
11426
|
+
const localMenuExpanded = ref(false);
|
|
11427
|
+
const resolvedMenuExpanded = computed(() => {
|
|
11428
|
+
return typeof props.menuExpanded === "undefined" ? localMenuExpanded.value : props.menuExpanded;
|
|
11429
|
+
});
|
|
11430
|
+
let currentLayout = {
|
|
11431
|
+
headIds: [],
|
|
11432
|
+
menuIds: []
|
|
11433
|
+
};
|
|
11434
|
+
let currentResolvedFocusableId = null;
|
|
11435
|
+
let currentTabs = props.items.length ? createTabDefinitions(props.items) : [];
|
|
11436
|
+
let lastEmittedLayoutKey = "";
|
|
11437
|
+
let lastFocusedId = null;
|
|
11438
|
+
let observer = null;
|
|
11439
|
+
const updateMetrics = () => {
|
|
11440
|
+
const metrics = headView.value?.measure();
|
|
11441
|
+
availableWidth.value = metrics?.availableWidth ?? 0;
|
|
11442
|
+
widths.value = metrics?.widths ?? /* @__PURE__ */ new Map();
|
|
11443
|
+
};
|
|
11444
|
+
const setFocusableId = (id) => {
|
|
11445
|
+
if (typeof props.focusableId === "undefined") {
|
|
11446
|
+
localFocusableId.value = id;
|
|
11447
|
+
}
|
|
11448
|
+
emit("update:focusableId", id);
|
|
11449
|
+
};
|
|
11450
|
+
const setMenuExpanded = (expanded) => {
|
|
11451
|
+
if (typeof props.menuExpanded === "undefined") {
|
|
11452
|
+
localMenuExpanded.value = expanded;
|
|
11453
|
+
}
|
|
11454
|
+
emit("update:menuExpanded", expanded);
|
|
11455
|
+
};
|
|
11456
|
+
const resolveFocusableId = (enabledHeadItems) => {
|
|
11457
|
+
const enabledIds = new Set(enabledHeadItems.map((item) => item.id));
|
|
11458
|
+
const candidateFocusableId = typeof props.focusableId === "undefined" ? localFocusableId.value : props.focusableId;
|
|
11459
|
+
if (candidateFocusableId && enabledIds.has(candidateFocusableId)) {
|
|
11460
|
+
return candidateFocusableId;
|
|
11461
|
+
}
|
|
11462
|
+
const resolvedActiveId = resolveActiveId(currentTabs, props.activeId);
|
|
11463
|
+
if (resolvedActiveId && enabledIds.has(resolvedActiveId)) {
|
|
11464
|
+
return resolvedActiveId;
|
|
11465
|
+
}
|
|
11466
|
+
return enabledHeadItems[0]?.id ?? null;
|
|
11467
|
+
};
|
|
11468
|
+
const moveFocus = (intent) => {
|
|
11469
|
+
const headIds = new Set(currentLayout.headIds);
|
|
11470
|
+
const enabledHeadItems = currentTabs.filter((item) => {
|
|
11471
|
+
return headIds.has(item.id) && !item.disabled;
|
|
11472
|
+
});
|
|
11473
|
+
if (!enabledHeadItems.length) {
|
|
11474
|
+
setFocusableId(null);
|
|
11475
|
+
return;
|
|
11476
|
+
}
|
|
11477
|
+
let target = enabledHeadItems[0];
|
|
11478
|
+
if (intent.direction === "first") {
|
|
11479
|
+
target = enabledHeadItems[0];
|
|
11480
|
+
} else if (intent.direction === "last") {
|
|
11481
|
+
target = enabledHeadItems.at(-1) ?? enabledHeadItems[0];
|
|
11482
|
+
} else {
|
|
11483
|
+
const currentIndex = enabledHeadItems.findIndex((tab) => tab.id === intent.id);
|
|
11484
|
+
const fallbackIndex = currentResolvedFocusableId ? enabledHeadItems.findIndex((tab) => tab.id === currentResolvedFocusableId) : -1;
|
|
11485
|
+
const baseIndex = currentIndex === -1 ? Math.max(fallbackIndex, 0) : currentIndex;
|
|
11486
|
+
const offset2 = intent.direction === "next" ? 1 : -1;
|
|
11487
|
+
const nextIndex = (baseIndex + offset2 + enabledHeadItems.length) % enabledHeadItems.length;
|
|
11488
|
+
target = enabledHeadItems[nextIndex] ?? enabledHeadItems[0];
|
|
11489
|
+
}
|
|
11490
|
+
if (!target) {
|
|
11491
|
+
return;
|
|
11492
|
+
}
|
|
11493
|
+
setFocusableId(target.id);
|
|
11494
|
+
emit("change", target.id);
|
|
11495
|
+
emit("update:activeId", target.id);
|
|
11496
|
+
};
|
|
11497
|
+
const selectTab = (id) => {
|
|
11498
|
+
const tab = currentTabs.find((item) => item.id === id);
|
|
11499
|
+
if (!tab || tab.disabled) {
|
|
11500
|
+
return;
|
|
11501
|
+
}
|
|
11502
|
+
setFocusableId(id);
|
|
11503
|
+
setMenuExpanded(false);
|
|
11504
|
+
emit("change", id);
|
|
11505
|
+
emit("update:activeId", id);
|
|
11506
|
+
};
|
|
11507
|
+
const shouldMoveDomFocus = () => {
|
|
11508
|
+
const activeElement = document.activeElement;
|
|
11509
|
+
return Boolean(activeElement && root.value?.contains(activeElement));
|
|
11510
|
+
};
|
|
11511
|
+
const syncAfterRender = () => {
|
|
11512
|
+
const layoutKey = `${currentLayout.headIds.join("|")}::${currentLayout.menuIds.join("|")}`;
|
|
11513
|
+
if (layoutKey !== lastEmittedLayoutKey) {
|
|
11514
|
+
lastEmittedLayoutKey = layoutKey;
|
|
11515
|
+
emit("layout", currentLayout);
|
|
11516
|
+
}
|
|
11517
|
+
if (!currentResolvedFocusableId || currentResolvedFocusableId === lastFocusedId || !shouldMoveDomFocus()) {
|
|
11518
|
+
return;
|
|
11519
|
+
}
|
|
11520
|
+
lastFocusedId = currentResolvedFocusableId;
|
|
11521
|
+
void nextTick(() => {
|
|
11522
|
+
headView.value?.focusTab(currentResolvedFocusableId);
|
|
11523
|
+
});
|
|
11524
|
+
};
|
|
11525
|
+
onMounted(() => {
|
|
11526
|
+
updateMetrics();
|
|
11527
|
+
syncAfterRender();
|
|
11528
|
+
if (typeof window !== "undefined" && typeof window.ResizeObserver === "function" && root.value) {
|
|
11529
|
+
observer = new window.ResizeObserver(() => {
|
|
11530
|
+
requestAnimationFrame(updateMetrics);
|
|
11531
|
+
});
|
|
11532
|
+
observer.observe(root.value);
|
|
11533
|
+
}
|
|
11534
|
+
});
|
|
11535
|
+
onUpdated(syncAfterRender);
|
|
11536
|
+
onBeforeUnmount(() => {
|
|
11537
|
+
observer?.disconnect();
|
|
11538
|
+
observer = null;
|
|
11539
|
+
});
|
|
11540
|
+
watch(() => props.items, () => {
|
|
11541
|
+
void nextTick(updateMetrics);
|
|
11542
|
+
}, { deep: true });
|
|
11543
|
+
watch(() => [props.appearance, props.size], () => {
|
|
11544
|
+
void nextTick(updateMetrics);
|
|
11545
|
+
});
|
|
11546
|
+
return () => {
|
|
11547
|
+
const tabs = props.items.length ? createTabDefinitions(props.items) : collectTabs(slots.default?.() ?? []);
|
|
11548
|
+
const resolvedActiveId = resolveActiveId(tabs, props.activeId);
|
|
11549
|
+
const layout = resolveTabLayout({
|
|
11550
|
+
items: tabs,
|
|
11551
|
+
widths: widths.value,
|
|
11552
|
+
availableWidth: availableWidth.value,
|
|
11553
|
+
size: props.size ?? SIZE$2.MD,
|
|
11554
|
+
appearance: props.appearance ?? APPEARANCE.TEXT,
|
|
11555
|
+
overflowing: props.overflowing,
|
|
11556
|
+
activeId: resolvedActiveId
|
|
11557
|
+
});
|
|
11558
|
+
const headIds = new Set(layout.headIds);
|
|
11559
|
+
const menuIds = new Set(layout.menuIds);
|
|
11560
|
+
const headItems = tabs.filter((item) => headIds.has(item.id));
|
|
11561
|
+
const menuItems = tabs.filter((item) => menuIds.has(item.id));
|
|
11562
|
+
const enabledHeadItems = headItems.filter((item) => !item.disabled);
|
|
11563
|
+
const activeItem = resolvedActiveId ? tabs.find((item) => item.id === resolvedActiveId) ?? null : null;
|
|
11564
|
+
currentTabs = tabs;
|
|
11565
|
+
currentLayout = layout;
|
|
11566
|
+
currentResolvedFocusableId = resolveFocusableId(enabledHeadItems);
|
|
11567
|
+
return h("div", {
|
|
11568
|
+
...attrs,
|
|
11569
|
+
ref: root,
|
|
11570
|
+
class: [attrs.class, {
|
|
11571
|
+
"ui-v1-tab-group": true,
|
|
11572
|
+
[`ui-v1-tab-group_${props.appearance}`]: true,
|
|
11573
|
+
[`ui-v1-tab-group_${props.size}`]: true
|
|
11574
|
+
}]
|
|
11575
|
+
}, [
|
|
11576
|
+
h(_sfc_main$u, null, {
|
|
11577
|
+
default: () => [
|
|
11578
|
+
h(_sfc_main$a, {
|
|
11579
|
+
ref: headView,
|
|
11580
|
+
activeId: resolvedActiveId,
|
|
11581
|
+
appearance: props.appearance,
|
|
11582
|
+
focusableId: currentResolvedFocusableId,
|
|
11583
|
+
groupId,
|
|
11584
|
+
hasMenuItems: menuItems.length > 0,
|
|
11585
|
+
headItems,
|
|
11586
|
+
items: tabs,
|
|
11587
|
+
menuExpanded: resolvedMenuExpanded.value,
|
|
11588
|
+
size: props.size,
|
|
11589
|
+
onFocusTab: (id) => {
|
|
11590
|
+
setFocusableId(id);
|
|
11591
|
+
},
|
|
11592
|
+
onMoveFocus: (intent) => {
|
|
11593
|
+
moveFocus(intent);
|
|
11594
|
+
},
|
|
11595
|
+
onSelect: (id) => {
|
|
11596
|
+
selectTab(id);
|
|
11597
|
+
}
|
|
11598
|
+
}),
|
|
11599
|
+
h(_sfc_main$9, {
|
|
11600
|
+
activeId: resolvedActiveId,
|
|
11601
|
+
items: menuItems,
|
|
11602
|
+
menuExpanded: resolvedMenuExpanded.value,
|
|
11603
|
+
size: props.size,
|
|
11604
|
+
onSelect: (id) => {
|
|
11605
|
+
selectTab(id);
|
|
11606
|
+
},
|
|
11607
|
+
"onUpdate:menuExpanded": (expanded) => {
|
|
11608
|
+
setMenuExpanded(expanded);
|
|
11609
|
+
}
|
|
11610
|
+
})
|
|
11611
|
+
]
|
|
11612
|
+
}),
|
|
11613
|
+
activeItem?.contentSlot ? h("div", {
|
|
11614
|
+
id: `${groupId}-panel-${activeItem.id}`,
|
|
11615
|
+
class: "ui-v1-tab-group__panel",
|
|
11616
|
+
role: "tabpanel",
|
|
11617
|
+
"aria-labelledby": `${groupId}-tab-${activeItem.id}`
|
|
11618
|
+
}, activeItem.contentSlot()) : null
|
|
11619
|
+
]);
|
|
10323
11620
|
};
|
|
10324
11621
|
}
|
|
10325
11622
|
});
|
|
10326
|
-
const _hoisted_1$
|
|
11623
|
+
const _hoisted_1$5 = {
|
|
10327
11624
|
xmlns: "http://www.w3.org/2000/svg",
|
|
10328
11625
|
viewBox: "0 0 24 24"
|
|
10329
11626
|
};
|
|
10330
|
-
function render$
|
|
10331
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
11627
|
+
function render$2(_ctx, _cache) {
|
|
11628
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$5, [..._cache[0] || (_cache[0] = [
|
|
10332
11629
|
createElementVNode("path", {
|
|
10333
11630
|
fill: "currentColor",
|
|
10334
11631
|
d: "m14.675 4.6.544-1.257a.99.99 0 0 0-.04-.911.82.82 0 0 0-.739-.421L9.5 2a.81.81 0 0 0-.704.423.99.99 0 0 0-.047.88l.55 1.26c.155.358.201.762.13 1.15l-.623 3.441a2.8 2.8 0 0 1-.685 1.426l-.875.96a.96.96 0 0 0-.246.646l.025.555c.002.502.373.91.83.912l8.312.025c.458 0 .828-.407.828-.909l.005-.536a.96.96 0 0 0-.248-.646l-.878-.964a2.85 2.85 0 0 1-.691-1.43l-.636-3.443a2 2 0 0 1 .128-1.15M10.967 20.047a3 3 0 0 1-.196-1.079l-.007-3.771 2.424.057.007 3.758a3 3 0 0 1-.193 1.079l-.638 1.632a.415.415 0 0 1-.382.277.42.42 0 0 1-.383-.279z"
|
|
10335
11632
|
}, null, -1)
|
|
10336
11633
|
])]);
|
|
10337
11634
|
}
|
|
10338
|
-
const IconPinned = { render: render$
|
|
11635
|
+
const IconPinned = { render: render$2 };
|
|
10339
11636
|
var SIZE$1 = /* @__PURE__ */ ((SIZE2) => {
|
|
10340
11637
|
SIZE2["LG"] = "lg";
|
|
10341
11638
|
SIZE2["MD"] = "md";
|
|
@@ -10367,13 +11664,13 @@ const _i18n$1 = define({
|
|
|
10367
11664
|
"ru-RU": messages_ru_RU$1
|
|
10368
11665
|
}
|
|
10369
11666
|
});
|
|
10370
|
-
const _hoisted_1$
|
|
11667
|
+
const _hoisted_1$4 = {
|
|
10371
11668
|
key: 0,
|
|
10372
11669
|
class: "ui-v1-tag__icon"
|
|
10373
11670
|
};
|
|
10374
|
-
const _hoisted_2$
|
|
10375
|
-
const _hoisted_3 = ["aria-label"];
|
|
10376
|
-
const _sfc_main$
|
|
11671
|
+
const _hoisted_2$2 = { class: "ui-v1-tag__content-inner" };
|
|
11672
|
+
const _hoisted_3$1 = ["aria-label"];
|
|
11673
|
+
const _sfc_main$7 = /* @__PURE__ */ defineComponent({
|
|
10377
11674
|
__name: "UiTag",
|
|
10378
11675
|
props: {
|
|
10379
11676
|
/** Размер */
|
|
@@ -10435,7 +11732,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
10435
11732
|
style: normalizeStyle(__props.background ? { background: __props.background } : {}),
|
|
10436
11733
|
onMouseoverOnce: onHover
|
|
10437
11734
|
}, [
|
|
10438
|
-
_ctx.$slots["icon"] || __props.pinned ? (openBlock(), createElementBlock("div", _hoisted_1$
|
|
11735
|
+
_ctx.$slots["icon"] || __props.pinned ? (openBlock(), createElementBlock("div", _hoisted_1$4, [
|
|
10439
11736
|
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
10440
11737
|
createVNode(unref(IconPinned))
|
|
10441
11738
|
])
|
|
@@ -10446,7 +11743,7 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
10446
11743
|
style: normalizeStyle(textStyle.value),
|
|
10447
11744
|
class: "ui-v1-tag__content"
|
|
10448
11745
|
}, [
|
|
10449
|
-
createElementVNode("div", _hoisted_2$
|
|
11746
|
+
createElementVNode("div", _hoisted_2$2, [
|
|
10450
11747
|
renderSlot(_ctx.$slots, "default")
|
|
10451
11748
|
])
|
|
10452
11749
|
], 4),
|
|
@@ -10460,25 +11757,25 @@ const _sfc_main$5 = /* @__PURE__ */ defineComponent({
|
|
|
10460
11757
|
renderSlot(_ctx.$slots, "remove-icon", {}, () => [
|
|
10461
11758
|
createVNode(unref(IconClear))
|
|
10462
11759
|
])
|
|
10463
|
-
], 8, _hoisted_3)) : createCommentVNode("", true)
|
|
11760
|
+
], 8, _hoisted_3$1)) : createCommentVNode("", true)
|
|
10464
11761
|
], 38)
|
|
10465
11762
|
], 16);
|
|
10466
11763
|
};
|
|
10467
11764
|
}
|
|
10468
11765
|
});
|
|
10469
|
-
const _hoisted_1$
|
|
11766
|
+
const _hoisted_1$3 = {
|
|
10470
11767
|
xmlns: "http://www.w3.org/2000/svg",
|
|
10471
11768
|
viewBox: "0 0 24 24"
|
|
10472
11769
|
};
|
|
10473
|
-
function render(_ctx, _cache) {
|
|
10474
|
-
return openBlock(), createElementBlock("svg", _hoisted_1$
|
|
11770
|
+
function render$1(_ctx, _cache) {
|
|
11771
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$3, [..._cache[0] || (_cache[0] = [
|
|
10475
11772
|
createElementVNode("path", {
|
|
10476
11773
|
fill: "currentColor",
|
|
10477
11774
|
d: "M12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10A10 10 0 0 0 12 2m0 18a8 8 0 1 1 0-16 8 8 0 0 1 0 16m.88-13.5v5.14l3.63 3.63a.51.51 0 0 1 0 .71l-.53.53a.51.51 0 0 1-.71 0l-4-4a.53.53 0 0 1-.15-.35V6.5a.5.5 0 0 1 .5-.5h.76a.5.5 0 0 1 .5.5"
|
|
10478
11775
|
}, null, -1)
|
|
10479
11776
|
])]);
|
|
10480
11777
|
}
|
|
10481
|
-
const IconTime = { render };
|
|
11778
|
+
const IconTime = { render: render$1 };
|
|
10482
11779
|
const pad = (time2) => time2 < 10 ? `0${time2}` : String(time2);
|
|
10483
11780
|
const milliseconds = (time2) => {
|
|
10484
11781
|
const [hours, minutes] = parse(time2).split(":").map((value) => parseInt(value, 10));
|
|
@@ -10577,14 +11874,14 @@ const _i18n = define({
|
|
|
10577
11874
|
"ru-RU": messages_ru_RU
|
|
10578
11875
|
}
|
|
10579
11876
|
});
|
|
10580
|
-
const _hoisted_1$
|
|
10581
|
-
const _hoisted_2 = {
|
|
11877
|
+
const _hoisted_1$2 = ["id", "aria-activedescendant", "aria-controls", "aria-disabled", "aria-expanded", "aria-label", "aria-readonly"];
|
|
11878
|
+
const _hoisted_2$1 = {
|
|
10582
11879
|
key: 0,
|
|
10583
11880
|
"aria-disabled": "true",
|
|
10584
11881
|
class: "ui-v1-time-picker__empty",
|
|
10585
11882
|
role: "option"
|
|
10586
11883
|
};
|
|
10587
|
-
const _sfc_main$
|
|
11884
|
+
const _sfc_main$6 = /* @__PURE__ */ defineComponent({
|
|
10588
11885
|
...{
|
|
10589
11886
|
inheritAttrs: false
|
|
10590
11887
|
},
|
|
@@ -10934,7 +12231,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
10934
12231
|
},
|
|
10935
12232
|
role: "combobox"
|
|
10936
12233
|
}, _ctx.$attrs, { onMousedown: onRootMouseDown }), [
|
|
10937
|
-
createVNode(_sfc_main$
|
|
12234
|
+
createVNode(_sfc_main$L, mergeProps({
|
|
10938
12235
|
id: inputId.value,
|
|
10939
12236
|
ref_key: "textbox",
|
|
10940
12237
|
ref: textbox,
|
|
@@ -10961,7 +12258,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
10961
12258
|
]),
|
|
10962
12259
|
_: 3
|
|
10963
12260
|
}, 16, ["id", "value", "placeholder", "clearable", "disabled", "readonly"]),
|
|
10964
|
-
createVNode(_sfc_main$
|
|
12261
|
+
createVNode(_sfc_main$P, {
|
|
10965
12262
|
id: `${inputId.value}-listbox`,
|
|
10966
12263
|
visible: expanded.value,
|
|
10967
12264
|
target: rootTarget.value,
|
|
@@ -10976,14 +12273,14 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
10976
12273
|
onAttached: onPopperAttached
|
|
10977
12274
|
}, {
|
|
10978
12275
|
default: withCtx(() => [
|
|
10979
|
-
createVNode(_sfc_main$
|
|
12276
|
+
createVNode(_sfc_main$J, {
|
|
10980
12277
|
ref_key: "scrollable",
|
|
10981
12278
|
ref: scrollable,
|
|
10982
12279
|
class: "ui-v1-time-picker__list"
|
|
10983
12280
|
}, {
|
|
10984
12281
|
default: withCtx(() => [
|
|
10985
12282
|
(openBlock(true), createElementBlock(Fragment, null, renderList(variants.value, (time2, index) => {
|
|
10986
|
-
return openBlock(), createBlock(_sfc_main$
|
|
12283
|
+
return openBlock(), createBlock(_sfc_main$K, {
|
|
10987
12284
|
id: optionId(index),
|
|
10988
12285
|
key: `${time2}-${index}`,
|
|
10989
12286
|
ref_for: true,
|
|
@@ -11005,17 +12302,148 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
|
|
|
11005
12302
|
_: 2
|
|
11006
12303
|
}, 1032, ["id", "active", "aria-selected", "data-time", "class", "onMouseenter", "onMousedown"]);
|
|
11007
12304
|
}), 128)),
|
|
11008
|
-
!variants.value.length ? (openBlock(), createElementBlock("div", _hoisted_2, toDisplayString(i18n.value.t("empty")), 1)) : createCommentVNode("", true)
|
|
12305
|
+
!variants.value.length ? (openBlock(), createElementBlock("div", _hoisted_2$1, toDisplayString(i18n.value.t("empty")), 1)) : createCommentVNode("", true)
|
|
11009
12306
|
]),
|
|
11010
12307
|
_: 1
|
|
11011
12308
|
}, 512)
|
|
11012
12309
|
]),
|
|
11013
12310
|
_: 1
|
|
11014
12311
|
}, 8, ["id", "visible", "target", "container", "aria-hidden", "disabled", "style"])
|
|
11015
|
-
], 16, _hoisted_1$
|
|
12312
|
+
], 16, _hoisted_1$2);
|
|
12313
|
+
};
|
|
12314
|
+
}
|
|
12315
|
+
});
|
|
12316
|
+
var UiToggleButtonSize = /* @__PURE__ */ ((UiToggleButtonSize2) => {
|
|
12317
|
+
UiToggleButtonSize2["LG"] = "lg";
|
|
12318
|
+
UiToggleButtonSize2["MD"] = "md";
|
|
12319
|
+
UiToggleButtonSize2["SM"] = "sm";
|
|
12320
|
+
UiToggleButtonSize2["XS"] = "xs";
|
|
12321
|
+
return UiToggleButtonSize2;
|
|
12322
|
+
})(UiToggleButtonSize || {});
|
|
12323
|
+
const _sfc_main$5 = defineComponent({
|
|
12324
|
+
name: "UiToggleButton",
|
|
12325
|
+
props: {
|
|
12326
|
+
id: {
|
|
12327
|
+
type: String,
|
|
12328
|
+
default: void 0
|
|
12329
|
+
},
|
|
12330
|
+
type: {
|
|
12331
|
+
type: String,
|
|
12332
|
+
default: "button"
|
|
12333
|
+
},
|
|
12334
|
+
pressed: {
|
|
12335
|
+
type: Boolean,
|
|
12336
|
+
default: false
|
|
12337
|
+
},
|
|
12338
|
+
disabled: {
|
|
12339
|
+
type: Boolean,
|
|
12340
|
+
default: false
|
|
12341
|
+
},
|
|
12342
|
+
focused: {
|
|
12343
|
+
type: Boolean,
|
|
12344
|
+
default: false
|
|
12345
|
+
},
|
|
12346
|
+
grouped: {
|
|
12347
|
+
type: Boolean,
|
|
12348
|
+
default: false
|
|
12349
|
+
},
|
|
12350
|
+
size: {
|
|
12351
|
+
type: String,
|
|
12352
|
+
default: UiToggleButtonSize.SM,
|
|
12353
|
+
validator: (size) => {
|
|
12354
|
+
return Object.values(UiToggleButtonSize).includes(size);
|
|
12355
|
+
}
|
|
12356
|
+
}
|
|
12357
|
+
},
|
|
12358
|
+
setup(props, { attrs, expose, slots }) {
|
|
12359
|
+
const root = useElementRef();
|
|
12360
|
+
expose({
|
|
12361
|
+
click: () => root.value?.click(),
|
|
12362
|
+
focus: () => root.value?.focus(),
|
|
12363
|
+
blur: () => root.value?.blur()
|
|
12364
|
+
});
|
|
12365
|
+
return () => {
|
|
12366
|
+
const content = normalize$3("default" in slots ? slots.default?.() ?? [] : []);
|
|
12367
|
+
return h("button", {
|
|
12368
|
+
ref: root,
|
|
12369
|
+
...attrs,
|
|
12370
|
+
id: props.id,
|
|
12371
|
+
type: props.type,
|
|
12372
|
+
disabled: props.disabled,
|
|
12373
|
+
class: [attrs.class, {
|
|
12374
|
+
"ui-v1-toggle-button": true,
|
|
12375
|
+
[`ui-v1-toggle-button_${props.size}`]: true,
|
|
12376
|
+
"ui-v1-toggle-button_pressed": props.pressed,
|
|
12377
|
+
"ui-v1-toggle-button_disabled": props.disabled,
|
|
12378
|
+
"ui-v1-toggle-button_focused": props.focused,
|
|
12379
|
+
"ui-v1-toggle-button_grouped": props.grouped
|
|
12380
|
+
}]
|
|
12381
|
+
}, h("span", { class: "ui-v1-toggle-button__content" }, content.map(([node, isIcon]) => {
|
|
12382
|
+
const nodeProps = node.props ?? {};
|
|
12383
|
+
return h("span", {
|
|
12384
|
+
class: {
|
|
12385
|
+
"ui-v1-toggle-button__icon": isIcon,
|
|
12386
|
+
"ui-v1-toggle-button__text": !isIcon
|
|
12387
|
+
},
|
|
12388
|
+
..."aria-hidden" in nodeProps ? { "aria-hidden": nodeProps["aria-hidden"] } : {}
|
|
12389
|
+
}, node);
|
|
12390
|
+
})));
|
|
11016
12391
|
};
|
|
11017
12392
|
}
|
|
11018
12393
|
});
|
|
12394
|
+
const _sfc_main$4 = defineComponent({
|
|
12395
|
+
name: "UiToggleGroupRoot",
|
|
12396
|
+
props: {
|
|
12397
|
+
size: {
|
|
12398
|
+
type: String,
|
|
12399
|
+
default: UiToggleButtonSize.SM,
|
|
12400
|
+
validator: (size) => {
|
|
12401
|
+
return Object.values(UiToggleButtonSize).includes(size);
|
|
12402
|
+
}
|
|
12403
|
+
},
|
|
12404
|
+
rubber: {
|
|
12405
|
+
type: Boolean,
|
|
12406
|
+
default: false
|
|
12407
|
+
},
|
|
12408
|
+
disabled: {
|
|
12409
|
+
type: Boolean,
|
|
12410
|
+
default: false
|
|
12411
|
+
},
|
|
12412
|
+
ariaLabel: {
|
|
12413
|
+
type: String,
|
|
12414
|
+
default: void 0
|
|
12415
|
+
},
|
|
12416
|
+
ariaLabelledby: {
|
|
12417
|
+
type: String,
|
|
12418
|
+
default: void 0
|
|
12419
|
+
},
|
|
12420
|
+
ariaDescribedby: {
|
|
12421
|
+
type: String,
|
|
12422
|
+
default: void 0
|
|
12423
|
+
},
|
|
12424
|
+
ariaOrientation: {
|
|
12425
|
+
type: String,
|
|
12426
|
+
default: "horizontal"
|
|
12427
|
+
}
|
|
12428
|
+
},
|
|
12429
|
+
setup(props, { attrs, slots }) {
|
|
12430
|
+
return () => h("span", {
|
|
12431
|
+
...attrs,
|
|
12432
|
+
role: attrs.role ?? "toolbar",
|
|
12433
|
+
"aria-label": attrs["aria-label"] ?? props.ariaLabel,
|
|
12434
|
+
"aria-labelledby": attrs["aria-labelledby"] ?? props.ariaLabelledby,
|
|
12435
|
+
"aria-describedby": attrs["aria-describedby"] ?? props.ariaDescribedby,
|
|
12436
|
+
"aria-disabled": attrs["aria-disabled"] ?? `${props.disabled}`,
|
|
12437
|
+
"aria-orientation": attrs["aria-orientation"] ?? props.ariaOrientation,
|
|
12438
|
+
class: [attrs.class, {
|
|
12439
|
+
"ui-v1-toggle-group": true,
|
|
12440
|
+
[`ui-v1-toggle-group_${props.size}`]: true,
|
|
12441
|
+
"ui-v1-toggle-group_rubber": props.rubber,
|
|
12442
|
+
"ui-v1-toggle-group_disabled": props.disabled
|
|
12443
|
+
}]
|
|
12444
|
+
}, slots.default?.());
|
|
12445
|
+
}
|
|
12446
|
+
});
|
|
11019
12447
|
var SIZE = /* @__PURE__ */ ((SIZE2) => {
|
|
11020
12448
|
SIZE2["SM"] = "sm";
|
|
11021
12449
|
SIZE2["MD"] = "md";
|
|
@@ -11090,12 +12518,12 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
11090
12518
|
const toolbarSize = useToolbarSize();
|
|
11091
12519
|
const size = computed(() => {
|
|
11092
12520
|
if (toolbarSize.value === SIZE.SM) {
|
|
11093
|
-
return SIZE$
|
|
12521
|
+
return SIZE$9.XS;
|
|
11094
12522
|
}
|
|
11095
|
-
return SIZE$
|
|
12523
|
+
return SIZE$9.SM;
|
|
11096
12524
|
});
|
|
11097
12525
|
return (_ctx, _cache) => {
|
|
11098
|
-
return openBlock(), createBlock(_sfc_main$
|
|
12526
|
+
return openBlock(), createBlock(_sfc_main$Y, mergeProps({
|
|
11099
12527
|
ref_key: "root",
|
|
11100
12528
|
ref: root,
|
|
11101
12529
|
href: __props.href,
|
|
@@ -11142,8 +12570,8 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
11142
12570
|
/** Тип ссылок */
|
|
11143
12571
|
appearance: {
|
|
11144
12572
|
type: String,
|
|
11145
|
-
validator: (appearance) => Object.values(APPEARANCE$
|
|
11146
|
-
default: APPEARANCE$
|
|
12573
|
+
validator: (appearance) => Object.values(APPEARANCE$3).includes(appearance),
|
|
12574
|
+
default: APPEARANCE$3.DEFAULT
|
|
11147
12575
|
},
|
|
11148
12576
|
/** Инвертированный цвет ссылок для тёмного фона */
|
|
11149
12577
|
light: {
|
|
@@ -11168,7 +12596,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
11168
12596
|
},
|
|
11169
12597
|
setup(__props) {
|
|
11170
12598
|
return (_ctx, _cache) => {
|
|
11171
|
-
return openBlock(), createBlock(_sfc_main$
|
|
12599
|
+
return openBlock(), createBlock(_sfc_main$E, mergeProps({
|
|
11172
12600
|
href: __props.href,
|
|
11173
12601
|
external: __props.external,
|
|
11174
12602
|
appearance: __props.appearance,
|
|
@@ -11194,6 +12622,22 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
11194
12622
|
};
|
|
11195
12623
|
}
|
|
11196
12624
|
});
|
|
12625
|
+
const _hoisted_1$1 = {
|
|
12626
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
12627
|
+
viewBox: "0 0 24 24"
|
|
12628
|
+
};
|
|
12629
|
+
function render(_ctx, _cache) {
|
|
12630
|
+
return openBlock(), createElementBlock("svg", _hoisted_1$1, [..._cache[0] || (_cache[0] = [
|
|
12631
|
+
createElementVNode("path", {
|
|
12632
|
+
fill: "currentColor",
|
|
12633
|
+
d: "M18.968 19.942c.07.188.023.4-.12.54l-.378.38a.487.487 0 0 1-.677 0 8.374 8.374 0 0 0-11.539 0 .487.487 0 0 1-.678 0l-.378-.38a.51.51 0 0 1-.18-.54L11.376 3.32a.51.51 0 0 1 .468-.32h.299a.51.51 0 0 1 .468.32z"
|
|
12634
|
+
}, null, -1)
|
|
12635
|
+
])]);
|
|
12636
|
+
}
|
|
12637
|
+
const IconNavigate = { render };
|
|
12638
|
+
const YANDEX_MAP_PLUGIN = {
|
|
12639
|
+
LOCATOR: "locator"
|
|
12640
|
+
};
|
|
11197
12641
|
const load = (document2, src) => new Promise((resolve, reject) => {
|
|
11198
12642
|
const script = document2.createElement("script");
|
|
11199
12643
|
script.async = true;
|
|
@@ -11213,6 +12657,83 @@ const load = (document2, src) => new Promise((resolve, reject) => {
|
|
|
11213
12657
|
head.appendChild(script);
|
|
11214
12658
|
});
|
|
11215
12659
|
const _hoisted_1 = { class: "ui-v1-yandex-map" };
|
|
12660
|
+
const _hoisted_2 = {
|
|
12661
|
+
key: 1,
|
|
12662
|
+
class: "ui-v1-yandex-map__control-group ui-v1-yandex-map__control-group_left"
|
|
12663
|
+
};
|
|
12664
|
+
const _hoisted_3 = {
|
|
12665
|
+
key: 2,
|
|
12666
|
+
class: "ui-v1-yandex-map__control-group ui-v1-yandex-map__control-group_right"
|
|
12667
|
+
};
|
|
12668
|
+
const MAP_IFRAME_STYLE = `
|
|
12669
|
+
html, body, #map {
|
|
12670
|
+
width: 100%;
|
|
12671
|
+
height: 100%;
|
|
12672
|
+
margin: 0;
|
|
12673
|
+
}
|
|
12674
|
+
|
|
12675
|
+
.ui-v1-yandex-map-marker {
|
|
12676
|
+
position: relative;
|
|
12677
|
+
transform: translate(-10px, -76px);
|
|
12678
|
+
width: 0;
|
|
12679
|
+
height: 0;
|
|
12680
|
+
cursor: grab;
|
|
12681
|
+
user-select: none;
|
|
12682
|
+
}
|
|
12683
|
+
|
|
12684
|
+
.ui-v1-yandex-map-marker:active {
|
|
12685
|
+
cursor: grabbing;
|
|
12686
|
+
}
|
|
12687
|
+
|
|
12688
|
+
.ui-v1-yandex-map-marker__pin {
|
|
12689
|
+
position: absolute;
|
|
12690
|
+
left: 0;
|
|
12691
|
+
top: 0;
|
|
12692
|
+
width: 44px;
|
|
12693
|
+
height: 44px;
|
|
12694
|
+
border-radius: 50%;
|
|
12695
|
+
background: #ff5547;
|
|
12696
|
+
box-shadow: 0 12px 24px rgba(255, 85, 71, 0.28);
|
|
12697
|
+
}
|
|
12698
|
+
|
|
12699
|
+
.ui-v1-yandex-map-marker__pin::before {
|
|
12700
|
+
content: '';
|
|
12701
|
+
position: absolute;
|
|
12702
|
+
left: 16px;
|
|
12703
|
+
bottom: -13px;
|
|
12704
|
+
width: 12px;
|
|
12705
|
+
height: 16px;
|
|
12706
|
+
background: #ff5547;
|
|
12707
|
+
clip-path: polygon(50% 100%, 0 0, 100% 0);
|
|
12708
|
+
}
|
|
12709
|
+
|
|
12710
|
+
.ui-v1-yandex-map-marker__pin::after {
|
|
12711
|
+
content: '';
|
|
12712
|
+
position: absolute;
|
|
12713
|
+
left: 14px;
|
|
12714
|
+
bottom: -26px;
|
|
12715
|
+
width: 16px;
|
|
12716
|
+
height: 16px;
|
|
12717
|
+
border: 2px solid #ffffff;
|
|
12718
|
+
border-radius: 50%;
|
|
12719
|
+
background: #ff5547;
|
|
12720
|
+
box-sizing: border-box;
|
|
12721
|
+
}
|
|
12722
|
+
|
|
12723
|
+
.ui-v1-yandex-map-marker__hint {
|
|
12724
|
+
position: absolute;
|
|
12725
|
+
left: 56px;
|
|
12726
|
+
top: 4px;
|
|
12727
|
+
min-width: 152px;
|
|
12728
|
+
padding: 7px 12px;
|
|
12729
|
+
border-radius: 4px;
|
|
12730
|
+
background: rgba(255, 255, 255, 0.96);
|
|
12731
|
+
box-shadow: 0 8px 24px rgba(36, 48, 77, 0.16);
|
|
12732
|
+
color: #24304d;
|
|
12733
|
+
font: 400 14px/20px Arial, sans-serif;
|
|
12734
|
+
white-space: nowrap;
|
|
12735
|
+
}
|
|
12736
|
+
`;
|
|
11216
12737
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
11217
12738
|
__name: "UiYandexMap",
|
|
11218
12739
|
props: {
|
|
@@ -11223,6 +12744,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
11223
12744
|
address: {
|
|
11224
12745
|
type: String,
|
|
11225
12746
|
default: ""
|
|
12747
|
+
},
|
|
12748
|
+
plugins: {
|
|
12749
|
+
type: Array,
|
|
12750
|
+
default: () => []
|
|
11226
12751
|
}
|
|
11227
12752
|
},
|
|
11228
12753
|
emits: [
|
|
@@ -11230,10 +12755,23 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
11230
12755
|
"update:address"
|
|
11231
12756
|
],
|
|
11232
12757
|
setup(__props, { emit: __emit }) {
|
|
12758
|
+
const PLAIN_OBJECT_PROTOTYPES = [Object.prototype, null];
|
|
11233
12759
|
const props = __props;
|
|
11234
12760
|
const emit = __emit;
|
|
11235
12761
|
const i18nBus = inject(I18nInjectKey, null);
|
|
12762
|
+
const LOCATION = {
|
|
12763
|
+
center: [37.64, 55.76],
|
|
12764
|
+
zoom: 10
|
|
12765
|
+
};
|
|
11236
12766
|
const iframe = ref(null);
|
|
12767
|
+
const map = shallowRef(null);
|
|
12768
|
+
const marker = shallowRef(null);
|
|
12769
|
+
const mapLocation = ref({
|
|
12770
|
+
center: [...LOCATION.center],
|
|
12771
|
+
zoom: LOCATION.zoom
|
|
12772
|
+
});
|
|
12773
|
+
const activeLoadToken = ref(0);
|
|
12774
|
+
const locating = ref(false);
|
|
11237
12775
|
const getIFrameDocument = () => iframe.value?.contentDocument ?? null;
|
|
11238
12776
|
const getIFrameWindow = () => iframe.value?.contentWindow ?? null;
|
|
11239
12777
|
const getIFrameYMaps = () => {
|
|
@@ -11243,10 +12781,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
11243
12781
|
}
|
|
11244
12782
|
return null;
|
|
11245
12783
|
};
|
|
11246
|
-
const LOCATION = {
|
|
11247
|
-
center: [37.64, 55.76],
|
|
11248
|
-
zoom: 10
|
|
11249
|
-
};
|
|
11250
12784
|
const waitIFrameContentLoaded = (retry = 5) => {
|
|
11251
12785
|
if (iframe.value?.contentDocument) {
|
|
11252
12786
|
return Promise.resolve();
|
|
@@ -11255,7 +12789,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
11255
12789
|
throw new Error("iframe contentDocument wasn't loaded");
|
|
11256
12790
|
}
|
|
11257
12791
|
return new Promise((resolve) => setTimeout(async () => {
|
|
11258
|
-
await waitIFrameContentLoaded(retry
|
|
12792
|
+
await waitIFrameContentLoaded(retry - 1);
|
|
11259
12793
|
resolve(0);
|
|
11260
12794
|
}, 100));
|
|
11261
12795
|
};
|
|
@@ -11268,6 +12802,138 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
11268
12802
|
const apiUrl = computed(() => `https://api-maps.yandex.ru/v3/?apikey=${props.apiKey}&lang=${apiLocale.value}`);
|
|
11269
12803
|
const apiUrlVersion = ref(0);
|
|
11270
12804
|
const getGeocodeApiUrl = (geocode) => `https://geocode-maps.yandex.ru/1.x/?apikey=${props.apiKey}&geocode=${geocode}&lang=${apiLocale.value}&format=json`;
|
|
12805
|
+
const createLoadToken = () => {
|
|
12806
|
+
activeLoadToken.value++;
|
|
12807
|
+
return activeLoadToken.value;
|
|
12808
|
+
};
|
|
12809
|
+
const isCurrentLoadToken = (token) => activeLoadToken.value === token;
|
|
12810
|
+
const disposeMapRuntime = () => {
|
|
12811
|
+
map.value?.destroy();
|
|
12812
|
+
map.value = null;
|
|
12813
|
+
marker.value = null;
|
|
12814
|
+
mapLocation.value = {
|
|
12815
|
+
center: [...LOCATION.center],
|
|
12816
|
+
zoom: LOCATION.zoom
|
|
12817
|
+
};
|
|
12818
|
+
};
|
|
12819
|
+
const cancelMapRuntime = () => {
|
|
12820
|
+
activeLoadToken.value++;
|
|
12821
|
+
disposeMapRuntime();
|
|
12822
|
+
};
|
|
12823
|
+
const updateMapLocation = (location) => {
|
|
12824
|
+
const nextLocation = {
|
|
12825
|
+
center: location.center ? [...location.center] : mapLocation.value.center,
|
|
12826
|
+
zoom: typeof location.zoom === "number" ? location.zoom : mapLocation.value.zoom
|
|
12827
|
+
};
|
|
12828
|
+
mapLocation.value = nextLocation;
|
|
12829
|
+
map.value?.setLocation({
|
|
12830
|
+
...nextLocation,
|
|
12831
|
+
duration: 200,
|
|
12832
|
+
easing: "ease-in-out"
|
|
12833
|
+
});
|
|
12834
|
+
};
|
|
12835
|
+
const zoomIn = () => {
|
|
12836
|
+
updateMapLocation({ zoom: mapLocation.value.zoom + 1 });
|
|
12837
|
+
};
|
|
12838
|
+
const zoomOut = () => {
|
|
12839
|
+
updateMapLocation({ zoom: mapLocation.value.zoom - 1 });
|
|
12840
|
+
};
|
|
12841
|
+
const getMarkerDetails = (coordinates) => ({
|
|
12842
|
+
longitude: `Longitude: ${coordinates[0].toFixed(2)}`,
|
|
12843
|
+
latitude: `Latitude: ${coordinates[1].toFixed(2)}`
|
|
12844
|
+
});
|
|
12845
|
+
const updateMarker = (coordinates) => {
|
|
12846
|
+
const details = getMarkerDetails(coordinates);
|
|
12847
|
+
marker.value?.update({
|
|
12848
|
+
coordinates,
|
|
12849
|
+
title: `${details.longitude}
|
|
12850
|
+
${details.latitude}`
|
|
12851
|
+
});
|
|
12852
|
+
};
|
|
12853
|
+
const getCurrentCoordinates = () => new Promise((resolve, reject) => {
|
|
12854
|
+
if (!("geolocation" in navigator)) {
|
|
12855
|
+
reject(new Error("Geolocation is unavailable"));
|
|
12856
|
+
return;
|
|
12857
|
+
}
|
|
12858
|
+
navigator.geolocation.getCurrentPosition(
|
|
12859
|
+
({ coords }) => resolve([coords.longitude, coords.latitude]),
|
|
12860
|
+
reject,
|
|
12861
|
+
{
|
|
12862
|
+
enableHighAccuracy: true,
|
|
12863
|
+
timeout: 1e4
|
|
12864
|
+
}
|
|
12865
|
+
);
|
|
12866
|
+
});
|
|
12867
|
+
const isPlainObject = (value) => {
|
|
12868
|
+
if (Object.prototype.toString.call(value) !== "[object Object]") {
|
|
12869
|
+
return false;
|
|
12870
|
+
}
|
|
12871
|
+
return PLAIN_OBJECT_PROTOTYPES.includes(Object.getPrototypeOf(value));
|
|
12872
|
+
};
|
|
12873
|
+
const locatorPlugin = computed(() => props.plugins.find((plugin2) => isPlainObject(plugin2) && plugin2.type === YANDEX_MAP_PLUGIN.LOCATOR && typeof plugin2.url === "string" && plugin2.url.length > 0) ?? null);
|
|
12874
|
+
const canUseBrowserGeolocation = computed(() => "geolocation" in navigator && isSecureContext);
|
|
12875
|
+
const canUseLocatorFallback = computed(() => locatorPlugin.value !== null);
|
|
12876
|
+
const canLocateCurrentPosition = computed(() => canUseBrowserGeolocation.value || canUseLocatorFallback.value);
|
|
12877
|
+
const fetchLocatorFallbackCoordinates = async (reason, error = null) => {
|
|
12878
|
+
if (!locatorPlugin.value) {
|
|
12879
|
+
throw new Error("Locator plugin is not configured");
|
|
12880
|
+
}
|
|
12881
|
+
const response = await fetch(locatorPlugin.value.url, {
|
|
12882
|
+
method: "POST",
|
|
12883
|
+
headers: {
|
|
12884
|
+
"Content-Type": "application/json"
|
|
12885
|
+
},
|
|
12886
|
+
body: JSON.stringify({
|
|
12887
|
+
locale: apiLocale.value,
|
|
12888
|
+
reason,
|
|
12889
|
+
secureContext: isSecureContext,
|
|
12890
|
+
browserGeolocationAvailable: "geolocation" in navigator,
|
|
12891
|
+
error: error instanceof Error ? error.message : null
|
|
12892
|
+
})
|
|
12893
|
+
});
|
|
12894
|
+
if (!response.ok) {
|
|
12895
|
+
throw new Error(`Locator adapter request failed with status ${response.status}`);
|
|
12896
|
+
}
|
|
12897
|
+
const result = await response.json();
|
|
12898
|
+
if (!Array.isArray(result.coordinates) || result.coordinates.length !== 2) {
|
|
12899
|
+
throw new Error("Locator adapter returned invalid coordinates payload");
|
|
12900
|
+
}
|
|
12901
|
+
return [Number(result.coordinates[0]), Number(result.coordinates[1])];
|
|
12902
|
+
};
|
|
12903
|
+
const locateCurrentPosition = async () => {
|
|
12904
|
+
locating.value = true;
|
|
12905
|
+
try {
|
|
12906
|
+
const coordinates = canUseBrowserGeolocation.value ? await getCurrentCoordinates() : await fetchLocatorFallbackCoordinates("browser_geolocation_unavailable");
|
|
12907
|
+
updateMarker(coordinates);
|
|
12908
|
+
updateMapLocation({
|
|
12909
|
+
center: coordinates,
|
|
12910
|
+
zoom: Math.max(mapLocation.value.zoom, 15)
|
|
12911
|
+
});
|
|
12912
|
+
const address = await fetchAddressFromCoordinates(coordinates);
|
|
12913
|
+
emit("change", address);
|
|
12914
|
+
emit("update:address", address);
|
|
12915
|
+
} catch (error) {
|
|
12916
|
+
if (canUseLocatorFallback.value && canUseBrowserGeolocation.value) {
|
|
12917
|
+
try {
|
|
12918
|
+
const coordinates = await fetchLocatorFallbackCoordinates("browser_geolocation_failed", error);
|
|
12919
|
+
updateMarker(coordinates);
|
|
12920
|
+
updateMapLocation({
|
|
12921
|
+
center: coordinates,
|
|
12922
|
+
zoom: Math.max(mapLocation.value.zoom, 15)
|
|
12923
|
+
});
|
|
12924
|
+
const address = await fetchAddressFromCoordinates(coordinates);
|
|
12925
|
+
emit("change", address);
|
|
12926
|
+
emit("update:address", address);
|
|
12927
|
+
return;
|
|
12928
|
+
} catch (fallbackError) {
|
|
12929
|
+
console.error("Failed to get current location via locator fallback", fallbackError);
|
|
12930
|
+
}
|
|
12931
|
+
}
|
|
12932
|
+
console.error("Failed to get current location", error);
|
|
12933
|
+
} finally {
|
|
12934
|
+
locating.value = false;
|
|
12935
|
+
}
|
|
12936
|
+
};
|
|
11271
12937
|
function onDragEndHandler(coordinates) {
|
|
11272
12938
|
fetchAddressFromCoordinates(coordinates).then((address) => {
|
|
11273
12939
|
emit("change", address);
|
|
@@ -11284,128 +12950,235 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
11284
12950
|
const result = await response.json();
|
|
11285
12951
|
return result.response.GeoObjectCollection.featureMember[0]?.GeoObject?.Point.pos ?? "";
|
|
11286
12952
|
};
|
|
12953
|
+
const createMarkerRuntime = (_ymaps3, iframeDocument, coordinates, onDragMove, onDragEnd) => {
|
|
12954
|
+
const { YMapMarker } = _ymaps3;
|
|
12955
|
+
const markerElement = iframeDocument.createElement("div");
|
|
12956
|
+
markerElement.className = "ui-v1-yandex-map-marker";
|
|
12957
|
+
const pinElement = iframeDocument.createElement("div");
|
|
12958
|
+
pinElement.className = "ui-v1-yandex-map-marker__pin";
|
|
12959
|
+
const hintElement = iframeDocument.createElement("div");
|
|
12960
|
+
hintElement.className = "ui-v1-yandex-map-marker__hint";
|
|
12961
|
+
const longitudeElement = iframeDocument.createElement("div");
|
|
12962
|
+
const latitudeElement = iframeDocument.createElement("div");
|
|
12963
|
+
hintElement.append(longitudeElement, latitudeElement);
|
|
12964
|
+
markerElement.append(pinElement, hintElement);
|
|
12965
|
+
const markerRuntime = new YMapMarker({
|
|
12966
|
+
coordinates,
|
|
12967
|
+
draggable: true,
|
|
12968
|
+
mapFollowsOnDrag: true,
|
|
12969
|
+
zIndex: 2500,
|
|
12970
|
+
onDragMove,
|
|
12971
|
+
onDragEnd
|
|
12972
|
+
}, markerElement);
|
|
12973
|
+
const update = ({ coordinates: nextCoordinates }) => {
|
|
12974
|
+
const details = getMarkerDetails(nextCoordinates);
|
|
12975
|
+
longitudeElement.textContent = details.longitude;
|
|
12976
|
+
latitudeElement.textContent = details.latitude;
|
|
12977
|
+
markerRuntime.update({
|
|
12978
|
+
coordinates: nextCoordinates
|
|
12979
|
+
});
|
|
12980
|
+
};
|
|
12981
|
+
update({ coordinates });
|
|
12982
|
+
return {
|
|
12983
|
+
entity: markerRuntime,
|
|
12984
|
+
update
|
|
12985
|
+
};
|
|
12986
|
+
};
|
|
11287
12987
|
const loadApi = async () => {
|
|
12988
|
+
ready.value = false;
|
|
12989
|
+
const loadToken = createLoadToken();
|
|
12990
|
+
disposeMapRuntime();
|
|
11288
12991
|
await waitIFrameContentLoaded();
|
|
12992
|
+
if (!isCurrentLoadToken(loadToken)) {
|
|
12993
|
+
return;
|
|
12994
|
+
}
|
|
11289
12995
|
const iframeDocument = getIFrameDocument();
|
|
11290
12996
|
if (iframeDocument) {
|
|
11291
12997
|
const style = iframeDocument.createElement("style");
|
|
11292
|
-
style.innerHTML =
|
|
12998
|
+
style.innerHTML = MAP_IFRAME_STYLE;
|
|
11293
12999
|
iframeDocument.head.appendChild(style);
|
|
11294
13000
|
await load(iframeDocument, apiUrl.value);
|
|
13001
|
+
if (!isCurrentLoadToken(loadToken)) return;
|
|
11295
13002
|
await getIFrameYMaps()?.ready;
|
|
11296
|
-
|
|
11297
|
-
el.setAttribute("id", "map");
|
|
11298
|
-
iframeDocument.body.appendChild(el);
|
|
11299
|
-
ready.value = true;
|
|
13003
|
+
if (!isCurrentLoadToken(loadToken)) return;
|
|
11300
13004
|
const _ymaps3 = getIFrameYMaps();
|
|
11301
13005
|
const {
|
|
11302
13006
|
YMap,
|
|
11303
|
-
YMapControls,
|
|
11304
13007
|
YMapDefaultFeaturesLayer,
|
|
11305
13008
|
YMapDefaultSchemeLayer
|
|
11306
13009
|
} = _ymaps3;
|
|
11307
|
-
const { YMapZoomControl, YMapGeolocationControl } = await _ymaps3.import("@yandex/ymaps3-controls@0.0.1");
|
|
11308
|
-
const { YMapDefaultMarker } = await _ymaps3.import("@yandex/ymaps3-markers@0.0.1");
|
|
11309
13010
|
if (props.address) {
|
|
11310
13011
|
const pos = await fetchCoordinatesFromAddress(props.address);
|
|
13012
|
+
if (!isCurrentLoadToken(loadToken)) {
|
|
13013
|
+
return;
|
|
13014
|
+
}
|
|
11311
13015
|
if (pos) {
|
|
11312
13016
|
LOCATION.center = pos.split(" ").map((c) => Number(c));
|
|
11313
13017
|
}
|
|
11314
13018
|
}
|
|
11315
|
-
const
|
|
11316
|
-
|
|
11317
|
-
|
|
11318
|
-
map.addChild(new YMapDefaultFeaturesLayer({ id: "features" }));
|
|
11319
|
-
map.addChild(new YMapControls({ position: "left" }).addChild(new YMapGeolocationControl({})));
|
|
13019
|
+
const el = iframeDocument.createElement("div");
|
|
13020
|
+
el.setAttribute("id", "map");
|
|
13021
|
+
iframeDocument.body.appendChild(el);
|
|
11320
13022
|
const onDragMoveHandler = (coordinates) => {
|
|
11321
|
-
|
|
11322
|
-
const latitude = `Latitude: ${coordinates[1].toFixed(2)}`;
|
|
11323
|
-
draggableMarker.update({ coordinates, title: `${longitude} <br> ${latitude}` });
|
|
13023
|
+
updateMarker(coordinates);
|
|
11324
13024
|
};
|
|
11325
|
-
const
|
|
11326
|
-
|
|
11327
|
-
|
|
11328
|
-
|
|
11329
|
-
|
|
11330
|
-
|
|
11331
|
-
|
|
11332
|
-
|
|
11333
|
-
|
|
13025
|
+
const markerRuntime = createMarkerRuntime(
|
|
13026
|
+
_ymaps3,
|
|
13027
|
+
iframeDocument,
|
|
13028
|
+
LOCATION.center,
|
|
13029
|
+
onDragMoveHandler,
|
|
13030
|
+
onDragEndHandler
|
|
13031
|
+
);
|
|
13032
|
+
marker.value = markerRuntime;
|
|
13033
|
+
mapLocation.value = {
|
|
13034
|
+
center: [...LOCATION.center],
|
|
13035
|
+
zoom: LOCATION.zoom
|
|
13036
|
+
};
|
|
13037
|
+
map.value = new YMap(el, { location: LOCATION }, [
|
|
13038
|
+
new YMapDefaultSchemeLayer({}),
|
|
13039
|
+
new YMapDefaultFeaturesLayer({ id: "features" }),
|
|
13040
|
+
markerRuntime.entity
|
|
13041
|
+
]);
|
|
13042
|
+
if (!isCurrentLoadToken(loadToken)) {
|
|
13043
|
+
map.value?.destroy();
|
|
13044
|
+
map.value = null;
|
|
13045
|
+
return;
|
|
13046
|
+
}
|
|
13047
|
+
ready.value = true;
|
|
11334
13048
|
}
|
|
11335
13049
|
};
|
|
11336
13050
|
watch(apiUrl, async (newUrl, oldUrl) => {
|
|
11337
13051
|
if (iframe.value && newUrl !== oldUrl) {
|
|
13052
|
+
cancelMapRuntime();
|
|
11338
13053
|
ready.value = false;
|
|
11339
13054
|
apiUrlVersion.value++;
|
|
11340
13055
|
}
|
|
11341
13056
|
});
|
|
13057
|
+
onBeforeUnmount(() => {
|
|
13058
|
+
cancelMapRuntime();
|
|
13059
|
+
});
|
|
11342
13060
|
return (_ctx, _cache) => {
|
|
11343
13061
|
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
11344
|
-
!ready.value ? (openBlock(), createBlock(_sfc_main$
|
|
11345
|
-
|
|
13062
|
+
!ready.value ? (openBlock(), createBlock(_sfc_main$D, {
|
|
13063
|
+
key: 0,
|
|
13064
|
+
transition: null
|
|
13065
|
+
})) : createCommentVNode("", true),
|
|
13066
|
+
(openBlock(), createElementBlock("iframe", {
|
|
11346
13067
|
ref_key: "iframe",
|
|
11347
13068
|
ref: iframe,
|
|
11348
13069
|
key: apiUrlVersion.value,
|
|
13070
|
+
allow: "geolocation",
|
|
11349
13071
|
onLoad: loadApi
|
|
11350
|
-
}, null, 32)),
|
|
11351
|
-
|
|
11352
|
-
|
|
13072
|
+
}, null, 32)),
|
|
13073
|
+
ready.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
|
|
13074
|
+
createVNode(_sfc_main$Y, {
|
|
13075
|
+
class: "ui-v1-yandex-map__control-button",
|
|
13076
|
+
appearance: "secondary",
|
|
13077
|
+
size: "sm",
|
|
13078
|
+
type: "button",
|
|
13079
|
+
"aria-label": "Определить текущее местоположение",
|
|
13080
|
+
disabled: locating.value || !canLocateCurrentPosition.value,
|
|
13081
|
+
onClick: locateCurrentPosition
|
|
13082
|
+
}, {
|
|
13083
|
+
default: withCtx(() => [
|
|
13084
|
+
createVNode(unref(IconNavigate))
|
|
13085
|
+
]),
|
|
13086
|
+
_: 1
|
|
13087
|
+
}, 8, ["disabled"])
|
|
13088
|
+
])) : createCommentVNode("", true),
|
|
13089
|
+
ready.value ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
13090
|
+
createVNode(_sfc_main$Y, {
|
|
13091
|
+
class: "ui-v1-yandex-map__control-button",
|
|
13092
|
+
appearance: "secondary",
|
|
13093
|
+
size: "sm",
|
|
13094
|
+
type: "button",
|
|
13095
|
+
"aria-label": "Уменьшить масштаб",
|
|
13096
|
+
onClick: zoomOut
|
|
13097
|
+
}, {
|
|
13098
|
+
default: withCtx(() => [
|
|
13099
|
+
createVNode(unref(IconRemove))
|
|
13100
|
+
]),
|
|
13101
|
+
_: 1
|
|
13102
|
+
}),
|
|
13103
|
+
createVNode(_sfc_main$Y, {
|
|
13104
|
+
class: "ui-v1-yandex-map__control-button",
|
|
13105
|
+
appearance: "secondary",
|
|
13106
|
+
size: "sm",
|
|
13107
|
+
type: "button",
|
|
13108
|
+
"aria-label": "Увеличить масштаб",
|
|
13109
|
+
onClick: zoomIn
|
|
13110
|
+
}, {
|
|
13111
|
+
default: withCtx(() => [
|
|
13112
|
+
createVNode(unref(IconAdd))
|
|
13113
|
+
]),
|
|
13114
|
+
_: 1
|
|
13115
|
+
})
|
|
13116
|
+
])) : createCommentVNode("", true)
|
|
11353
13117
|
]);
|
|
11354
13118
|
};
|
|
11355
13119
|
}
|
|
11356
13120
|
});
|
|
11357
13121
|
const components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
11358
13122
|
__proto__: null,
|
|
11359
|
-
UiAddButton: _sfc_main$
|
|
11360
|
-
UiAlert: _sfc_main$
|
|
11361
|
-
UiAvatar: _sfc_main$
|
|
11362
|
-
UiAvatarList: _sfc_main$
|
|
11363
|
-
UiButton: _sfc_main$
|
|
11364
|
-
UiCalendar: _sfc_main$
|
|
11365
|
-
UiCheckbox: _sfc_main$
|
|
11366
|
-
UiCollapse: _sfc_main$
|
|
11367
|
-
UiCollapseBox: _sfc_main$
|
|
11368
|
-
UiCollapseGroup: _sfc_main$
|
|
11369
|
-
UiCopyButton: _sfc_main$
|
|
11370
|
-
UiDate: _sfc_main$
|
|
11371
|
-
UiDatePicker: _sfc_main$
|
|
11372
|
-
UiError: _sfc_main$
|
|
11373
|
-
UiImage: _sfc_main
|
|
11374
|
-
UiInfobox: _sfc_main$
|
|
11375
|
-
UiLink: _sfc_main$
|
|
11376
|
-
UiLoader: _sfc_main$
|
|
11377
|
-
UiMenuItem: _sfc_main$
|
|
13123
|
+
UiAddButton: _sfc_main$10,
|
|
13124
|
+
UiAlert: _sfc_main$11,
|
|
13125
|
+
UiAvatar: _sfc_main$_,
|
|
13126
|
+
UiAvatarList: _sfc_main$Z,
|
|
13127
|
+
UiButton: _sfc_main$Y,
|
|
13128
|
+
UiCalendar: _sfc_main$U,
|
|
13129
|
+
UiCheckbox: _sfc_main$T,
|
|
13130
|
+
UiCollapse: _sfc_main$S,
|
|
13131
|
+
UiCollapseBox: _sfc_main$R,
|
|
13132
|
+
UiCollapseGroup: _sfc_main$Q,
|
|
13133
|
+
UiCopyButton: _sfc_main$N,
|
|
13134
|
+
UiDate: _sfc_main$M,
|
|
13135
|
+
UiDatePicker: _sfc_main$H,
|
|
13136
|
+
UiError: _sfc_main$G,
|
|
13137
|
+
UiImage: _sfc_main$$,
|
|
13138
|
+
UiInfobox: _sfc_main$F,
|
|
13139
|
+
UiLink: _sfc_main$E,
|
|
13140
|
+
UiLoader: _sfc_main$D,
|
|
13141
|
+
UiMenuItem: _sfc_main$K,
|
|
11378
13142
|
UiMenuItemGroup,
|
|
11379
|
-
UiModalSidebar: _sfc_main$
|
|
11380
|
-
UiModalWindow: _sfc_main$
|
|
11381
|
-
UiModalWindowSurface: _sfc_main$
|
|
11382
|
-
UiNumberStepper: _sfc_main$
|
|
11383
|
-
|
|
11384
|
-
|
|
11385
|
-
|
|
11386
|
-
|
|
11387
|
-
|
|
11388
|
-
|
|
11389
|
-
|
|
11390
|
-
|
|
11391
|
-
|
|
11392
|
-
|
|
11393
|
-
|
|
11394
|
-
|
|
11395
|
-
|
|
11396
|
-
|
|
11397
|
-
|
|
11398
|
-
|
|
11399
|
-
|
|
11400
|
-
|
|
11401
|
-
|
|
11402
|
-
|
|
11403
|
-
|
|
13143
|
+
UiModalSidebar: _sfc_main$B,
|
|
13144
|
+
UiModalWindow: _sfc_main$z,
|
|
13145
|
+
UiModalWindowSurface: _sfc_main$A,
|
|
13146
|
+
UiNumberStepper: _sfc_main$y,
|
|
13147
|
+
UiPageHeader: _sfc_main$v,
|
|
13148
|
+
UiPageHeaderLayout: _sfc_main$w,
|
|
13149
|
+
UiPageHeaderTitle: _sfc_main$x,
|
|
13150
|
+
UiPopper: _sfc_main$P,
|
|
13151
|
+
UiPopperConnector: _sfc_main$u,
|
|
13152
|
+
UiPopperTarget: _sfc_main$t,
|
|
13153
|
+
UiRadio: _sfc_main$s,
|
|
13154
|
+
UiRadioSwitchOptionShell: _sfc_main$r,
|
|
13155
|
+
UiRadioSwitchRoot: _sfc_main$q,
|
|
13156
|
+
UiScrollBox: _sfc_main$J,
|
|
13157
|
+
UiSelectPopper: _sfc_main$o,
|
|
13158
|
+
UiSelectTrigger: _sfc_main$n,
|
|
13159
|
+
UiSlider: _sfc_main$p,
|
|
13160
|
+
UiSwitch: _sfc_main$m,
|
|
13161
|
+
UiTab: _sfc_main$c,
|
|
13162
|
+
UiTabGroup: _sfc_main$8,
|
|
13163
|
+
UiTableBodyCell: _sfc_main$l,
|
|
13164
|
+
UiTableCol: _sfc_main$k,
|
|
13165
|
+
UiTableFooterButton: _sfc_main$j,
|
|
13166
|
+
UiTableFooterSection: _sfc_main$i,
|
|
13167
|
+
UiTableHeadCell: _sfc_main$h,
|
|
13168
|
+
UiTableRoot: _sfc_main$g,
|
|
13169
|
+
UiTableRow: _sfc_main$f,
|
|
13170
|
+
UiTableSection: _sfc_main$e,
|
|
13171
|
+
UiTableSorter: _sfc_main$d,
|
|
13172
|
+
UiTag: _sfc_main$7,
|
|
13173
|
+
UiTextbox: _sfc_main$L,
|
|
13174
|
+
UiTimePicker: _sfc_main$6,
|
|
13175
|
+
UiToggleButton: _sfc_main$5,
|
|
13176
|
+
UiToggleGroupRoot: _sfc_main$4,
|
|
11404
13177
|
UiToolbar: _sfc_main$3,
|
|
11405
13178
|
UiToolbarButton: _sfc_main$2,
|
|
11406
13179
|
UiToolbarLink: _sfc_main$1,
|
|
11407
|
-
UiTooltip: _sfc_main$
|
|
11408
|
-
UiTransition: _sfc_main$
|
|
13180
|
+
UiTooltip: _sfc_main$O,
|
|
13181
|
+
UiTransition: _sfc_main$12,
|
|
11409
13182
|
UiYandexMap: _sfc_main
|
|
11410
13183
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
11411
13184
|
const createProvider = () => createProvider$1(components);
|
|
@@ -11416,56 +13189,69 @@ export {
|
|
|
11416
13189
|
plugin$1 as I18nPlugin,
|
|
11417
13190
|
ImageWorkersKey,
|
|
11418
13191
|
plugin as ModalPlugin,
|
|
11419
|
-
|
|
11420
|
-
|
|
11421
|
-
|
|
11422
|
-
|
|
11423
|
-
_sfc_main$
|
|
11424
|
-
_sfc_main$
|
|
11425
|
-
_sfc_main$
|
|
11426
|
-
_sfc_main$
|
|
11427
|
-
_sfc_main$
|
|
11428
|
-
_sfc_main$
|
|
11429
|
-
_sfc_main$
|
|
11430
|
-
_sfc_main$
|
|
11431
|
-
_sfc_main$
|
|
11432
|
-
_sfc_main$
|
|
11433
|
-
_sfc_main$
|
|
11434
|
-
_sfc_main$
|
|
11435
|
-
_sfc_main$
|
|
11436
|
-
_sfc_main$
|
|
11437
|
-
_sfc_main
|
|
13192
|
+
APPEARANCE$1 as RADIO_SWITCH_APPEARANCE,
|
|
13193
|
+
SIZE$3 as RADIO_SWITCH_SIZE,
|
|
13194
|
+
APPEARANCE as TAB_APPEARANCE,
|
|
13195
|
+
SIZE$2 as TAB_SIZE,
|
|
13196
|
+
_sfc_main$10 as UiAddButton,
|
|
13197
|
+
_sfc_main$11 as UiAlert,
|
|
13198
|
+
_sfc_main$_ as UiAvatar,
|
|
13199
|
+
_sfc_main$Z as UiAvatarList,
|
|
13200
|
+
_sfc_main$Y as UiButton,
|
|
13201
|
+
_sfc_main$U as UiCalendar,
|
|
13202
|
+
_sfc_main$T as UiCheckbox,
|
|
13203
|
+
_sfc_main$S as UiCollapse,
|
|
13204
|
+
_sfc_main$R as UiCollapseBox,
|
|
13205
|
+
_sfc_main$Q as UiCollapseGroup,
|
|
13206
|
+
_sfc_main$N as UiCopyButton,
|
|
13207
|
+
_sfc_main$M as UiDate,
|
|
13208
|
+
_sfc_main$H as UiDatePicker,
|
|
13209
|
+
_sfc_main$G as UiError,
|
|
13210
|
+
_sfc_main$$ as UiImage,
|
|
13211
|
+
_sfc_main$F as UiInfobox,
|
|
13212
|
+
_sfc_main$E as UiLink,
|
|
13213
|
+
_sfc_main$D as UiLoader,
|
|
13214
|
+
_sfc_main$K as UiMenuItem,
|
|
11438
13215
|
UiMenuItemGroup,
|
|
11439
|
-
_sfc_main$
|
|
11440
|
-
_sfc_main$
|
|
11441
|
-
_sfc_main$
|
|
11442
|
-
_sfc_main$
|
|
11443
|
-
_sfc_main$
|
|
11444
|
-
_sfc_main$
|
|
11445
|
-
_sfc_main$
|
|
11446
|
-
_sfc_main$
|
|
11447
|
-
_sfc_main$
|
|
11448
|
-
_sfc_main$
|
|
11449
|
-
_sfc_main$
|
|
11450
|
-
_sfc_main$
|
|
11451
|
-
_sfc_main$
|
|
11452
|
-
_sfc_main$
|
|
11453
|
-
_sfc_main$
|
|
11454
|
-
_sfc_main$
|
|
11455
|
-
_sfc_main$
|
|
11456
|
-
_sfc_main$
|
|
11457
|
-
_sfc_main$
|
|
11458
|
-
_sfc_main$8 as
|
|
11459
|
-
_sfc_main$
|
|
11460
|
-
_sfc_main$
|
|
11461
|
-
_sfc_main$
|
|
11462
|
-
_sfc_main$
|
|
11463
|
-
_sfc_main$
|
|
13216
|
+
_sfc_main$B as UiModalSidebar,
|
|
13217
|
+
_sfc_main$z as UiModalWindow,
|
|
13218
|
+
_sfc_main$A as UiModalWindowSurface,
|
|
13219
|
+
_sfc_main$y as UiNumberStepper,
|
|
13220
|
+
_sfc_main$v as UiPageHeader,
|
|
13221
|
+
_sfc_main$w as UiPageHeaderLayout,
|
|
13222
|
+
_sfc_main$x as UiPageHeaderTitle,
|
|
13223
|
+
_sfc_main$P as UiPopper,
|
|
13224
|
+
_sfc_main$u as UiPopperConnector,
|
|
13225
|
+
_sfc_main$t as UiPopperTarget,
|
|
13226
|
+
_sfc_main$s as UiRadio,
|
|
13227
|
+
_sfc_main$r as UiRadioSwitchOptionShell,
|
|
13228
|
+
_sfc_main$q as UiRadioSwitchRoot,
|
|
13229
|
+
_sfc_main$J as UiScrollBox,
|
|
13230
|
+
_sfc_main$o as UiSelectPopper,
|
|
13231
|
+
_sfc_main$n as UiSelectTrigger,
|
|
13232
|
+
_sfc_main$p as UiSlider,
|
|
13233
|
+
_sfc_main$m as UiSwitch,
|
|
13234
|
+
_sfc_main$c as UiTab,
|
|
13235
|
+
_sfc_main$8 as UiTabGroup,
|
|
13236
|
+
_sfc_main$l as UiTableBodyCell,
|
|
13237
|
+
_sfc_main$k as UiTableCol,
|
|
13238
|
+
_sfc_main$j as UiTableFooterButton,
|
|
13239
|
+
_sfc_main$i as UiTableFooterSection,
|
|
13240
|
+
_sfc_main$h as UiTableHeadCell,
|
|
13241
|
+
_sfc_main$g as UiTableRoot,
|
|
13242
|
+
_sfc_main$f as UiTableRow,
|
|
13243
|
+
_sfc_main$e as UiTableSection,
|
|
13244
|
+
_sfc_main$d as UiTableSorter,
|
|
13245
|
+
_sfc_main$7 as UiTag,
|
|
13246
|
+
_sfc_main$L as UiTextbox,
|
|
13247
|
+
_sfc_main$6 as UiTimePicker,
|
|
13248
|
+
_sfc_main$5 as UiToggleButton,
|
|
13249
|
+
_sfc_main$4 as UiToggleGroupRoot,
|
|
11464
13250
|
_sfc_main$3 as UiToolbar,
|
|
11465
13251
|
_sfc_main$2 as UiToolbarButton,
|
|
11466
13252
|
_sfc_main$1 as UiToolbarLink,
|
|
11467
|
-
_sfc_main$
|
|
11468
|
-
_sfc_main$
|
|
13253
|
+
_sfc_main$O as UiTooltip,
|
|
13254
|
+
_sfc_main$12 as UiTransition,
|
|
11469
13255
|
_sfc_main as UiYandexMap,
|
|
11470
13256
|
VALIGN,
|
|
11471
13257
|
VueI18n,
|