@topvisor/ui 1.5.4-0 → 1.5.4-2

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 (127) hide show
  1. package/.chunks/{api-DYxTY8ok.amd.js → api-_5LGo-V0.amd.js} +2 -2
  2. package/.chunks/{api-DYxTY8ok.amd.js.map → api-_5LGo-V0.amd.js.map} +1 -1
  3. package/.chunks/{api-DYxTY8ok.esm.js → api-_5LGo-V0.esm.js} +2 -2
  4. package/.chunks/{api-DYxTY8ok.esm.js.map → api-_5LGo-V0.esm.js.map} +1 -1
  5. package/.chunks/{app-IA3bH3Ss.amd.js → app-6Z66TVYe.amd.js} +2 -2
  6. package/.chunks/{app-IA3bH3Ss.amd.js.map → app-6Z66TVYe.amd.js.map} +1 -1
  7. package/.chunks/{app-IA3bH3Ss.esm.js → app-6Z66TVYe.esm.js} +6 -6
  8. package/.chunks/app-6Z66TVYe.esm.js.map +1 -0
  9. package/.chunks/{datepicker-C8Clxlat.amd.js → datepicker-BDTqyuv7.amd.js} +2 -2
  10. package/.chunks/{datepicker-C8Clxlat.amd.js.map → datepicker-BDTqyuv7.amd.js.map} +1 -1
  11. package/.chunks/{datepicker-C8Clxlat.esm.js → datepicker-BDTqyuv7.esm.js} +2 -2
  12. package/.chunks/{datepicker-C8Clxlat.esm.js.map → datepicker-BDTqyuv7.esm.js.map} +1 -1
  13. package/.chunks/{dialog-HBbJvH_R.amd.js → dialog-ClEF_87z.amd.js} +2 -2
  14. package/.chunks/{dialog-HBbJvH_R.amd.js.map → dialog-ClEF_87z.amd.js.map} +1 -1
  15. package/.chunks/{dialog-HBbJvH_R.esm.js → dialog-ClEF_87z.esm.js} +4 -4
  16. package/.chunks/{dialog-HBbJvH_R.esm.js.map → dialog-ClEF_87z.esm.js.map} +1 -1
  17. package/.chunks/{dialog_regionSelectorRegions-6Xd7Ka4O.amd.js → dialog_regionSelectorRegions-B1vjbW-i.amd.js} +2 -2
  18. package/.chunks/{dialog_regionSelectorRegions-6Xd7Ka4O.amd.js.map → dialog_regionSelectorRegions-B1vjbW-i.amd.js.map} +1 -1
  19. package/.chunks/{dialog_regionSelectorRegions-6Xd7Ka4O.esm.js → dialog_regionSelectorRegions-B1vjbW-i.esm.js} +5 -5
  20. package/.chunks/{dialog_regionSelectorRegions-6Xd7Ka4O.esm.js.map → dialog_regionSelectorRegions-B1vjbW-i.esm.js.map} +1 -1
  21. package/.chunks/{dialogs-CJC1Uwi0.amd.js → dialogs-DFrx1Kl4.amd.js} +2 -2
  22. package/.chunks/{dialogs-CJC1Uwi0.amd.js.map → dialogs-DFrx1Kl4.amd.js.map} +1 -1
  23. package/.chunks/{dialogs-CJC1Uwi0.esm.js → dialogs-DFrx1Kl4.esm.js} +3 -3
  24. package/.chunks/{dialogs-CJC1Uwi0.esm.js.map → dialogs-DFrx1Kl4.esm.js.map} +1 -1
  25. package/.chunks/forms-BboZ50-J.amd.js +2 -0
  26. package/.chunks/forms-BboZ50-J.amd.js.map +1 -0
  27. package/.chunks/{forms-CKYB-KtK.esm.js → forms-BboZ50-J.esm.js} +9 -9
  28. package/.chunks/forms-BboZ50-J.esm.js.map +1 -0
  29. package/.chunks/{formsExt-BlpgTGG9.amd.js → formsExt-ILcRjD-o.amd.js} +2 -2
  30. package/.chunks/{formsExt-BlpgTGG9.amd.js.map → formsExt-ILcRjD-o.amd.js.map} +1 -1
  31. package/.chunks/{formsExt-BlpgTGG9.esm.js → formsExt-ILcRjD-o.esm.js} +4 -4
  32. package/.chunks/{formsExt-BlpgTGG9.esm.js.map → formsExt-ILcRjD-o.esm.js.map} +1 -1
  33. package/.chunks/{notice-DCVnpQOj.amd.js → notice-B84XdLbj.amd.js} +2 -2
  34. package/.chunks/{notice-DCVnpQOj.amd.js.map → notice-B84XdLbj.amd.js.map} +1 -1
  35. package/.chunks/{notice-DCVnpQOj.esm.js → notice-B84XdLbj.esm.js} +2 -2
  36. package/.chunks/{notice-DCVnpQOj.esm.js.map → notice-B84XdLbj.esm.js.map} +1 -1
  37. package/.chunks/{popup-Dkg-pmWX.amd.js → popup-BEMxqg2s.amd.js} +2 -2
  38. package/.chunks/popup-BEMxqg2s.amd.js.map +1 -0
  39. package/.chunks/{popup-Dkg-pmWX.esm.js → popup-BEMxqg2s.esm.js} +15 -14
  40. package/.chunks/popup-BEMxqg2s.esm.js.map +1 -0
  41. package/.chunks/{popup-Sk9dcalT.amd.js → popup-CgrKc5Db.amd.js} +2 -2
  42. package/.chunks/{popup-Sk9dcalT.amd.js.map → popup-CgrKc5Db.amd.js.map} +1 -1
  43. package/.chunks/{popup-Sk9dcalT.esm.js → popup-CgrKc5Db.esm.js} +3 -3
  44. package/.chunks/{popup-Sk9dcalT.esm.js.map → popup-CgrKc5Db.esm.js.map} +1 -1
  45. package/.chunks/{utils--RkXNoi6.amd.js → utils-B0qCve4y.amd.js} +2 -2
  46. package/.chunks/{utils--RkXNoi6.amd.js.map → utils-B0qCve4y.amd.js.map} +1 -1
  47. package/.chunks/{utils--RkXNoi6.esm.js → utils-B0qCve4y.esm.js} +4 -4
  48. package/.chunks/{utils--RkXNoi6.esm.js.map → utils-B0qCve4y.esm.js.map} +1 -1
  49. package/.chunks/{utils-BsVx-vbG.amd.js → utils-DmmlQmsO.amd.js} +2 -2
  50. package/.chunks/{utils-BsVx-vbG.amd.js.map → utils-DmmlQmsO.amd.js.map} +1 -1
  51. package/.chunks/{utils-BsVx-vbG.esm.js → utils-DmmlQmsO.esm.js} +3 -3
  52. package/.chunks/{utils-BsVx-vbG.esm.js.map → utils-DmmlQmsO.esm.js.map} +1 -1
  53. package/.chunks/{worker-CXehgQZh.amd.js → worker-DhqknASO.amd.js} +2 -2
  54. package/.chunks/{worker-CXehgQZh.amd.js.map → worker-DhqknASO.amd.js.map} +1 -1
  55. package/.chunks/{worker-CXehgQZh.esm.js → worker-DhqknASO.esm.js} +3 -3
  56. package/.chunks/{worker-CXehgQZh.esm.js.map → worker-DhqknASO.esm.js.map} +1 -1
  57. package/api/index.amd.js +1 -1
  58. package/api/index.amd.js.map +1 -1
  59. package/api/index.js +1 -1
  60. package/autoload-css-manifest.amd.json +4 -4
  61. package/autoload-css-manifest.json +4 -4
  62. package/charts/charts.amd.js +1 -1
  63. package/charts/charts.amd.js.map +1 -1
  64. package/charts/charts.js +1 -1
  65. package/core/app.amd.js +1 -1
  66. package/core/app.amd.js.map +1 -1
  67. package/core/app.js +4 -4
  68. package/dialog/dialog.amd.js +1 -1
  69. package/dialog/dialog.amd.js.map +1 -1
  70. package/dialog/dialog.js +3 -3
  71. package/forms/forms.amd.js +1 -1
  72. package/forms/forms.amd.js.map +1 -1
  73. package/forms/forms.js +1 -1
  74. package/formsExt/formsExt.amd.js +1 -1
  75. package/formsExt/formsExt.amd.js.map +1 -1
  76. package/formsExt/formsExt.js +1 -1
  77. package/layout/layout.amd.js +1 -1
  78. package/layout/layout.amd.js.map +1 -1
  79. package/layout/layout.js +1 -1
  80. package/package.json +1 -1
  81. package/popup/popup.amd.js +1 -1
  82. package/popup/popup.amd.js.map +1 -1
  83. package/popup/popup.js +1 -1
  84. package/popup/worker.amd.js +1 -1
  85. package/popup/worker.amd.js.map +1 -1
  86. package/popup/worker.js +1 -1
  87. package/project/project.amd.js +1 -1
  88. package/project/project.amd.js.map +1 -1
  89. package/project/project.js +23 -23
  90. package/project/project.js.map +1 -1
  91. package/src/components/popup/lib/popup.d.ts +4 -0
  92. package/src/components/project/projectSelector/utils.d.ts +12 -0
  93. package/src/components/project/regionSelector/utils/utils.d.ts +1 -1
  94. package/src/core/core/core.d.ts +2 -2
  95. package/src/core/core/options.d.ts +6 -4
  96. package/src/core/core/state.d.ts +2 -2
  97. package/src/core/plugins/core.d.ts +3 -3
  98. package/tabsView/tabsView.amd.js +1 -1
  99. package/tabsView/tabsView.amd.js.map +1 -1
  100. package/tabsView/tabsView.js +2 -2
  101. package/utils/clipboard.amd.js +1 -1
  102. package/utils/clipboard.amd.js.map +1 -1
  103. package/utils/clipboard.js +1 -1
  104. package/utils/date.amd.js +1 -1
  105. package/utils/date.amd.js.map +1 -1
  106. package/utils/date.js +1 -1
  107. package/utils/device.amd.js +1 -1
  108. package/utils/device.amd.js.map +1 -1
  109. package/utils/device.js +1 -1
  110. package/utils/lodash.amd.js +1 -1
  111. package/utils/lodash.amd.js.map +1 -1
  112. package/utils/lodash.js +1 -1
  113. package/utils/price.amd.js +1 -1
  114. package/utils/price.amd.js.map +1 -1
  115. package/utils/price.js +1 -1
  116. package/utils/searchers.amd.js +1 -1
  117. package/utils/searchers.amd.js.map +1 -1
  118. package/utils/searchers.js +1 -1
  119. package/utils/string.amd.js +1 -1
  120. package/utils/string.amd.js.map +1 -1
  121. package/utils/string.js +1 -1
  122. package/.chunks/app-IA3bH3Ss.esm.js.map +0 -1
  123. package/.chunks/forms-CKYB-KtK.amd.js +0 -2
  124. package/.chunks/forms-CKYB-KtK.amd.js.map +0 -1
  125. package/.chunks/forms-CKYB-KtK.esm.js.map +0 -1
  126. package/.chunks/popup-Dkg-pmWX.amd.js.map +0 -1
  127. package/.chunks/popup-Dkg-pmWX.esm.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":[".chunks/popup-Sk9dcalT.esm.js","../../src/components/popup/popup/opener/opener.vue","../../src/components/popup/popup/popup.vue","../../src/components/popup/popup/listItem.vue","../../src/components/popup/popup/widgetInput/widgetInput.vue","../../src/components/popup/popupAlert/popupAlert.vue","../../src/components/popup/popupConfirm/popupConfirm.vue","../../src/components/popup/popupPrompt/popupPrompt.vue","../../src/components/popup/popupHint/popupHint.vue"],"names":["vue","exports","j","vue_1","worker_CXehgQZh_esm_js_1","M","N","P","F","I","L","R","n","l","u","d","p","m","h","g","v","C","$core","$emit","forms_CKYB_KtK_esm_js_1","z","B","V","$slots","$attrs","H","t","U","$i18n","W","i","a","G","_","K"],"mappings":"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","sourcesContent":["define([\"require\", \"exports\", \"./forms-CKYB-KtK.esm.js\", \"./worker-CXehgQZh.esm.js\", \"vue\"], function (require, exports, forms_CKYB_KtK_esm_js_1, worker_CXehgQZh_esm_js_1, vue_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.t = exports.s = exports.r = exports.o = exports.n = exports.i = exports.c = exports.a = void 0;\n //#endregion\n //#region src/components/popup/popup/opener/opener.vue\n var j = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"opener\",\n props: {\n id: {},\n pos: { default: \"3\" },\n notch: {\n type: Boolean,\n default: !0\n },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: { default: \"fixed\" },\n data: {}\n },\n setup(e) {\n let t = e, n = t.id || Math.random() + \"\", a;\n function o(e) {\n setTimeout(() => {\n a = e.nextElementSibling, a && s(a);\n });\n }\n (0, vue_1.onUpdated)(() => {\n a && s(a);\n });\n function s(e) {\n e.dataset.topPopup = \"#\" + n;\n let i = !!e.dataset.topPopupDisabled;\n if (e.dataset.topPopupId = n, e.dataset.topPopupPos = t.pos, e.dataset.topPopupPosBy = t.posBy, e.dataset.topPopupNotch = t.notch ? \"true\" : \"\", e.dataset.topPopupOpenByHover = t.openByHover ? \"true\" : \"\", e.dataset.topPopupDisabled = t.disabled ? \"true\" : \"\", e.__TopPopupOpenerProps = t, t.openByFocusInput && e.classList.contains(\"top-input\")) {\n let n = e.querySelector(\"input\");\n if (n.onfocus = () => {\n e.dataset.topPopupDisabled || worker_CXehgQZh_esm_js_1.t.getPopupFromOpener(e)?.vueGetComponent()?.opened || worker_CXehgQZh_esm_js_1.t.openByOpener(e);\n }, t.disabled !== i && n === document.activeElement) {\n let n = worker_CXehgQZh_esm_js_1.t.getPopupFromOpener(e);\n !t.disabled && !n && worker_CXehgQZh_esm_js_1.t.openByOpener(e), t.disabled && n && n.close();\n }\n }\n }\n return (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(vue_1.Fragment, null, [(0, vue_1.createElementVNode)(\"template\", { ref: o }), (0, vue_1.renderSlot)(e.$slots, \"default\")], 64));\n }\n }), M = {\n key: 0,\n class: \"top-popup_header\"\n }, N = {\n key: 0,\n class: \"top-as-a closer\"\n }, P = {\n key: 1,\n class: \"top-popup_widget\"\n }, F = {\n key: 2,\n class: \"top-popup_content\"\n }, I = {\n key: 4,\n class: \"top-popup_footer\"\n }, L = [\"href\"], R = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popup\",\n props: {\n id: { default: \"\" },\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: { default: \"3\" },\n notch: {\n type: Boolean,\n default: !0\n },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: { default: \"fixed\" },\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\"\n ],\n setup(e, { expose: n, emit: l }) {\n let u = e, d = l, p = u.id || \"top-popup-id-\" + Math.random(), m = {\n id: p,\n popup: void 0\n };\n n(m);\n let h = (0, vue_1.ref)(null), g = (0, vue_1.ref)(null), v = (0, vue_1.ref)(), C = {\n onOpen: async (e) => {\n e.elPopup && (h.value = e.elPopup), e.elPopupInner && (e.elPopupInner.innerText = \"\", g.value = e.elPopupInner), C.opened = !0, C.popup = e, m.popup = e, v.value = e.el.__TopPopupOpenerProps.data, d(\"open\", {\n elPopup: e.elPopup,\n elPopupOpener: e.el,\n data: v.value\n });\n },\n onClose: (e) => {\n g.value = null, C.opened = !1, C.popup = void 0, v.value = void 0, d(\"close\", {\n elPopup: e.elPopup,\n elPopupOpener: e.el,\n data: e.el.__TopPopupOpenerProps.data\n });\n },\n classRef: (0, vue_1.toRef)(u, \"class\"),\n opened: !1,\n popup: void 0,\n transitionDurationRef: (0, vue_1.toRef)(u, \"transitionDuration\")\n };\n return (0, vue_1.watch)(() => u.class, (e, t) => {\n if (!h.value)\n return;\n let n = e?.split(\" \") ?? [], r = (t?.split(\" \") ?? []).filter((e) => !n.includes(e));\n h.value.classList.remove(...r), h.value.classList.add(...n);\n }), worker_CXehgQZh_esm_js_1.t.regVueComponent(p, C), (0, vue_1.onUnmounted)(() => {\n worker_CXehgQZh_esm_js_1.t.unregVueComponent(p);\n }), (n, r) => {\n let l = (0, vue_1.resolveDirective)(\"top-scroll-shadow\");\n return (0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(vue_1.Fragment, null, [n.$slots.opener ? ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(j, {\n key: 0,\n id: (0, vue_1.unref)(p),\n pos: e.pos,\n posBy: e.posBy,\n notch: e.notch,\n openByFocusInput: e.openByFocusInput,\n openByHover: n.$core.state.isMobile || n.$core.state.isMobileUA ? !1 : e.openByHover,\n disabled: e.disabled\n }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(n.$slots, \"opener\")]),\n _: 3\n }, 8, [\n \"id\",\n \"pos\",\n \"posBy\",\n \"notch\",\n \"openByFocusInput\",\n \"openByHover\",\n \"disabled\"\n ])) : (0, vue_1.createCommentVNode)(\"\", !0), g.value ? ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(vue_1.Teleport, {\n key: 1,\n to: g.value\n }, [\n n.$slots.header || n.$core.state.isMobile ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", M, [n.$core.state.isMobile ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"span\", N, (0, vue_1.toDisplayString)(n.$i18n.Common.Close), 1)) : (0, vue_1.createCommentVNode)(\"\", !0), (0, vue_1.renderSlot)(n.$slots, \"header\", { data: v.value })])) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.widget ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", P, [(0, vue_1.renderSlot)(n.$slots, \"widget\")])) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.content ? (0, vue_1.withDirectives)(((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", F, [(0, vue_1.renderSlot)(n.$slots, \"content\", { data: v.value })])), [[l]]) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.contentList ? (0, vue_1.withDirectives)(((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"ul\", {\n key: 3,\n class: \"top-popup_content\",\n onScroll: r[0] ||= (e) => n.$emit(\"scrollContentList\", e)\n }, [(0, vue_1.renderSlot)(n.$slots, \"contentList\", { data: v.value })], 32)), [[l]]) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.footer || e.footerSupportLink ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", I, [e.footerSupportLink ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"a\", {\n key: 0,\n class: \"top-popup_footerSupportLink\",\n href: e.footerSupportLink,\n target: \"_blank\"\n }, [(0, vue_1.createVNode)(forms_CKYB_KtK_esm_js_1.d, { hint: \"\" })], 8, L)) : (0, vue_1.createCommentVNode)(\"\", !0), (0, vue_1.renderSlot)(n.$slots, \"footer\", { data: v.value })])) : (0, vue_1.createCommentVNode)(\"\", !0)\n ], 8, [\"to\"])) : (0, vue_1.createCommentVNode)(\"\", !0)], 64);\n };\n }\n }), z = { class: \"top-popup_listItemActionsLabel top-ellipsis1\" }, B = { class: \"top-popup_listItemActions\" }, V = /* @__PURE__ */ (0, vue_1.defineComponent)({\n inheritAttrs: !1,\n __name: \"listItem\",\n props: {\n type: { default: \"button\" },\n closeByClick: {\n type: Boolean,\n default: !0\n },\n attrs: {}\n },\n setup(e) {\n let t = e;\n return (n, r) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"li\", { class: (0, vue_1.normalizeClass)({ \"top-popup_liNoSelectable\": t.type !== \"button\" }) }, [((0, vue_1.openBlock)(), (0, vue_1.createBlock)((0, vue_1.resolveDynamicComponent)(n.$attrs.href ? \"a\" : \"div\"), (0, vue_1.mergeProps)({ class: {\n \"top-popup_listItem\": !0,\n [\"top-popup_listItem-\" + t.type]: !!t.type,\n \"top-popup_liastItem-withActions\": n.$slots.actions,\n \"top-popup-noCloser\": !e.closeByClick,\n a: t.type === \"button\"\n } }, {\n ...n.$attrs,\n ...e.attrs\n }), {\n default: (0, vue_1.withCtx)(() => [n.$slots.actions ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(vue_1.Fragment, { key: 0 }, [(0, vue_1.createElementVNode)(\"div\", z, [(0, vue_1.renderSlot)(n.$slots, \"default\")]), (0, vue_1.createElementVNode)(\"div\", B, [(0, vue_1.renderSlot)(n.$slots, \"actions\")])], 64)) : (0, vue_1.renderSlot)(n.$slots, \"default\", { key: 1 })]),\n _: 3\n }, 16, [\"class\"])), (0, vue_1.renderSlot)(n.$slots, \"buttons\")], 2));\n }\n }), H = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"widgetInput\",\n props: /* @__PURE__ */ (0, vue_1.mergeModels)({\n modelValue: {},\n name: {},\n disabled: { type: Boolean },\n readonly: { type: Boolean },\n modificator: {},\n size: {},\n styling: {},\n isError: { type: Boolean },\n isLoading: { type: Boolean },\n icon: {},\n icon2: {},\n addCleaner: {\n type: Boolean,\n default: !0\n },\n title: {},\n captionType: {}\n }, {\n modelValue: { default: \"\" },\n modelModifiers: {}\n }),\n emits: [\"update:modelValue\"],\n setup(t) {\n let n = (0, vue_1.useModel)(t, \"modelValue\");\n return (t, r) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(forms_CKYB_KtK_esm_js_1.c, (0, vue_1.mergeProps)(t.$props, {\n modificator: \"popupWidgetInput\",\n modelValue: n.value,\n \"onUpdate:modelValue\": r[0] ||= (e) => n.value = e\n }), null, 16, [\"modelValue\"]));\n }\n }), U = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupAlert\",\n props: {\n submitText: {},\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\"\n ],\n setup(e) {\n let { submitText: t, ...r } = e;\n return (e, i) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupAlert\" }, r, {\n onOpen: i[0] ||= (t) => e.$emit(\"open\", t),\n onClose: i[1] ||= (t) => e.$emit(\"close\", t),\n onScrollContentList: i[2] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"opener\")]),\n footer: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"footer\"), (0, vue_1.createVNode)(forms_CKYB_KtK_esm_js_1.h, null, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(t) || e.$i18n.Common.Close), 1)]),\n _: 1\n })]),\n _: 2\n }, [e.$slots.header ? {\n name: \"header\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"header\")]),\n key: \"0\"\n } : void 0, e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\")]),\n key: \"1\"\n } : void 0]), 1040));\n }\n }), W = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupConfirm\",\n props: {\n cancelText: {},\n submitText: {},\n isWarning: { type: Boolean },\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\",\n \"submit\"\n ],\n setup(e, { emit: t }) {\n let r = e, i = t, a = (0, vue_1.ref)(!1), s = () => {\n a.value = !0, i(\"submit\");\n }, c = (e) => {\n if (a.value) {\n a.value = !1;\n return;\n }\n i(\"close\", e);\n }, { submitText: l, cancelText: p, isWarning: m, ...g } = r;\n return (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupConfirm\" }, g, {\n onOpen: t[0] ||= (t) => e.$emit(\"open\", t),\n onClose: t[1] ||= (e) => c(e),\n onScrollContentList: t[2] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"opener\")]),\n footer: (0, vue_1.withCtx)(() => [\n (0, vue_1.renderSlot)(e.$slots, \"footer\"),\n (0, vue_1.createVNode)(forms_CKYB_KtK_esm_js_1.h, { color: \"theme\" }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(p) || e.$i18n.Common.Cancel), 1)]),\n _: 1\n }),\n (0, vue_1.createVNode)(forms_CKYB_KtK_esm_js_1.h, {\n onClick: s,\n color: (0, vue_1.unref)(m) ? \"red\" : \"blue\"\n }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(l) || e.$i18n.Common.Continue), 1)]),\n _: 1\n }, 8, [\"color\"])\n ]),\n _: 2\n }, [e.$slots.header ? {\n name: \"header\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"header\")]),\n key: \"0\"\n } : void 0, e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\")]),\n key: \"1\"\n } : void 0]), 1040));\n }\n }), G = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupPrompt\",\n props: {\n submitText: {},\n cancelText: {},\n defaultValue: {},\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\",\n \"submit\"\n ],\n setup(e, { emit: t }) {\n let r = e, i = t, a = () => c.value = r.defaultValue ?? \"\", s = (0, vue_1.ref)(!1), c = (0, vue_1.ref)();\n (0, vue_1.watch)(() => r.defaultValue, () => a(), { immediate: !0 });\n let l = () => {\n s.value = !0;\n }, p = (e) => {\n if (s.value) {\n s.value = !1, i(\"submit\", c.value), a();\n return;\n }\n a(), i(\"close\", e);\n }, { submitText: m, cancelText: g, defaultValue: _, ...v } = r;\n return (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupPrompt\" }, v, {\n onOpen: t[1] ||= (t) => e.$emit(\"open\", t),\n onClose: t[2] ||= (e) => p(e),\n onScrollContentList: t[3] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"opener\")]),\n footer: (0, vue_1.withCtx)(() => [\n (0, vue_1.renderSlot)(e.$slots, \"footer\"),\n (0, vue_1.createVNode)(forms_CKYB_KtK_esm_js_1.h, { color: \"theme\" }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(g) || e.$i18n.Common.Cancel), 1)]),\n _: 1\n }),\n (0, vue_1.createVNode)(forms_CKYB_KtK_esm_js_1.h, { onClick: l }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(m) || e.$i18n.Common.OK), 1)]),\n _: 1\n })\n ]),\n _: 2\n }, [e.$slots.header ? {\n name: \"header\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"header\")]),\n key: \"0\"\n } : void 0, e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\"), (0, vue_1.createVNode)(H, {\n modelValue: c.value,\n \"onUpdate:modelValue\": t[0] ||= (e) => c.value = e,\n modelModifiers: { trim: !0 }\n }, null, 8, [\"modelValue\"])]),\n key: \"1\"\n } : void 0]), 1040));\n }\n }), K = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupHint\",\n props: {\n hint: {},\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n setup(e) {\n let { hint: n, ...r } = e;\n return (e, i) => {\n let a = (0, vue_1.resolveDirective)(\"top-tooltip\");\n return (0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupHint\" }, r, {\n onOpen: i[0] ||= (t) => e.$emit(\"open\", t),\n onClose: i[1] ||= (t) => e.$emit(\"close\", t),\n onScrollContentList: i[2] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.withDirectives)((0, vue_1.createVNode)(forms_CKYB_KtK_esm_js_1.d, {\n hint: (0, vue_1.unref)(n),\n class: \"top-popupHint_opener\"\n }, null, 8, [\"hint\"]), [[a]])]),\n _: 2\n }, [e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\")]),\n key: \"0\"\n } : void 0]), 1040);\n };\n }\n });\n exports.c = j;\n exports.s = R;\n exports.o = V;\n exports.a = H;\n exports.i = U;\n exports.r = W;\n exports.n = G;\n exports.t = K;\n});\n//# sourceMappingURL=popup-Sk9dcalT.esm.js.map\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\nimport Worker from '../../lib/worker';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\tconst disabledOld = !!elOpener.dataset.topPopupDisabled;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.dataset.topPopupDisabled = props.disabled ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n\n\tif (props.openByFocusInput && elOpener.classList.contains('top-input')) {\n\t\tconst elInput = elOpener.querySelector('input');\n\n\t\telInput.onfocus = () => {\n\t\t\tif (elOpener.dataset.topPopupDisabled) return;\n\n\t\t\t// фокус при возвращении не должен инициировать повторное открытие popup\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\t\t\tif (popup?.vueGetComponent()?.opened) return;\n\n\t\t\tWorker.openByOpener(elOpener);\n\t\t};\n\n\t\t/**\n\t\t * Открыть или закрыть `popup` в момент ввода значения, если он становится активным\n\t\t *\n\t\t * Для обработки ввода значения с проверкой `minLength`\n\t\t */\n\t\tif (props.disabled !== disabledOld && elInput === document.activeElement) {\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\n\t\t\tif (!props.disabled && !popup) {\n\t\t\t\tWorker.openByOpener(elOpener);\n\t\t\t}\n\n\t\t\tif (props.disabled && popup) {\n\t\t\t\tpopup.close();\n\t\t\t}\n\t\t}\n\t}\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\t/*\n\tpointer-events: none;\n\tcursor: auto !important;\n\t*/\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUnmounted, ref, toRef, watch } from 'vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { TopLibPopup } from '@/components/popup/lib/popup';\nimport type { Emits, Props } from './types';\nimport Opener from './opener/opener.vue';\nimport Worker from '@/components/popup/lib/worker';\n\nconst props = withDefaults(defineProps<Props<T>>(), {\n\tid: '',\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst emit = defineEmits<Emits<T>>();\n\nconst id = props.id || 'top-popup-id-' + Math.random() + '';\n\nconst expose = {\n\tid,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n};\n\ndefineExpose(expose);\n\nconst elPopupRef = ref<HTMLElement | null>(null);\nconst elPopupInnerRef = ref<HTMLElement | null>(null);\n\nconst data = ref<T>();\n\n// см. lib/popup\nconst onOpen = async (popup: TopLibPopup<T>) => {\n\tif (popup.elPopup) elPopupRef.value = popup.elPopup;\n\n\tif (popup.elPopupInner) {\n\t\tpopup.elPopupInner.innerText = '';\n\n\t\telPopupInnerRef.value = popup.elPopupInner;\n\t}\n\n\tvueConnector.opened = true;\n\tvueConnector.popup = popup;\n\n\texpose.popup = popup;\n\n\tdata.value = popup.el.__TopPopupOpenerProps.data;\n\n\temit('open', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: data.value });\n};\n\n// см. lib/popup\nconst onClose = (popup: TopLibPopup<T>) => {\n\telPopupInnerRef.value = null;\n\n\tvueConnector.opened = false;\n\tvueConnector.popup = undefined;\n\n\tdata.value = undefined;\n\n\temit('close', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: popup.el.__TopPopupOpenerProps.data });\n};\n\nconst vueConnector = {\n\tonOpen,\n\tonClose,\n\tclassRef: toRef(props, 'class'),\n\topened: false,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n\ttransitionDurationRef: toRef(props, 'transitionDuration'),\n};\n\nwatch(() => props.class, (newValue, oldValue) => {\n\tif (!elPopupRef.value) return;\n\n\tconst newClasses = newValue?.split(' ') ?? [];\n\tconst oldClasses = oldValue?.split(' ') ?? [];\n\n\tconst delClasses = oldClasses.filter((oldClass) => !newClasses.includes(oldClass));\n\n\telPopupRef.value.classList.remove(...delClasses);\n\telPopupRef.value.classList.add(...newClasses);\n});\n\nWorker.regVueComponent(id, vueConnector);\n\nonUnmounted(() => {\n\tWorker.unregVueComponent(id);\n});\n</script>\n\n<template>\n\t<Opener\n\t\tv-if=\"$slots.opener\"\n\t\t:id\n\t\t:pos\n\t\t:posBy\n\t\t:notch\n\t\t:openByFocusInput\n\t\t:openByHover=\"($core.state.isMobile || $core.state.isMobileUA) ? false : openByHover\"\n\t\t:disabled\n\t>\n\t\t<!-- @slot элемент для открытия Popup -->\n\t\t<slot name=\"opener\"></slot>\n\t</Opener>\n\n\t<!-- Это шаблон для компонента Popup, сам Popup генерируется в js и может находиться где угодно -->\n\t<!-- elPopupInnerRef будет установлен только после открытия и будет сброшен сразу после закрытия Popup -->\n\t<teleport\n\t\tv-if=\"elPopupInnerRef\"\n\t\t:to=\"elPopupInnerRef\"\n\t>\n\t\t<div\n\t\t\tv-if=\"$slots.header || $core.state.isMobile\"\n\t\t\tclass=\"top-popup_header\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-if=\"$core.state.isMobile\"\n\t\t\t\tclass=\"top-as-a closer\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.Close }}\n\t\t\t</span>\n\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.widget\"\n\t\t\tclass=\"top-popup_widget\"\n\t\t>\n\t\t\t<!-- @slot Виджет -->\n\t\t\t<slot name=\"widget\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.content\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot name=\"content\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<ul\n\t\t\tv-if=\"$slots.contentList\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\t@scroll=\"$emit('scrollContentList', $event)\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в виде списка, для вставки элементов списка используйте компонент popup/listItem -->\n\t\t\t<slot name=\"contentList\" :data=\"data\"></slot>\n\t\t</ul>\n\n\t\t<div\n\t\t\tv-if=\"$slots.footer || footerSupportLink\"\n\t\t\tclass=\"top-popup_footer\"\n\t\t>\n\t\t\t<a\n\t\t\t\tv-if=\"footerSupportLink\"\n\t\t\t\tclass=\"top-popup_footerSupportLink\"\n\t\t\t\t:href=\"footerSupportLink\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t>\n\t\t\t\t<TopHint hint=\"\"/>\n\t\t\t</a>\n\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\" :data=\"data\"></slot>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n.top-popup_footerSupportLink {\n\tmargin-right: auto;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { ListItemProps } from './types';\n\ndefineOptions({\n\tinheritAttrs: false,\n});\n\nconst props = withDefaults(defineProps<ListItemProps>(), {\n\ttype: 'button',\n\tcloseByClick: true,\n});\n</script>\n\n<template>\n\t<li\n\t\t:class=\"{\n\t\t\t'top-popup_liNoSelectable': props.type !== 'button'\n\t\t}\"\n\t>\n\t\t<component\n\t\t\t:is=\"$attrs.href ? 'a' : 'div'\"\n\t\t\t:class=\"{\n\t\t\t\t'top-popup_listItem': true,\n\t\t\t\t['top-popup_listItem-' + props.type]: !!props.type,\n\t\t\t\t'top-popup_liastItem-withActions': $slots.actions,\n\t\t\t\t'top-popup-noCloser': !closeByClick,\n\n\t\t\t\t'a': props.type === 'button', // оформления кнопки, deprecated\n\t\t\t}\"\n\t\t\t:=\"{...$attrs, ...attrs}\"\n\t\t>\n\t\t\t<template v-if=\"$slots.actions\">\n\t\t\t\t<div class=\"top-popup_listItemActionsLabel top-ellipsis1\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div class=\"top-popup_listItemActions\">\n\t\t\t\t\t<slot name=\"actions\"></slot>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template v-else>\n\t\t\t\t<slot></slot>\n\t\t\t</template>\n\t\t</component>\n\n\t\t<slot name=\"buttons\"></slot>\n\t</li>\n</template>\n","<script setup lang=\"ts\">\nimport type { ModelRef } from 'vue';\nimport type { Props } from '@/components/forms/input/types';\nimport TopInput from '@/components/forms/input/input.vue';\n\nwithDefaults(defineProps<Props>(), {\n\taddCleaner: true,\n});\n\nconst model: ModelRef<string> = defineModel({\n\tdefault: '',\n});\n</script>\n\n<template>\n\t<TopInput\n\t\t:=\"$props\"\n\t\tmodificator=\"popupWidgetInput\"\n\t\tv-model=\"model\"\n\t/>\n</template>\n\n<style>\n.top-input-popupWidgetInput {\n\t--top-loadbar-color: var(--color-line-2);\n\n\twidth: 100%;\n}\n\n.top-input_input-popupWidgetInput {\n\tborder: none;\n\tbackground: var(--color-layer-1);\n}\n\n.top-input_input-popupWidgetInput:hover {\n\tbackground: var(--color-layer-2);\n}\n\n.top-input_input-popupWidgetInput:focus {\n\tbackground: var(--color-layer-1);\n\toutline: unset;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\ndefineEmits<Emits<T>>();\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupAlert\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия Popup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton>\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref } from 'vue';\nimport type { PopupEvent } from '@/components/popup/popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst isSubmit = ref(false);\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n\n\temit('submit');\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\treturn;\n\t}\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tisWarning,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupConfirm\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton\n\t\t\t\t@click=\"onSubmit\"\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\n\t\t\t>\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref, watch } from 'vue';\nimport type { PopupEvent } from '../popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '../popup/popup.vue';\nimport TopPopupWidgetInput from '../popup/widgetInput/widgetInput.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst reset = () => localValue.value = props.defaultValue ?? '';\n\nconst isSubmit = ref(false);\n\nconst localValue = ref();\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\temit('submit', localValue.value);\n\n\t\treset();\n\n\t\treturn;\n\t}\n\n\treset();\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tdefaultValue,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupPrompt\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport TopPopup from '@/components/popup/popup/popup.vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { Props } from './types';\n\nconst props = defineProps<Props<T>>();\n\nconst {\n\thint,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupHint\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- Элемент для открытия Popup -->\n\t\t\t<TopHint\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-popupHint_opener\"\n\t\t\t\tv-top-tooltip\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\t</TopPopup>\n</template>\n\n<style>\n.top-popupHint_opener {\n\tcursor: pointer;\n}\n\n.top-popupHint_opener.top-active {\n\tcolor: var(--color-text-2);\n}\n</style>\n"]}
1
+ {"version":3,"sources":[".chunks/popup-CgrKc5Db.esm.js","../../src/components/popup/popup/opener/opener.vue","../../src/components/popup/popup/popup.vue","../../src/components/popup/popup/listItem.vue","../../src/components/popup/popup/widgetInput/widgetInput.vue","../../src/components/popup/popupAlert/popupAlert.vue","../../src/components/popup/popupConfirm/popupConfirm.vue","../../src/components/popup/popupPrompt/popupPrompt.vue","../../src/components/popup/popupHint/popupHint.vue"],"names":["vue","exports","j","vue_1","worker_DhqknASO_esm_js_1","M","N","P","F","I","L","R","n","l","u","d","p","m","h","g","v","C","$core","$emit","forms_BboZ50_J_esm_js_1","z","B","V","$slots","$attrs","H","t","U","$i18n","W","i","a","G","_","K"],"mappings":"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","sourcesContent":["define([\"require\", \"exports\", \"./forms-BboZ50-J.esm.js\", \"./worker-DhqknASO.esm.js\", \"vue\"], function (require, exports, forms_BboZ50_J_esm_js_1, worker_DhqknASO_esm_js_1, vue_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.t = exports.s = exports.r = exports.o = exports.n = exports.i = exports.c = exports.a = void 0;\n //#endregion\n //#region src/components/popup/popup/opener/opener.vue\n var j = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"opener\",\n props: {\n id: {},\n pos: { default: \"3\" },\n notch: {\n type: Boolean,\n default: !0\n },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: { default: \"fixed\" },\n data: {}\n },\n setup(e) {\n let t = e, n = t.id || Math.random() + \"\", a;\n function o(e) {\n setTimeout(() => {\n a = e.nextElementSibling, a && s(a);\n });\n }\n (0, vue_1.onUpdated)(() => {\n a && s(a);\n });\n function s(e) {\n e.dataset.topPopup = \"#\" + n;\n let i = !!e.dataset.topPopupDisabled;\n if (e.dataset.topPopupId = n, e.dataset.topPopupPos = t.pos, e.dataset.topPopupPosBy = t.posBy, e.dataset.topPopupNotch = t.notch ? \"true\" : \"\", e.dataset.topPopupOpenByHover = t.openByHover ? \"true\" : \"\", e.dataset.topPopupDisabled = t.disabled ? \"true\" : \"\", e.__TopPopupOpenerProps = t, t.openByFocusInput && e.classList.contains(\"top-input\")) {\n let n = e.querySelector(\"input\");\n if (n.onfocus = () => {\n e.dataset.topPopupDisabled || worker_DhqknASO_esm_js_1.t.getPopupFromOpener(e)?.vueGetComponent()?.opened || worker_DhqknASO_esm_js_1.t.openByOpener(e);\n }, t.disabled !== i && n === document.activeElement) {\n let n = worker_DhqknASO_esm_js_1.t.getPopupFromOpener(e);\n !t.disabled && !n && worker_DhqknASO_esm_js_1.t.openByOpener(e), t.disabled && n && n.close();\n }\n }\n }\n return (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(vue_1.Fragment, null, [(0, vue_1.createElementVNode)(\"template\", { ref: o }), (0, vue_1.renderSlot)(e.$slots, \"default\")], 64));\n }\n }), M = {\n key: 0,\n class: \"top-popup_header\"\n }, N = {\n key: 0,\n class: \"top-as-a closer\"\n }, P = {\n key: 1,\n class: \"top-popup_widget\"\n }, F = {\n key: 2,\n class: \"top-popup_content\"\n }, I = {\n key: 4,\n class: \"top-popup_footer\"\n }, L = [\"href\"], R = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popup\",\n props: {\n id: { default: \"\" },\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: { default: \"3\" },\n notch: {\n type: Boolean,\n default: !0\n },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: { default: \"fixed\" },\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\"\n ],\n setup(e, { expose: n, emit: l }) {\n let u = e, d = l, p = u.id || \"top-popup-id-\" + Math.random(), m = {\n id: p,\n popup: void 0\n };\n n(m);\n let h = (0, vue_1.ref)(null), g = (0, vue_1.ref)(null), v = (0, vue_1.ref)(), C = {\n onOpen: async (e) => {\n e.elPopup && (h.value = e.elPopup), e.elPopupInner && (e.elPopupInner.innerText = \"\", g.value = e.elPopupInner), C.opened = !0, C.popup = e, m.popup = e, v.value = e.el.__TopPopupOpenerProps.data, d(\"open\", {\n elPopup: e.elPopup,\n elPopupOpener: e.el,\n data: v.value\n });\n },\n onClose: (e) => {\n g.value = null, C.opened = !1, C.popup = void 0, v.value = void 0, d(\"close\", {\n elPopup: e.elPopup,\n elPopupOpener: e.el,\n data: e.el.__TopPopupOpenerProps.data\n });\n },\n classRef: (0, vue_1.toRef)(u, \"class\"),\n opened: !1,\n popup: void 0,\n transitionDurationRef: (0, vue_1.toRef)(u, \"transitionDuration\")\n };\n return (0, vue_1.watch)(() => u.class, (e, t) => {\n if (!h.value)\n return;\n let n = e?.split(\" \") ?? [], r = (t?.split(\" \") ?? []).filter((e) => !n.includes(e));\n h.value.classList.remove(...r), h.value.classList.add(...n);\n }), worker_DhqknASO_esm_js_1.t.regVueComponent(p, C), (0, vue_1.onUnmounted)(() => {\n worker_DhqknASO_esm_js_1.t.unregVueComponent(p);\n }), (n, r) => {\n let l = (0, vue_1.resolveDirective)(\"top-scroll-shadow\");\n return (0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(vue_1.Fragment, null, [n.$slots.opener ? ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(j, {\n key: 0,\n id: (0, vue_1.unref)(p),\n pos: e.pos,\n posBy: e.posBy,\n notch: e.notch,\n openByFocusInput: e.openByFocusInput,\n openByHover: n.$core.state.isMobile || n.$core.state.isMobileUA ? !1 : e.openByHover,\n disabled: e.disabled\n }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(n.$slots, \"opener\")]),\n _: 3\n }, 8, [\n \"id\",\n \"pos\",\n \"posBy\",\n \"notch\",\n \"openByFocusInput\",\n \"openByHover\",\n \"disabled\"\n ])) : (0, vue_1.createCommentVNode)(\"\", !0), g.value ? ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(vue_1.Teleport, {\n key: 1,\n to: g.value\n }, [\n n.$slots.header || n.$core.state.isMobile ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", M, [n.$core.state.isMobile ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"span\", N, (0, vue_1.toDisplayString)(n.$i18n.Common.Close), 1)) : (0, vue_1.createCommentVNode)(\"\", !0), (0, vue_1.renderSlot)(n.$slots, \"header\", { data: v.value })])) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.widget ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", P, [(0, vue_1.renderSlot)(n.$slots, \"widget\")])) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.content ? (0, vue_1.withDirectives)(((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", F, [(0, vue_1.renderSlot)(n.$slots, \"content\", { data: v.value })])), [[l]]) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.contentList ? (0, vue_1.withDirectives)(((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"ul\", {\n key: 3,\n class: \"top-popup_content\",\n onScroll: r[0] ||= (e) => n.$emit(\"scrollContentList\", e)\n }, [(0, vue_1.renderSlot)(n.$slots, \"contentList\", { data: v.value })], 32)), [[l]]) : (0, vue_1.createCommentVNode)(\"\", !0),\n n.$slots.footer || e.footerSupportLink ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", I, [e.footerSupportLink ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"a\", {\n key: 0,\n class: \"top-popup_footerSupportLink\",\n href: e.footerSupportLink,\n target: \"_blank\"\n }, [(0, vue_1.createVNode)(forms_BboZ50_J_esm_js_1.d, { hint: \"\" })], 8, L)) : (0, vue_1.createCommentVNode)(\"\", !0), (0, vue_1.renderSlot)(n.$slots, \"footer\", { data: v.value })])) : (0, vue_1.createCommentVNode)(\"\", !0)\n ], 8, [\"to\"])) : (0, vue_1.createCommentVNode)(\"\", !0)], 64);\n };\n }\n }), z = { class: \"top-popup_listItemActionsLabel top-ellipsis1\" }, B = { class: \"top-popup_listItemActions\" }, V = /* @__PURE__ */ (0, vue_1.defineComponent)({\n inheritAttrs: !1,\n __name: \"listItem\",\n props: {\n type: { default: \"button\" },\n closeByClick: {\n type: Boolean,\n default: !0\n },\n attrs: {}\n },\n setup(e) {\n let t = e;\n return (n, r) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"li\", { class: (0, vue_1.normalizeClass)({ \"top-popup_liNoSelectable\": t.type !== \"button\" }) }, [((0, vue_1.openBlock)(), (0, vue_1.createBlock)((0, vue_1.resolveDynamicComponent)(n.$attrs.href ? \"a\" : \"div\"), (0, vue_1.mergeProps)({ class: {\n \"top-popup_listItem\": !0,\n [\"top-popup_listItem-\" + t.type]: !!t.type,\n \"top-popup_liastItem-withActions\": n.$slots.actions,\n \"top-popup-noCloser\": !e.closeByClick,\n a: t.type === \"button\"\n } }, {\n ...n.$attrs,\n ...e.attrs\n }), {\n default: (0, vue_1.withCtx)(() => [n.$slots.actions ? ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(vue_1.Fragment, { key: 0 }, [(0, vue_1.createElementVNode)(\"div\", z, [(0, vue_1.renderSlot)(n.$slots, \"default\")]), (0, vue_1.createElementVNode)(\"div\", B, [(0, vue_1.renderSlot)(n.$slots, \"actions\")])], 64)) : (0, vue_1.renderSlot)(n.$slots, \"default\", { key: 1 })]),\n _: 3\n }, 16, [\"class\"])), (0, vue_1.renderSlot)(n.$slots, \"buttons\")], 2));\n }\n }), H = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"widgetInput\",\n props: /* @__PURE__ */ (0, vue_1.mergeModels)({\n modelValue: {},\n name: {},\n disabled: { type: Boolean },\n readonly: { type: Boolean },\n modificator: {},\n size: {},\n styling: {},\n isError: { type: Boolean },\n isLoading: { type: Boolean },\n icon: {},\n icon2: {},\n addCleaner: {\n type: Boolean,\n default: !0\n },\n title: {},\n captionType: {}\n }, {\n modelValue: { default: \"\" },\n modelModifiers: {}\n }),\n emits: [\"update:modelValue\"],\n setup(t) {\n let n = (0, vue_1.useModel)(t, \"modelValue\");\n return (t, r) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(forms_BboZ50_J_esm_js_1.c, (0, vue_1.mergeProps)(t.$props, {\n modificator: \"popupWidgetInput\",\n modelValue: n.value,\n \"onUpdate:modelValue\": r[0] ||= (e) => n.value = e\n }), null, 16, [\"modelValue\"]));\n }\n }), U = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupAlert\",\n props: {\n submitText: {},\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\"\n ],\n setup(e) {\n let { submitText: t, ...r } = e;\n return (e, i) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupAlert\" }, r, {\n onOpen: i[0] ||= (t) => e.$emit(\"open\", t),\n onClose: i[1] ||= (t) => e.$emit(\"close\", t),\n onScrollContentList: i[2] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"opener\")]),\n footer: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"footer\"), (0, vue_1.createVNode)(forms_BboZ50_J_esm_js_1.h, null, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(t) || e.$i18n.Common.Close), 1)]),\n _: 1\n })]),\n _: 2\n }, [e.$slots.header ? {\n name: \"header\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"header\")]),\n key: \"0\"\n } : void 0, e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\")]),\n key: \"1\"\n } : void 0]), 1040));\n }\n }), W = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupConfirm\",\n props: {\n cancelText: {},\n submitText: {},\n isWarning: { type: Boolean },\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\",\n \"submit\"\n ],\n setup(e, { emit: t }) {\n let r = e, i = t, a = (0, vue_1.ref)(!1), s = () => {\n a.value = !0, i(\"submit\");\n }, c = (e) => {\n if (a.value) {\n a.value = !1;\n return;\n }\n i(\"close\", e);\n }, { submitText: l, cancelText: p, isWarning: m, ...g } = r;\n return (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupConfirm\" }, g, {\n onOpen: t[0] ||= (t) => e.$emit(\"open\", t),\n onClose: t[1] ||= (e) => c(e),\n onScrollContentList: t[2] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"opener\")]),\n footer: (0, vue_1.withCtx)(() => [\n (0, vue_1.renderSlot)(e.$slots, \"footer\"),\n (0, vue_1.createVNode)(forms_BboZ50_J_esm_js_1.h, { color: \"theme\" }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(p) || e.$i18n.Common.Cancel), 1)]),\n _: 1\n }),\n (0, vue_1.createVNode)(forms_BboZ50_J_esm_js_1.h, {\n onClick: s,\n color: (0, vue_1.unref)(m) ? \"red\" : \"blue\"\n }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(l) || e.$i18n.Common.Continue), 1)]),\n _: 1\n }, 8, [\"color\"])\n ]),\n _: 2\n }, [e.$slots.header ? {\n name: \"header\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"header\")]),\n key: \"0\"\n } : void 0, e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\")]),\n key: \"1\"\n } : void 0]), 1040));\n }\n }), G = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupPrompt\",\n props: {\n submitText: {},\n cancelText: {},\n defaultValue: {},\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n emits: [\n \"open\",\n \"close\",\n \"scrollContentList\",\n \"submit\"\n ],\n setup(e, { emit: t }) {\n let r = e, i = t, a = () => c.value = r.defaultValue ?? \"\", s = (0, vue_1.ref)(!1), c = (0, vue_1.ref)();\n (0, vue_1.watch)(() => r.defaultValue, () => a(), { immediate: !0 });\n let l = () => {\n s.value = !0;\n }, p = (e) => {\n if (s.value) {\n s.value = !1, i(\"submit\", c.value), a();\n return;\n }\n a(), i(\"close\", e);\n }, { submitText: m, cancelText: g, defaultValue: _, ...v } = r;\n return (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupPrompt\" }, v, {\n onOpen: t[1] ||= (t) => e.$emit(\"open\", t),\n onClose: t[2] ||= (e) => p(e),\n onScrollContentList: t[3] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"opener\")]),\n footer: (0, vue_1.withCtx)(() => [\n (0, vue_1.renderSlot)(e.$slots, \"footer\"),\n (0, vue_1.createVNode)(forms_BboZ50_J_esm_js_1.h, { color: \"theme\" }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(g) || e.$i18n.Common.Cancel), 1)]),\n _: 1\n }),\n (0, vue_1.createVNode)(forms_BboZ50_J_esm_js_1.h, { onClick: l }, {\n default: (0, vue_1.withCtx)(() => [(0, vue_1.createTextVNode)((0, vue_1.toDisplayString)((0, vue_1.unref)(m) || e.$i18n.Common.OK), 1)]),\n _: 1\n })\n ]),\n _: 2\n }, [e.$slots.header ? {\n name: \"header\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"header\")]),\n key: \"0\"\n } : void 0, e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\"), (0, vue_1.createVNode)(H, {\n modelValue: c.value,\n \"onUpdate:modelValue\": t[0] ||= (e) => c.value = e,\n modelModifiers: { trim: !0 }\n }, null, 8, [\"modelValue\"])]),\n key: \"1\"\n } : void 0]), 1040));\n }\n }), K = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"popupHint\",\n props: {\n hint: {},\n id: {},\n class: {},\n transitionDuration: {},\n footerSupportLink: {},\n pos: {},\n notch: { type: Boolean },\n openByFocusInput: { type: Boolean },\n openByHover: { type: Boolean },\n disabled: { type: Boolean },\n posBy: {},\n data: {}\n },\n setup(e) {\n let { hint: n, ...r } = e;\n return (e, i) => {\n let a = (0, vue_1.resolveDirective)(\"top-tooltip\");\n return (0, vue_1.openBlock)(), (0, vue_1.createBlock)(R, (0, vue_1.mergeProps)({ class: \"top-popupHint\" }, r, {\n onOpen: i[0] ||= (t) => e.$emit(\"open\", t),\n onClose: i[1] ||= (t) => e.$emit(\"close\", t),\n onScrollContentList: i[2] ||= (...t) => e.$emit(\"scrollContentList\", ...t)\n }), (0, vue_1.createSlots)({\n opener: (0, vue_1.withCtx)(() => [(0, vue_1.withDirectives)((0, vue_1.createVNode)(forms_BboZ50_J_esm_js_1.d, {\n hint: (0, vue_1.unref)(n),\n class: \"top-popupHint_opener\"\n }, null, 8, [\"hint\"]), [[a]])]),\n _: 2\n }, [e.$slots.default ? {\n name: \"content\",\n fn: (0, vue_1.withCtx)(() => [(0, vue_1.renderSlot)(e.$slots, \"default\")]),\n key: \"0\"\n } : void 0]), 1040);\n };\n }\n });\n exports.c = j;\n exports.s = R;\n exports.o = V;\n exports.a = H;\n exports.i = U;\n exports.r = W;\n exports.n = G;\n exports.t = K;\n});\n//# sourceMappingURL=popup-CgrKc5Db.esm.js.map\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\nimport Worker from '../../lib/worker';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\tconst disabledOld = !!elOpener.dataset.topPopupDisabled;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.dataset.topPopupDisabled = props.disabled ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n\n\tif (props.openByFocusInput && elOpener.classList.contains('top-input')) {\n\t\tconst elInput = elOpener.querySelector('input');\n\n\t\telInput.onfocus = () => {\n\t\t\tif (elOpener.dataset.topPopupDisabled) return;\n\n\t\t\t// фокус при возвращении не должен инициировать повторное открытие popup\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\t\t\tif (popup?.vueGetComponent()?.opened) return;\n\n\t\t\tWorker.openByOpener(elOpener);\n\t\t};\n\n\t\t/**\n\t\t * Открыть или закрыть `popup` в момент ввода значения, если он становится активным\n\t\t *\n\t\t * Для обработки ввода значения с проверкой `minLength`\n\t\t */\n\t\tif (props.disabled !== disabledOld && elInput === document.activeElement) {\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\n\t\t\tif (!props.disabled && !popup) {\n\t\t\t\tWorker.openByOpener(elOpener);\n\t\t\t}\n\n\t\t\tif (props.disabled && popup) {\n\t\t\t\tpopup.close();\n\t\t\t}\n\t\t}\n\t}\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\t/*\n\tpointer-events: none;\n\tcursor: auto !important;\n\t*/\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUnmounted, ref, toRef, watch } from 'vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { TopLibPopup } from '@/components/popup/lib/popup';\nimport type { Emits, Props } from './types';\nimport Opener from './opener/opener.vue';\nimport Worker from '@/components/popup/lib/worker';\n\nconst props = withDefaults(defineProps<Props<T>>(), {\n\tid: '',\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst emit = defineEmits<Emits<T>>();\n\nconst id = props.id || 'top-popup-id-' + Math.random() + '';\n\nconst expose = {\n\tid,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n};\n\ndefineExpose(expose);\n\nconst elPopupRef = ref<HTMLElement | null>(null);\nconst elPopupInnerRef = ref<HTMLElement | null>(null);\n\nconst data = ref<T>();\n\n// см. lib/popup\nconst onOpen = async (popup: TopLibPopup<T>) => {\n\tif (popup.elPopup) elPopupRef.value = popup.elPopup;\n\n\tif (popup.elPopupInner) {\n\t\tpopup.elPopupInner.innerText = '';\n\n\t\telPopupInnerRef.value = popup.elPopupInner;\n\t}\n\n\tvueConnector.opened = true;\n\tvueConnector.popup = popup;\n\n\texpose.popup = popup;\n\n\tdata.value = popup.el.__TopPopupOpenerProps.data;\n\n\temit('open', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: data.value });\n};\n\n// см. lib/popup\nconst onClose = (popup: TopLibPopup<T>) => {\n\telPopupInnerRef.value = null;\n\n\tvueConnector.opened = false;\n\tvueConnector.popup = undefined;\n\n\tdata.value = undefined;\n\n\temit('close', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: popup.el.__TopPopupOpenerProps.data });\n};\n\nconst vueConnector = {\n\tonOpen,\n\tonClose,\n\tclassRef: toRef(props, 'class'),\n\topened: false,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n\ttransitionDurationRef: toRef(props, 'transitionDuration'),\n};\n\nwatch(() => props.class, (newValue, oldValue) => {\n\tif (!elPopupRef.value) return;\n\n\tconst newClasses = newValue?.split(' ') ?? [];\n\tconst oldClasses = oldValue?.split(' ') ?? [];\n\n\tconst delClasses = oldClasses.filter((oldClass) => !newClasses.includes(oldClass));\n\n\telPopupRef.value.classList.remove(...delClasses);\n\telPopupRef.value.classList.add(...newClasses);\n});\n\nWorker.regVueComponent(id, vueConnector);\n\nonUnmounted(() => {\n\tWorker.unregVueComponent(id);\n});\n</script>\n\n<template>\n\t<Opener\n\t\tv-if=\"$slots.opener\"\n\t\t:id\n\t\t:pos\n\t\t:posBy\n\t\t:notch\n\t\t:openByFocusInput\n\t\t:openByHover=\"($core.state.isMobile || $core.state.isMobileUA) ? false : openByHover\"\n\t\t:disabled\n\t>\n\t\t<!-- @slot элемент для открытия Popup -->\n\t\t<slot name=\"opener\"></slot>\n\t</Opener>\n\n\t<!-- Это шаблон для компонента Popup, сам Popup генерируется в js и может находиться где угодно -->\n\t<!-- elPopupInnerRef будет установлен только после открытия и будет сброшен сразу после закрытия Popup -->\n\t<teleport\n\t\tv-if=\"elPopupInnerRef\"\n\t\t:to=\"elPopupInnerRef\"\n\t>\n\t\t<div\n\t\t\tv-if=\"$slots.header || $core.state.isMobile\"\n\t\t\tclass=\"top-popup_header\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-if=\"$core.state.isMobile\"\n\t\t\t\tclass=\"top-as-a closer\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.Close }}\n\t\t\t</span>\n\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.widget\"\n\t\t\tclass=\"top-popup_widget\"\n\t\t>\n\t\t\t<!-- @slot Виджет -->\n\t\t\t<slot name=\"widget\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.content\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot name=\"content\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<ul\n\t\t\tv-if=\"$slots.contentList\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\t@scroll=\"$emit('scrollContentList', $event)\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в виде списка, для вставки элементов списка используйте компонент popup/listItem -->\n\t\t\t<slot name=\"contentList\" :data=\"data\"></slot>\n\t\t</ul>\n\n\t\t<div\n\t\t\tv-if=\"$slots.footer || footerSupportLink\"\n\t\t\tclass=\"top-popup_footer\"\n\t\t>\n\t\t\t<a\n\t\t\t\tv-if=\"footerSupportLink\"\n\t\t\t\tclass=\"top-popup_footerSupportLink\"\n\t\t\t\t:href=\"footerSupportLink\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t>\n\t\t\t\t<TopHint hint=\"\"/>\n\t\t\t</a>\n\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\" :data=\"data\"></slot>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n.top-popup_footerSupportLink {\n\tmargin-right: auto;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { ListItemProps } from './types';\n\ndefineOptions({\n\tinheritAttrs: false,\n});\n\nconst props = withDefaults(defineProps<ListItemProps>(), {\n\ttype: 'button',\n\tcloseByClick: true,\n});\n</script>\n\n<template>\n\t<li\n\t\t:class=\"{\n\t\t\t'top-popup_liNoSelectable': props.type !== 'button'\n\t\t}\"\n\t>\n\t\t<component\n\t\t\t:is=\"$attrs.href ? 'a' : 'div'\"\n\t\t\t:class=\"{\n\t\t\t\t'top-popup_listItem': true,\n\t\t\t\t['top-popup_listItem-' + props.type]: !!props.type,\n\t\t\t\t'top-popup_liastItem-withActions': $slots.actions,\n\t\t\t\t'top-popup-noCloser': !closeByClick,\n\n\t\t\t\t'a': props.type === 'button', // оформления кнопки, deprecated\n\t\t\t}\"\n\t\t\t:=\"{...$attrs, ...attrs}\"\n\t\t>\n\t\t\t<template v-if=\"$slots.actions\">\n\t\t\t\t<div class=\"top-popup_listItemActionsLabel top-ellipsis1\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div class=\"top-popup_listItemActions\">\n\t\t\t\t\t<slot name=\"actions\"></slot>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template v-else>\n\t\t\t\t<slot></slot>\n\t\t\t</template>\n\t\t</component>\n\n\t\t<slot name=\"buttons\"></slot>\n\t</li>\n</template>\n","<script setup lang=\"ts\">\nimport type { ModelRef } from 'vue';\nimport type { Props } from '@/components/forms/input/types';\nimport TopInput from '@/components/forms/input/input.vue';\n\nwithDefaults(defineProps<Props>(), {\n\taddCleaner: true,\n});\n\nconst model: ModelRef<string> = defineModel({\n\tdefault: '',\n});\n</script>\n\n<template>\n\t<TopInput\n\t\t:=\"$props\"\n\t\tmodificator=\"popupWidgetInput\"\n\t\tv-model=\"model\"\n\t/>\n</template>\n\n<style>\n.top-input-popupWidgetInput {\n\t--top-loadbar-color: var(--color-line-2);\n\n\twidth: 100%;\n}\n\n.top-input_input-popupWidgetInput {\n\tborder: none;\n\tbackground: var(--color-layer-1);\n}\n\n.top-input_input-popupWidgetInput:hover {\n\tbackground: var(--color-layer-2);\n}\n\n.top-input_input-popupWidgetInput:focus {\n\tbackground: var(--color-layer-1);\n\toutline: unset;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\ndefineEmits<Emits<T>>();\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupAlert\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия Popup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton>\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref } from 'vue';\nimport type { PopupEvent } from '@/components/popup/popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst isSubmit = ref(false);\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n\n\temit('submit');\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\treturn;\n\t}\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tisWarning,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupConfirm\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton\n\t\t\t\t@click=\"onSubmit\"\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\n\t\t\t>\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref, watch } from 'vue';\nimport type { PopupEvent } from '../popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '../popup/popup.vue';\nimport TopPopupWidgetInput from '../popup/widgetInput/widgetInput.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst reset = () => localValue.value = props.defaultValue ?? '';\n\nconst isSubmit = ref(false);\n\nconst localValue = ref();\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\temit('submit', localValue.value);\n\n\t\treset();\n\n\t\treturn;\n\t}\n\n\treset();\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tdefaultValue,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupPrompt\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport TopPopup from '@/components/popup/popup/popup.vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { Props } from './types';\n\nconst props = defineProps<Props<T>>();\n\nconst {\n\thint,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupHint\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- Элемент для открытия Popup -->\n\t\t\t<TopHint\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-popupHint_opener\"\n\t\t\t\tv-top-tooltip\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\t</TopPopup>\n</template>\n\n<style>\n.top-popupHint_opener {\n\tcursor: pointer;\n}\n\n.top-popupHint_opener.top-active {\n\tcolor: var(--color-text-2);\n}\n</style>\n"]}
@@ -5,8 +5,8 @@
5
5
  _autoloadCSSCore.insertCSSLinkToPage(fileNames, true);
6
6
  /* end import css */
7
7
 
8
- import { c as e, d as t, h as n } from "./forms-CKYB-KtK.esm.js";
9
- import { t as r } from "./worker-CXehgQZh.esm.js";
8
+ import { c as e, d as t, h as n } from "./forms-BboZ50-J.esm.js";
9
+ import { t as r } from "./worker-DhqknASO.esm.js";
10
10
  import { Fragment as i, Teleport as a, createBlock as o, createCommentVNode as s, createElementBlock as c, createElementVNode as l, createSlots as u, createTextVNode as d, createVNode as f, defineComponent as p, mergeModels as m, mergeProps as h, normalizeClass as g, onUnmounted as _, onUpdated as v, openBlock as y, ref as b, renderSlot as x, resolveDirective as S, resolveDynamicComponent as C, toDisplayString as w, toRef as T, unref as E, useModel as D, watch as O, withCtx as k, withDirectives as A } from "vue";
11
11
  //#endregion
12
12
  //#region src/components/popup/popup/opener/opener.vue
@@ -441,4 +441,4 @@ var j = /* @__PURE__ */ p({
441
441
  //#endregion
442
442
  export { H as a, j as c, U as i, G as n, V as o, W as r, R as s, K as t };
443
443
 
444
- //# sourceMappingURL=popup-Sk9dcalT.esm.js.map
444
+ //# sourceMappingURL=popup-CgrKc5Db.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popup-Sk9dcalT.esm.js","names":["$slots","$core","$i18n","$emit","$attrs","$slots","$props","$emit","$i18n","$slots","$emit","$i18n","$slots","$emit","$i18n","$slots","$emit","$slots"],"sources":["../../src/components/popup/popup/opener/opener.vue","../../src/components/popup/popup/opener/opener.vue","../../src/components/popup/popup/popup.vue","../../src/components/popup/popup/popup.vue","../../src/components/popup/popup/listItem.vue","../../src/components/popup/popup/listItem.vue","../../src/components/popup/popup/widgetInput/widgetInput.vue","../../src/components/popup/popup/widgetInput/widgetInput.vue","../../src/components/popup/popupAlert/popupAlert.vue","../../src/components/popup/popupAlert/popupAlert.vue","../../src/components/popup/popupConfirm/popupConfirm.vue","../../src/components/popup/popupConfirm/popupConfirm.vue","../../src/components/popup/popupPrompt/popupPrompt.vue","../../src/components/popup/popupPrompt/popupPrompt.vue","../../src/components/popup/popupHint/popupHint.vue","../../src/components/popup/popupHint/popupHint.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\nimport Worker from '../../lib/worker';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\tconst disabledOld = !!elOpener.dataset.topPopupDisabled;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.dataset.topPopupDisabled = props.disabled ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n\n\tif (props.openByFocusInput && elOpener.classList.contains('top-input')) {\n\t\tconst elInput = elOpener.querySelector('input');\n\n\t\telInput.onfocus = () => {\n\t\t\tif (elOpener.dataset.topPopupDisabled) return;\n\n\t\t\t// фокус при возвращении не должен инициировать повторное открытие popup\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\t\t\tif (popup?.vueGetComponent()?.opened) return;\n\n\t\t\tWorker.openByOpener(elOpener);\n\t\t};\n\n\t\t/**\n\t\t * Открыть или закрыть `popup` в момент ввода значения, если он становится активным\n\t\t *\n\t\t * Для обработки ввода значения с проверкой `minLength`\n\t\t */\n\t\tif (props.disabled !== disabledOld && elInput === document.activeElement) {\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\n\t\t\tif (!props.disabled && !popup) {\n\t\t\t\tWorker.openByOpener(elOpener);\n\t\t\t}\n\n\t\t\tif (props.disabled && popup) {\n\t\t\t\tpopup.close();\n\t\t\t}\n\t\t}\n\t}\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\t/*\n\tpointer-events: none;\n\tcursor: auto !important;\n\t*/\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\nimport Worker from '../../lib/worker';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\tconst disabledOld = !!elOpener.dataset.topPopupDisabled;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.dataset.topPopupDisabled = props.disabled ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n\n\tif (props.openByFocusInput && elOpener.classList.contains('top-input')) {\n\t\tconst elInput = elOpener.querySelector('input');\n\n\t\telInput.onfocus = () => {\n\t\t\tif (elOpener.dataset.topPopupDisabled) return;\n\n\t\t\t// фокус при возвращении не должен инициировать повторное открытие popup\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\t\t\tif (popup?.vueGetComponent()?.opened) return;\n\n\t\t\tWorker.openByOpener(elOpener);\n\t\t};\n\n\t\t/**\n\t\t * Открыть или закрыть `popup` в момент ввода значения, если он становится активным\n\t\t *\n\t\t * Для обработки ввода значения с проверкой `minLength`\n\t\t */\n\t\tif (props.disabled !== disabledOld && elInput === document.activeElement) {\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\n\t\t\tif (!props.disabled && !popup) {\n\t\t\t\tWorker.openByOpener(elOpener);\n\t\t\t}\n\n\t\t\tif (props.disabled && popup) {\n\t\t\t\tpopup.close();\n\t\t\t}\n\t\t}\n\t}\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\t/*\n\tpointer-events: none;\n\tcursor: auto !important;\n\t*/\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUnmounted, ref, toRef, watch } from 'vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { TopLibPopup } from '@/components/popup/lib/popup';\nimport type { Emits, Props } from './types';\nimport Opener from './opener/opener.vue';\nimport Worker from '@/components/popup/lib/worker';\n\nconst props = withDefaults(defineProps<Props<T>>(), {\n\tid: '',\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst emit = defineEmits<Emits<T>>();\n\nconst id = props.id || 'top-popup-id-' + Math.random() + '';\n\nconst expose = {\n\tid,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n};\n\ndefineExpose(expose);\n\nconst elPopupRef = ref<HTMLElement | null>(null);\nconst elPopupInnerRef = ref<HTMLElement | null>(null);\n\nconst data = ref<T>();\n\n// см. lib/popup\nconst onOpen = async (popup: TopLibPopup<T>) => {\n\tif (popup.elPopup) elPopupRef.value = popup.elPopup;\n\n\tif (popup.elPopupInner) {\n\t\tpopup.elPopupInner.innerText = '';\n\n\t\telPopupInnerRef.value = popup.elPopupInner;\n\t}\n\n\tvueConnector.opened = true;\n\tvueConnector.popup = popup;\n\n\texpose.popup = popup;\n\n\tdata.value = popup.el.__TopPopupOpenerProps.data;\n\n\temit('open', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: data.value });\n};\n\n// см. lib/popup\nconst onClose = (popup: TopLibPopup<T>) => {\n\telPopupInnerRef.value = null;\n\n\tvueConnector.opened = false;\n\tvueConnector.popup = undefined;\n\n\tdata.value = undefined;\n\n\temit('close', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: popup.el.__TopPopupOpenerProps.data });\n};\n\nconst vueConnector = {\n\tonOpen,\n\tonClose,\n\tclassRef: toRef(props, 'class'),\n\topened: false,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n\ttransitionDurationRef: toRef(props, 'transitionDuration'),\n};\n\nwatch(() => props.class, (newValue, oldValue) => {\n\tif (!elPopupRef.value) return;\n\n\tconst newClasses = newValue?.split(' ') ?? [];\n\tconst oldClasses = oldValue?.split(' ') ?? [];\n\n\tconst delClasses = oldClasses.filter((oldClass) => !newClasses.includes(oldClass));\n\n\telPopupRef.value.classList.remove(...delClasses);\n\telPopupRef.value.classList.add(...newClasses);\n});\n\nWorker.regVueComponent(id, vueConnector);\n\nonUnmounted(() => {\n\tWorker.unregVueComponent(id);\n});\n</script>\n\n<template>\n\t<Opener\n\t\tv-if=\"$slots.opener\"\n\t\t:id\n\t\t:pos\n\t\t:posBy\n\t\t:notch\n\t\t:openByFocusInput\n\t\t:openByHover=\"($core.state.isMobile || $core.state.isMobileUA) ? false : openByHover\"\n\t\t:disabled\n\t>\n\t\t<!-- @slot элемент для открытия Popup -->\n\t\t<slot name=\"opener\"></slot>\n\t</Opener>\n\n\t<!-- Это шаблон для компонента Popup, сам Popup генерируется в js и может находиться где угодно -->\n\t<!-- elPopupInnerRef будет установлен только после открытия и будет сброшен сразу после закрытия Popup -->\n\t<teleport\n\t\tv-if=\"elPopupInnerRef\"\n\t\t:to=\"elPopupInnerRef\"\n\t>\n\t\t<div\n\t\t\tv-if=\"$slots.header || $core.state.isMobile\"\n\t\t\tclass=\"top-popup_header\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-if=\"$core.state.isMobile\"\n\t\t\t\tclass=\"top-as-a closer\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.Close }}\n\t\t\t</span>\n\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.widget\"\n\t\t\tclass=\"top-popup_widget\"\n\t\t>\n\t\t\t<!-- @slot Виджет -->\n\t\t\t<slot name=\"widget\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.content\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot name=\"content\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<ul\n\t\t\tv-if=\"$slots.contentList\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\t@scroll=\"$emit('scrollContentList', $event)\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в виде списка, для вставки элементов списка используйте компонент popup/listItem -->\n\t\t\t<slot name=\"contentList\" :data=\"data\"></slot>\n\t\t</ul>\n\n\t\t<div\n\t\t\tv-if=\"$slots.footer || footerSupportLink\"\n\t\t\tclass=\"top-popup_footer\"\n\t\t>\n\t\t\t<a\n\t\t\t\tv-if=\"footerSupportLink\"\n\t\t\t\tclass=\"top-popup_footerSupportLink\"\n\t\t\t\t:href=\"footerSupportLink\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t>\n\t\t\t\t<TopHint hint=\"\"/>\n\t\t\t</a>\n\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\" :data=\"data\"></slot>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n.top-popup_footerSupportLink {\n\tmargin-right: auto;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUnmounted, ref, toRef, watch } from 'vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { TopLibPopup } from '@/components/popup/lib/popup';\nimport type { Emits, Props } from './types';\nimport Opener from './opener/opener.vue';\nimport Worker from '@/components/popup/lib/worker';\n\nconst props = withDefaults(defineProps<Props<T>>(), {\n\tid: '',\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst emit = defineEmits<Emits<T>>();\n\nconst id = props.id || 'top-popup-id-' + Math.random() + '';\n\nconst expose = {\n\tid,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n};\n\ndefineExpose(expose);\n\nconst elPopupRef = ref<HTMLElement | null>(null);\nconst elPopupInnerRef = ref<HTMLElement | null>(null);\n\nconst data = ref<T>();\n\n// см. lib/popup\nconst onOpen = async (popup: TopLibPopup<T>) => {\n\tif (popup.elPopup) elPopupRef.value = popup.elPopup;\n\n\tif (popup.elPopupInner) {\n\t\tpopup.elPopupInner.innerText = '';\n\n\t\telPopupInnerRef.value = popup.elPopupInner;\n\t}\n\n\tvueConnector.opened = true;\n\tvueConnector.popup = popup;\n\n\texpose.popup = popup;\n\n\tdata.value = popup.el.__TopPopupOpenerProps.data;\n\n\temit('open', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: data.value });\n};\n\n// см. lib/popup\nconst onClose = (popup: TopLibPopup<T>) => {\n\telPopupInnerRef.value = null;\n\n\tvueConnector.opened = false;\n\tvueConnector.popup = undefined;\n\n\tdata.value = undefined;\n\n\temit('close', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: popup.el.__TopPopupOpenerProps.data });\n};\n\nconst vueConnector = {\n\tonOpen,\n\tonClose,\n\tclassRef: toRef(props, 'class'),\n\topened: false,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n\ttransitionDurationRef: toRef(props, 'transitionDuration'),\n};\n\nwatch(() => props.class, (newValue, oldValue) => {\n\tif (!elPopupRef.value) return;\n\n\tconst newClasses = newValue?.split(' ') ?? [];\n\tconst oldClasses = oldValue?.split(' ') ?? [];\n\n\tconst delClasses = oldClasses.filter((oldClass) => !newClasses.includes(oldClass));\n\n\telPopupRef.value.classList.remove(...delClasses);\n\telPopupRef.value.classList.add(...newClasses);\n});\n\nWorker.regVueComponent(id, vueConnector);\n\nonUnmounted(() => {\n\tWorker.unregVueComponent(id);\n});\n</script>\n\n<template>\n\t<Opener\n\t\tv-if=\"$slots.opener\"\n\t\t:id\n\t\t:pos\n\t\t:posBy\n\t\t:notch\n\t\t:openByFocusInput\n\t\t:openByHover=\"($core.state.isMobile || $core.state.isMobileUA) ? false : openByHover\"\n\t\t:disabled\n\t>\n\t\t<!-- @slot элемент для открытия Popup -->\n\t\t<slot name=\"opener\"></slot>\n\t</Opener>\n\n\t<!-- Это шаблон для компонента Popup, сам Popup генерируется в js и может находиться где угодно -->\n\t<!-- elPopupInnerRef будет установлен только после открытия и будет сброшен сразу после закрытия Popup -->\n\t<teleport\n\t\tv-if=\"elPopupInnerRef\"\n\t\t:to=\"elPopupInnerRef\"\n\t>\n\t\t<div\n\t\t\tv-if=\"$slots.header || $core.state.isMobile\"\n\t\t\tclass=\"top-popup_header\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-if=\"$core.state.isMobile\"\n\t\t\t\tclass=\"top-as-a closer\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.Close }}\n\t\t\t</span>\n\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.widget\"\n\t\t\tclass=\"top-popup_widget\"\n\t\t>\n\t\t\t<!-- @slot Виджет -->\n\t\t\t<slot name=\"widget\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.content\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot name=\"content\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<ul\n\t\t\tv-if=\"$slots.contentList\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\t@scroll=\"$emit('scrollContentList', $event)\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в виде списка, для вставки элементов списка используйте компонент popup/listItem -->\n\t\t\t<slot name=\"contentList\" :data=\"data\"></slot>\n\t\t</ul>\n\n\t\t<div\n\t\t\tv-if=\"$slots.footer || footerSupportLink\"\n\t\t\tclass=\"top-popup_footer\"\n\t\t>\n\t\t\t<a\n\t\t\t\tv-if=\"footerSupportLink\"\n\t\t\t\tclass=\"top-popup_footerSupportLink\"\n\t\t\t\t:href=\"footerSupportLink\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t>\n\t\t\t\t<TopHint hint=\"\"/>\n\t\t\t</a>\n\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\" :data=\"data\"></slot>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n.top-popup_footerSupportLink {\n\tmargin-right: auto;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { ListItemProps } from './types';\n\ndefineOptions({\n\tinheritAttrs: false,\n});\n\nconst props = withDefaults(defineProps<ListItemProps>(), {\n\ttype: 'button',\n\tcloseByClick: true,\n});\n</script>\n\n<template>\n\t<li\n\t\t:class=\"{\n\t\t\t'top-popup_liNoSelectable': props.type !== 'button'\n\t\t}\"\n\t>\n\t\t<component\n\t\t\t:is=\"$attrs.href ? 'a' : 'div'\"\n\t\t\t:class=\"{\n\t\t\t\t'top-popup_listItem': true,\n\t\t\t\t['top-popup_listItem-' + props.type]: !!props.type,\n\t\t\t\t'top-popup_liastItem-withActions': $slots.actions,\n\t\t\t\t'top-popup-noCloser': !closeByClick,\n\n\t\t\t\t'a': props.type === 'button', // оформления кнопки, deprecated\n\t\t\t}\"\n\t\t\t:=\"{...$attrs, ...attrs}\"\n\t\t>\n\t\t\t<template v-if=\"$slots.actions\">\n\t\t\t\t<div class=\"top-popup_listItemActionsLabel top-ellipsis1\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div class=\"top-popup_listItemActions\">\n\t\t\t\t\t<slot name=\"actions\"></slot>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template v-else>\n\t\t\t\t<slot></slot>\n\t\t\t</template>\n\t\t</component>\n\n\t\t<slot name=\"buttons\"></slot>\n\t</li>\n</template>\n","<script setup lang=\"ts\">\nimport type { ListItemProps } from './types';\n\ndefineOptions({\n\tinheritAttrs: false,\n});\n\nconst props = withDefaults(defineProps<ListItemProps>(), {\n\ttype: 'button',\n\tcloseByClick: true,\n});\n</script>\n\n<template>\n\t<li\n\t\t:class=\"{\n\t\t\t'top-popup_liNoSelectable': props.type !== 'button'\n\t\t}\"\n\t>\n\t\t<component\n\t\t\t:is=\"$attrs.href ? 'a' : 'div'\"\n\t\t\t:class=\"{\n\t\t\t\t'top-popup_listItem': true,\n\t\t\t\t['top-popup_listItem-' + props.type]: !!props.type,\n\t\t\t\t'top-popup_liastItem-withActions': $slots.actions,\n\t\t\t\t'top-popup-noCloser': !closeByClick,\n\n\t\t\t\t'a': props.type === 'button', // оформления кнопки, deprecated\n\t\t\t}\"\n\t\t\t:=\"{...$attrs, ...attrs}\"\n\t\t>\n\t\t\t<template v-if=\"$slots.actions\">\n\t\t\t\t<div class=\"top-popup_listItemActionsLabel top-ellipsis1\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div class=\"top-popup_listItemActions\">\n\t\t\t\t\t<slot name=\"actions\"></slot>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template v-else>\n\t\t\t\t<slot></slot>\n\t\t\t</template>\n\t\t</component>\n\n\t\t<slot name=\"buttons\"></slot>\n\t</li>\n</template>\n","<script setup lang=\"ts\">\nimport type { ModelRef } from 'vue';\nimport type { Props } from '@/components/forms/input/types';\nimport TopInput from '@/components/forms/input/input.vue';\n\nwithDefaults(defineProps<Props>(), {\n\taddCleaner: true,\n});\n\nconst model: ModelRef<string> = defineModel({\n\tdefault: '',\n});\n</script>\n\n<template>\n\t<TopInput\n\t\t:=\"$props\"\n\t\tmodificator=\"popupWidgetInput\"\n\t\tv-model=\"model\"\n\t/>\n</template>\n\n<style>\n.top-input-popupWidgetInput {\n\t--top-loadbar-color: var(--color-line-2);\n\n\twidth: 100%;\n}\n\n.top-input_input-popupWidgetInput {\n\tborder: none;\n\tbackground: var(--color-layer-1);\n}\n\n.top-input_input-popupWidgetInput:hover {\n\tbackground: var(--color-layer-2);\n}\n\n.top-input_input-popupWidgetInput:focus {\n\tbackground: var(--color-layer-1);\n\toutline: unset;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { ModelRef } from 'vue';\nimport type { Props } from '@/components/forms/input/types';\nimport TopInput from '@/components/forms/input/input.vue';\n\nwithDefaults(defineProps<Props>(), {\n\taddCleaner: true,\n});\n\nconst model: ModelRef<string> = defineModel({\n\tdefault: '',\n});\n</script>\n\n<template>\n\t<TopInput\n\t\t:=\"$props\"\n\t\tmodificator=\"popupWidgetInput\"\n\t\tv-model=\"model\"\n\t/>\n</template>\n\n<style>\n.top-input-popupWidgetInput {\n\t--top-loadbar-color: var(--color-line-2);\n\n\twidth: 100%;\n}\n\n.top-input_input-popupWidgetInput {\n\tborder: none;\n\tbackground: var(--color-layer-1);\n}\n\n.top-input_input-popupWidgetInput:hover {\n\tbackground: var(--color-layer-2);\n}\n\n.top-input_input-popupWidgetInput:focus {\n\tbackground: var(--color-layer-1);\n\toutline: unset;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\ndefineEmits<Emits<T>>();\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupAlert\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия Popup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton>\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\ndefineEmits<Emits<T>>();\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupAlert\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия Popup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton>\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref } from 'vue';\nimport type { PopupEvent } from '@/components/popup/popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst isSubmit = ref(false);\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n\n\temit('submit');\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\treturn;\n\t}\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tisWarning,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupConfirm\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton\n\t\t\t\t@click=\"onSubmit\"\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\n\t\t\t>\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref } from 'vue';\nimport type { PopupEvent } from '@/components/popup/popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst isSubmit = ref(false);\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n\n\temit('submit');\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\treturn;\n\t}\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tisWarning,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupConfirm\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton\n\t\t\t\t@click=\"onSubmit\"\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\n\t\t\t>\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref, watch } from 'vue';\nimport type { PopupEvent } from '../popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '../popup/popup.vue';\nimport TopPopupWidgetInput from '../popup/widgetInput/widgetInput.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst reset = () => localValue.value = props.defaultValue ?? '';\n\nconst isSubmit = ref(false);\n\nconst localValue = ref();\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\temit('submit', localValue.value);\n\n\t\treset();\n\n\t\treturn;\n\t}\n\n\treset();\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tdefaultValue,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupPrompt\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref, watch } from 'vue';\nimport type { PopupEvent } from '../popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '../popup/popup.vue';\nimport TopPopupWidgetInput from '../popup/widgetInput/widgetInput.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst reset = () => localValue.value = props.defaultValue ?? '';\n\nconst isSubmit = ref(false);\n\nconst localValue = ref();\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\temit('submit', localValue.value);\n\n\t\treset();\n\n\t\treturn;\n\t}\n\n\treset();\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tdefaultValue,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupPrompt\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport TopPopup from '@/components/popup/popup/popup.vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { Props } from './types';\n\nconst props = defineProps<Props<T>>();\n\nconst {\n\thint,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupHint\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- Элемент для открытия Popup -->\n\t\t\t<TopHint\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-popupHint_opener\"\n\t\t\t\tv-top-tooltip\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\t</TopPopup>\n</template>\n\n<style>\n.top-popupHint_opener {\n\tcursor: pointer;\n}\n\n.top-popupHint_opener.top-active {\n\tcolor: var(--color-text-2);\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport TopPopup from '@/components/popup/popup/popup.vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { Props } from './types';\n\nconst props = defineProps<Props<T>>();\n\nconst {\n\thint,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupHint\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- Элемент для открытия Popup -->\n\t\t\t<TopHint\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-popupHint_opener\"\n\t\t\t\tv-top-tooltip\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\t</TopPopup>\n</template>\n\n<style>\n.top-popupHint_opener {\n\tcursor: pointer;\n}\n\n.top-popupHint_opener.top-active {\n\tcolor: var(--color-text-2);\n}\n</style>\n"],"mappings":"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"}
1
+ {"version":3,"file":"popup-CgrKc5Db.esm.js","names":["$slots","$core","$i18n","$emit","$attrs","$slots","$props","$emit","$i18n","$slots","$emit","$i18n","$slots","$emit","$i18n","$slots","$emit","$slots"],"sources":["../../src/components/popup/popup/opener/opener.vue","../../src/components/popup/popup/opener/opener.vue","../../src/components/popup/popup/popup.vue","../../src/components/popup/popup/popup.vue","../../src/components/popup/popup/listItem.vue","../../src/components/popup/popup/listItem.vue","../../src/components/popup/popup/widgetInput/widgetInput.vue","../../src/components/popup/popup/widgetInput/widgetInput.vue","../../src/components/popup/popupAlert/popupAlert.vue","../../src/components/popup/popupAlert/popupAlert.vue","../../src/components/popup/popupConfirm/popupConfirm.vue","../../src/components/popup/popupConfirm/popupConfirm.vue","../../src/components/popup/popupPrompt/popupPrompt.vue","../../src/components/popup/popupPrompt/popupPrompt.vue","../../src/components/popup/popupHint/popupHint.vue","../../src/components/popup/popupHint/popupHint.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\nimport Worker from '../../lib/worker';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\tconst disabledOld = !!elOpener.dataset.topPopupDisabled;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.dataset.topPopupDisabled = props.disabled ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n\n\tif (props.openByFocusInput && elOpener.classList.contains('top-input')) {\n\t\tconst elInput = elOpener.querySelector('input');\n\n\t\telInput.onfocus = () => {\n\t\t\tif (elOpener.dataset.topPopupDisabled) return;\n\n\t\t\t// фокус при возвращении не должен инициировать повторное открытие popup\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\t\t\tif (popup?.vueGetComponent()?.opened) return;\n\n\t\t\tWorker.openByOpener(elOpener);\n\t\t};\n\n\t\t/**\n\t\t * Открыть или закрыть `popup` в момент ввода значения, если он становится активным\n\t\t *\n\t\t * Для обработки ввода значения с проверкой `minLength`\n\t\t */\n\t\tif (props.disabled !== disabledOld && elInput === document.activeElement) {\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\n\t\t\tif (!props.disabled && !popup) {\n\t\t\t\tWorker.openByOpener(elOpener);\n\t\t\t}\n\n\t\t\tif (props.disabled && popup) {\n\t\t\t\tpopup.close();\n\t\t\t}\n\t\t}\n\t}\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\t/*\n\tpointer-events: none;\n\tcursor: auto !important;\n\t*/\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\nimport Worker from '../../lib/worker';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\tconst disabledOld = !!elOpener.dataset.topPopupDisabled;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.dataset.topPopupDisabled = props.disabled ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n\n\tif (props.openByFocusInput && elOpener.classList.contains('top-input')) {\n\t\tconst elInput = elOpener.querySelector('input');\n\n\t\telInput.onfocus = () => {\n\t\t\tif (elOpener.dataset.topPopupDisabled) return;\n\n\t\t\t// фокус при возвращении не должен инициировать повторное открытие popup\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\t\t\tif (popup?.vueGetComponent()?.opened) return;\n\n\t\t\tWorker.openByOpener(elOpener);\n\t\t};\n\n\t\t/**\n\t\t * Открыть или закрыть `popup` в момент ввода значения, если он становится активным\n\t\t *\n\t\t * Для обработки ввода значения с проверкой `minLength`\n\t\t */\n\t\tif (props.disabled !== disabledOld && elInput === document.activeElement) {\n\t\t\tconst popup = Worker.getPopupFromOpener(elOpener);\n\n\t\t\tif (!props.disabled && !popup) {\n\t\t\t\tWorker.openByOpener(elOpener);\n\t\t\t}\n\n\t\t\tif (props.disabled && popup) {\n\t\t\t\tpopup.close();\n\t\t\t}\n\t\t}\n\t}\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\t/*\n\tpointer-events: none;\n\tcursor: auto !important;\n\t*/\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUnmounted, ref, toRef, watch } from 'vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { TopLibPopup } from '@/components/popup/lib/popup';\nimport type { Emits, Props } from './types';\nimport Opener from './opener/opener.vue';\nimport Worker from '@/components/popup/lib/worker';\n\nconst props = withDefaults(defineProps<Props<T>>(), {\n\tid: '',\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst emit = defineEmits<Emits<T>>();\n\nconst id = props.id || 'top-popup-id-' + Math.random() + '';\n\nconst expose = {\n\tid,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n};\n\ndefineExpose(expose);\n\nconst elPopupRef = ref<HTMLElement | null>(null);\nconst elPopupInnerRef = ref<HTMLElement | null>(null);\n\nconst data = ref<T>();\n\n// см. lib/popup\nconst onOpen = async (popup: TopLibPopup<T>) => {\n\tif (popup.elPopup) elPopupRef.value = popup.elPopup;\n\n\tif (popup.elPopupInner) {\n\t\tpopup.elPopupInner.innerText = '';\n\n\t\telPopupInnerRef.value = popup.elPopupInner;\n\t}\n\n\tvueConnector.opened = true;\n\tvueConnector.popup = popup;\n\n\texpose.popup = popup;\n\n\tdata.value = popup.el.__TopPopupOpenerProps.data;\n\n\temit('open', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: data.value });\n};\n\n// см. lib/popup\nconst onClose = (popup: TopLibPopup<T>) => {\n\telPopupInnerRef.value = null;\n\n\tvueConnector.opened = false;\n\tvueConnector.popup = undefined;\n\n\tdata.value = undefined;\n\n\temit('close', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: popup.el.__TopPopupOpenerProps.data });\n};\n\nconst vueConnector = {\n\tonOpen,\n\tonClose,\n\tclassRef: toRef(props, 'class'),\n\topened: false,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n\ttransitionDurationRef: toRef(props, 'transitionDuration'),\n};\n\nwatch(() => props.class, (newValue, oldValue) => {\n\tif (!elPopupRef.value) return;\n\n\tconst newClasses = newValue?.split(' ') ?? [];\n\tconst oldClasses = oldValue?.split(' ') ?? [];\n\n\tconst delClasses = oldClasses.filter((oldClass) => !newClasses.includes(oldClass));\n\n\telPopupRef.value.classList.remove(...delClasses);\n\telPopupRef.value.classList.add(...newClasses);\n});\n\nWorker.regVueComponent(id, vueConnector);\n\nonUnmounted(() => {\n\tWorker.unregVueComponent(id);\n});\n</script>\n\n<template>\n\t<Opener\n\t\tv-if=\"$slots.opener\"\n\t\t:id\n\t\t:pos\n\t\t:posBy\n\t\t:notch\n\t\t:openByFocusInput\n\t\t:openByHover=\"($core.state.isMobile || $core.state.isMobileUA) ? false : openByHover\"\n\t\t:disabled\n\t>\n\t\t<!-- @slot элемент для открытия Popup -->\n\t\t<slot name=\"opener\"></slot>\n\t</Opener>\n\n\t<!-- Это шаблон для компонента Popup, сам Popup генерируется в js и может находиться где угодно -->\n\t<!-- elPopupInnerRef будет установлен только после открытия и будет сброшен сразу после закрытия Popup -->\n\t<teleport\n\t\tv-if=\"elPopupInnerRef\"\n\t\t:to=\"elPopupInnerRef\"\n\t>\n\t\t<div\n\t\t\tv-if=\"$slots.header || $core.state.isMobile\"\n\t\t\tclass=\"top-popup_header\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-if=\"$core.state.isMobile\"\n\t\t\t\tclass=\"top-as-a closer\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.Close }}\n\t\t\t</span>\n\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.widget\"\n\t\t\tclass=\"top-popup_widget\"\n\t\t>\n\t\t\t<!-- @slot Виджет -->\n\t\t\t<slot name=\"widget\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.content\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot name=\"content\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<ul\n\t\t\tv-if=\"$slots.contentList\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\t@scroll=\"$emit('scrollContentList', $event)\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в виде списка, для вставки элементов списка используйте компонент popup/listItem -->\n\t\t\t<slot name=\"contentList\" :data=\"data\"></slot>\n\t\t</ul>\n\n\t\t<div\n\t\t\tv-if=\"$slots.footer || footerSupportLink\"\n\t\t\tclass=\"top-popup_footer\"\n\t\t>\n\t\t\t<a\n\t\t\t\tv-if=\"footerSupportLink\"\n\t\t\t\tclass=\"top-popup_footerSupportLink\"\n\t\t\t\t:href=\"footerSupportLink\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t>\n\t\t\t\t<TopHint hint=\"\"/>\n\t\t\t</a>\n\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\" :data=\"data\"></slot>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n.top-popup_footerSupportLink {\n\tmargin-right: auto;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUnmounted, ref, toRef, watch } from 'vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { TopLibPopup } from '@/components/popup/lib/popup';\nimport type { Emits, Props } from './types';\nimport Opener from './opener/opener.vue';\nimport Worker from '@/components/popup/lib/worker';\n\nconst props = withDefaults(defineProps<Props<T>>(), {\n\tid: '',\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst emit = defineEmits<Emits<T>>();\n\nconst id = props.id || 'top-popup-id-' + Math.random() + '';\n\nconst expose = {\n\tid,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n};\n\ndefineExpose(expose);\n\nconst elPopupRef = ref<HTMLElement | null>(null);\nconst elPopupInnerRef = ref<HTMLElement | null>(null);\n\nconst data = ref<T>();\n\n// см. lib/popup\nconst onOpen = async (popup: TopLibPopup<T>) => {\n\tif (popup.elPopup) elPopupRef.value = popup.elPopup;\n\n\tif (popup.elPopupInner) {\n\t\tpopup.elPopupInner.innerText = '';\n\n\t\telPopupInnerRef.value = popup.elPopupInner;\n\t}\n\n\tvueConnector.opened = true;\n\tvueConnector.popup = popup;\n\n\texpose.popup = popup;\n\n\tdata.value = popup.el.__TopPopupOpenerProps.data;\n\n\temit('open', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: data.value });\n};\n\n// см. lib/popup\nconst onClose = (popup: TopLibPopup<T>) => {\n\telPopupInnerRef.value = null;\n\n\tvueConnector.opened = false;\n\tvueConnector.popup = undefined;\n\n\tdata.value = undefined;\n\n\temit('close', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: popup.el.__TopPopupOpenerProps.data });\n};\n\nconst vueConnector = {\n\tonOpen,\n\tonClose,\n\tclassRef: toRef(props, 'class'),\n\topened: false,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n\ttransitionDurationRef: toRef(props, 'transitionDuration'),\n};\n\nwatch(() => props.class, (newValue, oldValue) => {\n\tif (!elPopupRef.value) return;\n\n\tconst newClasses = newValue?.split(' ') ?? [];\n\tconst oldClasses = oldValue?.split(' ') ?? [];\n\n\tconst delClasses = oldClasses.filter((oldClass) => !newClasses.includes(oldClass));\n\n\telPopupRef.value.classList.remove(...delClasses);\n\telPopupRef.value.classList.add(...newClasses);\n});\n\nWorker.regVueComponent(id, vueConnector);\n\nonUnmounted(() => {\n\tWorker.unregVueComponent(id);\n});\n</script>\n\n<template>\n\t<Opener\n\t\tv-if=\"$slots.opener\"\n\t\t:id\n\t\t:pos\n\t\t:posBy\n\t\t:notch\n\t\t:openByFocusInput\n\t\t:openByHover=\"($core.state.isMobile || $core.state.isMobileUA) ? false : openByHover\"\n\t\t:disabled\n\t>\n\t\t<!-- @slot элемент для открытия Popup -->\n\t\t<slot name=\"opener\"></slot>\n\t</Opener>\n\n\t<!-- Это шаблон для компонента Popup, сам Popup генерируется в js и может находиться где угодно -->\n\t<!-- elPopupInnerRef будет установлен только после открытия и будет сброшен сразу после закрытия Popup -->\n\t<teleport\n\t\tv-if=\"elPopupInnerRef\"\n\t\t:to=\"elPopupInnerRef\"\n\t>\n\t\t<div\n\t\t\tv-if=\"$slots.header || $core.state.isMobile\"\n\t\t\tclass=\"top-popup_header\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-if=\"$core.state.isMobile\"\n\t\t\t\tclass=\"top-as-a closer\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.Close }}\n\t\t\t</span>\n\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.widget\"\n\t\t\tclass=\"top-popup_widget\"\n\t\t>\n\t\t\t<!-- @slot Виджет -->\n\t\t\t<slot name=\"widget\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.content\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot name=\"content\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<ul\n\t\t\tv-if=\"$slots.contentList\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\t@scroll=\"$emit('scrollContentList', $event)\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в виде списка, для вставки элементов списка используйте компонент popup/listItem -->\n\t\t\t<slot name=\"contentList\" :data=\"data\"></slot>\n\t\t</ul>\n\n\t\t<div\n\t\t\tv-if=\"$slots.footer || footerSupportLink\"\n\t\t\tclass=\"top-popup_footer\"\n\t\t>\n\t\t\t<a\n\t\t\t\tv-if=\"footerSupportLink\"\n\t\t\t\tclass=\"top-popup_footerSupportLink\"\n\t\t\t\t:href=\"footerSupportLink\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t>\n\t\t\t\t<TopHint hint=\"\"/>\n\t\t\t</a>\n\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\" :data=\"data\"></slot>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n.top-popup_footerSupportLink {\n\tmargin-right: auto;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { ListItemProps } from './types';\n\ndefineOptions({\n\tinheritAttrs: false,\n});\n\nconst props = withDefaults(defineProps<ListItemProps>(), {\n\ttype: 'button',\n\tcloseByClick: true,\n});\n</script>\n\n<template>\n\t<li\n\t\t:class=\"{\n\t\t\t'top-popup_liNoSelectable': props.type !== 'button'\n\t\t}\"\n\t>\n\t\t<component\n\t\t\t:is=\"$attrs.href ? 'a' : 'div'\"\n\t\t\t:class=\"{\n\t\t\t\t'top-popup_listItem': true,\n\t\t\t\t['top-popup_listItem-' + props.type]: !!props.type,\n\t\t\t\t'top-popup_liastItem-withActions': $slots.actions,\n\t\t\t\t'top-popup-noCloser': !closeByClick,\n\n\t\t\t\t'a': props.type === 'button', // оформления кнопки, deprecated\n\t\t\t}\"\n\t\t\t:=\"{...$attrs, ...attrs}\"\n\t\t>\n\t\t\t<template v-if=\"$slots.actions\">\n\t\t\t\t<div class=\"top-popup_listItemActionsLabel top-ellipsis1\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div class=\"top-popup_listItemActions\">\n\t\t\t\t\t<slot name=\"actions\"></slot>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template v-else>\n\t\t\t\t<slot></slot>\n\t\t\t</template>\n\t\t</component>\n\n\t\t<slot name=\"buttons\"></slot>\n\t</li>\n</template>\n","<script setup lang=\"ts\">\nimport type { ListItemProps } from './types';\n\ndefineOptions({\n\tinheritAttrs: false,\n});\n\nconst props = withDefaults(defineProps<ListItemProps>(), {\n\ttype: 'button',\n\tcloseByClick: true,\n});\n</script>\n\n<template>\n\t<li\n\t\t:class=\"{\n\t\t\t'top-popup_liNoSelectable': props.type !== 'button'\n\t\t}\"\n\t>\n\t\t<component\n\t\t\t:is=\"$attrs.href ? 'a' : 'div'\"\n\t\t\t:class=\"{\n\t\t\t\t'top-popup_listItem': true,\n\t\t\t\t['top-popup_listItem-' + props.type]: !!props.type,\n\t\t\t\t'top-popup_liastItem-withActions': $slots.actions,\n\t\t\t\t'top-popup-noCloser': !closeByClick,\n\n\t\t\t\t'a': props.type === 'button', // оформления кнопки, deprecated\n\t\t\t}\"\n\t\t\t:=\"{...$attrs, ...attrs}\"\n\t\t>\n\t\t\t<template v-if=\"$slots.actions\">\n\t\t\t\t<div class=\"top-popup_listItemActionsLabel top-ellipsis1\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div class=\"top-popup_listItemActions\">\n\t\t\t\t\t<slot name=\"actions\"></slot>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template v-else>\n\t\t\t\t<slot></slot>\n\t\t\t</template>\n\t\t</component>\n\n\t\t<slot name=\"buttons\"></slot>\n\t</li>\n</template>\n","<script setup lang=\"ts\">\nimport type { ModelRef } from 'vue';\nimport type { Props } from '@/components/forms/input/types';\nimport TopInput from '@/components/forms/input/input.vue';\n\nwithDefaults(defineProps<Props>(), {\n\taddCleaner: true,\n});\n\nconst model: ModelRef<string> = defineModel({\n\tdefault: '',\n});\n</script>\n\n<template>\n\t<TopInput\n\t\t:=\"$props\"\n\t\tmodificator=\"popupWidgetInput\"\n\t\tv-model=\"model\"\n\t/>\n</template>\n\n<style>\n.top-input-popupWidgetInput {\n\t--top-loadbar-color: var(--color-line-2);\n\n\twidth: 100%;\n}\n\n.top-input_input-popupWidgetInput {\n\tborder: none;\n\tbackground: var(--color-layer-1);\n}\n\n.top-input_input-popupWidgetInput:hover {\n\tbackground: var(--color-layer-2);\n}\n\n.top-input_input-popupWidgetInput:focus {\n\tbackground: var(--color-layer-1);\n\toutline: unset;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { ModelRef } from 'vue';\nimport type { Props } from '@/components/forms/input/types';\nimport TopInput from '@/components/forms/input/input.vue';\n\nwithDefaults(defineProps<Props>(), {\n\taddCleaner: true,\n});\n\nconst model: ModelRef<string> = defineModel({\n\tdefault: '',\n});\n</script>\n\n<template>\n\t<TopInput\n\t\t:=\"$props\"\n\t\tmodificator=\"popupWidgetInput\"\n\t\tv-model=\"model\"\n\t/>\n</template>\n\n<style>\n.top-input-popupWidgetInput {\n\t--top-loadbar-color: var(--color-line-2);\n\n\twidth: 100%;\n}\n\n.top-input_input-popupWidgetInput {\n\tborder: none;\n\tbackground: var(--color-layer-1);\n}\n\n.top-input_input-popupWidgetInput:hover {\n\tbackground: var(--color-layer-2);\n}\n\n.top-input_input-popupWidgetInput:focus {\n\tbackground: var(--color-layer-1);\n\toutline: unset;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\ndefineEmits<Emits<T>>();\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupAlert\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия Popup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton>\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\ndefineEmits<Emits<T>>();\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupAlert\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия Popup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton>\n\t\t\t\t{{ submitText || $i18n.Common.Close }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref } from 'vue';\nimport type { PopupEvent } from '@/components/popup/popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst isSubmit = ref(false);\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n\n\temit('submit');\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\treturn;\n\t}\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tisWarning,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupConfirm\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton\n\t\t\t\t@click=\"onSubmit\"\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\n\t\t\t>\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref } from 'vue';\nimport type { PopupEvent } from '@/components/popup/popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '@/components/popup/popup/popup.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst isSubmit = ref(false);\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n\n\temit('submit');\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\treturn;\n\t}\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tisWarning,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupConfirm\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton\n\t\t\t\t@click=\"onSubmit\"\n\t\t\t\t:color=\"isWarning ? 'red' : 'blue'\"\n\t\t\t>\n\t\t\t\t{{ submitText || $i18n.Common.Continue }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref, watch } from 'vue';\nimport type { PopupEvent } from '../popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '../popup/popup.vue';\nimport TopPopupWidgetInput from '../popup/widgetInput/widgetInput.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst reset = () => localValue.value = props.defaultValue ?? '';\n\nconst isSubmit = ref(false);\n\nconst localValue = ref();\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\temit('submit', localValue.value);\n\n\t\treset();\n\n\t\treturn;\n\t}\n\n\treset();\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tdefaultValue,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupPrompt\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { ref, watch } from 'vue';\nimport type { PopupEvent } from '../popup/types';\nimport type { Emits, Props } from './types';\nimport TopButton from '@/components/forms/button/button.vue';\nimport TopPopup from '../popup/popup.vue';\nimport TopPopupWidgetInput from '../popup/widgetInput/widgetInput.vue';\n\nconst props = defineProps<Props<T>>();\n\nconst emit = defineEmits<Emits<T>>();\n\nconst reset = () => localValue.value = props.defaultValue ?? '';\n\nconst isSubmit = ref(false);\n\nconst localValue = ref();\nwatch(() => props.defaultValue, () => reset(), { immediate: true });\n\nconst onSubmit = () => {\n\tisSubmit.value = true;\n};\n\nconst onClose = (popupEvent: PopupEvent<T>) => {\n\tif (isSubmit.value) {\n\t\tisSubmit.value = false;\n\n\t\temit('submit', localValue.value);\n\n\t\treset();\n\n\t\treturn;\n\t}\n\n\treset();\n\n\temit('close', popupEvent);\n};\n\n// сужение объекта для propsPopup\nconst {\n\tsubmitText,\n\tcancelText,\n\tdefaultValue,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupPrompt\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"onClose($event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- @slot Элемент для открытия TopPopup -->\n\t\t\t<slot name=\"opener\"></slot>\n\t\t</template>\n\n\t\t<template #header v-if=\"$slots.header\">\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\"></slot>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\n\t\t\t<TopPopupWidgetInput v-model.trim=\"localValue\"/>\n\t\t</template>\n\n\t\t<template #footer>\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\"></slot>\n\n\t\t\t<TopButton color=\"theme\">\n\t\t\t\t{{ cancelText || $i18n.Common.Cancel }}\n\t\t\t</TopButton>\n\n\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t{{ submitText || $i18n.Common.OK }}\n\t\t\t</TopButton>\n\t\t</template>\n\t</TopPopup>\n</template>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport TopPopup from '@/components/popup/popup/popup.vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { Props } from './types';\n\nconst props = defineProps<Props<T>>();\n\nconst {\n\thint,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupHint\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- Элемент для открытия Popup -->\n\t\t\t<TopHint\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-popupHint_opener\"\n\t\t\t\tv-top-tooltip\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\t</TopPopup>\n</template>\n\n<style>\n.top-popupHint_opener {\n\tcursor: pointer;\n}\n\n.top-popupHint_opener.top-active {\n\tcolor: var(--color-text-2);\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport TopPopup from '@/components/popup/popup/popup.vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { Props } from './types';\n\nconst props = defineProps<Props<T>>();\n\nconst {\n\thint,\n\t...propsPopup\n}: Props<T> = props;\n</script>\n\n<template>\n\t<!-- @vue-generic {T} -->\n\t<TopPopup\n\t\tclass=\"top-popupHint\"\n\t\t:=propsPopup\n\t\t@open=\"$emit('open', $event)\"\n\t\t@close=\"$emit('close', $event)\"\n\t\t@scrollContentList=\"(...args) => $emit('scrollContentList', ...args)\"\n\t>\n\t\t<template #opener>\n\t\t\t<!-- Элемент для открытия Popup -->\n\t\t\t<TopHint\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-popupHint_opener\"\n\t\t\t\tv-top-tooltip\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #content v-if=\"$slots.default\">\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot></slot>\n\t\t</template>\n\t</TopPopup>\n</template>\n\n<style>\n.top-popupHint_opener {\n\tcursor: pointer;\n}\n\n.top-popupHint_opener.top-active {\n\tcolor: var(--color-text-2);\n}\n</style>\n"],"mappings":"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"}