@topvisor/ui 1.1.0-addNativeDialog.18 → 1.1.0-addNativeDialog.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/.chunks/{core-6RtNLPXc.amd.js → core-Ct3VWRde.amd.js} +2 -2
  2. package/.chunks/{core-6RtNLPXc.amd.js.map → core-Ct3VWRde.amd.js.map} +1 -1
  3. package/.chunks/{core-a85xGU1N.es.js → core-DVlMYAfi.es.js} +2 -2
  4. package/.chunks/{core-a85xGU1N.es.js.map → core-DVlMYAfi.es.js.map} +1 -1
  5. package/.chunks/{dialog_selectorRegions-DPAMwRDY.es.js → dialog_selectorRegions-BpE6vw7x.es.js} +3 -3
  6. package/.chunks/{dialog_selectorRegions-DPAMwRDY.es.js.map → dialog_selectorRegions-BpE6vw7x.es.js.map} +1 -1
  7. package/.chunks/{dialog_selectorRegions-GjMUeKSk.amd.js → dialog_selectorRegions-hfsUw4lH.amd.js} +2 -2
  8. package/.chunks/{dialog_selectorRegions-GjMUeKSk.amd.js.map → dialog_selectorRegions-hfsUw4lH.amd.js.map} +1 -1
  9. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-6huAKJt_.es.js +619 -0
  10. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-6huAKJt_.es.js.map +1 -0
  11. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CM666D6Q.amd.js +2 -0
  12. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CM666D6Q.amd.js.map +1 -0
  13. package/.chunks/{page.vue_vue_type_script_setup_true_lang-xC0DQs3s.es.js → page.vue_vue_type_script_setup_true_lang-DDBKHTXA.es.js} +4 -4
  14. package/.chunks/page.vue_vue_type_script_setup_true_lang-DDBKHTXA.es.js.map +1 -0
  15. package/.chunks/page.vue_vue_type_script_setup_true_lang-mhd3MqMq.amd.js +2 -0
  16. package/.chunks/page.vue_vue_type_script_setup_true_lang-mhd3MqMq.amd.js.map +1 -0
  17. package/.chunks/popupHint.vue_vue_type_style_index_0_lang-Cce9ZdtW.amd.js +2 -0
  18. package/.chunks/popupHint.vue_vue_type_style_index_0_lang-Cce9ZdtW.amd.js.map +1 -0
  19. package/.chunks/{utils-CmBBH3tD.es.js → utils-B1fRcl8f.es.js} +2 -2
  20. package/.chunks/{utils-CmBBH3tD.es.js.map → utils-B1fRcl8f.es.js.map} +1 -1
  21. package/.chunks/{utils-DTegnc0m.amd.js → utils-CGvb4aCs.amd.js} +2 -2
  22. package/.chunks/{utils-DTegnc0m.amd.js.map → utils-CGvb4aCs.amd.js.map} +1 -1
  23. package/assets/formsExt.css +1 -1
  24. package/assets/layout.css +1 -1
  25. package/assets/{widgetInput.css → popupHint.css} +1 -1
  26. package/core/app.amd.js +1 -1
  27. package/core/app.js +3 -3
  28. package/dialog/dialog.amd.js +1 -1
  29. package/dialog/dialog.js +2 -2
  30. package/formsExt/formsExt.amd.js +1 -1
  31. package/formsExt/formsExt.amd.js.map +1 -1
  32. package/formsExt/formsExt.js +384 -363
  33. package/formsExt/formsExt.js.map +1 -1
  34. package/layout/layout.amd.js.map +1 -1
  35. package/layout/layout.js.map +1 -1
  36. package/package.json +1 -1
  37. package/popup/popup.amd.js +1 -1
  38. package/popup/popup.amd.js.map +1 -1
  39. package/popup/popup.js +141 -94
  40. package/popup/popup.js.map +1 -1
  41. package/project/project.amd.js +1 -1
  42. package/project/project.js +2 -2
  43. package/src/components/dialog/lib/types.d.ts +2 -2
  44. package/src/components/forms/checkbox/checkbox.vue.d.ts +2 -2
  45. package/src/components/forms/checkbox/types.d.ts +4 -3
  46. package/src/components/formsExt/checkboxGroup/checkboxGroup.vue.d.ts +18 -7
  47. package/src/components/formsExt/checkboxGroup/types.d.ts +4 -18
  48. package/src/components/formsExt/libs/optionGroup/optionGroup.vue.d.ts +16 -0
  49. package/src/components/formsExt/libs/optionGroup/types.d.ts +15 -0
  50. package/src/components/formsExt/radioGroup/radioGroup.vue.d.ts +18 -7
  51. package/src/components/formsExt/radioGroup/types.d.ts +4 -20
  52. package/src/components/popup/popup.d.ts +4 -3
  53. package/src/components/popup/popupHint/popupHint.vue.d.ts +17 -0
  54. package/src/components/popup/popupHint/types.d.ts +7 -0
  55. package/src/core/utils/check.d.ts +5 -1
  56. package/tabsView/tabsView.amd.js +1 -1
  57. package/tabsView/tabsView.amd.js.map +1 -1
  58. package/tabsView/tabsView.js +1 -1
  59. package/utils/check.amd.js +1 -1
  60. package/utils/check.amd.js.map +1 -1
  61. package/utils/check.js +14 -21
  62. package/utils/check.js.map +1 -1
  63. package/utils/searchers.amd.js +1 -1
  64. package/utils/searchers.js +2 -2
  65. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CoklzD3N.amd.js +0 -2
  66. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CoklzD3N.amd.js.map +0 -1
  67. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-FWjpvJs5.es.js +0 -615
  68. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-FWjpvJs5.es.js.map +0 -1
  69. package/.chunks/page.vue_vue_type_script_setup_true_lang-0_uuXDQf.amd.js +0 -2
  70. package/.chunks/page.vue_vue_type_script_setup_true_lang-0_uuXDQf.amd.js.map +0 -1
  71. package/.chunks/page.vue_vue_type_script_setup_true_lang-xC0DQs3s.es.js.map +0 -1
  72. package/.chunks/widgetInput.vue_vue_type_style_index_0_lang-Cce9ZdtW.amd.js +0 -2
  73. package/.chunks/widgetInput.vue_vue_type_style_index_0_lang-Cce9ZdtW.amd.js.map +0 -1
  74. /package/src/components/popup/{alert/alert.vue.d.ts → popupAlert/popupAlert.vue.d.ts} +0 -0
  75. /package/src/components/popup/{alert → popupAlert}/types.d.ts +0 -0
  76. /package/src/components/popup/{confirm/confirm.vue.d.ts → popupConfirm/popupConfirm.vue.d.ts} +0 -0
  77. /package/src/components/popup/{confirm → popupConfirm}/types.d.ts +0 -0
  78. /package/src/components/popup/{prompt/prompt.vue.d.ts → popupPrompt/popupPrompt.vue.d.ts} +0 -0
  79. /package/src/components/popup/{prompt → popupPrompt}/types.d.ts +0 -0
