@1337exp/taoui 1.4.0 → 1.6.0
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/README.md +19 -1
- package/README.ru.md +19 -1
- package/dist/index.cjs +1025 -474
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1058 -639
- package/dist/index.mjs +1026 -475
- package/dist/index.mjs.map +1 -1
- package/dist/styles.css +490 -307
- package/package.json +1 -1
- package/src/styles/date-popup.css +6 -0
package/dist/index.cjs
CHANGED
|
@@ -2,23 +2,24 @@
|
|
|
2
2
|
typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("vue")) : typeof define === "function" && define.amd ? define(["exports", "vue"], factory) : (global = typeof globalThis !== "undefined" ? globalThis : global || self, factory(global.TaoUI = {}, global.Vue));
|
|
3
3
|
})(this, function(exports2, vue) {
|
|
4
4
|
"use strict";
|
|
5
|
-
const _hoisted_1$
|
|
6
|
-
const _hoisted_2$
|
|
5
|
+
const _hoisted_1$N = ["type", "disabled"];
|
|
6
|
+
const _hoisted_2$G = {
|
|
7
7
|
key: 0,
|
|
8
8
|
class: "tao-button__loader"
|
|
9
9
|
};
|
|
10
|
-
const _hoisted_3$
|
|
10
|
+
const _hoisted_3$A = {
|
|
11
11
|
key: 1,
|
|
12
12
|
class: "tao-button__icon"
|
|
13
13
|
};
|
|
14
|
-
const _hoisted_4$
|
|
15
|
-
const _sfc_main$
|
|
14
|
+
const _hoisted_4$u = { class: "tao-button__content" };
|
|
15
|
+
const _sfc_main$V = /* @__PURE__ */ vue.defineComponent({
|
|
16
16
|
...{ name: "TaoButton" },
|
|
17
17
|
__name: "TaoButton",
|
|
18
18
|
props: {
|
|
19
19
|
type: { default: "button" },
|
|
20
20
|
size: { default: "medium" },
|
|
21
21
|
variant: { default: "primary" },
|
|
22
|
+
tone: { default: "" },
|
|
22
23
|
disabled: { type: Boolean, default: false },
|
|
23
24
|
loading: { type: Boolean, default: false },
|
|
24
25
|
block: { type: Boolean, default: false },
|
|
@@ -42,19 +43,20 @@
|
|
|
42
43
|
"tao-button--disabled": __props.disabled,
|
|
43
44
|
"tao-button--loading": __props.loading,
|
|
44
45
|
"tao-button--block": __props.block,
|
|
45
|
-
"tao-button--icon": !!__props.icon
|
|
46
|
+
"tao-button--icon": !!__props.icon,
|
|
47
|
+
[`tao-button--tone-${__props.tone}`]: !!__props.tone
|
|
46
48
|
}
|
|
47
49
|
]]),
|
|
48
50
|
type: __props.type,
|
|
49
51
|
disabled: __props.disabled || __props.loading,
|
|
50
52
|
onClick: handleClick
|
|
51
53
|
}, [
|
|
52
|
-
__props.loading ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$
|
|
53
|
-
__props.icon ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
54
|
-
vue.createElementVNode("span", _hoisted_4$
|
|
54
|
+
__props.loading ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$G)) : vue.createCommentVNode("", true),
|
|
55
|
+
__props.icon ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$A, vue.toDisplayString(__props.icon), 1)) : vue.createCommentVNode("", true),
|
|
56
|
+
vue.createElementVNode("span", _hoisted_4$u, [
|
|
55
57
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
56
58
|
])
|
|
57
|
-
], 10, _hoisted_1$
|
|
59
|
+
], 10, _hoisted_1$N);
|
|
58
60
|
};
|
|
59
61
|
}
|
|
60
62
|
});
|
|
@@ -65,8 +67,8 @@
|
|
|
65
67
|
}
|
|
66
68
|
return target;
|
|
67
69
|
};
|
|
68
|
-
const TaoButton = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
69
|
-
const _sfc_main$
|
|
70
|
+
const TaoButton = /* @__PURE__ */ _export_sfc(_sfc_main$V, [["__scopeId", "data-v-c3034f66"]]);
|
|
71
|
+
const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
|
|
70
72
|
...{ name: "TaoBlock" },
|
|
71
73
|
__name: "TaoBlock",
|
|
72
74
|
props: {
|
|
@@ -98,24 +100,24 @@
|
|
|
98
100
|
};
|
|
99
101
|
}
|
|
100
102
|
});
|
|
101
|
-
const TaoBlock = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
103
|
+
const TaoBlock = /* @__PURE__ */ _export_sfc(_sfc_main$U, [["__scopeId", "data-v-feb87e36"]]);
|
|
102
104
|
const formFieldKey = Symbol("taoFormField");
|
|
103
|
-
const _hoisted_1$
|
|
104
|
-
const _hoisted_2$
|
|
105
|
-
const _hoisted_3$
|
|
105
|
+
const _hoisted_1$M = { class: "tao-input-wrapper" };
|
|
106
|
+
const _hoisted_2$F = ["for"];
|
|
107
|
+
const _hoisted_3$z = {
|
|
106
108
|
key: 0,
|
|
107
109
|
class: "tao-input__affix tao-input__affix--prefix"
|
|
108
110
|
};
|
|
109
|
-
const _hoisted_4$
|
|
110
|
-
const _hoisted_5$
|
|
111
|
+
const _hoisted_4$t = ["id", "type", "value", "placeholder", "disabled", "aria-invalid", "aria-describedby"];
|
|
112
|
+
const _hoisted_5$m = {
|
|
111
113
|
key: 1,
|
|
112
114
|
class: "tao-input__affix tao-input__affix--suffix"
|
|
113
115
|
};
|
|
114
|
-
const _hoisted_6$
|
|
116
|
+
const _hoisted_6$g = {
|
|
115
117
|
key: 1,
|
|
116
118
|
class: "tao-input__error"
|
|
117
119
|
};
|
|
118
|
-
const _sfc_main$
|
|
120
|
+
const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
|
|
119
121
|
...{ name: "TaoInput" },
|
|
120
122
|
__name: "TaoInput",
|
|
121
123
|
props: {
|
|
@@ -151,12 +153,12 @@
|
|
|
151
153
|
emit("focus", event);
|
|
152
154
|
}
|
|
153
155
|
return (_ctx, _cache) => {
|
|
154
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
156
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$M, [
|
|
155
157
|
__props.label && !vue.unref(field) ? (vue.openBlock(), vue.createElementBlock("label", {
|
|
156
158
|
key: 0,
|
|
157
159
|
class: "tao-input__label",
|
|
158
160
|
for: controlId.value
|
|
159
|
-
}, vue.toDisplayString(__props.label), 9, _hoisted_2$
|
|
161
|
+
}, vue.toDisplayString(__props.label), 9, _hoisted_2$F)) : vue.createCommentVNode("", true),
|
|
160
162
|
vue.createElementVNode("div", {
|
|
161
163
|
class: vue.normalizeClass(["tao-input-shell", {
|
|
162
164
|
"tao-input-shell--focused": focused.value,
|
|
@@ -166,7 +168,7 @@
|
|
|
166
168
|
"tao-input-shell--suffix": _ctx.$slots.suffix
|
|
167
169
|
}])
|
|
168
170
|
}, [
|
|
169
|
-
_ctx.$slots.prefix ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
171
|
+
_ctx.$slots.prefix ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$z, [
|
|
170
172
|
vue.renderSlot(_ctx.$slots, "prefix", {}, void 0, true)
|
|
171
173
|
])) : vue.createCommentVNode("", true),
|
|
172
174
|
vue.createElementVNode("input", {
|
|
@@ -181,27 +183,27 @@
|
|
|
181
183
|
onInput: handleInput,
|
|
182
184
|
onBlur: handleBlur,
|
|
183
185
|
onFocus: handleFocus
|
|
184
|
-
}, null, 42, _hoisted_4$
|
|
185
|
-
_ctx.$slots.suffix ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$
|
|
186
|
+
}, null, 42, _hoisted_4$t),
|
|
187
|
+
_ctx.$slots.suffix ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$m, [
|
|
186
188
|
vue.renderSlot(_ctx.$slots, "suffix", {}, void 0, true)
|
|
187
189
|
])) : vue.createCommentVNode("", true)
|
|
188
190
|
], 2),
|
|
189
|
-
__props.error && __props.errorMessage ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$
|
|
191
|
+
__props.error && __props.errorMessage ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$g, vue.toDisplayString(__props.errorMessage), 1)) : vue.createCommentVNode("", true)
|
|
190
192
|
]);
|
|
191
193
|
};
|
|
192
194
|
}
|
|
193
195
|
});
|
|
194
|
-
const TaoInput = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
195
|
-
const _hoisted_1$
|
|
196
|
+
const TaoInput = /* @__PURE__ */ _export_sfc(_sfc_main$T, [["__scopeId", "data-v-b522e041"]]);
|
|
197
|
+
const _hoisted_1$L = {
|
|
196
198
|
key: 0,
|
|
197
199
|
class: "tao-input-group__addon tao-input-group__addon--before"
|
|
198
200
|
};
|
|
199
|
-
const _hoisted_2$
|
|
200
|
-
const _hoisted_3$
|
|
201
|
+
const _hoisted_2$E = { class: "tao-input-group__field" };
|
|
202
|
+
const _hoisted_3$y = {
|
|
201
203
|
key: 1,
|
|
202
204
|
class: "tao-input-group__addon tao-input-group__addon--after"
|
|
203
205
|
};
|
|
204
|
-
const _sfc_main$
|
|
206
|
+
const _sfc_main$S = /* @__PURE__ */ vue.defineComponent({
|
|
205
207
|
...{ name: "TaoInputGroup" },
|
|
206
208
|
__name: "TaoInputGroup",
|
|
207
209
|
setup(__props) {
|
|
@@ -223,28 +225,30 @@
|
|
|
223
225
|
onFocusin: onFocusIn,
|
|
224
226
|
onFocusout: onFocusOut
|
|
225
227
|
}, [
|
|
226
|
-
_ctx.$slots.before ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
228
|
+
_ctx.$slots.before ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$L, [
|
|
227
229
|
vue.renderSlot(_ctx.$slots, "before", {}, void 0, true)
|
|
228
230
|
])) : vue.createCommentVNode("", true),
|
|
229
|
-
vue.createElementVNode("div", _hoisted_2$
|
|
231
|
+
vue.createElementVNode("div", _hoisted_2$E, [
|
|
230
232
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
231
233
|
]),
|
|
232
|
-
_ctx.$slots.after ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$
|
|
234
|
+
_ctx.$slots.after ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$y, [
|
|
233
235
|
vue.renderSlot(_ctx.$slots, "after", {}, void 0, true)
|
|
234
236
|
])) : vue.createCommentVNode("", true)
|
|
235
237
|
], 34);
|
|
236
238
|
};
|
|
237
239
|
}
|
|
238
240
|
});
|
|
239
|
-
const TaoInputGroup = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
240
|
-
const _hoisted_1$
|
|
241
|
-
const _hoisted_2$
|
|
241
|
+
const TaoInputGroup = /* @__PURE__ */ _export_sfc(_sfc_main$S, [["__scopeId", "data-v-f06bb3b1"]]);
|
|
242
|
+
const _hoisted_1$K = ["id", "value", "placeholder", "disabled", "aria-invalid", "aria-describedby", "aria-valuenow", "aria-valuemin", "aria-valuemax"];
|
|
243
|
+
const _hoisted_2$D = {
|
|
242
244
|
key: 0,
|
|
243
245
|
class: "tao-input-number__steppers"
|
|
244
246
|
};
|
|
245
|
-
const _hoisted_3$
|
|
246
|
-
const _hoisted_4$
|
|
247
|
-
const
|
|
247
|
+
const _hoisted_3$x = ["aria-label", "disabled"];
|
|
248
|
+
const _hoisted_4$s = { "aria-hidden": "true" };
|
|
249
|
+
const _hoisted_5$l = ["aria-label", "disabled"];
|
|
250
|
+
const _hoisted_6$f = { "aria-hidden": "true" };
|
|
251
|
+
const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
|
|
248
252
|
...{ name: "TaoInputNumber" },
|
|
249
253
|
__name: "TaoInputNumber",
|
|
250
254
|
props: {
|
|
@@ -255,7 +259,9 @@
|
|
|
255
259
|
precision: {},
|
|
256
260
|
disabled: { type: Boolean, default: false },
|
|
257
261
|
placeholder: { default: "" },
|
|
258
|
-
controls: { type: Boolean, default: true }
|
|
262
|
+
controls: { type: Boolean, default: true },
|
|
263
|
+
incrementLabel: { default: "Увеличить" },
|
|
264
|
+
decrementLabel: { default: "Уменьшить" }
|
|
259
265
|
},
|
|
260
266
|
emits: ["update:modelValue", "blur", "focus"],
|
|
261
267
|
setup(__props, { emit: __emit }) {
|
|
@@ -393,34 +399,48 @@
|
|
|
393
399
|
onFocus,
|
|
394
400
|
onBlur,
|
|
395
401
|
onKeydown
|
|
396
|
-
}, null, 40, _hoisted_1$
|
|
397
|
-
__props.controls ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
402
|
+
}, null, 40, _hoisted_1$K),
|
|
403
|
+
__props.controls ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$D, [
|
|
398
404
|
vue.createElementVNode("button", {
|
|
399
405
|
type: "button",
|
|
400
406
|
class: "tao-input-number__step",
|
|
401
|
-
"aria-label":
|
|
407
|
+
"aria-label": __props.incrementLabel,
|
|
402
408
|
tabindex: "-1",
|
|
403
409
|
disabled: __props.disabled || atMax.value,
|
|
404
410
|
onClick: _cache[0] || (_cache[0] = ($event) => bump(1))
|
|
405
|
-
},
|
|
411
|
+
}, [
|
|
412
|
+
vue.createElementVNode("span", _hoisted_4$s, [
|
|
413
|
+
vue.renderSlot(_ctx.$slots, "increment-icon", {}, () => [
|
|
414
|
+
_cache[2] || (_cache[2] = vue.createTextVNode("+", -1))
|
|
415
|
+
], true)
|
|
416
|
+
])
|
|
417
|
+
], 8, _hoisted_3$x),
|
|
406
418
|
vue.createElementVNode("button", {
|
|
407
419
|
type: "button",
|
|
408
420
|
class: "tao-input-number__step",
|
|
409
|
-
"aria-label":
|
|
421
|
+
"aria-label": __props.decrementLabel,
|
|
410
422
|
tabindex: "-1",
|
|
411
423
|
disabled: __props.disabled || atMin.value,
|
|
412
424
|
onClick: _cache[1] || (_cache[1] = ($event) => bump(-1))
|
|
413
|
-
},
|
|
425
|
+
}, [
|
|
426
|
+
vue.createElementVNode("span", _hoisted_6$f, [
|
|
427
|
+
vue.renderSlot(_ctx.$slots, "decrement-icon", {}, () => [
|
|
428
|
+
_cache[3] || (_cache[3] = vue.createTextVNode("−", -1))
|
|
429
|
+
], true)
|
|
430
|
+
])
|
|
431
|
+
], 8, _hoisted_5$l)
|
|
414
432
|
])) : vue.createCommentVNode("", true)
|
|
415
433
|
], 2);
|
|
416
434
|
};
|
|
417
435
|
}
|
|
418
436
|
});
|
|
419
|
-
const TaoInputNumber = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
420
|
-
const _hoisted_1$
|
|
421
|
-
const _hoisted_2$
|
|
422
|
-
const _hoisted_3$
|
|
423
|
-
const
|
|
437
|
+
const TaoInputNumber = /* @__PURE__ */ _export_sfc(_sfc_main$R, [["__scopeId", "data-v-331dd958"]]);
|
|
438
|
+
const _hoisted_1$J = ["aria-label", "disabled"];
|
|
439
|
+
const _hoisted_2$C = { "aria-hidden": "true" };
|
|
440
|
+
const _hoisted_3$w = ["id", "value", "disabled", "aria-invalid", "aria-describedby", "aria-valuenow", "aria-valuemin", "aria-valuemax"];
|
|
441
|
+
const _hoisted_4$r = ["aria-label", "disabled"];
|
|
442
|
+
const _hoisted_5$k = { "aria-hidden": "true" };
|
|
443
|
+
const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
|
|
424
444
|
...{ name: "TaoQuantity" },
|
|
425
445
|
__name: "TaoQuantity",
|
|
426
446
|
props: {
|
|
@@ -429,7 +449,10 @@
|
|
|
429
449
|
max: {},
|
|
430
450
|
disabled: { type: Boolean, default: false },
|
|
431
451
|
allowRemove: { type: Boolean, default: true },
|
|
432
|
-
forceMaxLimit: { type: Boolean, default: true }
|
|
452
|
+
forceMaxLimit: { type: Boolean, default: true },
|
|
453
|
+
decrementLabel: { default: "Уменьшить" },
|
|
454
|
+
removeLabel: { default: "Убрать" },
|
|
455
|
+
incrementLabel: { default: "Увеличить" }
|
|
433
456
|
},
|
|
434
457
|
emits: ["update:modelValue", "change", "dec", "inc", "blur", "focus"],
|
|
435
458
|
setup(__props, { emit: __emit }) {
|
|
@@ -538,7 +561,7 @@
|
|
|
538
561
|
const atMax = vue.computed(() => props.modelValue >= ceiling.value);
|
|
539
562
|
const minusDisabled = vue.computed(() => props.disabled || !props.allowRemove && atMin.value);
|
|
540
563
|
const plusDisabled = vue.computed(() => props.disabled || atMax.value);
|
|
541
|
-
const minusLabel = vue.computed(() => atMin.value && props.allowRemove ?
|
|
564
|
+
const minusLabel = vue.computed(() => atMin.value && props.allowRemove ? props.removeLabel : props.decrementLabel);
|
|
542
565
|
return (_ctx, _cache) => {
|
|
543
566
|
return vue.openBlock(), vue.createElementBlock("div", {
|
|
544
567
|
class: vue.normalizeClass(["tao-quantity", {
|
|
@@ -553,7 +576,13 @@
|
|
|
553
576
|
"aria-label": minusLabel.value,
|
|
554
577
|
disabled: minusDisabled.value,
|
|
555
578
|
onClick: onDec
|
|
556
|
-
},
|
|
579
|
+
}, [
|
|
580
|
+
vue.createElementVNode("span", _hoisted_2$C, [
|
|
581
|
+
vue.renderSlot(_ctx.$slots, "decrement-icon", {}, () => [
|
|
582
|
+
_cache[0] || (_cache[0] = vue.createTextVNode("−", -1))
|
|
583
|
+
], true)
|
|
584
|
+
])
|
|
585
|
+
], 8, _hoisted_1$J),
|
|
557
586
|
vue.createElementVNode("input", {
|
|
558
587
|
id: controlId.value,
|
|
559
588
|
class: "tao-quantity__input",
|
|
@@ -573,49 +602,55 @@
|
|
|
573
602
|
onFocus,
|
|
574
603
|
onBlur,
|
|
575
604
|
onKeydown
|
|
576
|
-
}, null, 40,
|
|
605
|
+
}, null, 40, _hoisted_3$w),
|
|
577
606
|
vue.createElementVNode("button", {
|
|
578
607
|
type: "button",
|
|
579
608
|
class: "tao-quantity__btn tao-quantity__btn--inc",
|
|
580
|
-
"aria-label":
|
|
609
|
+
"aria-label": __props.incrementLabel,
|
|
581
610
|
disabled: plusDisabled.value,
|
|
582
611
|
onClick: onInc
|
|
583
|
-
},
|
|
612
|
+
}, [
|
|
613
|
+
vue.createElementVNode("span", _hoisted_5$k, [
|
|
614
|
+
vue.renderSlot(_ctx.$slots, "increment-icon", {}, () => [
|
|
615
|
+
_cache[1] || (_cache[1] = vue.createTextVNode("+", -1))
|
|
616
|
+
], true)
|
|
617
|
+
])
|
|
618
|
+
], 8, _hoisted_4$r)
|
|
584
619
|
], 2);
|
|
585
620
|
};
|
|
586
621
|
}
|
|
587
622
|
});
|
|
588
|
-
const TaoQuantity = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
589
|
-
const _hoisted_1$
|
|
623
|
+
const TaoQuantity = /* @__PURE__ */ _export_sfc(_sfc_main$Q, [["__scopeId", "data-v-c9c7c8b4"]]);
|
|
624
|
+
const _hoisted_1$I = {
|
|
590
625
|
key: 0,
|
|
591
626
|
class: "tao-card__cover"
|
|
592
627
|
};
|
|
593
|
-
const _hoisted_2$
|
|
628
|
+
const _hoisted_2$B = {
|
|
594
629
|
key: 0,
|
|
595
630
|
class: "tao-card__header-title"
|
|
596
631
|
};
|
|
597
|
-
const _hoisted_3$
|
|
598
|
-
const _hoisted_4$
|
|
632
|
+
const _hoisted_3$v = { key: 0 };
|
|
633
|
+
const _hoisted_4$q = {
|
|
599
634
|
key: 2,
|
|
600
635
|
class: "tao-card__title-block"
|
|
601
636
|
};
|
|
602
|
-
const _hoisted_5$
|
|
637
|
+
const _hoisted_5$j = {
|
|
603
638
|
key: 0,
|
|
604
639
|
class: "tao-card__title"
|
|
605
640
|
};
|
|
606
|
-
const _hoisted_6$
|
|
641
|
+
const _hoisted_6$e = {
|
|
607
642
|
key: 1,
|
|
608
643
|
class: "tao-card__sub"
|
|
609
644
|
};
|
|
610
|
-
const _hoisted_7$
|
|
645
|
+
const _hoisted_7$c = {
|
|
611
646
|
key: 3,
|
|
612
647
|
class: "tao-card__body"
|
|
613
648
|
};
|
|
614
|
-
const _hoisted_8$
|
|
649
|
+
const _hoisted_8$b = {
|
|
615
650
|
key: 4,
|
|
616
651
|
class: "tao-card__footer"
|
|
617
652
|
};
|
|
618
|
-
const _sfc_main$
|
|
653
|
+
const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
|
|
619
654
|
...{ name: "TaoCard" },
|
|
620
655
|
__name: "TaoCard",
|
|
621
656
|
props: {
|
|
@@ -647,14 +682,14 @@
|
|
|
647
682
|
}]),
|
|
648
683
|
style: vue.normalizeStyle(radiusStyle.value)
|
|
649
684
|
}, [
|
|
650
|
-
_ctx.$slots.cover ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
685
|
+
_ctx.$slots.cover ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$I, [
|
|
651
686
|
vue.renderSlot(_ctx.$slots, "cover", {}, void 0, true)
|
|
652
687
|
])) : vue.createCommentVNode("", true),
|
|
653
688
|
vue.createElementVNode("div", {
|
|
654
689
|
class: "tao-card__content",
|
|
655
690
|
style: vue.normalizeStyle(paddingStyle.value)
|
|
656
691
|
}, [
|
|
657
|
-
_ctx.$slots.headerTitle ? (vue.openBlock(), vue.createElementBlock("h2", _hoisted_2$
|
|
692
|
+
_ctx.$slots.headerTitle ? (vue.openBlock(), vue.createElementBlock("h2", _hoisted_2$B, [
|
|
658
693
|
vue.renderSlot(_ctx.$slots, "headerTitle", {}, void 0, true)
|
|
659
694
|
])) : vue.createCommentVNode("", true),
|
|
660
695
|
_ctx.$slots.header || _ctx.$slots.headerSecondary ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -664,22 +699,22 @@
|
|
|
664
699
|
vue.createElementVNode("span", null, [
|
|
665
700
|
vue.renderSlot(_ctx.$slots, "header", {}, void 0, true)
|
|
666
701
|
]),
|
|
667
|
-
_ctx.$slots.headerSecondary ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
702
|
+
_ctx.$slots.headerSecondary ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$v, [
|
|
668
703
|
vue.renderSlot(_ctx.$slots, "headerSecondary", {}, void 0, true)
|
|
669
704
|
])) : vue.createCommentVNode("", true)
|
|
670
705
|
], 2)) : vue.createCommentVNode("", true),
|
|
671
|
-
_ctx.$slots.title || _ctx.$slots.sub ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$
|
|
672
|
-
_ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock("h2", _hoisted_5$
|
|
706
|
+
_ctx.$slots.title || _ctx.$slots.sub ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$q, [
|
|
707
|
+
_ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock("h2", _hoisted_5$j, [
|
|
673
708
|
vue.renderSlot(_ctx.$slots, "title", {}, void 0, true)
|
|
674
709
|
])) : vue.createCommentVNode("", true),
|
|
675
|
-
_ctx.$slots.sub ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$
|
|
710
|
+
_ctx.$slots.sub ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$e, [
|
|
676
711
|
vue.renderSlot(_ctx.$slots, "sub", {}, void 0, true)
|
|
677
712
|
])) : vue.createCommentVNode("", true)
|
|
678
713
|
])) : vue.createCommentVNode("", true),
|
|
679
|
-
_ctx.$slots.default ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$
|
|
714
|
+
_ctx.$slots.default ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$c, [
|
|
680
715
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
681
716
|
])) : vue.createCommentVNode("", true),
|
|
682
|
-
_ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8$
|
|
717
|
+
_ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8$b, [
|
|
683
718
|
vue.renderSlot(_ctx.$slots, "footer", {}, void 0, true)
|
|
684
719
|
])) : vue.createCommentVNode("", true)
|
|
685
720
|
], 4)
|
|
@@ -687,7 +722,7 @@
|
|
|
687
722
|
};
|
|
688
723
|
}
|
|
689
724
|
});
|
|
690
|
-
const TaoCard = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
725
|
+
const TaoCard = /* @__PURE__ */ _export_sfc(_sfc_main$P, [["__scopeId", "data-v-2ff3d055"]]);
|
|
691
726
|
const FOCUSABLE = 'a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';
|
|
692
727
|
function getFocusable(root) {
|
|
693
728
|
return [...root.querySelectorAll(FOCUSABLE)].filter(
|
|
@@ -716,25 +751,28 @@
|
|
|
716
751
|
first.focus();
|
|
717
752
|
}
|
|
718
753
|
}
|
|
719
|
-
const _hoisted_1$
|
|
720
|
-
const _hoisted_2$
|
|
754
|
+
const _hoisted_1$H = ["aria-labelledby"];
|
|
755
|
+
const _hoisted_2$A = {
|
|
721
756
|
key: 0,
|
|
722
757
|
class: "tao-modal__header"
|
|
723
758
|
};
|
|
724
|
-
const _hoisted_3$
|
|
725
|
-
const _hoisted_4$
|
|
726
|
-
const _hoisted_5$
|
|
727
|
-
const _hoisted_6$
|
|
759
|
+
const _hoisted_3$u = ["id"];
|
|
760
|
+
const _hoisted_4$p = { key: 1 };
|
|
761
|
+
const _hoisted_5$i = ["aria-label"];
|
|
762
|
+
const _hoisted_6$d = { "aria-hidden": "true" };
|
|
763
|
+
const _hoisted_7$b = { class: "tao-modal__content" };
|
|
764
|
+
const _hoisted_8$a = {
|
|
728
765
|
key: 1,
|
|
729
766
|
class: "tao-modal__footer"
|
|
730
767
|
};
|
|
731
|
-
const _sfc_main$
|
|
768
|
+
const _sfc_main$O = /* @__PURE__ */ vue.defineComponent({
|
|
732
769
|
...{ name: "TaoModal" },
|
|
733
770
|
__name: "TaoModal",
|
|
734
771
|
props: {
|
|
735
772
|
modelValue: { type: Boolean },
|
|
736
773
|
title: { default: "" },
|
|
737
|
-
closable: { type: Boolean, default: true }
|
|
774
|
+
closable: { type: Boolean, default: true },
|
|
775
|
+
closeLabel: { default: "Закрыть" }
|
|
738
776
|
},
|
|
739
777
|
emits: ["update:modelValue", "close"],
|
|
740
778
|
setup(__props, { emit: __emit }) {
|
|
@@ -828,29 +866,35 @@
|
|
|
828
866
|
"aria-labelledby": __props.title ? vue.unref(titleId) : void 0,
|
|
829
867
|
tabindex: "-1"
|
|
830
868
|
}, [
|
|
831
|
-
__props.title || _ctx.$slots.header || __props.closable ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$
|
|
869
|
+
__props.title || _ctx.$slots.header || __props.closable ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$A, [
|
|
832
870
|
vue.renderSlot(_ctx.$slots, "header", {}, () => [
|
|
833
871
|
__props.title ? (vue.openBlock(), vue.createElementBlock("h2", {
|
|
834
872
|
key: 0,
|
|
835
873
|
id: vue.unref(titleId),
|
|
836
874
|
class: "tao-modal__title"
|
|
837
|
-
}, vue.toDisplayString(__props.title), 9, _hoisted_3$
|
|
875
|
+
}, vue.toDisplayString(__props.title), 9, _hoisted_3$u)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$p))
|
|
838
876
|
], true),
|
|
839
877
|
__props.closable ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
840
878
|
key: 0,
|
|
841
879
|
type: "button",
|
|
842
880
|
class: "tao-modal__close",
|
|
843
|
-
"aria-label":
|
|
881
|
+
"aria-label": __props.closeLabel,
|
|
844
882
|
onClick: close
|
|
845
|
-
},
|
|
883
|
+
}, [
|
|
884
|
+
vue.createElementVNode("span", _hoisted_6$d, [
|
|
885
|
+
vue.renderSlot(_ctx.$slots, "close-icon", {}, () => [
|
|
886
|
+
_cache[0] || (_cache[0] = vue.createTextVNode("×", -1))
|
|
887
|
+
], true)
|
|
888
|
+
])
|
|
889
|
+
], 8, _hoisted_5$i)) : vue.createCommentVNode("", true)
|
|
846
890
|
])) : vue.createCommentVNode("", true),
|
|
847
|
-
vue.createElementVNode("div",
|
|
891
|
+
vue.createElementVNode("div", _hoisted_7$b, [
|
|
848
892
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
849
893
|
]),
|
|
850
|
-
_ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div",
|
|
894
|
+
_ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8$a, [
|
|
851
895
|
vue.renderSlot(_ctx.$slots, "footer", {}, void 0, true)
|
|
852
896
|
])) : vue.createCommentVNode("", true)
|
|
853
|
-
], 8, _hoisted_1$
|
|
897
|
+
], 8, _hoisted_1$H)
|
|
854
898
|
], 32)) : vue.createCommentVNode("", true)
|
|
855
899
|
]),
|
|
856
900
|
_: 3
|
|
@@ -859,11 +903,11 @@
|
|
|
859
903
|
};
|
|
860
904
|
}
|
|
861
905
|
});
|
|
862
|
-
const TaoModal = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
863
|
-
const _hoisted_1$
|
|
864
|
-
const _hoisted_2$
|
|
865
|
-
const _hoisted_3$
|
|
866
|
-
const _sfc_main$
|
|
906
|
+
const TaoModal = /* @__PURE__ */ _export_sfc(_sfc_main$O, [["__scopeId", "data-v-67d4b1e8"]]);
|
|
907
|
+
const _hoisted_1$G = { class: "tao-tabs" };
|
|
908
|
+
const _hoisted_2$z = ["id", "aria-selected", "aria-controls", "tabindex", "disabled", "onClick"];
|
|
909
|
+
const _hoisted_3$t = ["id", "aria-labelledby"];
|
|
910
|
+
const _sfc_main$N = /* @__PURE__ */ vue.defineComponent({
|
|
867
911
|
...{ name: "TaoTabs" },
|
|
868
912
|
__name: "TaoTabs",
|
|
869
913
|
props: {
|
|
@@ -927,7 +971,7 @@
|
|
|
927
971
|
}
|
|
928
972
|
}
|
|
929
973
|
return (_ctx, _cache) => {
|
|
930
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
974
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$G, [
|
|
931
975
|
vue.createElementVNode("div", {
|
|
932
976
|
class: "tao-tabs__list",
|
|
933
977
|
role: "tablist",
|
|
@@ -952,7 +996,7 @@
|
|
|
952
996
|
}, void 0, true, 0) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
|
|
953
997
|
vue.createTextVNode(vue.toDisplayString(tab.label), 1)
|
|
954
998
|
], 64))
|
|
955
|
-
], 8, _hoisted_2$
|
|
999
|
+
], 8, _hoisted_2$z);
|
|
956
1000
|
}), 128))
|
|
957
1001
|
], 32),
|
|
958
1002
|
vue.createElementVNode("div", {
|
|
@@ -962,12 +1006,12 @@
|
|
|
962
1006
|
"aria-labelledby": tabId(__props.modelValue)
|
|
963
1007
|
}, [
|
|
964
1008
|
vue.renderSlot(_ctx.$slots, "default", { activeTab: __props.modelValue }, void 0, true)
|
|
965
|
-
], 8, _hoisted_3$
|
|
1009
|
+
], 8, _hoisted_3$t)
|
|
966
1010
|
]);
|
|
967
1011
|
};
|
|
968
1012
|
}
|
|
969
1013
|
});
|
|
970
|
-
const TaoTabs = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1014
|
+
const TaoTabs = /* @__PURE__ */ _export_sfc(_sfc_main$N, [["__scopeId", "data-v-bf16735e"]]);
|
|
971
1015
|
function listenFocusLoss(onLoss) {
|
|
972
1016
|
function onVisibilityChange() {
|
|
973
1017
|
if (document.hidden) {
|
|
@@ -983,7 +1027,7 @@
|
|
|
983
1027
|
window.removeEventListener("pagehide", onLoss);
|
|
984
1028
|
};
|
|
985
1029
|
}
|
|
986
|
-
const _sfc_main$
|
|
1030
|
+
const _sfc_main$M = /* @__PURE__ */ vue.defineComponent({
|
|
987
1031
|
...{ name: "TaoTooltip" },
|
|
988
1032
|
__name: "TaoTooltip",
|
|
989
1033
|
props: {
|
|
@@ -1145,9 +1189,9 @@
|
|
|
1145
1189
|
};
|
|
1146
1190
|
}
|
|
1147
1191
|
});
|
|
1148
|
-
const TaoTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1149
|
-
const _hoisted_1$
|
|
1150
|
-
const _sfc_main$
|
|
1192
|
+
const TaoTooltip = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["__scopeId", "data-v-926dfa73"]]);
|
|
1193
|
+
const _hoisted_1$F = { class: "tao-popover" };
|
|
1194
|
+
const _sfc_main$L = /* @__PURE__ */ vue.defineComponent({
|
|
1151
1195
|
...{ name: "TaoPopover" },
|
|
1152
1196
|
__name: "TaoPopover",
|
|
1153
1197
|
props: {
|
|
@@ -1305,7 +1349,7 @@
|
|
|
1305
1349
|
window.removeEventListener("scroll", onViewportChange, true);
|
|
1306
1350
|
});
|
|
1307
1351
|
return (_ctx, _cache) => {
|
|
1308
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
1352
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$F, [
|
|
1309
1353
|
vue.createElementVNode("div", {
|
|
1310
1354
|
ref_key: "triggerRef",
|
|
1311
1355
|
ref: triggerRef,
|
|
@@ -1334,17 +1378,17 @@
|
|
|
1334
1378
|
};
|
|
1335
1379
|
}
|
|
1336
1380
|
});
|
|
1337
|
-
const TaoPopover = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1381
|
+
const TaoPopover = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["__scopeId", "data-v-e4ead301"]]);
|
|
1338
1382
|
const spoilerGroupKey = Symbol("taoSpoilerGroup");
|
|
1339
|
-
const _hoisted_1$
|
|
1340
|
-
const _hoisted_2$
|
|
1341
|
-
const _hoisted_3$
|
|
1383
|
+
const _hoisted_1$E = { class: "tao-spoiler" };
|
|
1384
|
+
const _hoisted_2$y = ["aria-expanded", "aria-controls"];
|
|
1385
|
+
const _hoisted_3$s = {
|
|
1342
1386
|
key: 0,
|
|
1343
1387
|
class: "tao-spoiler__title"
|
|
1344
1388
|
};
|
|
1345
|
-
const _hoisted_4$
|
|
1346
|
-
const _hoisted_5$
|
|
1347
|
-
const _sfc_main$
|
|
1389
|
+
const _hoisted_4$o = ["id"];
|
|
1390
|
+
const _hoisted_5$h = { class: "tao-spoiler__content-inner" };
|
|
1391
|
+
const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
|
|
1348
1392
|
...{ name: "TaoSpoiler" },
|
|
1349
1393
|
__name: "TaoSpoiler",
|
|
1350
1394
|
props: {
|
|
@@ -1399,7 +1443,7 @@
|
|
|
1399
1443
|
});
|
|
1400
1444
|
}
|
|
1401
1445
|
return (_ctx, _cache) => {
|
|
1402
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
1446
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$E, [
|
|
1403
1447
|
vue.createElementVNode("button", {
|
|
1404
1448
|
type: "button",
|
|
1405
1449
|
class: "tao-spoiler__header",
|
|
@@ -1410,12 +1454,12 @@
|
|
|
1410
1454
|
vue.createElementVNode("span", {
|
|
1411
1455
|
class: vue.normalizeClass(["tao-spoiler__icon", { "tao-spoiler__icon--open": isOpen.value }])
|
|
1412
1456
|
}, "▶", 2),
|
|
1413
|
-
__props.title || _ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$
|
|
1457
|
+
__props.title || _ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$s, [
|
|
1414
1458
|
vue.renderSlot(_ctx.$slots, "title", {}, () => [
|
|
1415
1459
|
vue.createTextVNode(vue.toDisplayString(__props.title), 1)
|
|
1416
1460
|
], true)
|
|
1417
1461
|
])) : vue.createCommentVNode("", true)
|
|
1418
|
-
], 8, _hoisted_2$
|
|
1462
|
+
], 8, _hoisted_2$y),
|
|
1419
1463
|
vue.createVNode(vue.Transition, {
|
|
1420
1464
|
name: "tao-spoiler-slide",
|
|
1421
1465
|
onBeforeEnter,
|
|
@@ -1429,10 +1473,10 @@
|
|
|
1429
1473
|
id: vue.unref(panelId),
|
|
1430
1474
|
class: "tao-spoiler__content"
|
|
1431
1475
|
}, [
|
|
1432
|
-
vue.createElementVNode("div", _hoisted_5$
|
|
1476
|
+
vue.createElementVNode("div", _hoisted_5$h, [
|
|
1433
1477
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
1434
1478
|
])
|
|
1435
|
-
], 8, _hoisted_4$
|
|
1479
|
+
], 8, _hoisted_4$o)) : vue.createCommentVNode("", true)
|
|
1436
1480
|
]),
|
|
1437
1481
|
_: 3
|
|
1438
1482
|
})
|
|
@@ -1440,9 +1484,9 @@
|
|
|
1440
1484
|
};
|
|
1441
1485
|
}
|
|
1442
1486
|
});
|
|
1443
|
-
const TaoSpoiler = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1444
|
-
const _hoisted_1$
|
|
1445
|
-
const _sfc_main$
|
|
1487
|
+
const TaoSpoiler = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["__scopeId", "data-v-ccb052cf"]]);
|
|
1488
|
+
const _hoisted_1$D = { class: "tao-spoiler-group" };
|
|
1489
|
+
const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
|
|
1446
1490
|
...{ name: "TaoSpoilerGroup" },
|
|
1447
1491
|
__name: "TaoSpoilerGroup",
|
|
1448
1492
|
props: {
|
|
@@ -1462,20 +1506,21 @@
|
|
|
1462
1506
|
setOpen
|
|
1463
1507
|
});
|
|
1464
1508
|
return (_ctx, _cache) => {
|
|
1465
|
-
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$
|
|
1509
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$D, [
|
|
1466
1510
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
1467
1511
|
]);
|
|
1468
1512
|
};
|
|
1469
1513
|
}
|
|
1470
1514
|
});
|
|
1471
|
-
const TaoSpoilerGroup = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1472
|
-
const _hoisted_1$
|
|
1473
|
-
const _sfc_main$
|
|
1515
|
+
const TaoSpoilerGroup = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["__scopeId", "data-v-6b172e89"]]);
|
|
1516
|
+
const _hoisted_1$C = ["aria-label"];
|
|
1517
|
+
const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
|
|
1474
1518
|
...{ name: "TaoCopy" },
|
|
1475
1519
|
__name: "TaoCopy",
|
|
1476
1520
|
props: {
|
|
1477
1521
|
text: {},
|
|
1478
1522
|
successMessage: { default: "Скопировано!" },
|
|
1523
|
+
copyLabel: { default: "Копировать" },
|
|
1479
1524
|
tip: { type: Boolean, default: true }
|
|
1480
1525
|
},
|
|
1481
1526
|
setup(__props) {
|
|
@@ -1577,7 +1622,7 @@
|
|
|
1577
1622
|
vue.createElementVNode("button", {
|
|
1578
1623
|
type: "button",
|
|
1579
1624
|
class: vue.normalizeClass(["tao-copy__button", { "tao-copy__button--copied": copied.value }]),
|
|
1580
|
-
"aria-label": copied.value ? __props.successMessage :
|
|
1625
|
+
"aria-label": copied.value ? __props.successMessage : __props.copyLabel,
|
|
1581
1626
|
onClick: copy
|
|
1582
1627
|
}, [..._cache[0] || (_cache[0] = [
|
|
1583
1628
|
vue.createElementVNode("svg", {
|
|
@@ -1604,7 +1649,7 @@
|
|
|
1604
1649
|
"stroke-width": "2"
|
|
1605
1650
|
})
|
|
1606
1651
|
], -1)
|
|
1607
|
-
])], 10, _hoisted_1$
|
|
1652
|
+
])], 10, _hoisted_1$C)
|
|
1608
1653
|
], true),
|
|
1609
1654
|
(vue.openBlock(), vue.createBlock(vue.Teleport, { to: "body" }, [
|
|
1610
1655
|
copied.value && __props.tip && __props.successMessage ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -1620,8 +1665,8 @@
|
|
|
1620
1665
|
};
|
|
1621
1666
|
}
|
|
1622
1667
|
});
|
|
1623
|
-
const TaoCopy = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1624
|
-
const _sfc_main$
|
|
1668
|
+
const TaoCopy = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["__scopeId", "data-v-38d3381d"]]);
|
|
1669
|
+
const _sfc_main$H = /* @__PURE__ */ vue.defineComponent({
|
|
1625
1670
|
...{ name: "TaoContainer" },
|
|
1626
1671
|
__name: "TaoContainer",
|
|
1627
1672
|
props: {
|
|
@@ -1638,8 +1683,8 @@
|
|
|
1638
1683
|
};
|
|
1639
1684
|
}
|
|
1640
1685
|
});
|
|
1641
|
-
const TaoContainer = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1642
|
-
const _sfc_main$
|
|
1686
|
+
const TaoContainer = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["__scopeId", "data-v-4c0deb90"]]);
|
|
1687
|
+
const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
|
|
1643
1688
|
...{ name: "TaoFlex" },
|
|
1644
1689
|
__name: "TaoFlex",
|
|
1645
1690
|
props: {
|
|
@@ -1670,7 +1715,7 @@
|
|
|
1670
1715
|
};
|
|
1671
1716
|
}
|
|
1672
1717
|
});
|
|
1673
|
-
const _sfc_main$
|
|
1718
|
+
const _sfc_main$F = /* @__PURE__ */ vue.defineComponent({
|
|
1674
1719
|
...{ name: "TaoSpace" },
|
|
1675
1720
|
__name: "TaoSpace",
|
|
1676
1721
|
props: {
|
|
@@ -1690,7 +1735,332 @@
|
|
|
1690
1735
|
};
|
|
1691
1736
|
}
|
|
1692
1737
|
});
|
|
1693
|
-
const TaoSpace = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
1738
|
+
const TaoSpace = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__scopeId", "data-v-698ca712"]]);
|
|
1739
|
+
const _hoisted_1$B = { class: "tao-split__pane tao-split__pane--start" };
|
|
1740
|
+
const _hoisted_2$x = ["aria-orientation", "aria-valuemin", "aria-valuemax", "aria-valuenow", "aria-valuetext", "aria-disabled", "tabindex"];
|
|
1741
|
+
const _hoisted_3$r = { class: "tao-split__pane tao-split__pane--end" };
|
|
1742
|
+
const _hoisted_4$n = {
|
|
1743
|
+
key: 0,
|
|
1744
|
+
class: "tao-split__shield"
|
|
1745
|
+
};
|
|
1746
|
+
const _sfc_main$E = /* @__PURE__ */ vue.defineComponent({
|
|
1747
|
+
...{ name: "TaoSplit" },
|
|
1748
|
+
__name: "TaoSplit",
|
|
1749
|
+
props: {
|
|
1750
|
+
modelValue: { default: 50 },
|
|
1751
|
+
direction: { default: "row" },
|
|
1752
|
+
unit: { default: "%" },
|
|
1753
|
+
min: { default: 0 },
|
|
1754
|
+
max: {},
|
|
1755
|
+
minEnd: { default: 0 },
|
|
1756
|
+
resizable: { type: Boolean, default: true },
|
|
1757
|
+
step: {}
|
|
1758
|
+
},
|
|
1759
|
+
emits: ["update:modelValue"],
|
|
1760
|
+
setup(__props, { emit: __emit }) {
|
|
1761
|
+
const props = __props;
|
|
1762
|
+
const emit = __emit;
|
|
1763
|
+
const rootRef = vue.ref(null);
|
|
1764
|
+
const handleRef = vue.ref(null);
|
|
1765
|
+
const startPx = vue.ref(0);
|
|
1766
|
+
const available = vue.ref(0);
|
|
1767
|
+
const isDragging = vue.ref(false);
|
|
1768
|
+
const size = vue.ref(props.modelValue);
|
|
1769
|
+
const isRow = vue.computed(() => props.direction === "row");
|
|
1770
|
+
const stepValue = vue.computed(() => props.step ?? (props.unit === "%" ? 1 : 8));
|
|
1771
|
+
const ariaOrientation = vue.computed(() => isRow.value ? "vertical" : "horizontal");
|
|
1772
|
+
let dragPointer = -1;
|
|
1773
|
+
let dragStartPx = 0;
|
|
1774
|
+
let dragStartCoord = 0;
|
|
1775
|
+
let savedBodyCursor = "";
|
|
1776
|
+
let savedHtmlCursor = "";
|
|
1777
|
+
let savedUserSelect = "";
|
|
1778
|
+
let resizeObserver = null;
|
|
1779
|
+
let stopFocusLoss;
|
|
1780
|
+
function axisSize(el) {
|
|
1781
|
+
const rect = el.getBoundingClientRect();
|
|
1782
|
+
return isRow.value ? rect.width : rect.height;
|
|
1783
|
+
}
|
|
1784
|
+
function measureAvailable() {
|
|
1785
|
+
if (!rootRef.value || !handleRef.value) {
|
|
1786
|
+
return 0;
|
|
1787
|
+
}
|
|
1788
|
+
return Math.max(0, axisSize(rootRef.value) - axisSize(handleRef.value));
|
|
1789
|
+
}
|
|
1790
|
+
function toPx(value, avail) {
|
|
1791
|
+
if (avail <= 0) {
|
|
1792
|
+
return 0;
|
|
1793
|
+
}
|
|
1794
|
+
return props.unit === "%" ? value / 100 * avail : value;
|
|
1795
|
+
}
|
|
1796
|
+
function fromPx(px, avail) {
|
|
1797
|
+
if (props.unit === "%") {
|
|
1798
|
+
if (avail <= 0) {
|
|
1799
|
+
return 0;
|
|
1800
|
+
}
|
|
1801
|
+
return Math.round(px / avail * 1e4) / 100;
|
|
1802
|
+
}
|
|
1803
|
+
return Math.round(px);
|
|
1804
|
+
}
|
|
1805
|
+
function valuesEqual(a, b) {
|
|
1806
|
+
if (props.unit === "%") {
|
|
1807
|
+
return Math.abs(a - b) < 5e-3;
|
|
1808
|
+
}
|
|
1809
|
+
return Math.round(a) === Math.round(b);
|
|
1810
|
+
}
|
|
1811
|
+
function clampStartPx(desiredPx, avail) {
|
|
1812
|
+
if (avail <= 0) {
|
|
1813
|
+
return 0;
|
|
1814
|
+
}
|
|
1815
|
+
const minStartPx = toPx(props.min, avail);
|
|
1816
|
+
const minEndPx = toPx(props.minEnd, avail);
|
|
1817
|
+
const maxStartPx = props.max != null ? toPx(props.max, avail) : Infinity;
|
|
1818
|
+
if (minStartPx + minEndPx > avail) {
|
|
1819
|
+
return Math.min(Math.max(desiredPx, 0), avail);
|
|
1820
|
+
}
|
|
1821
|
+
const lo = minStartPx;
|
|
1822
|
+
const hi = Math.min(maxStartPx, avail - minEndPx);
|
|
1823
|
+
return Math.min(Math.max(desiredPx, lo), Math.max(lo, hi));
|
|
1824
|
+
}
|
|
1825
|
+
function commit(next) {
|
|
1826
|
+
if (valuesEqual(next, size.value)) {
|
|
1827
|
+
size.value = next;
|
|
1828
|
+
return;
|
|
1829
|
+
}
|
|
1830
|
+
size.value = next;
|
|
1831
|
+
emit("update:modelValue", next);
|
|
1832
|
+
}
|
|
1833
|
+
function applyLayout(emitIfChanged) {
|
|
1834
|
+
const avail = measureAvailable();
|
|
1835
|
+
available.value = avail;
|
|
1836
|
+
const clamped = clampStartPx(toPx(size.value, avail), avail);
|
|
1837
|
+
startPx.value = clamped;
|
|
1838
|
+
const next = fromPx(clamped, avail);
|
|
1839
|
+
if (emitIfChanged) {
|
|
1840
|
+
commit(next);
|
|
1841
|
+
}
|
|
1842
|
+
}
|
|
1843
|
+
function isRtl() {
|
|
1844
|
+
return !!rootRef.value && getComputedStyle(rootRef.value).direction === "rtl";
|
|
1845
|
+
}
|
|
1846
|
+
function applyDragCursor() {
|
|
1847
|
+
savedBodyCursor = document.body.style.cursor;
|
|
1848
|
+
savedHtmlCursor = document.documentElement.style.cursor;
|
|
1849
|
+
savedUserSelect = document.body.style.userSelect;
|
|
1850
|
+
const cursor = isRow.value ? "col-resize" : "row-resize";
|
|
1851
|
+
document.body.style.cursor = cursor;
|
|
1852
|
+
document.documentElement.style.cursor = cursor;
|
|
1853
|
+
document.body.style.userSelect = "none";
|
|
1854
|
+
}
|
|
1855
|
+
function restoreDragCursor() {
|
|
1856
|
+
document.body.style.cursor = savedBodyCursor;
|
|
1857
|
+
document.documentElement.style.cursor = savedHtmlCursor;
|
|
1858
|
+
document.body.style.userSelect = savedUserSelect;
|
|
1859
|
+
}
|
|
1860
|
+
function releaseDragCapture() {
|
|
1861
|
+
const el = handleRef.value;
|
|
1862
|
+
const id = dragPointer;
|
|
1863
|
+
if (!el || id === -1) {
|
|
1864
|
+
return;
|
|
1865
|
+
}
|
|
1866
|
+
if (typeof el.hasPointerCapture === "function" && !el.hasPointerCapture(id)) {
|
|
1867
|
+
return;
|
|
1868
|
+
}
|
|
1869
|
+
try {
|
|
1870
|
+
el.releasePointerCapture(id);
|
|
1871
|
+
} catch {
|
|
1872
|
+
}
|
|
1873
|
+
}
|
|
1874
|
+
function endDrag() {
|
|
1875
|
+
if (!isDragging.value) {
|
|
1876
|
+
return;
|
|
1877
|
+
}
|
|
1878
|
+
isDragging.value = false;
|
|
1879
|
+
releaseDragCapture();
|
|
1880
|
+
dragPointer = -1;
|
|
1881
|
+
restoreDragCursor();
|
|
1882
|
+
applyLayout(true);
|
|
1883
|
+
}
|
|
1884
|
+
function setStartFromDelta(delta) {
|
|
1885
|
+
const avail = measureAvailable();
|
|
1886
|
+
available.value = avail;
|
|
1887
|
+
const nextPx = clampStartPx(dragStartPx + delta, avail);
|
|
1888
|
+
startPx.value = nextPx;
|
|
1889
|
+
commit(fromPx(nextPx, avail));
|
|
1890
|
+
}
|
|
1891
|
+
function onPointerDown(event) {
|
|
1892
|
+
if (!props.resizable || event.button !== 0 || !handleRef.value) {
|
|
1893
|
+
return;
|
|
1894
|
+
}
|
|
1895
|
+
dragPointer = event.pointerId;
|
|
1896
|
+
isDragging.value = true;
|
|
1897
|
+
dragStartPx = startPx.value;
|
|
1898
|
+
dragStartCoord = isRow.value ? event.clientX : event.clientY;
|
|
1899
|
+
applyDragCursor();
|
|
1900
|
+
event.preventDefault();
|
|
1901
|
+
try {
|
|
1902
|
+
handleRef.value.setPointerCapture(event.pointerId);
|
|
1903
|
+
} catch {
|
|
1904
|
+
}
|
|
1905
|
+
}
|
|
1906
|
+
function onPointerMove(event) {
|
|
1907
|
+
if (!isDragging.value || event.pointerId !== dragPointer) {
|
|
1908
|
+
return;
|
|
1909
|
+
}
|
|
1910
|
+
const coord = isRow.value ? event.clientX : event.clientY;
|
|
1911
|
+
let delta = coord - dragStartCoord;
|
|
1912
|
+
if (isRow.value && isRtl()) {
|
|
1913
|
+
delta = -delta;
|
|
1914
|
+
}
|
|
1915
|
+
setStartFromDelta(delta);
|
|
1916
|
+
}
|
|
1917
|
+
function onPointerEnd(event) {
|
|
1918
|
+
if (!isDragging.value) {
|
|
1919
|
+
return;
|
|
1920
|
+
}
|
|
1921
|
+
if (dragPointer !== -1 && event.pointerId !== dragPointer) {
|
|
1922
|
+
return;
|
|
1923
|
+
}
|
|
1924
|
+
endDrag();
|
|
1925
|
+
}
|
|
1926
|
+
function onLostPointerCapture() {
|
|
1927
|
+
endDrag();
|
|
1928
|
+
}
|
|
1929
|
+
function ariaMax() {
|
|
1930
|
+
const avail = available.value;
|
|
1931
|
+
if (avail <= 0) {
|
|
1932
|
+
return props.max ?? (props.unit === "%" ? 100 - props.minEnd : 0);
|
|
1933
|
+
}
|
|
1934
|
+
const maxByEnd = fromPx(Math.max(0, avail - toPx(props.minEnd, avail)), avail);
|
|
1935
|
+
if (props.max == null) {
|
|
1936
|
+
return maxByEnd;
|
|
1937
|
+
}
|
|
1938
|
+
return Math.min(props.max, maxByEnd);
|
|
1939
|
+
}
|
|
1940
|
+
const ariaValueMin = vue.computed(() => props.min);
|
|
1941
|
+
const ariaValueMax = vue.computed(() => ariaMax());
|
|
1942
|
+
const ariaValueNow = vue.computed(() => size.value);
|
|
1943
|
+
const ariaValueText = vue.computed(() => props.unit === "%" ? `${size.value}%` : `${Math.round(size.value)}px`);
|
|
1944
|
+
function onKeydown(event) {
|
|
1945
|
+
if (!props.resizable) {
|
|
1946
|
+
return;
|
|
1947
|
+
}
|
|
1948
|
+
const avail = measureAvailable();
|
|
1949
|
+
available.value = avail;
|
|
1950
|
+
if (event.key === "Home") {
|
|
1951
|
+
event.preventDefault();
|
|
1952
|
+
const nextPx2 = clampStartPx(toPx(props.min, avail), avail);
|
|
1953
|
+
startPx.value = nextPx2;
|
|
1954
|
+
commit(fromPx(nextPx2, avail));
|
|
1955
|
+
return;
|
|
1956
|
+
}
|
|
1957
|
+
if (event.key === "End") {
|
|
1958
|
+
event.preventDefault();
|
|
1959
|
+
const nextPx2 = clampStartPx(toPx(ariaMax(), avail), avail);
|
|
1960
|
+
startPx.value = nextPx2;
|
|
1961
|
+
commit(fromPx(nextPx2, avail));
|
|
1962
|
+
return;
|
|
1963
|
+
}
|
|
1964
|
+
const primary = isRow.value && (event.key === "ArrowLeft" || event.key === "ArrowRight") || !isRow.value && (event.key === "ArrowUp" || event.key === "ArrowDown");
|
|
1965
|
+
const secondary = isRow.value && (event.key === "ArrowUp" || event.key === "ArrowDown") || !isRow.value && (event.key === "ArrowLeft" || event.key === "ArrowRight");
|
|
1966
|
+
if (!primary && !secondary) {
|
|
1967
|
+
return;
|
|
1968
|
+
}
|
|
1969
|
+
event.preventDefault();
|
|
1970
|
+
let dir = event.key === "ArrowRight" || event.key === "ArrowDown" ? 1 : -1;
|
|
1971
|
+
if (isRow.value && isRtl() && (event.key === "ArrowLeft" || event.key === "ArrowRight")) {
|
|
1972
|
+
dir = -dir;
|
|
1973
|
+
}
|
|
1974
|
+
const nextModel = size.value + dir * stepValue.value;
|
|
1975
|
+
const nextPx = clampStartPx(toPx(nextModel, avail), avail);
|
|
1976
|
+
startPx.value = nextPx;
|
|
1977
|
+
commit(fromPx(nextPx, avail));
|
|
1978
|
+
}
|
|
1979
|
+
vue.watch(
|
|
1980
|
+
() => props.modelValue,
|
|
1981
|
+
(value) => {
|
|
1982
|
+
if (isDragging.value) {
|
|
1983
|
+
return;
|
|
1984
|
+
}
|
|
1985
|
+
if (!valuesEqual(value, size.value)) {
|
|
1986
|
+
size.value = value;
|
|
1987
|
+
applyLayout(false);
|
|
1988
|
+
}
|
|
1989
|
+
}
|
|
1990
|
+
);
|
|
1991
|
+
vue.watch(
|
|
1992
|
+
() => [props.unit, props.direction, props.min, props.max, props.minEnd, props.resizable],
|
|
1993
|
+
() => {
|
|
1994
|
+
if (!isDragging.value) {
|
|
1995
|
+
applyLayout(true);
|
|
1996
|
+
}
|
|
1997
|
+
}
|
|
1998
|
+
);
|
|
1999
|
+
vue.onMounted(() => {
|
|
2000
|
+
applyLayout(false);
|
|
2001
|
+
resizeObserver = new ResizeObserver(() => {
|
|
2002
|
+
if (isDragging.value) {
|
|
2003
|
+
return;
|
|
2004
|
+
}
|
|
2005
|
+
applyLayout(true);
|
|
2006
|
+
});
|
|
2007
|
+
if (rootRef.value) {
|
|
2008
|
+
resizeObserver.observe(rootRef.value);
|
|
2009
|
+
}
|
|
2010
|
+
stopFocusLoss = listenFocusLoss(endDrag);
|
|
2011
|
+
});
|
|
2012
|
+
vue.onBeforeUnmount(() => {
|
|
2013
|
+
endDrag();
|
|
2014
|
+
resizeObserver == null ? void 0 : resizeObserver.disconnect();
|
|
2015
|
+
resizeObserver = null;
|
|
2016
|
+
stopFocusLoss == null ? void 0 : stopFocusLoss();
|
|
2017
|
+
});
|
|
2018
|
+
return (_ctx, _cache) => {
|
|
2019
|
+
return vue.openBlock(), vue.createElementBlock("div", {
|
|
2020
|
+
ref_key: "rootRef",
|
|
2021
|
+
ref: rootRef,
|
|
2022
|
+
class: vue.normalizeClass(["tao-split", [
|
|
2023
|
+
`tao-split--${__props.direction}`,
|
|
2024
|
+
{
|
|
2025
|
+
"tao-split--fixed": !__props.resizable,
|
|
2026
|
+
"tao-split--dragging": isDragging.value
|
|
2027
|
+
}
|
|
2028
|
+
]]),
|
|
2029
|
+
style: vue.normalizeStyle({ "--tao-split-start": `${startPx.value}px` })
|
|
2030
|
+
}, [
|
|
2031
|
+
vue.createElementVNode("div", _hoisted_1$B, [
|
|
2032
|
+
vue.renderSlot(_ctx.$slots, "start", {}, void 0, true)
|
|
2033
|
+
]),
|
|
2034
|
+
vue.createElementVNode("div", {
|
|
2035
|
+
ref_key: "handleRef",
|
|
2036
|
+
ref: handleRef,
|
|
2037
|
+
class: "tao-split__handle",
|
|
2038
|
+
role: "separator",
|
|
2039
|
+
"aria-orientation": ariaOrientation.value,
|
|
2040
|
+
"aria-valuemin": ariaValueMin.value,
|
|
2041
|
+
"aria-valuemax": ariaValueMax.value,
|
|
2042
|
+
"aria-valuenow": ariaValueNow.value,
|
|
2043
|
+
"aria-valuetext": ariaValueText.value,
|
|
2044
|
+
"aria-disabled": __props.resizable ? void 0 : true,
|
|
2045
|
+
tabindex: __props.resizable ? 0 : -1,
|
|
2046
|
+
onPointerdown: onPointerDown,
|
|
2047
|
+
onPointermove: onPointerMove,
|
|
2048
|
+
onPointerup: onPointerEnd,
|
|
2049
|
+
onPointercancel: onPointerEnd,
|
|
2050
|
+
onLostpointercapture: onLostPointerCapture,
|
|
2051
|
+
onKeydown,
|
|
2052
|
+
onDragstart: _cache[0] || (_cache[0] = vue.withModifiers(() => {
|
|
2053
|
+
}, ["prevent"]))
|
|
2054
|
+
}, null, 40, _hoisted_2$x),
|
|
2055
|
+
vue.createElementVNode("div", _hoisted_3$r, [
|
|
2056
|
+
vue.renderSlot(_ctx.$slots, "end", {}, void 0, true)
|
|
2057
|
+
]),
|
|
2058
|
+
isDragging.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$n)) : vue.createCommentVNode("", true)
|
|
2059
|
+
], 6);
|
|
2060
|
+
};
|
|
2061
|
+
}
|
|
2062
|
+
});
|
|
2063
|
+
const TaoSplit = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__scopeId", "data-v-f44196dc"]]);
|
|
1694
2064
|
const _hoisted_1$A = { class: "tao-icon" };
|
|
1695
2065
|
const _sfc_main$D = /* @__PURE__ */ vue.defineComponent({
|
|
1696
2066
|
...{ name: "TaoIcon" },
|
|
@@ -1783,6 +2153,7 @@
|
|
|
1783
2153
|
const TaoLoader = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__scopeId", "data-v-75a40018"]]);
|
|
1784
2154
|
const _hoisted_1$z = { class: "tao-image" };
|
|
1785
2155
|
const _hoisted_2$w = ["src", "alt", "loading"];
|
|
2156
|
+
const _hoisted_3$q = { class: "tao-image__placeholder" };
|
|
1786
2157
|
const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
|
|
1787
2158
|
...{ name: "TaoImage" },
|
|
1788
2159
|
__name: "TaoImage",
|
|
@@ -1790,7 +2161,8 @@
|
|
|
1790
2161
|
src: { default: "" },
|
|
1791
2162
|
alt: { default: "" },
|
|
1792
2163
|
pixelated: { type: Boolean, default: false },
|
|
1793
|
-
lazy: { type: Boolean, default: false }
|
|
2164
|
+
lazy: { type: Boolean, default: false },
|
|
2165
|
+
placeholderText: { default: "No image available" }
|
|
1794
2166
|
},
|
|
1795
2167
|
emits: ["load", "error"],
|
|
1796
2168
|
setup(__props, { emit: __emit }) {
|
|
@@ -1821,20 +2193,20 @@
|
|
|
1821
2193
|
onLoad: handleLoad,
|
|
1822
2194
|
onError: handleError
|
|
1823
2195
|
}, null, 42, _hoisted_2$w)) : vue.renderSlot(_ctx.$slots, "default", {}, () => [
|
|
1824
|
-
|
|
2196
|
+
vue.createElementVNode("div", _hoisted_3$q, vue.toDisplayString(__props.placeholderText), 1)
|
|
1825
2197
|
], true, 1)
|
|
1826
2198
|
]);
|
|
1827
2199
|
};
|
|
1828
2200
|
}
|
|
1829
2201
|
});
|
|
1830
|
-
const TaoImage = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["__scopeId", "data-v-
|
|
2202
|
+
const TaoImage = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["__scopeId", "data-v-e7c911e5"]]);
|
|
1831
2203
|
const _hoisted_1$y = ["for"];
|
|
1832
2204
|
const _hoisted_2$v = ["id", "checked", "disabled", "aria-checked", "aria-invalid", "aria-describedby"];
|
|
1833
2205
|
const _hoisted_3$p = {
|
|
1834
2206
|
key: 0,
|
|
1835
2207
|
class: "tao-checkbox__label"
|
|
1836
2208
|
};
|
|
1837
|
-
const _hoisted_4$
|
|
2209
|
+
const _hoisted_4$m = {
|
|
1838
2210
|
key: 1,
|
|
1839
2211
|
class: "tao-checkbox__label"
|
|
1840
2212
|
};
|
|
@@ -1910,7 +2282,7 @@
|
|
|
1910
2282
|
onChange: onInputChange
|
|
1911
2283
|
}, null, 40, _hoisted_2$v),
|
|
1912
2284
|
_cache[0] || (_cache[0] = vue.createElementVNode("span", { class: "tao-checkbox__box" }, null, -1)),
|
|
1913
|
-
__props.label ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$p, vue.toDisplayString(__props.label), 1)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$
|
|
2285
|
+
__props.label ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$p, vue.toDisplayString(__props.label), 1)) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_4$m, [
|
|
1914
2286
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
1915
2287
|
])),
|
|
1916
2288
|
vue.renderSlot(_ctx.$slots, "post", { text: __props.label }, void 0, true)
|
|
@@ -1925,6 +2297,7 @@
|
|
|
1925
2297
|
};
|
|
1926
2298
|
const _hoisted_2$u = { class: "tao-tag__text" };
|
|
1927
2299
|
const _hoisted_3$o = ["aria-label"];
|
|
2300
|
+
const _hoisted_4$l = { "aria-hidden": "true" };
|
|
1928
2301
|
const _sfc_main$z = /* @__PURE__ */ vue.defineComponent({
|
|
1929
2302
|
...{ name: "TaoTag" },
|
|
1930
2303
|
__name: "TaoTag",
|
|
@@ -1977,12 +2350,18 @@
|
|
|
1977
2350
|
class: "tao-tag__close",
|
|
1978
2351
|
"aria-label": __props.closeLabel,
|
|
1979
2352
|
onClick: vue.withModifiers(onClose, ["stop"])
|
|
1980
|
-
},
|
|
2353
|
+
}, [
|
|
2354
|
+
vue.createElementVNode("span", _hoisted_4$l, [
|
|
2355
|
+
vue.renderSlot(_ctx.$slots, "close-icon", {}, () => [
|
|
2356
|
+
_cache[0] || (_cache[0] = vue.createTextVNode("✕", -1))
|
|
2357
|
+
], true)
|
|
2358
|
+
])
|
|
2359
|
+
], 8, _hoisted_3$o)) : vue.createCommentVNode("", true)
|
|
1981
2360
|
], 6);
|
|
1982
2361
|
};
|
|
1983
2362
|
}
|
|
1984
2363
|
});
|
|
1985
|
-
const TaoTag = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__scopeId", "data-v-
|
|
2364
|
+
const TaoTag = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__scopeId", "data-v-f353f529"]]);
|
|
1986
2365
|
const _hoisted_1$w = {
|
|
1987
2366
|
key: 1,
|
|
1988
2367
|
class: "tao-divider-text"
|
|
@@ -2219,7 +2598,7 @@
|
|
|
2219
2598
|
}
|
|
2220
2599
|
});
|
|
2221
2600
|
const TaoTextarea = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-2534c0c4"]]);
|
|
2222
|
-
const _hoisted_1$t = ["tabindex"];
|
|
2601
|
+
const _hoisted_1$t = ["tabindex", "aria-label"];
|
|
2223
2602
|
const _hoisted_2$q = { class: "tao-scroll-top__content" };
|
|
2224
2603
|
const RIPPLE_DURATION = 750;
|
|
2225
2604
|
const _sfc_main$u = /* @__PURE__ */ vue.defineComponent({
|
|
@@ -2232,7 +2611,8 @@
|
|
|
2232
2611
|
zIndex: { default: 1e3 },
|
|
2233
2612
|
boundary: { default: 300 },
|
|
2234
2613
|
hasOutline: { type: Boolean, default: true },
|
|
2235
|
-
tabindex: { default: 0 }
|
|
2614
|
+
tabindex: { default: 0 },
|
|
2615
|
+
ariaLabel: { default: "Наверх" }
|
|
2236
2616
|
},
|
|
2237
2617
|
setup(__props) {
|
|
2238
2618
|
const props = __props;
|
|
@@ -2319,7 +2699,7 @@
|
|
|
2319
2699
|
style: vue.normalizeStyle(mainStyle),
|
|
2320
2700
|
tabindex: props.tabindex,
|
|
2321
2701
|
class: vue.normalizeClass(["tao-scroll-top", { "tao-scroll-top--no-outline": !props.hasOutline }]),
|
|
2322
|
-
"aria-label":
|
|
2702
|
+
"aria-label": props.ariaLabel,
|
|
2323
2703
|
onClick: vue.withModifiers(onClick, ["prevent"])
|
|
2324
2704
|
}, [
|
|
2325
2705
|
vue.createElementVNode("div", _hoisted_2$q, [
|
|
@@ -2346,7 +2726,7 @@
|
|
|
2346
2726
|
};
|
|
2347
2727
|
}
|
|
2348
2728
|
});
|
|
2349
|
-
const TaoScrollTop = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-
|
|
2729
|
+
const TaoScrollTop = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["__scopeId", "data-v-59678649"]]);
|
|
2350
2730
|
const _hoisted_1$s = { class: "tao-progress" };
|
|
2351
2731
|
const _hoisted_2$p = {
|
|
2352
2732
|
key: 0,
|
|
@@ -2357,11 +2737,11 @@
|
|
|
2357
2737
|
key: 0,
|
|
2358
2738
|
class: "tao-progress__percentage"
|
|
2359
2739
|
};
|
|
2360
|
-
const _hoisted_5$
|
|
2740
|
+
const _hoisted_5$g = {
|
|
2361
2741
|
key: 1,
|
|
2362
2742
|
class: "tao-progress__side"
|
|
2363
2743
|
};
|
|
2364
|
-
const _hoisted_6$
|
|
2744
|
+
const _hoisted_6$c = {
|
|
2365
2745
|
key: 0,
|
|
2366
2746
|
class: "tao-progress__percentage"
|
|
2367
2747
|
};
|
|
@@ -2416,9 +2796,9 @@
|
|
|
2416
2796
|
}, null, 6)
|
|
2417
2797
|
], 4)
|
|
2418
2798
|
]),
|
|
2419
|
-
_ctx.$slots.right || showEndPercent.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$
|
|
2799
|
+
_ctx.$slots.right || showEndPercent.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5$g, [
|
|
2420
2800
|
vue.renderSlot(_ctx.$slots, "right", {}, void 0, true),
|
|
2421
|
-
showEndPercent.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$
|
|
2801
|
+
showEndPercent.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$c, vue.toDisplayString(endPercentLabel.value), 1)) : vue.createCommentVNode("", true)
|
|
2422
2802
|
])) : vue.createCommentVNode("", true)
|
|
2423
2803
|
], 6)
|
|
2424
2804
|
]);
|
|
@@ -2663,14 +3043,17 @@
|
|
|
2663
3043
|
const TaoSlider = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-24a38782"]]);
|
|
2664
3044
|
const _hoisted_1$q = { class: "tao-file-drop" };
|
|
2665
3045
|
const _hoisted_2$n = { class: "tao-file-drop__row" };
|
|
2666
|
-
const _hoisted_3$j = ["
|
|
2667
|
-
const _hoisted_4$i = {
|
|
3046
|
+
const _hoisted_3$j = ["aria-label"];
|
|
3047
|
+
const _hoisted_4$i = { "aria-hidden": "true" };
|
|
3048
|
+
const _hoisted_5$f = ["accept", "multiple"];
|
|
3049
|
+
const _hoisted_6$b = {
|
|
2668
3050
|
key: 0,
|
|
2669
3051
|
class: "tao-file-drop__list"
|
|
2670
3052
|
};
|
|
2671
|
-
const
|
|
2672
|
-
const
|
|
2673
|
-
const
|
|
3053
|
+
const _hoisted_7$a = { class: "tao-file-drop__name" };
|
|
3054
|
+
const _hoisted_8$9 = { class: "tao-file-drop__meta" };
|
|
3055
|
+
const _hoisted_9$4 = ["aria-label", "onClick"];
|
|
3056
|
+
const _hoisted_10$4 = { "aria-hidden": "true" };
|
|
2674
3057
|
const _sfc_main$r = /* @__PURE__ */ vue.defineComponent({
|
|
2675
3058
|
...{ name: "TaoFileDrop" },
|
|
2676
3059
|
__name: "TaoFileDrop",
|
|
@@ -2680,6 +3063,9 @@
|
|
|
2680
3063
|
accept: { default: "*" },
|
|
2681
3064
|
multiple: { type: Boolean, default: false },
|
|
2682
3065
|
showClear: { type: Boolean, default: false },
|
|
3066
|
+
clearLabel: { default: "Очистить файлы" },
|
|
3067
|
+
removeLabel: { default: "Убрать «{name}»" },
|
|
3068
|
+
formatSize: {},
|
|
2683
3069
|
list: { type: Boolean, default: true }
|
|
2684
3070
|
},
|
|
2685
3071
|
emits: ["update:modelValue", "files", "clear-request"],
|
|
@@ -2746,7 +3132,7 @@
|
|
|
2746
3132
|
el.type = "file";
|
|
2747
3133
|
}
|
|
2748
3134
|
}
|
|
2749
|
-
function
|
|
3135
|
+
function defaultFormatSize(bytes) {
|
|
2750
3136
|
if (bytes < 1024) {
|
|
2751
3137
|
return `${bytes} Б`;
|
|
2752
3138
|
}
|
|
@@ -2759,6 +3145,9 @@
|
|
|
2759
3145
|
const value = mb < 10 ? mb.toFixed(1) : String(Math.round(mb));
|
|
2760
3146
|
return `${value.replace(".", ",")} МБ`;
|
|
2761
3147
|
}
|
|
3148
|
+
function sizeLabel(bytes) {
|
|
3149
|
+
return props.formatSize ? props.formatSize(bytes) : defaultFormatSize(bytes);
|
|
3150
|
+
}
|
|
2762
3151
|
function fileKey(file, index) {
|
|
2763
3152
|
return `${file.name}-${file.size}-${file.lastModified}-${index}`;
|
|
2764
3153
|
}
|
|
@@ -2776,9 +3165,15 @@
|
|
|
2776
3165
|
key: 0,
|
|
2777
3166
|
type: "button",
|
|
2778
3167
|
class: "tao-file-drop__clear",
|
|
2779
|
-
"aria-label":
|
|
3168
|
+
"aria-label": __props.clearLabel,
|
|
2780
3169
|
onClick: requestClear
|
|
2781
|
-
},
|
|
3170
|
+
}, [
|
|
3171
|
+
vue.createElementVNode("span", _hoisted_4$i, [
|
|
3172
|
+
vue.renderSlot(_ctx.$slots, "clear-icon", {}, () => [
|
|
3173
|
+
_cache[1] || (_cache[1] = vue.createTextVNode("✕", -1))
|
|
3174
|
+
], true)
|
|
3175
|
+
])
|
|
3176
|
+
], 8, _hoisted_3$j)) : vue.createCommentVNode("", true),
|
|
2782
3177
|
vue.createElementVNode("label", {
|
|
2783
3178
|
class: vue.normalizeClass(["tao-file-drop__zone", [`tao-file-drop__zone--${__props.size}`, { "tao-file-drop__zone--dragging": isDragging.value }]]),
|
|
2784
3179
|
onDragover: handleDragOver,
|
|
@@ -2786,7 +3181,7 @@
|
|
|
2786
3181
|
onDrop: handleDrop
|
|
2787
3182
|
}, [
|
|
2788
3183
|
vue.renderSlot(_ctx.$slots, "default", {}, () => [
|
|
2789
|
-
_cache[
|
|
3184
|
+
_cache[2] || (_cache[2] = vue.createTextVNode("Перетащите файл сюда или нажмите, чтобы выбрать", -1))
|
|
2790
3185
|
], true),
|
|
2791
3186
|
vue.createElementVNode("input", {
|
|
2792
3187
|
ref_key: "fileInput",
|
|
@@ -2798,23 +3193,29 @@
|
|
|
2798
3193
|
onChange: handleFileSelect,
|
|
2799
3194
|
onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => {
|
|
2800
3195
|
}, ["stop"]))
|
|
2801
|
-
}, null, 40,
|
|
3196
|
+
}, null, 40, _hoisted_5$f)
|
|
2802
3197
|
], 34)
|
|
2803
3198
|
]),
|
|
2804
|
-
__props.list && __props.modelValue.length ? (vue.openBlock(), vue.createElementBlock("ul",
|
|
3199
|
+
__props.list && __props.modelValue.length ? (vue.openBlock(), vue.createElementBlock("ul", _hoisted_6$b, [
|
|
2805
3200
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.modelValue, (file, index) => {
|
|
2806
3201
|
return vue.openBlock(), vue.createElementBlock("li", {
|
|
2807
3202
|
key: fileKey(file, index),
|
|
2808
3203
|
class: "tao-file-drop__file"
|
|
2809
3204
|
}, [
|
|
2810
|
-
vue.createElementVNode("span",
|
|
2811
|
-
vue.createElementVNode("span",
|
|
3205
|
+
vue.createElementVNode("span", _hoisted_7$a, vue.toDisplayString(file.name), 1),
|
|
3206
|
+
vue.createElementVNode("span", _hoisted_8$9, vue.toDisplayString(sizeLabel(file.size)), 1),
|
|
2812
3207
|
vue.createElementVNode("button", {
|
|
2813
3208
|
type: "button",
|
|
2814
3209
|
class: "tao-file-drop__remove",
|
|
2815
|
-
"aria-label":
|
|
3210
|
+
"aria-label": __props.removeLabel.replace("{name}", file.name),
|
|
2816
3211
|
onClick: ($event) => removeAt(index)
|
|
2817
|
-
},
|
|
3212
|
+
}, [
|
|
3213
|
+
vue.createElementVNode("span", _hoisted_10$4, [
|
|
3214
|
+
vue.renderSlot(_ctx.$slots, "remove-icon", {}, () => [
|
|
3215
|
+
_cache[3] || (_cache[3] = vue.createTextVNode("✕", -1))
|
|
3216
|
+
], true)
|
|
3217
|
+
])
|
|
3218
|
+
], 8, _hoisted_9$4)
|
|
2818
3219
|
]);
|
|
2819
3220
|
}), 128))
|
|
2820
3221
|
])) : vue.createCommentVNode("", true)
|
|
@@ -2822,19 +3223,18 @@
|
|
|
2822
3223
|
};
|
|
2823
3224
|
}
|
|
2824
3225
|
});
|
|
2825
|
-
const TaoFileDrop = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-
|
|
3226
|
+
const TaoFileDrop = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-570fc1bb"]]);
|
|
2826
3227
|
const _hoisted_1$p = ["aria-expanded"];
|
|
2827
|
-
const _hoisted_2$m =
|
|
2828
|
-
|
|
2829
|
-
|
|
2830
|
-
};
|
|
2831
|
-
const _hoisted_3$i = ["onClick", "onMouseenter"];
|
|
2832
|
-
const _hoisted_4$h = { key: 1 };
|
|
3228
|
+
const _hoisted_2$m = ["aria-label"];
|
|
3229
|
+
const _hoisted_3$i = { "aria-hidden": "true" };
|
|
3230
|
+
const _hoisted_4$h = ["onClick", "onMouseenter"];
|
|
3231
|
+
const _hoisted_5$e = { key: 1 };
|
|
2833
3232
|
const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
|
|
2834
3233
|
...{ name: "TaoDropdownMenu" },
|
|
2835
3234
|
__name: "TaoDropdownMenu",
|
|
2836
3235
|
props: {
|
|
2837
|
-
actions: { default: () => [] }
|
|
3236
|
+
actions: { default: () => [] },
|
|
3237
|
+
menuLabel: { default: "Меню" }
|
|
2838
3238
|
},
|
|
2839
3239
|
emits: ["selected"],
|
|
2840
3240
|
setup(__props, { emit: __emit }) {
|
|
@@ -2965,7 +3365,16 @@
|
|
|
2965
3365
|
"aria-expanded": isOpen.value,
|
|
2966
3366
|
onClick: toggleMenu
|
|
2967
3367
|
}, [
|
|
2968
|
-
_ctx.$slots.button ? vue.renderSlot(_ctx.$slots, "button", {}, void 0, true, 0) : (vue.openBlock(), vue.createElementBlock("span",
|
|
3368
|
+
_ctx.$slots.button ? vue.renderSlot(_ctx.$slots, "button", {}, void 0, true, 0) : (vue.openBlock(), vue.createElementBlock("span", {
|
|
3369
|
+
key: 1,
|
|
3370
|
+
"aria-label": __props.menuLabel
|
|
3371
|
+
}, [
|
|
3372
|
+
vue.createElementVNode("span", _hoisted_3$i, [
|
|
3373
|
+
vue.renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
3374
|
+
_cache[0] || (_cache[0] = vue.createTextVNode("⋮", -1))
|
|
3375
|
+
], true)
|
|
3376
|
+
])
|
|
3377
|
+
], 8, _hoisted_2$m))
|
|
2969
3378
|
], 8, _hoisted_1$p),
|
|
2970
3379
|
(vue.openBlock(), vue.createBlock(vue.Teleport, { to: "body" }, [
|
|
2971
3380
|
isOpen.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -2991,8 +3400,8 @@
|
|
|
2991
3400
|
id: action.id,
|
|
2992
3401
|
ico: action.ico,
|
|
2993
3402
|
text: action.name
|
|
2994
|
-
}, void 0, true, 0) : (vue.openBlock(), vue.createElementBlock("span",
|
|
2995
|
-
], 42,
|
|
3403
|
+
}, void 0, true, 0) : (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$e, vue.toDisplayString(action.name), 1))
|
|
3404
|
+
], 42, _hoisted_4$h);
|
|
2996
3405
|
}), 128))
|
|
2997
3406
|
], 36)) : vue.createCommentVNode("", true)
|
|
2998
3407
|
]))
|
|
@@ -3000,7 +3409,7 @@
|
|
|
3000
3409
|
};
|
|
3001
3410
|
}
|
|
3002
3411
|
});
|
|
3003
|
-
const TaoDropdownMenu = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-
|
|
3412
|
+
const TaoDropdownMenu = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-42bc0a2a"]]);
|
|
3004
3413
|
const _hoisted_1$o = ["aria-invalid", "aria-describedby"];
|
|
3005
3414
|
const _hoisted_2$l = ["id", "value", "placeholder", "type", "inputmode", "pattern", "onInput", "onKeydown", "onFocus"];
|
|
3006
3415
|
const _sfc_main$p = /* @__PURE__ */ vue.defineComponent({
|
|
@@ -3284,7 +3693,8 @@
|
|
|
3284
3693
|
options: { default: () => [] },
|
|
3285
3694
|
placeholder: { default: "Выберите" },
|
|
3286
3695
|
disabled: { type: Boolean, default: false },
|
|
3287
|
-
error: { type: Boolean, default: false }
|
|
3696
|
+
error: { type: Boolean, default: false },
|
|
3697
|
+
clearText: { default: "Очистить" }
|
|
3288
3698
|
},
|
|
3289
3699
|
emits: ["update:modelValue", "change"],
|
|
3290
3700
|
setup(__props, { emit: __emit }) {
|
|
@@ -3490,10 +3900,12 @@
|
|
|
3490
3900
|
onKeydown: onTriggerKeydown
|
|
3491
3901
|
}, [
|
|
3492
3902
|
vue.createElementVNode("span", _hoisted_2$k, vue.toDisplayString(((_a = selected.value) == null ? void 0 : _a.label) ?? __props.placeholder), 1),
|
|
3493
|
-
|
|
3494
|
-
class: "tao-select__chevron",
|
|
3903
|
+
vue.createElementVNode("span", {
|
|
3904
|
+
class: vue.normalizeClass(["tao-select__chevron", { "tao-select__chevron--custom": _ctx.$slots.chevron }]),
|
|
3495
3905
|
"aria-hidden": "true"
|
|
3496
|
-
},
|
|
3906
|
+
}, [
|
|
3907
|
+
vue.renderSlot(_ctx.$slots, "chevron", {}, void 0, true)
|
|
3908
|
+
], 2)
|
|
3497
3909
|
], 42, _hoisted_1$m),
|
|
3498
3910
|
(vue.openBlock(), vue.createBlock(vue.Teleport, { to: "body" }, [
|
|
3499
3911
|
open.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -3540,14 +3952,18 @@
|
|
|
3540
3952
|
onMousedown: _cache[1] || (_cache[1] = vue.withModifiers(() => {
|
|
3541
3953
|
}, ["prevent"])),
|
|
3542
3954
|
onClick: clear
|
|
3543
|
-
},
|
|
3955
|
+
}, [
|
|
3956
|
+
vue.renderSlot(_ctx.$slots, "clear", {}, () => [
|
|
3957
|
+
vue.createTextVNode(vue.toDisplayString(__props.clearText), 1)
|
|
3958
|
+
], true)
|
|
3959
|
+
], 32)) : vue.createCommentVNode("", true)
|
|
3544
3960
|
], 4)) : vue.createCommentVNode("", true)
|
|
3545
3961
|
]))
|
|
3546
3962
|
], 2);
|
|
3547
3963
|
};
|
|
3548
3964
|
}
|
|
3549
3965
|
});
|
|
3550
|
-
const TaoSelect = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-
|
|
3966
|
+
const TaoSelect = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-c5d6cdd3"]]);
|
|
3551
3967
|
const _hoisted_1$l = ["id", "aria-expanded", "aria-activedescendant", "aria-invalid", "aria-describedby", "disabled", "placeholder", "value"];
|
|
3552
3968
|
const _hoisted_2$j = {
|
|
3553
3969
|
key: 0,
|
|
@@ -3563,6 +3979,8 @@
|
|
|
3563
3979
|
placeholder: { default: "Начните вводить" },
|
|
3564
3980
|
disabled: { type: Boolean, default: false },
|
|
3565
3981
|
error: { type: Boolean, default: false },
|
|
3982
|
+
emptyText: { default: "Ничего не найдено" },
|
|
3983
|
+
clearText: { default: "Очистить" },
|
|
3566
3984
|
allowCreate: { type: Boolean, default: false }
|
|
3567
3985
|
},
|
|
3568
3986
|
emits: ["update:modelValue", "change", "create"],
|
|
@@ -3963,10 +4381,12 @@
|
|
|
3963
4381
|
onBlur,
|
|
3964
4382
|
onKeydown: onInputKeydown
|
|
3965
4383
|
}, null, 40, _hoisted_1$l),
|
|
3966
|
-
|
|
3967
|
-
class: "tao-combobox__chevron",
|
|
4384
|
+
vue.createElementVNode("span", {
|
|
4385
|
+
class: vue.normalizeClass(["tao-combobox__chevron", { "tao-combobox__chevron--custom": _ctx.$slots.chevron }]),
|
|
3968
4386
|
"aria-hidden": "true"
|
|
3969
|
-
},
|
|
4387
|
+
}, [
|
|
4388
|
+
vue.renderSlot(_ctx.$slots, "chevron", {}, void 0, true)
|
|
4389
|
+
], 2)
|
|
3970
4390
|
], 544),
|
|
3971
4391
|
(vue.openBlock(), vue.createBlock(vue.Teleport, { to: "body" }, [
|
|
3972
4392
|
open.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -3983,7 +4403,11 @@
|
|
|
3983
4403
|
class: "tao-combobox__list",
|
|
3984
4404
|
role: "listbox"
|
|
3985
4405
|
}, [
|
|
3986
|
-
!rows.value.length ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$j,
|
|
4406
|
+
!rows.value.length ? (vue.openBlock(), vue.createElementBlock("li", _hoisted_2$j, [
|
|
4407
|
+
vue.renderSlot(_ctx.$slots, "empty", {}, () => [
|
|
4408
|
+
vue.createTextVNode(vue.toDisplayString(__props.emptyText), 1)
|
|
4409
|
+
], true)
|
|
4410
|
+
])) : vue.createCommentVNode("", true),
|
|
3987
4411
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(rows.value, (row, index) => {
|
|
3988
4412
|
return vue.openBlock(), vue.createElementBlock("li", {
|
|
3989
4413
|
id: `${listId}-row-${index}`,
|
|
@@ -4002,9 +4426,11 @@
|
|
|
4002
4426
|
onClick: ($event) => activateRow(row),
|
|
4003
4427
|
onMouseenter: ($event) => !(row.kind === "option" && row.option.disabled) && (activeIndex.value = index)
|
|
4004
4428
|
}, [
|
|
4005
|
-
row.kind === "create" ?
|
|
4429
|
+
row.kind === "create" ? vue.renderSlot(_ctx.$slots, "create", {
|
|
4430
|
+
text: row.text
|
|
4431
|
+
}, () => [
|
|
4006
4432
|
vue.createTextVNode("Добавить «" + vue.toDisplayString(row.text) + "»", 1)
|
|
4007
|
-
],
|
|
4433
|
+
], true, 0) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
|
|
4008
4434
|
vue.createTextVNode(vue.toDisplayString(row.option.label), 1)
|
|
4009
4435
|
], 64))
|
|
4010
4436
|
], 42, _hoisted_3$g);
|
|
@@ -4015,14 +4441,18 @@
|
|
|
4015
4441
|
type: "button",
|
|
4016
4442
|
class: "tao-combobox__clear",
|
|
4017
4443
|
onMousedown: vue.withModifiers(markPicking, ["prevent"])
|
|
4018
|
-
},
|
|
4444
|
+
}, [
|
|
4445
|
+
vue.renderSlot(_ctx.$slots, "clear", {}, () => [
|
|
4446
|
+
vue.createTextVNode(vue.toDisplayString(__props.clearText), 1)
|
|
4447
|
+
], true)
|
|
4448
|
+
], 32)) : vue.createCommentVNode("", true)
|
|
4019
4449
|
], 4)) : vue.createCommentVNode("", true)
|
|
4020
4450
|
]))
|
|
4021
4451
|
], 2);
|
|
4022
4452
|
};
|
|
4023
4453
|
}
|
|
4024
4454
|
});
|
|
4025
|
-
const TaoCombobox = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-
|
|
4455
|
+
const TaoCombobox = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["__scopeId", "data-v-2281e009"]]);
|
|
4026
4456
|
const ISO_DATE = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
4027
4457
|
function formatTaoDateIso(parts) {
|
|
4028
4458
|
return `${String(parts.y).padStart(4, "0")}-${String(parts.m).padStart(2, "0")}-${String(parts.d).padStart(2, "0")}`;
|
|
@@ -4152,20 +4582,28 @@
|
|
|
4152
4582
|
}
|
|
4153
4583
|
const _hoisted_1$k = ["id", "aria-expanded", "aria-invalid", "aria-describedby", "disabled"];
|
|
4154
4584
|
const _hoisted_2$i = { class: "tao-date__value" };
|
|
4155
|
-
const _hoisted_3$f =
|
|
4156
|
-
|
|
4157
|
-
|
|
4158
|
-
|
|
4585
|
+
const _hoisted_3$f = {
|
|
4586
|
+
class: "tao-date__icon",
|
|
4587
|
+
"aria-hidden": "true"
|
|
4588
|
+
};
|
|
4589
|
+
const _hoisted_4$f = ["aria-label"];
|
|
4590
|
+
const _hoisted_5$d = { class: "tao-date__header" };
|
|
4591
|
+
const _hoisted_6$a = ["aria-label"];
|
|
4592
|
+
const _hoisted_7$9 = { "aria-hidden": "true" };
|
|
4593
|
+
const _hoisted_8$8 = { class: "tao-date__month" };
|
|
4594
|
+
const _hoisted_9$3 = ["aria-label"];
|
|
4595
|
+
const _hoisted_10$3 = { "aria-hidden": "true" };
|
|
4596
|
+
const _hoisted_11$2 = {
|
|
4159
4597
|
class: "tao-date__weekdays",
|
|
4160
4598
|
"aria-hidden": "true"
|
|
4161
4599
|
};
|
|
4162
|
-
const
|
|
4600
|
+
const _hoisted_12$1 = {
|
|
4163
4601
|
class: "tao-date__grid",
|
|
4164
4602
|
role: "grid"
|
|
4165
4603
|
};
|
|
4166
|
-
const
|
|
4167
|
-
const
|
|
4168
|
-
const
|
|
4604
|
+
const _hoisted_13$1 = ["aria-label", "aria-selected", "disabled", "onClick"];
|
|
4605
|
+
const _hoisted_14$1 = { class: "tao-date__footer" };
|
|
4606
|
+
const _hoisted_15 = ["disabled"];
|
|
4169
4607
|
const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({
|
|
4170
4608
|
...{ name: "TaoDate" },
|
|
4171
4609
|
__name: "TaoDate",
|
|
@@ -4176,7 +4614,11 @@
|
|
|
4176
4614
|
error: { type: Boolean, default: false },
|
|
4177
4615
|
min: { default: void 0 },
|
|
4178
4616
|
max: { default: void 0 },
|
|
4179
|
-
locale: { default: "ru-RU" }
|
|
4617
|
+
locale: { default: "ru-RU" },
|
|
4618
|
+
todayText: { default: "Сегодня" },
|
|
4619
|
+
clearText: { default: "Очистить" },
|
|
4620
|
+
prevMonthLabel: { default: "Предыдущий месяц" },
|
|
4621
|
+
nextMonthLabel: { default: "Следующий месяц" }
|
|
4180
4622
|
},
|
|
4181
4623
|
emits: ["update:modelValue", "change"],
|
|
4182
4624
|
setup(__props, { emit: __emit }) {
|
|
@@ -4397,32 +4839,34 @@
|
|
|
4397
4839
|
onKeydown: onTriggerKeydown
|
|
4398
4840
|
}, [
|
|
4399
4841
|
vue.createElementVNode("span", _hoisted_2$i, vue.toDisplayString(displayLabel.value || __props.placeholder), 1),
|
|
4400
|
-
|
|
4401
|
-
|
|
4402
|
-
|
|
4403
|
-
|
|
4404
|
-
|
|
4405
|
-
|
|
4406
|
-
|
|
4407
|
-
|
|
4408
|
-
|
|
4409
|
-
|
|
4410
|
-
|
|
4411
|
-
|
|
4412
|
-
|
|
4413
|
-
|
|
4414
|
-
|
|
4415
|
-
|
|
4416
|
-
|
|
4417
|
-
|
|
4418
|
-
|
|
4419
|
-
|
|
4420
|
-
|
|
4421
|
-
|
|
4422
|
-
|
|
4423
|
-
|
|
4424
|
-
|
|
4425
|
-
|
|
4842
|
+
vue.createElementVNode("span", _hoisted_3$f, [
|
|
4843
|
+
vue.renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
4844
|
+
_cache[4] || (_cache[4] = vue.createElementVNode("svg", {
|
|
4845
|
+
viewBox: "0 0 16 16",
|
|
4846
|
+
width: "16",
|
|
4847
|
+
height: "16",
|
|
4848
|
+
focusable: "false"
|
|
4849
|
+
}, [
|
|
4850
|
+
vue.createElementVNode("rect", {
|
|
4851
|
+
x: "2",
|
|
4852
|
+
y: "3",
|
|
4853
|
+
width: "12",
|
|
4854
|
+
height: "11",
|
|
4855
|
+
rx: "1.5",
|
|
4856
|
+
fill: "none",
|
|
4857
|
+
stroke: "currentColor",
|
|
4858
|
+
"stroke-width": "1.4"
|
|
4859
|
+
}),
|
|
4860
|
+
vue.createElementVNode("path", {
|
|
4861
|
+
d: "M5 1.5v3M11 1.5v3M2 6.5h12",
|
|
4862
|
+
fill: "none",
|
|
4863
|
+
stroke: "currentColor",
|
|
4864
|
+
"stroke-width": "1.4",
|
|
4865
|
+
"stroke-linecap": "round"
|
|
4866
|
+
})
|
|
4867
|
+
], -1))
|
|
4868
|
+
], true)
|
|
4869
|
+
])
|
|
4426
4870
|
], 42, _hoisted_1$k),
|
|
4427
4871
|
(vue.openBlock(), vue.createBlock(vue.Teleport, { to: "body" }, [
|
|
4428
4872
|
open.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -4437,61 +4881,67 @@
|
|
|
4437
4881
|
style: vue.normalizeStyle(panelStyle.value),
|
|
4438
4882
|
onKeydown: onPanelKeydown
|
|
4439
4883
|
}, [
|
|
4440
|
-
vue.createElementVNode("div",
|
|
4884
|
+
vue.createElementVNode("div", _hoisted_5$d, [
|
|
4441
4885
|
vue.createElementVNode("button", {
|
|
4442
4886
|
type: "button",
|
|
4443
4887
|
class: "tao-date__nav",
|
|
4444
|
-
"aria-label":
|
|
4888
|
+
"aria-label": __props.prevMonthLabel,
|
|
4445
4889
|
onClick: _cache[0] || (_cache[0] = ($event) => goMonth(-1))
|
|
4446
|
-
}, [
|
|
4447
|
-
vue.createElementVNode("
|
|
4448
|
-
|
|
4449
|
-
|
|
4450
|
-
|
|
4451
|
-
|
|
4452
|
-
|
|
4453
|
-
|
|
4454
|
-
|
|
4455
|
-
|
|
4456
|
-
|
|
4457
|
-
|
|
4458
|
-
|
|
4459
|
-
|
|
4460
|
-
|
|
4461
|
-
|
|
4462
|
-
|
|
4463
|
-
|
|
4464
|
-
|
|
4890
|
+
}, [
|
|
4891
|
+
vue.createElementVNode("span", _hoisted_7$9, [
|
|
4892
|
+
vue.renderSlot(_ctx.$slots, "prev-icon", {}, () => [
|
|
4893
|
+
_cache[5] || (_cache[5] = vue.createElementVNode("svg", {
|
|
4894
|
+
viewBox: "0 0 24 24",
|
|
4895
|
+
width: "14",
|
|
4896
|
+
height: "14",
|
|
4897
|
+
focusable: "false"
|
|
4898
|
+
}, [
|
|
4899
|
+
vue.createElementVNode("path", {
|
|
4900
|
+
fill: "none",
|
|
4901
|
+
stroke: "currentColor",
|
|
4902
|
+
"stroke-width": "2.2",
|
|
4903
|
+
"stroke-linecap": "round",
|
|
4904
|
+
"stroke-linejoin": "round",
|
|
4905
|
+
d: "M14.5 5 8 12l6.5 7"
|
|
4906
|
+
})
|
|
4907
|
+
], -1))
|
|
4908
|
+
], true)
|
|
4909
|
+
])
|
|
4910
|
+
], 8, _hoisted_6$a),
|
|
4911
|
+
vue.createElementVNode("p", _hoisted_8$8, vue.toDisplayString(monthLabel.value), 1),
|
|
4465
4912
|
vue.createElementVNode("button", {
|
|
4466
4913
|
type: "button",
|
|
4467
4914
|
class: "tao-date__nav",
|
|
4468
|
-
"aria-label":
|
|
4915
|
+
"aria-label": __props.nextMonthLabel,
|
|
4469
4916
|
onClick: _cache[1] || (_cache[1] = ($event) => goMonth(1))
|
|
4470
|
-
}, [
|
|
4471
|
-
vue.createElementVNode("
|
|
4472
|
-
|
|
4473
|
-
|
|
4474
|
-
|
|
4475
|
-
|
|
4476
|
-
|
|
4477
|
-
|
|
4478
|
-
|
|
4479
|
-
|
|
4480
|
-
|
|
4481
|
-
|
|
4482
|
-
|
|
4483
|
-
|
|
4484
|
-
|
|
4485
|
-
|
|
4486
|
-
|
|
4487
|
-
|
|
4917
|
+
}, [
|
|
4918
|
+
vue.createElementVNode("span", _hoisted_10$3, [
|
|
4919
|
+
vue.renderSlot(_ctx.$slots, "next-icon", {}, () => [
|
|
4920
|
+
_cache[6] || (_cache[6] = vue.createElementVNode("svg", {
|
|
4921
|
+
viewBox: "0 0 24 24",
|
|
4922
|
+
width: "14",
|
|
4923
|
+
height: "14",
|
|
4924
|
+
focusable: "false"
|
|
4925
|
+
}, [
|
|
4926
|
+
vue.createElementVNode("path", {
|
|
4927
|
+
fill: "none",
|
|
4928
|
+
stroke: "currentColor",
|
|
4929
|
+
"stroke-width": "2.2",
|
|
4930
|
+
"stroke-linecap": "round",
|
|
4931
|
+
"stroke-linejoin": "round",
|
|
4932
|
+
d: "M9.5 5 16 12l-6.5 7"
|
|
4933
|
+
})
|
|
4934
|
+
], -1))
|
|
4935
|
+
], true)
|
|
4936
|
+
])
|
|
4937
|
+
], 8, _hoisted_9$3)
|
|
4488
4938
|
]),
|
|
4489
|
-
vue.createElementVNode("div",
|
|
4939
|
+
vue.createElementVNode("div", _hoisted_11$2, [
|
|
4490
4940
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(weekdays.value, (day) => {
|
|
4491
4941
|
return vue.openBlock(), vue.createElementBlock("span", { key: day }, vue.toDisplayString(day), 1);
|
|
4492
4942
|
}), 128))
|
|
4493
4943
|
]),
|
|
4494
|
-
vue.createElementVNode("div",
|
|
4944
|
+
vue.createElementVNode("div", _hoisted_12$1, [
|
|
4495
4945
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(cells.value, (cell) => {
|
|
4496
4946
|
return vue.openBlock(), vue.createElementBlock("button", {
|
|
4497
4947
|
key: cell.iso,
|
|
@@ -4510,42 +4960,58 @@
|
|
|
4510
4960
|
onMousedown: _cache[2] || (_cache[2] = vue.withModifiers(() => {
|
|
4511
4961
|
}, ["prevent"])),
|
|
4512
4962
|
onClick: ($event) => selectDay(cell.iso)
|
|
4513
|
-
}, vue.toDisplayString(cell.day), 43,
|
|
4963
|
+
}, vue.toDisplayString(cell.day), 43, _hoisted_13$1);
|
|
4514
4964
|
}), 128))
|
|
4515
4965
|
]),
|
|
4516
|
-
vue.createElementVNode("div",
|
|
4966
|
+
vue.createElementVNode("div", _hoisted_14$1, [
|
|
4517
4967
|
vue.createElementVNode("button", {
|
|
4518
4968
|
type: "button",
|
|
4519
4969
|
class: "tao-date__link",
|
|
4520
4970
|
disabled: !todayEnabled.value,
|
|
4521
4971
|
onClick: _cache[3] || (_cache[3] = ($event) => selectDay(todayIso.value))
|
|
4522
|
-
},
|
|
4972
|
+
}, [
|
|
4973
|
+
vue.renderSlot(_ctx.$slots, "today", {}, () => [
|
|
4974
|
+
vue.createTextVNode(vue.toDisplayString(__props.todayText), 1)
|
|
4975
|
+
], true)
|
|
4976
|
+
], 8, _hoisted_15),
|
|
4523
4977
|
valueIso.value ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
4524
4978
|
key: 0,
|
|
4525
4979
|
type: "button",
|
|
4526
4980
|
class: "tao-date__link",
|
|
4527
4981
|
onClick: clear
|
|
4528
|
-
},
|
|
4982
|
+
}, [
|
|
4983
|
+
vue.renderSlot(_ctx.$slots, "clear", {}, () => [
|
|
4984
|
+
vue.createTextVNode(vue.toDisplayString(__props.clearText), 1)
|
|
4985
|
+
], true)
|
|
4986
|
+
])) : vue.createCommentVNode("", true)
|
|
4529
4987
|
])
|
|
4530
|
-
], 44,
|
|
4988
|
+
], 44, _hoisted_4$f)) : vue.createCommentVNode("", true)
|
|
4531
4989
|
]))
|
|
4532
4990
|
], 2);
|
|
4533
4991
|
};
|
|
4534
4992
|
}
|
|
4535
4993
|
});
|
|
4536
|
-
const TaoDate = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-
|
|
4994
|
+
const TaoDate = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-771836c8"]]);
|
|
4537
4995
|
const _hoisted_1$j = ["id", "aria-expanded", "aria-invalid", "aria-describedby", "disabled"];
|
|
4538
4996
|
const _hoisted_2$h = { class: "tao-date-range__value" };
|
|
4539
|
-
const _hoisted_3$e =
|
|
4540
|
-
|
|
4541
|
-
|
|
4542
|
-
|
|
4997
|
+
const _hoisted_3$e = {
|
|
4998
|
+
class: "tao-date-range__icon",
|
|
4999
|
+
"aria-hidden": "true"
|
|
5000
|
+
};
|
|
5001
|
+
const _hoisted_4$e = ["aria-label"];
|
|
5002
|
+
const _hoisted_5$c = { class: "tao-date__header" };
|
|
5003
|
+
const _hoisted_6$9 = ["aria-label"];
|
|
5004
|
+
const _hoisted_7$8 = { "aria-hidden": "true" };
|
|
5005
|
+
const _hoisted_8$7 = { class: "tao-date__month" };
|
|
5006
|
+
const _hoisted_9$2 = ["aria-label"];
|
|
5007
|
+
const _hoisted_10$2 = { "aria-hidden": "true" };
|
|
5008
|
+
const _hoisted_11$1 = {
|
|
4543
5009
|
class: "tao-date__weekdays",
|
|
4544
5010
|
"aria-hidden": "true"
|
|
4545
5011
|
};
|
|
4546
|
-
const
|
|
4547
|
-
const
|
|
4548
|
-
const
|
|
5012
|
+
const _hoisted_12 = ["aria-label", "aria-selected", "disabled", "onMouseenter", "onClick"];
|
|
5013
|
+
const _hoisted_13 = { class: "tao-date__footer" };
|
|
5014
|
+
const _hoisted_14 = ["disabled"];
|
|
4549
5015
|
const _sfc_main$j = /* @__PURE__ */ vue.defineComponent({
|
|
4550
5016
|
...{ name: "TaoDateRange" },
|
|
4551
5017
|
__name: "TaoDateRange",
|
|
@@ -4556,7 +5022,11 @@
|
|
|
4556
5022
|
error: { type: Boolean, default: false },
|
|
4557
5023
|
min: { default: void 0 },
|
|
4558
5024
|
max: { default: void 0 },
|
|
4559
|
-
locale: { default: "ru-RU" }
|
|
5025
|
+
locale: { default: "ru-RU" },
|
|
5026
|
+
todayText: { default: "Сегодня" },
|
|
5027
|
+
clearText: { default: "Очистить" },
|
|
5028
|
+
prevMonthLabel: { default: "Предыдущий месяц" },
|
|
5029
|
+
nextMonthLabel: { default: "Следующий месяц" }
|
|
4560
5030
|
},
|
|
4561
5031
|
emits: ["update:modelValue", "change"],
|
|
4562
5032
|
setup(__props, { emit: __emit }) {
|
|
@@ -4831,32 +5301,34 @@
|
|
|
4831
5301
|
onKeydown: onTriggerKeydown
|
|
4832
5302
|
}, [
|
|
4833
5303
|
vue.createElementVNode("span", _hoisted_2$h, vue.toDisplayString(displayLabel.value || __props.placeholder), 1),
|
|
4834
|
-
|
|
4835
|
-
|
|
4836
|
-
|
|
4837
|
-
|
|
4838
|
-
|
|
4839
|
-
|
|
4840
|
-
|
|
4841
|
-
|
|
4842
|
-
|
|
4843
|
-
|
|
4844
|
-
|
|
4845
|
-
|
|
4846
|
-
|
|
4847
|
-
|
|
4848
|
-
|
|
4849
|
-
|
|
4850
|
-
|
|
4851
|
-
|
|
4852
|
-
|
|
4853
|
-
|
|
4854
|
-
|
|
4855
|
-
|
|
4856
|
-
|
|
4857
|
-
|
|
4858
|
-
|
|
4859
|
-
|
|
5304
|
+
vue.createElementVNode("span", _hoisted_3$e, [
|
|
5305
|
+
vue.renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
5306
|
+
_cache[3] || (_cache[3] = vue.createElementVNode("svg", {
|
|
5307
|
+
viewBox: "0 0 16 16",
|
|
5308
|
+
width: "16",
|
|
5309
|
+
height: "16",
|
|
5310
|
+
focusable: "false"
|
|
5311
|
+
}, [
|
|
5312
|
+
vue.createElementVNode("rect", {
|
|
5313
|
+
x: "2",
|
|
5314
|
+
y: "3",
|
|
5315
|
+
width: "12",
|
|
5316
|
+
height: "11",
|
|
5317
|
+
rx: "1.5",
|
|
5318
|
+
fill: "none",
|
|
5319
|
+
stroke: "currentColor",
|
|
5320
|
+
"stroke-width": "1.4"
|
|
5321
|
+
}),
|
|
5322
|
+
vue.createElementVNode("path", {
|
|
5323
|
+
d: "M5 1.5v3M11 1.5v3M2 6.5h12",
|
|
5324
|
+
fill: "none",
|
|
5325
|
+
stroke: "currentColor",
|
|
5326
|
+
"stroke-width": "1.4",
|
|
5327
|
+
"stroke-linecap": "round"
|
|
5328
|
+
})
|
|
5329
|
+
], -1))
|
|
5330
|
+
], true)
|
|
5331
|
+
])
|
|
4860
5332
|
], 42, _hoisted_1$j),
|
|
4861
5333
|
(vue.openBlock(), vue.createBlock(vue.Teleport, { to: "body" }, [
|
|
4862
5334
|
open.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
@@ -4871,56 +5343,62 @@
|
|
|
4871
5343
|
style: vue.normalizeStyle(panelStyle.value),
|
|
4872
5344
|
onKeydown: onPanelKeydown
|
|
4873
5345
|
}, [
|
|
4874
|
-
vue.createElementVNode("div",
|
|
5346
|
+
vue.createElementVNode("div", _hoisted_5$c, [
|
|
4875
5347
|
vue.createElementVNode("button", {
|
|
4876
5348
|
type: "button",
|
|
4877
5349
|
class: "tao-date__nav",
|
|
4878
|
-
"aria-label":
|
|
5350
|
+
"aria-label": __props.prevMonthLabel,
|
|
4879
5351
|
onClick: _cache[0] || (_cache[0] = ($event) => goMonth(-1))
|
|
4880
|
-
}, [
|
|
4881
|
-
vue.createElementVNode("
|
|
4882
|
-
|
|
4883
|
-
|
|
4884
|
-
|
|
4885
|
-
|
|
4886
|
-
|
|
4887
|
-
|
|
4888
|
-
|
|
4889
|
-
|
|
4890
|
-
|
|
4891
|
-
|
|
4892
|
-
|
|
4893
|
-
|
|
4894
|
-
|
|
4895
|
-
|
|
4896
|
-
|
|
4897
|
-
|
|
4898
|
-
|
|
5352
|
+
}, [
|
|
5353
|
+
vue.createElementVNode("span", _hoisted_7$8, [
|
|
5354
|
+
vue.renderSlot(_ctx.$slots, "prev-icon", {}, () => [
|
|
5355
|
+
_cache[4] || (_cache[4] = vue.createElementVNode("svg", {
|
|
5356
|
+
viewBox: "0 0 24 24",
|
|
5357
|
+
width: "14",
|
|
5358
|
+
height: "14",
|
|
5359
|
+
focusable: "false"
|
|
5360
|
+
}, [
|
|
5361
|
+
vue.createElementVNode("path", {
|
|
5362
|
+
fill: "none",
|
|
5363
|
+
stroke: "currentColor",
|
|
5364
|
+
"stroke-width": "2.2",
|
|
5365
|
+
"stroke-linecap": "round",
|
|
5366
|
+
"stroke-linejoin": "round",
|
|
5367
|
+
d: "M14.5 5 8 12l6.5 7"
|
|
5368
|
+
})
|
|
5369
|
+
], -1))
|
|
5370
|
+
], true)
|
|
5371
|
+
])
|
|
5372
|
+
], 8, _hoisted_6$9),
|
|
5373
|
+
vue.createElementVNode("p", _hoisted_8$7, vue.toDisplayString(monthLabel.value), 1),
|
|
4899
5374
|
vue.createElementVNode("button", {
|
|
4900
5375
|
type: "button",
|
|
4901
5376
|
class: "tao-date__nav",
|
|
4902
|
-
"aria-label":
|
|
5377
|
+
"aria-label": __props.nextMonthLabel,
|
|
4903
5378
|
onClick: _cache[1] || (_cache[1] = ($event) => goMonth(1))
|
|
4904
|
-
}, [
|
|
4905
|
-
vue.createElementVNode("
|
|
4906
|
-
|
|
4907
|
-
|
|
4908
|
-
|
|
4909
|
-
|
|
4910
|
-
|
|
4911
|
-
|
|
4912
|
-
|
|
4913
|
-
|
|
4914
|
-
|
|
4915
|
-
|
|
4916
|
-
|
|
4917
|
-
|
|
4918
|
-
|
|
4919
|
-
|
|
4920
|
-
|
|
4921
|
-
|
|
5379
|
+
}, [
|
|
5380
|
+
vue.createElementVNode("span", _hoisted_10$2, [
|
|
5381
|
+
vue.renderSlot(_ctx.$slots, "next-icon", {}, () => [
|
|
5382
|
+
_cache[5] || (_cache[5] = vue.createElementVNode("svg", {
|
|
5383
|
+
viewBox: "0 0 24 24",
|
|
5384
|
+
width: "14",
|
|
5385
|
+
height: "14",
|
|
5386
|
+
focusable: "false"
|
|
5387
|
+
}, [
|
|
5388
|
+
vue.createElementVNode("path", {
|
|
5389
|
+
fill: "none",
|
|
5390
|
+
stroke: "currentColor",
|
|
5391
|
+
"stroke-width": "2.2",
|
|
5392
|
+
"stroke-linecap": "round",
|
|
5393
|
+
"stroke-linejoin": "round",
|
|
5394
|
+
d: "M9.5 5 16 12l-6.5 7"
|
|
5395
|
+
})
|
|
5396
|
+
], -1))
|
|
5397
|
+
], true)
|
|
5398
|
+
])
|
|
5399
|
+
], 8, _hoisted_9$2)
|
|
4922
5400
|
]),
|
|
4923
|
-
vue.createElementVNode("div",
|
|
5401
|
+
vue.createElementVNode("div", _hoisted_11$1, [
|
|
4924
5402
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(weekdays.value, (day) => {
|
|
4925
5403
|
return vue.openBlock(), vue.createElementBlock("span", { key: day }, vue.toDisplayString(day), 1);
|
|
4926
5404
|
}), 128))
|
|
@@ -4953,30 +5431,38 @@
|
|
|
4953
5431
|
}, ["prevent"])),
|
|
4954
5432
|
onMouseenter: ($event) => onDayEnter(cell.iso),
|
|
4955
5433
|
onClick: ($event) => selectDay(cell.iso)
|
|
4956
|
-
}, vue.toDisplayString(cell.day), 43,
|
|
5434
|
+
}, vue.toDisplayString(cell.day), 43, _hoisted_12);
|
|
4957
5435
|
}), 128))
|
|
4958
5436
|
], 32),
|
|
4959
|
-
vue.createElementVNode("div",
|
|
5437
|
+
vue.createElementVNode("div", _hoisted_13, [
|
|
4960
5438
|
vue.createElementVNode("button", {
|
|
4961
5439
|
type: "button",
|
|
4962
5440
|
class: "tao-date__link",
|
|
4963
5441
|
disabled: !todayEnabled.value,
|
|
4964
5442
|
onClick: selectToday
|
|
4965
|
-
},
|
|
5443
|
+
}, [
|
|
5444
|
+
vue.renderSlot(_ctx.$slots, "today", {}, () => [
|
|
5445
|
+
vue.createTextVNode(vue.toDisplayString(__props.todayText), 1)
|
|
5446
|
+
], true)
|
|
5447
|
+
], 8, _hoisted_14),
|
|
4966
5448
|
committed.value ? (vue.openBlock(), vue.createElementBlock("button", {
|
|
4967
5449
|
key: 0,
|
|
4968
5450
|
type: "button",
|
|
4969
5451
|
class: "tao-date__link",
|
|
4970
5452
|
onClick: clear
|
|
4971
|
-
},
|
|
5453
|
+
}, [
|
|
5454
|
+
vue.renderSlot(_ctx.$slots, "clear", {}, () => [
|
|
5455
|
+
vue.createTextVNode(vue.toDisplayString(__props.clearText), 1)
|
|
5456
|
+
], true)
|
|
5457
|
+
])) : vue.createCommentVNode("", true)
|
|
4972
5458
|
])
|
|
4973
|
-
], 44,
|
|
5459
|
+
], 44, _hoisted_4$e)) : vue.createCommentVNode("", true)
|
|
4974
5460
|
]))
|
|
4975
5461
|
], 2);
|
|
4976
5462
|
};
|
|
4977
5463
|
}
|
|
4978
5464
|
});
|
|
4979
|
-
const TaoDateRange = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-
|
|
5465
|
+
const TaoDateRange = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-4394053c"]]);
|
|
4980
5466
|
const _hoisted_1$i = ["for"];
|
|
4981
5467
|
const _hoisted_2$g = ["id", "checked", "disabled", "aria-checked"];
|
|
4982
5468
|
const _hoisted_3$d = {
|
|
@@ -5295,15 +5781,15 @@
|
|
|
5295
5781
|
class: "tao-segmented-option__icon",
|
|
5296
5782
|
"aria-hidden": "true"
|
|
5297
5783
|
};
|
|
5298
|
-
const _hoisted_5$
|
|
5784
|
+
const _hoisted_5$b = {
|
|
5299
5785
|
key: 1,
|
|
5300
5786
|
class: "tao-segmented-option__label"
|
|
5301
5787
|
};
|
|
5302
|
-
const _hoisted_6$
|
|
5788
|
+
const _hoisted_6$8 = {
|
|
5303
5789
|
key: 2,
|
|
5304
5790
|
class: "tao-segmented-option__sr"
|
|
5305
5791
|
};
|
|
5306
|
-
const _hoisted_7$
|
|
5792
|
+
const _hoisted_7$7 = {
|
|
5307
5793
|
key: 3,
|
|
5308
5794
|
class: "tao-segmented-option__count"
|
|
5309
5795
|
};
|
|
@@ -5388,12 +5874,12 @@
|
|
|
5388
5874
|
vue.createTextVNode(vue.toDisplayString(__props.icon), 1)
|
|
5389
5875
|
], true)
|
|
5390
5876
|
])) : vue.createCommentVNode("", true),
|
|
5391
|
-
hasLabel.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$
|
|
5877
|
+
hasLabel.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5$b, [
|
|
5392
5878
|
vue.renderSlot(_ctx.$slots, "default", {}, () => [
|
|
5393
5879
|
vue.createTextVNode(vue.toDisplayString(__props.label), 1)
|
|
5394
5880
|
], true)
|
|
5395
|
-
])) : __props.ariaLabel ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$
|
|
5396
|
-
countLabel.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$
|
|
5881
|
+
])) : __props.ariaLabel ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_6$8, vue.toDisplayString(__props.ariaLabel), 1)) : vue.createCommentVNode("", true),
|
|
5882
|
+
countLabel.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$7, vue.toDisplayString(countLabel.value), 1)) : vue.createCommentVNode("", true)
|
|
5397
5883
|
])
|
|
5398
5884
|
], 10, _hoisted_1$e);
|
|
5399
5885
|
};
|
|
@@ -5410,13 +5896,16 @@
|
|
|
5410
5896
|
key: 1,
|
|
5411
5897
|
class: "tao-alert__message"
|
|
5412
5898
|
};
|
|
5899
|
+
const _hoisted_5$a = ["aria-label"];
|
|
5900
|
+
const _hoisted_6$7 = { "aria-hidden": "true" };
|
|
5413
5901
|
const _sfc_main$d = /* @__PURE__ */ vue.defineComponent({
|
|
5414
5902
|
...{ name: "TaoAlert" },
|
|
5415
5903
|
__name: "TaoAlert",
|
|
5416
5904
|
props: {
|
|
5417
5905
|
type: { default: "info" },
|
|
5418
5906
|
title: { default: "" },
|
|
5419
|
-
closable: { type: Boolean, default: false }
|
|
5907
|
+
closable: { type: Boolean, default: false },
|
|
5908
|
+
closeLabel: { default: "Закрыть" }
|
|
5420
5909
|
},
|
|
5421
5910
|
emits: ["close"],
|
|
5422
5911
|
setup(__props, { emit: __emit }) {
|
|
@@ -5440,22 +5929,28 @@
|
|
|
5440
5929
|
key: 0,
|
|
5441
5930
|
type: "button",
|
|
5442
5931
|
class: "tao-alert__close",
|
|
5443
|
-
"aria-label":
|
|
5932
|
+
"aria-label": __props.closeLabel,
|
|
5444
5933
|
onClick: _cache[0] || (_cache[0] = ($event) => emit("close"))
|
|
5445
|
-
},
|
|
5934
|
+
}, [
|
|
5935
|
+
vue.createElementVNode("span", _hoisted_6$7, [
|
|
5936
|
+
vue.renderSlot(_ctx.$slots, "close-icon", {}, () => [
|
|
5937
|
+
_cache[1] || (_cache[1] = vue.createTextVNode("×", -1))
|
|
5938
|
+
], true)
|
|
5939
|
+
])
|
|
5940
|
+
], 8, _hoisted_5$a)) : vue.createCommentVNode("", true)
|
|
5446
5941
|
], 10, _hoisted_1$d);
|
|
5447
5942
|
};
|
|
5448
5943
|
}
|
|
5449
5944
|
});
|
|
5450
|
-
const TaoAlert = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-
|
|
5945
|
+
const TaoAlert = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["__scopeId", "data-v-1a1dbef3"]]);
|
|
5451
5946
|
const _hoisted_1$c = { key: 0 };
|
|
5452
5947
|
const _hoisted_2$a = ["aria-sort"];
|
|
5453
5948
|
const _hoisted_3$9 = ["onClick"];
|
|
5454
5949
|
const _hoisted_4$9 = { key: 1 };
|
|
5455
5950
|
const _hoisted_5$9 = { key: 0 };
|
|
5456
5951
|
const _hoisted_6$6 = ["colspan"];
|
|
5457
|
-
const _hoisted_7$
|
|
5458
|
-
const _hoisted_8$
|
|
5952
|
+
const _hoisted_7$6 = ["onClick"];
|
|
5953
|
+
const _hoisted_8$6 = {
|
|
5459
5954
|
key: 0,
|
|
5460
5955
|
class: "tao-table__loading",
|
|
5461
5956
|
"aria-busy": "true"
|
|
@@ -5608,11 +6103,11 @@
|
|
|
5608
6103
|
], true)
|
|
5609
6104
|
], 4);
|
|
5610
6105
|
}), 128))
|
|
5611
|
-
], 8, _hoisted_7$
|
|
6106
|
+
], 8, _hoisted_7$6);
|
|
5612
6107
|
}), 128))
|
|
5613
6108
|
])
|
|
5614
6109
|
], 2),
|
|
5615
|
-
__props.loading ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8$
|
|
6110
|
+
__props.loading ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8$6, [
|
|
5616
6111
|
vue.renderSlot(_ctx.$slots, "loading", {}, () => [
|
|
5617
6112
|
vue.createVNode(TaoLoader, { size: 36 })
|
|
5618
6113
|
], true)
|
|
@@ -5652,15 +6147,17 @@
|
|
|
5652
6147
|
class: "tao-pagination__total"
|
|
5653
6148
|
};
|
|
5654
6149
|
const _hoisted_3$8 = { class: "tao-pagination__pages" };
|
|
5655
|
-
const _hoisted_4$8 = ["disabled"];
|
|
5656
|
-
const _hoisted_5$8 =
|
|
5657
|
-
const _hoisted_6$5 =
|
|
6150
|
+
const _hoisted_4$8 = ["aria-label", "disabled"];
|
|
6151
|
+
const _hoisted_5$8 = { "aria-hidden": "true" };
|
|
6152
|
+
const _hoisted_6$5 = ["aria-label", "disabled", "onClick"];
|
|
6153
|
+
const _hoisted_7$5 = {
|
|
5658
6154
|
key: 1,
|
|
5659
6155
|
class: "tao-pagination__ellipsis",
|
|
5660
6156
|
"aria-hidden": "true"
|
|
5661
6157
|
};
|
|
5662
|
-
const
|
|
5663
|
-
const
|
|
6158
|
+
const _hoisted_8$5 = ["aria-current", "aria-label", "disabled", "onClick"];
|
|
6159
|
+
const _hoisted_9$1 = ["aria-label", "disabled"];
|
|
6160
|
+
const _hoisted_10$1 = { "aria-hidden": "true" };
|
|
5664
6161
|
const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
|
|
5665
6162
|
...{ name: "TaoPagination" },
|
|
5666
6163
|
__name: "TaoPagination",
|
|
@@ -5673,7 +6170,12 @@
|
|
|
5673
6170
|
showTotal: { type: Boolean, default: true },
|
|
5674
6171
|
size: { default: "medium" },
|
|
5675
6172
|
jump: { default: 5 },
|
|
5676
|
-
ariaLabel: { default: "Пагинация" }
|
|
6173
|
+
ariaLabel: { default: "Пагинация" },
|
|
6174
|
+
prevLabel: { default: "Назад" },
|
|
6175
|
+
nextLabel: { default: "Вперёд" },
|
|
6176
|
+
pageLabel: { default: "Страница {page}" },
|
|
6177
|
+
jumpPrevLabel: { default: "Назад на {n} страниц" },
|
|
6178
|
+
jumpNextLabel: { default: "Вперёд на {n} страниц" }
|
|
5677
6179
|
},
|
|
5678
6180
|
emits: ["update:page", "change"],
|
|
5679
6181
|
setup(__props, { emit: __emit }) {
|
|
@@ -5706,20 +6208,32 @@
|
|
|
5706
6208
|
"aria-label": __props.ariaLabel
|
|
5707
6209
|
}, [
|
|
5708
6210
|
__props.showTotal ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_2$9, [
|
|
5709
|
-
|
|
5710
|
-
|
|
5711
|
-
|
|
5712
|
-
|
|
5713
|
-
|
|
6211
|
+
vue.renderSlot(_ctx.$slots, "total", {
|
|
6212
|
+
from: from.value,
|
|
6213
|
+
to: to.value,
|
|
6214
|
+
total: __props.total
|
|
6215
|
+
}, () => [
|
|
6216
|
+
__props.total === 0 ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
6217
|
+
vue.createTextVNode("0 из 0")
|
|
6218
|
+
], 64)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
|
|
6219
|
+
vue.createTextVNode(vue.toDisplayString(from.value) + "–" + vue.toDisplayString(to.value) + " из " + vue.toDisplayString(__props.total), 1)
|
|
6220
|
+
], 64))
|
|
6221
|
+
], true)
|
|
5714
6222
|
])) : vue.createCommentVNode("", true),
|
|
5715
6223
|
vue.createElementVNode("div", _hoisted_3$8, [
|
|
5716
6224
|
vue.createElementVNode("button", {
|
|
5717
6225
|
type: "button",
|
|
5718
6226
|
class: "tao-pagination__btn",
|
|
5719
|
-
"aria-label":
|
|
6227
|
+
"aria-label": __props.prevLabel,
|
|
5720
6228
|
disabled: __props.disabled || current.value <= 1,
|
|
5721
6229
|
onClick: _cache[0] || (_cache[0] = ($event) => goTo(current.value - 1))
|
|
5722
|
-
},
|
|
6230
|
+
}, [
|
|
6231
|
+
vue.createElementVNode("span", _hoisted_5$8, [
|
|
6232
|
+
vue.renderSlot(_ctx.$slots, "prev-icon", {}, () => [
|
|
6233
|
+
_cache[2] || (_cache[2] = vue.createTextVNode("‹", -1))
|
|
6234
|
+
], true)
|
|
6235
|
+
])
|
|
6236
|
+
], 8, _hoisted_4$8),
|
|
5723
6237
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(items.value, (item) => {
|
|
5724
6238
|
return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
5725
6239
|
key: item.type === "page" ? item.page : item.id
|
|
@@ -5728,33 +6242,39 @@
|
|
|
5728
6242
|
key: 0,
|
|
5729
6243
|
type: "button",
|
|
5730
6244
|
class: "tao-pagination__btn tao-pagination__btn--jump",
|
|
5731
|
-
"aria-label": item.id === "left" ?
|
|
6245
|
+
"aria-label": item.id === "left" ? __props.jumpPrevLabel.replace("{n}", String(__props.jump)) : __props.jumpNextLabel.replace("{n}", String(__props.jump)),
|
|
5732
6246
|
disabled: __props.disabled,
|
|
5733
6247
|
onClick: ($event) => goTo(item.id === "left" ? current.value - __props.jump : current.value + __props.jump)
|
|
5734
|
-
}, " … ", 8,
|
|
6248
|
+
}, " … ", 8, _hoisted_6$5)) : item.type === "ellipsis" ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7$5, "…")) : (vue.openBlock(), vue.createElementBlock("button", {
|
|
5735
6249
|
key: 2,
|
|
5736
6250
|
type: "button",
|
|
5737
6251
|
class: vue.normalizeClass(["tao-pagination__btn", { "tao-pagination__btn--current": item.page === current.value }]),
|
|
5738
6252
|
"aria-current": item.page === current.value ? "page" : void 0,
|
|
5739
|
-
"aria-label":
|
|
6253
|
+
"aria-label": __props.pageLabel.replace("{page}", String(item.page)),
|
|
5740
6254
|
disabled: __props.disabled,
|
|
5741
6255
|
onClick: ($event) => goTo(item.page)
|
|
5742
|
-
}, vue.toDisplayString(item.page), 11,
|
|
6256
|
+
}, vue.toDisplayString(item.page), 11, _hoisted_8$5))
|
|
5743
6257
|
], 64);
|
|
5744
6258
|
}), 128)),
|
|
5745
6259
|
vue.createElementVNode("button", {
|
|
5746
6260
|
type: "button",
|
|
5747
6261
|
class: "tao-pagination__btn",
|
|
5748
|
-
"aria-label":
|
|
6262
|
+
"aria-label": __props.nextLabel,
|
|
5749
6263
|
disabled: __props.disabled || current.value >= pageCount.value,
|
|
5750
6264
|
onClick: _cache[1] || (_cache[1] = ($event) => goTo(current.value + 1))
|
|
5751
|
-
},
|
|
6265
|
+
}, [
|
|
6266
|
+
vue.createElementVNode("span", _hoisted_10$1, [
|
|
6267
|
+
vue.renderSlot(_ctx.$slots, "next-icon", {}, () => [
|
|
6268
|
+
_cache[3] || (_cache[3] = vue.createTextVNode("›", -1))
|
|
6269
|
+
], true)
|
|
6270
|
+
])
|
|
6271
|
+
], 8, _hoisted_9$1)
|
|
5752
6272
|
])
|
|
5753
6273
|
], 10, _hoisted_1$b);
|
|
5754
6274
|
};
|
|
5755
6275
|
}
|
|
5756
6276
|
});
|
|
5757
|
-
const TaoPagination = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-
|
|
6277
|
+
const TaoPagination = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-a890810c"]]);
|
|
5758
6278
|
const _hoisted_1$a = { class: "tao-empty" };
|
|
5759
6279
|
const _hoisted_2$8 = {
|
|
5760
6280
|
key: 0,
|
|
@@ -5833,8 +6353,10 @@
|
|
|
5833
6353
|
};
|
|
5834
6354
|
const _hoisted_3$6 = ["id"];
|
|
5835
6355
|
const _hoisted_4$6 = { key: 1 };
|
|
5836
|
-
const _hoisted_5$6 =
|
|
5837
|
-
const _hoisted_6$4 = {
|
|
6356
|
+
const _hoisted_5$6 = ["aria-label"];
|
|
6357
|
+
const _hoisted_6$4 = { "aria-hidden": "true" };
|
|
6358
|
+
const _hoisted_7$4 = { class: "tao-drawer__content" };
|
|
6359
|
+
const _hoisted_8$4 = {
|
|
5838
6360
|
key: 1,
|
|
5839
6361
|
class: "tao-drawer__footer"
|
|
5840
6362
|
};
|
|
@@ -5845,7 +6367,8 @@
|
|
|
5845
6367
|
modelValue: { type: Boolean },
|
|
5846
6368
|
title: { default: "" },
|
|
5847
6369
|
side: { default: "right" },
|
|
5848
|
-
closable: { type: Boolean, default: true }
|
|
6370
|
+
closable: { type: Boolean, default: true },
|
|
6371
|
+
closeLabel: { default: "Закрыть" }
|
|
5849
6372
|
},
|
|
5850
6373
|
emits: ["update:modelValue", "close"],
|
|
5851
6374
|
setup(__props, { emit: __emit }) {
|
|
@@ -5954,14 +6477,20 @@
|
|
|
5954
6477
|
key: 2,
|
|
5955
6478
|
type: "button",
|
|
5956
6479
|
class: "tao-drawer__close",
|
|
5957
|
-
"aria-label":
|
|
6480
|
+
"aria-label": __props.closeLabel,
|
|
5958
6481
|
onClick: close
|
|
5959
|
-
},
|
|
6482
|
+
}, [
|
|
6483
|
+
vue.createElementVNode("span", _hoisted_6$4, [
|
|
6484
|
+
vue.renderSlot(_ctx.$slots, "close-icon", {}, () => [
|
|
6485
|
+
_cache[0] || (_cache[0] = vue.createTextVNode("×", -1))
|
|
6486
|
+
], true)
|
|
6487
|
+
])
|
|
6488
|
+
], 8, _hoisted_5$6)) : vue.createCommentVNode("", true)
|
|
5960
6489
|
])) : vue.createCommentVNode("", true),
|
|
5961
|
-
vue.createElementVNode("div",
|
|
6490
|
+
vue.createElementVNode("div", _hoisted_7$4, [
|
|
5962
6491
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
5963
6492
|
]),
|
|
5964
|
-
_ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div",
|
|
6493
|
+
_ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8$4, [
|
|
5965
6494
|
vue.renderSlot(_ctx.$slots, "footer", {}, void 0, true)
|
|
5966
6495
|
])) : vue.createCommentVNode("", true)
|
|
5967
6496
|
], 8, _hoisted_1$8)
|
|
@@ -5973,7 +6502,7 @@
|
|
|
5973
6502
|
};
|
|
5974
6503
|
}
|
|
5975
6504
|
});
|
|
5976
|
-
const TaoDrawer = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-
|
|
6505
|
+
const TaoDrawer = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-14730fe9"]]);
|
|
5977
6506
|
const _hoisted_1$7 = ["title"];
|
|
5978
6507
|
const _hoisted_2$6 = { class: "tao-avatar__face" };
|
|
5979
6508
|
const _hoisted_3$5 = ["src", "alt"];
|
|
@@ -5992,7 +6521,10 @@
|
|
|
5992
6521
|
alt: { default: "" },
|
|
5993
6522
|
size: { default: "medium" },
|
|
5994
6523
|
dot: { type: [Boolean, String], default: false },
|
|
5995
|
-
count: { default: void 0 }
|
|
6524
|
+
count: { default: void 0 },
|
|
6525
|
+
fallbackLabel: { default: "Аватар" },
|
|
6526
|
+
notificationsLabel: { default: "{count} уведомлений" },
|
|
6527
|
+
dotLabels: { default: () => ({}) }
|
|
5996
6528
|
},
|
|
5997
6529
|
setup(__props) {
|
|
5998
6530
|
const props = __props;
|
|
@@ -6037,7 +6569,7 @@
|
|
|
6037
6569
|
}
|
|
6038
6570
|
return String(props.count);
|
|
6039
6571
|
});
|
|
6040
|
-
const
|
|
6572
|
+
const defaultDotLabel = {
|
|
6041
6573
|
success: "в сети",
|
|
6042
6574
|
danger: "занят",
|
|
6043
6575
|
warning: "отошёл",
|
|
@@ -6045,13 +6577,13 @@
|
|
|
6045
6577
|
neutral: "не в сети"
|
|
6046
6578
|
};
|
|
6047
6579
|
const label = vue.computed(() => {
|
|
6048
|
-
const base = props.alt || props.name ||
|
|
6580
|
+
const base = props.alt || props.name || props.fallbackLabel;
|
|
6049
6581
|
const extra = [];
|
|
6050
6582
|
if (dotTone.value) {
|
|
6051
|
-
extra.push(
|
|
6583
|
+
extra.push(props.dotLabels[dotTone.value] ?? defaultDotLabel[dotTone.value]);
|
|
6052
6584
|
}
|
|
6053
6585
|
if (badge.value) {
|
|
6054
|
-
extra.push(
|
|
6586
|
+
extra.push(props.notificationsLabel.replace("{count}", badge.value));
|
|
6055
6587
|
}
|
|
6056
6588
|
return extra.length ? `${base}, ${extra.join(", ")}` : base;
|
|
6057
6589
|
});
|
|
@@ -6082,11 +6614,8 @@
|
|
|
6082
6614
|
};
|
|
6083
6615
|
}
|
|
6084
6616
|
});
|
|
6085
|
-
const TaoAvatar = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-
|
|
6086
|
-
const _hoisted_1$6 =
|
|
6087
|
-
class: "tao-breadcrumb",
|
|
6088
|
-
"aria-label": "Хлебные крошки"
|
|
6089
|
-
};
|
|
6617
|
+
const TaoAvatar = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-03b60017"]]);
|
|
6618
|
+
const _hoisted_1$6 = ["aria-label"];
|
|
6090
6619
|
const _hoisted_2$5 = { class: "tao-breadcrumb__list" };
|
|
6091
6620
|
const _hoisted_3$4 = {
|
|
6092
6621
|
key: 0,
|
|
@@ -6106,11 +6635,15 @@
|
|
|
6106
6635
|
...{ name: "TaoBreadcrumb" },
|
|
6107
6636
|
__name: "TaoBreadcrumb",
|
|
6108
6637
|
props: {
|
|
6109
|
-
items: {}
|
|
6638
|
+
items: {},
|
|
6639
|
+
ariaLabel: { default: "Хлебные крошки" }
|
|
6110
6640
|
},
|
|
6111
6641
|
setup(__props) {
|
|
6112
6642
|
return (_ctx, _cache) => {
|
|
6113
|
-
return vue.openBlock(), vue.createElementBlock("nav",
|
|
6643
|
+
return vue.openBlock(), vue.createElementBlock("nav", {
|
|
6644
|
+
class: "tao-breadcrumb",
|
|
6645
|
+
"aria-label": __props.ariaLabel
|
|
6646
|
+
}, [
|
|
6114
6647
|
vue.createElementVNode("ol", _hoisted_2$5, [
|
|
6115
6648
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.items, (item, index) => {
|
|
6116
6649
|
return vue.openBlock(), vue.createElementBlock("li", {
|
|
@@ -6131,11 +6664,11 @@
|
|
|
6131
6664
|
]);
|
|
6132
6665
|
}), 128))
|
|
6133
6666
|
])
|
|
6134
|
-
]);
|
|
6667
|
+
], 8, _hoisted_1$6);
|
|
6135
6668
|
};
|
|
6136
6669
|
}
|
|
6137
6670
|
});
|
|
6138
|
-
const TaoBreadcrumb = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-
|
|
6671
|
+
const TaoBreadcrumb = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-94ab1f67"]]);
|
|
6139
6672
|
const _hoisted_1$5 = ["aria-label"];
|
|
6140
6673
|
const _hoisted_2$4 = {
|
|
6141
6674
|
class: "tao-counter__row",
|
|
@@ -6219,16 +6752,13 @@
|
|
|
6219
6752
|
});
|
|
6220
6753
|
const TaoCounter = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-6b746f2f"]]);
|
|
6221
6754
|
const _hoisted_1$4 = { class: "tao-carousel__row" };
|
|
6222
|
-
const _hoisted_2$3 = ["disabled"];
|
|
6223
|
-
const _hoisted_3$3 =
|
|
6224
|
-
const _hoisted_4$3 = ["
|
|
6225
|
-
const _hoisted_5$3 =
|
|
6226
|
-
|
|
6227
|
-
|
|
6228
|
-
|
|
6229
|
-
"aria-label": "Слайды"
|
|
6230
|
-
};
|
|
6231
|
-
const _hoisted_6$3 = ["aria-label", "aria-current", "onClick"];
|
|
6755
|
+
const _hoisted_2$3 = ["aria-label", "disabled"];
|
|
6756
|
+
const _hoisted_3$3 = { "aria-hidden": "true" };
|
|
6757
|
+
const _hoisted_4$3 = ["aria-label"];
|
|
6758
|
+
const _hoisted_5$3 = ["aria-label", "disabled"];
|
|
6759
|
+
const _hoisted_6$3 = { "aria-hidden": "true" };
|
|
6760
|
+
const _hoisted_7$3 = ["aria-label"];
|
|
6761
|
+
const _hoisted_8$3 = ["aria-label", "aria-current", "onClick"];
|
|
6232
6762
|
const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({
|
|
6233
6763
|
...{ name: "TaoCarousel" },
|
|
6234
6764
|
__name: "TaoCarousel",
|
|
@@ -6240,7 +6770,11 @@
|
|
|
6240
6770
|
autoplay: { default: 0 },
|
|
6241
6771
|
loop: { type: Boolean, default: false },
|
|
6242
6772
|
dots: { type: Boolean, default: false },
|
|
6243
|
-
ariaLabel: { default: "Лента" }
|
|
6773
|
+
ariaLabel: { default: "Лента" },
|
|
6774
|
+
prevLabel: { default: "Назад" },
|
|
6775
|
+
nextLabel: { default: "Вперёд" },
|
|
6776
|
+
dotsLabel: { default: "Слайды" },
|
|
6777
|
+
slideLabel: { default: "Слайд {n} из {count}" }
|
|
6244
6778
|
},
|
|
6245
6779
|
emits: ["update:modelValue", "change"],
|
|
6246
6780
|
setup(__props, { emit: __emit }) {
|
|
@@ -6531,27 +7065,30 @@
|
|
|
6531
7065
|
key: 0,
|
|
6532
7066
|
type: "button",
|
|
6533
7067
|
class: "tao-carousel__nav",
|
|
6534
|
-
"aria-label":
|
|
7068
|
+
"aria-label": __props.prevLabel,
|
|
6535
7069
|
disabled: atStart.value,
|
|
6536
7070
|
onClick: goPrev
|
|
6537
|
-
}, [
|
|
6538
|
-
vue.createElementVNode("
|
|
6539
|
-
|
|
6540
|
-
|
|
6541
|
-
|
|
6542
|
-
|
|
6543
|
-
|
|
6544
|
-
|
|
6545
|
-
|
|
6546
|
-
|
|
6547
|
-
|
|
6548
|
-
|
|
6549
|
-
|
|
6550
|
-
|
|
6551
|
-
|
|
6552
|
-
|
|
6553
|
-
|
|
6554
|
-
|
|
7071
|
+
}, [
|
|
7072
|
+
vue.createElementVNode("span", _hoisted_3$3, [
|
|
7073
|
+
vue.renderSlot(_ctx.$slots, "prev-icon", {}, () => [
|
|
7074
|
+
_cache[0] || (_cache[0] = vue.createElementVNode("svg", {
|
|
7075
|
+
viewBox: "0 0 24 24",
|
|
7076
|
+
width: "16",
|
|
7077
|
+
height: "16",
|
|
7078
|
+
focusable: "false"
|
|
7079
|
+
}, [
|
|
7080
|
+
vue.createElementVNode("path", {
|
|
7081
|
+
fill: "none",
|
|
7082
|
+
stroke: "currentColor",
|
|
7083
|
+
"stroke-width": "2.2",
|
|
7084
|
+
"stroke-linecap": "round",
|
|
7085
|
+
"stroke-linejoin": "round",
|
|
7086
|
+
d: "M14.5 5 8 12l6.5 7"
|
|
7087
|
+
})
|
|
7088
|
+
], -1))
|
|
7089
|
+
], true)
|
|
7090
|
+
])
|
|
7091
|
+
], 8, _hoisted_2$3)) : vue.createCommentVNode("", true)
|
|
6555
7092
|
], true),
|
|
6556
7093
|
vue.createElementVNode("div", {
|
|
6557
7094
|
ref_key: "track",
|
|
@@ -6570,7 +7107,7 @@
|
|
|
6570
7107
|
onClickCapture
|
|
6571
7108
|
}, [
|
|
6572
7109
|
vue.renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
6573
|
-
], 42,
|
|
7110
|
+
], 42, _hoisted_4$3),
|
|
6574
7111
|
vue.renderSlot(_ctx.$slots, "next", {
|
|
6575
7112
|
disabled: atEnd.value,
|
|
6576
7113
|
go: goNext
|
|
@@ -6579,27 +7116,30 @@
|
|
|
6579
7116
|
key: 0,
|
|
6580
7117
|
type: "button",
|
|
6581
7118
|
class: "tao-carousel__nav",
|
|
6582
|
-
"aria-label":
|
|
7119
|
+
"aria-label": __props.nextLabel,
|
|
6583
7120
|
disabled: atEnd.value,
|
|
6584
7121
|
onClick: goNext
|
|
6585
|
-
}, [
|
|
6586
|
-
vue.createElementVNode("
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
|
|
6590
|
-
|
|
6591
|
-
|
|
6592
|
-
|
|
6593
|
-
|
|
6594
|
-
|
|
6595
|
-
|
|
6596
|
-
|
|
6597
|
-
|
|
6598
|
-
|
|
6599
|
-
|
|
6600
|
-
|
|
6601
|
-
|
|
6602
|
-
|
|
7122
|
+
}, [
|
|
7123
|
+
vue.createElementVNode("span", _hoisted_6$3, [
|
|
7124
|
+
vue.renderSlot(_ctx.$slots, "next-icon", {}, () => [
|
|
7125
|
+
_cache[1] || (_cache[1] = vue.createElementVNode("svg", {
|
|
7126
|
+
viewBox: "0 0 24 24",
|
|
7127
|
+
width: "16",
|
|
7128
|
+
height: "16",
|
|
7129
|
+
focusable: "false"
|
|
7130
|
+
}, [
|
|
7131
|
+
vue.createElementVNode("path", {
|
|
7132
|
+
fill: "none",
|
|
7133
|
+
stroke: "currentColor",
|
|
7134
|
+
"stroke-width": "2.2",
|
|
7135
|
+
"stroke-linecap": "round",
|
|
7136
|
+
"stroke-linejoin": "round",
|
|
7137
|
+
d: "M9.5 5 16 12l-6.5 7"
|
|
7138
|
+
})
|
|
7139
|
+
], -1))
|
|
7140
|
+
], true)
|
|
7141
|
+
])
|
|
7142
|
+
], 8, _hoisted_5$3)) : vue.createCommentVNode("", true)
|
|
6603
7143
|
], true)
|
|
6604
7144
|
]),
|
|
6605
7145
|
vue.renderSlot(_ctx.$slots, "dots", {
|
|
@@ -6607,13 +7147,18 @@
|
|
|
6607
7147
|
count: snapCount.value,
|
|
6608
7148
|
go: goTo
|
|
6609
7149
|
}, () => [
|
|
6610
|
-
showDots.value ? (vue.openBlock(), vue.createElementBlock("div",
|
|
7150
|
+
showDots.value ? (vue.openBlock(), vue.createElementBlock("div", {
|
|
7151
|
+
key: 0,
|
|
7152
|
+
class: "tao-carousel__dots",
|
|
7153
|
+
role: "group",
|
|
7154
|
+
"aria-label": __props.dotsLabel
|
|
7155
|
+
}, [
|
|
6611
7156
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(snapCount.value, (n) => {
|
|
6612
7157
|
return vue.openBlock(), vue.createElementBlock("button", {
|
|
6613
7158
|
key: n,
|
|
6614
7159
|
type: "button",
|
|
6615
7160
|
class: vue.normalizeClass(["tao-carousel__dot", { "tao-carousel__dot--active": n - 1 === index.value }]),
|
|
6616
|
-
"aria-label":
|
|
7161
|
+
"aria-label": __props.slideLabel.replace("{n}", String(n)).replace("{count}", String(snapCount.value)),
|
|
6617
7162
|
"aria-current": n - 1 === index.value ? "true" : void 0,
|
|
6618
7163
|
onClick: ($event) => goTo(n - 1)
|
|
6619
7164
|
}, [
|
|
@@ -6624,15 +7169,15 @@
|
|
|
6624
7169
|
}, () => [
|
|
6625
7170
|
_cache[2] || (_cache[2] = vue.createElementVNode("span", { class: "tao-carousel__pip" }, null, -1))
|
|
6626
7171
|
], true)
|
|
6627
|
-
], 10,
|
|
7172
|
+
], 10, _hoisted_8$3);
|
|
6628
7173
|
}), 128))
|
|
6629
|
-
])) : vue.createCommentVNode("", true)
|
|
7174
|
+
], 8, _hoisted_7$3)) : vue.createCommentVNode("", true)
|
|
6630
7175
|
], true)
|
|
6631
7176
|
], 36);
|
|
6632
7177
|
};
|
|
6633
7178
|
}
|
|
6634
7179
|
});
|
|
6635
|
-
const TaoCarousel = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-
|
|
7180
|
+
const TaoCarousel = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-239073ed"]]);
|
|
6636
7181
|
const _hoisted_1$3 = ["aria-label"];
|
|
6637
7182
|
const _hoisted_2$2 = ["aria-label"];
|
|
6638
7183
|
const _hoisted_3$2 = {
|
|
@@ -6674,11 +7219,12 @@
|
|
|
6674
7219
|
props: {
|
|
6675
7220
|
items: { default: () => [] },
|
|
6676
7221
|
vertical: { type: Boolean, default: true },
|
|
6677
|
-
ariaLabel: { default: "Стадии" }
|
|
7222
|
+
ariaLabel: { default: "Стадии" },
|
|
7223
|
+
statusLabels: { default: () => ({}) }
|
|
6678
7224
|
},
|
|
6679
7225
|
setup(__props) {
|
|
6680
7226
|
const props = __props;
|
|
6681
|
-
const
|
|
7227
|
+
const fallbackStatusText = {
|
|
6682
7228
|
wait: "ожидание",
|
|
6683
7229
|
work: "в работе",
|
|
6684
7230
|
ok: "готово",
|
|
@@ -6691,7 +7237,8 @@
|
|
|
6691
7237
|
return item.status ?? "wait";
|
|
6692
7238
|
}
|
|
6693
7239
|
function itemLabel(item) {
|
|
6694
|
-
|
|
7240
|
+
const status = statusOf(item);
|
|
7241
|
+
return `${item.label ?? item.key}, ${props.statusLabels[status] ?? fallbackStatusText[status]}`;
|
|
6695
7242
|
}
|
|
6696
7243
|
return (_ctx, _cache) => {
|
|
6697
7244
|
return vue.openBlock(), vue.createElementBlock("ul", {
|
|
@@ -6765,7 +7312,7 @@
|
|
|
6765
7312
|
};
|
|
6766
7313
|
}
|
|
6767
7314
|
});
|
|
6768
|
-
const TaoStages = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-
|
|
7315
|
+
const TaoStages = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-b62db56d"]]);
|
|
6769
7316
|
const TOAST_POSITIONS = [
|
|
6770
7317
|
"topRight",
|
|
6771
7318
|
"topLeft",
|
|
@@ -6779,7 +7326,8 @@
|
|
|
6779
7326
|
position: "topCenter",
|
|
6780
7327
|
timeout: 3e3,
|
|
6781
7328
|
closable: true,
|
|
6782
|
-
progress: true
|
|
7329
|
+
progress: true,
|
|
7330
|
+
closeLabel: "Закрыть уведомление"
|
|
6783
7331
|
};
|
|
6784
7332
|
const toasts = vue.ref([]);
|
|
6785
7333
|
const toastsByPosition = vue.computed(() => {
|
|
@@ -6890,6 +7438,7 @@
|
|
|
6890
7438
|
key: 2,
|
|
6891
7439
|
class: "tao-toast__actions"
|
|
6892
7440
|
};
|
|
7441
|
+
const _hoisted_11 = ["aria-label"];
|
|
6893
7442
|
const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
|
|
6894
7443
|
...{ name: "TaoToastItem" },
|
|
6895
7444
|
__name: "TaoToastItem",
|
|
@@ -7058,9 +7607,9 @@
|
|
|
7058
7607
|
key: 0,
|
|
7059
7608
|
type: "button",
|
|
7060
7609
|
class: "tao-toast__close",
|
|
7061
|
-
"aria-label":
|
|
7610
|
+
"aria-label": vue.unref(toastDefaults).closeLabel,
|
|
7062
7611
|
onClick: close
|
|
7063
|
-
}, " × ")) : vue.createCommentVNode("", true),
|
|
7612
|
+
}, " × ", 8, _hoisted_11)) : vue.createCommentVNode("", true),
|
|
7064
7613
|
__props.toast.progress && __props.toast.timeout ? (vue.openBlock(), vue.createElementBlock("span", {
|
|
7065
7614
|
key: 1,
|
|
7066
7615
|
class: "tao-toast__progress",
|
|
@@ -7070,7 +7619,7 @@
|
|
|
7070
7619
|
};
|
|
7071
7620
|
}
|
|
7072
7621
|
});
|
|
7073
|
-
const TaoToastItem = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-
|
|
7622
|
+
const TaoToastItem = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-3909ff09"]]);
|
|
7074
7623
|
const _hoisted_1$1 = { class: "tao-toast-slot__inner" };
|
|
7075
7624
|
const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
|
|
7076
7625
|
...{ name: "TaoToastViewport" },
|
|
@@ -7779,8 +8328,9 @@
|
|
|
7779
8328
|
TaoSpoilerGroup,
|
|
7780
8329
|
TaoCopy,
|
|
7781
8330
|
TaoContainer,
|
|
7782
|
-
_sfc_main$
|
|
8331
|
+
_sfc_main$G,
|
|
7783
8332
|
TaoSpace,
|
|
8333
|
+
TaoSplit,
|
|
7784
8334
|
TaoIcon,
|
|
7785
8335
|
TaoLoader,
|
|
7786
8336
|
TaoImage,
|
|
@@ -7850,7 +8400,7 @@
|
|
|
7850
8400
|
exports2.TaoEmpty = TaoEmpty;
|
|
7851
8401
|
exports2.TaoFieldset = TaoFieldset;
|
|
7852
8402
|
exports2.TaoFileDrop = TaoFileDrop;
|
|
7853
|
-
exports2.TaoFlex = _sfc_main$
|
|
8403
|
+
exports2.TaoFlex = _sfc_main$G;
|
|
7854
8404
|
exports2.TaoFormField = TaoFormField;
|
|
7855
8405
|
exports2.TaoIcon = TaoIcon;
|
|
7856
8406
|
exports2.TaoImage = TaoImage;
|
|
@@ -7874,6 +8424,7 @@
|
|
|
7874
8424
|
exports2.TaoSkeleton = TaoSkeleton;
|
|
7875
8425
|
exports2.TaoSlider = TaoSlider;
|
|
7876
8426
|
exports2.TaoSpace = TaoSpace;
|
|
8427
|
+
exports2.TaoSplit = TaoSplit;
|
|
7877
8428
|
exports2.TaoSpoiler = TaoSpoiler;
|
|
7878
8429
|
exports2.TaoSpoilerGroup = TaoSpoilerGroup;
|
|
7879
8430
|
exports2.TaoStages = TaoStages;
|