@topvisor/ui 1.0.18-ux-5 → 1.0.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 (110) hide show
  1. package/.chunks/{datepicker-C-QFv8Wm.es.js → datepicker-B8O5mg_G.es.js} +2 -2
  2. package/.chunks/{datepicker-C-QFv8Wm.es.js.map → datepicker-B8O5mg_G.es.js.map} +1 -1
  3. package/.chunks/{datepicker-QG5NqyHa.amd.js → datepicker-CFiizYlZ.amd.js} +2 -2
  4. package/.chunks/{datepicker-QG5NqyHa.amd.js.map → datepicker-CFiizYlZ.amd.js.map} +1 -1
  5. package/.chunks/{utils-BBVRN-KU.amd.js → dialogs.vue_vue_type_script_setup_true_lang-B55gllXV.amd.js} +2 -2
  6. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-B55gllXV.amd.js.map +1 -0
  7. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BkBYW0yR.es.js +266 -0
  8. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BkBYW0yR.es.js.map +1 -0
  9. package/.chunks/forms-BWc2kMFD.amd.js +3 -0
  10. package/.chunks/forms-BWc2kMFD.amd.js.map +1 -0
  11. package/.chunks/{forms-BeCSWhdZ.es.js → forms-DW_XLzg8.es.js} +264 -241
  12. package/.chunks/forms-DW_XLzg8.es.js.map +1 -0
  13. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-BC88J71B.amd.js → listItem.vue_vue_type_script_setup_true_lang-naMiJruI.amd.js} +2 -2
  14. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-BC88J71B.amd.js.map → listItem.vue_vue_type_script_setup_true_lang-naMiJruI.amd.js.map} +1 -1
  15. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-DN-pHrhc.es.js → listItem.vue_vue_type_script_setup_true_lang-saYIC17M.es.js} +2 -2
  16. package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-DN-pHrhc.es.js.map → listItem.vue_vue_type_script_setup_true_lang-saYIC17M.es.js.map} +1 -1
  17. package/.chunks/{menu.vue_vue_type_style_index_0_lang-RE6Dl4Gd.amd.js → menu.vue_vue_type_style_index_0_lang-06YUloqb.amd.js} +2 -2
  18. package/.chunks/{menu.vue_vue_type_style_index_0_lang-RE6Dl4Gd.amd.js.map → menu.vue_vue_type_style_index_0_lang-06YUloqb.amd.js.map} +1 -1
  19. package/.chunks/{menu.vue_vue_type_style_index_0_lang-BNzX8C8v.es.js → menu.vue_vue_type_style_index_0_lang-CcspstQc.es.js} +2 -2
  20. package/.chunks/{menu.vue_vue_type_style_index_0_lang-BNzX8C8v.es.js.map → menu.vue_vue_type_style_index_0_lang-CcspstQc.es.js.map} +1 -1
  21. package/.chunks/{notice-zqNsNusv.es.js → notice-BQyuy4nF.es.js} +2 -2
  22. package/.chunks/{notice-zqNsNusv.es.js.map → notice-BQyuy4nF.es.js.map} +1 -1
  23. package/.chunks/{notice-D41sY-7B.amd.js → notice-zADfJ5TR.amd.js} +2 -2
  24. package/.chunks/{notice-D41sY-7B.amd.js.map → notice-zADfJ5TR.amd.js.map} +1 -1
  25. package/.chunks/{popup-CnEewIWQ.amd.js → popup-CPS-7fSX.amd.js} +2 -2
  26. package/.chunks/popup-CPS-7fSX.amd.js.map +1 -0
  27. package/.chunks/{popup-CYjUUTBV.es.js → popup-DsVptZvL.es.js} +6 -7
  28. package/.chunks/popup-DsVptZvL.es.js.map +1 -0
  29. package/.chunks/utils-B75aamxF.amd.js +2 -0
  30. package/.chunks/utils-B75aamxF.amd.js.map +1 -0
  31. package/.chunks/utils-DIP-BdDy.es.js +225 -0
  32. package/.chunks/utils-DIP-BdDy.es.js.map +1 -0
  33. package/.chunks/utils-DfYj3r9i.amd.js +2 -0
  34. package/.chunks/utils-DfYj3r9i.amd.js.map +1 -0
  35. package/.chunks/utils-h5v4GPgp.es.js +79 -0
  36. package/.chunks/utils-h5v4GPgp.es.js.map +1 -0
  37. package/assets/charts.css +1 -1
  38. package/assets/core.css +1 -1
  39. package/assets/formsExt.css +1 -1
  40. package/assets/notice.css +1 -1
  41. package/charts/charts.amd.js +1 -1
  42. package/charts/charts.js +1 -1
  43. package/components/dialog/dialog/dialog.vue.d.ts +1 -1
  44. package/components/dialog/dialog/page/types.d.ts +7 -0
  45. package/components/popup/lib/popup.d.ts +2 -3
  46. package/components/popup/lib/worker.d.ts +7 -7
  47. package/components/project/selectorRegion/utils/consts.d.ts +0 -2
  48. package/components/project/tagSelector/tagSelector.vue.d.ts +2 -2
  49. package/core/app.amd.js +1 -1
  50. package/core/app.amd.js.map +1 -1
  51. package/core/app.js +5 -5
  52. package/core/core/core.d.ts +2 -0
  53. package/core/core/preloaders.d.ts +19 -0
  54. package/core/plugins/i18n.d.ts +13 -3
  55. package/core/utils/searchers.d.ts +0 -2
  56. package/dialog/dialog.amd.js +1 -1
  57. package/dialog/dialog.amd.js.map +1 -1
  58. package/dialog/dialog.js +61 -55
  59. package/dialog/dialog.js.map +1 -1
  60. package/forms/forms.amd.js +1 -1
  61. package/forms/forms.js +1 -1
  62. package/formsExt/formsExt.amd.js +1 -1
  63. package/formsExt/formsExt.amd.js.map +1 -1
  64. package/formsExt/formsExt.js +81 -78
  65. package/formsExt/formsExt.js.map +1 -1
  66. package/layout/layout.amd.js +1 -1
  67. package/layout/layout.amd.js.map +1 -1
  68. package/layout/layout.js +1 -1
  69. package/layout/layout.js.map +1 -1
  70. package/package.json +2 -1
  71. package/popup/popup.amd.js +1 -1
  72. package/popup/popup.js +2 -2
  73. package/popup/worker.amd.js +1 -1
  74. package/popup/worker.amd.js.map +1 -1
  75. package/popup/worker.js +3 -3
  76. package/popup/worker.js.map +1 -1
  77. package/project/project.amd.js +1 -1
  78. package/project/project.amd.js.map +1 -1
  79. package/project/project.js +19 -21
  80. package/project/project.js.map +1 -1
  81. package/tabsView/tabsView.amd.js +1 -1
  82. package/tabsView/tabsView.js +1 -1
  83. package/utils/clipboard.amd.js +1 -1
  84. package/utils/clipboard.js +1 -1
  85. package/utils/date.amd.js +1 -1
  86. package/utils/date.js +1 -1
  87. package/utils/device.amd.js +1 -1
  88. package/utils/device.js +1 -1
  89. package/utils/lodash.amd.js +1 -1
  90. package/utils/lodash.js +1 -1
  91. package/utils/price.amd.js +1 -1
  92. package/utils/price.js +1 -1
  93. package/utils/searchers.amd.js +1 -1
  94. package/utils/searchers.amd.js.map +1 -1
  95. package/utils/searchers.js +0 -2
  96. package/utils/searchers.js.map +1 -1
  97. package/utils/string.amd.js +1 -1
  98. package/utils/string.js +1 -1
  99. package/.chunks/forms-BeCSWhdZ.es.js.map +0 -1
  100. package/.chunks/forms-DYuU936i.amd.js +0 -3
  101. package/.chunks/forms-DYuU936i.amd.js.map +0 -1
  102. package/.chunks/popup-CYjUUTBV.es.js.map +0 -1
  103. package/.chunks/popup-CnEewIWQ.amd.js.map +0 -1
  104. package/.chunks/utils-BBVRN-KU.amd.js.map +0 -1
  105. package/.chunks/utils-ByeZ1FPX.amd.js +0 -2
  106. package/.chunks/utils-ByeZ1FPX.amd.js.map +0 -1
  107. package/.chunks/utils-Cbdb1gth.es.js +0 -223
  108. package/.chunks/utils-Cbdb1gth.es.js.map +0 -1
  109. package/.chunks/utils-DFkcW3nI.es.js +0 -338
  110. package/.chunks/utils-DFkcW3nI.es.js.map +0 -1