@@ -1,615 +0,0 @@
1
- import { nextTick as te, ref as x, markRaw as ae, shallowReactive as oe, defineComponent as ie, onUnmounted as re, createElementBlock as F, openBlock as z, Fragment as ne, renderList as de, unref as se, createBlock as le, resolveDynamicComponent as ce } from "vue";
2
- import { sleep as pe, waitWhile as Z } from "../utils/system.js";
3
- import { C as b } from "./forms-BWoAyEVH.es.js";
4
- import { TopPopupWorker as ge } from "../popup/worker.js";
5
- import { historySetState as L, genHash as R, getHash as K, setHashs as he } from "../utils/route.js";
6
- import { connectScrollShadow as ue } from "../utils/scroll.js";
7
- import { querySelectorAllArray as h, isVisible as u } from "../utils/dom.js";
8
- $;
9
- class c {
10
- static state = {
11
- load: void 0,
12
- decoratorOnCreate: void 0,
13
- /**
14
- * Порядковый номер перехода в диалоговых окнах
15
- *
16
- * Для расчета анимации Вперед / Назад
17
- */
18
- viewPageN: 0
19
- };
20
- static inited = !1;
21
- /**
22
- * Инициировать события слежения за парамтерами url
23
- *
24
- * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу
25
- */
26
- static init(t) {
27
- if (this.inited) return;
28
- this.inited = !0, this.state.load = t == null ? void 0 : t.load, this.state.decoratorOnCreate = t == null ? void 0 : t.decoratorOnCreate;
29
- const a = (t == null ? void 0 : t.autoInitDelay) ?? 5e3;
30
- window.addEventListener("hashchange", (o) => {
31
- this.opendDialogsFromChangeUrl(o.oldURL, o.newURL);
32
- }), this.opendDialogsFromChangeUrl("", location.href), document.addEventListener("mousedown", async (o) => {
33
- const i = o.target.closest("a[data-to-view]");
34
- if (!i) return;
35
- let n = "next";
36
- i.dataset.action === "top-dialog-close" && (n = "prev"), i.href = c.genViewPageHash(i.dataset.toView, n);
37
- }), document.addEventListener("click", async (o) => {
38
- var p, w;
39
- const i = o.target.closest("[data-to-view]");
40
- if (!i) return;
41
- if (i instanceof HTMLAnchorElement && i.href === ".") {
42
- o.preventDefault();
43
- const k = new MouseEvent("mousedown", {
44
- bubbles: !0,
45
- cancelable: !0,
46
- view: window
47
- });
48
- i.dispatchEvent(k), setTimeout(() => i.click());
49
- return;
50
- }
51
- const n = await this.getDialogsUtils(), s = i.dataset.toView, l = s.split("-")[0], g = n.getElDialogById(l);
52
- let f = "next";
53
- if (g) {
54
- const k = h(g, ".modal-layer"), I = k.reduce((E, j) => {
55
- const P = j.querySelector(":scope > .active");
56
- return P && E.push(P), E;
57
- }, []);
58
- if (I.length) {
59
- const E = s.split("-")[1].split(":")[0];
60
- (((p = k.reduce((P, V) => {
61
- const O = V == null ? void 0 : V.querySelector(`:scope > [data-view-page="${E}"]`);
62
- return O && P.push(O), P;
63
- }, [])[0]) == null ? void 0 : p.dataset.order) ?? 0) < (((w = I[0]) == null ? void 0 : w.dataset.order) ?? 0) && (f = "prev");
64
- }
65
- }
66
- i.dataset.action === "top-dialog-close" && (f = "prev");
67
- const d = c.genViewPageHash(s, f);
68
- if (i instanceof HTMLAnchorElement) {
69
- if (!g || !u(g)) return;
70
- if (location.hash.indexOf(s.replace("-", "=")) !== -1) {
71
- await n.toViewDirty(s);
72
- return;
73
- }
74
- }
75
- !!(g != null && g.dataset.toViewReplace) ? (o.preventDefault(), L(!0, d), await n.toViewDirty(s), f == "next" ? c.state.viewPageN++ : c.state.viewPageN--) : i.tagName !== "A" && (this.compareStates(d, location.hash) ? L(!1, d) : await n.toViewDirty(s));
76
- }), setTimeout(() => this.getDialogsUtils(), a);
77
- }
78
- static opendDialogsFromChangeUrl(t, a) {
79
- const o = t.replace(/.*?#/, "#"), r = a.replace(/.*?#/, "#");
80
- this.compareStates(o, r) && this.opendDialogsFromUrl();
81
- }
82
- static async getDialogsUtils() {
83
- const { TopDialogUtils: t } = await Promise.resolve().then(() => Me);
84
- return t;
85
- }
86
- static getDialog(t) {
87
- return t.closest(".ui-dialog-content");
88
- }
89
- /**
90
- * todo: Переписать на сайте на this.getDialog()
91
- *
92
- * @deprecated Для обратной совместимости
93
- */
94
- static get$dialog(t) {
95
- return t.closest(".ui-dialog-content");
96
- }
97
- static getPage(t) {
98
- return t.closest("[data-view-page]");
99
- }
100
- /**
101
- * todo: Переписать на сайте на this.getPage()
102
- *
103
- * @deprecated Для обратной совместимости
104
- */
105
- static get$page(t) {
106
- return t.closest("[data-view-page]");
107
- }
108
- static getPairPage(t) {
109
- const a = c.getDialog(t);
110
- if (!a) return;
111
- const o = c.getPage(t), r = o == null ? void 0 : o.dataset.viewPage;
112
- return h(a, `[data-view-page="${r}"]`);
113
- }
114
- /**
115
- * todo: Переписать на сайте на this.getPairPage()
116
- *
117
- * @deprecated Для обратной совместимости
118
- */
119
- static get$pairPage(t) {
120
- const a = c.get$dialog(t), r = c.get$page(t).data("view-page");
121
- return $('[data-view-page="' + r + '"]', a);
122
- }
123
- /**
124
- * Закрыть диалоговое окно по его id
125
- * @param id - id элемента ElTopDialog
126
- * @see ElTopDialog
127
- */
128
- static close(t) {
129
- const a = document.getElementById(t);
130
- if (!a) return;
131
- v(a).close();
132
- }
133
- /**
134
- * Размонтировать диалоговое окно по его id
135
- * @param id - id элемента ElTopDialog
136
- * @see ElTopDialog
137
- */
138
- static destroy(t) {
139
- const a = document.getElementById(t);
140
- if (!a) return;
141
- const o = v(a);
142
- o.close(), o.remove();
143
- }
144
- /**
145
- * Сгенерировать ссылку на страницу в диалоговом окне
146
- * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}
147
- * @param moveDirection
148
- */
149
- static genViewPageHash(t, a = "next") {
150
- let o = this.state.viewPageN;
151
- a == "prev" ? o-- : o++;
152
- const r = t.split("-"), i = r.shift(), n = r.join("-");
153
- let s = R("vpn", o);
154
- return s = R("view-" + i, n, s), s;
155
- }
156
- /**
157
- * Сравнить версию открытых диалоговых окон
158
- * @returns вернет true, если состояния открытых окон изменилось
159
- */
160
- static compareStates(t, a) {
161
- const o = t.match(/[#&]view-[^&]+/g) || [], r = a.match(/[#&]view-[^&]+/g) || [];
162
- return !!(o.length !== r.length || o.filter((n, s) => {
163
- const l = r[s] || "";
164
- return n !== l;
165
- }).length);
166
- }
167
- static opendDialogsFromUrl = async () => {
168
- const t = Number(K("vpn")) || 0;
169
- let a;
170
- const o = new RegExp("view-((\\w+)=([\\w-]+)(?::([\\w.:-]+))?)", "g");
171
- for (; a = o.exec(location.hash); ) {
172
- let i = "next";
173
- return t < this.state.viewPageN && (i = "prev"), (await this.getDialogsUtils()).toViewDirty(a[1], i);
174
- }
175
- return h(document, ".ui-dialog-content[data-view-page-active]").filter((i) => u(i)).forEach((i) => {
176
- const n = i.getAttribute("id");
177
- if (!n) throw "Диалоговое окно не содержит id";
178
- K("view-" + n) || v(i).close();
179
- }), this.state.viewPageN = t, !0;
180
- };
181
- }
182
- let J = !1;
183
- const me = () => {
184
- J || (J = !0, document.addEventListener("click", (e) => {
185
- const t = e.target.closest('[data-action="top-dialog-close"]');
186
- if (!t) return;
187
- e.preventDefault();
188
- const a = t.closest(".ui-dialog-content");
189
- if (!a) return;
190
- const o = t.dataset.toView;
191
- if (o == "toPrevPage()") {
192
- A.toPrevPage(a);
193
- return;
194
- }
195
- if (o) {
196
- const i = o.split("-"), n = i.shift(), s = i.join("-");
197
- if (!n) return;
198
- const l = A.getElDialogById(n);
199
- if (!l) return;
200
- const g = h(l, `[data-view-page="${s}"]`);
201
- if (!g) return;
202
- if (!u(g[0])) {
203
- const f = c.genViewPageHash(o, "prev");
204
- L(!1, f);
205
- return;
206
- }
207
- }
208
- v(a).close();
209
- }), document.addEventListener("submit", (e) => {
210
- const t = e.target;
211
- (t.matches(".modal-body > form") || t.matches(".modal-layer-body > form")) && e.preventDefault();
212
- }), document.addEventListener("keypress", (e) => {
213
- const t = e.target;
214
- if (!(!t.closest(".ui-dialog .modal-body") || !(t.matches("input:not(.searcher), textarea:not(.searcher), select:not(.searcher), button:not(.searcher)") || t.hasAttribute("contenteditable"))) && e.key === "Enter") {
215
- if (t.classList.contains("autocomplete")) {
216
- e.preventDefault();
217
- return;
218
- }
219
- if (t.tagName === "TEXTAREA") {
220
- if (!e.ctrlKey && !e.metaKey) return;
221
- const r = t.closest("form");
222
- if (r) {
223
- const i = h(r, 'button[type="submit"]').concat(h(r, 'input[type="submit"]')).find((n) => u(n));
224
- i == null || i.click();
225
- }
226
- }
227
- }
228
- }), document.addEventListener("click", (e) => {
229
- if (!e.target.classList.contains("ui-dialog-overlay")) return;
230
- let a, o = 0;
231
- h(document, ".ui-dialog").filter((i) => u(i) && i.getAttribute("aria-modal") === "false").forEach((i) => {
232
- const n = Number(window.getComputedStyle(i).zIndex);
233
- n < o || (a = i, o = n);
234
- }), a && a.close();
235
- }), window.addEventListener("resize", A.recalcPositions), A.recalcPositions());
236
- }, fe = ':root{--dialog-border-color: var(--color-line-1);--dialog-loading-duration: 10s;--top-dialog-footer-height: var(--top-forms-base-height_s)}html.with_dialog{overflow:hidden!important}a[data-to-view]{cursor:pointer}.ui-dialog{overflow:visible;background:var(--color-layout-front-1);max-height:none;max-width:none;border-radius:8px;border:none;padding:0;color:var(--color-text-1)}.ui-dialog[aria-modal=false]{top:50%;transform:translateY(-50%);z-index:100001}.ui-dialog-overlay,.ui-dialog::backdrop{background:#040404;opacity:.5;filter:Alpha(Opacity=50)}.ui-dialog-overlay{position:fixed;inset:0;z-index:100000;display:none}.ui-dialog[aria-modal=false][open]~.ui-dialog-overlay{display:block}.ui-dialog .ui-dialog-content{padding:0;overflow:visible}.ui-dialog .project_name{word-break:break-all}.ui-dialog-content{--dialog-header-height: 50px;--dialog-layer-pageSelector: 0px}.ui-dialog-content-withPageSelector{--dialog-layer-pageSelector: 42px}.modal-header,.modal-body,.modal-footer{font-size:14px;position:relative}.modal-body{padding:var(--padding-default)}.modal-body:has(>.topTable:first-child){padding-top:calc(var(--padding-default) / 4)}.modal-header{border-bottom:1px solid var(--dialog-border-color);height:var(--dialog-header-height);padding:0 var(--padding-default);display:flex;justify-content:space-between;align-items:center;gap:var(--top-padding-2)}.modal-header>*{padding:10px 0;font-size:16px}.modal-header>.top-title{margin:0;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1;order:50;display:flex;align-items:center}.modal-header>.top-title>div[class*=icon]{display:none}.modal-header>div:not(.top-title){order:60}.modal-header>button.close{--top-icon-color: var(--color-text-2);cursor:pointer;background:var(--color-layout-front-1);font-size:16px;order:100;animation-name:none!important}.modal-header>button.close:hover{--top-icon-color: var(--color-text-1)}.modal-header .links_icons{position:absolute;right:50px}.modal-header .links_icons [class*=icon-]{width:auto;height:auto;padding:0 5px;color:#d6dee0}.modal-header .links_icons [class*=icon-].active{color:var(--color-bg-warning-1)}.modal-layer-pageSelector{padding:0 10px!important}.modal-body{max-height:calc(var(--100vh) - var(--dialog-header-height) - 1px - var(--dialog-layer-pageSelector) - var(--top-dialog-footer-height) - 1px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;flex-grow:1}.modal-body hr{margin:16px -15px}.modal-body h4{padding:0;margin:0 0 10px;line-height:normal}.modal-body .inner{padding:var(--padding-default);margin:0 calc(0px - var(--padding-default));position:relative}.modal-body .inner .bt{border-top:1px dashed var(--color-layout-front-primary-3);position:absolute;top:0;right:0;left:0}.modal-body .inner .bb{border-bottom:1px dashed var(--color-layout-front-primary-3);position:absolute;right:0;bottom:0;left:0}.modal-body .inner.color-1{background:var(--color-layout-front-primary-3);color:var(--color-text-1)}.modal-body .inner strong{color:var(--color-text-1)}.modal-body .comment{line-height:18px}.modal-footer{min-height:var(--top-dialog-footer-height);padding:var(--top-gap-2);display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:var(--top-gap-2)}.modal-footer .modal-footer-btn-left{margin-right:auto}.modal-footer>.btn.full_width,.modal-footer>.top-button.full_width{flex-grow:1;align-self:flex-end}.modal-footer-fullWith{flex-wrap:wrap}.modal-footer-fullWith>*{flex-grow:1}.modal-footer-fullWith>.top-info{flex-grow:5}.modal-footer-fullWith>*:empty{flex-grow:0}.ui-dialog-content>.modal-layer>[data-view-page]>input[type=submit]{position:absolute;visibility:hidden}.help_popup .modal-header{display:none}.help_popup .modal-header a{top:2px;z-index:10}.help_popup .modal-header .top-title{display:none}.modal-layer{overflow:hidden}.modal-layer a[data-top-icon]:empty{color:var(--color-text-4);text-decoration:none}.modal-layer>[data-view-page]>div>div.buttons{display:flex;white-space:nowrap;gap:var(--top-padding-1)}.modal-layer>[data-view-page]>div>div.buttons:empty{display:none}.modal-layer>[data-view-page]>div>div.buttons>div,.modal-layer>[data-view-page]>div>div.buttons>a{cursor:pointer;width:auto;height:auto;min-width:auto;min-height:auto;padding:10px 9px;color:var(--color-text-4)}.modal-layer>[data-view-page]>div>div.buttons>div:hover{color:var(--color-text-2)}.modal-layer>[data-view-page]>div>div.buttons>div.hidden{display:none!important}.ui-dialog-content[data-view-page-active]{display:flex!important;flex-direction:column;justify-items:stretch}.ui-dialog-content>.modal-layer{display:flex!important;align-items:stretch;position:relative}.ui-dialog-content.i-change-page>.modal-layer{overflow:hidden}.ui-dialog-content>.modal-layer>[data-view-page]{width:100%;position:relative;display:none;flex-direction:column;justify-content:space-between;animation:.3s cubic-bezier(.4,0,.2,1) forwards}.ui-dialog-content>.modal-layer>[data-view-page].active{display:flex}.ui-dialog-content>.modal-layer>[data-view-page].reverse{animation-direction:reverse}.ui-dialog-content>.modal-layer>[data-view-page].center-to-left,.ui-dialog-content>.modal-layer>[data-view-page].right-to-center{display:flex;position:absolute;inset:0}.ui-dialog-content>.modal-layer>[data-view-page].center-to-left>div,.ui-dialog-content>.modal-layer>[data-view-page].right-to-center>div{overflow:hidden}.ui-dialog-content>.modal-layer-header{border-bottom:1px solid var(--dialog-border-color);min-height:var(--dialog-header-height)}.ui-dialog-content>.modal-layer-header>[data-view-page]>.modal-header{border:none;background:none}.ui-dialog-content>.modal-layer-header>[data-view-page]>.modal-header>*{animation:.3s cubic-bezier(.4,0,.2,1) forwards}.ui-dialog-content>.modal-layer-header>[data-view-page].reverse>.modal-header>*{animation-direction:reverse}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>.top-title{animation-name:dialog-center-to-left-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>.top-title{animation-name:dialog-right-to-center-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>[class*=widget-]{animation-name:dialog-center-to-left-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>[class*=widget-]{animation-name:dialog-right-to-center-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>div{animation-name:dialog-center-to-left-header-icons}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>div{animation-name:dialog-right-to-center-header-icons}.ui-dialog-content>.modal-layer-body{border-radius:0 0 8px 8px;max-height:calc(var(--100vh) - var(--dialog-header-height) - var(--dialog-layer-pageSelector) - var(--toolbar-height, 0px));flex-grow:2}.ui-dialog-content.i-change-page>.modal-layer-body>[data-view-page]{background:var(--color-layout-front-1)}.ui-dialog-content>.modal-layer-body>[data-view-page].center-to-left{animation-name:dialog-center-to-left}.ui-dialog-content>.modal-layer-body>[data-view-page].right-to-center{animation-name:dialog-right-to-center}.ui-dialog-content .modal-footer .second_level{box-sizing:border-box;background:var(--color-layout-front-1);width:100%;min-height:25px;display:flex;align-items:center;justify-content:center}.ui-dialog-content .modal-footer .second_level input{border-radius:8px;width:100%;height:var(--top-forms-base-height);padding:var(--top-padding-1) var(--top-padding-3);box-sizing:border-box}.ui-dialog-content>.modal-layer-body>[data-view-page].i-load-data{pointer-events:none}.ui-dialog-content>.modal-layer-body>[data-view-page].i-load-data:before{content:" ";background:#378dc6;width:0;height:4px;position:absolute;top:0;left:0;z-index:100;animation:top-loadbar var(--dialog-loading-duration) forwards}.ui-dialog-content.modal-expanded{width:100vw!important;height:calc(var(--100vh) + 10px)!important}.modal-header>[data-widget]{padding:0 8px;position:absolute;inset:0;opacity:0;overflow:hidden;align-items:center;visibility:hidden;transition:opacity .3s;z-index:1}.modal-header>[data-widget=search] div.cancel{opacity:0;transform:translate(100%);transition:transform,opacity;transition-duration:.3s}[data-view-page].i-show-search .modal-header>:not([data-widget=search]){visibility:hidden}[data-view-page].i-show-search [data-widget=search]{visibility:visible;opacity:1}[data-view-page].i-show-search [data-widget=search] .cancel{transform:translate(0);opacity:1}[data-view-page]>.modal-header>*{transition:opacity .3s}[data-view-page].i-show-search>.modal-header>div.buttons{opacity:0}.modal-layer .top-popup-wrapper{height:100%!important}@keyframes dialog-center-to-left-header-title{0%{transform:translate(0);opacity:1}75%{opacity:0}to{transform:translate(-30%);opacity:0}}@keyframes dialog-right-to-center-header-title{0%{transform:translate(100%);opacity:0}25%{opacity:0}to{transform:translate(0);opacity:1}}@keyframes dialog-center-to-left-header-icons{0%{transform:translate(0);opacity:1}35%{transform:translate(-20%);opacity:0}to{transform:translate(-20%);opacity:0}}@keyframes dialog-right-to-center-header-icons{0%{transform:translate(20%);opacity:0}65%{transform:translate(20%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes dialog-center-to-left{0%{transform:translate(0);filter:brightness(1)}to{transform:translate(-30%);filter:brightness(.9)}}@keyframes dialog-right-to-center{0%{transform:translate(100%);box-shadow:#0000001a 0 0 10px}to{transform:translate(0);box-shadow:#0003 0 0 10px}}@media only screen and (max-width: 1480px){.win_side_panel_opener{display:none}}@media only screen and (min-width: 1480px){.ui-dialog-content.with_side_panel{box-shadow:#0003 0 0 6px}.ui-dialog-content.with_side_panel .modal-layer-body{background:var(--color-layout-front-1)}[data-widget=side_panel]{--side_panel_width: calc((100vw - 900px)/2 - 28px) ;box-sizing:border-box;background:var(--color-layout-front-1);max-width:var(--side_panel_width);padding:18px;position:absolute;top:calc(var(--dialog-header-height) + 1px + var(--dialog-layer-pageSelector));bottom:calc(var(--top-dialog-footer-height) + 1px);z-index:-1;display:block;transition:.2s}.win_side_panel_left{border-radius:8px 0 0 8px;right:100%}.win_side_panel_right{border-radius:0 8px 8px 0;left:100%}.win_side_panel_closed.win_side_panel_left{right:calc(100% - var(--side_panel_width))}.win_side_panel_closed.win_side_panel_right{left:calc(100% - var(--side_panel_width))}[data-widget=side_panel] .template{display:block}[data-widget=side_panel] .template>.header,[data-widget=side_panel] .template>.footer{display:flex}.win_side_panel_opener{cursor:pointer;background:var(--color-cyan);color:#fff;padding:4px;position:absolute;top:20px}.win_side_panel_closed .win_side_panel_opener:not(:hover){opacity:.3}.win_side_panel_left .win_side_panel_opener{border-radius:4px 0 0 4px;right:100%}.win_side_panel_right .win_side_panel_opener{border-radius:0 6px 6px 0;left:100%}}@media only screen and (max-height: 900px){html.with_dialog{background:#f1f1f1;overflow:hidden}.ui-dialog.me-tightly{border-radius:0;height:auto!important;position:fixed;top:0!important;bottom:0!important}.ui-dialog.me-tightly .ui-dialog-content{min-height:100%!important}.ui-dialog.me-tightly>div>.modal-body{position:absolute;top:var(--dialog-header-height);right:0;left:0;bottom:var(--dialog-header-height)}.ui-dialog.me-tightly>div>.modal-body:last-child{bottom:0}.ui-dialog.me-tightly>div>.modal-footer{position:absolute;right:0;bottom:0;left:0}.ui-dialog.me-tightly .modal-layer-body{border-radius:0;min-height:0!important}.ui-dialog.me-tightly .modal-layer-body .modal-footer{min-height:unset}}', ve = "html.with_dialog body{height:var(--100vh);overflow:hidden}.ui-dialog{border-radius:0}.ui-dialog,.ui-dialog::backdrop{height:calc(100% - var(--toolbar-height, 0px));width:auto;margin-top:0}.ui-dialog[aria-modal=false]{top:0;transform:none}.ui-dialog-content{width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important}.modal-header>.top-title{text-align:center;font-size:14px}.modal-header>button.close{font-size:14px;order:1}.modal-body:last-child{bottom:0}.modal-footer{bottom:0}.modal-footer .second_level{padding:10px 8px}.modal-layer-body{min-height:0!important}.ui-dialog-content>.modal-layer-body{border-radius:0}.modal-body,.modal-footer{padding-right:12px;padding-left:12px}.modal-footer .btn:last-child{margin-right:12px}.modal-body .inner{padding:12px;margin:0 -12px;position:relative}", we = ".modal-menu-opener{order:1!important}.modal-menu-opener:before{--top-icon-size: 20px;--top-icon-color: #FFF;--top-icon-width: var(--top-icon-size);border-radius:50%;background:var(--color-bg-primary-1);padding:3px;transition:transform .1s}.modal-menu-opener:hover:before{background:var(--color-bg-primary-2)}.modal-menu-opener.top-active:before{background:var(--color-bg-primary-2);transform:scale(.8)}.modal-layer .top-popup-wrapper{background:transparent;width:auto!important;padding:0!important;margin:0!important;top:0!important;right:0!important;left:0!important;transition:background .3s}.modal-layer .top-popup-wrapper>.top-popup[class],.modal-layer .top-popup-wrapper.with_notch>.top-popup[class]{border-radius:8px;border:none;margin:12px!important;max-width:100%;max-height:calc(100% - 24px);inset:0 0 auto!important;overflow:auto;display:flex;flex-direction:column;opacity:1;transform:translateY(calc(-100% - 24px));transition:transform .3s}.modal-layer .top-popup>.top-popup_header{background:var(--color-theme-50)}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select{border:none}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select .text{color:#fff}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select .arrow{background:none}.modal-layer .top-popup-wrapper-shown:not(.top-popup-wrapper-closed){background:#34495e40}@media only screen and (min-width: 1480px){.ui-dialog-content.with_side_panel{box-shadow:#0003 0 0 6px}.ui-dialog-content.with_side_panel .modal-layer-body{background:var(--color-layout-front-1)}[data-widget=side_panel]{--side_panel_width: calc((100vw - 900px)/2 - 28px) ;box-sizing:border-box;background:var(--color-layout-front-1);max-width:var(--side_panel_width);padding:18px;display:block;position:absolute;top:51px;bottom:51px;z-index:-1;transition:.2s}.win_side_panel_left{border-radius:8px 0 0 8px;right:100%}.win_side_panel_right{border-radius:0 8px 8px 0;left:100%}.win_side_panel_closed.win_side_panel_left{right:calc(100% - var(--side_panel_width))}.win_side_panel_closed.win_side_panel_right{left:calc(100% - var(--side_panel_width))}[data-widget=side_panel] .template{display:block}[data-widget=side_panel] .template>.header,[data-widget=side_panel] .template>.footer{display:flex}.win_side_panel_opener{cursor:pointer;background:var(--color-cyan);color:#fff;padding:4px;position:absolute;top:20px}.win_side_panel_closed .win_side_panel_opener:not(:hover){opacity:.3}.win_side_panel_left .win_side_panel_opener{border-radius:4px 0 0 4px;right:100%}.win_side_panel_right .win_side_panel_opener{border-radius:0 6px 6px 0;left:100%}}", ye = "html{--top-dialog-width: auto;--top-dialog-height: auto}.top-dialog{max-width:100vw}.top-dialog .modal-layer-body{height:var(--top-dialog-height)}", be = ".top-dialog{width:var(--top-dialog-width)!important}";
237
- b.insertStyleToPage(fe);
238
- b.insertStyleToPage(ve, "m");
239
- b.insertStyleToPage(we, "pc");
240
- b.insertStyleToPage(ye);
241
- b.insertStyleToPage(be, "pc");
242
- let G;
243
- const _ = (e) => !!e && typeof e == "object" && "jquery" in e, W = (e) => {
244
- const t = X(e), a = xe(t);
245
- e.setAttribute("closedby", a.closedby), e.setAttribute("aria-modal", "false"), e.show();
246
- }, xe = (e) => {
247
- const t = {
248
- modal: !1,
249
- closedby: "closerequest"
250
- }, a = e.dataset.closedby;
251
- return (a === "closerequest" || a === "none") && (t.closedby = a), t;
252
- }, q = (e) => document.getElementById(e), _e = (e) => {
253
- e.dialog = (t) => {
254
- const a = e.closest(".ui-dialog");
255
- switch (t) {
256
- case void 0:
257
- case "open": {
258
- W(a);
259
- break;
260
- }
261
- case "close": {
262
- a.close();
263
- break;
264
- }
265
- default:
266
- throw new Error(`Передан неизвестный аргумент: "${t}"`);
267
- }
268
- return e;
269
- }, e.toggleClass = (t, a) => {
270
- if (typeof t == "string" && (t = t.split(" ")), Array.isArray(t))
271
- t.forEach((o) => {
272
- e.classList.toggle(o, a);
273
- });
274
- else
275
- throw new Error(`Передан необработанный тип аргумента: ${typeof t}`);
276
- return e;
277
- }, e.data = (...t) => ($(e).data(t), e);
278
- }, S = async (e, t, a) => {
279
- if (!e.startsWith("dialog_")) return;
280
- const o = B(e);
281
- if (o && (o.isOpened.value = !0, t !== void 0 && (o.pageActive.value = t), a !== void 0 && (o.pageActiveNext.value = a), await te(), a)) {
282
- const r = q(e);
283
- if (!r) return;
284
- r.querySelectorAll(`[data-view-page="${a}"]`).length || await Z(() => !r.querySelectorAll(`[data-view-page="${a}"]`).length);
285
- }
286
- }, Pe = (e) => {
287
- var a, o;
288
- const t = e.querySelector(".modal-body");
289
- t && (ue(t), (o = (a = c.state).decoratorOnCreate) == null || o.call(a, e), Ae(e));
290
- }, Ae = (e) => {
291
- $(e).on("aftershow.top-menu-popup", "[data-top-popup]", (t, a) => {
292
- var i;
293
- const o = a[0], r = c.getPairPage(o);
294
- (i = r == null ? void 0 : r[1]) == null || i.prepend(o);
295
- });
296
- }, ke = async (e) => {
297
- var n;
298
- const t = e.dataset.viewPageActive, a = window.innerWidth;
299
- b.state.documentClassModificators.set("top-dialog", "with_dialog");
300
- const r = window.innerWidth - a;
301
- document.documentElement.scrollHeight > window.innerHeight && (document.querySelector("html").style.marginRight = r + "px"), N();
302
- const i = B(e.getAttribute("id"));
303
- (n = i == null ? void 0 : i.emit) == null || n.call(i, "open", t);
304
- }, Ee = async (e) => {
305
- var i;
306
- const t = e.getAttribute("id"), a = e.dataset.viewPageActive;
307
- if (a) {
308
- const n = {
309
- vpn: c.state.viewPageN,
310
- ["view-" + t]: null
311
- };
312
- n["view-" + t] = null, (c.state.viewPageN === 0 || c.state.viewPageN === 1) && (n.vpn = null), he(n, !1);
313
- }
314
- h(document, ".ui-dialog[open]").find((n) => u(n)) || (b.state.documentClassModificators.delete("top-dialog"), document.querySelector("html").style.marginRight = ""), $(e).trigger("viewAfterClose", [e]);
315
- const r = B(t);
316
- r && (r.isOpened.value = !1, (i = r.emit) == null || i.call(r, "close", a), r.onCloseOnce && (r.onCloseOnce(r.props, a), r.onCloseOnce = void 0)), window.dispatchEvent(new Event("resize"));
317
- }, N = () => {
318
- h(document, ".ui-dialog").filter((t) => u(t)).forEach((t) => {
319
- const a = t.querySelector(".modal-body");
320
- !a || u(a) || (W(t), t.classList.remove("me-tightly"), (t.clientHeight ?? 0) > window.innerHeight && t.classList.add("me-tightly"));
321
- });
322
- }, T = (e) => `${e}Wrapper`, v = (e) => e.closest(".ui-dialog"), X = (e) => e.querySelector(".ui-dialog-content"), Se = () => {
323
- let e = document.body.querySelector(".ui-dialog-overlay");
324
- return e || (e = document.createElement("div"), e.classList.add("ui-dialog-overlay"), document.body.appendChild(e)), e;
325
- }, D = (e, t) => {
326
- const a = Se(), o = document.createElement("dialog");
327
- return o.setAttribute("id", T(e)), o.setAttribute("page-active", t), o.setAttribute("class", "dialog ui-dialog"), a.insertAdjacentElement("beforebegin", o), o;
328
- }, Le = async (e, t) => {
329
- const o = /(\w+)[=-]([\w-]+)(?::([\w.:-]+))?/g.exec(e);
330
- if (o) {
331
- const r = o[1], i = o[2], n = o[3];
332
- let s = [];
333
- n && (s = n.split(":")), await U(r, i, s, t);
334
- }
335
- }, U = async (e, t, a, o, r) => {
336
- let i = null, n = null;
337
- if (typeof e == "object" ? (_(e) && (e = e == null ? void 0 : e[0]), i = e, n = v(i)) : (i = document.getElementById(e), i && (n = document.getElementById(T(e)))), !i && typeof e == "string" && c.state.load) {
338
- await c.state.load(e), await U(e, t, a, o, r);
339
- return;
340
- }
341
- i && (!n && i.dataset.vueDiaolg !== "true" && (i.classList.add("top-dialog", "ui-dialog-content"), n = D(i.getAttribute("id"), i.dataset.viewPageActive), n.append(i)), n && (await H(i, t, a, o), n.__isInit || (n.__isInit = !0, Pe(i), _e(i), n.onclose = () => Ee(i)), W(n), await ke(i), r && r(n)));
342
- }, H = async (e, t, a, o) => {
343
- var g, f;
344
- _(e) && (e = e == null ? void 0 : e[0]), t === void 0 && (t = e.dataset.viewPageActive), t !== e.dataset.viewPageActive && Y(e) && await pe(100), a === void 0 && (a = []), await S(e.getAttribute("id"), void 0, t);
345
- const r = h(e, ".modal-layer"), i = r.reduce((d, m) => {
346
- const p = m.querySelector(":scope > .active");
347
- return p && d.push(p), d;
348
- }, []), n = r.reduce((d, m) => {
349
- const p = m.querySelector(`:scope > [data-view-page="${t}"]`);
350
- return p && d.push(p), d;
351
- }, []), s = a.join(":");
352
- if (o === void 0 && (o = "next", (((g = n[0]) == null ? void 0 : g.dataset.order) ?? 0) < (((f = i[0]) == null ? void 0 : f.dataset.order) ?? 0) && (o = "prev")), !n.length) return;
353
- const l = v(e);
354
- if (e.dataset.viewPageActive = t, l.setAttribute("page-active", t), n[0].classList.contains("active")) {
355
- n[0].dataset.viewPageArgs !== s && n.forEach((d) => {
356
- d.dataset.viewPageArgs = s;
357
- }), Q(e, n, t, a), M(e, n, t, a);
358
- return;
359
- }
360
- switch (n.forEach((d) => {
361
- d.dataset.viewPageArgs = s;
362
- }), i.forEach((d) => {
363
- d.querySelector(".top-popup-wrapper") && ge.close(d.querySelector(".top-popup-wrapper"));
364
- }), l && !u(l) && (o = "none"), i.length || (o = "none"), u(n[0]) && (o = "none"), o) {
365
- case "prev": {
366
- n.forEach((d) => {
367
- var p, w;
368
- const m = (p = d.parentNode) == null ? void 0 : p.querySelector(":scope > .active");
369
- m && ((w = d.parentNode) == null || w.insertBefore(d, m));
370
- }), i.forEach((d) => {
371
- d.classList.add("right-to-center", "reverse");
372
- }), n.forEach((d) => {
373
- d.classList.add("center-to-left", "reverse");
374
- });
375
- break;
376
- }
377
- case "next": {
378
- n.forEach((d) => {
379
- var p, w;
380
- const m = (p = d.parentNode) == null ? void 0 : p.querySelector(":scope > .active");
381
- m && ((w = d.parentNode) == null || w.insertBefore(d, m.nextSibling));
382
- }), i.forEach((d) => {
383
- d == null || d.classList.add("center-to-left");
384
- }), n.forEach((d) => {
385
- d.classList.add("right-to-center");
386
- });
387
- break;
388
- }
389
- }
390
- if (e.setAttribute("view-page-active", t), i.forEach((d) => {
391
- d.classList.remove("active");
392
- }), n.forEach((d) => {
393
- d.classList.add("active");
394
- }), Q(e, n, t, a), o) {
395
- e.classList.add("i-change-page");
396
- const d = Number(window.getComputedStyle(n[0]).animationDuration.replace("s", "")) * 1e3;
397
- G = setTimeout(() => {
398
- _(e) && (e = e == null ? void 0 : e[0]), S(e.getAttribute("id"), t, ""), Y(e), M(e, n, t, a);
399
- }, d);
400
- } else
401
- await S(e.getAttribute("id"), t, ""), M(e, n, t, a);
402
- }, Ve = (e) => {
403
- var i;
404
- const r = (i = h(e, ".modal-layer").reduce((n, s) => {
405
- const l = s.querySelector(":scope > .active");
406
- return l && n.push(l), n;
407
- }, []).reduce((n, s) => {
408
- let l = s.previousElementSibling;
409
- for (; l && !l.hasAttribute("[data-view-page]"); )
410
- l = l.previousElementSibling;
411
- return l && n.push(l), n;
412
- }, [])[0]) == null ? void 0 : i.dataset.viewPage;
413
- r ? H(e, r, void 0, "prev") : v(e).close();
414
- }, C = /* @__PURE__ */ new Set(), Q = (e, t, a, o) => {
415
- const r = e.getAttribute("id") + t[0].dataset.viewPage + a + o.join();
416
- C.has(r) || (C.add(r), setTimeout(() => {
417
- C.delete(r), $(e).trigger("viewBeforeOpen", [e, $(t), a, o]);
418
- }));
419
- }, M = (e, t, a, o) => {
420
- setTimeout(() => {
421
- $(e).trigger("viewAfterOpen", [e, $(t), a, o]);
422
- });
423
- }, ee = (e) => (_(e) && (e = e == null ? void 0 : e[0]), e.classList.contains("i-change-page")), Y = (e) => {
424
- if (!ee(e)) return !1;
425
- clearTimeout(G);
426
- const t = h(e, ".modal-layer"), a = e.dataset.viewPageActive;
427
- return e.classList.remove("i-change-page"), t.forEach((o) => {
428
- o.querySelectorAll(":scope > [data-view-page]").forEach((r) => {
429
- r.classList.remove("center-to-left", "right-to-center", "reverse", "active");
430
- });
431
- }), t.forEach((o) => {
432
- var r;
433
- (r = o.querySelector(`:scope > [data-view-page="${a}"]`)) == null || r.classList.add("active");
434
- }), !0;
435
- }, ze = (e) => {
436
- const t = q(e);
437
- if (!t) return;
438
- v(t).close();
439
- }, Ce = (e, t, a) => {
440
- _(e) && (e = e.toArray());
441
- const o = e.reduce((r, i) => (i.hasAttribute("[data-view-page]") && u(i) && r.push(i), r), []);
442
- t ? (a !== void 0 && o.forEach((r) => {
443
- r.style.setProperty("--dialog-loading-duration", a + "s");
444
- }), o.forEach((r) => {
445
- r.classList.add("i-load-data");
446
- })) : (o.forEach((r) => {
447
- r.classList.remove("i-load-data");
448
- }), o.forEach((r) => {
449
- r.style.setProperty("--dialog-loading-duration", "10s");
450
- }));
451
- }, $e = (e) => (_(e) && (e = e == null ? void 0 : e[0]), e.classList.contains("i-load-data")), A = {
452
- getElDialogById: q,
453
- updatePageVue: S,
454
- recalcPositions: N,
455
- toViewDirty: Le,
456
- toView: U,
457
- toViewPage: H,
458
- toPrevPage: Ve,
459
- setLoading: Ce,
460
- isLoading: $e,
461
- inAnimation: ee,
462
- close: ze
463
- };
464
- me();
465
- const Me = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
466
- __proto__: null,
467
- TopDialogUtils: A,
468
- createAndMountElDialogWrapper: D,
469
- getDialogWrapperId: T,
470
- getElDialog: X,
471
- getElDialogWrapper: v
472
- }, Symbol.toStringTag, { value: "Module" }));
473
- class We {
474
- /**
475
- * Индентификатор, определяется на уровне компонента TopDialogComponent
476
- *
477
- * Может использоваться в навигации для открытия нужных окон с нужными настройками
478
- */
479
- id;
480
- /**
481
- * ID, используемый в верстке диалогового окна
482
- */
483
- idAttr;
484
- /**
485
- * Пользовательский компонент диалогового окна
486
- */
487
- Component;
488
- /**
489
- * Компонент инициирован
490
- *
491
- * Устанавливается после первого вызова useTopDialog()
492
- */
493
- isMounted = x(!1);
494
- /**
495
- * Компонент готов к использованию
496
- *
497
- * Используется для внутренних преобразований после отрисовки
498
- */
499
- isReady = x(!1);
500
- /**
501
- * Диалоговое окно открыто
502
- */
503
- isOpened = x(!1);
504
- /**
505
- * Имя активной страницы дилогового окна
506
- */
507
- pageActive = x("");
508
- /**
509
- * Диалоговое окно находится в состоянии загрузки своей страницы
510
- */
511
- isLoadingPage = x(!1);
512
- /**
513
- * Следующая активная страница
514
- *
515
- * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию
516
- */
517
- pageActiveNext = x("");
518
- /**
519
- * props компонента, доступны после инициализации
520
- */
521
- props;
522
- /**
523
- * emit базового компонента `TopDialog`
524
- */
525
- emit;
526
- /**
527
- * Одноразовое событие на закрытие диалогового окна
528
- *
529
- * Используется для привязки окна к сценариям использования
530
- */
531
- onCloseOnce;
532
- constructor(t) {
533
- this.id = t.id, this.idAttr = "dialog_" + t.id, this.Component = ae(t);
534
- }
535
- /**
536
- * Событие - компонент инициирован
537
- */
538
- onMounted(t, a) {
539
- this.isMounted.value = !0, this.props = t.props, this.emit = a.emit;
540
- }
541
- /**
542
- * Открыть диалоговое окно
543
- *
544
- * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента
545
- */
546
- async open(t = "main", a, o = [], r, i) {
547
- a && await this.setProps(a), r && (this.onCloseOnce = r), await (await c.getDialogsUtils()).toView(this.idAttr, t, o, i);
548
- }
549
- /**
550
- * Открыть диалоговое окно как ссылку, для хеш-навигации
551
- *
552
- * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader
553
- */
554
- async openAsLink(t = "main", a, o = [], r, i) {
555
- a && await this.setProps(a), r && (this.onCloseOnce = r);
556
- const n = this.idAttr + "-" + t, s = c.genViewPageHash(n, i);
557
- L(!1, s);
558
- }
559
- /**
560
- * Закрыть диалоговое окно
561
- *
562
- * Не меняет состояние компонента диалогового окна
563
- */
564
- async close() {
565
- c.close(this.idAttr);
566
- }
567
- /**
568
- * Размонтировать $.dialog
569
- */
570
- async destroy() {
571
- c.destroy(this.idAttr);
572
- }
573
- /**
574
- * Устанвоить props
575
- *
576
- * Полностью сбрасывается состояние props
577
- */
578
- async setProps(t = {}) {
579
- this.isMounted || await Z(() => !this.props);
580
- for (const a in this.props)
581
- this.props[a] = t[a];
582
- }
583
- /**
584
- * Проверить, есть ли необходимость отрисовки страницы диалогового окна
585
- */
586
- needShowPage(t) {
587
- return this.isOpened.value ? this.pageActive.value === t || this.pageActiveNext.value === t : !1;
588
- }
589
- }
590
- const qe = {
591
- class: "top-dialogs",
592
- style: { display: "none" }
593
- }, y = oe(/* @__PURE__ */ new Map()), B = (e) => (e = e.replace(/^dialog_/, ""), y.get(e)), Fe = (e) => {
594
- if (!(e != null && e.id))
595
- throw console.log({ TopDialogComponent: e }), new Error("Expected TopDialogComponent");
596
- return y.has(e.id) || y.set(e.id, new We(e)), y.get(e.id);
597
- }, Re = /* @__PURE__ */ ie({
598
- name: "DialogWrapper",
599
- __name: "dialogs",
600
- setup(e) {
601
- return re(() => {
602
- y.forEach((t) => t.destroy()), y.clear();
603
- }), (t, a) => (z(), F("div", qe, [
604
- (z(!0), F(ne, null, de(se(y), ([o, r]) => (z(), le(ce(r.Component), { key: o }))), 128))
605
- ]));
606
- }
607
- });
608
- export {
609
- c as T,
610
- Re as _,
611
- Fe as a,
612
- D as c,
613
- B as g
614
- };
615
- //# sourceMappingURL=dialogs.vue_vue_type_script_setup_true_lang-FWjpvJs5.es.js.map