@dxtmisha/functional 1.4.2 → 1.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/library.js CHANGED
@@ -1,2676 +1,17 @@
1
- var It = Object.defineProperty;
2
- var Nt = (i, t, e) => t in i ? It(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
3
- var u = (i, t, e) => Nt(i, typeof t != "symbol" ? t + "" : t, e);
4
- import { i as y, D as ut, r as z, a as At, G as w, f as $, t as N, b as ct, c as Bt, d as _, e as W, g as F, A as V, h as S, j as vt, S as bt, k as j, l as U, m as lt, E as Ft, C as xt, H as O, L as mt } from "./ScrollbarWidth-D6yhyHBp.js";
5
- import { n as Pi, o as Hi, R as Ri, p as Wi, q as ji, s as Ui, u as zi, v as _i, w as Ki, x as Zi, y as Vi, I as Yi, z as qi, B as Ji, F as Qi, J as Xi, K as Mi, M as Oi, N as Ti, O as Gi, P as ts, Q as es } from "./ScrollbarWidth-D6yhyHBp.js";
6
- import { isRef as Q, h as Et, computed as l, toRefs as Pt, useAttrs as Ht, useSlots as Rt, ref as p, watch as f, triggerRef as Wt, shallowRef as Z, onUnmounted as rt, inject as jt, provide as Ut, watchEffect as zt } from "vue";
7
- class _t {
8
- /**
9
- * Constructor
10
- * @param name channel name/ название канала
11
- * @param callback callback on message received/ колбэк на получение сообщения
12
- */
13
- constructor(t, e) {
14
- u(this, "channel");
15
- /**
16
- * Update state on message received.
17
- *
18
- * Обновление состояния при получении сообщения.
19
- * @param event message event/ событие сообщения
20
- */
21
- u(this, "update", (t) => {
22
- var e;
23
- return (e = this.callback) == null || e.call(this, t), this;
24
- });
25
- if (this.callback = e, y())
26
- try {
27
- this.channel = new BroadcastChannel(`${Kt()}__${t}`), this.channel.onmessage = this.update;
28
- } catch (s) {
29
- console.error(`BroadcastMessage ${t}:`, s);
30
- }
31
- }
32
- /**
33
- * Send a message to the channel.
34
- *
35
- * Отправить сообщение в канал.
36
- * @param message message to send/ сообщение для отправки
37
- */
38
- post(t) {
39
- var e;
40
- return (e = this.channel) == null || e.postMessage(t), this;
41
- }
42
- /**
43
- * Set the callback function to be called when a message is received.
44
- *
45
- * Установить функцию колбэка, которая будет вызвана при получении сообщения.
46
- * @param callback callback function/ функция колбэка
47
- */
48
- setCallback(t) {
49
- return this.callback = t, this;
50
- }
51
- }
52
- const Kt = () => new ut("__broadcast-name").get(() => `name_${z(1e6, 9999999)}`);
53
- function A(i) {
54
- var n, o, a, c, h, d, g, D;
55
- if (i instanceof Date)
56
- return i;
57
- if (At(i))
58
- return /* @__PURE__ */ new Date();
59
- if (typeof i == "number")
60
- return new Date(i);
61
- let t = i, e = w.getTimezoneFormat();
62
- i.replace(/^([\s\S]+)([-+]\d{2}:?\d{2})$/, (H, X, k) => (t = X, e = k, H));
63
- const s = (D = (g = (d = (h = (c = (a = (o = (n = /^\d{4}\d{2}\d{2}$/.exec(t) && `${t.replace(/^(\d{4})(\d{2})(\d{2})$/, "$1-$2-$3")}T00:00:00`) != null ? n : /^\d{4}\d{2}$/.exec(t) && `${t.replace(/^(\d{4})(\d{2})$/, "$1-$2")}-01T00:00:00`) != null ? o : /^\d{4}\d{2}\d{2} \d{2}:\d{2}:\d{2}$/.exec(t) && t.replace(/^(\d{4})(\d{2})(\d{2}) (\d{2}):(\d{2}):(\d{2})$/, "$1-$2-$3T$4:$5:$6")) != null ? a : /^\d{4}-\d{2}-\d{2}$/.exec(t) && `${t}T00:00:00`) != null ? c : /^\d{4}-\d{2}$/.exec(t) && `${t}-01T00:00:00`) != null ? h : /^\d{4}$/.exec(t) && `${t}-01-01T00:00:00`) != null ? d : /^\d{2}:\d{2}$/.exec(t) && `2000-01-01T${t}:00`) != null ? g : /^\d{2}:\d{2}:\d{2}$/.exec(t) && `2000-01-01T${t}`) != null ? D : t.replace(" ", "T");
64
- return /* @__PURE__ */ new Date(`${s}${e}`);
65
- }
66
- function nt(i, t) {
67
- return $(i, (e) => e == null ? void 0 : e[t]);
68
- }
69
- class P {
70
- /**
71
- * Constructor
72
- * @param code country code, full form language-country or one of them/
73
- * код страны, полный вид язык-страна или один из них
74
- */
75
- constructor(t = w.getLocation()) {
76
- u(this, "geo");
77
- this.geo = w.find(t);
78
- const e = this.getLocation();
79
- if (e in T)
80
- return T[e];
81
- T[e] = this;
82
- }
83
- /**
84
- * Returns an instance of the class according to the specified country code.
85
- *
86
- * Возвращает экземпляр класса по указанному коду страны.
87
- * @param code country code, full form language-country or one of them/
88
- * код страны, полный вид язык-страна или один из них
89
- */
90
- static getInstance(t = w.getLocation()) {
91
- return new P(t);
92
- }
93
- /**
94
- * Returns country code and language.
95
- *
96
- * Возвращает код страны и языка.
97
- */
98
- getLocation() {
99
- return this.geo.standard;
100
- }
101
- /**
102
- * Returns the first day of the week.
103
- *
104
- * Возвращает первый день недели.
105
- */
106
- getFirstDay() {
107
- return this.geo.firstDay;
108
- }
109
- /**
110
- * The consistent translation of language, region and script display names.
111
- *
112
- * Последовательный перевод отображаемых названий языка, региона и скрипта.
113
- * @param value the code to provide depends on the type/ предоставляемый код зависит от типа
114
- * @param typeOptions an object with some or all of the following properties/
115
- * объект с некоторыми или всеми из следующих свойств
116
- */
117
- display(t, e) {
118
- var o;
119
- let s = { type: "language" }, n;
120
- e && (typeof e == "string" ? s.type = e : s = {
121
- ...s,
122
- ...e
123
- });
124
- try {
125
- y() && (t ? n = new Intl.DisplayNames(this.getLocation(), s).of(t) : s.type === "language" ? n = new Intl.DisplayNames(this.getLocation(), s).of(this.geo.language) : s.type === "region" && (n = new Intl.DisplayNames(this.getLocation(), s).of(this.geo.country)));
126
- } catch (a) {
127
- console.error("display: ", a);
128
- }
129
- return (o = n != null ? n : t) != null ? o : "";
130
- }
131
- /**
132
- * Get display names of language.
133
- *
134
- * Получить отображаемые имена языка.
135
- * @param value the code to provide depends on the type/ предоставляемый код зависит от типа
136
- * @param style the formatting style to use/ используемый стиль форматирования
137
- */
138
- languageName(t, e) {
139
- const s = {
140
- type: "language",
141
- style: e
142
- };
143
- return this.display(w.getByCode(t).language, s);
144
- }
145
- /**
146
- * Get display names of region.
147
- *
148
- * Получить отображаемые имена региона.
149
- * @param value the code to provide depends on the type/ предоставляемый код зависит от типа
150
- * @param style the formatting style to use/ используемый стиль форматирования
151
- */
152
- countryName(t, e) {
153
- const s = {
154
- type: "region",
155
- style: e
156
- };
157
- return this.display(t, s);
158
- }
159
- /**
160
- * The method returns a string containing the full name in a specific format.
161
- *
162
- * Метод возвращает строку, содержащую полное имя в определённом формате.
163
- * @param last last name/ фамилию
164
- * @param first first name/ имя
165
- * @param surname surname middle name (optional)/ отчество
166
- * @param short shorten the names/ сократить названия
167
- */
168
- fullName(t, e, s, n) {
169
- var c, h;
170
- const o = (h = (c = this.geo) == null ? void 0 : c.nameFormat) != null ? h : "fl";
171
- let a;
172
- switch (o) {
173
- case "fsl":
174
- a = `${e}${s ? ` ${s}` : ""} ${t}`;
175
- break;
176
- case "lf":
177
- a = `${t} ${e}`;
178
- break;
179
- case "lsf":
180
- a = `${t}${s ? ` ${s}` : ""} ${e}`;
181
- break;
182
- default:
183
- a = `${e} ${t}`;
184
- break;
185
- }
186
- return n ? a.replace(/ (.)[^ ]+/ig, " $1.") : a;
187
- }
188
- /**
189
- * In basic use without specifying a locale, a formatted string.
190
- *
191
- * При обычном использовании без указания локали форматированная строка.
192
- * @param value a number, bigint, or string, to format/ число для форматирования
193
- * @param options an object with some or all properties/ объект с некоторыми
194
- * или всеми свойствами
195
- */
196
- number(t, e) {
197
- var s, n;
198
- return ((n = (s = this.numberObject(e)) == null ? void 0 : s.format) == null ? void 0 : n.call(s, N(t))) || t.toString();
199
- }
200
- /**
201
- * Decimal point symbol.
202
- *
203
- * Символ десятичной точки.
204
- */
205
- decimal() {
206
- var t, e, s, n, o;
207
- return ((o = (n = (s = (e = (t = this.numberObject()) == null ? void 0 : t.formatToParts) == null ? void 0 : e.call(t, 1.2)) == null ? void 0 : s.find) == null ? void 0 : n.call(s, (a) => a.type === "decimal")) == null ? void 0 : o.value) || ".";
208
- }
209
- /**
210
- * Currency formatting.
211
- *
212
- * Форматирование валюты.
213
- * @param value a number, bigint, or string, to format/ число для форматирования
214
- * @param currencyOptions the currency to use in currency formatting/
215
- * валюта для использования в форматировании валюты
216
- * @param numberOnly do not display the currency symbol/ не выводить значок валюты
217
- */
218
- currency(t, e, s = !1) {
219
- const n = {
220
- style: "currency",
221
- currencyDisplay: "symbol",
222
- ...typeof e == "string" ? { currency: e } : e || {}
223
- }, o = t.toString().replace(/^([\S\s]+[\d ])([a-zA-Z]{3})$/i, (...a) => (n.currency = String(a[2]).toUpperCase(), String(a[1])));
224
- if (s) {
225
- const a = this.numberObject(n);
226
- return a ? nt(
227
- a.formatToParts(N(t)).filter((c) => ["literal", "currency"].indexOf(c.type) === -1),
228
- "value"
229
- ).join("") : t.toString();
230
- } else return "currency" in n ? this.number(
231
- typeof t == "number" ? t : o,
232
- n
233
- ) : this.number(
234
- typeof t == "number" ? t : o,
235
- {
236
- ...n,
237
- style: "decimal"
238
- }
239
- );
240
- }
241
- /**
242
- * Returns the currency symbol if it exists, otherwise the currency code.
243
- *
244
- * Возвращает символ для валюты, если он есть, или сам код валюты.
245
- * @param currency the currency to use in currency formatting/
246
- * валюта для использования в форматировании валюты
247
- * @param currencyDisplay how to display the currency in currency formatting/
248
- * как отобразить валюту в формате валюты
249
- */
250
- currencySymbol(t, e = "symbol") {
251
- var s, n, o, a, c;
252
- return ((c = (a = (o = (n = (s = this.numberObject({
253
- style: "currency",
254
- currencyDisplay: e,
255
- currency: t
256
- })) == null ? void 0 : s.formatToParts) == null ? void 0 : n.call(s, 100)) == null ? void 0 : o.find) == null ? void 0 : a.call(o, (h) => h.type === "currency")) == null ? void 0 : c.value) || t;
257
- }
258
- /**
259
- * Unit formatting.
260
- * If the style is 'unit', a unit property must be provided.
261
- *
262
- * Форматирование юнитов.
263
- * @param value a number, bigint, or string, to format/ число для форматирования
264
- * @param unitOptions the unit to use in unit formatting/ блок для использования
265
- * в форматировании блока
266
- */
267
- unit(t, e) {
268
- const s = {
269
- style: "unit",
270
- ...typeof e == "string" ? { unit: e } : e || {}
271
- }, n = t.toString().replace(/^([\S\s]+[\d ])([a-zA-Z]+)$/i, (...o) => (s.unit = String(o[2]).toLowerCase(), String(o[1])));
272
- return this.number(n, s);
273
- }
274
- /**
275
- * Возвращает отформатированный размер файла
276
- * @param value a number, bigint, or string, to format /<br>число для форматирования
277
- * @param unitOptions the unit to use in unit formatting /<br>блок для использования
278
- * в форматировании блока
279
- */
280
- sizeFile(t, e = "byte") {
281
- const s = N(t);
282
- if (s > 1024 && ct(e))
283
- switch (e) {
284
- case "byte":
285
- return this.sizeFile(s / 1024, "kilobyte");
286
- case "kilobyte":
287
- return this.sizeFile(s / 1024, "megabyte");
288
- case "megabyte":
289
- return this.sizeFile(s / 1024, "gigabyte");
290
- case "gigabyte":
291
- return this.sizeFile(s / 1024, "terabyte");
292
- case "terabyte":
293
- return this.sizeFile(s / 1024, "petabyte");
294
- }
295
- return this.unit(t, e);
296
- }
297
- /**
298
- * Number as a percentage.
299
- *
300
- * Число в виде процента.
301
- * @param value a number, bigint, or string, to format/ число для форматирования
302
- * @param options an object with some or all properties/ объект с некоторыми или всеми свойствами
303
- */
304
- percent(t, e) {
305
- return this.number(t, {
306
- style: "percent",
307
- ...e || {}
308
- });
309
- }
310
- /**
311
- * Number as a percentage (unit).
312
- *
313
- * Число в виде процента (единица).
314
- * @param value a number, bigint, or string, to format/ число для форматирования
315
- * @param options an object with some or all properties/
316
- * объект с некоторыми или всеми свойствами
317
- */
318
- percentBy100(t, e) {
319
- return this.percent(N(t) / 100, e);
320
- }
321
- /**
322
- * Применять форматирование, учитывающее множественное число, и языковые правила, связанные с множественным числом
323
- * @param value a number, bigint, or string, to format/ число для форматирования
324
- * @param words list of words for formatting (in the format one|two|few|many|other|zero)/
325
- * список слов для форматирования (в формате `one|two|few|many|other|zero`)
326
- * @param options Property for PluralRules/ свойство для PluralRules
327
- * @param optionsNumber an object with some or all properties/ объект с некоторыми или всеми свойствами
328
- */
329
- plural(t, e, s, n) {
330
- var c;
331
- const o = N(t), a = e.split("|");
332
- if (a.length > 1)
333
- try {
334
- if (y()) {
335
- const d = new Intl.PluralRules(this.getLocation(), s).select(o);
336
- let g;
337
- switch (d) {
338
- case "zero":
339
- g = a[a.length - 1];
340
- break;
341
- case "one":
342
- g = a == null ? void 0 : a[0];
343
- break;
344
- case "two":
345
- g = a == null ? void 0 : a[1];
346
- break;
347
- case "few":
348
- g = a != null && a[3] ? a == null ? void 0 : a[2] : a == null ? void 0 : a[1];
349
- break;
350
- case "many":
351
- g = (a == null ? void 0 : a[3]) || (a == null ? void 0 : a[2]) || (a == null ? void 0 : a[1]);
352
- break;
353
- case "other":
354
- a.length === 6 ? g = a[a.length - 2] : g = a[a.length - 1];
355
- break;
356
- }
357
- return `${this.number(o, n)} ${g != null ? g : ""}`.trim();
358
- }
359
- } catch (h) {
360
- console.error("plural: ", h);
361
- }
362
- return `${this.number(o, n)} ${(c = a == null ? void 0 : a[0]) != null ? c : ""}`.trim();
363
- }
364
- /**
365
- * Enables language-sensitive date and time formatting.
366
- *
367
- * Конструктором объектов, включающих языка-зависимое форматирование даты и времени.
368
- * @param value the date to format/ дата для форматирования
369
- * @param type type of data format/ тип формата data
370
- * @param styleOptions the representation of the month/ представление месяца
371
- * @param hour24 whether to use 12-hour time/ использовать ли 12-часовое время
372
- */
373
- date(t, e, s, n) {
374
- const o = A(t), a = typeof s == "string", c = this.dateOptions(e, a ? s : "short");
375
- return n && (c.hour12 = !1), a || Object.assign(c, s), o.toLocaleString(this.getLocation(), c);
376
- }
377
- /**
378
- * Enables language-sensitive relative time formatting.
379
- *
380
- * Включает форматирование относительного времени с учетом языка.
381
- * @param value a number, bigint, or string, to format/ число для форматирования
382
- * @param styleOptions the length of the internationalized message/
383
- * длина интернационализированного сообщения
384
- * @param todayValue current day/ текущий день
385
- */
386
- relative(t, e, s) {
387
- const n = A(t), o = s || /* @__PURE__ */ new Date(), a = {
388
- numeric: "auto",
389
- ...typeof e == "string" ? { style: e } : e || {}
390
- };
391
- let c = "second", h = (n.getTime() - o.getTime()) / 1e3;
392
- return Math.abs(h) >= 60 && (c = "minute", h /= 60, Math.abs(h) >= 60 && (c = "hour", h /= 60, Math.abs(h) >= 24 && (c = "day", h /= 24, Math.abs(h) >= 30 && (c = "month", h /= 30, Math.abs(h) >= 12 && (c = "year", h /= 12))))), this.relativeByValue(h, c, a);
393
- }
394
- /**
395
- * Enables language-sensitive relative time formatting
396
- * Including the ability to add a limit to output the standard time format if the value
397
- * exceeds the allowable limit.
398
- *
399
- * Включает форматирование относительного времени с учетом языка.
400
- * Включая возможность добавления лимита, чтобы выводить уже стандартный формат времени,
401
- * если значение вышло за пределы допустимого.
402
- * @param value a number, bigint, or string, to format/ число для форматирования
403
- * @param limit values that determine the output limit (values per day)/
404
- * значения, по которым определяем предел вывода (значения в день)
405
- * @param todayValue current day/ текущий день
406
- * @param relativeOptions the length of the internationalized message/
407
- * длина интернационализированного сообщения
408
- * @param dateOptions the representation of the month/ представление месяца
409
- * @param type type of data format/ тип формата data
410
- * @param hour24 whether to use 12-hour time/ использовать ли 12-часовое время
411
- */
412
- relativeLimit(t, e, s, n, o, a, c) {
413
- const h = A(t), d = s || /* @__PURE__ */ new Date(), g = new Date(d), D = new Date(d);
414
- return g.setDate(d.getDate() - e), D.setDate(d.getDate() + e), h >= g && h <= D ? this.relative(
415
- h,
416
- n,
417
- d
418
- ) : this.date(
419
- h,
420
- a,
421
- o,
422
- c
423
- );
424
- }
425
- /**
426
- * Возвращает отформатированное значение времени, прошедшего с момента события
427
- * @param value a number, bigint, or string, to format/ число для форматирования
428
- * @param unit time unit/ единица времени
429
- * @param styleOptions additional option or formatting style/ дополнительная опция или стиль форматирования
430
- */
431
- relativeByValue(t, e, s) {
432
- const n = {
433
- numeric: "auto",
434
- ...typeof s == "string" ? { style: s } : s || {}
435
- };
436
- try {
437
- if (y())
438
- return new Intl.RelativeTimeFormat(this.getLocation(), n).format(Math.round(N(t)), e);
439
- } catch (o) {
440
- console.error("relative: ", o);
441
- }
442
- return "";
443
- }
444
- /**
445
- * Names of months.<br>
446
- * Названия месяцев.
447
- * @param value the date to format/ дата для форматирования
448
- * @param style the representation of the month/ представление месяца
449
- */
450
- month(t, e) {
451
- try {
452
- if (y())
453
- return Intl.DateTimeFormat(this.getLocation(), { month: e || "long" }).format(A(t));
454
- } catch (s) {
455
- console.error("month: ", s);
456
- }
457
- return "";
458
- }
459
- /**
460
- * Array to list of months.
461
- *
462
- * Массив в список месяцев.
463
- * @param style the representation of the month/ представление месяца
464
- */
465
- months(t) {
466
- const e = [{
467
- label: "",
468
- value: void 0
469
- }];
470
- try {
471
- if (y()) {
472
- const s = /* @__PURE__ */ new Date(), n = Intl.DateTimeFormat(this.getLocation(), { month: t || "long" });
473
- for (let o = 0; o < 12; o++)
474
- s.setMonth(o), e.push({
475
- label: n.format(s).replace(/^./, (a) => a.toUpperCase()),
476
- value: o + 1
477
- });
478
- }
479
- } catch (s) {
480
- console.error("months: ", s);
481
- }
482
- return e;
483
- }
484
- /**
485
- * Returns names of days of the week.
486
- *
487
- * Возвращает названия дней недели.
488
- * @param value the date to format/ дата для форматирования
489
- * @param style the representation of the weekday/ представление о дне недели
490
- */
491
- weekday(t, e) {
492
- try {
493
- if (y())
494
- return Intl.DateTimeFormat(this.getLocation(), { weekday: e || "long" }).format(A(t));
495
- } catch (s) {
496
- console.error("weekday: ", s);
497
- }
498
- return "";
499
- }
500
- /**
501
- * An array of the list of names of the days of the week.
502
- *
503
- * Массив из списка названий дней недели.
504
- * @param style the representation of the weekday/ представление о дне недели
505
- */
506
- weekdays(t) {
507
- const e = [{
508
- label: "",
509
- value: void 0
510
- }];
511
- try {
512
- if (y()) {
513
- const s = /* @__PURE__ */ new Date(), n = Intl.DateTimeFormat(this.getLocation(), { weekday: t || "long" }), o = s.getDay() + (this.geo.firstDay === "Mo" ? -1 : 1);
514
- s.setDate(s.getDate() - o);
515
- for (let a = 0; a < 7; a++)
516
- e.push({
517
- label: n.format(s).replace(/^./, (c) => c.toUpperCase()),
518
- value: s.getDay()
519
- }), s.setDate(s.getDate() + 1);
520
- }
521
- } catch (s) {
522
- console.error("weekdays: ", s);
523
- }
524
- return e;
525
- }
526
- /**
527
- * Time.
528
- *
529
- * Время.
530
- * @param value the date to format/ дата для форматирования
531
- */
532
- time(t) {
533
- return this.date(t, "time");
534
- }
535
- /**
536
- * Sorts strings taking into account the characteristics of countries.
537
- *
538
- * Сортирует строки с учетом особенностей стран.
539
- * @param data an array with data/ массив с данными
540
- * @param compareFn a function for sorting/ функция для сортировки
541
- */
542
- sort(t, e = (s, n) => [s, n]) {
543
- if (y()) {
544
- const s = new Intl.Collator(this.getLocation());
545
- return t.sort((n, o) => s.compare(...e(n, o)));
546
- }
547
- return t;
548
- }
549
- /**
550
- * The object enables language-sensitive number formatting.
551
- *
552
- * Объект включает форматирование чисел с учетом языка.
553
- * @param options an object with some or all properties/
554
- * объект с некоторыми или всеми свойствами
555
- */
556
- numberObject(t) {
557
- try {
558
- if (y())
559
- return new Intl.NumberFormat(this.getLocation(), t);
560
- } catch (e) {
561
- console.error("numberObject: ", e);
562
- }
563
- }
564
- /**
565
- * Returns options for data according to its type.
566
- *
567
- * Возвращает options для data по его типу.
568
- * @param type type of data format/ тип формата data
569
- * @param display the representation of the month/ представление месяца
570
- */
571
- dateOptions(t, e = "short") {
572
- const s = {};
573
- return ["full", "datetime", "date", void 0, "year-month", "year"].indexOf(t) !== -1 && (s.year = "numeric"), ["full", "datetime", "date", void 0, "year-month", "month", "day-month"].indexOf(t) !== -1 && (s.month = e), ["full", "datetime", "date", void 0, "day", "day-month"].indexOf(t) !== -1 && (s.day = "2-digit"), t !== void 0 && (["full", "datetime", "time", "hour-minute", "hour"].indexOf(t) !== -1 && (s.hour = "2-digit"), ["full", "datetime", "time", "hour-minute", "minute"].indexOf(t) !== -1 && (s.minute = "2-digit"), ["full", "time", "second"].indexOf(t) !== -1 && (s.second = "2-digit")), s;
574
- }
575
- }
576
- const T = {};
577
- class ht {
578
- /**
579
- * Constructor
580
- * @param date date for processing/ дата для обработки
581
- * @param type type of date format for output/ тип формата даты вывода
582
- * @param code country and language code/ код страны и языка
583
- */
584
- constructor(t, e = "date", s = w.getLocation()) {
585
- u(this, "date");
586
- u(this, "hour24", !1);
587
- u(this, "watch");
588
- this.type = e, this.code = s, this.date = A(t);
589
- }
590
- /**
591
- * Returns an object for working with formatting.
592
- *
593
- * Возвращает объект для работы с форматированием.
594
- */
595
- getIntl() {
596
- return new P(this.code);
597
- }
598
- /**
599
- * Returns a Date object.
600
- *
601
- * Возвращает объект Date.
602
- */
603
- getDate() {
604
- return this.date;
605
- }
606
- /**
607
- * Returns the type of data output.
608
- *
609
- * Возвращает тип вывода данных.
610
- */
611
- getType() {
612
- return this.type;
613
- }
614
- /**
615
- * Returns the format of hours.
616
- *
617
- * Возвращает формат часов.
618
- */
619
- getHoursType() {
620
- const t = this.clone();
621
- return t.setHours(23), t.toLocaleTimeString(this.getIntl().getLocation(), { hour: "2-digit" }).match(/23/ig) ? "24" : "12";
622
- }
623
- /**
624
- * Whether to use 12-hour time.
625
- *
626
- * Использовать ли 12-часовой формат времени.
627
- */
628
- getHour24() {
629
- return this.hour24;
630
- }
631
- /**
632
- * The method returns the difference, in minutes, between
633
- * a date as evaluated in the UTC time zone, and the same date as evaluated
634
- * in the local time zone.
635
- *
636
- * Метод возвращает смещение часового пояса относительно часового пояса UTC
637
- * в минутах для текущей локали.
638
- */
639
- getTimeZoneOffset() {
640
- return this.date.getTimezoneOffset();
641
- }
642
- /**
643
- * Returns the time zone as a string.
644
- *
645
- * Возвращает временную зону в виде строки.
646
- * @param style the style of the returned data/ стиль возвращаемых данных
647
- */
648
- getTimeZone(t) {
649
- const e = this.getTimeZoneOffset();
650
- if (t === "minute")
651
- return e.toString();
652
- const s = e / 60 * -1;
653
- if (t === "hour")
654
- return this.getIntl().number(Math.trunc(s), { signDisplay: "always" });
655
- const n = this.getIntl().number(Math.trunc(s), {
656
- signDisplay: "always",
657
- minimumIntegerDigits: 2
658
- }), o = s.toString().match(/.\d+/) ? "30" : "00";
659
- return t === "RFC" ? `${n}${o}` : `${n}:${o}`;
660
- }
661
- /**
662
- * Returns the code of the first day of the week.
663
- *
664
- * Возвращает код первого дня недели.
665
- */
666
- getFirstDayCode() {
667
- const t = this.getIntl().getFirstDay();
668
- return t === "Sa" ? 6 : t === "Su" ? 0 : 1;
669
- }
670
- /**
671
- * The method returns the year of the specified date according to local time.
672
- *
673
- * Метод возвращает год указанной даты по местному времени.
674
- */
675
- getYear() {
676
- return this.date.getFullYear();
677
- }
678
- /**
679
- * The method returns the month in the specified date according to local time,
680
- * as a zero-based value.
681
- *
682
- * Метод возвращает месяц указанной даты по местному времени, нумерация
683
- * месяцев начинается с нуля для первого месяца в году.
684
- */
685
- getMonth() {
686
- return this.date.getMonth() + 1;
687
- }
688
- /**
689
- * The method returns the day of the month for the specified date according to local time.
690
- *
691
- * Метод возвращает день месяца указанной даты по местному времени
692
- */
693
- getDay() {
694
- return this.date.getDate();
695
- }
696
- /**
697
- * The method returns the hour for the specified date, according to local time.
698
- *
699
- * Метод возвращает часы указанной даты по местному времени.
700
- */
701
- getHour() {
702
- return this.date.getHours();
703
- }
704
- /**
705
- * The method returns the minutes in the specified date according to local time.
706
- *
707
- * Метод возвращает минуты указанной даты по местному времени.
708
- */
709
- getMinute() {
710
- return this.date.getMinutes();
711
- }
712
- /**
713
- * The method returns the seconds in the specified date according to local time.
714
- *
715
- * Метод возвращает секунды указанной даты по местному времени.
716
- */
717
- getSecond() {
718
- return this.date.getSeconds();
719
- }
720
- /**
721
- * Returns the last day of the week.
722
- *
723
- * Возвращает последний день недели.
724
- */
725
- getMaxDay() {
726
- return this.getMonth() > 0 ? this.cloneDayLast().getDay() : 0;
727
- }
728
- /**
729
- * Enables language-sensitive date and time formatting.
730
- *
731
- * Конструктором объектов, включающих языка-зависимое форматирование даты и времени.
732
- * @param type type of date format for output/ тип формата даты вывода
733
- * @param styleOptions the representation of the month/ представление месяца
734
- */
735
- locale(t = this.type, e) {
736
- return this.getIntl().date(
737
- this.date,
738
- t,
739
- e,
740
- this.hour24
741
- );
742
- }
743
- /**
744
- * Returns the formatted year.
745
- *
746
- * Возвращает отформатированный год.
747
- * @param style the representation of the month/ представление месяца
748
- */
749
- localeYear(t = "numeric") {
750
- return this.locale("year", { year: t });
751
- }
752
- /**
753
- * Returns the formatted month.
754
- *
755
- * Возвращает отформатированный месяц.
756
- * @param style the representation of the month/ представление месяца
757
- */
758
- localeMonth(t = "long") {
759
- return this.locale("month", { month: t });
760
- }
761
- /**
762
- * Returns the formatted day.
763
- *
764
- * Возвращает отформатированный день.
765
- * @param style the representation of the month/ представление месяца
766
- */
767
- localeDay(t = "numeric") {
768
- return this.locale("day", { day: t });
769
- }
770
- /**
771
- * Returns the formatted hour.
772
- *
773
- * Возвращает отформатированный час.
774
- * @param style the representation of the month/ представление месяца
775
- */
776
- localeHour(t = "numeric") {
777
- return this.locale("hour", { hour: t });
778
- }
779
- /**
780
- * Returns the formatted minute.
781
- *
782
- * Возвращает отформатированную минуту.
783
- * @param style the representation of the month/ представление месяца
784
- */
785
- localeMinute(t = "numeric") {
786
- return this.locale("minute", { minute: t });
787
- }
788
- /**
789
- * Returns the formatted second.
790
- *
791
- * Возвращает отформатированную секунду.
792
- * @param style the representation of the month/ представление месяца
793
- */
794
- localeSecond(t = "numeric") {
795
- return this.locale("second", { second: t });
796
- }
797
- /**
798
- * Output of standard data.
799
- *
800
- * Вывод стандартных данных.
801
- * @param timeZone add time zone/ добавить временную зону
802
- */
803
- standard(t = !0) {
804
- const e = new ht(this.date, this.type, "en-GB"), s = [];
805
- let n;
806
- return e.setHour24(!0), this.type === "hour-minute" ? n = e.locale(this.type, {
807
- year: "numeric",
808
- month: "2-digit",
809
- hour12: !1
810
- }) : (["full", "datetime", "date", "year-month", "year", "month", "day"].indexOf(this.type) !== -1 && (s.push(e.localeYear()), s.push(e.localeMonth("2-digit"))), ["full", "datetime", "date", "year", "month", "day"].indexOf(this.type) !== -1 && s.push(e.localeDay("2-digit")), ["full", "datetime", "time", "hour", "minute", "second"].indexOf(this.type) !== -1 && (n = e.locale("time"))), `${s.join("-")}${n ? `T${n}${t ? e.getTimeZone() : ""}` : ""}`;
811
- }
812
- /**
813
- * Change the date completely.
814
- *
815
- * Изменять полностью дату.
816
- * @param value an integer value representing the number/
817
- * целочисленное значение, представляющее число
818
- */
819
- setDate(t) {
820
- return this.date = A(t), this.update(), this;
821
- }
822
- /**
823
- * Change the type of data output.
824
- *
825
- * Изменить тип вывода данных.
826
- * @param value type of output/ тип вывод
827
- */
828
- setType(t) {
829
- return this.type = t, this.update(), this;
830
- }
831
- /**
832
- * Whether to use 12-hour time.
833
- *
834
- * Использовать ли 12-часовой формат времени.
835
- * @param value If true, output the 12-hour time format/
836
- * если true, выводить 12-часовой формат времени
837
- */
838
- setHour24(t) {
839
- return this.hour24 = t, this.update(), this;
840
- }
841
- /**
842
- * To change the location.
843
- *
844
- * Изменить местоположение.
845
- * @param code country and language code/ код страны и языка
846
- */
847
- setCode(t) {
848
- return this.code = t, this;
849
- }
850
- /**
851
- * The function is called when the data is updated.
852
- *
853
- * Функция вызывается при обновлении данных.
854
- * @param watch the function calls/ функция вызывает
855
- */
856
- setWatch(t) {
857
- return this.watch = t, this;
858
- }
859
- /**
860
- * The method sets the full year for a specified date according to local time.
861
- *
862
- * Метод устанавливает полный год указанной даты по местному времени.
863
- * @param value value/ значения
864
- */
865
- setYear(t) {
866
- return this.date.setFullYear(t), this.update(), this;
867
- }
868
- /**
869
- * The method sets the month for a specified date according to the currently set year.
870
- *
871
- * Метод устанавливает месяц указанной даты по местному времени.
872
- * @param value value/ значения
873
- */
874
- setMonth(t) {
875
- return this.date.setMonth(t - 1), this.update(), this;
876
- }
877
- /**
878
- * The method changes the day of the month of a given Date instance, based on local time.
879
- *
880
- * Метод устанавливает день месяца указанной даты по местному времени.
881
- * @param value value/ значения
882
- */
883
- setDay(t) {
884
- return this.date.setDate(t), this.update(), this;
885
- }
886
- /**
887
- * The method sets the hours for a specified date according to local time.
888
- *
889
- * Метод устанавливает часы указанной даты по местному времени.
890
- * @param value value/ значения
891
- */
892
- setHour(t) {
893
- return this.date.setHours(t), this.update(), this;
894
- }
895
- /**
896
- * The method sets the minutes for a specified date according to local time
897
- *
898
- * Метод устанавливает минуты указанной даты по местному времени
899
- * @param value value / значения
900
- */
901
- setMinute(t) {
902
- return this.date.setMinutes(t), this.update(), this;
903
- }
904
- /**
905
- * The method sets the seconds for a specified date according to local time.
906
- *
907
- * Метод устанавливает секунды указанной даты по местному времени.
908
- * @param value value/ значения
909
- */
910
- setSecond(t) {
911
- return this.date.setSeconds(t), this.update(), this;
912
- }
913
- /**
914
- * Shift the date by a given value in years.
915
- *
916
- * Сдвинуть дату на заданное значение в годах.
917
- * @param value values for moving/ значения для перемещения
918
- */
919
- moveByYear(t) {
920
- return this.setYear(this.date.getFullYear() + t), this;
921
- }
922
- /**
923
- * Shift the date by a given value in months.
924
- *
925
- * Сдвинуть дату на заданное значение в месяцах.
926
- * @param value values for moving/ значения для перемещения
927
- */
928
- moveByMonth(t) {
929
- return this.setMonth(this.date.getMonth() + 1 + t), this;
930
- }
931
- /**
932
- * Shift the date by a given value in days.
933
- *
934
- * Сдвинуть дату на заданное значение в днях.
935
- * @param value values for moving/ значения для перемещения
936
- */
937
- moveByDay(t) {
938
- return this.setDay(this.date.getDate() + t), this;
939
- }
940
- /**
941
- * Shift the date by a given value in hours.
942
- *
943
- * Сдвинуть дату на заданное значение в часах.
944
- * @param value values for moving/ значения для перемещения
945
- */
946
- moveByHour(t) {
947
- return this.setHour(this.date.getHours() + t), this;
948
- }
949
- /**
950
- * Shift the date by a given value in minutes.
951
- *
952
- * Сдвинуть дату на заданное значение в минутах.
953
- * @param value values for moving/ значения для перемещения
954
- */
955
- moveByMinute(t) {
956
- return this.setMinute(this.date.getMinutes() + t), this;
957
- }
958
- /**
959
- * Shift the date by a given value in seconds.
960
- *
961
- * Сдвинуть дату на заданное значение в секундах.
962
- * @param value values for moving/ значения для перемещения
963
- */
964
- moveBySecond(t) {
965
- return this.setSecond(this.date.getSeconds() + t), this;
966
- }
967
- /**
968
- * Translate to the first month.
969
- *
970
- * Переводить на первый месяц.
971
- */
972
- moveMonthFirst() {
973
- return this.setMonth(1), this;
974
- }
975
- /**
976
- * Translate to the first month.
977
- *
978
- * Переводить на первый месяц.
979
- */
980
- moveMonthLast() {
981
- return this.setMonth(12), this;
982
- }
983
- /**
984
- * Translate to the first day of the next month.
985
- *
986
- * Переводить на первый день следующего месяца.
987
- */
988
- moveMonthNext() {
989
- return this.setDay(1).moveByMonth(1), this;
990
- }
991
- /**
992
- * Translate to the first day of the previous month.
993
- *
994
- * Переводить на первый день предыдущего месяца.
995
- */
996
- moveMonthPrevious() {
997
- return this.setDay(1).moveByMonth(-1), this;
998
- }
999
- /**
1000
- * Translate to the first day of the week.
1001
- *
1002
- * Переводить на первый день недели.
1003
- */
1004
- moveWeekdayFirst() {
1005
- const t = this.date.getDay(), e = this.getFirstDayCode();
1006
- return this.moveByDay(
1007
- (e === 6 ? -1 : e) - t
1008
- ), this;
1009
- }
1010
- /**
1011
- * Translate to the last day of the week.
1012
- *
1013
- * Переводить на последний день недели.
1014
- */
1015
- moveWeekdayLast() {
1016
- return this.moveWeekdayFirst().moveByDay(6), this;
1017
- }
1018
- /**
1019
- * Translate to the first day of the first week of the month.
1020
- *
1021
- * Переводить на первый день первой недели месяца.
1022
- */
1023
- moveWeekdayFirstByMonth() {
1024
- return this.moveDayFirst().moveWeekdayFirst(), this;
1025
- }
1026
- /**
1027
- * Translate to the first day of the first full week of the following month.
1028
- *
1029
- * Переводить на первый день первой полной недели следующего месяца.
1030
- */
1031
- moveWeekdayLastByMonth() {
1032
- return this.moveDayLast().moveWeekdayLast(), this;
1033
- }
1034
- /**
1035
- * Translate to the next week.
1036
- *
1037
- * Переводить на следующую неделю.
1038
- */
1039
- moveWeekdayNext() {
1040
- return this.moveWeekdayFirst().moveByDay(7), this;
1041
- }
1042
- /**
1043
- * Translate to the previous week.
1044
- *
1045
- * Переводить на предыдущую неделю.
1046
- */
1047
- moveWeekdayPrevious() {
1048
- return this.moveWeekdayFirst().moveByDay(-7), this;
1049
- }
1050
- /**
1051
- * Translate to the first day of the month.
1052
- *
1053
- * Переводить на первый день месяца.
1054
- */
1055
- moveDayFirst() {
1056
- return this.setDay(1), this;
1057
- }
1058
- /**
1059
- * Translate to the last day of the month.
1060
- *
1061
- * Переводить на последний день месяца.
1062
- */
1063
- moveDayLast() {
1064
- return this.setDay(1).moveByMonth(1).moveByDay(-1), this;
1065
- }
1066
- /**
1067
- * Translate to the next day.
1068
- *
1069
- * Переводить на следующий день.
1070
- */
1071
- moveDayNext() {
1072
- return this.moveByDay(1), this;
1073
- }
1074
- /**
1075
- * Translate to the previous day.
1076
- *
1077
- * Переводить на предыдущий день.
1078
- */
1079
- moveDayPrevious() {
1080
- return this.moveByDay(-1), this;
1081
- }
1082
- /**
1083
- * Clone the Date object.
1084
- *
1085
- * Клонировать объект Date.
1086
- */
1087
- clone() {
1088
- return new Date(this.date);
1089
- }
1090
- /**
1091
- * Clone the GeoDate object.
1092
- *
1093
- * Клонировать объект GeoDate.
1094
- */
1095
- cloneClass() {
1096
- return new this.constructor(
1097
- this.clone(),
1098
- this.type,
1099
- this.code
1100
- );
1101
- }
1102
- /**
1103
- * Clone the GeoDate object and set the month to January.
1104
- *
1105
- * Клонировать объект GeoDate и установить месяц на январь.
1106
- */
1107
- cloneMonthFirst() {
1108
- return this.cloneClass().moveMonthFirst();
1109
- }
1110
- /**
1111
- * Clone the GeoDate object and move the month to the end of the year.
1112
- *
1113
- * Клонировать объект GeoDate и перевести месяц на конец года.
1114
- */
1115
- cloneMonthLast() {
1116
- return this.cloneClass().moveMonthLast();
1117
- }
1118
- /**
1119
- * Clone the GeoDate object and transfer it one month ahead.
1120
- *
1121
- * Клонировать объект GeoDate и перевести на 1 месяц вперед.
1122
- */
1123
- cloneMonthNext() {
1124
- return this.cloneClass().moveMonthNext();
1125
- }
1126
- /**
1127
- * Clone the GeoDate object and transfer it one month back.
1128
- *
1129
- * Клонировать объект GeoDate и перевести на 1 месяц назад.
1130
- */
1131
- cloneMonthPrevious() {
1132
- return this.cloneClass().moveMonthPrevious();
1133
- }
1134
- /**
1135
- * Returns the first day of the week according to the current date.
1136
- *
1137
- * Возвращает первый день недели по текущей дате.
1138
- */
1139
- cloneWeekdayFirst() {
1140
- return this.cloneClass().moveWeekdayFirst();
1141
- }
1142
- /**
1143
- * Returns the last day of the week according to the current date.
1144
- *
1145
- * Возвращает последний день недели по текущей дате.
1146
- */
1147
- cloneWeekdayLast() {
1148
- return this.cloneClass().moveWeekdayLast();
1149
- }
1150
- /**
1151
- * Returns the first day of the week according to the current month.
1152
- *
1153
- * Возвращает первый день недели по текущему месяцу.
1154
- */
1155
- cloneWeekdayFirstByMonth() {
1156
- return this.cloneClass().moveWeekdayFirstByMonth();
1157
- }
1158
- /**
1159
- * Returns the last day of the week according to the current month.
1160
- *
1161
- * Возвращает последний день недели по текущему месяцу.
1162
- */
1163
- cloneWeekdayLastByMonth() {
1164
- return this.cloneClass().moveWeekdayLastByMonth();
1165
- }
1166
- /**
1167
- * Returns the next week according to the current date.
1168
- *
1169
- * Возвращает следующую неделю по текущей дате.
1170
- */
1171
- cloneWeekdayNext() {
1172
- return this.cloneClass().moveWeekdayNext();
1173
- }
1174
- /**
1175
- * Returns the previous week according to the current date.
1176
- *
1177
- * Возвращает предыдущую неделю по текущей дате.
1178
- */
1179
- cloneWeekdayPrevious() {
1180
- return this.cloneClass().moveWeekdayPrevious();
1181
- }
1182
- /**
1183
- * Clone the GeoDate object and move the day to the beginning of the month.
1184
- *
1185
- * Клонировать объект GeoDate и перевести день на начало месяца.
1186
- */
1187
- cloneDayFirst() {
1188
- return this.cloneClass().moveDayFirst();
1189
- }
1190
- /**
1191
- * Clone the GeoDate object and move the day to the end of the month.
1192
- *
1193
- * Клонировать объект GeoDate и перевести день на конец месяца.
1194
- */
1195
- cloneDayLast() {
1196
- return this.cloneClass().moveDayLast();
1197
- }
1198
- /**
1199
- * Clone the GeoDate object and move by 1 day.
1200
- *
1201
- * Клонировать объект GeoDate и перевести на 1 день.
1202
- */
1203
- cloneDayNext() {
1204
- return this.cloneClass().moveDayNext();
1205
- }
1206
- /**
1207
- * Clone the GeoDate object and go back by 1 day.
1208
- *
1209
- * Клонировать объект GeoDate и вернуться на 1 день.
1210
- */
1211
- cloneDayPrevious() {
1212
- return this.cloneClass().moveDayPrevious();
1213
- }
1214
- /**
1215
- * Updating all values.
1216
- *
1217
- * Обновление всех значений.
1218
- */
1219
- update() {
1220
- var t;
1221
- return (t = this.watch) == null || t.call(
1222
- this,
1223
- this.date,
1224
- this.type,
1225
- this.hour24
1226
- ), this;
1227
- }
1228
- }
1229
- const r = "@flag", E = class E {
1230
- /**
1231
- * Constructor
1232
- * @param code country and language code/ код страны и языка
1233
- */
1234
- constructor(t = w.getLocation()) {
1235
- this.code = t;
1236
- }
1237
- /**
1238
- * Returns information about the country and its flag.
1239
- *
1240
- * Возвращает информацию о стране и её флаге.
1241
- * @param code country code/ код страны
1242
- */
1243
- get(t = this.code) {
1244
- var s;
1245
- const e = w.find(t);
1246
- if (e) {
1247
- const n = this.getCountry(e);
1248
- return {
1249
- language: this.getLanguage(e),
1250
- country: n,
1251
- standard: e.standard,
1252
- icon: (s = E.flags) == null ? void 0 : s[e.country],
1253
- label: n,
1254
- value: e.country
1255
- };
1256
- }
1257
- }
1258
- /**
1259
- * Getting a link to the flag.
1260
- *
1261
- * Получение ссылки на флаг.
1262
- * @param code country code/ код страны
1263
- */
1264
- getFlag(t = this.code) {
1265
- var e;
1266
- return (e = this.get(t)) == null ? void 0 : e.icon;
1267
- }
1268
- /**
1269
- * Getting a list of countries by an array of codes.
1270
- *
1271
- * Получение списка стран по массиву с кодами.
1272
- * @param codes country code/ код страны
1273
- */
1274
- getList(t) {
1275
- return $(this.getCodes(t), (e) => this.get(e));
1276
- }
1277
- /**
1278
- * Getting a list of countries by an array of codes in national language.
1279
- *
1280
- * Получение списка стран по массиву с кодами на национальный язык.
1281
- * @param codes country code/ код страны.
1282
- */
1283
- getNational(t) {
1284
- return $(this.getList(t), (e) => {
1285
- const s = new E(e.standard).get(e.standard);
1286
- return {
1287
- ...e,
1288
- description: s == null ? void 0 : s.country,
1289
- nationalLanguage: s == null ? void 0 : s.language,
1290
- nationalCountry: s == null ? void 0 : s.country
1291
- };
1292
- });
1293
- }
1294
- /**
1295
- * To change the location.
1296
- *
1297
- * Изменить местоположение.
1298
- * @param code country and language code/ код страны и языка
1299
- */
1300
- setCode(t) {
1301
- return this.code = t, this;
1302
- }
1303
- /**
1304
- * Returns a special object for formatting.
1305
- *
1306
- * Возвращает специальный объект для работы с форматированием.
1307
- */
1308
- getLocation() {
1309
- return new P(this.code);
1310
- }
1311
- /**
1312
- * Returns a list of countries to retrieve data from.
1313
- *
1314
- * Возвращает список стран для получения данных.
1315
- * @param codes country code/ код страны
1316
- */
1317
- getCodes(t) {
1318
- return t != null ? t : Object.keys(E.flags);
1319
- }
1320
- /**
1321
- * Getting the name of the language.
1322
- *
1323
- * Получение названия языка.
1324
- * @param data object with information of data/ объект с информацией данных
1325
- */
1326
- getLanguage(t) {
1327
- return this.getLocation().languageName(t.language);
1328
- }
1329
- /**
1330
- * Getting the name of the country.
1331
- *
1332
- * Получение названия страны.
1333
- * @param data object with information of data/ объект с информацией данных
1334
- */
1335
- getCountry(t) {
1336
- return this.getLocation().countryName(t.country);
1337
- }
1338
- };
1339
- u(E, "flags", {
1340
- AD: `${r}-ad`,
1341
- AE: `${r}-ae`,
1342
- AF: `${r}-af`,
1343
- AG: `${r}-ag`,
1344
- AI: `${r}-ai`,
1345
- AL: `${r}-al`,
1346
- AM: `${r}-am`,
1347
- AN: `${r}-an`,
1348
- AO: `${r}-ao`,
1349
- AQ: `${r}-aq`,
1350
- AR: `${r}-ar`,
1351
- AS: `${r}-as`,
1352
- AT: `${r}-at`,
1353
- AU: `${r}-au`,
1354
- AW: `${r}-aw`,
1355
- AZ: `${r}-az`,
1356
- BA: `${r}-ba`,
1357
- BB: `${r}-bb`,
1358
- BD: `${r}-bd`,
1359
- BE: `${r}-be`,
1360
- BF: `${r}-bf`,
1361
- BG: `${r}-bg`,
1362
- BH: `${r}-bh`,
1363
- BI: `${r}-bi`,
1364
- BJ: `${r}-bj`,
1365
- BL: `${r}-bl`,
1366
- BM: `${r}-bm`,
1367
- BN: `${r}-bn`,
1368
- BO: `${r}-bo`,
1369
- BR: `${r}-br`,
1370
- BS: `${r}-bs`,
1371
- BT: `${r}-bt`,
1372
- BW: `${r}-bw`,
1373
- BY: `${r}-by`,
1374
- BZ: `${r}-bz`,
1375
- CA: `${r}-ca`,
1376
- CC: `${r}-cc`,
1377
- CD: `${r}-cd`,
1378
- CF: `${r}-cf`,
1379
- CG: `${r}-cg`,
1380
- CH: `${r}-ch`,
1381
- CI: `${r}-ci`,
1382
- CK: `${r}-ck`,
1383
- CL: `${r}-cl`,
1384
- CM: `${r}-cm`,
1385
- CN: `${r}-cn`,
1386
- CO: `${r}-co`,
1387
- CR: `${r}-cr`,
1388
- CU: `${r}-cu`,
1389
- CV: `${r}-cv`,
1390
- CW: `${r}-cw`,
1391
- CX: `${r}-cx`,
1392
- CY: `${r}-cy`,
1393
- CZ: `${r}-cz`,
1394
- DE: `${r}-de`,
1395
- DJ: `${r}-dj`,
1396
- DK: `${r}-dk`,
1397
- DM: `${r}-dm`,
1398
- DZ: `${r}-dz`,
1399
- EC: `${r}-ec`,
1400
- EE: `${r}-ee`,
1401
- EG: `${r}-eg`,
1402
- EH: `${r}-eh`,
1403
- ER: `${r}-er`,
1404
- ES: `${r}-es`,
1405
- ET: `${r}-et`,
1406
- FI: `${r}-fi`,
1407
- FJ: `${r}-fj`,
1408
- FK: `${r}-fk`,
1409
- FM: `${r}-fm`,
1410
- FO: `${r}-fo`,
1411
- FR: `${r}-fr`,
1412
- GA: `${r}-ga`,
1413
- GB: `${r}-gb`,
1414
- GD: `${r}-gd`,
1415
- GE: `${r}-ge`,
1416
- GF: `${r}-gf`,
1417
- GG: `${r}-gg`,
1418
- GH: `${r}-gh`,
1419
- GI: `${r}-gi`,
1420
- GL: `${r}-gl`,
1421
- GM: `${r}-gm`,
1422
- GN: `${r}-gn`,
1423
- GQ: `${r}-gq`,
1424
- GR: `${r}-gr`,
1425
- GT: `${r}-gt`,
1426
- GU: `${r}-gu`,
1427
- GW: `${r}-gw`,
1428
- GY: `${r}-gy`,
1429
- HK: `${r}-hk`,
1430
- HN: `${r}-hn`,
1431
- HR: `${r}-hr`,
1432
- HT: `${r}-ht`,
1433
- HU: `${r}-hu`,
1434
- ID: `${r}-id`,
1435
- IE: `${r}-ie`,
1436
- IL: `${r}-il`,
1437
- IM: `${r}-im`,
1438
- IN: `${r}-in`,
1439
- IO: `${r}-io`,
1440
- IQ: `${r}-iq`,
1441
- IR: `${r}-ir`,
1442
- IS: `${r}-is`,
1443
- IT: `${r}-it`,
1444
- JE: `${r}-je`,
1445
- JM: `${r}-jm`,
1446
- JO: `${r}-jo`,
1447
- JP: `${r}-jp`,
1448
- KE: `${r}-ke`,
1449
- KG: `${r}-kg`,
1450
- KH: `${r}-kh`,
1451
- KI: `${r}-ki`,
1452
- KM: `${r}-km`,
1453
- KN: `${r}-kn`,
1454
- KP: `${r}-kp`,
1455
- KR: `${r}-kr`,
1456
- KW: `${r}-kw`,
1457
- KY: `${r}-ky`,
1458
- KZ: `${r}-kz`,
1459
- LA: `${r}-la`,
1460
- LB: `${r}-lb`,
1461
- LC: `${r}-lc`,
1462
- LI: `${r}-li`,
1463
- LK: `${r}-lk`,
1464
- LR: `${r}-lr`,
1465
- LS: `${r}-ls`,
1466
- LT: `${r}-lt`,
1467
- LU: `${r}-lu`,
1468
- LV: `${r}-lv`,
1469
- LY: `${r}-ly`,
1470
- MA: `${r}-ma`,
1471
- MC: `${r}-mc`,
1472
- MD: `${r}-md`,
1473
- ME: `${r}-me`,
1474
- MF: `${r}-mf`,
1475
- MG: `${r}-mg`,
1476
- MH: `${r}-mh`,
1477
- MK: `${r}-mk`,
1478
- ML: `${r}-ml`,
1479
- MM: `${r}-mm`,
1480
- MN: `${r}-mn`,
1481
- MO: `${r}-mo`,
1482
- MP: `${r}-mp`,
1483
- MQ: `${r}-mq`,
1484
- MR: `${r}-mr`,
1485
- MS: `${r}-ms`,
1486
- MT: `${r}-mt`,
1487
- MU: `${r}-mu`,
1488
- MV: `${r}-mv`,
1489
- MW: `${r}-mw`,
1490
- MX: `${r}-mx`,
1491
- MY: `${r}-my`,
1492
- MZ: `${r}-mz`,
1493
- NA: `${r}-na`,
1494
- NC: `${r}-nc`,
1495
- NE: `${r}-ne`,
1496
- NF: `${r}-nf`,
1497
- NG: `${r}-ng`,
1498
- NI: `${r}-ni`,
1499
- NL: `${r}-nl`,
1500
- NO: `${r}-no`,
1501
- NP: `${r}-np`,
1502
- NR: `${r}-nr`,
1503
- NU: `${r}-nu`,
1504
- NZ: `${r}-nz`,
1505
- OM: `${r}-om`,
1506
- PA: `${r}-pa`,
1507
- PE: `${r}-pe`,
1508
- PF: `${r}-pf`,
1509
- PG: `${r}-pg`,
1510
- PH: `${r}-ph`,
1511
- PK: `${r}-pk`,
1512
- PL: `${r}-pl`,
1513
- PM: `${r}-pm`,
1514
- PN: `${r}-pn`,
1515
- PR: `${r}-pr`,
1516
- PS: `${r}-ps`,
1517
- PT: `${r}-pt`,
1518
- PW: `${r}-pw`,
1519
- PY: `${r}-py`,
1520
- QA: `${r}-qa`,
1521
- RE: `${r}-re`,
1522
- RO: `${r}-ro`,
1523
- RS: `${r}-rs`,
1524
- RU: `${r}-ru`,
1525
- RW: `${r}-rw`,
1526
- SA: `${r}-sa`,
1527
- SB: `${r}-sb`,
1528
- SC: `${r}-sc`,
1529
- SD: `${r}-sd`,
1530
- SE: `${r}-se`,
1531
- SG: `${r}-sg`,
1532
- SH: `${r}-sh`,
1533
- SI: `${r}-si`,
1534
- SJ: `${r}-sj`,
1535
- SK: `${r}-sk`,
1536
- SL: `${r}-sl`,
1537
- SM: `${r}-sm`,
1538
- SN: `${r}-sn`,
1539
- SO: `${r}-so`,
1540
- SR: `${r}-sr`,
1541
- SS: `${r}-ss`,
1542
- ST: `${r}-st`,
1543
- SV: `${r}-sv`,
1544
- SX: `${r}-sx`,
1545
- SY: `${r}-sy`,
1546
- SZ: `${r}-sz`,
1547
- TC: `${r}-tc`,
1548
- TD: `${r}-td`,
1549
- TG: `${r}-tg`,
1550
- TH: `${r}-th`,
1551
- TJ: `${r}-tj`,
1552
- TK: `${r}-tk`,
1553
- TL: `${r}-tl`,
1554
- TM: `${r}-tm`,
1555
- TN: `${r}-tn`,
1556
- TO: `${r}-to`,
1557
- TR: `${r}-tr`,
1558
- TT: `${r}-tt`,
1559
- TV: `${r}-tv`,
1560
- TW: `${r}-tw`,
1561
- TZ: `${r}-tz`,
1562
- UA: `${r}-ua`,
1563
- UG: `${r}-ug`,
1564
- US: `${r}-us`,
1565
- UY: `${r}-uy`,
1566
- UZ: `${r}-uz`,
1567
- VA: `${r}-va`,
1568
- VC: `${r}-vc`,
1569
- VE: `${r}-ve`,
1570
- VG: `${r}-vg`,
1571
- VI: `${r}-vi`,
1572
- VN: `${r}-vn`,
1573
- VU: `${r}-vu`,
1574
- WF: `${r}-wf`,
1575
- WS: `${r}-ws`,
1576
- YE: `${r}-ye`,
1577
- YT: `${r}-yt`,
1578
- ZA: `${r}-za`,
1579
- ZM: `${r}-zm`,
1580
- ZW: `${r}-zw`
1581
- });
1582
- let ot = E, x;
1583
- class Ne {
1584
- /**
1585
- * Returns the value by its name.
1586
- *
1587
- * Возвращает значение по его имени.
1588
- * @param name property name/ название свойства
1589
- */
1590
- static get(t) {
1591
- return x && (x == null ? void 0 : x[t]);
1592
- }
1593
- /**
1594
- * Adds data, this method works only once.
1595
- *
1596
- * Добавляет данные, этот метод работает только 1 раз.
1597
- * @param data global data/ глобальные данные
1598
- */
1599
- static add(t) {
1600
- x === void 0 && (x = { ...t });
1601
- }
1602
- }
1603
- function Zt(i) {
1604
- return i.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;").trim();
1605
- }
1606
- class dt {
1607
- /**
1608
- * Creates an instance of MetaManager.
1609
- *
1610
- * Создает экземпляр MetaManager.
1611
- * @param listMeta list of meta-tag names to manage / список имен мета-тегов для управления
1612
- * @param isProperty use 'property' attribute instead of 'name' / использовать атрибут 'property' вместо 'name'
1613
- */
1614
- constructor(t, e = !1) {
1615
- u(this, "items", {});
1616
- this.listMeta = t, this.isProperty = e, this.update();
1617
- }
1618
- /**
1619
- * Returns the list of meta tag names.
1620
- *
1621
- * Возвращает список имен мета-тегов.
1622
- */
1623
- getListMeta() {
1624
- return this.listMeta;
1625
- }
1626
- /**
1627
- * Get the content of a meta tag by name.
1628
- *
1629
- * Получает содержимое мета-тега по имени.
1630
- * @param name meta tag name / имя мета-тега
1631
- */
1632
- get(t) {
1633
- var e;
1634
- return (e = this.items[t]) != null ? e : "";
1635
- }
1636
- /**
1637
- * Returns all meta tags.
1638
- *
1639
- * Возвращает все мета-теги.
1640
- */
1641
- getItems() {
1642
- return this.items;
1643
- }
1644
- /**
1645
- * Returns all meta tags as HTML string.
1646
- *
1647
- * Возвращает все мета-теги в виде HTML-строки.
1648
- */
1649
- html() {
1650
- return $(
1651
- this.listMeta,
1652
- (e) => this.toHtmlString(e)
1653
- ).join("");
1654
- }
1655
- /**
1656
- * Sets the content of a meta tag.
1657
- *
1658
- * Устанавливает содержимое мета-тега.
1659
- * @param name meta tag name / имя мета-тега
1660
- * @param content meta tag content / содержимое мета-тега
1661
- */
1662
- set(t, e) {
1663
- return this.setItem(t, e).setMeta(t), this;
1664
- }
1665
- /**
1666
- * Sets multiple meta tags from an object.
1667
- *
1668
- * Устанавливает несколько мета-тегов из объекта.
1669
- * @param metaList object with meta tag names and content / объект с именами и содержимым мета-тегов
1670
- */
1671
- setByList(t) {
1672
- return $(
1673
- t,
1674
- (e, s) => this.set(s, String(e))
1675
- ), this;
1676
- }
1677
- /**
1678
- * Returns the attribute name for meta tags.
1679
- *
1680
- * Возвращает имя атрибута для мета-тегов.
1681
- */
1682
- getAttributeName() {
1683
- return this.isProperty ? "property" : "name";
1684
- }
1685
- /**
1686
- * Finds a meta element in the DOM.
1687
- *
1688
- * Находит мета-элемент в DOM.
1689
- * @param name meta tag name / имя мета-тега
1690
- */
1691
- findMetaElement(t) {
1692
- if (!y())
1693
- return;
1694
- const e = `meta[${this.getAttributeName()}="${t}"]`;
1695
- return document.querySelector(e) || void 0;
1696
- }
1697
- /**
1698
- * Sets the content of a meta tag in internal storage.
1699
- *
1700
- * Устанавливает содержимое мета-тега во внутреннем хранилище.
1701
- * @param name meta tag name / имя мета-тега
1702
- * @param content meta tag content / содержимое мета-тега
1703
- */
1704
- setItem(t, e) {
1705
- return this.items[t] = e, this;
1706
- }
1707
- /**
1708
- * Sets or creates a meta tag in the DOM.
1709
- *
1710
- * Устанавливает или создает мета-тег в DOM.
1711
- * @param name meta tag name / имя мета-тега
1712
- */
1713
- setMeta(t) {
1714
- var n;
1715
- const e = this.findMetaElement(t), s = (n = this.items[t]) != null ? n : "";
1716
- if (e)
1717
- e.content = s;
1718
- else if (y()) {
1719
- const o = { content: s };
1720
- this.isProperty ? o.property = t : o.name = t, Bt(document.head, "meta", o);
1721
- }
1722
- return this;
1723
- }
1724
- /**
1725
- * Converts meta tag to HTML string.
1726
- *
1727
- * Преобразует мета-тег в HTML-строку.
1728
- * @param name meta tag name / имя мета-тега
1729
- */
1730
- toHtmlString(t) {
1731
- var s;
1732
- const e = Zt((s = this.items[t]) != null ? s : "");
1733
- return e ? `<meta ${this.getAttributeName()}="${t}" content="${e}">` : "";
1734
- }
1735
- /**
1736
- * Updates meta tags data from the DOM.
1737
- *
1738
- * Обновляет данные мета-тегов из DOM.
1739
- */
1740
- update() {
1741
- return this.listMeta.forEach((t) => {
1742
- var e, s;
1743
- this.items[t] = (s = (e = this.findMetaElement(t)) == null ? void 0 : e.content) != null ? s : "";
1744
- }), this;
1745
- }
1746
- }
1747
- var L = /* @__PURE__ */ ((i) => (i.description = "description", i.keywords = "keywords", i.canonical = "canonical", i.robots = "robots", i.author = "author", i))(L || {}), Vt = /* @__PURE__ */ ((i) => (i.indexFollow = "index, follow", i.noIndexFollow = "noindex, follow", i.indexNoFollow = "index, nofollow", i.noIndexNoFollow = "noindex, nofollow", i.noArchive = "noarchive", i.noSnippet = "nosnippet", i.noImageIndex = "noimageindex", i.images = "images", i.noTranslate = "notranslate", i.noPreview = "nopreview", i.textOnly = "textonly", i.noIndexSubpages = "noindex, noarchive", i.none = "none", i))(Vt || {}), v = /* @__PURE__ */ ((i) => (i.title = "og:title", i.type = "og:type", i.url = "og:url", i.image = "og:image", i.description = "og:description", i.locale = "og:locale", i.siteName = "og:site_name", i.localeAlternate = "og:locale:alternate", i.imageUrl = "og:image:url", i.imageSecureUrl = "og:image:secure_url", i.imageType = "og:image:type", i.imageWidth = "og:image:width", i.imageHeight = "og:image:height", i.imageAlt = "og:image:alt", i.video = "og:video", i.videoUrl = "og:video:url", i.videoSecureUrl = "og:video:secure_url", i.videoType = "og:video:type", i.videoWidth = "og:video:width", i.videoHeight = "og:video:height", i.audio = "og:audio", i.audioSecureUrl = "og:audio:secure_url", i.audioType = "og:audio:type", i.articlePublishedTime = "article:published_time", i.articleModifiedTime = "article:modified_time", i.articleExpirationTime = "article:expiration_time", i.articleAuthor = "article:author", i.articleSection = "article:section", i.articleTag = "article:tag", i.bookAuthor = "book:author", i.bookIsbn = "book:isbn", i.bookReleaseDate = "book:release_date", i.bookTag = "book:tag", i.musicDuration = "music:duration", i.musicAlbum = "music:album", i.musicAlbumDisc = "music:album:disc", i.musicAlbumTrack = "music:album:track", i.musicMusician = "music:musician", i.musicSong = "music:song", i.musicSongDisc = "music:song:disc", i.musicSongTrack = "music:song:track", i.musicReleaseDate = "music:release_date", i.musicCreator = "music:creator", i.videoActor = "video:actor", i.videoActorRole = "video:actor:role", i.videoDirector = "video:director", i.videoWriter = "video:writer", i.videoDuration = "video:duration", i.videoReleaseDate = "video:release_date", i.videoTag = "video:tag", i.videoSeries = "video:series", i.profileFirstName = "profile:first_name", i.profileLastName = "profile:last_name", i.profileUsername = "profile:username", i.profileGender = "profile:gender", i.productBrand = "product:brand", i.productAvailability = "product:availability", i.productCondition = "product:condition", i.productPriceAmount = "product:price:amount", i.productPriceCurrency = "product:price:currency", i.productRetailerItemId = "product:retailer_item_id", i.productCategory = "product:category", i.productEan = "product:ean", i.productIsbn = "product:isbn", i.productMfrPartNo = "product:mfr_part_no", i.productUpc = "product:upc", i.productWeightValue = "product:weight:value", i.productWeightUnits = "product:weight:units", i.productColor = "product:color", i.productMaterial = "product:material", i.productPattern = "product:pattern", i.productAgeGroup = "product:age_group", i.productGender = "product:gender", i))(v || {}), Yt = /* @__PURE__ */ ((i) => (i.website = "website", i.article = "article", i.video = "video.other", i.videoTvShow = "video.tv_show", i.videoEpisode = "video.episode", i.videoMovie = "video.movie", i.musicAlbum = "music.album", i.musicPlaylist = "music.playlist", i.musicSong = "music.song", i.musicRadioStation = "music.radio_station", i.app = "app", i.product = "product", i.business = "business.business", i.place = "place", i.event = "event", i.profile = "profile", i.book = "book", i))(Yt || {}), qt = /* @__PURE__ */ ((i) => (i.inStock = "in stock", i.outOfStock = "out of stock", i.preorder = "preorder", i.backorder = "backorder", i.discontinued = "discontinued", i.pending = "pending", i))(qt || {}), Jt = /* @__PURE__ */ ((i) => (i.new = "new", i.used = "used", i.refurbished = "refurbished", i))(Jt || {}), Qt = /* @__PURE__ */ ((i) => (i.newborn = "newborn", i.infant = "infant", i.toddler = "toddler", i.kids = "kids", i.adult = "adult", i))(Qt || {}), Xt = /* @__PURE__ */ ((i) => (i.female = "female", i.male = "male", i.unisex = "unisex", i))(Xt || {}), b = /* @__PURE__ */ ((i) => (i.card = "twitter:card", i.site = "twitter:site", i.creator = "twitter:creator", i.url = "twitter:url", i.title = "twitter:title", i.description = "twitter:description", i.image = "twitter:image", i.imageAlt = "twitter:image:alt", i.imageSrc = "twitter:image:src", i.imageWidth = "twitter:image:width", i.imageHeight = "twitter:image:height", i.label1 = "twitter:label1", i.data1 = "twitter:data1", i.label2 = "twitter:label2", i.data2 = "twitter:data2", i.appNameIphone = "twitter:app:name:iphone", i.appIdIphone = "twitter:app:id:iphone", i.appUrlIphone = "twitter:app:url:iphone", i.appNameIpad = "twitter:app:name:ipad", i.appIdIpad = "twitter:app:id:ipad", i.appUrlIpad = "twitter:app:url:ipad", i.appNameGooglePlay = "twitter:app:name:googleplay", i.appIdGooglePlay = "twitter:app:id:googleplay", i.appUrlGooglePlay = "twitter:app:url:googleplay", i.player = "twitter:player", i.playerWidth = "twitter:player:width", i.playerHeight = "twitter:player:height", i.playerStream = "twitter:player:stream", i.playerStreamContentType = "twitter:player:stream:content_type", i))(b || {}), Mt = /* @__PURE__ */ ((i) => (i.summary = "summary", i.summaryLargeImage = "summary_large_image", i.app = "app", i.player = "player", i.product = "product", i.gallery = "gallery", i.photo = "photo", i.leadGeneration = "lead_generation", i.audio = "audio", i.poll = "poll", i))(Mt || {});
1748
- class Ot extends dt {
1749
- constructor() {
1750
- super(Object.values(v), !0);
1751
- }
1752
- /**
1753
- * Gets the Open Graph title.
1754
- *
1755
- * Получает заголовок Open Graph.
1756
- */
1757
- getTitle() {
1758
- return this.get(v.title);
1759
- }
1760
- /**
1761
- * Gets the Open Graph type.
1762
- *
1763
- * Получает тип Open Graph.
1764
- */
1765
- getType() {
1766
- return this.get(v.type);
1767
- }
1768
- /**
1769
- * Gets the Open Graph URL.
1770
- *
1771
- * Получает URL Open Graph.
1772
- */
1773
- getUrl() {
1774
- return this.get(v.url);
1775
- }
1776
- /**
1777
- * Gets the Open Graph image URL.
1778
- *
1779
- * Получает URL изображения Open Graph.
1780
- */
1781
- getImage() {
1782
- return this.get(v.image);
1783
- }
1784
- /**
1785
- * Gets the Open Graph description.
1786
- *
1787
- * Получает описание Open Graph.
1788
- */
1789
- getDescription() {
1790
- return this.get(v.description);
1791
- }
1792
- /**
1793
- * Gets the Open Graph locale.
1794
- *
1795
- * Получает локаль Open Graph.
1796
- */
1797
- getLocale() {
1798
- return this.get(v.locale);
1799
- }
1800
- /**
1801
- * Gets the Open Graph site name.
1802
- *
1803
- * Получает название сайта Open Graph.
1804
- */
1805
- getSiteName() {
1806
- return this.get(v.siteName);
1807
- }
1808
- /**
1809
- * Sets the Open Graph title.
1810
- *
1811
- * Устанавливает заголовок Open Graph.
1812
- * @param title title / заголовок
1813
- */
1814
- setTitle(t) {
1815
- return this.set(v.title, t);
1816
- }
1817
- /**
1818
- * Sets the Open Graph type.
1819
- *
1820
- * Устанавливает тип Open Graph.
1821
- * @param type type / тип
1822
- */
1823
- setType(t) {
1824
- return this.set(v.type, t);
1825
- }
1826
- /**
1827
- * Sets the Open Graph URL.
1828
- *
1829
- * Устанавливает URL Open Graph.
1830
- * @param url URL / URL
1831
- */
1832
- setUrl(t) {
1833
- return this.set(v.url, t);
1834
- }
1835
- /**
1836
- * Sets the Open Graph image URL.
1837
- *
1838
- * Устанавливает URL изображения Open Graph.
1839
- * @param url image URL / URL изображения
1840
- */
1841
- setImage(t) {
1842
- return this.set(v.image, t);
1843
- }
1844
- /**
1845
- * Sets the Open Graph description.
1846
- *
1847
- * Устанавливает описание Open Graph.
1848
- * @param description description / описание
1849
- */
1850
- setDescription(t) {
1851
- return this.set(v.description, t);
1852
- }
1853
- /**
1854
- * Sets the Open Graph locale.
1855
- *
1856
- * Устанавливает локаль Open Graph.
1857
- * @param locale locale (e.g. 'en_US', 'ru_RU') / локаль (например, 'en_US', 'ru_RU')
1858
- */
1859
- setLocale(t) {
1860
- return this.set(v.locale, t);
1861
- }
1862
- /**
1863
- * Sets the Open Graph site name.
1864
- *
1865
- * Устанавливает название сайта Open Graph.
1866
- * @param siteName site name / название сайта
1867
- */
1868
- setSiteName(t) {
1869
- return this.set(v.siteName, t);
1870
- }
1871
- }
1872
- class Tt extends dt {
1873
- constructor() {
1874
- super(Object.values(b));
1875
- }
1876
- /**
1877
- * Gets the Twitter Card type.
1878
- *
1879
- * Получает тип Twitter Card.
1880
- */
1881
- getCard() {
1882
- return this.get(b.card);
1883
- }
1884
- /**
1885
- * Gets the website or brand @username.
1886
- *
1887
- * Получает аккаунт сайта или бренда (@username).
1888
- */
1889
- getSite() {
1890
- return this.get(b.site);
1891
- }
1892
- /**
1893
- * Gets the content creator @username.
1894
- *
1895
- * Получает автора контента (@username).
1896
- */
1897
- getCreator() {
1898
- return this.get(b.creator);
1899
- }
1900
- /**
1901
- * Gets the page URL.
1902
- *
1903
- * Получает URL страницы.
1904
- */
1905
- getUrl() {
1906
- return this.get(b.url);
1907
- }
1908
- /**
1909
- * Gets the card title.
1910
- *
1911
- * Получает заголовок карточки.
1912
- */
1913
- getTitle() {
1914
- return this.get(b.title);
1915
- }
1916
- /**
1917
- * Gets the card description.
1918
- *
1919
- * Получает описание карточки.
1920
- */
1921
- getDescription() {
1922
- return this.get(b.description);
1923
- }
1924
- /**
1925
- * Gets the card image URL.
1926
- *
1927
- * Получает URL изображения карточки.
1928
- */
1929
- getImage() {
1930
- return this.get(b.image);
1931
- }
1932
- /**
1933
- * Sets the Twitter Card type.
1934
- *
1935
- * Устанавливает тип Twitter Card.
1936
- * @param card card type / тип карточки
1937
- */
1938
- setCard(t) {
1939
- return this.set(b.card, t), this;
1940
- }
1941
- /**
1942
- * Sets the website or brand @username.
1943
- *
1944
- * Устанавливает аккаунт сайта или бренда (@username).
1945
- * @param site @username / аккаунт
1946
- */
1947
- setSite(t) {
1948
- return this.set(b.site, t), this;
1949
- }
1950
- /**
1951
- * Sets the content creator @username.
1952
- *
1953
- * Устанавливает автора контента (@username).
1954
- * @param creator @username / аккаунт автора
1955
- */
1956
- setCreator(t) {
1957
- return this.set(b.creator, t), this;
1958
- }
1959
- /**
1960
- * Sets the page URL.
1961
- *
1962
- * Устанавливает URL страницы.
1963
- * @param url URL / URL
1964
- */
1965
- setUrl(t) {
1966
- return this.set(b.url, t), this;
1967
- }
1968
- /**
1969
- * Sets the card title.
1970
- *
1971
- * Устанавливает заголовок карточки.
1972
- * @param title title / заголовок
1973
- */
1974
- setTitle(t) {
1975
- return this.set(b.title, t), this;
1976
- }
1977
- /**
1978
- * Sets the card description.
1979
- *
1980
- * Устанавливает описание карточки.
1981
- * @param description description / описание
1982
- */
1983
- setDescription(t) {
1984
- return this.set(b.description, t), this;
1985
- }
1986
- /**
1987
- * Sets the card image URL.
1988
- *
1989
- * Устанавливает URL изображения карточки.
1990
- * @param image image URL / URL изображения
1991
- */
1992
- setImage(t) {
1993
- return this.set(b.image, t), this;
1994
- }
1995
- }
1996
- class Gt extends dt {
1997
- /**
1998
- * Creates an instance of Meta with integrated Open Graph and Twitter Card support.
1999
- *
2000
- * Создает экземпляр Meta с интегрированной поддержкой Open Graph и Twitter Card.
2001
- */
2002
- constructor() {
2003
- super(Object.values(L));
2004
- u(this, "suffix");
2005
- u(this, "og");
2006
- u(this, "twitter");
2007
- this.og = new Ot(), this.twitter = new Tt();
2008
- }
2009
- /**
2010
- * Gets the MetaOg instance for advanced Open Graph operations.
2011
- *
2012
- * Получает экземпляр MetaOg для расширенных операций с Open Graph.
2013
- */
2014
- getOg() {
2015
- return this.og;
2016
- }
2017
- /**
2018
- * Gets the MetaTwitter instance for advanced Twitter Card operations.
2019
- *
2020
- * Получает экземпляр MetaTwitter для расширенных операций с Twitter Card.
2021
- */
2022
- getTwitter() {
2023
- return this.twitter;
2024
- }
2025
- /**
2026
- * Gets the page title without suffix.
2027
- *
2028
- * Получает заголовок страницы без суффикса.
2029
- */
2030
- getTitle() {
2031
- return y() ? document.title.replace(this.getSuffix(), "").trim() : "";
2032
- }
2033
- /**
2034
- * Gets the keywords meta tag.
2035
- *
2036
- * Получает мета-тег keywords.
2037
- */
2038
- getKeywords() {
2039
- return this.get(L.keywords);
2040
- }
2041
- /**
2042
- * Gets the description meta tag.
2043
- *
2044
- * Получает мета-тег description.
2045
- */
2046
- getDescription() {
2047
- return this.get(L.description);
2048
- }
2049
- /**
2050
- * Gets the Open Graph image URL.
2051
- *
2052
- * Получает URL изображения Open Graph.
2053
- */
2054
- getImage() {
2055
- return this.og.getImage();
2056
- }
2057
- /**
2058
- * Gets the canonical URL.
2059
- *
2060
- * Получает канонический URL.
2061
- */
2062
- getCanonical() {
2063
- return this.get(L.canonical);
2064
- }
2065
- /**
2066
- * Gets the robots meta tag value.
2067
- *
2068
- * Получает значение мета-тега robots.
2069
- */
2070
- getRobots() {
2071
- return this.get(L.robots);
2072
- }
2073
- /**
2074
- * Gets the author meta tag.
2075
- *
2076
- * Получает мета-тег author.
2077
- */
2078
- getAuthor() {
2079
- return this.get(L.author);
2080
- }
2081
- /**
2082
- * Gets the Open Graph site name.
2083
- *
2084
- * Получает название сайта Open Graph.
2085
- */
2086
- getSiteName() {
2087
- return this.og.getSiteName();
2088
- }
2089
- /**
2090
- * Gets the Open Graph locale.
2091
- *
2092
- * Получает локаль Open Graph.
2093
- */
2094
- getLocale() {
2095
- return this.og.getLocale();
2096
- }
2097
- /**
2098
- * Sets the page title (with suffix) and updates Open Graph and Twitter Card titles.
2099
- *
2100
- * Устанавливает заголовок страницы (с суффиксом) и обновляет заголовки Open Graph и Twitter Card.
2101
- * @param title page title / заголовок страницы
2102
- */
2103
- setTitle(e) {
2104
- if (y()) {
2105
- const s = _(e) ? `${e}${this.getSuffix()}` : this.suffix ? this.suffix : "";
2106
- document.title = s, this.og.setTitle(s), this.twitter.setTitle(s);
2107
- }
2108
- return this;
2109
- }
2110
- /**
2111
- * Sets the keywords meta tag.
2112
- *
2113
- * Устанавливает мета-тег keywords.
2114
- * @param keywords keywords as string or array / ключевые слова в виде строки или массива
2115
- */
2116
- setKeywords(e) {
2117
- return this.set(L.keywords, W(e).join(", ")), this;
2118
- }
2119
- /**
2120
- * Sets the description meta tag.
2121
- *
2122
- * Устанавливает мета-тег description.
2123
- * @param description page description / описание страницы
2124
- */
2125
- setDescription(e) {
2126
- return this.set(L.description, e), this;
2127
- }
2128
- /**
2129
- * Sets the image for Open Graph and Twitter Card.
2130
- *
2131
- * Устанавливает изображение для Open Graph и Twitter Card.
2132
- * @param image image URL / URL изображения
2133
- */
2134
- setImage(e) {
2135
- return this.og.setImage(e), this.twitter.setImage(e), this;
2136
- }
2137
- /**
2138
- * Sets the canonical URL and updates Open Graph and Twitter Card URLs.
2139
- *
2140
- * Устанавливает канонический URL и обновляет URL для Open Graph и Twitter Card.
2141
- * @param canonical canonical URL / канонический URL
2142
- */
2143
- setCanonical(e) {
2144
- return this.set(L.canonical, e), this.og.setUrl(e), this.twitter.setUrl(e), this;
2145
- }
2146
- /**
2147
- * Sets the robots meta tag.
2148
- *
2149
- * Устанавливает мета-тег robots.
2150
- * @param robots robots directive / директива robots
2151
- */
2152
- setRobots(e) {
2153
- return this.set(L.robots, e), this;
2154
- }
2155
- /**
2156
- * Sets the author meta tag.
2157
- *
2158
- * Устанавливает мета-тег author.
2159
- * @param author author name / имя автора
2160
- */
2161
- setAuthor(e) {
2162
- return this.set(L.author, e), this;
2163
- }
2164
- /**
2165
- * Sets the site name for Open Graph and Twitter Card.
2166
- *
2167
- * Устанавливает название сайта для Open Graph и Twitter Card.
2168
- * @param siteName site name / название сайта
2169
- */
2170
- setSiteName(e) {
2171
- return this.og.setSiteName(e), this.twitter.setSite(e), this;
2172
- }
2173
- /**
2174
- * Sets the locale for Open Graph.
2175
- *
2176
- * Устанавливает локаль для Open Graph.
2177
- * @param locale locale (e.g. 'en_US', 'ru_RU') / локаль (например, 'en_US', 'ru_RU')
2178
- */
2179
- setLocale(e) {
2180
- return this.og.setLocale(e), this;
2181
- }
2182
- /**
2183
- * Sets the suffix to append to page title.
2184
- *
2185
- * Устанавливает суффикс для добавления к заголовку страницы.
2186
- * @param suffix title suffix (e.g. 'My Site') / суффикс заголовка (например, 'Мой Сайт')
2187
- */
2188
- setSuffix(e) {
2189
- this.suffix = e;
2190
- }
2191
- /**
2192
- * Generates the complete HTML for all meta-tags including Open Graph and Twitter Card.
2193
- *
2194
- * Генерирует полный HTML для всех мета-тегов, включая Open Graph и Twitter Card.
2195
- */
2196
- html() {
2197
- return `${super.html()}${this.og.html()}${this.twitter.html()}`;
2198
- }
2199
- /**
2200
- * Gets the formatted suffix with separator.
2201
- *
2202
- * Получает отформатированный суффикс с разделителем.
2203
- */
2204
- getSuffix() {
2205
- return _(this.suffix) ? ` - ${this.suffix}` : "";
2206
- }
2207
- }
2208
- const te = [
2209
- "d",
2210
- "e",
2211
- "f",
2212
- "g",
2213
- "h",
2214
- "i",
2215
- "j",
2216
- "k",
2217
- "l",
2218
- "m",
2219
- "n",
2220
- "o",
2221
- "p",
2222
- "q",
2223
- "r",
2224
- "s",
2225
- "t",
2226
- "u",
2227
- "v"
2228
- ], ee = (i, t = {}) => {
2229
- let e = String(i);
2230
- if (i.match(/%[a-z]/)) {
2231
- let s = 0;
2232
- $(t, (n) => {
2233
- e = e.replace(new RegExp(`%${te[s++]}`, "g"), String(n));
2234
- });
2235
- }
2236
- return F(t) && $(t, (s, n) => {
2237
- e = e.replace(
2238
- new RegExp(`\\[${n}\\](.*?)\\[/${n}\\]`, "g"),
2239
- (o, a) => String(s).replace(/\[content]/g, a)
2240
- ).replace(new RegExp(`\\[${n}\\]`, "g"), String(s));
2241
- }), e;
2242
- }, I = class I {
2243
- /**
2244
- * Getting the translation text by its code.
2245
- *
2246
- * Получение текста перевода по его коду.
2247
- * @param name code name/ название кода
2248
- * @param replacement If set, replaces the text with the specified values/ если установлено, заменяет текст на указанные значения
2249
- */
2250
- static async get(t, e) {
2251
- var n, o;
2252
- const s = this.getName(t);
2253
- return s in this.data ? this.replacement(this.data[s], e) : (V.isLocalhost() || await this.add(t), this.replacement((o = (n = this.data) == null ? void 0 : n[s]) != null ? o : t));
2254
- }
2255
- /**
2256
- * Getting the translation text by its code (Sync).
2257
- *
2258
- * Получение текста перевода по его коду (Sync).
2259
- * @param name code name/ название кода
2260
- * @param first If set to false, returns an empty string if there is no text/
2261
- * если установлено false, возвращает пустую строку, если нет текста
2262
- * @param replacement If set, replaces the text with the specified values/
2263
- * если установлено, заменяет текст на указанные значения
2264
- */
2265
- static getSync(t, e = !1, s) {
2266
- const n = this.getName(t);
2267
- return n in this.data ? this.replacement(String(this.data[n]), s) : e ? " " : t;
2268
- }
2269
- /**
2270
- * Getting a list of translations by an array of text codes.
2271
- *
2272
- * Получение списка переводов по массиву кодов текста.
2273
- * @param names list of codes to get translations/ список кодов для получения переводов
2274
- */
2275
- static getList(t) {
2276
- return new Promise((e) => {
2277
- const s = {};
2278
- let n = 0;
2279
- for (const o of t) {
2280
- const a = Array.isArray(o) ? o[0] : o, c = Array.isArray(o) ? o.slice(1) : void 0;
2281
- this.get(a, c).then((h) => {
2282
- s[a] = h, ++n >= t.length && e(s);
2283
- });
2284
- }
2285
- });
2286
- }
2287
- /**
2288
- * Getting a list of translations by an array of text codes.
2289
- *
2290
- * Получение списка переводов по массиву кодов текста.
2291
- * @param names list of codes to get translations/ список кодов для получения переводов
2292
- * @param first If set to false, returns an empty string if there is no text/
2293
- * если установлено false, возвращает пустую строку, если нет текста
2294
- */
2295
- static getListSync(t, e = !1) {
2296
- const s = {};
2297
- for (const n of t) {
2298
- const o = Array.isArray(n) ? n[0] : n, a = Array.isArray(n) ? n.slice(1) : void 0;
2299
- s[o] = this.getSync(o, e, a);
2300
- }
2301
- return s;
2302
- }
2303
- /**
2304
- * Added a list of translated texts.
2305
- *
2306
- * Добавлен список переведенных текстов.
2307
- * @param names list of codes to get translations/ список кодов для получения переводов
2308
- */
2309
- static add(t) {
2310
- return new Promise((e) => {
2311
- this.getNamesNone(t).length > 0 ? (this.cache.push(...this.getNamesNone(t)), this.resolveList.push(e), this.timeout && clearTimeout(this.timeout), this.timeout = setTimeout(() => {
2312
- this.timeout = void 0, this.make().then(() => {
2313
- this.resolveList.forEach((n) => n()), this.resolveList = [];
2314
- });
2315
- }, 160)) : e();
2316
- });
2317
- }
2318
- /**
2319
- * Adds texts in sync mode.
2320
- *
2321
- * Добавляет тексты в режиме синхронизации.
2322
- * @param data list of texts in the form of key-value/ список текстов в виде ключ-значение
2323
- */
2324
- static addSync(t) {
2325
- $(t, (e, s) => {
2326
- ct(e) && _(e) && (this.data[this.getName(s)] = e);
2327
- });
2328
- }
2329
- /**
2330
- * Adding data in the form of a query or directly, depending on the execution environment.
2331
- *
2332
- * Добавление данных в виде запроса или напрямую, в зависимости от среды выполнения.
2333
- * @param data list of texts in the form of key-value/ список текстов в виде ключ-значение
2334
- */
2335
- static async addNormalOrSync(t) {
2336
- if (_(t))
2337
- if (V.isLocalhost())
2338
- this.addSync(t);
2339
- else {
2340
- const e = Object.keys(t);
2341
- e.length > 0 && await this.add(e);
2342
- }
2343
- }
2344
- /**
2345
- * Change the path to the script for obtaining the translation.
2346
- *
2347
- * Изменить путь к скрипту для получения перевода.
2348
- * @param url path to the script/ путь к скрипту
2349
- */
2350
- static setUrl(t) {
2351
- return this.url = t, I;
2352
- }
2353
- static setPropsName(t) {
2354
- return this.propsName = t, this;
2355
- }
2356
- /**
2357
- * Getting the full title for translation.
2358
- *
2359
- * Получение полного названия для перевода.
2360
- * @param name code name/ название кода
2361
- */
2362
- static getName(t) {
2363
- return `${w.getLocation()}-${t}`;
2364
- }
2365
- /**
2366
- * Returns a list of names that are not yet in the list.
2367
- *
2368
- * Возвращает список имен, которых еще нет в списке.
2369
- * @param names list of codes to get translations/ список кодов для получения переводов
2370
- */
2371
- static getNamesNone(t) {
2372
- const e = [];
2373
- return W(t).forEach((s) => {
2374
- s !== "__TRANSLATE_START__" && s !== "__TRANSLATE_END__" && !(this.getName(s) in this.data) && e.push(s);
2375
- }), e;
2376
- }
2377
- /**
2378
- * Getting the list of translations from the server.
2379
- *
2380
- * Получение списка переводов с сервера.
2381
- */
2382
- static async getResponse() {
2383
- const t = await V.get({
2384
- api: !1,
2385
- path: this.url,
2386
- request: {
2387
- [this.propsName]: this.cache
2388
- },
2389
- toData: !0,
2390
- global: !0
2391
- });
2392
- return t != null ? t : {};
2393
- }
2394
- /**
2395
- * Replaces the text with the specified values.
2396
- *
2397
- * Заменяет текст на указанные значения.
2398
- * @param text text to replace/ текст для замены
2399
- * @param replacement values for replacement/ значения для замены
2400
- */
2401
- static replacement(t, e) {
2402
- return e ? ee(t, e) : t;
2403
- }
2404
- /**
2405
- * Adding translation data from the server.
2406
- *
2407
- * Добавление данных по переводу с сервера.
2408
- */
2409
- static async make() {
2410
- const t = await this.getResponse();
2411
- this.cache.forEach((e) => {
2412
- var s;
2413
- this.data[this.getName(e)] = (s = t == null ? void 0 : t[e]) != null ? s : "";
2414
- }), this.cache = [];
2415
- }
2416
- };
2417
- u(I, "url", "/api/translate"), u(I, "propsName", "list"), u(I, "data", {}), u(I, "cache", []), u(I, "resolveList", []), u(I, "timeout");
2418
- let q = I;
2419
- function gt(i) {
2420
- return Array.isArray(i);
2421
- }
2422
- function Ae(i) {
2423
- var t;
2424
- return ct(i) ? i.trim() : gt(i) && i.findIndex((e) => S(e)) === -1 ? i.join(",") : S(i) ? JSON.stringify(i) : i === !0 ? "1" : i === !1 ? "0" : (t = i == null ? void 0 : i.toString()) != null ? t : "";
2425
- }
2426
- function ie(i, t) {
2427
- return Array(t).fill(i);
2428
- }
2429
- function Be(i) {
2430
- var t;
2431
- if (y())
2432
- return (t = document.querySelector(i)) != null ? t : void 0;
2433
- }
2434
- function Fe(i) {
2435
- if (y())
2436
- return document.querySelectorAll(i);
2437
- }
2438
- function xe(i) {
2439
- i.preventDefault(), i.stopPropagation();
2440
- }
2441
- function se(i, t, e) {
2442
- const s = () => {
2443
- i(), t != null && t() ? se(i, t, e) : e == null || e();
2444
- };
2445
- y() ? requestAnimationFrame(s) : s();
2446
- }
2447
- function Ee(i) {
2448
- var s;
2449
- const t = {}, e = vt(i);
2450
- if (e)
2451
- for (const n of e.attributes)
2452
- t[n.name] = (s = (n == null ? void 0 : n.value) || (n == null ? void 0 : n.textContent)) != null ? s : void 0;
2453
- return t;
2454
- }
2455
- async function Pe(i) {
2456
- var t, e;
2457
- return (e = (t = i == null ? void 0 : i.clipboardData) == null ? void 0 : t.getData("text")) != null ? e : await navigator.clipboard.readText() || "";
2458
- }
2459
- let yt = z(1e5, 9e5);
2460
- function Y(i, t) {
2461
- const e = vt(i);
2462
- return e ? (_(e.id) || e.setAttribute("id", `id-${yt++}`), t ? `#${e.id}${t}`.trim() : e.id) : `id-${yt++}`;
2463
- }
2464
- function St(i, t = "ig", e = ":value") {
2465
- const s = i.replace(/([[\]\\^$.?*+()/])/g, "\\$1");
2466
- return new RegExp(e.replace(/:value/g, s), t);
2467
- }
2468
- function re(i, t) {
2469
- var n;
2470
- const e = t.split(".", 2), s = e[0];
2471
- return s && (i != null && i[s]) && F(i[s]) && (e != null && e[1]) ? re(i[s], e[1]) : (n = s && (i == null ? void 0 : i[s])) != null ? n : "";
2472
- }
2473
- function He(i) {
2474
- var t, e, s;
2475
- return (s = (t = i == null ? void 0 : i.key) != null ? t : i == null ? void 0 : i.code) != null ? s : (e = i == null ? void 0 : i.keyCode) == null ? void 0 : e.toString();
2476
- }
2477
- function wt(i) {
2478
- return $(i, (t) => t.length);
2479
- }
2480
- function Re(i) {
2481
- return Math.max(...wt(i));
2482
- }
2483
- function We(i) {
2484
- return Math.min(...wt(i));
2485
- }
2486
- function ne(i) {
2487
- var t, e, s, n;
2488
- return (i == null ? void 0 : i.clientX) || ((e = (t = i == null ? void 0 : i.targetTouches) == null ? void 0 : t[0]) == null ? void 0 : e.clientX) || ((n = (s = i == null ? void 0 : i.touches) == null ? void 0 : s[0]) == null ? void 0 : n.clientX) || 0;
2489
- }
2490
- function oe(i) {
2491
- var t, e, s, n;
2492
- return (i == null ? void 0 : i.clientY) || ((e = (t = i == null ? void 0 : i.targetTouches) == null ? void 0 : t[0]) == null ? void 0 : e.clientY) || ((n = (s = i == null ? void 0 : i.touches) == null ? void 0 : s[0]) == null ? void 0 : n.clientY) || 0;
2493
- }
2494
- function je(i) {
2495
- return {
2496
- x: ne(i),
2497
- y: oe(i)
2498
- };
2499
- }
2500
- function Ue(i, t) {
2501
- const e = {};
2502
- return t.forEach((s) => {
2503
- s in i && i[s] !== void 0 && (e[s] = i[s]);
2504
- }), e;
2505
- }
2506
- function ze(i, t = void 0) {
2507
- const e = {};
2508
- return $(i, (s, n) => {
2509
- s !== t && (e[n] = s);
2510
- }), e;
2511
- }
2512
- function _e(i) {
2513
- return F(i) ? i : {};
2514
- }
2515
- function ae(i, t) {
2516
- return ie(i, t).join("");
2517
- }
2518
- function Ke(i, t, e = "#", s = 2, n = 12) {
2519
- const o = z(i, t), a = [];
2520
- for (let c = 0; c < o; c++)
2521
- a.push(ae(e, z(s, n)));
2522
- return a.join(" ");
2523
- }
2524
- function Ze(i, t) {
2525
- const e = i != null ? i : 0;
2526
- return t > e ? 100 / (t - e) : 0;
2527
- }
2528
- function Ve(i, t) {
2529
- const e = i != null ? i : 0;
2530
- return t > e ? (t - e) / 100 : 0;
2531
- }
2532
- const $t = 0;
2533
- function Ye(i, t, e) {
2534
- const s = t == null ? void 0 : t.closest(i);
2535
- if (t && s && s.scrollHeight !== s.offsetHeight)
2536
- if (e) {
2537
- const n = e.getBoundingClientRect(), o = s.getBoundingClientRect(), a = t.getBoundingClientRect();
2538
- s.scrollTop = t.offsetTop - (n.top - o.top) - (n.height / 2 - a.height / 2), s.scrollTop + s.offsetHeight < t.offsetTop + t.offsetHeight && (s.scrollTop = t.offsetTop + t.offsetHeight - s.offsetHeight);
2539
- } else s.scrollTop > t.offsetTop ? s.scrollTop = t.offsetTop - $t : s.scrollTop + s.offsetHeight < t.offsetTop + t.offsetHeight && (s.scrollTop = t.offsetTop + t.offsetHeight - s.offsetHeight + $t);
2540
- }
2541
- function qe(i, t) {
2542
- return i.indexOf(t) !== -1;
2543
- }
2544
- async function Je() {
2545
- if (y()) {
2546
- const i = await bt.get();
2547
- document.body.style.setProperty("--sys-scrollbar-offset", `${i}px`);
2548
- }
2549
- }
2550
- function Qe(i, t) {
2551
- const e = {};
2552
- return S(i) && S(t) && $(i, (s, n) => {
2553
- n in t && (e[n] = s);
2554
- }), e;
2555
- }
2556
- function Xe(i, t) {
2557
- let e = Object.keys(i).length !== Object.keys(t).length;
2558
- return e || $(i, (s, n) => {
2559
- s !== (t == null ? void 0 : t[n]) && (e = !0);
2560
- }), e;
2561
- }
2562
- function Me(i) {
2563
- switch (typeof i) {
2564
- case "number":
2565
- return !0;
2566
- case "string":
2567
- return !!i.match(/^([0-9]+|[0-9]+\.[0-9]+)$/);
2568
- default:
2569
- return !1;
2570
- }
2571
- }
2572
- function Oe(i, t) {
2573
- const e = Math.floor(t);
2574
- return i >= e && i < e + 1;
2575
- }
2576
- function Te(i, t) {
2577
- return Array.isArray(i) ? i.every((e) => j(e, t)) : j(i, t);
2578
- }
2579
- function ue(i) {
2580
- return [...new Set(i)];
2581
- }
2582
- function R(i, t, e = !0) {
2583
- const s = U(i);
2584
- return S(i) && S(t) && $(
2585
- t,
2586
- (n, o) => {
2587
- const a = i == null ? void 0 : i[o];
2588
- S(a) && S(n) ? e && Array.isArray(a) && Array.isArray(n) ? s[o] = U(ue([...a, ...n])) : s[o] = R(
2589
- Array.isArray(a) ? { ...a } : a,
2590
- n,
2591
- e
2592
- ) : s[o] = S(n) ? U(n) : n;
2593
- }
2594
- ), s;
2595
- }
2596
- function Ge(i, t) {
2597
- let e = i;
2598
- return $(t, (s, n) => {
2599
- e = e.replace(St(`[${n}]`), lt(s));
2600
- }), e;
2601
- }
2602
- function ti(i) {
2603
- const t = N(i);
2604
- if (t > 0) {
2605
- const e = String(Math.floor(t / 60)).padStart(2, "0"), s = String(t % 60).padStart(2, "0");
2606
- return `${e}:${s}`;
2607
- }
2608
- return "00:00";
2609
- }
2610
- function ei(i, t, {
2611
- multiple: e = !1,
2612
- maxlength: s = 0,
2613
- alwaysChange: n = !0,
2614
- notEmpty: o = !1
2615
- }) {
2616
- if (e) {
2617
- if (gt(i)) {
2618
- const a = i.indexOf(t), c = [...i];
2619
- return a !== -1 ? (!o || c.length > 1) && c.splice(a, 1) : (!s || i.length < s) && c.push(t), c;
2620
- }
2621
- return i === t ? [] : i ? [i, t] : [t];
2622
- }
2623
- return n || i !== t ? t : i;
2624
- }
2625
- function ii(i, t, e) {
2626
- if (S(i) && S(t)) {
2627
- if (e) {
2628
- let s = {}, n = !1;
2629
- return $(i, (o, a) => {
2630
- !n && (e === a || e === o) ? (n = !0, s = R(s, t)) : n ? s = R(s, { [a]: o }) : s[a] = S(o) ? U(o) : o;
2631
- }), n ? s : R(i, t);
2632
- }
2633
- if (S(t))
2634
- return R(i, t);
2635
- }
2636
- return U(i);
2637
- }
2638
- function Dt(i) {
2639
- return i.toString().trim().replace(/[^\w- ]+/g, "").replace(/ +/g, "-").replace(/(?<=[A-Z])([A-Z])/g, (t) => `${t.toLowerCase()}`).replace(/-+([a-zA-Z0-9])/g, (...t) => `${String(t[1]).toUpperCase()}`).replace(/^([A-Z])/, (t) => `${t.toLowerCase()}`);
2640
- }
2641
- function si(i) {
2642
- return Dt(i).replace(/^([a-z])/, (t) => `${t.toUpperCase()}`);
2643
- }
2644
- function ri(i) {
2645
- return i.toString().trim().replace(/[^\w- ]+/g, "").replace(/ +/g, "-").replace(/(?<=[A-Z])([A-Z])/g, (t) => `${t.toLowerCase()}`).replace(/^[A-Z]/, (t) => t.toLowerCase()).replace(/(?<=[\w ])[A-Z]/g, (t) => `-${t.toLowerCase()}`).replace(/[A-Z]/g, (t) => t.toLowerCase());
2646
- }
2647
- function ni(i, t, e, s) {
2648
- const n = N(i), o = N(t);
2649
- return t && o < n ? `${pt(o, e, s)}+` : pt(n, e, s);
2650
- }
2651
- const pt = (i, t, e) => t ? new P(e).number(i) : i;
2652
- function ce(i, t) {
2653
- return 1 / i * t;
2654
- }
2655
- function oi(i, t) {
2656
- return ce(i, t) * 100;
2657
- }
2658
- async function ai(i) {
2659
- if (y())
2660
- try {
2661
- await navigator.clipboard.writeText(i);
2662
- } catch (t) {
2663
- document == null || document.execCommand(i);
2664
- }
2665
- }
2666
- class le {
1
+ var et = Object.defineProperty;
2
+ var it = (s, t, e) => t in s ? et(s, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[t] = e;
3
+ var l = (s, t, e) => it(s, typeof t != "symbol" ? t + "" : t, e);
4
+ import { isArray as st, isObjectNotArray as M, forEach as k, toArray as R, isObject as z, toCamelCase as nt, Geo as C, toDate as W, Datetime as rt, EventItem as at, GeoFlag as ut, GeoIntl as lt, isSelected as D, getExp as ht, getColumn as K, ScrollbarWidth as ot, Api as ct, executeFunction as Y, BroadcastMessage as dt, Cookie as gt, Hash as A, isDomRuntime as G, getElementId as L, Loading as P, random as ft, Meta as mt, DataStorage as J, Translate as U, executePromise as vt } from "@dxtmisha/functional-basic";
5
+ export * from "@dxtmisha/functional-basic";
6
+ import { isRef as N, h as yt, computed as a, toRefs as pt, useAttrs as bt, useSlots as It, ref as f, watch as g, triggerRef as St, shallowRef as I, onUnmounted as O, inject as Lt, provide as Ct, watchEffect as Q } from "vue";
7
+ class kt {
2667
8
  /**
2668
9
  * Constructor
2669
10
  * @param props base data/ базовые данные
2670
11
  * @param watch data for tracking/ данные для слежения
2671
12
  */
2672
13
  constructor(t, e = Object.keys(t)) {
2673
- u(this, "cache", {});
14
+ l(this, "cache", {});
2674
15
  this.props = t, this.watch = e;
2675
16
  }
2676
17
  /**
@@ -2680,7 +21,7 @@ class le {
2680
21
  * @param name property name/ название свойства
2681
22
  */
2682
23
  is(t) {
2683
- return gt(t) ? !!t.find((e) => this.isDifferent(e)) : this.isDifferent(t);
24
+ return st(t) ? !!t.find((e) => this.isDifferent(e)) : this.isDifferent(t);
2684
25
  }
2685
26
  /**
2686
27
  * Checks if there are changes in the data.
@@ -2709,11 +50,11 @@ class le {
2709
50
  * @param name property name/ название свойства
2710
51
  */
2711
52
  isDifferent(t) {
2712
- var e, s;
2713
- return ((e = this.cache) == null ? void 0 : e[t]) !== ((s = this.props) == null ? void 0 : s[t]);
53
+ var e, i;
54
+ return ((e = this.cache) == null ? void 0 : e[t]) !== ((i = this.props) == null ? void 0 : i[t]);
2714
55
  }
2715
56
  }
2716
- class he {
57
+ class wt {
2717
58
  /**
2718
59
  * Constructor
2719
60
  * @param props base data/ базовые данные
@@ -2721,10 +62,10 @@ class he {
2721
62
  * функция обратного вызова при изменении значения
2722
63
  * @param changed base data/ данный для слежения
2723
64
  */
2724
- constructor(t, e, s) {
2725
- u(this, "event", {});
2726
- u(this, "changed");
2727
- this.props = t, this.callback = e, this.changed = new le(t, s);
65
+ constructor(t, e, i) {
66
+ l(this, "event", {});
67
+ l(this, "changed");
68
+ this.props = t, this.callback = e, this.changed = new kt(t, i);
2728
69
  }
2729
70
  /**
2730
71
  * Calls the callback function.
@@ -2772,7 +113,7 @@ class he {
2772
113
  this.callback && this.callback(this.event);
2773
114
  }
2774
115
  }
2775
- class ui extends he {
116
+ class Pt extends wt {
2776
117
  /**
2777
118
  * Calls the callback function.
2778
119
  *
@@ -2792,34 +133,37 @@ class ui extends he {
2792
133
  (t || this.changed.isChanged()) && (await this.initEvent(), this.makeCallbackItem(), this.changed.update());
2793
134
  }
2794
135
  }
2795
- function m(i) {
2796
- return Q(i) ? i.value : i;
136
+ function d(s) {
137
+ return N(s) ? s.value : s;
2797
138
  }
2798
- function de(i) {
2799
- return i && "class" in i && typeof i.class == "string" ? i.class : void 0;
139
+ function Dt(s) {
140
+ return s && "class" in s && typeof s.class == "string" ? s.class : void 0;
2800
141
  }
2801
- function ge(i, t, e) {
2802
- const s = de(t);
2803
- return e && s ? `${e}.${s}` : e || s || i;
142
+ function xt(s, t, e) {
143
+ const i = Dt(t);
144
+ return e && i ? `${e}.${i}` : e || i || s;
2804
145
  }
2805
- function fe(i, t, e, s) {
2806
- const n = ge(i, t, s);
2807
- return Et(i, { key: n, ...t }, e);
146
+ function Mt(s, t, e, i) {
147
+ let n = t;
148
+ return (!t || "key" in t) && (n = {
149
+ key: xt(s, t, i),
150
+ ...t
151
+ }), yt(s, n, e);
2808
152
  }
2809
- function at(i, t) {
2810
- const e = i == null ? void 0 : i.class, s = t == null ? void 0 : t.class, n = i == null ? void 0 : i.style, o = t == null ? void 0 : t.style, a = {
2811
- ...i,
153
+ function T(s, t) {
154
+ const e = s == null ? void 0 : s.class, i = t == null ? void 0 : t.class, n = s == null ? void 0 : s.style, r = t == null ? void 0 : t.style, u = {
155
+ ...s,
2812
156
  ...t
2813
157
  };
2814
- return e && s && (a.class = [], e && a.class.push(e), s && a.class.push(s)), n && o && (a.style = [], n && a.style.push(n), o && a.style.push(o)), a;
158
+ return e && i && (u.class = [], e && u.class.push(e), i && u.class.push(i)), n && r && (u.style = [], n && u.style.push(n), r && u.style.push(r)), u;
2815
159
  }
2816
- function me(...i) {
160
+ function Nt(...s) {
2817
161
  let t = {};
2818
- return i.forEach((e) => {
2819
- e && (t = at(t, e));
162
+ return s.forEach((e) => {
163
+ e && (t = T(t, e));
2820
164
  }), t;
2821
165
  }
2822
- class Lt {
166
+ class X {
2823
167
  /**
2824
168
  * Constructor
2825
169
  * @param components list of connected components/ список подключенных компонентов
@@ -2827,7 +171,7 @@ class Lt {
2827
171
  */
2828
172
  constructor(t = {}, e) {
2829
173
  /** Cache for computed properties/ Кэш для вычисляемых свойств */
2830
- u(this, "caching", {});
174
+ l(this, "caching", {});
2831
175
  this.components = t, this.modification = e;
2832
176
  }
2833
177
  /**
@@ -2858,10 +202,10 @@ class Lt {
2858
202
  */
2859
203
  getModification(t, e) {
2860
204
  if (t) {
2861
- t in this.caching || (this.caching[t] = l(() => this.computeModification(t)));
2862
- const s = this.caching[t];
2863
- if (s)
2864
- return e ? me(s.value, e) : s.value;
205
+ t in this.caching || (this.caching[t] = a(() => this.computeModification(t)));
206
+ const i = this.caching[t];
207
+ if (i)
208
+ return e ? Nt(i.value, e) : i.value;
2865
209
  }
2866
210
  return e;
2867
211
  }
@@ -2874,14 +218,14 @@ class Lt {
2874
218
  * @param children sub-elements of the component/ под элементы компонента
2875
219
  * @param index the name of the key/ названия ключа
2876
220
  */
2877
- render(t, e, s, n) {
2878
- const o = this.renderOne(
221
+ render(t, e, i, n) {
222
+ const r = this.renderOne(
2879
223
  t,
2880
224
  e,
2881
- s,
225
+ i,
2882
226
  n
2883
227
  );
2884
- return o ? [o] : [];
228
+ return r ? [r] : [];
2885
229
  }
2886
230
  /**
2887
231
  * Rendering a component by its name.
@@ -2892,14 +236,14 @@ class Lt {
2892
236
  * @param children sub-elements of the component/ под элементы компонента
2893
237
  * @param index the name of the key/ названия ключа
2894
238
  */
2895
- renderOne(t, e, s, n) {
239
+ renderOne(t, e, i, n) {
2896
240
  if (this.is(t)) {
2897
- const o = n != null ? n : t;
2898
- return fe(
241
+ const r = n != null ? n : t;
242
+ return Mt(
2899
243
  this.get(t),
2900
- this.getModification(o, e),
2901
- s,
2902
- o
244
+ this.getModification(r, e),
245
+ i,
246
+ r
2903
247
  );
2904
248
  }
2905
249
  }
@@ -2914,8 +258,8 @@ class Lt {
2914
258
  * @param children sub-elements of the component/ под элементы компонента
2915
259
  * @param index the name of the key/ названия ключа
2916
260
  */
2917
- renderAdd(t, e, s, n, o) {
2918
- return t.push(...this.render(e, s, n, o)), this;
261
+ renderAdd(t, e, i, n, r) {
262
+ return t.push(...this.render(e, i, n, r)), this;
2919
263
  }
2920
264
  /**
2921
265
  * Calculates modified input data for connected components.
@@ -2924,43 +268,43 @@ class Lt {
2924
268
  * @param index the name of this/ название данного
2925
269
  */
2926
270
  computeModification(t) {
2927
- var s;
2928
- const e = m((s = this.modification) == null ? void 0 : s[t]);
2929
- if (e && F(e)) {
271
+ var i;
272
+ const e = d((i = this.modification) == null ? void 0 : i[t]);
273
+ if (e && M(e)) {
2930
274
  const n = {};
2931
- return $(e, (o, a) => {
2932
- n[a] = m(o);
275
+ return k(e, (r, u) => {
276
+ n[u] = d(r);
2933
277
  }), n;
2934
278
  }
2935
279
  return {};
2936
280
  }
2937
281
  }
2938
- class ci extends Lt {
282
+ class Ut extends X {
2939
283
  }
2940
- class li {
284
+ class qt {
2941
285
  /**
2942
286
  * Constructor
2943
287
  * @param name class name/ название класса
2944
288
  * @param props properties/ свойства
2945
289
  * @param options list of additional parameters/ список дополнительных параметров
2946
290
  */
2947
- constructor(t, e, s) {
2948
- u(this, "name");
2949
- u(this, "element", p());
2950
- u(this, "refs");
2951
- u(this, "components");
2952
- u(this, "emits");
2953
- u(this, "classes");
2954
- u(this, "classesSub");
2955
- u(this, "styles");
2956
- u(this, "stylesSub");
2957
- u(this, "attrs");
2958
- u(this, "slots");
2959
- u(this, "dataExpose");
2960
- this.props = e, this.options = s, this.name = this.initName(t), this.refs = this.props ? Pt(this.props) : {}, this.components = new Lt(s == null ? void 0 : s.components, s == null ? void 0 : s.compMod), this.emits = s == null ? void 0 : s.emits, this.classes = l(() => this.updateClasses()), this.styles = l(() => this.updateStyles()), this.attrs = Ht(), this.slots = Rt();
291
+ constructor(t, e, i) {
292
+ l(this, "name");
293
+ l(this, "element", f());
294
+ l(this, "refs");
295
+ l(this, "components");
296
+ l(this, "emits");
297
+ l(this, "classes");
298
+ l(this, "classesSub");
299
+ l(this, "styles");
300
+ l(this, "stylesSub");
301
+ l(this, "attrs");
302
+ l(this, "slots");
303
+ l(this, "dataExpose");
304
+ this.props = e, this.options = i, this.name = this.initName(t), this.refs = this.props ? pt(this.props) : {}, this.components = new X(i == null ? void 0 : i.components, i == null ? void 0 : i.compMod), this.emits = i == null ? void 0 : i.emits, this.classes = a(() => this.updateClasses()), this.styles = a(() => this.updateStyles()), this.attrs = bt(), this.slots = It();
2961
305
  }
2962
306
  init() {
2963
- return this.classesSub = l(() => this.initClasses()), this.stylesSub = l(() => this.initStyles()), this.dataExpose = this.initExpose(), this;
307
+ return this.classesSub = a(() => this.initClasses()), this.stylesSub = a(() => this.initStyles()), this.dataExpose = this.initExpose(), this;
2964
308
  }
2965
309
  /**
2966
310
  * Getting the class name.
@@ -2985,7 +329,7 @@ class li {
2985
329
  * @param name list of class names by levels/ список названий классов по уровням
2986
330
  */
2987
331
  getSubClass(t) {
2988
- return `${this.getName()}__${W(t).join("__")}`;
332
+ return `${this.getName()}__${R(t).join("__")}`;
2989
333
  }
2990
334
  /**
2991
335
  * Getting the class name for the status.
@@ -2994,7 +338,7 @@ class li {
2994
338
  * @param name list of class names by levels/ список названий классов по уровням
2995
339
  */
2996
340
  getStatusClass(t) {
2997
- return `${this.getName()}--${W(t).join("--")}`;
341
+ return `${this.getName()}--${R(t).join("--")}`;
2998
342
  }
2999
343
  /**
3000
344
  * Getting the property name for the style.
@@ -3003,7 +347,7 @@ class li {
3003
347
  * @param name list of class names by levels/ список названий классов по уровням
3004
348
  */
3005
349
  getStyle(t) {
3006
- return `--${this.getName()}-sys-${W(t).join("-")}`;
350
+ return `--${this.getName()}-sys-${R(t).join("-")}`;
3007
351
  }
3008
352
  /**
3009
353
  * Getting additional parameters.
@@ -3041,11 +385,11 @@ class li {
3041
385
  * если передать этот элемент, то слот добавится в него
3042
386
  * @param props property for the slot/ свойство для слота
3043
387
  */
3044
- initSlot(t, e, s = {}) {
388
+ initSlot(t, e, i = {}) {
3045
389
  var n;
3046
390
  if (this.slots && ((n = this.slots) != null && n[t]) && typeof this.slots[t] == "function") {
3047
- const o = this.slots[t](s);
3048
- return e && e.push(o), o;
391
+ const r = this.slots[t](i);
392
+ return e && e.push(r), r;
3049
393
  }
3050
394
  }
3051
395
  /**
@@ -3055,7 +399,7 @@ class li {
3055
399
  * @param classes list of classes for transformation/ список классов для преобразования
3056
400
  */
3057
401
  toClass(t) {
3058
- return F(t) ? t : Array.isArray(t) ? { [t.filter((s) => typeof s == "string" && s.trim() !== "").join(" ")]: !0 } : typeof t == "string" ? { [t]: !0 } : {};
402
+ return M(t) ? t : Array.isArray(t) ? { [t.filter((i) => typeof i == "string" && i.trim() !== "").join(" ")]: !0 } : typeof t == "string" ? { [t]: !0 } : {};
3059
403
  }
3060
404
  /**
3061
405
  * Converts the class name to standard for the current component.
@@ -3064,10 +408,10 @@ class li {
3064
408
  * @param classes list of classes/ список классов
3065
409
  */
3066
410
  toClassName(t) {
3067
- if (S(t)) {
411
+ if (z(t)) {
3068
412
  const e = {};
3069
- return $(t, (s, n) => {
3070
- n.match(/\?\?/) ? e[n.replace(/\?\?/, this.getName())] = s : n.match(/\?/) ? e[n.replace(/\?/, this.getDesign())] = s : e[n] = s;
413
+ return k(t, (i, n) => {
414
+ n.match(/\?\?/) ? e[n.replace(/\?\?/, this.getName())] = i : n.match(/\?/) ? e[n.replace(/\?/, this.getDesign())] = i : e[n] = i;
3071
415
  }), e;
3072
416
  }
3073
417
  return {};
@@ -3079,7 +423,7 @@ class li {
3079
423
  * @param name component name for transformation/ название компонента для преобразования
3080
424
  */
3081
425
  initName(t) {
3082
- return $(t.split(".", 2), (e) => Dt(e));
426
+ return k(t.split(".", 2), (e) => nt(e));
3083
427
  }
3084
428
  /**
3085
429
  * Updating data about the class.
@@ -3087,15 +431,15 @@ class li {
3087
431
  * Обновление данных об классе.
3088
432
  */
3089
433
  updateClasses() {
3090
- var s, n, o, a;
3091
- const t = (s = this.classesSub) == null ? void 0 : s.value, e = (o = (n = this.options) == null ? void 0 : n.classes) == null ? void 0 : o.value;
434
+ var i, n, r, u;
435
+ const t = (i = this.classesSub) == null ? void 0 : i.value, e = (r = (n = this.options) == null ? void 0 : n.classes) == null ? void 0 : r.value;
3092
436
  return t && e ? {
3093
437
  ...t,
3094
438
  ...e,
3095
439
  main: {
3096
440
  ...this.toClass(t == null ? void 0 : t.main),
3097
441
  ...this.toClass(e == null ? void 0 : e.main),
3098
- ...this.toClass((a = this.attrs) == null ? void 0 : a.class)
442
+ ...this.toClass((u = this.attrs) == null ? void 0 : u.class)
3099
443
  }
3100
444
  } : e != null ? e : {
3101
445
  main: {}
@@ -3107,43 +451,43 @@ class li {
3107
451
  * Доработка полученного списка стилей.
3108
452
  */
3109
453
  updateStyles() {
3110
- var s, n, o;
3111
- const t = (s = this.stylesSub) == null ? void 0 : s.value, e = (o = (n = this.options) == null ? void 0 : n.styles) == null ? void 0 : o.value;
454
+ var i, n, r;
455
+ const t = (i = this.stylesSub) == null ? void 0 : i.value, e = (r = (n = this.options) == null ? void 0 : n.styles) == null ? void 0 : r.value;
3112
456
  return t && e ? {
3113
457
  ...t,
3114
458
  ...e
3115
459
  } : e != null ? e : {};
3116
460
  }
3117
461
  }
3118
- function B(i) {
3119
- return Q(i) ? i : p(i);
462
+ function b(s) {
463
+ return N(s) ? s : f(s);
3120
464
  }
3121
- class hi {
465
+ class Yt {
3122
466
  /**
3123
467
  * Constructor
3124
468
  * @param date date for processing. дата для обработки
3125
469
  * @param type type of date format for output. тип формата даты вывода
3126
470
  * @param code country and language code. код страны и языка
3127
471
  */
3128
- constructor(t, e = "date", s = w.getLocation()) {
3129
- u(this, "item");
3130
- u(this, "type");
3131
- u(this, "code");
3132
- u(this, "date");
3133
- u(this, "datetime");
3134
- u(this, "year", l(() => this.date.value && this.datetime.getYear()));
3135
- u(this, "month", l(() => this.date.value && this.datetime.getMonth()));
3136
- u(this, "day", l(() => this.date.value && this.datetime.getDay()));
3137
- u(this, "hour", l(() => this.date.value && this.datetime.getHour()));
3138
- u(this, "minute", l(() => this.date.value && this.datetime.getMinute()));
3139
- u(this, "second", l(() => this.date.value && this.datetime.getSecond()));
3140
- this.item = B(t), this.type = B(e), this.code = B(s), this.date = p(A(this.item.value)), this.datetime = new ht(
472
+ constructor(t, e = "date", i = C.getLocation()) {
473
+ l(this, "item");
474
+ l(this, "type");
475
+ l(this, "code");
476
+ l(this, "date");
477
+ l(this, "datetime");
478
+ l(this, "year", a(() => this.date.value && this.datetime.getYear()));
479
+ l(this, "month", a(() => this.date.value && this.datetime.getMonth()));
480
+ l(this, "day", a(() => this.date.value && this.datetime.getDay()));
481
+ l(this, "hour", a(() => this.date.value && this.datetime.getHour()));
482
+ l(this, "minute", a(() => this.date.value && this.datetime.getMinute()));
483
+ l(this, "second", a(() => this.date.value && this.datetime.getSecond()));
484
+ this.item = b(t), this.type = b(e), this.code = b(i), this.date = f(W(this.item.value)), this.datetime = new rt(
3141
485
  this.date.value,
3142
486
  this.type.value,
3143
487
  this.code.value
3144
- ), f(this.item, (n) => {
3145
- this.date.value = A(n);
3146
- }), f(this.type, (n) => this.datetime.setType(n)), f(this.code, (n) => this.datetime.setCode(n)), f(this.date, (n) => this.datetime.setDate(n)), this.datetime.setWatch(() => Wt(this.date));
488
+ ), g(this.item, (n) => {
489
+ this.date.value = W(n);
490
+ }), g(this.type, (n) => this.datetime.setType(n)), g(this.code, (n) => this.datetime.setCode(n)), g(this.date, (n) => this.datetime.setDate(n)), this.datetime.setWatch(() => St(this.date));
3147
491
  }
3148
492
  /**
3149
493
  * Returns the basic data for the date.
@@ -3175,7 +519,7 @@ class hi {
3175
519
  * Возвращает формат часов.
3176
520
  */
3177
521
  getHoursType() {
3178
- return l(() => this.date.value && this.datetime.getHoursType());
522
+ return a(() => this.date.value && this.datetime.getHoursType());
3179
523
  }
3180
524
  /**
3181
525
  * Returns the code of the first day of the week.
@@ -3183,7 +527,7 @@ class hi {
3183
527
  * Возвращает код первого дня недели.
3184
528
  */
3185
529
  getFirstDayCode() {
3186
- return l(() => this.date.value && this.datetime.getFirstDayCode());
530
+ return a(() => this.date.value && this.datetime.getFirstDayCode());
3187
531
  }
3188
532
  /**
3189
533
  * The method returns the year of the specified date according to local time.
@@ -3241,7 +585,7 @@ class hi {
3241
585
  * Возвращает последний день недели.
3242
586
  */
3243
587
  getMaxDay() {
3244
- return l(() => this.date.value && this.datetime.getMaxDay());
588
+ return a(() => this.date.value && this.datetime.getMaxDay());
3245
589
  }
3246
590
  /**
3247
591
  * Enables language-sensitive date and time formatting.
@@ -3251,7 +595,7 @@ class hi {
3251
595
  * @param styleOptions the representation of the month. представление месяца
3252
596
  */
3253
597
  locale(t = this.type.value, e) {
3254
- return l(() => this.date.value && this.datetime.locale(t, e));
598
+ return a(() => this.date.value && this.datetime.locale(t, e));
3255
599
  }
3256
600
  /**
3257
601
  * Output of standard data.
@@ -3260,10 +604,10 @@ class hi {
3260
604
  * @param timeZone add time zone. добавить временную зону
3261
605
  */
3262
606
  standard(t = !0) {
3263
- return l(() => this.date.value && this.datetime.standard(t));
607
+ return a(() => this.date.value && this.datetime.standard(t));
3264
608
  }
3265
609
  }
3266
- class di extends Ft {
610
+ class Gt extends at {
3267
611
  /**
3268
612
  * Classes Constructor
3269
613
  * @param elementSelector element/ элемент
@@ -3276,26 +620,26 @@ class di extends Ft {
3276
620
  * @param detail an event-dependent value associated with the event/ зависимое от события
3277
621
  * значение, связанное с событием
3278
622
  */
3279
- constructor(t, e, s = ["click"], n, o, a) {
3280
- const c = B(t), h = B(e);
623
+ constructor(t, e, i = ["click"], n, r, u) {
624
+ const h = b(t), o = b(e);
3281
625
  super(
3282
- c.value,
3283
- s,
626
+ h.value,
627
+ i,
3284
628
  n,
3285
- o,
3286
- a
3287
- ), h.value && this.setElementControl(h.value), f(c, (d) => this.setElement(d)), f(h, (d) => this.setElementControl(d));
629
+ r,
630
+ u
631
+ ), o.value && this.setElementControl(o.value), g(h, (c) => this.setElement(c)), g(o, (c) => this.setElementControl(c));
3288
632
  }
3289
633
  }
3290
- class gi {
634
+ class Jt {
3291
635
  /**
3292
636
  * Constructor
3293
637
  * @param code country and language code/ код страны и языка
3294
638
  */
3295
- constructor(t = w.getLocation()) {
3296
- u(this, "code");
3297
- u(this, "flag");
3298
- this.code = B(t), this.flag = new ot(this.code.value), f(this.code, (e) => this.flag.setCode(e));
639
+ constructor(t = C.getLocation()) {
640
+ l(this, "code");
641
+ l(this, "flag");
642
+ this.code = b(t), this.flag = new ut(this.code.value), g(this.code, (e) => this.flag.setCode(e));
3299
643
  }
3300
644
  /**
3301
645
  * Obtaining a reactive object with the country code.
@@ -3312,7 +656,7 @@ class gi {
3312
656
  * @param code country code/ код страны
3313
657
  */
3314
658
  get(t = this.code.value) {
3315
- return l(() => this.flag.get(t));
659
+ return a(() => this.flag.get(t));
3316
660
  }
3317
661
  /**
3318
662
  * Getting a link to the flag.
@@ -3321,7 +665,7 @@ class gi {
3321
665
  * @param code country code/ код страны
3322
666
  */
3323
667
  getFlag(t = this.code.value) {
3324
- return l(() => {
668
+ return a(() => {
3325
669
  var e;
3326
670
  return (e = this.flag.get(t)) == null ? void 0 : e.icon;
3327
671
  });
@@ -3333,7 +677,7 @@ class gi {
3333
677
  * @param codes country code/ код страны
3334
678
  */
3335
679
  getList(t) {
3336
- return l(() => this.flag.getList(t));
680
+ return a(() => this.flag.getList(t));
3337
681
  }
3338
682
  /**
3339
683
  * Getting a list of countries by an array of codes in national language.
@@ -3342,10 +686,10 @@ class gi {
3342
686
  * @param codes country code/ код страны.
3343
687
  */
3344
688
  getNational(t) {
3345
- return l(() => this.flag.getNational(t));
689
+ return a(() => this.flag.getNational(t));
3346
690
  }
3347
691
  }
3348
- const C = class C {
692
+ const v = class v {
3349
693
  /**
3350
694
  * Information about the current country.
3351
695
  *
@@ -3394,23 +738,23 @@ const C = class C {
3394
738
  * код страны, полный вид язык-страна или один из них
3395
739
  */
3396
740
  static set(t) {
3397
- w.set(t, !0), this.item.value = w.getItem();
741
+ C.set(t, !0), this.item.value = C.getItem();
3398
742
  }
3399
743
  };
3400
- u(C, "item", Z(w.get())), u(C, "country", l(() => C.item.value.country)), u(C, "language", l(() => C.item.value.language)), u(C, "standard", l(() => C.item.value.standard)), u(C, "firstDay", l(() => C.item.value.firstDay));
3401
- let K = C;
3402
- class ye {
744
+ l(v, "item", I(C.get())), l(v, "country", a(() => v.item.value.country)), l(v, "language", a(() => v.item.value.language)), l(v, "standard", a(() => v.item.value.standard)), l(v, "firstDay", a(() => v.item.value.firstDay));
745
+ let w = v;
746
+ class Bt {
3403
747
  /**
3404
748
  * Constructor
3405
749
  * @param code country code, full form language-country or one of them/
3406
750
  * код страны, полный вид язык-страна или один из них
3407
751
  */
3408
752
  constructor(t) {
3409
- u(this, "location");
3410
- u(this, "intl");
3411
- this.location = B(t), this.intl = l(() => {
753
+ l(this, "location");
754
+ l(this, "intl");
755
+ this.location = b(t), this.intl = a(() => {
3412
756
  var e;
3413
- return new P((e = this.location.value) != null ? e : K.getLanguage().value);
757
+ return new lt((e = this.location.value) != null ? e : w.getLanguage().value);
3414
758
  });
3415
759
  }
3416
760
  /**
@@ -3422,7 +766,7 @@ class ye {
3422
766
  * объект с некоторыми или всеми из следующих свойств
3423
767
  */
3424
768
  display(t, e) {
3425
- return l(() => this.intl.value.display(m(t), e));
769
+ return a(() => this.intl.value.display(d(t), e));
3426
770
  }
3427
771
  /**
3428
772
  * Get display names of language.
@@ -3432,7 +776,7 @@ class ye {
3432
776
  * @param style the formatting style to use/ используемый стиль форматирования
3433
777
  */
3434
778
  languageName(t, e) {
3435
- return l(() => this.intl.value.languageName(m(t), e));
779
+ return a(() => this.intl.value.languageName(d(t), e));
3436
780
  }
3437
781
  /**
3438
782
  * Get display names of region.
@@ -3442,7 +786,7 @@ class ye {
3442
786
  * @param style the formatting style to use/ используемый стиль форматирования
3443
787
  */
3444
788
  countryName(t, e) {
3445
- return l(() => this.intl.value.countryName(m(t), e));
789
+ return a(() => this.intl.value.countryName(d(t), e));
3446
790
  }
3447
791
  /**
3448
792
  * In basic use without specifying a locale, a formatted string.
@@ -3454,7 +798,7 @@ class ye {
3454
798
  * или всеми свойствами
3455
799
  */
3456
800
  number(t, e) {
3457
- return l(() => this.intl.value.number(m(t), e));
801
+ return a(() => this.intl.value.number(d(t), e));
3458
802
  }
3459
803
  /**
3460
804
  * Decimal point symbol.
@@ -3462,7 +806,7 @@ class ye {
3462
806
  * Символ десятичной точки.
3463
807
  */
3464
808
  decimal() {
3465
- return l(() => this.intl.value.decimal());
809
+ return a(() => this.intl.value.decimal());
3466
810
  }
3467
811
  /**
3468
812
  * Currency formatting.
@@ -3473,12 +817,12 @@ class ye {
3473
817
  * валюта для использования в форматировании валюты
3474
818
  * @param numberOnly do not display the currency symbol/ не выводить значок валюты
3475
819
  */
3476
- currency(t, e, s = !1) {
3477
- return l(
820
+ currency(t, e, i = !1) {
821
+ return a(
3478
822
  () => this.intl.value.currency(
3479
- m(t),
3480
- m(e),
3481
- s
823
+ d(t),
824
+ d(e),
825
+ i
3482
826
  )
3483
827
  );
3484
828
  }
@@ -3492,7 +836,7 @@ class ye {
3492
836
  * в форматировании блока
3493
837
  */
3494
838
  unit(t, e) {
3495
- return l(() => this.intl.value.unit(m(t), e));
839
+ return a(() => this.intl.value.unit(d(t), e));
3496
840
  }
3497
841
  /**
3498
842
  * Number as a percentage.
@@ -3502,7 +846,7 @@ class ye {
3502
846
  * @param options an object with some or all properties/ объект с некоторыми или всеми свойствами
3503
847
  */
3504
848
  percent(t, e) {
3505
- return l(() => this.intl.value.percent(m(t), e));
849
+ return a(() => this.intl.value.percent(d(t), e));
3506
850
  }
3507
851
  /**
3508
852
  * Number as a percentage (unit).
@@ -3513,7 +857,7 @@ class ye {
3513
857
  * объект с некоторыми или всеми свойствами
3514
858
  */
3515
859
  percentBy100(t, e) {
3516
- return l(() => this.intl.value.percentBy100(m(t), e));
860
+ return a(() => this.intl.value.percentBy100(d(t), e));
3517
861
  }
3518
862
  /**
3519
863
  * Enables language-sensitive date and time formatting.
@@ -3524,8 +868,8 @@ class ye {
3524
868
  * @param styleOptions the representation of the month/ представление месяца
3525
869
  * @param hour24 whether to use 12-hour time/ использовать ли 12-часовое время
3526
870
  */
3527
- date(t, e, s, n) {
3528
- return l(() => this.intl.value.date(m(t), e, s, n));
871
+ date(t, e, i, n) {
872
+ return a(() => this.intl.value.date(d(t), e, i, n));
3529
873
  }
3530
874
  /**
3531
875
  * Enables language-sensitive relative time formatting.
@@ -3536,8 +880,8 @@ class ye {
3536
880
  * длина интернационализированного сообщения
3537
881
  * @param todayValue current day/ текущий день
3538
882
  */
3539
- relative(t, e, s) {
3540
- return l(() => this.intl.value.relative(m(t), e, s));
883
+ relative(t, e, i) {
884
+ return a(() => this.intl.value.relative(d(t), e, i));
3541
885
  }
3542
886
  /**
3543
887
  * Enables language-sensitive relative time formatting
@@ -3557,15 +901,15 @@ class ye {
3557
901
  * @param type type of data format/ тип формата data
3558
902
  * @param hour24 whether to use 12-hour time/ использовать ли 12-часовое время
3559
903
  */
3560
- relativeLimit(t, e, s, n, o, a, c) {
3561
- return l(() => this.intl.value.relativeLimit(
3562
- m(t),
904
+ relativeLimit(t, e, i, n, r, u, h) {
905
+ return a(() => this.intl.value.relativeLimit(
906
+ d(t),
3563
907
  e,
3564
- s,
908
+ i,
3565
909
  n,
3566
- o,
3567
- a,
3568
- c
910
+ r,
911
+ u,
912
+ h
3569
913
  ));
3570
914
  }
3571
915
  /**
@@ -3576,7 +920,7 @@ class ye {
3576
920
  * @param style the representation of the month/ представление месяца
3577
921
  */
3578
922
  month(t, e) {
3579
- return l(() => this.intl.value.month(m(t), e));
923
+ return a(() => this.intl.value.month(d(t), e));
3580
924
  }
3581
925
  /**
3582
926
  * Array to list of months.
@@ -3585,7 +929,7 @@ class ye {
3585
929
  * @param style the representation of the month/ представление месяца
3586
930
  */
3587
931
  months(t) {
3588
- return l(() => this.intl.value.months(t));
932
+ return a(() => this.intl.value.months(t));
3589
933
  }
3590
934
  /**
3591
935
  * Returns names of days of the week.
@@ -3595,7 +939,7 @@ class ye {
3595
939
  * @param style the representation of the weekday/ представление о дне недели
3596
940
  */
3597
941
  weekday(t, e) {
3598
- return l(() => this.intl.value.weekday(m(t), e));
942
+ return a(() => this.intl.value.weekday(d(t), e));
3599
943
  }
3600
944
  /**
3601
945
  * An array of the list of names of the days of the week.
@@ -3604,7 +948,7 @@ class ye {
3604
948
  * @param style the representation of the weekday/ представление о дне недели
3605
949
  */
3606
950
  weekdays(t) {
3607
- return l(() => this.intl.value.weekdays(t));
951
+ return a(() => this.intl.value.weekdays(t));
3608
952
  }
3609
953
  /**
3610
954
  * Time.
@@ -3613,10 +957,10 @@ class ye {
3613
957
  * @param value the date to format/ дата для форматирования
3614
958
  */
3615
959
  time(t) {
3616
- return l(() => this.intl.value.time(m(t)));
960
+ return a(() => this.intl.value.time(d(t)));
3617
961
  }
3618
962
  }
3619
- class kt {
963
+ class Z {
3620
964
  /**
3621
965
  * Creates an instance of ListData for managing list data.
3622
966
  *
@@ -3625,22 +969,25 @@ class kt {
3625
969
  * @param focus Focused item / элемент в фокусе
3626
970
  * @param highlight Search text for highlighting / текст поиска для выделения
3627
971
  * @param highlightLengthStart Minimum length to start highlighting / минимальная длина для начала выделения
972
+ * @param filterMode Filter mode / режим фильтрации
3628
973
  * @param selected Selected items / выбранные элементы
3629
974
  * @param keyValue Key for getting item value / ключ для получения значения элемента
3630
975
  * @param keyLabel Key for getting item label / ключ для получения метки элемента
3631
976
  * @param lite Threshold for lite mode / порог для облегченного режима
977
+ * @param min Minimum number of selections / минимальное количество выделений
978
+ * @param max Maximum number of selections / максимальное количество выделений
3632
979
  * @param parent Parent identifier / идентификатор родителя
3633
980
  */
3634
- constructor(t, e, s, n, o, a, c, h, d) {
3635
- u(this, "subList", {});
981
+ constructor(t, e, i, n, r, u, h, o, c, m = 0, y = 9999999, S) {
982
+ l(this, "subList", {});
3636
983
  /**
3637
984
  * Returns a list for forming a list.
3638
985
  *
3639
986
  * Возвращает список для формирования списка.
3640
987
  */
3641
- u(this, "data", l(
3642
- () => $(
3643
- m(this.list) || [],
988
+ l(this, "data", a(
989
+ () => k(
990
+ d(this.list) || [],
3644
991
  (t, e) => this.initItem(e, t)
3645
992
  )
3646
993
  ));
@@ -3649,11 +996,11 @@ class kt {
3649
996
  *
3650
997
  * Возвращает упрощенный список для быстрой загрузки.
3651
998
  */
3652
- u(this, "liteData", l(() => {
999
+ l(this, "liteData", a(() => {
3653
1000
  if (this.isLite()) {
3654
1001
  const t = [];
3655
1002
  for (const e of this.data.value) {
3656
- const s = {
1003
+ const i = {
3657
1004
  parent: this.parent,
3658
1005
  index: e.index,
3659
1006
  type: e.type,
@@ -3661,7 +1008,7 @@ class kt {
3661
1008
  description: e.description,
3662
1009
  value: e.value
3663
1010
  };
3664
- "description" in e && (s.description = e.description), t.push(s);
1011
+ "description" in e && (i.description = e.description), t.push(i);
3665
1012
  }
3666
1013
  return t;
3667
1014
  }
@@ -3672,16 +1019,22 @@ class kt {
3672
1019
  *
3673
1020
  * Возвращает список записей со всеми дополнительными данными.
3674
1021
  */
3675
- u(this, "fullData", l(() => {
3676
- const t = this.getFocus(), e = this.getHighlight(), s = this.getSelected();
3677
- return $(
1022
+ l(this, "fullData", a(() => {
1023
+ const t = this.getFocus(), e = this.getHighlight(), i = this.getSelected();
1024
+ return k(
3678
1025
  this.data.value,
3679
- (n) => ({
3680
- ...n,
3681
- focus: t === n.index,
3682
- highlight: e,
3683
- selected: j(n.index, s)
3684
- })
1026
+ (n) => {
1027
+ var u, h;
1028
+ const r = D(n.index, i);
1029
+ return {
1030
+ ...n,
1031
+ focus: t === n.index,
1032
+ highlight: e,
1033
+ filterMode: (u = this.filterMode) == null ? void 0 : u.value,
1034
+ selected: r,
1035
+ disabled: (h = n.disabled) != null ? h : !r && n.type === "item" && this.isSelectedMax.value
1036
+ };
1037
+ }
3685
1038
  );
3686
1039
  }));
3687
1040
  /**
@@ -3689,7 +1042,7 @@ class kt {
3689
1042
  *
3690
1043
  * Возвращает карту всех записей.
3691
1044
  */
3692
- u(this, "map", l(() => {
1045
+ l(this, "map", a(() => {
3693
1046
  const t = [];
3694
1047
  return this.data.value.forEach((e) => {
3695
1048
  switch (e.type) {
@@ -3707,13 +1060,13 @@ class kt {
3707
1060
  }), t;
3708
1061
  }));
3709
1062
  /** Returns a list consisting only of items/ Возвращает список, состоящий только из элементов. */
3710
- u(this, "mapItems", l(() => this.map.value.filter((t) => t.type === "item")));
1063
+ l(this, "mapItems", a(() => this.map.value.filter((t) => t.type === "item")));
3711
1064
  /**
3712
1065
  * Returns a list consisting only of values for selection.
3713
1066
  *
3714
1067
  * Возвращает список, состоящий только из значений для выбора.
3715
1068
  */
3716
- u(this, "items", l(() => this.map.value.filter(
1069
+ l(this, "items", a(() => this.map.value.filter(
3717
1070
  (t) => t.type === "item" || t.type === "group" || t.type === "menu"
3718
1071
  )));
3719
1072
  /**
@@ -3721,46 +1074,68 @@ class kt {
3721
1074
  *
3722
1075
  * Находит первый элемент, соответствующий условиям поиска.
3723
1076
  */
3724
- u(this, "highlightFirstItem", l(() => {
3725
- const t = this.getHighlight(), e = t && t.length >= this.getHighlightLengthStart() && St(t, "i");
3726
- return e ? this.map.value.findIndex(
3727
- (s) => {
3728
- var n, o, a;
3729
- return ((n = s.label) == null ? void 0 : n.toString().match(e)) || ((o = s.index) == null ? void 0 : o.toString().match(e)) || ((a = s.search) == null ? void 0 : a.toString().match(e));
3730
- }
3731
- ) : -1;
1077
+ l(this, "highlightFirstItem", a(() => {
1078
+ const t = this.getHighlight();
1079
+ if (t && t.length >= this.getHighlightLengthStart()) {
1080
+ const e = ht(t, "i");
1081
+ if (e)
1082
+ return this.map.value.findIndex(
1083
+ (i) => {
1084
+ var n, r, u;
1085
+ return ((n = i.label) == null ? void 0 : n.toString().match(e)) || ((r = i.index) == null ? void 0 : r.toString().match(e)) || ((u = i.search) == null ? void 0 : u.toString().match(e));
1086
+ }
1087
+ );
1088
+ }
1089
+ return -1;
3732
1090
  }));
3733
1091
  /**
3734
1092
  * Is there a selected item.
3735
1093
  *
3736
1094
  * Есть ли выбранный элемент.
3737
1095
  */
3738
- u(this, "isSelected", l(() => {
1096
+ l(this, "isSelected", a(() => {
3739
1097
  const t = this.getSelected();
3740
- return !!t && this.mapItems.value.findIndex((e) => j(e.index, t)) !== -1;
1098
+ return !!t && this.mapItems.value.findIndex((e) => D(e.index, t)) !== -1;
1099
+ }));
1100
+ /** Is the minimum selection reached/ Достигнуто ли минимальное выделение */
1101
+ l(this, "isSelectedMin", a(() => {
1102
+ const t = Number(d(this.min) || 0);
1103
+ return t > 0 ? t >= this.selectedListInGroup.value.length : !1;
1104
+ }));
1105
+ /** Is the maximum selection reached/ Достигнуто ли максимальное выделение */
1106
+ l(this, "isSelectedMax", a(() => {
1107
+ const t = Number(d(this.max) || 9999999);
1108
+ return t > 0 ? t <= this.selectedListInGroup.value.length : !1;
3741
1109
  }));
3742
1110
  /**
3743
- * Returns a list of selected items on the map.
3744
- *
3745
- * Возвращает список выделенных элементов на карте.
1111
+ * Returns a list of selected items on the map/
1112
+ * Возвращает список выделенных элементов на карте
3746
1113
  */
3747
- u(this, "selectedList", l(() => {
1114
+ l(this, "selectedList", a(() => {
3748
1115
  const t = this.getSelected();
3749
- return t && this.isSelected.value ? this.mapItems.value.filter((e) => j(e.index, t)) : [];
1116
+ return t && this.isSelected.value ? this.mapItems.value.filter((e) => D(e.index, t)) : [];
1117
+ }));
1118
+ /**
1119
+ * Returns a list of selected items in the current group/
1120
+ * Возвращает список выделенных элементов в текущей группе
1121
+ */
1122
+ l(this, "selectedListInGroup", a(() => {
1123
+ const t = this.getSelected();
1124
+ return t && this.isSelected.value ? this.data.value.filter((e) => D(e.index, t)) : [];
3750
1125
  }));
3751
1126
  /**
3752
1127
  * Returns a list of selected items on the map.
3753
1128
  *
3754
1129
  * Возвращает список выделенных элементов на карте.
3755
1130
  */
3756
- u(this, "selectedNames", l(() => nt(this.selectedList.value, "label")));
1131
+ l(this, "selectedNames", a(() => K(this.selectedList.value, "label")));
3757
1132
  /**
3758
1133
  * Returns a list of selected item values on the map.
3759
1134
  *
3760
1135
  * Возвращает список значений выделенных элементов на карте.
3761
1136
  */
3762
- u(this, "selectedValues", l(() => nt(this.selectedList.value, "value")));
3763
- this.list = t, this.focus = e, this.highlight = s, this.highlightLengthStart = n, this.selected = o, this.keyValue = a, this.keyLabel = c, this.lite = h, this.parent = d, Q(t) && f(t, () => {
1137
+ l(this, "selectedValues", a(() => K(this.selectedList.value, "value")));
1138
+ this.list = t, this.focus = e, this.highlight = i, this.highlightLengthStart = n, this.filterMode = r, this.selected = u, this.keyValue = h, this.keyLabel = o, this.lite = c, this.min = m, this.max = y, this.parent = S, N(t) && g(t, () => {
3764
1139
  this.subList = {};
3765
1140
  });
3766
1141
  }
@@ -3790,6 +1165,15 @@ class kt {
3790
1165
  isHighlight() {
3791
1166
  return this.highlightFirstItem.value !== -1;
3792
1167
  }
1168
+ /**
1169
+ * Checks if highlighting is active.
1170
+ *
1171
+ * Проверяет, активно ли выделение.
1172
+ */
1173
+ isHighlightActive() {
1174
+ var t, e;
1175
+ return ((e = (t = this.getHighlight()) == null ? void 0 : t.length) != null ? e : 0) < this.getHighlightLengthStart() || this.isHighlight();
1176
+ }
3793
1177
  /**
3794
1178
  * Returns the number of records.
3795
1179
  *
@@ -3850,6 +1234,25 @@ class kt {
3850
1234
  var t;
3851
1235
  return (t = this.selected) == null ? void 0 : t.value;
3852
1236
  }
1237
+ /**
1238
+ * Returns an item by moving a certain number of steps from the selected item.
1239
+ *
1240
+ * Возвращает элемент, перемещаясь на определенное количество шагов от выбранного элемента.
1241
+ * @param step number of steps/ количество шагов
1242
+ */
1243
+ getSelectedByStep(t) {
1244
+ var u, h, o, c, m;
1245
+ const e = (u = this.selectedList.value) == null ? void 0 : u[0], i = this.mapItems.value;
1246
+ if (!e)
1247
+ return (h = i[0]) == null ? void 0 : h.index;
1248
+ const r = i.findIndex((y) => y.index === e.index) + t;
1249
+ if (r in i)
1250
+ return (o = i[r]) == null ? void 0 : o.index;
1251
+ if (t > 0)
1252
+ return (c = i[0]) == null ? void 0 : c.index;
1253
+ if (t < 0)
1254
+ return (m = i[i.length - 1]) == null ? void 0 : m.index;
1255
+ }
3853
1256
  /**
3854
1257
  * Returns an item by its index.
3855
1258
  *
@@ -3857,7 +1260,7 @@ class kt {
3857
1260
  * @param index item index/ индекс элемента
3858
1261
  */
3859
1262
  getItemByIndex(t) {
3860
- const e = this.map.value.findIndex((s) => s.index === t);
1263
+ const e = this.map.value.findIndex((i) => i.index === t);
3861
1264
  if (e !== -1)
3862
1265
  return {
3863
1266
  key: e,
@@ -3899,15 +1302,18 @@ class kt {
3899
1302
  * @param item List item data/ данные элемента списка
3900
1303
  */
3901
1304
  getSubList(t) {
3902
- return t.index in this.subList || (this.subList[t.index] = new kt(
1305
+ return t.index in this.subList || (this.subList[t.index] = new Z(
3903
1306
  t.value,
3904
1307
  this.focus,
3905
1308
  this.highlight,
3906
1309
  this.highlightLengthStart,
1310
+ this.filterMode,
3907
1311
  this.selected,
3908
1312
  this.keyValue,
3909
1313
  this.keyLabel,
3910
1314
  this.lite,
1315
+ this.min,
1316
+ this.max,
3911
1317
  t.index
3912
1318
  )), this.subList[t.index];
3913
1319
  }
@@ -3939,8 +1345,8 @@ class kt {
3939
1345
  * @param key item key / ключ элемента
3940
1346
  * @param label item label / метка элемента
3941
1347
  */
3942
- getIndex(t, e, s, n) {
3943
- return t && !S(t) ? t : e && !S(e) ? e : s && n;
1348
+ getIndex(t, e, i, n) {
1349
+ return t && !z(t) ? t : e && !z(e) ? e : i && n;
3944
1350
  }
3945
1351
  /**
3946
1352
  * Creates an object of the record element.
@@ -3950,21 +1356,21 @@ class kt {
3950
1356
  * @param item selected element/ выбранный элемент
3951
1357
  */
3952
1358
  initItem(t, e) {
3953
- var s, n, o, a, c, h;
3954
- if (F(e)) {
3955
- const d = e == null ? void 0 : e[(n = (s = this.keyValue) == null ? void 0 : s.value) != null ? n : "value"], g = (c = e == null ? void 0 : e[(a = (o = this.keyLabel) == null ? void 0 : o.value) != null ? a : "label"]) != null ? c : d, D = this.getIndex(
1359
+ var i, n, r, u, h, o;
1360
+ if (M(e)) {
1361
+ const c = e == null ? void 0 : e[(n = (i = this.keyValue) == null ? void 0 : i.value) != null ? n : "value"], m = (h = e == null ? void 0 : e[(u = (r = this.keyLabel) == null ? void 0 : r.value) != null ? u : "label"]) != null ? h : c, y = this.getIndex(
3956
1362
  e == null ? void 0 : e.index,
3957
- d,
1363
+ c,
3958
1364
  t,
3959
- g
1365
+ m
3960
1366
  );
3961
1367
  return {
3962
1368
  ...e,
3963
1369
  parent: this.parent,
3964
- index: D,
3965
- type: (h = e == null ? void 0 : e.type) != null ? h : "item",
3966
- label: g,
3967
- value: d
1370
+ index: y,
1371
+ type: (o = e == null ? void 0 : e.type) != null ? o : "item",
1372
+ label: m,
1373
+ value: c
3968
1374
  };
3969
1375
  }
3970
1376
  return {
@@ -3976,7 +1382,7 @@ class kt {
3976
1382
  };
3977
1383
  }
3978
1384
  }
3979
- class $e {
1385
+ class Rt {
3980
1386
  /**
3981
1387
  * Get router instance.
3982
1388
  *
@@ -4013,8 +1419,8 @@ class $e {
4013
1419
  this.router || this.set(t);
4014
1420
  }
4015
1421
  }
4016
- u($e, "router");
4017
- class fi {
1422
+ l(Rt, "router");
1423
+ class Qt {
4018
1424
  /**
4019
1425
  * Constructor
4020
1426
  */
@@ -4024,442 +1430,377 @@ class fi {
4024
1430
  *
4025
1431
  * Реактивный элемент.
4026
1432
  */
4027
- u(this, "item", p());
1433
+ l(this, "item", f());
4028
1434
  /**
4029
1435
  * Checks whether the scroll width is defined.
4030
1436
  *
4031
1437
  * Проверяет, определена ли ширина скролла.
4032
1438
  */
4033
- u(this, "is", l(() => this.item.value !== void 0));
4034
- bt.is().then((t) => {
1439
+ l(this, "is", a(() => this.item.value !== void 0));
1440
+ ot.is().then((t) => {
4035
1441
  this.item.value = t;
4036
1442
  });
4037
1443
  }
4038
1444
  }
4039
- const pe = (i) => typeof i == "string" ? { method: i } : i || {};
4040
- let J;
4041
- function mi(i, t, e = !0, s, n, o) {
4042
- const a = p(), c = B(pe(t)), h = p(!1), d = p(!1);
4043
- let g = !0, D = 0;
4044
- const H = async () => {
4045
- if (g)
1445
+ const At = (s) => typeof s == "string" ? { method: s } : s || {};
1446
+ let x;
1447
+ function Xt(s, t, e = !0, i, n, r) {
1448
+ const u = f(), h = b(At(t)), o = f(!1), c = f(!1);
1449
+ let m = !0, y = 0;
1450
+ const S = async () => {
1451
+ if (m)
4046
1452
  return;
4047
- const k = m(i);
4048
- if ((!s || s.value) && k) {
4049
- h.value = !0, d.value = !0;
4050
- let M = {};
4051
- const ft = await V.request({
4052
- path: k,
4053
- ...c.value
1453
+ const p = d(s);
1454
+ if ((!i || i.value) && p) {
1455
+ o.value = !0, c.value = !0;
1456
+ let B = {};
1457
+ const V = await ct.request({
1458
+ path: p,
1459
+ ...h.value
4054
1460
  });
4055
- ft && (M = ft), n ? a.value = n(M) : a.value = M, h.value = !1;
4056
- } else a.value !== void 0 && (a.value = void 0);
4057
- }, X = () => {
4058
- const k = [];
4059
- e && k.push(c), Q(i) && k.push(i), s && k.push(s), J && k.push(J), k.length > 0 && f(k, async () => {
4060
- h.value || await H();
1461
+ V && (B = V), n ? u.value = n(B) : u.value = B, o.value = !1;
1462
+ } else u.value !== void 0 && (u.value = void 0);
1463
+ }, tt = () => {
1464
+ const p = [];
1465
+ e && p.push(h), N(s) && p.push(s), i && p.push(i), x && p.push(x), p.length > 0 && g(p, async () => {
1466
+ o.value || await S();
4061
1467
  });
4062
1468
  };
4063
1469
  return {
4064
1470
  get data() {
4065
- return g && (g = !1, H().then()), X(), o && (D++, rt(() => {
4066
- D--, D < 1 && (console.warn("useApiRef: unmounted"), a.value = void 0, g = !0, D = 0);
4067
- })), a;
1471
+ return m && (m = !1, S().then()), tt(), r && (y++, O(() => {
1472
+ y--, y < 1 && (console.warn("useApiRef: unmounted"), u.value = void 0, m = !0, y = 0);
1473
+ })), u;
4068
1474
  },
4069
1475
  get isStarting() {
4070
- return l(() => a.value === void 0);
1476
+ return a(() => u.value === void 0);
4071
1477
  },
4072
1478
  get loading() {
4073
- return l(() => h.value);
1479
+ return a(() => o.value);
4074
1480
  },
4075
1481
  get reading() {
4076
- return l(() => d.value);
1482
+ return a(() => c.value);
4077
1483
  },
4078
- reset: H
1484
+ reset: S
4079
1485
  };
4080
1486
  }
4081
- const yi = (i) => {
4082
- J || (J = i);
1487
+ const Zt = (s) => {
1488
+ x || (x = s);
4083
1489
  };
4084
- function ve(i, t) {
4085
- const e = `broadcast--${i}`;
4086
- if (e in G)
4087
- return G[e];
4088
- const s = p(lt(t)), n = new _t(
1490
+ function Et(s, t) {
1491
+ const e = `broadcast--${s}`;
1492
+ if (e in E)
1493
+ return E[e];
1494
+ const i = f(Y(t)), n = new dt(
4089
1495
  e,
4090
- (o) => {
4091
- s.value !== o.data.message && (s.value = o.data.message);
1496
+ (r) => {
1497
+ i.value !== r.data.message && (i.value = r.data.message);
4092
1498
  }
4093
1499
  );
4094
- return f(s, (o) => n.post({ message: o })), G[e] = s, s;
4095
- }
4096
- const G = {};
4097
- function $i(i, t, e) {
4098
- if (i in tt)
4099
- return tt[i];
4100
- const s = new xt(i), n = ve(
4101
- `__cookie:${i}`,
4102
- s.get(t, e)
1500
+ return g(i, (r) => n.post({ message: r })), E[e] = i, i;
1501
+ }
1502
+ const E = {};
1503
+ function _t(s, t, e) {
1504
+ if (s in H)
1505
+ return H[s];
1506
+ const i = new gt(s), n = Et(
1507
+ `__cookie:${s}`,
1508
+ i.get(t, e)
4103
1509
  );
4104
- return f(n, (o) => {
4105
- s.set(o, e);
4106
- }), tt[i] = n, n;
4107
- }
4108
- const tt = {};
4109
- function pi() {
4110
- return new ye();
4111
- }
4112
- function vi(i, t) {
4113
- if (i in et)
4114
- return et[i];
4115
- const e = Z(O.get(i, t));
4116
- return f(e, (s) => O.set(i, s)), O.addWatch(i, (s) => {
4117
- e.value = s;
4118
- }), et[i] = e, e;
4119
- }
4120
- const et = {}, bi = () => {
4121
- const i = {}, t = "IntersectionObserver" in window ? new IntersectionObserver(
4122
- (s) => {
4123
- s.forEach((n) => {
4124
- const o = Y(n.target);
4125
- o in i && (i[o].status.value = n.isIntersecting);
1510
+ return g(n, (r) => {
1511
+ i.set(r, e);
1512
+ }), H[s] = n, n;
1513
+ }
1514
+ const H = {};
1515
+ function te() {
1516
+ return new Bt();
1517
+ }
1518
+ function ee(s, t) {
1519
+ if (s in $)
1520
+ return $[s];
1521
+ const e = I(A.get(s, t));
1522
+ return g(e, (i) => A.set(s, i)), A.addWatch(s, (i) => {
1523
+ e.value = i;
1524
+ }), $[s] = e, e;
1525
+ }
1526
+ const $ = {}, Ht = (s = {
1527
+ rootMargin: "128px 0px"
1528
+ }) => {
1529
+ const t = {}, e = G() && "IntersectionObserver" in window ? new IntersectionObserver(
1530
+ (n) => {
1531
+ n.forEach((r) => {
1532
+ const u = L(r.target);
1533
+ if (u in t) {
1534
+ const h = t[u];
1535
+ h.status.value = r.isIntersecting, h.ratio.value = r.intersectionRatio, h.entry.value = r;
1536
+ }
4126
1537
  });
4127
1538
  },
4128
- {
4129
- rootMargin: "128px 0px"
4130
- }
4131
- ) : void 0, e = (s) => {
4132
- var n;
4133
- if (s) {
4134
- const o = Y(s);
4135
- o in i && (t == null || t.unobserve(s), (n = i[o]) == null || n.stopWatch(), delete i[o]);
1539
+ s
1540
+ ) : void 0, i = (n) => {
1541
+ var r;
1542
+ if (n) {
1543
+ const u = L(n);
1544
+ u in t && (e == null || e.unobserve(n), (r = t[u]) == null || r.stopWatch(), delete t[u]);
4136
1545
  }
4137
1546
  };
4138
1547
  return {
4139
- intersectionObserver: t,
1548
+ intersectionObserver: e,
1549
+ /**
1550
+ * Getting a tracked element.
1551
+ *
1552
+ * Получение отслеживаемого элемента.
1553
+ * @param element tracked element/ отслеживаемый элемент
1554
+ */
1555
+ getItem(n) {
1556
+ const r = L(n);
1557
+ return t[r];
1558
+ },
4140
1559
  /**
4141
1560
  * Adding an element for tracking.
4142
1561
  *
4143
1562
  * Добавление элемента для отслеживания.
4144
1563
  * @param element element for tracking/ элемента для отслеживания
4145
1564
  */
4146
- addLazyItem(s) {
4147
- const n = Z(!t);
4148
- if (t) {
4149
- const o = f(s, (a, c) => {
4150
- if (c && t.unobserve(c), s.value) {
4151
- const h = Y(s.value);
4152
- i[h] = {
4153
- status: n,
4154
- stopWatch: o
4155
- }, t.observe(s.value);
1565
+ addLazyItem(n) {
1566
+ const r = I(!e);
1567
+ if (e) {
1568
+ let u;
1569
+ u = g(n, (h, o) => {
1570
+ if (o && i(o), n.value) {
1571
+ const c = L(n.value);
1572
+ t[c] = {
1573
+ status: r,
1574
+ ratio: I(0),
1575
+ entry: I(void 0),
1576
+ stopWatch: () => u == null ? void 0 : u()
1577
+ }, e.observe(n.value);
4156
1578
  } else
4157
- e(s.value);
1579
+ i(n.value);
4158
1580
  }, { immediate: !0 });
4159
1581
  }
4160
- return n;
1582
+ return r;
4161
1583
  },
4162
1584
  /**
4163
1585
  * Removing an element from tracking.
4164
1586
  *
4165
1587
  * Удаление элемента из отслеживания.
4166
1588
  */
4167
- removeLazyItem: e,
1589
+ removeLazyItem: i,
4168
1590
  /**
4169
1591
  * Removing all elements from tracking.
4170
1592
  *
4171
1593
  * Удаление всех элементов из отслеживания.
4172
1594
  */
4173
- disconnectLazy: () => t == null ? void 0 : t.disconnect()
1595
+ disconnectLazy: () => e == null ? void 0 : e.disconnect()
1596
+ };
1597
+ }, q = [], $t = (s) => {
1598
+ const t = q.find((i) => i.rootMargin === s);
1599
+ if (t)
1600
+ return t.item;
1601
+ const e = Ht({ rootMargin: s });
1602
+ return q.push({ rootMargin: s, item: e }), e;
1603
+ }, ie = (s, t) => {
1604
+ const e = $t(t);
1605
+ return {
1606
+ /** Lazy item status/ Статус ленивого элемента */
1607
+ lazyItemStatus: e.addLazyItem(s),
1608
+ /**
1609
+ * Getting a tracked lazy item.
1610
+ *
1611
+ * Получение отслеживаемого ленивого элемента.
1612
+ */
1613
+ get lazyItem() {
1614
+ return e.getItem(s.value);
1615
+ }
4174
1616
  };
4175
1617
  };
4176
- function Si() {
4177
- const i = Z(mt.is());
4178
- return mt.registrationEvent(({ detail: t }) => {
4179
- i.value = t.loading;
4180
- }), i;
4181
- }
4182
- const Ct = [], be = z(1e5, 999999);
4183
- function Se(i, t = !0, e = !1, s = !0) {
1618
+ function se() {
1619
+ const s = I(P.is());
1620
+ return P.registrationEvent(({ detail: t }) => {
1621
+ s.value = t.loading;
1622
+ }), s;
1623
+ }
1624
+ const _ = [], Ft = ft(1e5, 999999);
1625
+ function jt(s, t = !0, e = !1, i = !0) {
4184
1626
  let n;
4185
- const o = `__execute_use${be}::${Y()}`, a = (...c) => {
4186
- if (!e && s) {
4187
- const h = jt(o, void 0);
4188
- if (h)
4189
- return h;
1627
+ const r = `__execute_use${Ft}::${L()}`, u = (o) => {
1628
+ const c = Object.freeze(s(...o));
1629
+ return Object.freeze({
1630
+ ...c,
1631
+ init() {
1632
+ return c;
1633
+ }
1634
+ });
1635
+ }, h = (...o) => {
1636
+ if (!e && i) {
1637
+ const c = Lt(r, void 0);
1638
+ if (c)
1639
+ return c;
4190
1640
  {
4191
- let d = Object.freeze(i(...c));
4192
- return Ut(o, d), t && rt(() => {
4193
- d = void 0;
4194
- }), d;
1641
+ let m = u(o);
1642
+ return Ct(r, m), t && O(() => {
1643
+ m = void 0;
1644
+ }), m;
4195
1645
  }
4196
- } else n || (n = Object.freeze(i(...c)), t && rt(() => {
1646
+ } else n || (n = u(o), t && O(() => {
4197
1647
  n = void 0;
4198
1648
  }));
4199
1649
  return n;
4200
1650
  };
4201
- return e && Ct.push(a), a;
4202
- }
4203
- function wi() {
4204
- Ct.forEach((i) => i());
4205
- }
4206
- const we = Se(() => {
4207
- const i = new Gt(), t = p(i.getTitle()), e = p(i.getKeywords()), s = p(i.getDescription()), n = p(i.getImage()), o = p(i.getCanonical()), a = p(i.getRobots()), c = p(i.getAuthor()), h = p(i.getSiteName()), d = () => i.html();
4208
- return f(t, () => {
4209
- i.setTitle(t.value);
4210
- }), f(e, () => {
4211
- i.setKeywords(e.value);
4212
- }), f(s, () => {
4213
- i.setDescription(s.value);
4214
- }), f(n, () => {
4215
- i.setImage(n.value);
4216
- }), f(o, () => {
4217
- i.setCanonical(o.value);
4218
- }), f(a, () => {
4219
- i.setRobots(a.value);
4220
- }), f(c, () => {
4221
- i.setAuthor(c.value);
4222
- }), f(h, () => {
4223
- i.setSiteName(h.value);
1651
+ return e && _.push(h), h;
1652
+ }
1653
+ function ne() {
1654
+ _.forEach((s) => s());
1655
+ }
1656
+ const zt = jt(() => {
1657
+ const s = new mt(), t = f(s.getTitle()), e = f(s.getKeywords()), i = f(s.getDescription()), n = f(s.getImage()), r = f(s.getCanonical()), u = f(s.getRobots()), h = f(s.getAuthor()), o = f(s.getSiteName()), c = () => s.html();
1658
+ return g(t, () => {
1659
+ s.setTitle(t.value);
1660
+ }), g(e, () => {
1661
+ s.setKeywords(e.value);
1662
+ }), g(i, () => {
1663
+ s.setDescription(i.value);
1664
+ }), g(n, () => {
1665
+ s.setImage(n.value);
1666
+ }), g(r, () => {
1667
+ s.setCanonical(r.value);
1668
+ }), g(u, () => {
1669
+ s.setRobots(u.value);
1670
+ }), g(h, () => {
1671
+ s.setAuthor(h.value);
1672
+ }), g(o, () => {
1673
+ s.setSiteName(o.value);
4224
1674
  }), {
4225
- meta: i,
1675
+ meta: s,
4226
1676
  title: t,
4227
1677
  keyword: e,
4228
- description: s,
4229
- author: c,
1678
+ description: i,
1679
+ author: h,
4230
1680
  image: n,
4231
- canonical: o,
4232
- robots: a,
4233
- siteName: h,
4234
- getHtmlMeta: d
1681
+ canonical: r,
1682
+ robots: u,
1683
+ siteName: o,
1684
+ getHtmlMeta: c
4235
1685
  };
4236
- }, !1, !0), Di = () => we();
4237
- function Li(i, t) {
4238
- if (i in it)
4239
- return it[i];
4240
- const e = new ut(i, !0), s = p(e.get(t));
4241
- return f(s, (n) => e.set(n)), it[i] = s, s;
4242
- }
4243
- const it = {};
4244
- function ki(i, t, e) {
4245
- if (i in st)
4246
- return st[i];
4247
- const s = new ut(i), n = p(s.get(t, e));
4248
- return f(n, (o) => s.set(o)), y() && window.addEventListener("storage", () => {
4249
- s.update(), n.value = s.get();
4250
- }), st[i] = n, n;
4251
- }
4252
- const st = {};
4253
- function De(i) {
4254
- const t = Z(q.getListSync(i, !0)), e = async () => {
4255
- t.value = { ...await q.getList(i) };
1686
+ }, !1, !0), re = () => zt();
1687
+ function ae(s, t) {
1688
+ if (s in F)
1689
+ return F[s];
1690
+ const e = new J(s, !0), i = f(e.get(t));
1691
+ return g(i, (n) => e.set(n)), F[s] = i, i;
1692
+ }
1693
+ const F = {};
1694
+ function ue(s, t, e) {
1695
+ if (s in j)
1696
+ return j[s];
1697
+ const i = new J(s), n = f(i.get(t, e));
1698
+ return g(n, (r) => i.set(r)), G() && window.addEventListener("storage", () => {
1699
+ i.update(), n.value = i.get();
1700
+ }), j[s] = n, n;
1701
+ }
1702
+ const j = {};
1703
+ function Ot(s) {
1704
+ const t = I(U.getListSync(s, !0)), e = async () => {
1705
+ t.value = { ...await U.getList(s) };
4256
1706
  };
4257
- f(K.getLanguage(), e);
4258
- for (const s in t.value)
4259
- if (t.value[s] === s || t.value[s] === " ") {
1707
+ g(w.getLanguage(), e);
1708
+ for (const i in t.value)
1709
+ if (t.value[i] === i || t.value[i] === " ") {
4260
1710
  e().then();
4261
1711
  break;
4262
1712
  }
4263
1713
  return t;
4264
1714
  }
4265
- const Ci = (i) => De(i);
4266
- function Ii(i, t = () => {
4267
- }, e, s) {
4268
- return l(
1715
+ const le = (s) => Ot(s);
1716
+ function he(s, t) {
1717
+ const e = f();
1718
+ return Q(async () => {
1719
+ e.value = await vt(s);
1720
+ }), a(() => e.value, t);
1721
+ }
1722
+ function oe(s, t = () => {
1723
+ }, e, i) {
1724
+ return a(
4269
1725
  () => {
4270
- if (K.get().value && (e === void 0 || e())) {
4271
- const n = i();
1726
+ if (w.get().value && (e === void 0 || e())) {
1727
+ const n = s();
4272
1728
  if (n !== void 0)
4273
1729
  return n;
4274
1730
  }
4275
- return lt(t);
1731
+ return Y(t);
4276
1732
  },
4277
- s
1733
+ i
4278
1734
  );
4279
1735
  }
4280
- function Le(i, t = {}, e = "value", s = !1) {
4281
- const n = typeof t == "string", o = n ? t : e, a = n ? {} : t;
4282
- return i ? i && F(i) && (o in i || s) ? at(a, i) : at(a, { [o]: i }) : n ? {} : { ...a };
1736
+ function Tt(s, t = {}, e = "value", i = !1) {
1737
+ const n = typeof t == "string", r = n ? t : e, u = n ? {} : t;
1738
+ return s ? s && M(s) && (r in s || i) ? T(u, s) : T(u, { [r]: s }) : n ? {} : { ...u };
4283
1739
  }
4284
- function Ni(i, t = {}, e = "value") {
4285
- return l(() => Le(m(i), m(t), e));
1740
+ function ce(s, t = {}, e = "value") {
1741
+ return a(() => Tt(d(s), d(t), e));
4286
1742
  }
4287
- const Ai = (i, t) => {
4288
- const e = p();
4289
- let s = !0;
1743
+ const de = (s, t) => {
1744
+ const e = f();
1745
+ let i = !0;
4290
1746
  const n = () => {
4291
- s && (zt(async () => {
4292
- const o = m(await i());
4293
- o !== t && (e.value = o);
4294
- }), s = !1);
1747
+ i && (Q(async () => {
1748
+ const r = d(await s());
1749
+ r !== t && (e.value = r);
1750
+ }), i = !1);
4295
1751
  };
4296
- return l(() => (n(), e.value));
1752
+ return a(() => (n(), e.value));
4297
1753
  };
4298
- function Bi(i, t) {
4299
- i.value !== t && (i.value = t);
1754
+ function ge(s, t) {
1755
+ s.value !== t && (s.value = t);
4300
1756
  }
4301
- function Fi(i) {
1757
+ function fe(s) {
4302
1758
  let t;
4303
- return l(() => (t || (t = i()), t.value));
1759
+ return a(() => (t || (t = s()), t.value));
4304
1760
  }
4305
1761
  export {
4306
- V as Api,
4307
- Pi as ApiDefault,
4308
- Hi as ApiHeaders,
4309
- Ri as ApiMethodItem,
4310
- Wi as ApiPreparation,
4311
- ji as ApiResponse,
4312
- Ui as ApiStatus,
4313
- _t as BroadcastMessage,
4314
- zi as Cache,
4315
- _i as CacheItem,
4316
- Ki as CacheStatic,
4317
- xt as Cookie,
4318
- Zi as CookieBlock,
4319
- ut as DataStorage,
4320
- ht as Datetime,
4321
- hi as DatetimeRef,
4322
- he as DesignAbstract,
4323
- ui as DesignAsyncAbstract,
4324
- le as DesignChanged,
4325
- ci as DesignComp,
4326
- Lt as DesignComponents,
4327
- li as DesignConstructorAbstract,
4328
- Ft as EventItem,
4329
- di as EventRef,
4330
- r as GEO_FLAG_ICON_NAME,
4331
- w as Geo,
4332
- ot as GeoFlag,
4333
- gi as GeoFlagRef,
4334
- P as GeoIntl,
4335
- ye as GeoIntlRef,
4336
- Vi as GeoPhone,
4337
- K as GeoRef,
4338
- Ne as Global,
4339
- O as Hash,
4340
- Yi as Icons,
4341
- kt as ListDataRef,
4342
- mt as Loading,
4343
- Gt as Meta,
4344
- dt as MetaManager,
4345
- Ot as MetaOg,
4346
- Qt as MetaOpenGraphAge,
4347
- qt as MetaOpenGraphAvailability,
4348
- Jt as MetaOpenGraphCondition,
4349
- Xt as MetaOpenGraphGender,
4350
- v as MetaOpenGraphTag,
4351
- Yt as MetaOpenGraphType,
4352
- Vt as MetaRobots,
4353
- L as MetaTag,
4354
- Tt as MetaTwitter,
4355
- Mt as MetaTwitterCard,
4356
- b as MetaTwitterTag,
4357
- $e as RouterItemRef,
4358
- bt as ScrollbarWidth,
4359
- fi as ScrollbarWidthRef,
4360
- q as Translate,
4361
- Ae as anyToString,
4362
- ee as applyTemplate,
4363
- ie as arrFill,
4364
- Ii as computedByLanguage,
4365
- U as copyObject,
4366
- Bt as createElement,
4367
- Be as domQuerySelector,
4368
- Fe as domQuerySelectorAll,
4369
- Zt as encodeAttribute,
4370
- xe as eventStopPropagation,
4371
- lt as executeFunction,
4372
- qi as executePromise,
4373
- Se as executeUse,
4374
- wi as executeUseGlobalInit,
4375
- $ as forEach,
4376
- se as frame,
4377
- Ee as getAttributes,
4378
- Le as getBind,
4379
- Ni as getBindRef,
4380
- de as getClassName,
4381
- Pe as getClipboardData,
4382
- nt as getColumn,
4383
- Ai as getComputedAsync,
4384
- vt as getElement,
4385
- Y as getElementId,
4386
- Ji as getElementItem,
4387
- Qi as getElementOrWindow,
4388
- St as getExp,
4389
- ge as getIndexForRender,
4390
- re as getItemByPath,
4391
- He as getKey,
4392
- wt as getLengthOfAllArray,
4393
- Re as getMaxLengthAllArray,
4394
- We as getMinLengthAllArray,
4395
- je as getMouseClient,
4396
- ne as getMouseClientX,
4397
- oe as getMouseClientY,
4398
- Ue as getObjectByKeys,
4399
- ze as getObjectNoUndefined,
4400
- _e as getObjectOrNone,
4401
- Ke as getRandomText,
4402
- m as getRef,
4403
- Xi as getRequestString,
4404
- Ze as getStepPercent,
4405
- Ve as getStepValue,
4406
- Ye as goScroll,
4407
- qe as inArray,
4408
- Je as initScrollbarOffset,
4409
- Qe as intersectKey,
4410
- gt as isArray,
4411
- Xe as isDifferent,
4412
- y as isDomRuntime,
4413
- _ as isFilled,
4414
- Me as isFloat,
4415
- Mi as isFunction,
4416
- Oi as isInDom,
4417
- Oe as isIntegerBetween,
4418
- At as isNull,
4419
- Ti as isNumber,
4420
- S as isObject,
4421
- F as isObjectNotArray,
4422
- j as isSelected,
4423
- Te as isSelectedByList,
4424
- ct as isString,
4425
- Gi as isWindow,
4426
- z as random,
4427
- fe as render,
4428
- R as replaceRecursive,
4429
- Ge as replaceTemplate,
4430
- ti as secondToTime,
4431
- yi as setApiRefGlobalConditions,
4432
- ts as setElementItem,
4433
- Bi as setRef,
4434
- ei as setValues,
4435
- ii as splice,
4436
- ae as strFill,
4437
- Ci as t,
4438
- W as toArray,
4439
- at as toBind,
4440
- me as toBinds,
4441
- Dt as toCamelCase,
4442
- si as toCamelCaseFirst,
4443
- Fi as toComputed,
4444
- A as toDate,
4445
- ri as toKebabCase,
4446
- N as toNumber,
4447
- ni as toNumberByMax,
4448
- ce as toPercent,
4449
- oi as toPercentBy100,
4450
- B as toRefItem,
4451
- es as transformation,
4452
- ue as uniqueArray,
4453
- mi as useApiRef,
4454
- ve as useBroadcastValueRef,
4455
- $i as useCookieRef,
4456
- pi as useGeoIntlRef,
4457
- vi as useHashRef,
4458
- bi as useLazyRef,
4459
- Si as useLoadingRef,
4460
- Di as useMeta,
4461
- Li as useSessionRef,
4462
- ki as useStorageRef,
4463
- De as useTranslateRef,
4464
- ai as writeClipboardData
1762
+ Yt as DatetimeRef,
1763
+ wt as DesignAbstract,
1764
+ Pt as DesignAsyncAbstract,
1765
+ kt as DesignChanged,
1766
+ Ut as DesignComp,
1767
+ X as DesignComponents,
1768
+ qt as DesignConstructorAbstract,
1769
+ Gt as EventRef,
1770
+ Jt as GeoFlagRef,
1771
+ Bt as GeoIntlRef,
1772
+ w as GeoRef,
1773
+ Z as ListDataRef,
1774
+ Rt as RouterItemRef,
1775
+ Qt as ScrollbarWidthRef,
1776
+ he as computedAsync,
1777
+ oe as computedByLanguage,
1778
+ jt as executeUse,
1779
+ ne as executeUseGlobalInit,
1780
+ Tt as getBind,
1781
+ ce as getBindRef,
1782
+ Dt as getClassName,
1783
+ de as getComputedAsync,
1784
+ xt as getIndexForRender,
1785
+ d as getRef,
1786
+ Mt as render,
1787
+ Zt as setApiRefGlobalConditions,
1788
+ ge as setRef,
1789
+ le as t,
1790
+ T as toBind,
1791
+ Nt as toBinds,
1792
+ fe as toComputed,
1793
+ b as toRefItem,
1794
+ Xt as useApiRef,
1795
+ Et as useBroadcastValueRef,
1796
+ _t as useCookieRef,
1797
+ te as useGeoIntlRef,
1798
+ ee as useHashRef,
1799
+ ie as useLazyItemByMarginRef,
1800
+ Ht as useLazyRef,
1801
+ se as useLoadingRef,
1802
+ re as useMeta,
1803
+ ae as useSessionRef,
1804
+ ue as useStorageRef,
1805
+ Ot as useTranslateRef
4465
1806
  };