@@ -1,223 +0,0 @@
1
- import { nextTick as T } from "vue";
2
- import { C as c } from "./forms-BeCSWhdZ.es.js";
3
- import { TopPopupWorker as V } from "../popup/worker.js";
4
- import { waitWhile as j, sleep as A } from "../utils/system.js";
5
- import { setHash as h } from "../utils/route.js";
6
- import { T as l, g as y } from "./utils-DFkcW3nI.es.js";
7
- import { querySelectorVisible as _ } from "../utils/dom.js";
8
- $;
9
- let k = !1;
10
- const W = () => {
11
- k || (k = !0, document.addEventListener("keydown", (e) => {
12
- if (e.key !== "Escape" || !e.target) return;
13
- const t = e.target;
14
- t.closest(".ui-dialog") && (t.contentEditable === "true" || t.contentEditable === "plaintext-only" || _(document.documentElement, ".top-popup-wrapper") || t.classList.contains("autocomplete") || _(document.documentElement, ".fancybox-container") || $(".ui-dialog-content:visible:last").dialog("close"));
15
- }), $(document).on("click", '[data-action="top-dialog-close"]', (e) => {
16
- e.preventDefault();
17
- const t = e.target.closest('[data-action="top-dialog-close"]'), a = t.closest(".ui-dialog-content");
18
- if (!a) return;
19
- const o = $(a), i = t.dataset.toView;
20
- if (i == "toPrevPage()") {
21
- v.toPrevPage(o);
22
- return;
23
- }
24
- if (i) {
25
- var r = i.split("-"), d = r.shift(), n = r.join("-"), p = $("#" + d), g = $('[data-view-page="' + n + '"]', p);
26
- if (!g.is(":visible")) {
27
- const s = l.genViewPageHash(i, "prev");
28
- location.hash = s;
29
- return;
30
- }
31
- }
32
- o.dialog("close");
33
- }), $(document).on("submit", ".modal-body > form, .modal-layer-body > form", function(e) {
34
- e.preventDefault();
35
- }), $(document).on("keypress", ".ui-dialog .modal-body :input:not(.searcher), .ui-dialog .modal-body [contenteditable]", function(e) {
36
- if (e.key === "ENTER") {
37
- if (e.target.classList.contains("autocomplete")) {
38
- e.preventDefault();
39
- return;
40
- }
41
- if (e.target.tagName === "TEXTAREA") {
42
- if (!e.ctrlKey && !e.metaKey) return;
43
- const t = e.target.closest("form");
44
- if (t) {
45
- let a = $(":submit:visible", t)[0];
46
- a || (a = $(":submit:visible", t)[0]), a == null || a.click();
47
- }
48
- }
49
- }
50
- }), $(document).on("click", ".ui-widget-overlay", function() {
51
- let e, t = 0;
52
- $(".ui-dialog:visible").each((a, o) => {
53
- const i = Number($(o).css("z-index"));
54
- i < t || (e = $(o), t = i);
55
- }), e && $(".ui-dialog-content", e).dialog("close");
56
- }), $(window).on("resize", v.recalcPositions), v.recalcPositions());
57
- }, L = ':root{--dialog-border-color: var(--color-line-1);--dialog-loading-duration: 10s}html.with_dialog{overflow:hidden!important}a[data-to-view]{cursor:pointer}.ui-widget-overlay{background:#040404;opacity:.5;filter:Alpha(Opacity=50)}.ui-dialog{border-radius:8px;border:none;padding:0}.ui-dialog.ui-widget{border:none}.ui-dialog-titlebar{display:none}.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;--dialog-footer-height: 50px}.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-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:16px}.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>div.close{--top-icon-color: var(--color-text-3);cursor:pointer;background:var(--color-layout-front-1);font-size:16px;order:100;animation-name:none!important}.modal-header>div.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, var(--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, var(--dialog-footer-height));display:flex;flex-shrink:0;align-items:center;justify-content:flex-end}.modal-footer>*:not(.btn):not(.top-button){padding:10px}.modal-footer .btn{min-width:90px;margin:18px 18px 18px 0}.modal-footer .btn:first-child:last-child{margin-left:18px}.modal-footer .modal-footer-btn-left{margin-left:8px;margin-right:auto}.modal-footer>.btn.full_width,.modal-footer>.top-button.full_width{border-radius:0;padding:9px 0;margin:0!important;flex-grow:1;align-self:flex-end}.modal-footer>.top-button{margin-right:8px}.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}.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));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-layer>[data-view-page]>.modal-footer{padding:0;border:none;background:none}.ui-dialog-content .modal-footer .second_level{box-sizing:border-box;background:var(--color-layout-front-1);width:100%;min-height:25px;padding:10px var(--padding-default);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{trantransform:translateX(-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(--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}}', M = 'html.with_dialog body{height:var(--100vh);overflow:hidden}.ui-widget-overlay{height:calc(100% - var(--toolbar-height))}.ui-dialog{border-radius:0;width:auto!important;height:auto!important;position:fixed;inset:0!important}.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>div.close{font-size:14px;order:1}.modal-header>div.close:before{content:""}.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}', q = ".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%}}", B = ":root{--top-dialog-width: auto;--top-dialog-height: auto;--top-dialog-footer-height: 50px}.top-dialog{max-width:100vw}.top-dialog .modal-layer-body{height:var(--top-dialog-height)}.top-dialog .modal-footer{padding:0 var(--top-gap-2)!important;gap:var(--top-gap-2)}.top-dialog .modal-footer>.top-button{margin:0}@media only screen and (max-width: 600px){.top-dialog .modal-footer{padding:var(--top-gap-2)!important;flex-direction:column;align-items:stretch}}", F = ".top-dialog{width:var(--top-dialog-width)!important}";
58
- c.insertStyleToPage(L);
59
- c.insertStyleToPage(M, "m");
60
- c.insertStyleToPage(q, "pc");
61
- c.insertStyleToPage(B);
62
- c.insertStyleToPage(F, "pc");
63
- let z, w = !1;
64
- const H = () => {
65
- $.extend($.ui.dialog.prototype.options, {
66
- focus: (e) => {
67
- var t;
68
- e.target.focus(), (t = $("[autofocus]", e.target)[0]) == null || t.focus();
69
- },
70
- create: (e) => I(e.target),
71
- open: (e) => R(e.target),
72
- close: (e) => X(e.target),
73
- modal: !0,
74
- resizable: !1,
75
- closeOnEscape: !1,
76
- width: "auto",
77
- minHeight: 0
78
- }), $.ui.dialog.prototype._focusTabbable = $.noop, $.ui.dialog.prototype._moveToTopOriginal = $.ui.dialog.prototype._moveToTop, $.ui.dialog.prototype._moveToTop = function() {
79
- this._moveToTopOriginal();
80
- const e = $(this.element);
81
- e.trigger("dialogsMoveToTop", [e]);
82
- }, W(), w = !0;
83
- }, S = (e) => {
84
- var a, o, i, r;
85
- const t = {};
86
- return ((o = (a = e[0]) == null ? void 0 : a.dataset) == null ? void 0 : o.modal) === "false" && (t.modal = !1), (r = (i = e[0]) == null ? void 0 : i.dataset) != null && r.position && (t.position = JSON.parse(e[0].dataset.position)), t;
87
- }, m = async (e, t, a) => {
88
- if (!e.startsWith("dialog_")) return;
89
- const o = y(e);
90
- if (o && (o.isOpened.value = !0, t !== void 0 && (o.pageActive.value = t), a !== void 0 && (o.pageActiveNext.value = a), await T(), a)) {
91
- const i = $("#" + e);
92
- $('[data-view-page="' + a + '"]', i).length || await j(() => !$('[data-view-page="' + a + '"]', i).length);
93
- }
94
- }, I = (e) => {
95
- var t, a;
96
- (a = (t = l.state).decoratorOnCreate) == null || a.call(t, e), K(e);
97
- }, K = (e) => {
98
- $(e).on("aftershow.top-menu-popup", "[data-top-popup]", (t, a) => {
99
- l.get$pairPage(a).eq(1).prepend(a);
100
- });
101
- }, R = async (e) => {
102
- var n;
103
- var t = $(e), a = t.data("view-page-active");
104
- const o = Number($(window).width());
105
- c.state.documentClassModificators.set("top-dialog", "with_dialog");
106
- const r = Number($(window).width()) - o;
107
- Number($(document).height()) > Number($(window).height()) && $("html").css({ "margin-right": r + "px" }), E();
108
- const d = y(t.attr("id"));
109
- (n = d == null ? void 0 : d.emit) == null || n.call(d, "open", a);
110
- }, X = async (e) => {
111
- var r;
112
- var t = $(e), a = t.attr("id"), o = t.data("view-page-active");
113
- o && (h("vpn", l.state.viewPageN), h("view-" + a, null, !1), (l.state.viewPageN === 0 || l.state.viewPageN === 1) && h("vpn", null)), $(".ui-widget-overlay:visible").length || (c.state.documentClassModificators.delete("top-dialog"), $("html").css({ "margin-right": "" })), t.trigger("viewAfterClose", [t]);
114
- const i = y(t.attr("id"));
115
- i && (i.isOpened.value = !1, (r = i.emit) == null || r.call(i, "close", o), i.onCloseOnce && (i.onCloseOnce(i.props, o), i.onCloseOnce = void 0)), window.dispatchEvent(new Event("resize"));
116
- }, E = () => {
117
- $(".ui-dialog:visible > .ui-dialog-content").each((e, t) => {
118
- const a = $(t), o = $(".modal-body:visible", a), i = a.closest(".ui-dialog");
119
- if (!o.length) return;
120
- const r = S(a);
121
- r.position ??= { of: window }, a.dialog("option", r), i.removeClass("me-tightly"), Number(i.height()) > Number($(window).height()) && i.addClass("me-tightly");
122
- });
123
- }, G = async (e, t) => {
124
- const o = /(\w+)[=-]([\w-]+)(?::([\w.:-]+))?/g.exec(e);
125
- if (o) {
126
- const i = o[1], r = o[2], d = o[3];
127
- let n = [];
128
- d && (n = d.split(":")), await b(i, r, n, t);
129
- }
130
- }, b = async (e, t, a, o, i) => {
131
- w || await new Promise((d, n) => {
132
- const p = setInterval(() => {
133
- w && (clearInterval(p), d());
134
- }, 10);
135
- }), await T();
136
- let r;
137
- if (typeof e == "object" ? r = e : r = $("#" + e), !r.length && typeof e == "string" && l.state.load) {
138
- await l.state.load(e), b(e, t, a, o, i);
139
- return;
140
- }
141
- if (await x(r, t, a, o), r.is(".ui-dialog-content"))
142
- r.dialog("open");
143
- else {
144
- const d = S(r);
145
- r.dialog(d);
146
- }
147
- i && i(r);
148
- }, x = async (e, t, a, o) => {
149
- if (t === void 0 && (t = e.data("view-page-active")), t != e.data("view-page-active")) {
150
- var i = C(e);
151
- i && await A(100);
152
- }
153
- a === void 0 && (a = []), await m(e.attr("id"), void 0, t);
154
- var r = $("> .modal-layer", e), d = $("> .active", r), n = $('> [data-view-page="' + t + '"]', r), p = a.join(":");
155
- if (o === void 0 && (o = "next", n.data("order") < d.data("order") && (o = "prev")), !!n.length) {
156
- if (e.data("view-page-active", t), n.is(".active")) {
157
- n.data("view-page-args") != p && n.data("view-page-args", p), P(e, n, t, a), f(e, n, t, a);
158
- return;
159
- }
160
- switch (n.data("view-page-args", p), $(".top-popup-wrapper", d).length && V.close($(".top-popup-wrapper", d)[0]), n.closest(".ui-dialog").is(":hidden") && (o = "none"), d.length || (o = "none"), n.is(":visible") && (o = "none"), o) {
161
- case "prev":
162
- n.each((g, s) => {
163
- $(s).insertBefore($(s).siblings(".active"));
164
- }), d.addClass("right-to-center reverse"), n.addClass("center-to-left reverse");
165
- break;
166
- case "next":
167
- n.each((g, s) => {
168
- $(s).insertAfter($(s).siblings(".active"));
169
- }), d.addClass("center-to-left"), n.addClass("right-to-center");
170
- break;
171
- }
172
- if (e.attr("view-page-active", t), d.removeClass("active"), n.addClass("active"), P(e, n, t, a), o) {
173
- e.addClass("i-change-page");
174
- const g = Number(n.css("animation-duration").replace("s", "")) * 1e3;
175
- z = setTimeout(function() {
176
- m(e.attr("id"), t, ""), C(e), f(e, n, t, a);
177
- }, g);
178
- } else
179
- await m(e.attr("id"), t, ""), f(e, n, t, a);
180
- }
181
- }, J = (e) => {
182
- var t = "", a = $("> .modal-layer", e), o = $("> .active", a).eq(0), i = o.prev("[data-view-page]");
183
- t = i.data("view-page"), t ? x(e, t, void 0, "prev") : e.dialog("close");
184
- }, u = /* @__PURE__ */ new Set(), P = (e, t, a, o) => {
185
- const i = e.attr("id") + t.eq(0).data("view-page") + a + o.join();
186
- u.has(i) || (u.add(i), setTimeout(function() {
187
- u.delete(i), e.trigger("viewBeforeOpen", [e, t, a, o]);
188
- }));
189
- }, f = (e, t, a, o) => {
190
- setTimeout(function() {
191
- e.trigger("viewAfterOpen", [e, t, a, o]);
192
- });
193
- }, O = (e) => e.is(".i-change-page"), C = (e) => {
194
- if (!O(e)) return !1;
195
- clearTimeout(z);
196
- var t = $("> .modal-layer", e), a = e.data("view-page-active");
197
- return e.removeClass("i-change-page"), $("> [data-view-page]", t).removeClass("center-to-left right-to-center reverse active"), $('> [data-view-page="' + a + '"]', t).addClass("active"), !0;
198
- }, U = function(e) {
199
- const t = $("#" + e);
200
- t.dialog("instance") && t.dialog("close");
201
- }, Y = (e, t, a) => {
202
- e.is("[data-view-page]") || (e = $("[data-view-page]:visible", e)), t ? (a !== void 0 && e.each((o, i) => {
203
- i.style.setProperty("--dialog-loading-duration", a + "s");
204
- }), e.addClass("i-load-data")) : (e.removeClass("i-load-data"), e.each((o, i) => {
205
- i.style.setProperty("--dialog-loading-duration", "10s");
206
- }));
207
- }, Z = (e) => e.is(".i-load-data"), v = {
208
- updatePageVue: m,
209
- recalcPositions: E,
210
- toViewDirty: G,
211
- toView: b,
212
- toViewPage: x,
213
- toPrevPage: J,
214
- setLoading: Y,
215
- isLoading: Z,
216
- inAnimation: O,
217
- close: U
218
- };
219
- H();
220
- export {
221
- v as TopDialogUtils
222
- };
223
- //# sourceMappingURL=utils-Cbdb1gth.es.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils-Cbdb1gth.es.js","sources":["../../src/storybook/jquery.ts","../../src/components/dialog/lib/utils.globalEvents.ts","../../src/components/dialog/lib/utils.ts"],"sourcesContent":["/**\n * см. /.storybook/preview-head.html\n */\nexport default $;\n","import { TopDialogUtils } from './utils';\nimport { TopDialogWorker } from './worker';\nimport { querySelectorVisible } from '@/core/utils/dom';\nimport type { $el } from '@/components/types';\n\nlet inited = false;\n\n/**\n * Инициализация глобальных событий для диалоговых окон\n *\n * Проивзодится один раз при подклчюении диалогового окна\n *\n * События не размонитруются\n */\nexport const initDialogGlobalEvents = () => {\n\tif (inited) return;\n\tinited = true;\n\n\t/**\n\t * Закрытие диалога по Esc\n\t */\n\tdocument.addEventListener('keydown', (e) => {\n\t\tif (e.key !== 'Escape') return;\n\t\tif (!e.target) return;\n\n\t\tconst el = e.target as HTMLElement;\n\n\t\t// событие произошло вне диалогового окна\n\t\tif (!el.closest('.ui-dialog')) return;\n\n\t\tif (el.contentEditable === 'true' || el.contentEditable === 'plaintext-only') return;\n\n\t\t// не закрывать окно при открытом TopPopup\n\t\tif (querySelectorVisible(document.documentElement, '.top-popup-wrapper')) return;\n\n\t\t// не закрывать окно при работе с jquery autocomplete\n\t\tif (el.classList.contains('autocomplete')) return;\n\n\t\t// не закрывать окно при открытом fancybox\n\t\tif (querySelectorVisible(document.documentElement, '.fancybox-container')) return;\n\n\t\t$('.ui-dialog-content:visible:last').dialog('close');\n\t});\n\n\t/**\n\t * Закрытие диалога по кнопке закрыть\n\t */\n\t$(document).on('click', '[data-action=\"top-dialog-close\"]', (e) => {\n\t\te.preventDefault();\n\n\t\t// // навигация без истории\n\t\t// var $dialog = $(this).closest('.ui-dialog-content');\n\t\t// var viewName = $dialog.attr('id');\n\t\t// var pageName = getHash('view-' + viewName);\n\t\t// if (!pageName) {\n\t\t// \ttoPrevPage($dialog);\n\t\t//\n\t\t// \treturn;\n\t\t// }\n\t\t//\n\t\t// // навигация по истории\n\t\t// if (Core.state.isMobile && history.length > 1 && $(this).closest('.modal-layer').length) {\n\t\t// \tvar href = location.href;\n\t\t//\n\t\t// \thistory.go(-1);\n\t\t//\n\t\t// \tsetTimeout(() => {\n\t\t// \t\t// это первая страница в истории вкладки браузера\n\t\t// \t\tif (href === location.href) $(e.target).closest('.ui-dialog-content').dialog('close');\n\t\t// \t});\n\t\t// } else {\n\t\t// \t$(this).closest('.ui-dialog-content').dialog('close');\n\t\t// }\n\n\t\tconst el = e.target.closest('[data-action=\"top-dialog-close\"]');\n\n\t\tconst elDialog = el.closest('.ui-dialog-content');\n\t\tif (!elDialog) return;\n\n\t\tconst $dialog = $(elDialog);\n\n\t\t// если к кнопке привязана ссылка, диалоговое окно не нужно закрывать\n\t\tconst toView = el.dataset.toView;\n\n\t\tif (toView == 'toPrevPage()') {\n\t\t\tTopDialogUtils.toPrevPage($dialog);\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (toView) {\n\t\t\tvar viewNameAndPageLink = toView.split('-');\n\t\t\tvar viewName = viewNameAndPageLink.shift();\n\t\t\tvar pageLink = viewNameAndPageLink.join('-');\n\n\t\t\tvar $toDialog = $('#' + viewName);\n\t\t\tvar $toPage = $('[data-view-page=\"' + pageLink + '\"]', $toDialog);\n\t\t\tif (!$toPage.is(':visible')) {\n\t\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, 'prev');\n\n\t\t\t\t// добавляет текущую страницу в историю браузера\n\t\t\t\tlocation.hash = hash;\n\n\t\t\t\t// // не убирает кнопку \"Вперед\" в браузере\n\t\t\t\t// history.replaceState(null, '', hash);\n\t\t\t\t// toViewDirty(toView, 'prev');\n\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\t$dialog.dialog('close');\n\t});\n\n\t/**\n\t * Все submit должны обрабатываться через js\n\t */\n\t$(document).on('submit', '.modal-body > form, .modal-layer-body > form', function (e) {\n\t\te.preventDefault();\n\t});\n\n\t/**\n\t * Выполнение действия по нажатию Enter\n\t *\n\t * @todo Убрать `.searcher`\n\t */\n\t$(document).on('keypress', '.ui-dialog .modal-body :input:not(.searcher), .ui-dialog .modal-body [contenteditable]', function (e) {\n\t\t// if (e.keyCode !== 10 && e.key !== 'ENTER') return;\n\t\tif (e.key !== 'ENTER') return;\n\n\t\t// не выполнять submit действий при работе с jquery autocomplete\n\t\tif (e.target.classList.contains('autocomplete')) {\n\t\t\te.preventDefault();\n\n\t\t\treturn;\n\t\t}\n\n\t\t// реализация submit по ctrl + Enter\n\t\tif (e.target.tagName === 'TEXTAREA') {\n\t\t\tif (!e.ctrlKey && !e.metaKey) return;\n\n\t\t\tconst elForm = e.target.closest('form');\n\n\t\t\tif (elForm) {\n\t\t\t\tlet elSubmit = $(':submit:visible', elForm)[0];\n\t\t\t\tif (!elSubmit) elSubmit = $(':submit:visible', elForm)[0];\n\n\t\t\t\telSubmit?.click();\n\t\t\t}\n\t\t}\n\t});\n\n\t/**\n\t * Закрытие диалога по клику вне окна\n\t */\n\t$(document).on('click', '.ui-widget-overlay', function () {\n\t\tlet $dialogWrapper: $el | undefined = undefined;\n\t\tlet topZIndex = 0;\n\n\t\t$('.ui-dialog:visible').each((_index, el) => {\n\t\t\tconst zIndex = Number($(el).css('z-index'));\n\t\t\tif (zIndex < topZIndex) return;\n\n\t\t\t$dialogWrapper = $(el);\n\t\t\ttopZIndex = zIndex;\n\t\t});\n\n\t\tif ($dialogWrapper) {\n\t\t\t$('.ui-dialog-content', $dialogWrapper).dialog('close');\n\t\t}\n\t});\n\n\t$(window).on('resize', TopDialogUtils.recalcPositions);\n\tTopDialogUtils.recalcPositions();\n};\n","import 'jquery';\nimport { nextTick } from 'vue';\n\nimport Core from '@/core/core/core';\nimport { TopPopupWorker } from '@/components/popup/worker';\nimport { sleep, waitWhile } from '@/core/utils/system';\nimport { setHash } from '@/core/utils/route';\n\nimport type { MoveDirection } from './types';\nimport { TopDialogWorker } from './worker';\nimport { initDialogGlobalEvents } from './utils.globalEvents';\nimport { getDialogWorker } from '../dialog/dialogs/dialogs.vue';\n\nimport css from '../dialog/style/dialog.css?inline';\nimport cssM from '../dialog/style/dialog.m.css?inline';\nimport cssPC from '../dialog/style/dialog.pc.css?inline';\nimport cssModern from '../dialog/style/modern/dialog.css?inline';\nimport cssModernPC from '../dialog/style/modern/dialog.pc.css?inline';\nimport type { $el } from '@/components/types';\n\nCore.insertStyleToPage(css);\nCore.insertStyleToPage(cssM, 'm');\nCore.insertStyleToPage(cssPC, 'pc');\nCore.insertStyleToPage(cssModern);\nCore.insertStyleToPage(cssModernPC, 'pc');\n\nlet timerClearAnimation: NodeJS.Timeout;\nlet isInited = false;\n\nconst init = () => {\n\t// if(window.history && history.length == 1) setHash('vpn', null);\n\n\t$.extend($.ui.dialog.prototype.options, {\n\t\tfocus: (e: any) => {\n\t\t\te.target.focus();\n\n\t\t\t$('[autofocus]', e.target)[0]?.focus();\n\n\t\t\t// setTimeout(function () {\n\t\t\t// \tif ($('[autofocus]', e.target).length) return;\n\t\t\t// \t$('.modal-footer button:first, .modal-body :input:first', e.target).eq(0).focus();\n\t\t\t//\n\t\t\t// \t// fix пропадающего autocomplete при нажатии на scroll в autocomplete\n\t\t\t// \t$(e.target).add($(e.target).closest('.ui-dialog')).removeAttr('tabindex');\n\t\t\t// });\n\t\t},\n\t\tcreate: (e: any) => onCreate(e.target),\n\t\topen: (e: any) => onOpen(e.target),\n\t\tclose: (e: any) => onClose(e.target),\n\t\tmodal: true,\n\t\tresizable: false,\n\t\tcloseOnEscape: false,\n\t\twidth: 'auto',\n\t\tminHeight: 0,\n\t});\n\n\t$.ui.dialog.prototype._focusTabbable = $.noop;\n\n\t$.ui.dialog.prototype._moveToTopOriginal = $.ui.dialog.prototype._moveToTop;\n\t$.ui.dialog.prototype._moveToTop = function () {\n\t\tthis._moveToTopOriginal();\n\n\t\tconst $dialog = $(this.element);\n\t\t$dialog.trigger('dialogsMoveToTop', [$dialog]);\n\t};\n\n\tinitDialogGlobalEvents();\n\n\tisInited = true;\n};\n\n/**\n * Получить настройки диалогового окна из Vue компонента\n */\nconst genVueOptions = ($dialog: $el) => {\n\tconst options: {\n\t\tmodal?: boolean,\n\t\tposition?: any,\n\t} = {};\n\n\tif ($dialog[0]?.dataset?.modal === 'false') options.modal = false;\n\tif ($dialog[0]?.dataset?.position) options.position = JSON.parse($dialog[0].dataset.position);\n\n\treturn options;\n};\n\n/**\n * Сменить состояние диалогового окна Vue\n */\nconst updatePageVue = async (dialogId: string, pageName?: string, pageNameNext?: string) => {\n\tif (!dialogId.startsWith('dialog_')) return;\n\n\tconst dialog = getDialogWorker(dialogId);\n\tif (!dialog) return;\n\n\tdialog.isOpened.value = true;\n\tif (pageName !== undefined) dialog.pageActive.value = pageName;\n\tif (pageNameNext !== undefined) dialog.pageActiveNext.value = pageNameNext;\n\n\tawait nextTick();\n\n\tif (pageNameNext) {\n\t\tconst $dialog = $('#' + dialogId);\n\t\tconst $nextPage = $('[data-view-page=\"' + pageNameNext + '\"]', $dialog);\n\n\t\tif (!$nextPage.length) {\n\t\t\tawait waitWhile(() => !$('[data-view-page=\"' + pageNameNext + '\"]', $dialog).length);\n\t\t}\n\t}\n};\n\n/**\n * Callback for jQuery dialog onCreate\n */\nconst onCreate = (elDialog: HTMLElement) => {\n\tTopDialogWorker.state.decoratorOnCreate?.(elDialog);\n\n\tinitPopup(elDialog);\n};\n\n/**\n * Инициирование событий TopPopup в диалоговом окне\n */\nconst initPopup = (elDialog: HTMLElement) => {\n\t$(elDialog).on('aftershow.top-menu-popup', '[data-top-popup]', (_e, $popup) => {\n\t\t// перенести popup в корневой элемент страницы диалогового окна\n\t\tconst $pageContent = TopDialogWorker.get$pairPage($popup).eq(1);\n\t\t$pageContent.prepend($popup);\n\t});\n};\n\n/**\n * Callback for jQuery dialog onOpen\n */\nconst onOpen = async (elDialog: HTMLElement) => {\n\tvar $dialog = $(elDialog);\n\tvar pageName = $dialog.data('view-page-active');\n\n\tconst w1 = Number($(window).width());\n\n\tCore.state.documentClassModificators.set('top-dialog', 'with_dialog');\n\n\tconst w2 = Number($(window).width());\n\n\tconst scrollBarWidth = w2 - w1;\n\tif (Number($(document).height()) > Number($(window).height())) $('html').css({ 'margin-right': scrollBarWidth + 'px' });\n\n\trecalcPositions();\n\n\tconst dialog = getDialogWorker($dialog.attr('id') as string);\n\tdialog?.emit?.('open', pageName);\n};\n\n/**\n * Callback for jQuery dialog onClose\n */\nconst onClose = async (elDialog: HTMLElement) => {\n\tvar $dialog = $(elDialog);\n\n\tvar viewName = $dialog.attr('id');\n\tvar pageName = $dialog.data('view-page-active');\n\tif (pageName) {\n\t\tsetHash('vpn', TopDialogWorker.state.viewPageN);\n\t\tsetHash('view-' + viewName, null, false);\n\n\t\tif (TopDialogWorker.state.viewPageN === 0 || TopDialogWorker.state.viewPageN === 1) setHash('vpn', null);\n\t}\n\n\tif (!$('.ui-widget-overlay:visible').length){\n\t\tCore.state.documentClassModificators.delete('top-dialog');\n\n\t\t$('html').css({ 'margin-right': '' });\n\t}\n\n\t$dialog.trigger('viewAfterClose', [$dialog]);\n\n\tconst dialog = getDialogWorker($dialog.attr('id') as string);\n\tif (dialog) {\n\t\tdialog.isOpened.value = false;\n\t\tdialog.emit?.('close', pageName);\n\n\t\tif (dialog.onCloseOnce) {\n\t\t\tdialog.onCloseOnce(dialog.props, pageName);\n\t\t\tdialog.onCloseOnce = undefined;\n\t\t}\n\t}\n\n\t// после закрытия диалога может потребоваться пересчет позиций элементов\n\twindow.dispatchEvent(new Event('resize'));\n};\n\n/**\n * Пересчитать положения и размеры открытых диалоговых окон\n */\nconst recalcPositions = () => {\n\t$('.ui-dialog:visible > .ui-dialog-content').each((_index, eldDialog: HTMLElement) => {\n\t\tconst $dialog = $(eldDialog);\n\t\tconst $dialogBody = $('.modal-body:visible', $dialog);\n\t\tconst $ui = $dialog.closest('.ui-dialog');\n\n\t\tif (!$dialogBody.length) return;\n\n\t\tconst options = genVueOptions($dialog);\n\n\t\toptions.position ??= { of: window };\n\n\t\t$dialog.dialog('option', options);\n\n\t\t$ui.removeClass('me-tightly');\n\t\tif (Number($ui.height()) > Number($(window).height())) $ui.addClass('me-tightly');\n\t});\n};\n\n// переход к view page по неразобранной ссылке в формате: {viewName}-{pageName}[:args]\nconst toViewDirty = async (toViewPageName: string, moveDirection?: MoveDirection) => {\n\tconst regexp = /(\\w+)[=-]([\\w-]+)(?::([\\w.:-]+))?/g;\n\tconst toViewParts = regexp.exec(toViewPageName);\n\tif (toViewParts) {\n\t\tconst viewName = toViewParts[1];\n\t\tconst pageName = toViewParts[2];\n\t\tconst argsString = toViewParts[3];\n\n\t\tlet args: string[] = [];\n\t\tif (argsString) args = argsString.split(':');\n\n\t\tawait toView(viewName, pageName, args, moveDirection);\n\t}\n};\n\n/**\n * Открыть диалоговое окно, возможно указать нужную страницу\n * @param {string|$} viewNameOr$Dialog - id страницы окна или jQuery элемент окна\n * @param {?string} pageName - имя страницы\n * @param {?Array<any>} args - аргументы, набор проивзольных параметров, которые могут обрабатываться каждым окном по своему\n * @param {?Function} callback - функция, которая будет запущена после октытия страницы\n */\nconst toView = async (\n\tviewNameOr$Dialog: $el | string,\n\tpageName?: string,\n\targs?: string[],\n\tmoveDirection?: MoveDirection,\n\tcallback?: Function,\n) => {\n\tif (!isInited) {\n\t\tawait new Promise<void>((resolve, _reject) => {\n\t\t\tconst timer = setInterval(() => {\n\t\t\t\tif (!isInited) return;\n\n\t\t\t\tclearInterval(timer);\n\n\t\t\t\tresolve();\n\t\t\t}, 10);\n\t\t});\n\t}\n\n\tawait nextTick();\n\n\tlet $dialog: $el;\n\tif (typeof (viewNameOr$Dialog) === 'object') {\n\t\t$dialog = viewNameOr$Dialog;\n\t} else {\n\t\t$dialog = $('#' + viewNameOr$Dialog);\n\t}\n\n\t// Диалоговое окно еще не загружено\n\tif (!$dialog.length && typeof (viewNameOr$Dialog) == 'string' && TopDialogWorker.state.load) {\n\t\tawait TopDialogWorker.state.load(viewNameOr$Dialog);\n\n\t\ttoView(viewNameOr$Dialog, pageName, args, moveDirection, callback);\n\n\t\treturn;\n\t}\n\n\tawait toViewPage($dialog, pageName, args, moveDirection);\n\n\tif ($dialog.is('.ui-dialog-content')) {\n\t\t// var zIndexMax = 0;\n\t\t// $.map($('.ui-dialog'), function (el) {\n\t\t// \tvar zIndex = $(el).css('z-index') * 1;\n\t\t// \tif (zIndex > zIndexMax) zIndexMax = zIndex;\n\t\t// });\n\t\t//\n\t\t// if ($dialog.is(':hidden')) $dialog.dialog('open');\n\t\t//\n\t\t// var $dialogWrapper = $dialog.parent();\n\t\t// var $dialogOverlay = $dialogWrapper.next();\n\t\t//\n\t\t// if ($dialogWrapper.css('z-index') * 1 < zIndexMax) {\n\t\t// \t$dialogWrapper.css('z-index', zIndexMax + 2);\n\t\t// \t$dialogOverlay.css('z-index', zIndexMax + 1);\n\t\t// }\n\n\t\t$dialog.dialog('open');\n\t} else {\n\t\tconst options = genVueOptions($dialog);\n\n\t\t$dialog.dialog(options);\n\t}\n\n\tif (callback) callback($dialog);\n};\n\nconst toViewPage = async ($dialog: $el, pageName?: string, args?: string[], moveDirection?: MoveDirection) => {\n\tif (pageName === undefined) pageName = $dialog.data('view-page-active') as string;\n\n\tif (pageName != $dialog.data('view-page-active')) {\n\t\tvar stopped = stopAnimations($dialog);\n\t\tif (stopped) await sleep(100);\n\t}\n\n\tif (args === undefined) args = [];\n\n\tawait updatePageVue($dialog.attr('id') as string, undefined, pageName);\n\n\tvar $modalLayers = $('> .modal-layer', $dialog);\n\tvar $currentPage = $('> .active', $modalLayers);\n\tvar $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\n\tvar argsString = args.join(':');\n\n\tif (moveDirection === undefined) {\n\t\tmoveDirection = 'next';\n\t\tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\n\t}\n\n\tif (!$nextPage.length) return;\n\n\t$dialog.data('view-page-active', pageName);\n\n\t// запрашиваемая страница уже открыта\n\tif ($nextPage.is('.active')) {\n\t\tif ($nextPage.data('view-page-args') != argsString) {\n\t\t\t$nextPage.data('view-page-args', argsString);\n\n\t\t\t// dialogs.beforeOpenViewPage($dialog, $nextPage, pageName, args);\n\t\t\t// dialogs.afterOpenViewPage($dialog, $nextPage, pageName, args);\n\t\t}\n\n\t\tbeforeOpenViewPage($dialog, $nextPage, pageName, args);\n\t\tafterOpenViewPage($dialog, $nextPage, pageName, args);\n\n\t\treturn;\n\t}\n\n\t$nextPage.data('view-page-args', argsString);\n\n\tif ($('.top-popup-wrapper', $currentPage).length) {\n\t\tTopPopupWorker.close($('.top-popup-wrapper', $currentPage)[0]);\n\t}\n\n\tif ($nextPage.closest('.ui-dialog').is(':hidden')) moveDirection = 'none';\n\tif (!$currentPage.length) moveDirection = 'none';\n\tif ($nextPage.is(':visible')) moveDirection = 'none';\n\tswitch (moveDirection) {\n\t\tcase 'prev':\n\t\t\t$nextPage.each((_index, el) => {\n\t\t\t\t$(el).insertBefore($(el).siblings('.active'));\n\t\t\t});\n\n\t\t\t$currentPage.addClass('right-to-center reverse');\n\t\t\t$nextPage.addClass('center-to-left reverse');\n\n\t\t\tbreak;\n\t\tcase 'next':\n\t\t\t$nextPage.each((_index, el) => {\n\t\t\t\t$(el).insertAfter($(el).siblings('.active'));\n\t\t\t});\n\n\t\t\t$currentPage.addClass('center-to-left');\n\t\t\t$nextPage.addClass('right-to-center');\n\n\t\t\tbreak;\n\t}\n\n\t$dialog.attr('view-page-active', pageName);\n\n\t$currentPage.removeClass('active');\n\t$nextPage.addClass('active');\n\n\tbeforeOpenViewPage($dialog, $nextPage, pageName, args);\n\n\tif (moveDirection) {\n\t\t$dialog.addClass('i-change-page');\n\t\tconst delay = Number($nextPage.css('animation-duration').replace('s', '')) * 1000;\n\n\t\ttimerClearAnimation = setTimeout(function () {\n\t\t\tupdatePageVue($dialog.attr('id') as string, pageName, '');\n\t\t\tstopAnimations($dialog);\n\t\t\tafterOpenViewPage($dialog, $nextPage, pageName, args);\n\t\t}, delay);\n\t} else {\n\t\tawait updatePageVue($dialog.attr('id') as string, pageName, '');\n\t\tafterOpenViewPage($dialog, $nextPage, pageName, args);\n\t}\n};\n\n/**\n * К предыдущему представлению\n */\nconst toPrevPage = ($dialog: $el) => {\n\tvar prevPageName = '';\n\n\tvar $modalLayers = $('> .modal-layer', $dialog);\n\tvar $currentPage = $('> .active', $modalLayers).eq(0);\n\tvar $prevPage = $currentPage.prev('[data-view-page]');\n\tprevPageName = $prevPage.data('view-page');\n\n\tif (prevPageName) {\n\t\ttoViewPage($dialog, prevPageName, undefined, 'prev');\n\t} else {\n\t\t$dialog.dialog('close');\n\t}\n};\n\n/**\n * Для обработки событий вне vue\n */\nconst beforeOpenViewPageTimers = new Set();\nconst beforeOpenViewPage = ($dialog: $el, $page: $el, pageName: string, args: string[]) => {\n\t// группировка цепочки событий\n\t// запрос на открытие страницы может выполняться несколько раз, чаще такое может быть при открытии, загрузке и переходе сразу к нужной странице\n\tconst eventKey = $dialog.attr('id') + $page.eq(0).data('view-page') + pageName + args.join();\n\n\tif (beforeOpenViewPageTimers.has(eventKey)) return;\n\tbeforeOpenViewPageTimers.add(eventKey);\n\n\tsetTimeout(function () {\n\t\tbeforeOpenViewPageTimers.delete(eventKey);\n\t\t$dialog.trigger('viewBeforeOpen', [$dialog, $page, pageName, args]);\n\t});\n};\n\n/**\n * Для обработки событий вне vue\n */\nconst afterOpenViewPage = ($dialog: $el, $page: $el, pageName: string, args: string[]) => {\n\tsetTimeout(function () {\n\t\t$dialog.trigger('viewAfterOpen', [$dialog, $page, pageName, args]);\n\t});\n};\n\n/**\n * Получить состояние: Диалоговое окно находится в состоянии смены страницы\n */\nconst inAnimation = ($dialog: $el) => {\n\treturn $dialog.is('.i-change-page');\n};\n\n/**\n * Остановить анимацию смены страницы\n *\n * @returns Вернет true, если анимация производилась и была остановлена\n */\nconst stopAnimations = ($dialog: $el) => {\n\tif (!inAnimation($dialog)) return false;\n\n\tclearTimeout(timerClearAnimation);\n\n\tvar $modalLayers = $('> .modal-layer', $dialog);\n\n\tvar pageName = $dialog.data('view-page-active');\n\t$dialog.removeClass('i-change-page');\n\t$('> [data-view-page]', $modalLayers).removeClass('center-to-left right-to-center reverse active');\n\t$('> [data-view-page=\"' + pageName + '\"]', $modalLayers).addClass('active');\n\n\treturn true;\n};\n\n/**\n * Закрыть диалоговое окно\n */\nconst close = function (dialogId: string) {\n\tconst $dialog = $('#' + dialogId);\n\n\tif (!$dialog.dialog('instance')) return;\n\n\t$dialog.dialog('close');\n};\n\n/**\n * Управление props.isLoading\n */\nconst setLoading = ($page: $el, isLoading: boolean, duration?: number) => {\n\tif (!$page.is('[data-view-page]')) $page = $('[data-view-page]:visible', $page);\n\n\tif (isLoading) {\n\t\tif (duration !== undefined) {\n\t\t\t$page.each((_index, el) => {\n\t\t\t\tel.style.setProperty('--dialog-loading-duration', duration + 's');\n\t\t\t});\n\t\t}\n\n\t\t$page.addClass('i-load-data');\n\t} else {\n\t\t$page.removeClass('i-load-data');\n\n\t\t$page.each((_index, el) => {\n\t\t\tel.style.setProperty('--dialog-loading-duration', '10s');\n\t\t});\n\t}\n};\n\nconst isLoading = ($page: $el) => {\n\treturn $page.is('.i-load-data');\n};\n\nexport const TopDialogUtils = {\n\tupdatePageVue,\n\trecalcPositions,\n\ttoViewDirty,\n\ttoView,\n\ttoViewPage,\n\ttoPrevPage,\n\tsetLoading,\n\tisLoading,\n\tinAnimation,\n\tclose,\n};\n\ninit();\n"],"names":["inited","initDialogGlobalEvents","el","querySelectorVisible","elDialog","$dialog","toView","TopDialogUtils","viewNameAndPageLink","viewName","pageLink","$toDialog","$toPage","hash","TopDialogWorker","elForm","elSubmit","$dialogWrapper","topZIndex","_index","zIndex","Core","css","cssM","cssPC","cssModern","cssModernPC","timerClearAnimation","isInited","init","_a","onCreate","onOpen","onClose","genVueOptions","options","_b","_d","_c","updatePageVue","dialogId","pageName","pageNameNext","dialog","getDialogWorker","nextTick","waitWhile","initPopup","_e","$popup","w1","scrollBarWidth","recalcPositions","setHash","eldDialog","$dialogBody","$ui","toViewDirty","toViewPageName","moveDirection","toViewParts","argsString","args","viewNameOr$Dialog","callback","resolve","_reject","timer","toViewPage","stopped","stopAnimations","sleep","$modalLayers","$currentPage","$nextPage","beforeOpenViewPage","afterOpenViewPage","TopPopupWorker","delay","toPrevPage","prevPageName","$prevPage","beforeOpenViewPageTimers","$page","eventKey","inAnimation","close","setLoading","isLoading","duration"],"mappings":"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"}