@topvisor/ui 1.0.20-selector2-3 → 1.0.20-selector2-4

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 (903) hide show
  1. package/.chunks/datepicker-BbASdlXo.es.js +44 -0
  2. package/.chunks/datepicker-BbASdlXo.es.js.map +1 -0
  3. package/.chunks/datepicker-CSpzAz1a.amd.js +2 -0
  4. package/.chunks/datepicker-CSpzAz1a.amd.js.map +1 -0
  5. package/.chunks/forms-BciWy0wX.es.js +1992 -0
  6. package/.chunks/forms-BciWy0wX.es.js.map +1 -0
  7. package/.chunks/forms-Dh0QU6P9.amd.js +3 -0
  8. package/.chunks/forms-Dh0QU6P9.amd.js.map +1 -0
  9. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CZqS-tRD.es.js +181 -0
  10. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CZqS-tRD.es.js.map +1 -0
  11. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-Del8bjSk.amd.js +2 -0
  12. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-Del8bjSk.amd.js.map +1 -0
  13. package/.chunks/menu.vue_vue_type_style_index_0_lang-B8-UPDGJ.amd.js +2 -0
  14. package/.chunks/menu.vue_vue_type_style_index_0_lang-B8-UPDGJ.amd.js.map +1 -0
  15. package/.chunks/menu.vue_vue_type_style_index_0_lang-yNOWbXpd.es.js +109 -0
  16. package/.chunks/menu.vue_vue_type_style_index_0_lang-yNOWbXpd.es.js.map +1 -0
  17. package/.chunks/notice-DEcP2RCJ.amd.js +4 -0
  18. package/.chunks/notice-DEcP2RCJ.amd.js.map +1 -0
  19. package/.chunks/notice-DQSQs6yC.es.js +175 -0
  20. package/.chunks/notice-DQSQs6yC.es.js.map +1 -0
  21. package/.chunks/popup-BdJJx21M.amd.js +2 -0
  22. package/.chunks/popup-BdJJx21M.amd.js.map +1 -0
  23. package/.chunks/popup-D-6PIelY.es.js +416 -0
  24. package/.chunks/popup-D-6PIelY.es.js.map +1 -0
  25. package/.chunks/punycode.es6-C2yitnNb.amd.js +2 -0
  26. package/.chunks/punycode.es6-C2yitnNb.amd.js.map +1 -0
  27. package/.chunks/punycode.es6-CNI-zL6U.es.js +134 -0
  28. package/.chunks/punycode.es6-CNI-zL6U.es.js.map +1 -0
  29. package/.chunks/store-CX_6ZXhO.es.js +29 -0
  30. package/.chunks/store-CX_6ZXhO.es.js.map +1 -0
  31. package/.chunks/store-esTid5oI.amd.js +2 -0
  32. package/.chunks/store-esTid5oI.amd.js.map +1 -0
  33. package/.chunks/utils-9b7woobj.es.js +338 -0
  34. package/.chunks/utils-9b7woobj.es.js.map +1 -0
  35. package/.chunks/utils-BvHwHAyQ.es.js +225 -0
  36. package/.chunks/utils-BvHwHAyQ.es.js.map +1 -0
  37. package/.chunks/utils-CPty_L5T.amd.js +2 -0
  38. package/.chunks/utils-CPty_L5T.amd.js.map +1 -0
  39. package/.chunks/utils-DAfofcEq.amd.js +2 -0
  40. package/.chunks/utils-DAfofcEq.amd.js.map +1 -0
  41. package/README.md +66 -25
  42. package/assets/charts.css +1 -0
  43. package/assets/core.css +1 -0
  44. package/assets/forms.css +1 -0
  45. package/assets/formsExt.css +1 -0
  46. package/assets/layout.css +1 -0
  47. package/assets/listItem.css +1 -0
  48. package/assets/menu.css +1 -0
  49. package/assets/notice.css +1 -0
  50. package/assets/popup.css +1 -0
  51. package/assets/project.css +1 -0
  52. package/assets/tabs.css +1 -0
  53. package/assets/tabsView.css +1 -0
  54. package/assets/themes/dark-th.css +1 -0
  55. package/assets/themes/dark.css +1 -0
  56. package/assets/themes/light.css +1 -0
  57. package/charts/charts.amd.js +2 -0
  58. package/charts/charts.amd.js.map +1 -0
  59. package/charts/charts.d.ts +2 -0
  60. package/charts/charts.js +178 -0
  61. package/charts/charts.js.map +1 -0
  62. package/components/charts/charts.d.ts +5 -0
  63. package/components/charts/miniChart/miniChart.d.ts +92 -0
  64. package/components/charts/miniChart/miniChart.vue.d.ts +15 -0
  65. package/components/charts/miniChart/stories/dummy.d.ts +13 -0
  66. package/components/charts/miniChart/utils/consts.d.ts +8 -0
  67. package/components/charts/miniCharts/miniCharts.d.ts +20 -0
  68. package/components/charts/miniCharts/miniCharts.vue.d.ts +32 -0
  69. package/components/charts/miniCharts/stories/dummy.d.ts +6 -0
  70. package/components/core/notice/item/item.vue.d.ts +10 -0
  71. package/components/core/notice/item/types.d.ts +61 -0
  72. package/components/core/notice/notice.vue.d.ts +5 -0
  73. package/components/core/notice/types.d.ts +1 -0
  74. package/components/core/notice/utils.d.ts +27 -0
  75. package/components/dialog/dialog/composables/asyncDialogHandle.d.ts +51 -0
  76. package/components/dialog/dialog/composables/dialogHandle.d.ts +108 -0
  77. package/components/dialog/dialog/composables/types.d.ts +11 -0
  78. package/components/dialog/dialog/composables/utils.d.ts +21 -0
  79. package/components/dialog/dialog/dialog.vue.d.ts +28 -0
  80. package/components/dialog/dialog/dialogs/dialogs.vue.d.ts +10 -0
  81. package/components/dialog/dialog/page/page.vue.d.ts +19 -0
  82. package/components/dialog/dialog/page/types.d.ts +72 -0
  83. package/components/dialog/dialog/pageComponent/pageComponent.vue.d.ts +6 -0
  84. package/components/dialog/dialog/pageComponent/types.d.ts +18 -0
  85. package/components/dialog/dialog/stories/autoload.d.ts +2 -0
  86. package/components/dialog/dialog/stories/dialog_example/pages/utils.d.ts +7 -0
  87. package/components/dialog/dialog/types.d.ts +58 -0
  88. package/components/dialog/dialog.d.ts +6 -0
  89. package/components/dialog/lib/types.d.ts +21 -0
  90. package/components/dialog/lib/utils.d.ts +14 -0
  91. package/components/dialog/lib/utils.globalEvents.d.ts +8 -0
  92. package/components/dialog/lib/worker.d.ts +60 -0
  93. package/components/forms/avatar/avatar.d.ts +38 -0
  94. package/components/forms/avatar/avatar.vue.d.ts +10 -0
  95. package/components/forms/button/button.vue.d.ts +25 -0
  96. package/components/forms/button/types.d.ts +53 -0
  97. package/components/forms/checkbox/checkbox.d.ts +21 -0
  98. package/components/forms/checkbox/checkbox.vue.d.ts +27 -0
  99. package/components/forms/controlLabel/controlLabel.d.ts +4 -0
  100. package/components/forms/controlLabel/controlLabel.vue.d.ts +19 -0
  101. package/components/forms/forms.d.ts +27 -0
  102. package/components/forms/helpers.d.ts +10 -0
  103. package/components/forms/hint/hint.d.ts +8 -0
  104. package/components/forms/hint/hint.vue.d.ts +4 -0
  105. package/components/forms/input/input.d.ts +26 -0
  106. package/components/forms/input/input.vue.d.ts +27 -0
  107. package/components/forms/inputDate/datepicker.d.ts +5 -0
  108. package/components/forms/inputDate/inputDate.d.ts +3 -0
  109. package/components/forms/inputDate/inputDate.vue.d.ts +12 -0
  110. package/components/forms/inputRange/inputRange.d.ts +2 -0
  111. package/components/forms/inputRange/inputRange.vue.d.ts +19 -0
  112. package/components/forms/loadbar/loadbar.vue.d.ts +3 -0
  113. package/components/forms/radio/radio.d.ts +14 -0
  114. package/components/forms/radio/radio.vue.d.ts +23 -0
  115. package/components/forms/select/select.d.ts +51 -0
  116. package/components/forms/select/select.vue.d.ts +17 -0
  117. package/components/forms/select/stories/exampleOptions.d.ts +5 -0
  118. package/components/forms/switcher/switcher.d.ts +21 -0
  119. package/components/forms/switcher/switcher.vue.d.ts +23 -0
  120. package/components/forms/textarea/textarea.d.ts +33 -0
  121. package/components/forms/textarea/textarea.vue.d.ts +11 -0
  122. package/components/formsExt/editArea/editArea.d.ts +33 -0
  123. package/components/formsExt/editArea/editArea.vue.d.ts +18 -0
  124. package/components/formsExt/editInput/editInput.d.ts +16 -0
  125. package/components/formsExt/editInput/editInput.vue.d.ts +8 -0
  126. package/components/formsExt/formsExt.d.ts +13 -0
  127. package/components/formsExt/info/info.vue.d.ts +20 -0
  128. package/components/formsExt/info/types.d.ts +21 -0
  129. package/components/formsExt/menu/menu.d.ts +37 -0
  130. package/components/formsExt/menu/menu.vue.d.ts +16 -0
  131. package/components/formsExt/menu/stories/items.d.ts +3 -0
  132. package/components/formsExt/radioGroup/radioGroup.d.ts +21 -0
  133. package/components/formsExt/radioGroup/radioGroup.vue.d.ts +19 -0
  134. package/components/formsExt/selector2/api.d.ts +8 -0
  135. package/components/formsExt/selector2/itemMulti.vue.d.ts +8 -0
  136. package/components/formsExt/selector2/selector2.d.ts +130 -0
  137. package/components/formsExt/selector2/selector2.vue.d.ts +210 -0
  138. package/components/formsExt/selector2/stories/dummyAPIRequest.d.ts +10 -0
  139. package/components/layout/islandRows/islandRows.vue.d.ts +17 -0
  140. package/components/layout/islandRows/islandRowsRow/islandRowsRow.vue.d.ts +18 -0
  141. package/components/layout/islandRows/islandRowsRow/types.d.ts +2 -0
  142. package/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue.d.ts +18 -0
  143. package/components/layout/islandRows/types.d.ts +10 -0
  144. package/components/layout/layout.d.ts +9 -0
  145. package/components/layout/rows/rows.vue.d.ts +21 -0
  146. package/components/layout/rows/types.d.ts +6 -0
  147. package/components/popup/alert/alert.d.ts +8 -0
  148. package/components/popup/alert/alert.vue.d.ts +31 -0
  149. package/components/popup/confirm/confirm.d.ts +21 -0
  150. package/components/popup/confirm/confirm.vue.d.ts +33 -0
  151. package/components/popup/lib/popup.d.ts +83 -0
  152. package/components/popup/lib/popup.globalEvents.d.ts +26 -0
  153. package/components/popup/lib/worker.d.ts +75 -0
  154. package/components/popup/lib/worker.globalEvents.d.ts +19 -0
  155. package/components/popup/popup/listItem.vue.d.ts +22 -0
  156. package/components/popup/popup/opener.vue.d.ts +23 -0
  157. package/components/popup/popup/popup.d.ts +101 -0
  158. package/components/popup/popup/popup.vue.d.ts +40 -0
  159. package/components/popup/popup/widgetInput.vue.d.ts +17 -0
  160. package/components/popup/popup.d.ts +15 -0
  161. package/components/popup/prompt/prompt.d.ts +21 -0
  162. package/components/popup/prompt/prompt.vue.d.ts +33 -0
  163. package/components/popup/worker.d.ts +1 -0
  164. package/components/project/project.d.ts +15 -0
  165. package/components/project/selectorCompetitors/composables.d.ts +4 -0
  166. package/components/project/selectorCompetitors/selectorCompetitors.d.ts +23 -0
  167. package/components/project/selectorCompetitors/selectorCompetitors.vue.d.ts +14 -0
  168. package/components/project/selectorCompetitors/stories/items.d.ts +3 -0
  169. package/components/project/selectorCompetitors/types/competitor.d.ts +7 -0
  170. package/components/project/selectorRegion/composables/compare.d.ts +12 -0
  171. package/components/project/selectorRegion/composables/selectRegion.d.ts +14 -0
  172. package/components/project/selectorRegion/composables/selectSearcher.d.ts +13 -0
  173. package/components/project/selectorRegion/composables/selectorRegion.d.ts +25 -0
  174. package/components/project/selectorRegion/selectorRegion.d.ts +182 -0
  175. package/components/project/selectorRegion/selectorRegion.vue.d.ts +25 -0
  176. package/components/project/selectorRegion/stories/searchers.d.ts +3 -0
  177. package/components/project/selectorRegion/utils/consts.d.ts +18 -0
  178. package/components/project/selectorRegion/utils/utils.d.ts +23 -0
  179. package/components/project/tagSelector/popupListItem/tagPopupListItem.vue.d.ts +20 -0
  180. package/components/project/tagSelector/popupListItem/types.d.ts +33 -0
  181. package/components/project/tagSelector/popupOpener/popupOpener.vue.d.ts +27 -0
  182. package/components/project/tagSelector/popupOpener/types.d.ts +62 -0
  183. package/components/project/tagSelector/tagIcon/tagIcon.vue.d.ts +4 -0
  184. package/components/project/tagSelector/tagIcon/types.d.ts +21 -0
  185. package/components/project/tagSelector/tagSelector.vue.d.ts +37 -0
  186. package/components/project/tagSelector/tagsDefaults.d.ts +3 -0
  187. package/components/project/tagSelector/types.d.ts +138 -0
  188. package/components/project/tagSelector/utils/el.d.ts +19 -0
  189. package/components/project/tagSelector/utils/utils.d.ts +14 -0
  190. package/components/tabs/tabs/content.vue.d.ts +19 -0
  191. package/components/tabs/tabs/tab.vue.d.ts +19 -0
  192. package/components/tabs/tabs/tabs.d.ts +19 -0
  193. package/components/tabs/tabs/tabs.vue.d.ts +21 -0
  194. package/components/tabs/tabs.d.ts +7 -0
  195. package/components/tabsView/tabsView/menu.vue.d.ts +32 -0
  196. package/components/tabsView/tabsView/menuDelimeter.vue.d.ts +3 -0
  197. package/components/tabsView/tabsView/menuItem.vue.d.ts +23 -0
  198. package/components/tabsView/tabsView/menuTitle.vue.d.ts +20 -0
  199. package/components/tabsView/tabsView/store.d.ts +192 -0
  200. package/components/tabsView/tabsView/tabsView.d.ts +98 -0
  201. package/components/tabsView/tabsView/tabsView.vue.d.ts +34 -0
  202. package/components/tabsView/tabsView/utils.d.ts +11 -0
  203. package/components/tabsView/tabsView.d.ts +7 -0
  204. package/core/app.amd.js +2 -0
  205. package/core/app.amd.js.map +1 -0
  206. package/core/app.d.ts +8 -0
  207. package/core/app.js +402 -0
  208. package/core/app.js.map +1 -0
  209. package/core/core/core.d.ts +113 -0
  210. package/core/core/events/resize.d.ts +16 -0
  211. package/core/core/events.d.ts +15 -0
  212. package/core/core/options.d.ts +46 -0
  213. package/core/core/preloaders.d.ts +19 -0
  214. package/core/core/state.d.ts +49 -0
  215. package/core/directives/data.d.ts +10 -0
  216. package/core/directives/focus.d.ts +10 -0
  217. package/core/directives/scrollIntoView.d.ts +3 -0
  218. package/core/directives/scrollShadow.d.ts +15 -0
  219. package/core/directives/sticky.d.ts +10 -0
  220. package/core/directives/swimUp.d.ts +15 -0
  221. package/core/directives/tooltip.d.ts +10 -0
  222. package/core/plugins/core.d.ts +60 -0
  223. package/core/plugins/i18n.d.ts +97 -0
  224. package/core/plugins/piniaTPA.d.ts +17 -0
  225. package/core/utils/check.d.ts +26 -0
  226. package/core/utils/clipboard.d.ts +12 -0
  227. package/core/utils/date.d.ts +52 -0
  228. package/core/utils/device.d.ts +50 -0
  229. package/core/utils/dom.d.ts +94 -0
  230. package/core/utils/image.d.ts +16 -0
  231. package/core/utils/keyboard.d.ts +8 -0
  232. package/core/utils/lodash.d.ts +6 -0
  233. package/core/utils/number.d.ts +17 -0
  234. package/core/utils/price.d.ts +10 -0
  235. package/core/utils/route.d.ts +33 -0
  236. package/core/utils/scroll.d.ts +32 -0
  237. package/core/utils/searchers.d.ts +38 -0
  238. package/core/utils/store/localStorage.d.ts +6 -0
  239. package/core/utils/store/plugin.d.ts +24 -0
  240. package/core/utils/store/store.d.ts +34 -0
  241. package/core/utils/store.d.ts +6 -0
  242. package/core/utils/string.d.ts +86 -0
  243. package/core/utils/system.d.ts +25 -0
  244. package/core/utils/url.d.ts +36 -0
  245. package/dialog/dialog.amd.js +2 -0
  246. package/dialog/dialog.amd.js.map +1 -0
  247. package/dialog/dialog.d.ts +2 -0
  248. package/dialog/dialog.js +193 -0
  249. package/dialog/dialog.js.map +1 -0
  250. package/forms/forms.amd.js +2 -0
  251. package/forms/forms.amd.js.map +1 -0
  252. package/forms/forms.d.ts +2 -0
  253. package/forms/forms.js +17 -0
  254. package/forms/forms.js.map +1 -0
  255. package/forms/helpers.amd.js +2 -0
  256. package/forms/helpers.amd.js.map +1 -0
  257. package/forms/helpers.d.ts +2 -0
  258. package/forms/helpers.js +10 -0
  259. package/forms/helpers.js.map +1 -0
  260. package/formsExt/formsExt.amd.js +2 -0
  261. package/formsExt/formsExt.amd.js.map +1 -0
  262. package/formsExt/formsExt.d.ts +2 -0
  263. package/formsExt/formsExt.js +485 -0
  264. package/formsExt/formsExt.js.map +1 -0
  265. package/layout/layout.amd.js +2 -0
  266. package/layout/layout.amd.js.map +1 -0
  267. package/layout/layout.d.ts +2 -0
  268. package/layout/layout.js +62 -0
  269. package/layout/layout.js.map +1 -0
  270. package/package.json +1 -55
  271. package/popup/popup.amd.js +2 -0
  272. package/popup/popup.amd.js.map +1 -0
  273. package/popup/popup.d.ts +2 -0
  274. package/popup/popup.js +243 -0
  275. package/popup/popup.js.map +1 -0
  276. package/popup/worker.amd.js +2 -0
  277. package/popup/worker.amd.js.map +1 -0
  278. package/popup/worker.d.ts +2 -0
  279. package/popup/worker.js +129 -0
  280. package/popup/worker.js.map +1 -0
  281. package/project/project.amd.js +2 -0
  282. package/project/project.amd.js.map +1 -0
  283. package/project/project.d.ts +2 -0
  284. package/project/project.js +975 -0
  285. package/project/project.js.map +1 -0
  286. package/tabs/tabs.amd.js +2 -0
  287. package/tabs/tabs.amd.js.map +1 -0
  288. package/tabs/tabs.d.ts +2 -0
  289. package/tabs/tabs.js +81 -0
  290. package/tabs/tabs.js.map +1 -0
  291. package/tabsView/tabsView.amd.js +2 -0
  292. package/tabsView/tabsView.amd.js.map +1 -0
  293. package/tabsView/tabsView.d.ts +2 -0
  294. package/tabsView/tabsView.js +306 -0
  295. package/tabsView/tabsView.js.map +1 -0
  296. package/utils/check.amd.js +2 -0
  297. package/utils/check.amd.js.map +1 -0
  298. package/utils/check.d.ts +2 -0
  299. package/utils/check.js +26 -0
  300. package/utils/check.js.map +1 -0
  301. package/utils/clipboard.amd.js +6 -0
  302. package/utils/clipboard.amd.js.map +1 -0
  303. package/utils/clipboard.d.ts +2 -0
  304. package/utils/clipboard.js +33 -0
  305. package/utils/clipboard.js.map +1 -0
  306. package/utils/date.amd.js +2 -0
  307. package/utils/date.amd.js.map +1 -0
  308. package/utils/date.d.ts +2 -0
  309. package/utils/date.js +11 -0
  310. package/utils/date.js.map +1 -0
  311. package/utils/device.amd.js +2 -0
  312. package/utils/device.amd.js.map +1 -0
  313. package/utils/device.d.ts +2 -0
  314. package/utils/device.js +15 -0
  315. package/utils/device.js.map +1 -0
  316. package/utils/dom.amd.js +2 -0
  317. package/utils/dom.amd.js.map +1 -0
  318. package/utils/dom.d.ts +6 -0
  319. package/utils/dom.js +75 -0
  320. package/utils/dom.js.map +1 -0
  321. package/utils/image.amd.js +12 -0
  322. package/utils/image.amd.js.map +1 -0
  323. package/utils/image.d.ts +2 -0
  324. package/utils/image.js +23 -0
  325. package/utils/image.js.map +1 -0
  326. package/utils/keyboard.amd.js +2 -0
  327. package/utils/keyboard.amd.js.map +1 -0
  328. package/utils/keyboard.d.ts +2 -0
  329. package/utils/keyboard.js +12 -0
  330. package/utils/keyboard.js.map +1 -0
  331. package/utils/lodash.amd.js +2 -0
  332. package/utils/lodash.amd.js.map +1 -0
  333. package/utils/lodash.d.ts +2 -0
  334. package/utils/lodash.js +9 -0
  335. package/utils/lodash.js.map +1 -0
  336. package/utils/number.amd.js +2 -0
  337. package/utils/number.amd.js.map +1 -0
  338. package/utils/number.d.ts +2 -0
  339. package/utils/number.js +13 -0
  340. package/utils/number.js.map +1 -0
  341. package/utils/price.amd.js +2 -0
  342. package/utils/price.amd.js.map +1 -0
  343. package/utils/price.d.ts +2 -0
  344. package/utils/price.js +10 -0
  345. package/utils/price.js.map +1 -0
  346. package/utils/route.amd.js +2 -0
  347. package/utils/route.amd.js.map +1 -0
  348. package/utils/route.d.ts +2 -0
  349. package/utils/route.js +31 -0
  350. package/utils/route.js.map +1 -0
  351. package/utils/scroll.amd.js +2 -0
  352. package/utils/scroll.amd.js.map +1 -0
  353. package/utils/scroll.d.ts +2 -0
  354. package/utils/scroll.js +45 -0
  355. package/utils/scroll.js.map +1 -0
  356. package/utils/searchers.amd.js +2 -0
  357. package/utils/searchers.amd.js.map +1 -0
  358. package/utils/searchers.d.ts +2 -0
  359. package/utils/searchers.js +130 -0
  360. package/utils/searchers.js.map +1 -0
  361. package/utils/store.amd.js +2 -0
  362. package/utils/store.amd.js.map +1 -0
  363. package/utils/store.d.ts +2 -0
  364. package/utils/store.js +7 -0
  365. package/utils/store.js.map +1 -0
  366. package/utils/string.amd.js +2 -0
  367. package/utils/string.amd.js.map +1 -0
  368. package/utils/string.d.ts +2 -0
  369. package/utils/string.js +139 -0
  370. package/utils/string.js.map +1 -0
  371. package/utils/system.amd.js +2 -0
  372. package/utils/system.amd.js.map +1 -0
  373. package/utils/system.d.ts +2 -0
  374. package/utils/system.js +29 -0
  375. package/utils/system.js.map +1 -0
  376. package/utils/url.amd.js +3 -0
  377. package/utils/url.amd.js.map +1 -0
  378. package/utils/url.d.ts +2 -0
  379. package/utils/url.js +48 -0
  380. package/utils/url.js.map +1 -0
  381. package/.idea/.gitignore +0 -11
  382. package/.idea/codeStyles/Project.xml +0 -205
  383. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  384. package/.idea/externalDependencies.xml +0 -6
  385. package/.idea/inspectionProfiles/Disabled.xml +0 -824
  386. package/.idea/inspectionProfiles/Project_Default.xml +0 -33
  387. package/.idea/php.xml +0 -19
  388. package/.idea/vcs.xml +0 -6
  389. package/.storybook/TopTheme.ts +0 -115
  390. package/.storybook/TopThemeManager.ts +0 -53
  391. package/.storybook/main.ts +0 -51
  392. package/.storybook/manager.ts +0 -25
  393. package/.storybook/preview-head.html +0 -21
  394. package/.storybook/preview.ts +0 -47
  395. package/.storybook/vue/coreDecorator.ts +0 -76
  396. package/.storybook/vue/vModelDecorator.ts +0 -46
  397. package/.versionrc.json +0 -16
  398. package/.vscode/extensions.json +0 -11
  399. package/.vscode/keybindings.example.json +0 -121
  400. package/.vscode/settings.json +0 -45
  401. package/CHANGELOG.md +0 -175
  402. package/NPM.md +0 -25
  403. package/PUBLISH.md +0 -63
  404. package/STORYBOOK.md +0 -43
  405. package/USE_IN_PROJECT.md +0 -32
  406. package/build/afterBuild.sh +0 -11
  407. package/build/cssModules.ts +0 -39
  408. package/build/genDocs.sh +0 -19
  409. package/build/plugin/amdFix.ts +0 -83
  410. package/build/plugin/autoloadCSS.ts +0 -155
  411. package/build/rollup.config.ts +0 -37
  412. package/public/README.md +0 -82
  413. package/src/components/charts/charts.ts +0 -8
  414. package/src/components/charts/miniChart/miniChart.stories.ts +0 -67
  415. package/src/components/charts/miniChart/miniChart.ts +0 -110
  416. package/src/components/charts/miniChart/miniChart.vue +0 -158
  417. package/src/components/charts/miniChart/stories/README.md +0 -9
  418. package/src/components/charts/miniChart/stories/dummy.ts +0 -25
  419. package/src/components/charts/miniChart/styles/miniChart.css +0 -87
  420. package/src/components/charts/miniChart/utils/consts.ts +0 -9
  421. package/src/components/charts/miniCharts/miniCharts.stories.ts +0 -76
  422. package/src/components/charts/miniCharts/miniCharts.ts +0 -24
  423. package/src/components/charts/miniCharts/miniCharts.vue +0 -128
  424. package/src/components/charts/miniCharts/stories/README.md +0 -18
  425. package/src/components/charts/miniCharts/stories/dummy.ts +0 -70
  426. package/src/components/charts/miniCharts/stories/overview.vue +0 -139
  427. package/src/components/charts/miniCharts/styles/miniCharts.css +0 -32
  428. package/src/components/component.ts +0 -130
  429. package/src/components/core/core.mdx +0 -7
  430. package/src/components/core/notice/item/item.vue +0 -145
  431. package/src/components/core/notice/item/style.css +0 -70
  432. package/src/components/core/notice/item/types.ts +0 -71
  433. package/src/components/core/notice/notice.stories.ts +0 -105
  434. package/src/components/core/notice/notice.vue +0 -69
  435. package/src/components/core/notice/stories/README.md +0 -34
  436. package/src/components/core/notice/types.ts +0 -1
  437. package/src/components/core/notice/utils.ts +0 -115
  438. package/src/components/dialog/dialog/Dialog (code).mdx +0 -61
  439. package/src/components/dialog/dialog/composables/asyncDialogHandle.ts +0 -99
  440. package/src/components/dialog/dialog/composables/dialogHandle.ts +0 -176
  441. package/src/components/dialog/dialog/composables/types.ts +0 -12
  442. package/src/components/dialog/dialog/composables/utils.ts +0 -39
  443. package/src/components/dialog/dialog/dialog.stories.ts +0 -83
  444. package/src/components/dialog/dialog/dialog.vue +0 -74
  445. package/src/components/dialog/dialog/dialogs/dialogs.vue +0 -58
  446. package/src/components/dialog/dialog/page/page.vue +0 -86
  447. package/src/components/dialog/dialog/page/types.ts +0 -84
  448. package/src/components/dialog/dialog/page.stories.ts +0 -27
  449. package/src/components/dialog/dialog/pageComponent/pageComponent.vue +0 -57
  450. package/src/components/dialog/dialog/pageComponent/types.ts +0 -21
  451. package/src/components/dialog/dialog/pageComponent.stories.ts +0 -27
  452. package/src/components/dialog/dialog/stories/README.md +0 -117
  453. package/src/components/dialog/dialog/stories/autoload.ts +0 -12
  454. package/src/components/dialog/dialog/stories/dialog_example/dialog_example.vue +0 -73
  455. package/src/components/dialog/dialog/stories/dialog_example/pages/async.vue +0 -57
  456. package/src/components/dialog/dialog/stories/dialog_example/pages/default.vue +0 -64
  457. package/src/components/dialog/dialog/stories/dialog_example/pages/headerButtons.vue +0 -56
  458. package/src/components/dialog/dialog/stories/dialog_example/pages/utils.ts +0 -26
  459. package/src/components/dialog/dialog/stories/dialog_example/pages/withoutCache.vue +0 -64
  460. package/src/components/dialog/dialog/stories/page/README.md +0 -24
  461. package/src/components/dialog/dialog/stories/pageComponent/README.md +0 -12
  462. package/src/components/dialog/dialog/style/dialog.css +0 -316
  463. package/src/components/dialog/dialog/style/dialog.m.css +0 -40
  464. package/src/components/dialog/dialog/style/dialog.pc.css +0 -73
  465. package/src/components/dialog/dialog/style/modern/dialog.css +0 -12
  466. package/src/components/dialog/dialog/style/modern/dialog.pc.css +0 -3
  467. package/src/components/dialog/dialog/types.ts +0 -69
  468. package/src/components/dialog/dialog.ts +0 -7
  469. package/src/components/dialog/lib/types.ts +0 -26
  470. package/src/components/dialog/lib/utils.globalEvents.ts +0 -175
  471. package/src/components/dialog/lib/utils.ts +0 -525
  472. package/src/components/dialog/lib/worker.ts +0 -273
  473. package/src/components/forms/README.mdx +0 -10
  474. package/src/components/forms/avatar/avatar.stories.ts +0 -38
  475. package/src/components/forms/avatar/avatar.ts +0 -40
  476. package/src/components/forms/avatar/avatar.vue +0 -77
  477. package/src/components/forms/avatar/stories/overview.vue +0 -28
  478. package/src/components/forms/button/button.stories.ts +0 -118
  479. package/src/components/forms/button/button.vue +0 -111
  480. package/src/components/forms/button/stories/README.md +0 -9
  481. package/src/components/forms/button/stories/overview.vue +0 -33
  482. package/src/components/forms/button/style/button.css +0 -139
  483. package/src/components/forms/button/style/style-outline.css +0 -129
  484. package/src/components/forms/button/style/style-soft.css +0 -89
  485. package/src/components/forms/button/style/style-transparent.css +0 -39
  486. package/src/components/forms/button/types.ts +0 -66
  487. package/src/components/forms/checkbox/checkbox.stories.ts +0 -33
  488. package/src/components/forms/checkbox/checkbox.ts +0 -21
  489. package/src/components/forms/checkbox/checkbox.vue +0 -114
  490. package/src/components/forms/checkbox/stories/overview.vue +0 -171
  491. package/src/components/forms/controlLabel/controlLabel.stories.ts +0 -32
  492. package/src/components/forms/controlLabel/controlLabel.ts +0 -4
  493. package/src/components/forms/controlLabel/controlLabel.vue +0 -54
  494. package/src/components/forms/forms.ts +0 -40
  495. package/src/components/forms/helpers.ts +0 -11
  496. package/src/components/forms/hint/hint.stories.ts +0 -41
  497. package/src/components/forms/hint/hint.ts +0 -8
  498. package/src/components/forms/hint/hint.vue +0 -32
  499. package/src/components/forms/input/input.stories.ts +0 -31
  500. package/src/components/forms/input/input.ts +0 -37
  501. package/src/components/forms/input/input.vue +0 -187
  502. package/src/components/forms/input/stories/overview.vue +0 -61
  503. package/src/components/forms/inputDate/datepicker.css +0 -246
  504. package/src/components/forms/inputDate/datepicker.ts +0 -101
  505. package/src/components/forms/inputDate/inputDate.stories.ts +0 -41
  506. package/src/components/forms/inputDate/inputDate.ts +0 -5
  507. package/src/components/forms/inputDate/inputDate.vue +0 -133
  508. package/src/components/forms/inputDate/stories/overview.vue +0 -35
  509. package/src/components/forms/inputRange/inputRange.stories.ts +0 -53
  510. package/src/components/forms/inputRange/inputRange.ts +0 -3
  511. package/src/components/forms/inputRange/inputRange.vue +0 -39
  512. package/src/components/forms/inputRange/stories/overview.vue +0 -129
  513. package/src/components/forms/loadbar/loadbar.stories.ts +0 -17
  514. package/src/components/forms/loadbar/loadbar.vue +0 -37
  515. package/src/components/forms/radio/radio.stories.ts +0 -34
  516. package/src/components/forms/radio/radio.ts +0 -15
  517. package/src/components/forms/radio/radio.vue +0 -97
  518. package/src/components/forms/radio/stories/overview.vue +0 -79
  519. package/src/components/forms/select/select.stories.ts +0 -68
  520. package/src/components/forms/select/select.ts +0 -60
  521. package/src/components/forms/select/select.vue +0 -298
  522. package/src/components/forms/select/stories/exampleOptions.ts +0 -61
  523. package/src/components/forms/select/stories/overview.vue +0 -72
  524. package/src/components/forms/switcher/stories/overview.vue +0 -139
  525. package/src/components/forms/switcher/switcher.stories.ts +0 -33
  526. package/src/components/forms/switcher/switcher.ts +0 -22
  527. package/src/components/forms/switcher/switcher.vue +0 -118
  528. package/src/components/forms/textarea/stories/overview.vue +0 -62
  529. package/src/components/forms/textarea/textarea.stories.ts +0 -33
  530. package/src/components/forms/textarea/textarea.ts +0 -38
  531. package/src/components/forms/textarea/textarea.vue +0 -121
  532. package/src/components/formsExt/README.mdx +0 -5
  533. package/src/components/formsExt/editArea/editArea.stories.ts +0 -41
  534. package/src/components/formsExt/editArea/editArea.ts +0 -41
  535. package/src/components/formsExt/editArea/editArea.vue +0 -195
  536. package/src/components/formsExt/editArea/stories/README.md +0 -21
  537. package/src/components/formsExt/editArea/stories/overview.vue +0 -67
  538. package/src/components/formsExt/editInput/editInput.stories.ts +0 -36
  539. package/src/components/formsExt/editInput/editInput.ts +0 -20
  540. package/src/components/formsExt/editInput/editInput.vue +0 -54
  541. package/src/components/formsExt/editInput/stories/overview.vue +0 -54
  542. package/src/components/formsExt/formsExt.ts +0 -15
  543. package/src/components/formsExt/info/info.stories.ts +0 -35
  544. package/src/components/formsExt/info/info.vue +0 -84
  545. package/src/components/formsExt/info/stories/overview.vue +0 -29
  546. package/src/components/formsExt/info/types.ts +0 -25
  547. package/src/components/formsExt/menu/menu.stories.ts +0 -59
  548. package/src/components/formsExt/menu/menu.ts +0 -45
  549. package/src/components/formsExt/menu/menu.vue +0 -321
  550. package/src/components/formsExt/menu/stories/items.ts +0 -18
  551. package/src/components/formsExt/menu/stories/overview.vue +0 -52
  552. package/src/components/formsExt/radioGroup/radioGroup.stories.ts +0 -51
  553. package/src/components/formsExt/radioGroup/radioGroup.ts +0 -28
  554. package/src/components/formsExt/radioGroup/radioGroup.vue +0 -146
  555. package/src/components/formsExt/radioGroup/stories/overview.vue +0 -78
  556. package/src/components/formsExt/radioGroup/styles/top-scrollBar.css +0 -52
  557. package/src/components/formsExt/selector2/api.ts +0 -148
  558. package/src/components/formsExt/selector2/itemMulti.vue +0 -57
  559. package/src/components/formsExt/selector2/selector2.stories.ts +0 -48
  560. package/src/components/formsExt/selector2/selector2.ts +0 -145
  561. package/src/components/formsExt/selector2/selector2.vue +0 -389
  562. package/src/components/formsExt/selector2/stories/dummyAPIRequest.ts +0 -58
  563. package/src/components/formsExt/selector2/stories/overview.vue +0 -93
  564. package/src/components/helper.js +0 -10
  565. package/src/components/helpersStories.ts +0 -205
  566. package/src/components/layout/islandRows/islandRows.stories.ts +0 -139
  567. package/src/components/layout/islandRows/islandRows.vue +0 -53
  568. package/src/components/layout/islandRows/islandRowsRow/islandRowsRow.vue +0 -36
  569. package/src/components/layout/islandRows/islandRowsRow/types.ts +0 -1
  570. package/src/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue +0 -16
  571. package/src/components/layout/islandRows/stories/README.md +0 -8
  572. package/src/components/layout/islandRows/types.ts +0 -11
  573. package/src/components/layout/layout.ts +0 -11
  574. package/src/components/layout/rows/rows.stories.ts +0 -48
  575. package/src/components/layout/rows/rows.vue +0 -46
  576. package/src/components/layout/rows/stories/README.md +0 -10
  577. package/src/components/layout/rows/types.ts +0 -6
  578. package/src/components/popup/alert/alert.stories.ts +0 -71
  579. package/src/components/popup/alert/alert.ts +0 -11
  580. package/src/components/popup/alert/alert.vue +0 -46
  581. package/src/components/popup/alert/stories/overview.vue +0 -40
  582. package/src/components/popup/confirm/confirm.stories.ts +0 -75
  583. package/src/components/popup/confirm/confirm.ts +0 -26
  584. package/src/components/popup/confirm/confirm.vue +0 -75
  585. package/src/components/popup/confirm/stories/overview.vue +0 -62
  586. package/src/components/popup/lib/popup.globalEvents.ts +0 -239
  587. package/src/components/popup/lib/popup.ts +0 -790
  588. package/src/components/popup/lib/worker.globalEvents.ts +0 -97
  589. package/src/components/popup/lib/worker.ts +0 -286
  590. package/src/components/popup/popup/listItem.vue +0 -35
  591. package/src/components/popup/popup/opener.vue +0 -81
  592. package/src/components/popup/popup/popup.stories.ts +0 -74
  593. package/src/components/popup/popup/popup.ts +0 -120
  594. package/src/components/popup/popup/popup.vue +0 -168
  595. package/src/components/popup/popup/stories/README.md +0 -55
  596. package/src/components/popup/popup/stories/listItems.vue +0 -44
  597. package/src/components/popup/popup/stories/listSubItems.vue +0 -47
  598. package/src/components/popup/popup/stories/overview.vue +0 -210
  599. package/src/components/popup/popup/style/popup.css +0 -345
  600. package/src/components/popup/popup/style/popup.m.css +0 -72
  601. package/src/components/popup/popup/style/popup.pc.css +0 -26
  602. package/src/components/popup/popup/widgetInput.vue +0 -43
  603. package/src/components/popup/popup.ts +0 -17
  604. package/src/components/popup/prompt/prompt.stories.ts +0 -78
  605. package/src/components/popup/prompt/prompt.ts +0 -26
  606. package/src/components/popup/prompt/prompt.vue +0 -84
  607. package/src/components/popup/prompt/stories/overview.vue +0 -50
  608. package/src/components/popup/worker.ts +0 -1
  609. package/src/components/project/project.ts +0 -23
  610. package/src/components/project/selectorCompetitors/composables.ts +0 -21
  611. package/src/components/project/selectorCompetitors/selectorCompetitors.stories.ts +0 -33
  612. package/src/components/project/selectorCompetitors/selectorCompetitors.ts +0 -27
  613. package/src/components/project/selectorCompetitors/selectorCompetitors.vue +0 -75
  614. package/src/components/project/selectorCompetitors/stories/README.md +0 -20
  615. package/src/components/project/selectorCompetitors/stories/items.ts +0 -30
  616. package/src/components/project/selectorCompetitors/types/competitor.ts +0 -7
  617. package/src/components/project/selectorRegion/composables/compare.ts +0 -87
  618. package/src/components/project/selectorRegion/composables/selectRegion.ts +0 -147
  619. package/src/components/project/selectorRegion/composables/selectSearcher.ts +0 -64
  620. package/src/components/project/selectorRegion/composables/selectorRegion.ts +0 -165
  621. package/src/components/project/selectorRegion/selectorRegion.stories.ts +0 -69
  622. package/src/components/project/selectorRegion/selectorRegion.ts +0 -217
  623. package/src/components/project/selectorRegion/selectorRegion.vue +0 -330
  624. package/src/components/project/selectorRegion/stories/README.md +0 -36
  625. package/src/components/project/selectorRegion/stories/searchers.ts +0 -59
  626. package/src/components/project/selectorRegion/styles/searcherColors.css +0 -41
  627. package/src/components/project/selectorRegion/utils/consts.ts +0 -73
  628. package/src/components/project/selectorRegion/utils/utils.ts +0 -157
  629. package/src/components/project/tagSelector/popupListItem/tagPopupListItem.vue +0 -209
  630. package/src/components/project/tagSelector/popupListItem/types.ts +0 -40
  631. package/src/components/project/tagSelector/popupOpener/popupOpener.vue +0 -145
  632. package/src/components/project/tagSelector/popupOpener/types.ts +0 -71
  633. package/src/components/project/tagSelector/stories/README.md +0 -62
  634. package/src/components/project/tagSelector/stories/overview.vue +0 -152
  635. package/src/components/project/tagSelector/tagIcon/tagIcon.vue +0 -97
  636. package/src/components/project/tagSelector/tagIcon/types.ts +0 -25
  637. package/src/components/project/tagSelector/tagSelector.stories.ts +0 -51
  638. package/src/components/project/tagSelector/tagSelector.vue +0 -359
  639. package/src/components/project/tagSelector/tagsDefaults.ts +0 -54
  640. package/src/components/project/tagSelector/types.ts +0 -159
  641. package/src/components/project/tagSelector/utils/el.ts +0 -151
  642. package/src/components/project/tagSelector/utils/utils.ts +0 -30
  643. package/src/components/tabs/tabs/content.vue +0 -24
  644. package/src/components/tabs/tabs/stories/README.md +0 -12
  645. package/src/components/tabs/tabs/tab.vue +0 -49
  646. package/src/components/tabs/tabs/tabs.stories.ts +0 -171
  647. package/src/components/tabs/tabs/tabs.ts +0 -22
  648. package/src/components/tabs/tabs/tabs.vue +0 -64
  649. package/src/components/tabs/tabs.ts +0 -9
  650. package/src/components/tabsView/tabsView/menu.vue +0 -291
  651. package/src/components/tabsView/tabsView/menuDelimeter.vue +0 -26
  652. package/src/components/tabsView/tabsView/menuItem.vue +0 -125
  653. package/src/components/tabsView/tabsView/menuTitle.vue +0 -46
  654. package/src/components/tabsView/tabsView/store.ts +0 -60
  655. package/src/components/tabsView/tabsView/stories/README.md +0 -22
  656. package/src/components/tabsView/tabsView/tabsView.stories.ts +0 -170
  657. package/src/components/tabsView/tabsView/tabsView.ts +0 -118
  658. package/src/components/tabsView/tabsView/tabsView.vue +0 -120
  659. package/src/components/tabsView/tabsView/utils.ts +0 -27
  660. package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuItem.stories.ts +0 -47
  661. package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuTitle.stories.ts +0 -43
  662. package/src/components/tabsView/tabsView.ts +0 -9
  663. package/src/components/types.ts +0 -3
  664. package/src/core/app.ts +0 -22
  665. package/src/core/core/core.mdx +0 -36
  666. package/src/core/core/core.ts +0 -287
  667. package/src/core/core/events/resize.ts +0 -47
  668. package/src/core/core/events.ts +0 -6
  669. package/src/core/core/jQuery.mdx +0 -41
  670. package/src/core/core/options.ts +0 -51
  671. package/src/core/core/preloaders.ts +0 -31
  672. package/src/core/core/state.ts +0 -61
  673. package/src/core/directives/data.mdx +0 -24
  674. package/src/core/directives/data.ts +0 -25
  675. package/src/core/directives/focus.mdx +0 -28
  676. package/src/core/directives/focus.ts +0 -73
  677. package/src/core/directives/scrollIntoView.mdx +0 -41
  678. package/src/core/directives/scrollIntoView.ts +0 -123
  679. package/src/core/directives/scrollShadow.mdx +0 -23
  680. package/src/core/directives/scrollShadow.ts +0 -27
  681. package/src/core/directives/sticky.mdx +0 -29
  682. package/src/core/directives/sticky.ts +0 -32
  683. package/src/core/directives/swimUp.mdx +0 -27
  684. package/src/core/directives/swimUp.ts +0 -95
  685. package/src/core/directives/tooltip.mdx +0 -13
  686. package/src/core/directives/tooltip.ts +0 -57
  687. package/src/core/icons/gallery.vue +0 -70
  688. package/src/core/icons/icons.mdx +0 -24
  689. package/src/core/icons/icons.stories.ts +0 -14
  690. package/src/core/plugins/core.ts +0 -131
  691. package/src/core/plugins/i18n.ts +0 -184
  692. package/src/core/plugins/piniaTPA.ts +0 -431
  693. package/src/core/plugins/plugins.mdx +0 -82
  694. package/src/core/styles/CSS Variables.stories.ts +0 -17
  695. package/src/core/styles/styles.mdx +0 -26
  696. package/src/core/theme/Variables.stories.ts +0 -16
  697. package/src/core/theme/theme.mdx +0 -117
  698. package/src/core/utils/References/Docs.mdx +0 -23
  699. package/src/core/utils/References/check/Docs.mdx +0 -15
  700. package/src/core/utils/References/check/functions/getDomainRegexp.mdx +0 -15
  701. package/src/core/utils/References/check/functions/isDomain.mdx +0 -21
  702. package/src/core/utils/References/check/functions/isEmail.mdx +0 -22
  703. package/src/core/utils/References/check/functions/isIp.mdx +0 -21
  704. package/src/core/utils/References/check/functions/validUrl.mdx +0 -22
  705. package/src/core/utils/References/clipboard/Docs.mdx +0 -11
  706. package/src/core/utils/References/clipboard/functions/setClipboard.mdx +0 -23
  707. package/src/core/utils/References/date/Docs.mdx +0 -17
  708. package/src/core/utils/References/date/functions/dateFormat.mdx +0 -28
  709. package/src/core/utils/References/date/functions/dateToString.mdx +0 -26
  710. package/src/core/utils/References/date/functions/dateUnformat.mdx +0 -22
  711. package/src/core/utils/References/date/functions/genDate.mdx +0 -26
  712. package/src/core/utils/References/date/functions/genDateMoscow.mdx +0 -22
  713. package/src/core/utils/References/date/functions/getDayOfWeek.mdx +0 -26
  714. package/src/core/utils/References/date/functions/stringToDate.mdx +0 -21
  715. package/src/core/utils/References/device/Docs.mdx +0 -21
  716. package/src/core/utils/References/device/functions/get$scroll.mdx +0 -15
  717. package/src/core/utils/References/device/functions/getCommandKeyLabel.mdx +0 -15
  718. package/src/core/utils/References/device/functions/getElsScroll.mdx +0 -15
  719. package/src/core/utils/References/device/functions/getOS.mdx +0 -17
  720. package/src/core/utils/References/device/functions/getOSAsync.mdx +0 -15
  721. package/src/core/utils/References/device/functions/getScrollTop.mdx +0 -15
  722. package/src/core/utils/References/device/functions/isApp.mdx +0 -15
  723. package/src/core/utils/References/device/functions/isMacOS.mdx +0 -15
  724. package/src/core/utils/References/device/functions/isMobile.mdx +0 -15
  725. package/src/core/utils/References/device/functions/isRetina.mdx +0 -15
  726. package/src/core/utils/References/device/functions/isSafari.mdx +0 -15
  727. package/src/core/utils/References/dom/Docs.mdx +0 -27
  728. package/src/core/utils/References/dom/functions/css.mdx +0 -24
  729. package/src/core/utils/References/dom/functions/genEl.mdx +0 -28
  730. package/src/core/utils/References/dom/functions/isVisible.mdx +0 -23
  731. package/src/core/utils/References/dom/functions/offset.mdx +0 -35
  732. package/src/core/utils/References/dom/functions/querySelectorAllArray.mdx +0 -22
  733. package/src/core/utils/References/dom/functions/querySelectorAllVisible.mdx +0 -22
  734. package/src/core/utils/References/dom/functions/querySelectorVisible.mdx +0 -22
  735. package/src/core/utils/References/dom/functions/querySelectorVisibleLast.mdx +0 -22
  736. package/src/core/utils/References/dom/functions/storage.mdx +0 -28
  737. package/src/core/utils/References/dom/functions/storageClear.mdx +0 -21
  738. package/src/core/utils/References/dom/functions/wrap.mdx +0 -22
  739. package/src/core/utils/References/dom/variables/default.mdx +0 -241
  740. package/src/core/utils/References/image/Docs.mdx +0 -12
  741. package/src/core/utils/References/image/functions/downloadImageFromString.mdx +0 -22
  742. package/src/core/utils/References/image/functions/genFaviconImgHtml.mdx +0 -22
  743. package/src/core/utils/References/keyboard/Docs.mdx +0 -11
  744. package/src/core/utils/References/keyboard/functions/invertKeyboardLayout.mdx +0 -21
  745. package/src/core/utils/References/lodash/Docs.mdx +0 -20
  746. package/src/core/utils/References/lodash/functions/cloneDeep.mdx +0 -29
  747. package/src/core/utils/References/lodash/functions/debounce.mdx +0 -76
  748. package/src/core/utils/References/lodash/functions/memoize.mdx +0 -26
  749. package/src/core/utils/References/lodash/functions/merge.mdx +0 -200
  750. package/src/core/utils/References/lodash/functions/throttle.mdx +0 -73
  751. package/src/core/utils/References/number/Docs.mdx +0 -11
  752. package/src/core/utils/References/number/functions/percentOfNumber.mdx +0 -26
  753. package/src/core/utils/References/price/Docs.mdx +0 -11
  754. package/src/core/utils/References/price/functions/genPrice.mdx +0 -28
  755. package/src/core/utils/References/route/Docs.mdx +0 -16
  756. package/src/core/utils/References/route/functions/delHash.mdx +0 -26
  757. package/src/core/utils/References/route/functions/genHash.mdx +0 -26
  758. package/src/core/utils/References/route/functions/getHash.mdx +0 -22
  759. package/src/core/utils/References/route/functions/historySetState.mdx +0 -31
  760. package/src/core/utils/References/route/functions/setHash.mdx +0 -26
  761. package/src/core/utils/References/route/functions/setHashs.mdx +0 -22
  762. package/src/core/utils/References/scroll/Docs.mdx +0 -14
  763. package/src/core/utils/References/scroll/functions/amountScrolled.mdx +0 -17
  764. package/src/core/utils/References/scroll/functions/connectScrollShadow.mdx +0 -28
  765. package/src/core/utils/References/scroll/functions/genHasScroll.mdx +0 -25
  766. package/src/core/utils/References/scroll/functions/getScrollPercent.mdx +0 -21
  767. package/src/core/utils/References/searchers/Docs.mdx +0 -19
  768. package/src/core/utils/References/searchers/functions/genVolumeLabel.mdx +0 -26
  769. package/src/core/utils/References/searchers/functions/getDeviceGIcon.mdx +0 -21
  770. package/src/core/utils/References/searchers/functions/getLangLabel.mdx +0 -22
  771. package/src/core/utils/References/searchers/functions/getSearcherGIcon.mdx +0 -21
  772. package/src/core/utils/References/searchers/functions/prepareVolumeType.mdx +0 -22
  773. package/src/core/utils/References/searchers/variables/searchersNames.mdx +0 -97
  774. package/src/core/utils/References/store/Docs.mdx +0 -18
  775. package/src/core/utils/References/store/functions/defineStore.mdx +0 -36
  776. package/src/core/utils/References/store/functions/useStore.mdx +0 -29
  777. package/src/core/utils/References/store/variables/plugin.mdx +0 -66
  778. package/src/core/utils/References/string/Docs.mdx +0 -26
  779. package/src/core/utils/References/string/functions/addCommasWhite.mdx +0 -21
  780. package/src/core/utils/References/string/functions/addLinkTags.mdx +0 -23
  781. package/src/core/utils/References/string/functions/camelToSnakeCase.mdx +0 -21
  782. package/src/core/utils/References/string/functions/ellipsis.mdx +0 -26
  783. package/src/core/utils/References/string/functions/genFlagLinkByCountryCode.mdx +0 -21
  784. package/src/core/utils/References/string/functions/genIntHash.mdx +0 -21
  785. package/src/core/utils/References/string/functions/getRandomHash.mdx +0 -21
  786. package/src/core/utils/References/string/functions/highlightHtml.mdx +0 -25
  787. package/src/core/utils/References/string/functions/htmlspecialchars.mdx +0 -21
  788. package/src/core/utils/References/string/functions/isUrl.mdx +0 -21
  789. package/src/core/utils/References/string/functions/nl2br.mdx +0 -21
  790. package/src/core/utils/References/string/functions/numberEnding.mdx +0 -28
  791. package/src/core/utils/References/string/functions/numberWithWord.mdx +0 -28
  792. package/src/core/utils/References/string/functions/rusToLatin.mdx +0 -21
  793. package/src/core/utils/References/string/functions/toCapitalize.mdx +0 -21
  794. package/src/core/utils/References/string/functions/toRoditPadej.mdx +0 -21
  795. package/src/core/utils/References/system/Docs.mdx +0 -13
  796. package/src/core/utils/References/system/functions/sleep.mdx +0 -21
  797. package/src/core/utils/References/system/functions/sleepWhile.mdx +0 -26
  798. package/src/core/utils/References/system/functions/waitWhile.mdx +0 -26
  799. package/src/core/utils/References/url/Docs.mdx +0 -17
  800. package/src/core/utils/References/url/functions/decode.mdx +0 -21
  801. package/src/core/utils/References/url/functions/encode.mdx +0 -21
  802. package/src/core/utils/References/url/functions/fromPuny.mdx +0 -23
  803. package/src/core/utils/References/url/functions/getHost.mdx +0 -21
  804. package/src/core/utils/References/url/functions/hostToLowerCase.mdx +0 -21
  805. package/src/core/utils/References/url/functions/normalize.mdx +0 -21
  806. package/src/core/utils/References/url/functions/toPuny.mdx +0 -23
  807. package/src/core/utils/check.ts +0 -88
  808. package/src/core/utils/clipboard.ts +0 -51
  809. package/src/core/utils/date.ts +0 -291
  810. package/src/core/utils/device.ts +0 -139
  811. package/src/core/utils/dom.ts +0 -182
  812. package/src/core/utils/image.ts +0 -46
  813. package/src/core/utils/keyboard.ts +0 -29
  814. package/src/core/utils/lodash.ts +0 -18
  815. package/src/core/utils/number.ts +0 -37
  816. package/src/core/utils/price.ts +0 -24
  817. package/src/core/utils/route.ts +0 -115
  818. package/src/core/utils/scroll.ts +0 -120
  819. package/src/core/utils/searchers.ts +0 -189
  820. package/src/core/utils/store/localStorage.ts +0 -56
  821. package/src/core/utils/store/plugin.ts +0 -50
  822. package/src/core/utils/store/store.ts +0 -77
  823. package/src/core/utils/store.ts +0 -7
  824. package/src/core/utils/string.ts +0 -315
  825. package/src/core/utils/system.ts +0 -72
  826. package/src/core/utils/url.ts +0 -138
  827. package/src/core/utils/utils.mdx +0 -6
  828. package/src/d.ts +0 -12
  829. package/src/icomoon.d.ts +0 -98
  830. package/src/resources/styles/core/components.css +0 -102
  831. package/src/resources/styles/core/core.ts +0 -11
  832. package/src/resources/styles/core/forms/clear.css +0 -20
  833. package/src/resources/styles/core/forms/controls.css +0 -20
  834. package/src/resources/styles/core/forms/focusable.css +0 -26
  835. package/src/resources/styles/core/forms/forms.css +0 -117
  836. package/src/resources/styles/core/icon.css +0 -58
  837. package/src/resources/styles/core/jquery.css +0 -1
  838. package/src/resources/styles/core/layout.css +0 -59
  839. package/src/resources/styles/core/modifiers/as.css +0 -9
  840. package/src/resources/styles/core/modifiers/ellipsis.css +0 -26
  841. package/src/resources/styles/core/modifiers/modifiers.css +0 -120
  842. package/src/resources/styles/core/modifiers/only.css +0 -19
  843. package/src/resources/styles/core/modifiers/scrollShadow.css +0 -50
  844. package/src/resources/styles/core/select.css +0 -15
  845. package/src/resources/styles/storybook.css +0 -11
  846. package/src/resources/styles/themes/dark/dark-layout.css +0 -47
  847. package/src/resources/styles/themes/dark/dark-positions.css +0 -66
  848. package/src/resources/styles/themes/dark/dark.css +0 -400
  849. package/src/resources/styles/themes/dark-positions.ts +0 -1
  850. package/src/resources/styles/themes/dark-th/dark-th-layout.css +0 -47
  851. package/src/resources/styles/themes/dark-th/dark-th-positions.css +0 -67
  852. package/src/resources/styles/themes/dark-th/dark-th.css +0 -400
  853. package/src/resources/styles/themes/dark-th-positions.ts +0 -1
  854. package/src/resources/styles/themes/dark-th.ts +0 -3
  855. package/src/resources/styles/themes/dark.ts +0 -3
  856. package/src/resources/styles/themes/light/light-layout.css +0 -47
  857. package/src/resources/styles/themes/light/light-positions.css +0 -66
  858. package/src/resources/styles/themes/light/light.css +0 -400
  859. package/src/resources/styles/themes/light-positions.ts +0 -1
  860. package/src/resources/styles/themes/light.ts +0 -3
  861. package/src/storybook/components/color.vue +0 -47
  862. package/src/storybook/components/cssVariables.vue +0 -195
  863. package/src/storybook/components/icomoon.ts +0 -40
  864. package/src/storybook/jquery.ts +0 -4
  865. package/src//320/221/321/213/321/201/321/202/321/200/321/213/320/271 /321/201/321/202/320/260/321/200/321/202.mdx" +0 -181
  866. package/src//320/230/320/275/321/204/320/276/321/200/320/274/320/260/321/206/320/270/321/217 /320/276 /321/201/320/261/320/276/321/200/320/272/320/265.mdx" +0 -12
  867. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CHANGELOG.md.mdx" +0 -4
  868. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS/FAQ.mdx" +0 -43
  869. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/236/320/261/321/211/320/270/320/265 /320/274/320/276/320/264/320/270/321/204/320/270/320/272/320/260/321/202/320/276/321/200/321/213.mdx" +0 -155
  870. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/237/320/265/321/200/320/265/320/274/320/265/320/275/320/275/321/213/320/265.mdx" +0 -35
  871. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/237/321/200/320/265/320/264/320/277/321/200/320/276/321/206/320/265/321/201/321/201/320/276/321/200/321/213.mdx" +0 -15
  872. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/240/320/265/320/272/320/276/320/274/320/265/320/275/320/264/320/260/321/206/320/270/320/270 /320/221/320/255/320/234.mdx" +0 -56
  873. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/241/321/202/320/270/320/273/320/270.mdx" +0 -53
  874. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/247/321/202/320/276 /321/202/320/260/320/272/320/276/320/265 css /320/274/320/276/320/264/321/203/320/273/321/214.mdx" +0 -55
  875. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/PUBLISH.md.mdx" +0 -4
  876. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/README.md.mdx" +0 -4
  877. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/STORYBOOK.md.mdx" +0 -4
  878. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/USE_IN_PROJECT.md.mdx" +0 -3
  879. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/222/320/262/320/265/320/264/320/265/320/275/320/270/320/265 /320/262 NPM.md.mdx" +0 -4
  880. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/224/320/276/320/277/320/276/320/273/320/275/320/270/321/202/320/265/320/273/321/214/320/275/320/260/321/217 /320/273/320/270/321/202/320/265/321/200/320/260/321/202/321/203/321/200/320/260.mdx" +0 -15
  881. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/235/320/260/321/201/321/202/321/200/320/276/320/271/320/272/320/260 IDE.mdx" +0 -45
  882. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/236/321/204/320/276/321/200/320/274/320/273/320/265/320/275/320/270/320/265 /320/272/320/276/320/264/320/260.mdx" +0 -31
  883. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260.mdx" +0 -29
  884. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213.mdx" +0 -41
  885. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213//320/241/321/202/320/270/320/273/320/270 /320/272/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213.mdx" +0 -58
  886. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI.mdx" +0 -11
  887. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/243/321/202/320/270/320/273/320/270/321/202/321/213.mdx" +0 -5
  888. package/tsconfig.json +0 -91
  889. package/typedoc.json +0 -20
  890. package/vite.config.ts +0 -148
  891. /package/{public/icomoon → icomoon}/Read Me.txt +0 -0
  892. /package/{public/icomoon → icomoon}/Topvisor icons.json +0 -0
  893. /package/{public/icomoon → icomoon}/demo-files/demo.css +0 -0
  894. /package/{public/icomoon → icomoon}/demo-files/demo.js +0 -0
  895. /package/{public/icomoon → icomoon}/demo.html +0 -0
  896. /package/{public/icomoon → icomoon}/fonts/Topvisor-2.eot +0 -0
  897. /package/{public/icomoon → icomoon}/fonts/Topvisor-2.svg +0 -0
  898. /package/{public/icomoon → icomoon}/fonts/Topvisor-2.ttf +0 -0
  899. /package/{public/icomoon → icomoon}/fonts/Topvisor-2.woff +0 -0
  900. /package/{public/icomoon → icomoon}/selection.json +0 -0
  901. /package/{public/icomoon → icomoon}/style.css +0 -0
  902. /package/{public/jquery-ui.min.css → jquery-ui.min.css} +0 -0
  903. /package/{public/require → require}/css.amd.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-9b7woobj.es.js","sources":["../../src/components/dialog/lib/worker.ts","../../src/components/dialog/dialog/composables/dialogHandle.ts","../../src/components/dialog/dialog/dialogs/dialogs.vue","../../src/components/dialog/dialog/composables/asyncDialogHandle.ts","../../src/components/dialog/dialog/composables/utils.ts"],"sourcesContent":["import { genHash, getHash, historySetState } from '@/core/utils/route';\r\nimport type { MoveDirection, TopDialogOptions } from './types';\r\nimport type { $el } from '@/components/types';\r\n\r\nexport abstract class TopDialogWorker {\r\n\tstatic state = {\r\n\t\tload: undefined as TopDialogOptions['load'] | undefined,\r\n\t\tdecoratorOnCreate: undefined as TopDialogOptions['decoratorOnCreate'] | undefined,\r\n\r\n\t\t/**\r\n\t\t * Порядковай номер перехода в диалоговых окнах\r\n\t\t *\r\n\t\t * Для расчета направления Вперед / Назад\r\n\t\t */\r\n\t\tviewPageN: 0,\r\n\t\tlocationHashPrev: '',\r\n\t};\r\n\r\n\tprivate static inited = false;\r\n\r\n\t/**\r\n\t * Инициировать события слежения за парамтерами url\r\n\t *\r\n\t * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу\r\n\t */\r\n\tstatic init(options?: TopDialogOptions) {\r\n\t\tif (this.inited) return;\r\n\t\tthis.inited = true;\r\n\r\n\t\tthis.state.load = options?.load;\r\n\t\tthis.state.decoratorOnCreate = options?.decoratorOnCreate;\r\n\r\n\t\tconst autoInitDelay = options?.autoInitDelay ?? 5000;\r\n\r\n\t\t$(window).on('hashchange.dialogs', () => {\r\n\t\t\tconst dialogsStateChanged = this.compareStates(location.hash, this.state.locationHashPrev);\r\n\t\t\tif (dialogsStateChanged) this.opendDialogsFromUrl();\r\n\t\t});\r\n\r\n\t\t$(window).trigger('hashchange.dialogs');\r\n\r\n\t\t/**\r\n\t\t * Сгенерировать ссылку для перехода к странице диалогового окна\r\n\t\t */\r\n\t\t$(document).on('mousedown', 'a[data-to-view]', async (e) => {\r\n\t\t\tconst el = e.target.closest('[data-to-view]');\r\n\r\n\t\t\tconst toView = el.dataset.toView;\r\n\t\t\tconst viewName = toView.split('-')[0];\r\n\t\t\tconst $toDialog = $('#' + viewName);\r\n\t\t\tconst $modalLayers = $('> .modal-layer', $toDialog);\r\n\t\t\t// const $currentPage = $('> .active', $modalLayers);\r\n\r\n\t\t\tlet moveDirection: MoveDirection = 'next';\r\n\r\n\t\t\t// /**\r\n\t\t\t// * Данный алгоритм определения направления работает не корректно, так как для чтения свойства order менят состояние через getDialogsUtils()\r\n\t\t\t// */\r\n\t\t\t// if ($currentPage.length) {\r\n\t\t\t// \tconst pageName = toView.split('-')[1].split(':')[0];\r\n\t\t\t//\r\n\t\t\t// \tconst TopDialogUtils = await this.getDialogsUtils();\r\n\t\t\t//\r\n\t\t\t// \tawait TopDialogUtils.updatePageVue(viewName, undefined, pageName);\r\n\t\t\t//\r\n\t\t\t// \tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\r\n\t\t\t// \tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\r\n\t\t\t// }\r\n\r\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\r\n\r\n\t\t\tel.href = TopDialogWorker.genViewPageHash(el.dataset.toView, moveDirection);\r\n\t\t});\r\n\r\n\t\t/**\r\n\t\t * Осуществить переход по ссылке с учетом historyType\r\n\t\t */\r\n\t\t$(document).on('click', '[data-to-view]', async (e) => {\r\n\t\t\tconst el = e.target.closest('[data-to-view]');\r\n\r\n\t\t\t// Подождать генерацию ссылки\r\n\t\t\tif (el.href === '.') {\r\n\t\t\t\te.preventDefault();\r\n\r\n\t\t\t\tel.mousedown();\r\n\r\n\t\t\t\tsetTimeout(() => el.click());\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\r\n\r\n\t\t\tconst toView = el.dataset.toView;\r\n\t\t\tconst viewName = toView.split('-')[0];\r\n\t\t\tconst $toDialog = $('#' + viewName);\r\n\t\t\tconst $modalLayers = $('> .modal-layer', $toDialog);\r\n\t\t\tconst $currentPage = $('> .active', $modalLayers);\r\n\r\n\t\t\tconst replaceHistory = !!$toDialog.data('data-to-view-replace');\r\n\r\n\t\t\tlet moveDirection: MoveDirection = 'next';\r\n\t\t\tif ($currentPage.length) {\r\n\t\t\t\tconst pageName = toView.split('-')[1].split(':')[0];\r\n\t\t\t\tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\r\n\t\t\t\tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\r\n\t\t\t}\r\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\r\n\r\n\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, moveDirection);\r\n\r\n\t\t\tif (el.tagName === 'A') {\r\n\t\t\t\t// диалоговое окно еще не открыто, произвести переход по ссылке\r\n\t\t\t\tif (!$toDialog.is(':visible')) return;\r\n\r\n\t\t\t\t// в адресе уже указана эта страница, необходимсо явно запросить ее открытие\r\n\t\t\t\tif (location.hash.indexOf(toView.replace('-', '=')) !== -1) {\r\n\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (replaceHistory) {\r\n\t\t\t\te.preventDefault();\r\n\r\n\t\t\t\thistorySetState(true, hash);\r\n\r\n\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\r\n\r\n\t\t\t\tif (moveDirection == 'next') {\r\n\t\t\t\t\tTopDialogWorker.state.viewPageN++;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tTopDialogWorker.state.viewPageN--;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tif (el.tagName !== 'A') {\r\n\t\t\t\t\tif (this.compareStates(hash, location.hash)) {\r\n\t\t\t\t\t\tlocation.hash = hash;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tsetTimeout(() => this.getDialogsUtils(), autoInitDelay);\r\n\t}\r\n\r\n\tstatic async getDialogsUtils() {\r\n\t\tconst { TopDialogUtils } = await import('./utils');\r\n\r\n\t\treturn TopDialogUtils;\r\n\t}\r\n\r\n\tstatic get$dialog($el: $el) {\r\n\t\treturn $el.closest('.ui-dialog-content');\r\n\t};\r\n\r\n\tstatic get$page($el: $el) {\r\n\t\treturn $el.closest('[data-view-page]');\r\n\t};\r\n\r\n\t/**\r\n\t * Получить элементы страницы в шапке и в контенте\r\n\t */\r\n\tstatic get$pairPage($el: $el) {\r\n\t\tconst $dialog = TopDialogWorker.get$dialog($el);\r\n\r\n\t\tconst $page = TopDialogWorker.get$page($el);\r\n\t\tconst pageName = $page.data('view-page');\r\n\r\n\t\treturn $('[data-view-page=\"' + pageName + '\"]', $dialog);\r\n\t};\r\n\r\n\t/**\r\n\t * Закрыть диалоговое окно\r\n\t */\r\n\tstatic close(dialogId: string) {\r\n\t\tconst $dialog = $('#' + dialogId);\r\n\r\n\t\tif (!$dialog.dialog('instance')) return;\r\n\r\n\t\t$dialog.dialog('close');\r\n\t};\r\n\r\n\t/**\r\n\t * Размонтировать $.dialog\r\n\t */\r\n\tstatic destroy(dialogId: string) {\r\n\t\tconst $dialog = $('#' + dialogId);\r\n\r\n\t\tif (!$dialog.dialog('instance')) return;\r\n\r\n\t\t$dialog.dialog('close');\r\n\t\t$dialog.dialog('destroy');\r\n\t};\r\n\r\n\t/**\r\n\t * Сгенерировать ссылку на страницу в диалоговом окне\r\n\t * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}\r\n\t * @param moveDirection\r\n\t */\r\n\tstatic genViewPageHash(toView: string, moveDirection: MoveDirection = 'next') {\r\n\t\tvar toViewPageN = this.state.viewPageN;\r\n\t\tif (moveDirection == 'prev') {\r\n\t\t\ttoViewPageN--;\r\n\t\t} else {\r\n\t\t\ttoViewPageN++;\r\n\t\t}\r\n\r\n\t\tvar viewNameAndPageLink = toView.split('-');\r\n\t\tvar viewName = viewNameAndPageLink.shift();\r\n\t\tvar pageLink = viewNameAndPageLink.join('-');\r\n\t\tvar hash = genHash('vpn', toViewPageN);\r\n\t\tvar hash = genHash('view-' + viewName, pageLink, hash);\r\n\r\n\t\treturn hash;\r\n\t};\r\n\r\n\t/**\r\n\t * Сравнить версию открытых диалоговых окон\r\n\t * @returns вернет true, если состояния открытых окон изменилось\r\n\t */\r\n\tstatic compareStates(hash: string, hash2: string) {\r\n\t\tconst mathes = hash.match(/[#&]view-[^&]+/g) || [];\r\n\t\tconst mathes2 = hash2.match(/[#&]view-[^&]+/g) || [];\r\n\r\n\t\tif (mathes.length !== mathes2.length) return true;\r\n\r\n\t\tconst mathesChanged = mathes.filter((math, n) => {\r\n\t\t\tconst math2 = mathes2[n] || '';\r\n\r\n\t\t\treturn math !== math2;\r\n\t\t});\r\n\r\n\t\tif (mathesChanged.length) return true;\r\n\r\n\t\treturn false;\r\n\t};\r\n\r\n\tstatic opendDialogsFromUrl = async () => {\r\n\t\tconst toViewPageN = Number(getHash('vpn')) || 0;\r\n\r\n\t\tthis.state.locationHashPrev = location.hash;\r\n\r\n\t\t// Открыть диалоговое окно\r\n\t\tlet view: RegExpExecArray | null;\r\n\t\t// const regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)' + '(' + Math.random() + ')?', 'g'); // fix babel minify regexp\r\n\t\tconst regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)', 'g');\r\n\t\twhile (view = regexp.exec(location.hash)) {\r\n\t\t\tvar moveDirection: MoveDirection = 'next';\r\n\t\t\tif (toViewPageN < this.state.viewPageN) moveDirection = 'prev';\r\n\r\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\r\n\r\n\t\t\treturn TopDialogUtils.toViewDirty(view[1], moveDirection);\r\n\t\t}\r\n\r\n\t\t// Закрыть ненужные view\r\n\t\t$('.ui-dialog-content[data-view-page-active]:visible').each((_index: number, dialog: HTMLElement) => {\r\n\t\t\tvar $dialog = $(dialog);\r\n\r\n\t\t\tvar viewName = $dialog.attr('id');\r\n\t\t\tvar pageName = getHash('view-' + viewName);\r\n\t\t\tif (!pageName) $dialog.dialog('close');\r\n\t\t});\r\n\r\n\t\tthis.state.viewPageN = toViewPageN;\r\n\r\n\t\treturn true;\r\n\t};\r\n}\r\n","import { type ComponentInstance, type ComponentInternalInstance, markRaw, ref } from 'vue';\r\nimport { waitWhile } from '@/core/utils/system';\r\nimport TopDialog from '../dialog.vue';\r\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\r\nimport type { MoveDirection } from '@/components/dialog/lib/types';\r\nimport type { TopDialogComponent } from './types';\r\n\r\n/**\r\n * Объект для работы с диалоговым окном\r\n *\r\n * Каждое окно уникально и может быть открыто одновременно только один раз\r\n *\r\n * Можно определить много окон, после чего с ними можно вести работу в любой части приложения\r\n */\r\nexport class TopDialogHandle<T extends TopDialogComponent> {\r\n\r\n\t/**\r\n\t * Индентификатор, определяется на уровне компонента TopDialogComponent\r\n\t *\r\n\t * Может использоваться в навигации для открытия нужных окон с нужными настройками\r\n\t */\r\n\tid: string;\r\n\r\n\t/**\r\n\t * ID, используемый в верстке диалогового окна\r\n\t */\r\n\tidAttr: string;\r\n\r\n\t/**\r\n\t * Пользовательский компонент диалогового окна\r\n\t */\r\n\tComponent: T;\r\n\r\n\t/**\r\n\t * Компонент инициирован\r\n\t *\r\n\t * Устанавливается после первого вызова useTopDialog()\r\n\t */\r\n\tisMounted = ref(false);\r\n\r\n\t/**\r\n\t * Компонент готов к использованию\r\n\t *\r\n\t * Используется для внутренних преобразований после отрисовки\r\n\t */\r\n\tisReady = ref(false);\r\n\r\n\t/**\r\n\t * Диалоговое окно открыто\r\n\t */\r\n\tisOpened = ref(false);\r\n\r\n\t/**\r\n\t * Имя активной страницы дилогового окна\r\n\t */\r\n\tpageActive = ref('');\r\n\r\n\t/**\r\n\t * Диалоговое окно находится в состоянии загрузки своей страницы\r\n\t */\r\n\tisLoadingPage = ref(false);\r\n\r\n\t/**\r\n\t * Следующая активная страница\r\n\t *\r\n\t * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию\r\n\t */\r\n\tpageActiveNext = ref('');\r\n\r\n\t/**\r\n\t * props компонента, доступны после инициализации\r\n\t */\r\n\tprops?: ComponentInstance<T>['$props'];\r\n\r\n\t/**\r\n\t * emit базового компонента `TopDialog`\r\n\t */\r\n\temit?: ComponentInstance<typeof TopDialog>['$emit'];\r\n\r\n\t/**\r\n\t * Одноразовое событие на закрытие диалогового окна\r\n\t *\r\n\t * Используется для привязки окна к сценариям использования\r\n\t */\r\n\tonCloseOnce?: (props: typeof this.props, pageName: string) => void;\r\n\r\n\tconstructor(TopDialogComponent: T) {\r\n\t\tthis.id = TopDialogComponent.id!;\r\n\t\tthis.idAttr = 'dialog_' + TopDialogComponent.id;\r\n\t\tthis.Component = markRaw(TopDialogComponent);\r\n\t}\r\n\r\n\t/**\r\n\t * Событие - компонент инициирован\r\n\t */\r\n\tonMounted(topDialogComponent: ComponentInternalInstance, topDialogBaseComponent: ComponentInternalInstance) {\r\n\t\tthis.isMounted.value = true;\r\n\t\tthis.props = topDialogComponent.props;\r\n\t\tthis.emit = topDialogBaseComponent.emit;\r\n\t}\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно\r\n\t *\r\n\t * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента\r\n\t */\r\n\tasync open(pageName: string = 'main', props?: {}, args: [] = [], onCloseOnce?: typeof this.onCloseOnce, moveDirection?: MoveDirection) {\r\n\t\tif (props) await this.setProps(props);\r\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\r\n\r\n\t\tconst TopDialogUtils = await TopDialogWorker.getDialogsUtils();\r\n\r\n\t\tawait TopDialogUtils.toView(this.idAttr, pageName, args, moveDirection);\r\n\t};\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\r\n\t *\r\n\t * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader\r\n\t */\r\n\tasync openAsLink(\r\n\t\tpageName: string = 'main',\r\n\t\tprops?: {},\r\n\t\t_args: string[] = [],\r\n\t\tonCloseOnce?: typeof this.onCloseOnce,\r\n\t\tmoveDirection?: MoveDirection,\r\n\t) {\r\n\t\tif (props) await this.setProps(props);\r\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\r\n\r\n\t\tconst viewName = this.idAttr + '-' + pageName;\r\n\r\n\t\tlocation.hash = TopDialogWorker.genViewPageHash(viewName, moveDirection);\r\n\t};\r\n\r\n\t/**\r\n\t * Закрыть диалоговое окно\r\n\t *\r\n\t * Не меняет состояние компонента диалогового окна\r\n\t */\r\n\tasync close() {\r\n\t\tTopDialogWorker.close(this.idAttr);\r\n\t};\r\n\r\n\t/**\r\n\t * Размонтировать $.dialog\r\n\t */\r\n\tasync destroy() {\r\n\t\tTopDialogWorker.destroy(this.idAttr);\r\n\t}\r\n\r\n\t/**\r\n\t * Устанвоить props\r\n\t *\r\n\t * Полностью сбрасывается состояние props\r\n\t */\r\n\tasync setProps(props: ComponentInstance<T>['$props'] = {}) {\r\n\t\t// ожидание инициализации компонента\r\n\t\tif (!this.isMounted) {\r\n\t\t\tawait waitWhile(() => !this.props);\r\n\t\t}\r\n\r\n\t\tfor (const name in this.props) {\r\n\t\t\tthis.props[name] = props[name];\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Проверить, есть ли необходимость отрисовки страницы диалогового окна\r\n\t */\r\n\tneedShowPage(pageName: string): boolean {\r\n\t\tif (!this.isOpened.value) return false;\r\n\r\n\t\treturn this.pageActive.value === pageName || this.pageActiveNext.value === pageName;\r\n\t}\r\n}\r\n","<script lang=\"ts\">\r\nimport { shallowReactive } from 'vue';\r\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\r\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\r\n\r\n/**\r\n * Словарь всех используемых диалоговых окон\r\n *\r\n * В других компонентах не использовать\r\n */\r\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\r\n\r\nexport const getDialogWorker = (id: string) => {\r\n\tid = id.replace(/^dialog_/, '');\r\n\r\n\treturn dialogsWorkers.get(id);\r\n};\r\n\r\n/**\r\n * Добавить компонент диалогового окна для использования\r\n */\r\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\r\n\tif (!TopDialogComponent?.id) {\r\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\r\n\r\n\t\tthrow new Error('Expected TopDialogComponent');\r\n\t}\r\n\r\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\r\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\r\n\t}\r\n\r\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\r\n};\r\n</script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onUnmounted } from 'vue';\r\n\r\ndefineOptions({\r\n\tname: 'DialogWrapper',\r\n});\r\n\r\nonUnmounted(() => {\r\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\r\n\tdialogsWorkers.clear();\r\n});\r\n</script>\r\n\r\n<template>\r\n\t<div class=\"top-dialogs\" style=\"display: none;\">\r\n\t\t<component\r\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\r\n\t\t\t:is=\"dialog.Component\"\r\n\t\t\t:key=\"dialogId\"\r\n\t\t/>\r\n\t</div>\r\n</template>\r\n","import type { Ref } from 'vue';\r\nimport { ref } from 'vue';\r\nimport { useTopDialog } from './utils';\r\nimport { waitWhile } from '@/core/utils/system';\r\nimport type { AsyncTopDialogComponentLoader, TopDialogComponent } from './types';\r\nimport { TopDialogHandle } from './dialogHandle';\r\n\r\n/**\r\n * Объект для работы с асинхронным диалоговым окном\r\n *\r\n * Является прослойкой для доступа к TopDialogHandle\r\n */\r\nexport class AsyncTopDialogHandle<T extends TopDialogComponent> {\r\n\r\n\t/**\r\n\t * Функция, определяющая компонент TopDialogComponent\r\n\t */\r\n\treadonly resolve: AsyncTopDialogComponentLoader<T>;\r\n\r\n\t/**\r\n\t * Реактивная Сссылка на объект worker,\r\n\t *\r\n\t * Ссылка не будет указывать на объект, если диалоговое окно еще не загружено\r\n\t */\r\n\treadonly worker: Ref<TopDialogHandle<T> | null> = ref(null);\r\n\r\n\tconstructor(resolve: AsyncTopDialogComponentLoader<T>) {\r\n\t\tthis.resolve = resolve;\r\n\t}\r\n\r\n\t/**\r\n\t * Получить доступ к TopDialogHandle\r\n\t */\r\n\tasync get() {\r\n\t\tif (this.worker.value) return this.worker.value;\r\n\r\n\t\tconst result = await this.resolve();\r\n\t\tconst TopDialogComponent = result.default;\r\n\r\n\t\tthis.worker.value = useTopDialog(TopDialogComponent);\r\n\r\n\t\tconst worker = this.worker.value;\r\n\r\n\t\tawait waitWhile(() => !worker.isMounted);\r\n\r\n\t\treturn worker;\r\n\t}\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно\r\n\t */\r\n\tasync open(...args: Parameters<TopDialogHandle<T>['open']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tawait worker.open(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\r\n\t *\r\n\t * Только общедоступные диалоговые окна, расположенные в @/dialogs\r\n\t */\r\n\tasync openAsLink(...args: Parameters<TopDialogHandle<T>['open']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tvoid worker.openAsLink(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Закрыть диалоговое окно\r\n\t *\r\n\t * Не меняет состояние компонента диалогового окна\r\n\t */\r\n\tasync close(...args: Parameters<TopDialogHandle<T>['close']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tworker.close(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Размонтировать виджет диалогового окна\r\n\t */\r\n\tasync destroy(...args: Parameters<TopDialogHandle<T>['close']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tworker.destroy(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Устанвоить props\r\n\t *\r\n\t * Полностью сбрасывается состояние props\r\n\t */\r\n\tasync setProps(...args: Parameters<TopDialogHandle<T>['setProps']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tawait worker.setProps(...args);\r\n\t}\r\n}\r\n","import { getCurrentInstance, inject } from 'vue';\r\nimport { TopDialogHandle } from './dialogHandle';\r\nimport { AsyncTopDialogHandle } from './asyncDialogHandle';\r\nimport type { AsyncTopDialogComponentLoader, TopDialogComponent } from './types';\r\nimport { addDialogWorker, getDialogWorker } from '../dialogs/dialogs.vue';\r\n\r\n/**\r\n * Получить объект управленя текущим диалоговым окном\r\n */\r\nexport const useTopDialogSelf = () => {\r\n\t// вызов из пользовтаельского компонента диалога\r\n\tconst topDialogComponent = getCurrentInstance() as any;\r\n\tif (topDialogComponent?.type?.id) {\r\n\t\tconst dialogWorker = getDialogWorker(topDialogComponent.type.id);\r\n\t\tif (dialogWorker) return dialogWorker;\r\n\t}\r\n\r\n\treturn inject('dialogWorker') as TopDialogHandle<TopDialogComponent>;\r\n};\r\n\r\n/**\r\n * Получить объект управленя диалоговым окном\r\n *\r\n * При первом вызове компонент диалогового окна будет внедрен в компонент DialogWrapper\r\n */\r\nexport const useTopDialog = <T extends TopDialogComponent>(DialogComponent: T): TopDialogHandle<T> => {\r\n\treturn addDialogWorker(DialogComponent);\r\n};\r\n\r\n/**\r\n * Получить объект управленя асинхронным диалоговым окном\r\n *\r\n * Компонент диалогового окна будет загружен и инициирован при первом взаимодействии с объектом\r\n *\r\n * Использует useTopDialog()\r\n */\r\nexport const useAsyncTopDialog = <T extends TopDialogComponent>(resolve: AsyncTopDialogComponentLoader<T>): AsyncTopDialogHandle<T> => {\r\n\treturn new AsyncTopDialogHandle(resolve);\r\n};\r\n"],"names":["TopDialogWorker","options","autoInitDelay","e","el","viewName","$toDialog","moveDirection","TopDialogUtils","toView","$modalLayers","$currentPage","replaceHistory","pageName","hash","historySetState","$el","$dialog","dialogId","toViewPageN","viewNameAndPageLink","pageLink","genHash","hash2","mathes","mathes2","math","math2","getHash","view","regexp","_index","dialog","TopDialogHandle","ref","TopDialogComponent","markRaw","topDialogComponent","topDialogBaseComponent","props","args","onCloseOnce","_args","waitWhile","name","dialogsWorkers","shallowReactive","getDialogWorker","id","addDialogWorker","onUnmounted","AsyncTopDialogHandle","resolve","useTopDialog","worker","useTopDialogSelf","getCurrentInstance","_a","dialogWorker","inject","DialogComponent","useAsyncTopDialog"],"mappings":"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"}
@@ -0,0 +1,225 @@
1
+ import { nextTick as T } from "vue";
2
+ import { C as c } from "./forms-BciWy0wX.es.js";
3
+ import { TopPopupWorker as V } from "../popup/worker.js";
4
+ import { sleep as W, waitWhile as j } from "../utils/system.js";
5
+ import { setHash as m } from "../utils/route.js";
6
+ import { connectScrollShadow as A } from "../utils/scroll.js";
7
+ import { T as l, g as y } from "./utils-9b7woobj.es.js";
8
+ import { querySelectorVisible as _ } from "../utils/dom.js";
9
+ $;
10
+ let k = !1;
11
+ const L = () => {
12
+ k || (k = !0, document.addEventListener("keydown", (e) => {
13
+ if (e.key !== "Escape" || !e.target) return;
14
+ const t = e.target;
15
+ t.closest(".ui-dialog") && (t.contentEditable === "true" || t.contentEditable === "plaintext-only" || _(document.documentElement, ".top-popup-wrapper") || t.classList.contains("autocomplete") || _(document.documentElement, ".fancybox-container") || $(".ui-dialog-content:visible:last").dialog("close"));
16
+ }), $(document).on("click", '[data-action="top-dialog-close"]', (e) => {
17
+ e.preventDefault();
18
+ const t = e.target.closest('[data-action="top-dialog-close"]'), o = t.closest(".ui-dialog-content");
19
+ if (!o) return;
20
+ const a = $(o), i = t.dataset.toView;
21
+ if (i == "toPrevPage()") {
22
+ v.toPrevPage(a);
23
+ return;
24
+ }
25
+ if (i) {
26
+ var r = i.split("-"), d = r.shift(), n = r.join("-"), s = $("#" + d), g = $('[data-view-page="' + n + '"]', s);
27
+ if (!g.is(":visible")) {
28
+ const p = l.genViewPageHash(i, "prev");
29
+ location.hash = p;
30
+ return;
31
+ }
32
+ }
33
+ a.dialog("close");
34
+ }), $(document).on("submit", ".modal-body > form, .modal-layer-body > form", function(e) {
35
+ e.preventDefault();
36
+ }), $(document).on("keypress", ".ui-dialog .modal-body :input:not(.searcher), .ui-dialog .modal-body [contenteditable]", function(e) {
37
+ if (e.key === "ENTER") {
38
+ if (e.target.classList.contains("autocomplete")) {
39
+ e.preventDefault();
40
+ return;
41
+ }
42
+ if (e.target.tagName === "TEXTAREA") {
43
+ if (!e.ctrlKey && !e.metaKey) return;
44
+ const t = e.target.closest("form");
45
+ if (t) {
46
+ let o = $(":submit:visible", t)[0];
47
+ o || (o = $(":submit:visible", t)[0]), o == null || o.click();
48
+ }
49
+ }
50
+ }
51
+ }), $(document).on("click", ".ui-widget-overlay", function() {
52
+ let e, t = 0;
53
+ $(".ui-dialog:visible").each((o, a) => {
54
+ const i = Number($(a).css("z-index"));
55
+ i < t || (e = $(a), t = i);
56
+ }), e && $(".ui-dialog-content", e).dialog("close");
57
+ }), $(window).on("resize", v.recalcPositions), v.recalcPositions());
58
+ }, M = ':root{--dialog-border-color: var(--color-line-1);--dialog-loading-duration: 10s;--top-dialog-footer-height: var(--top-forms-base-height_s)}html.with_dialog{overflow:hidden!important}a[data-to-view]{cursor:pointer}.ui-widget-overlay{background:#040404;opacity:.5;filter:Alpha(Opacity=50)}.ui-dialog{border-radius:8px;border:none;padding:0}.ui-dialog.ui-widget{border:none}.ui-dialog-titlebar{display:none}.ui-dialog .ui-dialog-content{padding:0;overflow:visible}.ui-dialog .project_name{word-break:break-all}.ui-dialog-content{--dialog-header-height: 50px;--dialog-layer-pageSelector: 0px}.ui-dialog-content-withPageSelector{--dialog-layer-pageSelector: 42px}.modal-header,.modal-body,.modal-footer{font-size:14px;position:relative}.modal-body{padding:var(--padding-default)}.modal-header{border-bottom:1px solid var(--dialog-border-color);height:var(--dialog-header-height);padding:0 var(--padding-default);display:flex;justify-content:space-between;align-items:center;gap:16px}.modal-header>*{padding:10px 0;font-size:16px}.modal-header>.top-title{margin:0;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1;order:50;display:flex;align-items:center}.modal-header>.top-title>div[class*=icon]{display:none}.modal-header>div:not(.top-title){order:60}.modal-header>div.close{--top-icon-color: var(--color-text-3);cursor:pointer;background:var(--color-layout-front-1);font-size:16px;order:100;animation-name:none!important}.modal-header>div.close:hover{--top-icon-color: var(--color-text-1)}.modal-header .links_icons{position:absolute;right:50px}.modal-header .links_icons [class*=icon-]{width:auto;height:auto;padding:0 5px;color:#d6dee0}.modal-header .links_icons [class*=icon-].active{color:var(--color-bg-warning-1)}.modal-layer-pageSelector{padding:0 10px!important}.modal-body{max-height:calc(var(--100vh) - var(--dialog-header-height) - 1px - var(--dialog-layer-pageSelector) - var(--top-dialog-footer-height, var(--dialog-footer-height)) - 1px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;flex-grow:1}.modal-body hr{margin:16px -15px}.modal-body h4{padding:0;margin:0 0 10px;line-height:normal}.modal-body .inner{padding:var(--padding-default);margin:0 calc(0px - var(--padding-default));position:relative}.modal-body .inner .bt{border-top:1px dashed var(--color-layout-front-primary-3);position:absolute;top:0;right:0;left:0}.modal-body .inner .bb{border-bottom:1px dashed var(--color-layout-front-primary-3);position:absolute;right:0;bottom:0;left:0}.modal-body .inner.color-1{background:var(--color-layout-front-primary-3);color:var(--color-text-1)}.modal-body .inner strong{color:var(--color-text-1)}.modal-body .comment{line-height:18px}.modal-footer{min-height:var(--top-dialog-footer-height, var(--dialog-footer-height));padding:var(--top-gap-2);display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:var(--top-gap-2)}.modal-footer .modal-footer-btn-left{margin-right:auto}.modal-footer>.btn.full_width,.modal-footer>.top-button.full_width{flex-grow:1;align-self:flex-end}.modal-footer-fullWith{flex-wrap:wrap}.modal-footer-fullWith>*{flex-grow:1}.modal-footer-fullWith>.top-info{flex-grow:5}.modal-footer-fullWith>*:empty{flex-grow:0}.ui-dialog-content>.modal-layer>[data-view-page]>input[type=submit]{position:absolute;visibility:hidden}.help_popup .modal-header{display:none}.help_popup .modal-header a{top:2px;z-index:10}.help_popup .modal-header .top-title{display:none}.modal-layer{overflow:hidden}.modal-layer a[data-top-icon]:empty{color:var(--color-text-4);text-decoration:none}.modal-layer>[data-view-page]>div>div.buttons{display:flex;white-space:nowrap}.modal-layer>[data-view-page]>div>div.buttons:empty{display:none}.modal-layer>[data-view-page]>div>div.buttons>div,.modal-layer>[data-view-page]>div>div.buttons>a{cursor:pointer;width:auto;height:auto;min-width:auto;min-height:auto;padding:10px 9px;color:var(--color-text-4)}.modal-layer>[data-view-page]>div>div.buttons>div:hover{color:var(--color-text-2)}.modal-layer>[data-view-page]>div>div.buttons>div.hidden{display:none!important}.ui-dialog-content[data-view-page-active]{display:flex!important;flex-direction:column;justify-items:stretch}.ui-dialog-content>.modal-layer{display:flex!important;align-items:stretch;position:relative}.ui-dialog-content.i-change-page>.modal-layer{overflow:hidden}.ui-dialog-content>.modal-layer>[data-view-page]{width:100%;position:relative;display:none;flex-direction:column;justify-content:space-between;animation:.3s cubic-bezier(.4,0,.2,1) forwards}.ui-dialog-content>.modal-layer>[data-view-page].active{display:flex}.ui-dialog-content>.modal-layer>[data-view-page].reverse{animation-direction:reverse}.ui-dialog-content>.modal-layer>[data-view-page].center-to-left,.ui-dialog-content>.modal-layer>[data-view-page].right-to-center{display:flex;position:absolute;inset:0}.ui-dialog-content>.modal-layer>[data-view-page].center-to-left>div,.ui-dialog-content>.modal-layer>[data-view-page].right-to-center>div{overflow:hidden}.ui-dialog-content>.modal-layer-header{border-bottom:1px solid var(--dialog-border-color);min-height:var(--dialog-header-height)}.ui-dialog-content>.modal-layer-header>[data-view-page]>.modal-header{border:none;background:none}.ui-dialog-content>.modal-layer-header>[data-view-page]>.modal-header>*{animation:.3s cubic-bezier(.4,0,.2,1) forwards}.ui-dialog-content>.modal-layer-header>[data-view-page].reverse>.modal-header>*{animation-direction:reverse}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>.top-title{animation-name:dialog-center-to-left-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>.top-title{animation-name:dialog-right-to-center-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>[class*=widget-]{animation-name:dialog-center-to-left-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>[class*=widget-]{animation-name:dialog-right-to-center-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>div{animation-name:dialog-center-to-left-header-icons}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>div{animation-name:dialog-right-to-center-header-icons}.ui-dialog-content>.modal-layer-body{border-radius:0 0 8px 8px;max-height:calc(var(--100vh) - var(--dialog-header-height) - var(--dialog-layer-pageSelector) - var(--toolbar-height));flex-grow:2}.ui-dialog-content.i-change-page>.modal-layer-body>[data-view-page]{background:var(--color-layout-front-1)}.ui-dialog-content>.modal-layer-body>[data-view-page].center-to-left{animation-name:dialog-center-to-left}.ui-dialog-content>.modal-layer-body>[data-view-page].right-to-center{animation-name:dialog-right-to-center}.ui-dialog-content .modal-footer .second_level{box-sizing:border-box;background:var(--color-layout-front-1);width:100%;min-height:25px;display:flex;align-items:center;justify-content:center}.ui-dialog-content .modal-footer .second_level input{border-radius:8px;width:100%;height:var(--top-forms-base-height);padding:var(--top-padding-1) var(--top-padding-3);box-sizing:border-box}.ui-dialog-content>.modal-layer-body>[data-view-page].i-load-data{pointer-events:none}.ui-dialog-content>.modal-layer-body>[data-view-page].i-load-data:before{content:" ";background:#378dc6;width:0;height:4px;position:absolute;top:0;left:0;z-index:100;animation:top-loadbar var(--dialog-loading-duration) forwards}.ui-dialog-content.modal-expanded{width:100vw!important;height:calc(var(--100vh) + 10px)!important}.modal-header>[data-widget]{padding:0 8px;position:absolute;inset:0;opacity:0;overflow:hidden;align-items:center;visibility:hidden;transition:opacity .3s;z-index:1}.modal-header>[data-widget=search] div.cancel{opacity:0;transform:translate(100%);transition:transform,opacity;transition-duration:.3s}[data-view-page].i-show-search .modal-header>:not([data-widget=search]){visibility:hidden}[data-view-page].i-show-search [data-widget=search]{visibility:visible;opacity:1}[data-view-page].i-show-search [data-widget=search] .cancel{transform:translate(0);opacity:1}[data-view-page]>.modal-header>*{transition:opacity .3s}[data-view-page].i-show-search>.modal-header>div.buttons{opacity:0}.modal-layer .top-popup-wrapper{height:100%!important}@keyframes dialog-center-to-left-header-title{0%{transform:translate(0);opacity:1}75%{opacity:0}to{transform:translate(-30%);opacity:0}}@keyframes dialog-right-to-center-header-title{0%{transform:translate(100%);opacity:0}25%{opacity:0}to{transform:translate(0);opacity:1}}@keyframes dialog-center-to-left-header-icons{0%{transform:translate(0);opacity:1}35%{transform:translate(-20%);opacity:0}to{trantransform:translateX(-20%);opacity:0}}@keyframes dialog-right-to-center-header-icons{0%{transform:translate(20%);opacity:0}65%{transform:translate(20%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes dialog-center-to-left{0%{transform:translate(0);filter:brightness(1)}to{transform:translate(-30%);filter:brightness(.9)}}@keyframes dialog-right-to-center{0%{transform:translate(100%);box-shadow:#0000001a 0 0 10px}to{transform:translate(0);box-shadow:#0003 0 0 10px}}@media only screen and (max-width: 1480px){.win_side_panel_opener{display:none}}@media only screen and (min-width: 1480px){.ui-dialog-content.with_side_panel{box-shadow:#0003 0 0 6px}.ui-dialog-content.with_side_panel .modal-layer-body{background:var(--color-layout-front-1)}[data-widget=side_panel]{--side_panel_width: calc((100vw - 900px)/2 - 28px) ;box-sizing:border-box;background:var(--color-layout-front-1);max-width:var(--side_panel_width);padding:18px;position:absolute;top:calc(var(--dialog-header-height) + 1px + var(--dialog-layer-pageSelector));bottom:calc(var(--dialog-footer-height) + 1px);z-index:-1;display:block;transition:.2s}.win_side_panel_left{border-radius:8px 0 0 8px;right:100%}.win_side_panel_right{border-radius:0 8px 8px 0;left:100%}.win_side_panel_closed.win_side_panel_left{right:calc(100% - var(--side_panel_width))}.win_side_panel_closed.win_side_panel_right{left:calc(100% - var(--side_panel_width))}[data-widget=side_panel] .template{display:block}[data-widget=side_panel] .template>.header,[data-widget=side_panel] .template>.footer{display:flex}.win_side_panel_opener{cursor:pointer;background:var(--color-cyan);color:#fff;padding:4px;position:absolute;top:20px}.win_side_panel_closed .win_side_panel_opener:not(:hover){opacity:.3}.win_side_panel_left .win_side_panel_opener{border-radius:4px 0 0 4px;right:100%}.win_side_panel_right .win_side_panel_opener{border-radius:0 6px 6px 0;left:100%}}@media only screen and (max-height: 900px){html.with_dialog{background:#f1f1f1;overflow:hidden}.ui-dialog.me-tightly{border-radius:0;height:auto!important;position:fixed;top:0!important;bottom:0!important}.ui-dialog.me-tightly .ui-dialog-content{min-height:100%!important}.ui-dialog.me-tightly>div>.modal-body{position:absolute;top:var(--dialog-header-height);right:0;left:0;bottom:var(--dialog-header-height)}.ui-dialog.me-tightly>div>.modal-body:last-child{bottom:0}.ui-dialog.me-tightly>div>.modal-footer{position:absolute;right:0;bottom:0;left:0}.ui-dialog.me-tightly .modal-layer-body{border-radius:0;min-height:0!important}.ui-dialog.me-tightly .modal-layer-body .modal-footer{min-height:unset}}', B = 'html.with_dialog body{height:var(--100vh);overflow:hidden}.ui-widget-overlay{height:calc(100% - var(--toolbar-height))}.ui-dialog{border-radius:0;width:auto!important;height:auto!important;position:fixed;inset:0!important}.ui-dialog-content{width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important}.modal-header>.top-title{text-align:center;font-size:14px}.modal-header>div.close{font-size:14px;order:1}.modal-header>div.close:before{content:""}.modal-body:last-child{bottom:0}.modal-footer{bottom:0}.modal-footer .second_level{padding:10px 8px}.modal-layer-body{min-height:0!important}.ui-dialog-content>.modal-layer-body{border-radius:0}.modal-body,.modal-footer{padding-right:12px;padding-left:12px}.modal-footer .btn:last-child{margin-right:12px}.modal-body .inner{padding:12px;margin:0 -12px;position:relative}', q = ".modal-menu-opener{order:1!important}.modal-menu-opener:before{--top-icon-size: 20px;--top-icon-color: #FFF;--top-icon-width: var(--top-icon-size);border-radius:50%;background:var(--color-bg-primary-1);padding:3px;transition:transform .1s}.modal-menu-opener:hover:before{background:var(--color-bg-primary-2)}.modal-menu-opener.top-active:before{background:var(--color-bg-primary-2);transform:scale(.8)}.modal-layer .top-popup-wrapper{background:transparent;width:auto!important;padding:0!important;margin:0!important;top:0!important;right:0!important;left:0!important;transition:background .3s}.modal-layer .top-popup-wrapper>.top-popup[class],.modal-layer .top-popup-wrapper.with_notch>.top-popup[class]{border-radius:8px;border:none;margin:12px!important;max-width:100%;max-height:calc(100% - 24px);inset:0 0 auto!important;overflow:auto;display:flex;flex-direction:column;opacity:1;transform:translateY(calc(-100% - 24px));transition:transform .3s}.modal-layer .top-popup>.top-popup_header{background:var(--color-theme-50)}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select{border:none}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select .text{color:#fff}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select .arrow{background:none}.modal-layer .top-popup-wrapper-shown:not(.top-popup-wrapper-closed){background:#34495e40}@media only screen and (min-width: 1480px){.ui-dialog-content.with_side_panel{box-shadow:#0003 0 0 6px}.ui-dialog-content.with_side_panel .modal-layer-body{background:var(--color-layout-front-1)}[data-widget=side_panel]{--side_panel_width: calc((100vw - 900px)/2 - 28px) ;box-sizing:border-box;background:var(--color-layout-front-1);max-width:var(--side_panel_width);padding:18px;display:block;position:absolute;top:51px;bottom:51px;z-index:-1;transition:.2s}.win_side_panel_left{border-radius:8px 0 0 8px;right:100%}.win_side_panel_right{border-radius:0 8px 8px 0;left:100%}.win_side_panel_closed.win_side_panel_left{right:calc(100% - var(--side_panel_width))}.win_side_panel_closed.win_side_panel_right{left:calc(100% - var(--side_panel_width))}[data-widget=side_panel] .template{display:block}[data-widget=side_panel] .template>.header,[data-widget=side_panel] .template>.footer{display:flex}.win_side_panel_opener{cursor:pointer;background:var(--color-cyan);color:#fff;padding:4px;position:absolute;top:20px}.win_side_panel_closed .win_side_panel_opener:not(:hover){opacity:.3}.win_side_panel_left .win_side_panel_opener{border-radius:4px 0 0 4px;right:100%}.win_side_panel_right .win_side_panel_opener{border-radius:0 6px 6px 0;left:100%}}", F = "html{--top-dialog-width: auto;--top-dialog-height: auto}.top-dialog{max-width:100vw}.top-dialog .modal-layer-body{height:var(--top-dialog-height)}", H = ".top-dialog{width:var(--top-dialog-width)!important}";
59
+ c.insertStyleToPage(M);
60
+ c.insertStyleToPage(B, "m");
61
+ c.insertStyleToPage(q, "pc");
62
+ c.insertStyleToPage(F);
63
+ c.insertStyleToPage(H, "pc");
64
+ let z, w = !1;
65
+ const I = () => {
66
+ $.extend($.ui.dialog.prototype.options, {
67
+ focus: (e) => {
68
+ var t;
69
+ e.target.focus(), (t = $("[autofocus]", e.target)[0]) == null || t.focus();
70
+ },
71
+ create: (e) => K(e.target),
72
+ open: (e) => X(e.target),
73
+ close: (e) => G(e.target),
74
+ modal: !0,
75
+ resizable: !1,
76
+ closeOnEscape: !1,
77
+ width: "auto",
78
+ minHeight: 0
79
+ }), $.ui.dialog.prototype._focusTabbable = $.noop, $.ui.dialog.prototype._moveToTopOriginal = $.ui.dialog.prototype._moveToTop, $.ui.dialog.prototype._moveToTop = function() {
80
+ this._moveToTopOriginal();
81
+ const e = $(this.element);
82
+ e.trigger("dialogsMoveToTop", [e]);
83
+ }, L(), w = !0;
84
+ }, S = (e) => {
85
+ var o, a, i, r;
86
+ const t = {};
87
+ return ((a = (o = e[0]) == null ? void 0 : o.dataset) == null ? void 0 : a.modal) === "false" && (t.modal = !1), (r = (i = e[0]) == null ? void 0 : i.dataset) != null && r.position && (t.position = JSON.parse(e[0].dataset.position)), t;
88
+ }, h = async (e, t, o) => {
89
+ if (!e.startsWith("dialog_")) return;
90
+ const a = y(e);
91
+ if (a && (a.isOpened.value = !0, t !== void 0 && (a.pageActive.value = t), o !== void 0 && (a.pageActiveNext.value = o), await T(), o)) {
92
+ const i = $("#" + e);
93
+ $('[data-view-page="' + o + '"]', i).length || await j(() => !$('[data-view-page="' + o + '"]', i).length);
94
+ }
95
+ }, K = (e) => {
96
+ var a, i;
97
+ var t = $(e), o = $(".modal-body", t);
98
+ A(o[0]), (i = (a = l.state).decoratorOnCreate) == null || i.call(a, e), R(e);
99
+ }, R = (e) => {
100
+ $(e).on("aftershow.top-menu-popup", "[data-top-popup]", (t, o) => {
101
+ l.get$pairPage(o).eq(1).prepend(o);
102
+ });
103
+ }, X = async (e) => {
104
+ var n;
105
+ var t = $(e), o = t.data("view-page-active");
106
+ const a = Number($(window).width());
107
+ c.state.documentClassModificators.set("top-dialog", "with_dialog");
108
+ const r = Number($(window).width()) - a;
109
+ Number($(document).height()) > Number($(window).height()) && $("html").css({ "margin-right": r + "px" }), E();
110
+ const d = y(t.attr("id"));
111
+ (n = d == null ? void 0 : d.emit) == null || n.call(d, "open", o);
112
+ }, G = async (e) => {
113
+ var r;
114
+ var t = $(e), o = t.attr("id"), a = t.data("view-page-active");
115
+ a && (m("vpn", l.state.viewPageN), m("view-" + o, null, !1), (l.state.viewPageN === 0 || l.state.viewPageN === 1) && m("vpn", null)), $(".ui-widget-overlay:visible").length || (c.state.documentClassModificators.delete("top-dialog"), $("html").css({ "margin-right": "" })), t.trigger("viewAfterClose", [t]);
116
+ const i = y(t.attr("id"));
117
+ i && (i.isOpened.value = !1, (r = i.emit) == null || r.call(i, "close", a), i.onCloseOnce && (i.onCloseOnce(i.props, a), i.onCloseOnce = void 0)), window.dispatchEvent(new Event("resize"));
118
+ }, E = () => {
119
+ $(".ui-dialog:visible > .ui-dialog-content").each((e, t) => {
120
+ const o = $(t), a = $(".modal-body:visible", o), i = o.closest(".ui-dialog");
121
+ if (!a.length) return;
122
+ const r = S(o);
123
+ r.position ??= { of: window }, o.dialog("option", r), i.removeClass("me-tightly"), Number(i.height()) > Number($(window).height()) && i.addClass("me-tightly");
124
+ });
125
+ }, J = async (e, t) => {
126
+ const a = /(\w+)[=-]([\w-]+)(?::([\w.:-]+))?/g.exec(e);
127
+ if (a) {
128
+ const i = a[1], r = a[2], d = a[3];
129
+ let n = [];
130
+ d && (n = d.split(":")), await b(i, r, n, t);
131
+ }
132
+ }, b = async (e, t, o, a, i) => {
133
+ w || await new Promise((d, n) => {
134
+ const s = setInterval(() => {
135
+ w && (clearInterval(s), d());
136
+ }, 10);
137
+ }), await T();
138
+ let r;
139
+ if (typeof e == "object" ? r = e : r = $("#" + e), !r.length && typeof e == "string" && l.state.load) {
140
+ await l.state.load(e), b(e, t, o, a, i);
141
+ return;
142
+ }
143
+ if (await x(r, t, o, a), r.is(".ui-dialog-content"))
144
+ r.dialog("open");
145
+ else {
146
+ const d = S(r);
147
+ r.dialog(d);
148
+ }
149
+ i && i(r);
150
+ }, x = async (e, t, o, a) => {
151
+ if (t === void 0 && (t = e.data("view-page-active")), t != e.data("view-page-active")) {
152
+ var i = C(e);
153
+ i && await W(100);
154
+ }
155
+ o === void 0 && (o = []), await h(e.attr("id"), void 0, t);
156
+ var r = $("> .modal-layer", e), d = $("> .active", r), n = $('> [data-view-page="' + t + '"]', r), s = o.join(":");
157
+ if (a === void 0 && (a = "next", n.data("order") < d.data("order") && (a = "prev")), !!n.length) {
158
+ if (e.data("view-page-active", t), n.is(".active")) {
159
+ n.data("view-page-args") != s && n.data("view-page-args", s), P(e, n, t, o), f(e, n, t, o);
160
+ return;
161
+ }
162
+ switch (n.data("view-page-args", s), $(".top-popup-wrapper", d).length && V.close($(".top-popup-wrapper", d)[0]), n.closest(".ui-dialog").is(":hidden") && (a = "none"), d.length || (a = "none"), n.is(":visible") && (a = "none"), a) {
163
+ case "prev":
164
+ n.each((g, p) => {
165
+ $(p).insertBefore($(p).siblings(".active"));
166
+ }), d.addClass("right-to-center reverse"), n.addClass("center-to-left reverse");
167
+ break;
168
+ case "next":
169
+ n.each((g, p) => {
170
+ $(p).insertAfter($(p).siblings(".active"));
171
+ }), d.addClass("center-to-left"), n.addClass("right-to-center");
172
+ break;
173
+ }
174
+ if (e.attr("view-page-active", t), d.removeClass("active"), n.addClass("active"), P(e, n, t, o), a) {
175
+ e.addClass("i-change-page");
176
+ const g = Number(n.css("animation-duration").replace("s", "")) * 1e3;
177
+ z = setTimeout(function() {
178
+ h(e.attr("id"), t, ""), C(e), f(e, n, t, o);
179
+ }, g);
180
+ } else
181
+ await h(e.attr("id"), t, ""), f(e, n, t, o);
182
+ }
183
+ }, U = (e) => {
184
+ var t = "", o = $("> .modal-layer", e), a = $("> .active", o).eq(0), i = a.prev("[data-view-page]");
185
+ t = i.data("view-page"), t ? x(e, t, void 0, "prev") : e.dialog("close");
186
+ }, u = /* @__PURE__ */ new Set(), P = (e, t, o, a) => {
187
+ const i = e.attr("id") + t.eq(0).data("view-page") + o + a.join();
188
+ u.has(i) || (u.add(i), setTimeout(function() {
189
+ u.delete(i), e.trigger("viewBeforeOpen", [e, t, o, a]);
190
+ }));
191
+ }, f = (e, t, o, a) => {
192
+ setTimeout(function() {
193
+ e.trigger("viewAfterOpen", [e, t, o, a]);
194
+ });
195
+ }, O = (e) => e.is(".i-change-page"), C = (e) => {
196
+ if (!O(e)) return !1;
197
+ clearTimeout(z);
198
+ var t = $("> .modal-layer", e), o = e.data("view-page-active");
199
+ return e.removeClass("i-change-page"), $("> [data-view-page]", t).removeClass("center-to-left right-to-center reverse active"), $('> [data-view-page="' + o + '"]', t).addClass("active"), !0;
200
+ }, Y = function(e) {
201
+ const t = $("#" + e);
202
+ t.dialog("instance") && t.dialog("close");
203
+ }, Z = (e, t, o) => {
204
+ e.is("[data-view-page]") || (e = $("[data-view-page]:visible", e)), t ? (o !== void 0 && e.each((a, i) => {
205
+ i.style.setProperty("--dialog-loading-duration", o + "s");
206
+ }), e.addClass("i-load-data")) : (e.removeClass("i-load-data"), e.each((a, i) => {
207
+ i.style.setProperty("--dialog-loading-duration", "10s");
208
+ }));
209
+ }, Q = (e) => e.is(".i-load-data"), v = {
210
+ updatePageVue: h,
211
+ recalcPositions: E,
212
+ toViewDirty: J,
213
+ toView: b,
214
+ toViewPage: x,
215
+ toPrevPage: U,
216
+ setLoading: Z,
217
+ isLoading: Q,
218
+ inAnimation: O,
219
+ close: Y
220
+ };
221
+ I();
222
+ export {
223
+ v as TopDialogUtils
224
+ };
225
+ //# sourceMappingURL=utils-BvHwHAyQ.es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-BvHwHAyQ.es.js","sources":["../../src/storybook/jquery.ts","../../src/components/dialog/lib/utils.globalEvents.ts","../../src/components/dialog/lib/utils.ts"],"sourcesContent":["/**\r\n * см. /.storybook/preview-head.html\r\n */\r\nexport default $;\r\n","import { TopDialogUtils } from './utils';\r\nimport { TopDialogWorker } from './worker';\r\nimport { querySelectorVisible } from '@/core/utils/dom';\r\nimport type { $el } from '@/components/types';\r\n\r\nlet inited = false;\r\n\r\n/**\r\n * Инициализация глобальных событий для диалоговых окон\r\n *\r\n * Проивзодится один раз при подклчюении диалогового окна\r\n *\r\n * События не размонитруются\r\n */\r\nexport const initDialogGlobalEvents = () => {\r\n\tif (inited) return;\r\n\tinited = true;\r\n\r\n\t/**\r\n\t * Закрытие диалога по Esc\r\n\t */\r\n\tdocument.addEventListener('keydown', (e) => {\r\n\t\tif (e.key !== 'Escape') return;\r\n\t\tif (!e.target) return;\r\n\r\n\t\tconst el = e.target as HTMLElement;\r\n\r\n\t\t// событие произошло вне диалогового окна\r\n\t\tif (!el.closest('.ui-dialog')) return;\r\n\r\n\t\tif (el.contentEditable === 'true' || el.contentEditable === 'plaintext-only') return;\r\n\r\n\t\t// не закрывать окно при открытом TopPopup\r\n\t\tif (querySelectorVisible(document.documentElement, '.top-popup-wrapper')) return;\r\n\r\n\t\t// не закрывать окно при работе с jquery autocomplete\r\n\t\tif (el.classList.contains('autocomplete')) return;\r\n\r\n\t\t// не закрывать окно при открытом fancybox\r\n\t\tif (querySelectorVisible(document.documentElement, '.fancybox-container')) return;\r\n\r\n\t\t$('.ui-dialog-content:visible:last').dialog('close');\r\n\t});\r\n\r\n\t/**\r\n\t * Закрытие диалога по кнопке закрыть\r\n\t */\r\n\t$(document).on('click', '[data-action=\"top-dialog-close\"]', (e) => {\r\n\t\te.preventDefault();\r\n\r\n\t\t// // навигация без истории\r\n\t\t// var $dialog = $(this).closest('.ui-dialog-content');\r\n\t\t// var viewName = $dialog.attr('id');\r\n\t\t// var pageName = getHash('view-' + viewName);\r\n\t\t// if (!pageName) {\r\n\t\t// \ttoPrevPage($dialog);\r\n\t\t//\r\n\t\t// \treturn;\r\n\t\t// }\r\n\t\t//\r\n\t\t// // навигация по истории\r\n\t\t// if (Core.state.isMobile && history.length > 1 && $(this).closest('.modal-layer').length) {\r\n\t\t// \tvar href = location.href;\r\n\t\t//\r\n\t\t// \thistory.go(-1);\r\n\t\t//\r\n\t\t// \tsetTimeout(() => {\r\n\t\t// \t\t// это первая страница в истории вкладки браузера\r\n\t\t// \t\tif (href === location.href) $(e.target).closest('.ui-dialog-content').dialog('close');\r\n\t\t// \t});\r\n\t\t// } else {\r\n\t\t// \t$(this).closest('.ui-dialog-content').dialog('close');\r\n\t\t// }\r\n\r\n\t\tconst el = e.target.closest('[data-action=\"top-dialog-close\"]');\r\n\r\n\t\tconst elDialog = el.closest('.ui-dialog-content');\r\n\t\tif (!elDialog) return;\r\n\r\n\t\tconst $dialog = $(elDialog);\r\n\r\n\t\t// если к кнопке привязана ссылка, диалоговое окно не нужно закрывать\r\n\t\tconst toView = el.dataset.toView;\r\n\r\n\t\tif (toView == 'toPrevPage()') {\r\n\t\t\tTopDialogUtils.toPrevPage($dialog);\r\n\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (toView) {\r\n\t\t\tvar viewNameAndPageLink = toView.split('-');\r\n\t\t\tvar viewName = viewNameAndPageLink.shift();\r\n\t\t\tvar pageLink = viewNameAndPageLink.join('-');\r\n\r\n\t\t\tvar $toDialog = $('#' + viewName);\r\n\t\t\tvar $toPage = $('[data-view-page=\"' + pageLink + '\"]', $toDialog);\r\n\t\t\tif (!$toPage.is(':visible')) {\r\n\t\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, 'prev');\r\n\r\n\t\t\t\t// добавляет текущую страницу в историю браузера\r\n\t\t\t\tlocation.hash = hash;\r\n\r\n\t\t\t\t// // не убирает кнопку \"Вперед\" в браузере\r\n\t\t\t\t// history.replaceState(null, '', hash);\r\n\t\t\t\t// toViewDirty(toView, 'prev');\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t$dialog.dialog('close');\r\n\t});\r\n\r\n\t/**\r\n\t * Все submit должны обрабатываться через js\r\n\t */\r\n\t$(document).on('submit', '.modal-body > form, .modal-layer-body > form', function (e) {\r\n\t\te.preventDefault();\r\n\t});\r\n\r\n\t/**\r\n\t * Выполнение действия по нажатию Enter\r\n\t *\r\n\t * @todo Убрать `.searcher`\r\n\t */\r\n\t$(document).on('keypress', '.ui-dialog .modal-body :input:not(.searcher), .ui-dialog .modal-body [contenteditable]', function (e) {\r\n\t\t// if (e.keyCode !== 10 && e.key !== 'ENTER') return;\r\n\t\tif (e.key !== 'ENTER') return;\r\n\r\n\t\t// не выполнять submit действий при работе с jquery autocomplete\r\n\t\tif (e.target.classList.contains('autocomplete')) {\r\n\t\t\te.preventDefault();\r\n\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// реализация submit по ctrl + Enter\r\n\t\tif (e.target.tagName === 'TEXTAREA') {\r\n\t\t\tif (!e.ctrlKey && !e.metaKey) return;\r\n\r\n\t\t\tconst elForm = e.target.closest('form');\r\n\r\n\t\t\tif (elForm) {\r\n\t\t\t\tlet elSubmit = $(':submit:visible', elForm)[0];\r\n\t\t\t\tif (!elSubmit) elSubmit = $(':submit:visible', elForm)[0];\r\n\r\n\t\t\t\telSubmit?.click();\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\t/**\r\n\t * Закрытие диалога по клику вне окна\r\n\t */\r\n\t$(document).on('click', '.ui-widget-overlay', function () {\r\n\t\tlet $dialogWrapper: $el | undefined = undefined;\r\n\t\tlet topZIndex = 0;\r\n\r\n\t\t$('.ui-dialog:visible').each((_index, el) => {\r\n\t\t\tconst zIndex = Number($(el).css('z-index'));\r\n\t\t\tif (zIndex < topZIndex) return;\r\n\r\n\t\t\t$dialogWrapper = $(el);\r\n\t\t\ttopZIndex = zIndex;\r\n\t\t});\r\n\r\n\t\tif ($dialogWrapper) {\r\n\t\t\t$('.ui-dialog-content', $dialogWrapper).dialog('close');\r\n\t\t}\r\n\t});\r\n\r\n\t$(window).on('resize', TopDialogUtils.recalcPositions);\r\n\tTopDialogUtils.recalcPositions();\r\n};\r\n","import 'jquery';\r\nimport { nextTick } from 'vue';\r\n\r\nimport Core from '@/core/core/core';\r\nimport { TopPopupWorker } from '@/components/popup/worker';\r\nimport { sleep, waitWhile } from '@/core/utils/system';\r\nimport { setHash } from '@/core/utils/route';\r\nimport { connectScrollShadow } from '@/core/utils/scroll';\r\n\r\nimport type { MoveDirection } from './types';\r\nimport { TopDialogWorker } from './worker';\r\nimport { initDialogGlobalEvents } from './utils.globalEvents';\r\nimport { getDialogWorker } from '../dialog/dialogs/dialogs.vue';\r\n\r\nimport css from '../dialog/style/dialog.css?inline';\r\nimport cssM from '../dialog/style/dialog.m.css?inline';\r\nimport cssPC from '../dialog/style/dialog.pc.css?inline';\r\nimport cssModern from '../dialog/style/modern/dialog.css?inline';\r\nimport cssModernPC from '../dialog/style/modern/dialog.pc.css?inline';\r\nimport type { $el } from '@/components/types';\r\n\r\nCore.insertStyleToPage(css);\r\nCore.insertStyleToPage(cssM, 'm');\r\nCore.insertStyleToPage(cssPC, 'pc');\r\nCore.insertStyleToPage(cssModern);\r\nCore.insertStyleToPage(cssModernPC, 'pc');\r\n\r\nlet timerClearAnimation: NodeJS.Timeout;\r\nlet isInited = false;\r\n\r\nconst init = () => {\r\n\t// if(window.history && history.length == 1) setHash('vpn', null);\r\n\r\n\t$.extend($.ui.dialog.prototype.options, {\r\n\t\tfocus: (e: any) => {\r\n\t\t\te.target.focus();\r\n\r\n\t\t\t$('[autofocus]', e.target)[0]?.focus();\r\n\r\n\t\t\t// setTimeout(function () {\r\n\t\t\t// \tif ($('[autofocus]', e.target).length) return;\r\n\t\t\t// \t$('.modal-footer button:first, .modal-body :input:first', e.target).eq(0).focus();\r\n\t\t\t//\r\n\t\t\t// \t// fix пропадающего autocomplete при нажатии на scroll в autocomplete\r\n\t\t\t// \t$(e.target).add($(e.target).closest('.ui-dialog')).removeAttr('tabindex');\r\n\t\t\t// });\r\n\t\t},\r\n\t\tcreate: (e: any) => onCreate(e.target),\r\n\t\topen: (e: any) => onOpen(e.target),\r\n\t\tclose: (e: any) => onClose(e.target),\r\n\t\tmodal: true,\r\n\t\tresizable: false,\r\n\t\tcloseOnEscape: false,\r\n\t\twidth: 'auto',\r\n\t\tminHeight: 0,\r\n\t});\r\n\r\n\t$.ui.dialog.prototype._focusTabbable = $.noop;\r\n\r\n\t$.ui.dialog.prototype._moveToTopOriginal = $.ui.dialog.prototype._moveToTop;\r\n\t$.ui.dialog.prototype._moveToTop = function () {\r\n\t\tthis._moveToTopOriginal();\r\n\r\n\t\tconst $dialog = $(this.element);\r\n\t\t$dialog.trigger('dialogsMoveToTop', [$dialog]);\r\n\t};\r\n\r\n\tinitDialogGlobalEvents();\r\n\r\n\tisInited = true;\r\n};\r\n\r\n/**\r\n * Получить настройки диалогового окна из Vue компонента\r\n */\r\nconst genVueOptions = ($dialog: $el) => {\r\n\tconst options: {\r\n\t\tmodal?: boolean,\r\n\t\tposition?: any,\r\n\t} = {};\r\n\r\n\tif ($dialog[0]?.dataset?.modal === 'false') options.modal = false;\r\n\tif ($dialog[0]?.dataset?.position) options.position = JSON.parse($dialog[0].dataset.position);\r\n\r\n\treturn options;\r\n};\r\n\r\n/**\r\n * Сменить состояние диалогового окна Vue\r\n */\r\nconst updatePageVue = async (dialogId: string, pageName?: string, pageNameNext?: string) => {\r\n\tif (!dialogId.startsWith('dialog_')) return;\r\n\r\n\tconst dialog = getDialogWorker(dialogId);\r\n\tif (!dialog) return;\r\n\r\n\tdialog.isOpened.value = true;\r\n\tif (pageName !== undefined) dialog.pageActive.value = pageName;\r\n\tif (pageNameNext !== undefined) dialog.pageActiveNext.value = pageNameNext;\r\n\r\n\tawait nextTick();\r\n\r\n\tif (pageNameNext) {\r\n\t\tconst $dialog = $('#' + dialogId);\r\n\t\tconst $nextPage = $('[data-view-page=\"' + pageNameNext + '\"]', $dialog);\r\n\r\n\t\tif (!$nextPage.length) {\r\n\t\t\tawait waitWhile(() => !$('[data-view-page=\"' + pageNameNext + '\"]', $dialog).length);\r\n\t\t}\r\n\t}\r\n};\r\n\r\n/**\r\n * Callback for jQuery dialog onCreate\r\n */\r\nconst onCreate = (elDialog: HTMLElement) => {\r\n\tvar $dialog = $(elDialog);\r\n\tvar $dialogBody = $('.modal-body', $dialog);\r\n\r\n\tconnectScrollShadow($dialogBody[0]);\r\n\r\n\tTopDialogWorker.state.decoratorOnCreate?.(elDialog);\r\n\r\n\tinitPopup(elDialog);\r\n};\r\n\r\n/**\r\n * Инициирование событий TopPopup в диалоговом окне\r\n */\r\nconst initPopup = (elDialog: HTMLElement) => {\r\n\t$(elDialog).on('aftershow.top-menu-popup', '[data-top-popup]', (_e, $popup) => {\r\n\t\t// перенести popup в корневой элемент страницы диалогового окна\r\n\t\tconst $pageContent = TopDialogWorker.get$pairPage($popup).eq(1);\r\n\t\t$pageContent.prepend($popup);\r\n\t});\r\n};\r\n\r\n/**\r\n * Callback for jQuery dialog onOpen\r\n */\r\nconst onOpen = async (elDialog: HTMLElement) => {\r\n\tvar $dialog = $(elDialog);\r\n\tvar pageName = $dialog.data('view-page-active');\r\n\r\n\tconst w1 = Number($(window).width());\r\n\r\n\tCore.state.documentClassModificators.set('top-dialog', 'with_dialog');\r\n\r\n\tconst w2 = Number($(window).width());\r\n\r\n\tconst scrollBarWidth = w2 - w1;\r\n\tif (Number($(document).height()) > Number($(window).height())) $('html').css({ 'margin-right': scrollBarWidth + 'px' });\r\n\r\n\trecalcPositions();\r\n\r\n\tconst dialog = getDialogWorker($dialog.attr('id') as string);\r\n\tdialog?.emit?.('open', pageName);\r\n};\r\n\r\n/**\r\n * Callback for jQuery dialog onClose\r\n */\r\nconst onClose = async (elDialog: HTMLElement) => {\r\n\tvar $dialog = $(elDialog);\r\n\r\n\tvar viewName = $dialog.attr('id');\r\n\tvar pageName = $dialog.data('view-page-active');\r\n\tif (pageName) {\r\n\t\tsetHash('vpn', TopDialogWorker.state.viewPageN);\r\n\t\tsetHash('view-' + viewName, null, false);\r\n\r\n\t\tif (TopDialogWorker.state.viewPageN === 0 || TopDialogWorker.state.viewPageN === 1) setHash('vpn', null);\r\n\t}\r\n\r\n\tif (!$('.ui-widget-overlay:visible').length){\r\n\t\tCore.state.documentClassModificators.delete('top-dialog');\r\n\r\n\t\t$('html').css({ 'margin-right': '' });\r\n\t}\r\n\r\n\t$dialog.trigger('viewAfterClose', [$dialog]);\r\n\r\n\tconst dialog = getDialogWorker($dialog.attr('id') as string);\r\n\tif (dialog) {\r\n\t\tdialog.isOpened.value = false;\r\n\t\tdialog.emit?.('close', pageName);\r\n\r\n\t\tif (dialog.onCloseOnce) {\r\n\t\t\tdialog.onCloseOnce(dialog.props, pageName);\r\n\t\t\tdialog.onCloseOnce = undefined;\r\n\t\t}\r\n\t}\r\n\r\n\t// после закрытия диалога может потребоваться пересчет позиций элементов\r\n\twindow.dispatchEvent(new Event('resize'));\r\n};\r\n\r\n/**\r\n * Пересчитать положения и размеры открытых диалоговых окон\r\n */\r\nconst recalcPositions = () => {\r\n\t$('.ui-dialog:visible > .ui-dialog-content').each((_index, eldDialog: HTMLElement) => {\r\n\t\tconst $dialog = $(eldDialog);\r\n\t\tconst $dialogBody = $('.modal-body:visible', $dialog);\r\n\t\tconst $ui = $dialog.closest('.ui-dialog');\r\n\r\n\t\tif (!$dialogBody.length) return;\r\n\r\n\t\tconst options = genVueOptions($dialog);\r\n\r\n\t\toptions.position ??= { of: window };\r\n\r\n\t\t$dialog.dialog('option', options);\r\n\r\n\t\t$ui.removeClass('me-tightly');\r\n\t\tif (Number($ui.height()) > Number($(window).height())) $ui.addClass('me-tightly');\r\n\t});\r\n};\r\n\r\n// переход к view page по неразобранной ссылке в формате: {viewName}-{pageName}[:args]\r\nconst toViewDirty = async (toViewPageName: string, moveDirection?: MoveDirection) => {\r\n\tconst regexp = /(\\w+)[=-]([\\w-]+)(?::([\\w.:-]+))?/g;\r\n\tconst toViewParts = regexp.exec(toViewPageName);\r\n\tif (toViewParts) {\r\n\t\tconst viewName = toViewParts[1];\r\n\t\tconst pageName = toViewParts[2];\r\n\t\tconst argsString = toViewParts[3];\r\n\r\n\t\tlet args: string[] = [];\r\n\t\tif (argsString) args = argsString.split(':');\r\n\r\n\t\tawait toView(viewName, pageName, args, moveDirection);\r\n\t}\r\n};\r\n\r\n/**\r\n * Открыть диалоговое окно, возможно указать нужную страницу\r\n * @param {string|$} viewNameOr$Dialog - id страницы окна или jQuery элемент окна\r\n * @param {?string} pageName - имя страницы\r\n * @param {?Array<any>} args - аргументы, набор проивзольных параметров, которые могут обрабатываться каждым окном по своему\r\n * @param {?Function} callback - функция, которая будет запущена после октытия страницы\r\n */\r\nconst toView = async (\r\n\tviewNameOr$Dialog: $el | string,\r\n\tpageName?: string,\r\n\targs?: string[],\r\n\tmoveDirection?: MoveDirection,\r\n\tcallback?: Function,\r\n) => {\r\n\tif (!isInited) {\r\n\t\tawait new Promise<void>((resolve, _reject) => {\r\n\t\t\tconst timer = setInterval(() => {\r\n\t\t\t\tif (!isInited) return;\r\n\r\n\t\t\t\tclearInterval(timer);\r\n\r\n\t\t\t\tresolve();\r\n\t\t\t}, 10);\r\n\t\t});\r\n\t}\r\n\r\n\tawait nextTick();\r\n\r\n\tlet $dialog: $el;\r\n\tif (typeof (viewNameOr$Dialog) === 'object') {\r\n\t\t$dialog = viewNameOr$Dialog;\r\n\t} else {\r\n\t\t$dialog = $('#' + viewNameOr$Dialog);\r\n\t}\r\n\r\n\t// Диалоговое окно еще не загружено\r\n\tif (!$dialog.length && typeof (viewNameOr$Dialog) == 'string' && TopDialogWorker.state.load) {\r\n\t\tawait TopDialogWorker.state.load(viewNameOr$Dialog);\r\n\r\n\t\ttoView(viewNameOr$Dialog, pageName, args, moveDirection, callback);\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\tawait toViewPage($dialog, pageName, args, moveDirection);\r\n\r\n\tif ($dialog.is('.ui-dialog-content')) {\r\n\t\t// var zIndexMax = 0;\r\n\t\t// $.map($('.ui-dialog'), function (el) {\r\n\t\t// \tvar zIndex = $(el).css('z-index') * 1;\r\n\t\t// \tif (zIndex > zIndexMax) zIndexMax = zIndex;\r\n\t\t// });\r\n\t\t//\r\n\t\t// if ($dialog.is(':hidden')) $dialog.dialog('open');\r\n\t\t//\r\n\t\t// var $dialogWrapper = $dialog.parent();\r\n\t\t// var $dialogOverlay = $dialogWrapper.next();\r\n\t\t//\r\n\t\t// if ($dialogWrapper.css('z-index') * 1 < zIndexMax) {\r\n\t\t// \t$dialogWrapper.css('z-index', zIndexMax + 2);\r\n\t\t// \t$dialogOverlay.css('z-index', zIndexMax + 1);\r\n\t\t// }\r\n\r\n\t\t$dialog.dialog('open');\r\n\t} else {\r\n\t\tconst options = genVueOptions($dialog);\r\n\r\n\t\t$dialog.dialog(options);\r\n\t}\r\n\r\n\tif (callback) callback($dialog);\r\n};\r\n\r\nconst toViewPage = async ($dialog: $el, pageName?: string, args?: string[], moveDirection?: MoveDirection) => {\r\n\tif (pageName === undefined) pageName = $dialog.data('view-page-active') as string;\r\n\r\n\tif (pageName != $dialog.data('view-page-active')) {\r\n\t\tvar stopped = stopAnimations($dialog);\r\n\t\tif (stopped) await sleep(100);\r\n\t}\r\n\r\n\tif (args === undefined) args = [];\r\n\r\n\tawait updatePageVue($dialog.attr('id') as string, undefined, pageName);\r\n\r\n\tvar $modalLayers = $('> .modal-layer', $dialog);\r\n\tvar $currentPage = $('> .active', $modalLayers);\r\n\tvar $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\r\n\tvar argsString = args.join(':');\r\n\r\n\tif (moveDirection === undefined) {\r\n\t\tmoveDirection = 'next';\r\n\t\tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\r\n\t}\r\n\r\n\tif (!$nextPage.length) return;\r\n\r\n\t$dialog.data('view-page-active', pageName);\r\n\r\n\t// запрашиваемая страница уже открыта\r\n\tif ($nextPage.is('.active')) {\r\n\t\tif ($nextPage.data('view-page-args') != argsString) {\r\n\t\t\t$nextPage.data('view-page-args', argsString);\r\n\r\n\t\t\t// dialogs.beforeOpenViewPage($dialog, $nextPage, pageName, args);\r\n\t\t\t// dialogs.afterOpenViewPage($dialog, $nextPage, pageName, args);\r\n\t\t}\r\n\r\n\t\tbeforeOpenViewPage($dialog, $nextPage, pageName, args);\r\n\t\tafterOpenViewPage($dialog, $nextPage, pageName, args);\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\t$nextPage.data('view-page-args', argsString);\r\n\r\n\tif ($('.top-popup-wrapper', $currentPage).length) {\r\n\t\tTopPopupWorker.close($('.top-popup-wrapper', $currentPage)[0]);\r\n\t}\r\n\r\n\tif ($nextPage.closest('.ui-dialog').is(':hidden')) moveDirection = 'none';\r\n\tif (!$currentPage.length) moveDirection = 'none';\r\n\tif ($nextPage.is(':visible')) moveDirection = 'none';\r\n\tswitch (moveDirection) {\r\n\t\tcase 'prev':\r\n\t\t\t$nextPage.each((_index, el) => {\r\n\t\t\t\t$(el).insertBefore($(el).siblings('.active'));\r\n\t\t\t});\r\n\r\n\t\t\t$currentPage.addClass('right-to-center reverse');\r\n\t\t\t$nextPage.addClass('center-to-left reverse');\r\n\r\n\t\t\tbreak;\r\n\t\tcase 'next':\r\n\t\t\t$nextPage.each((_index, el) => {\r\n\t\t\t\t$(el).insertAfter($(el).siblings('.active'));\r\n\t\t\t});\r\n\r\n\t\t\t$currentPage.addClass('center-to-left');\r\n\t\t\t$nextPage.addClass('right-to-center');\r\n\r\n\t\t\tbreak;\r\n\t}\r\n\r\n\t$dialog.attr('view-page-active', pageName);\r\n\r\n\t$currentPage.removeClass('active');\r\n\t$nextPage.addClass('active');\r\n\r\n\tbeforeOpenViewPage($dialog, $nextPage, pageName, args);\r\n\r\n\tif (moveDirection) {\r\n\t\t$dialog.addClass('i-change-page');\r\n\t\tconst delay = Number($nextPage.css('animation-duration').replace('s', '')) * 1000;\r\n\r\n\t\ttimerClearAnimation = setTimeout(function () {\r\n\t\t\tupdatePageVue($dialog.attr('id') as string, pageName, '');\r\n\t\t\tstopAnimations($dialog);\r\n\t\t\tafterOpenViewPage($dialog, $nextPage, pageName, args);\r\n\t\t}, delay);\r\n\t} else {\r\n\t\tawait updatePageVue($dialog.attr('id') as string, pageName, '');\r\n\t\tafterOpenViewPage($dialog, $nextPage, pageName, args);\r\n\t}\r\n};\r\n\r\n/**\r\n * К предыдущему представлению\r\n */\r\nconst toPrevPage = ($dialog: $el) => {\r\n\tvar prevPageName = '';\r\n\r\n\tvar $modalLayers = $('> .modal-layer', $dialog);\r\n\tvar $currentPage = $('> .active', $modalLayers).eq(0);\r\n\tvar $prevPage = $currentPage.prev('[data-view-page]');\r\n\tprevPageName = $prevPage.data('view-page');\r\n\r\n\tif (prevPageName) {\r\n\t\ttoViewPage($dialog, prevPageName, undefined, 'prev');\r\n\t} else {\r\n\t\t$dialog.dialog('close');\r\n\t}\r\n};\r\n\r\n/**\r\n * Для обработки событий вне vue\r\n */\r\nconst beforeOpenViewPageTimers = new Set();\r\nconst beforeOpenViewPage = ($dialog: $el, $page: $el, pageName: string, args: string[]) => {\r\n\t// группировка цепочки событий\r\n\t// запрос на открытие страницы может выполняться несколько раз, чаще такое может быть при открытии, загрузке и переходе сразу к нужной странице\r\n\tconst eventKey = $dialog.attr('id') + $page.eq(0).data('view-page') + pageName + args.join();\r\n\r\n\tif (beforeOpenViewPageTimers.has(eventKey)) return;\r\n\tbeforeOpenViewPageTimers.add(eventKey);\r\n\r\n\tsetTimeout(function () {\r\n\t\tbeforeOpenViewPageTimers.delete(eventKey);\r\n\t\t$dialog.trigger('viewBeforeOpen', [$dialog, $page, pageName, args]);\r\n\t});\r\n};\r\n\r\n/**\r\n * Для обработки событий вне vue\r\n */\r\nconst afterOpenViewPage = ($dialog: $el, $page: $el, pageName: string, args: string[]) => {\r\n\tsetTimeout(function () {\r\n\t\t$dialog.trigger('viewAfterOpen', [$dialog, $page, pageName, args]);\r\n\t});\r\n};\r\n\r\n/**\r\n * Получить состояние: Диалоговое окно находится в состоянии смены страницы\r\n */\r\nconst inAnimation = ($dialog: $el) => {\r\n\treturn $dialog.is('.i-change-page');\r\n};\r\n\r\n/**\r\n * Остановить анимацию смены страницы\r\n *\r\n * @returns Вернет true, если анимация производилась и была остановлена\r\n */\r\nconst stopAnimations = ($dialog: $el) => {\r\n\tif (!inAnimation($dialog)) return false;\r\n\r\n\tclearTimeout(timerClearAnimation);\r\n\r\n\tvar $modalLayers = $('> .modal-layer', $dialog);\r\n\r\n\tvar pageName = $dialog.data('view-page-active');\r\n\t$dialog.removeClass('i-change-page');\r\n\t$('> [data-view-page]', $modalLayers).removeClass('center-to-left right-to-center reverse active');\r\n\t$('> [data-view-page=\"' + pageName + '\"]', $modalLayers).addClass('active');\r\n\r\n\treturn true;\r\n};\r\n\r\n/**\r\n * Закрыть диалоговое окно\r\n */\r\nconst close = function (dialogId: string) {\r\n\tconst $dialog = $('#' + dialogId);\r\n\r\n\tif (!$dialog.dialog('instance')) return;\r\n\r\n\t$dialog.dialog('close');\r\n};\r\n\r\n/**\r\n * Управление props.isLoading\r\n */\r\nconst setLoading = ($page: $el, isLoading: boolean, duration?: number) => {\r\n\tif (!$page.is('[data-view-page]')) $page = $('[data-view-page]:visible', $page);\r\n\r\n\tif (isLoading) {\r\n\t\tif (duration !== undefined) {\r\n\t\t\t$page.each((_index, el) => {\r\n\t\t\t\tel.style.setProperty('--dialog-loading-duration', duration + 's');\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t$page.addClass('i-load-data');\r\n\t} else {\r\n\t\t$page.removeClass('i-load-data');\r\n\r\n\t\t$page.each((_index, el) => {\r\n\t\t\tel.style.setProperty('--dialog-loading-duration', '10s');\r\n\t\t});\r\n\t}\r\n};\r\n\r\nconst isLoading = ($page: $el) => {\r\n\treturn $page.is('.i-load-data');\r\n};\r\n\r\nexport const TopDialogUtils = {\r\n\tupdatePageVue,\r\n\trecalcPositions,\r\n\ttoViewDirty,\r\n\ttoView,\r\n\ttoViewPage,\r\n\ttoPrevPage,\r\n\tsetLoading,\r\n\tisLoading,\r\n\tinAnimation,\r\n\tclose,\r\n};\r\n\r\ninit();\r\n"],"names":["inited","initDialogGlobalEvents","el","querySelectorVisible","elDialog","$dialog","toView","TopDialogUtils","viewNameAndPageLink","viewName","pageLink","$toDialog","$toPage","hash","TopDialogWorker","elForm","elSubmit","$dialogWrapper","topZIndex","_index","zIndex","Core","css","cssM","cssPC","cssModern","cssModernPC","timerClearAnimation","isInited","init","_a","onCreate","onOpen","onClose","genVueOptions","options","_b","_d","_c","updatePageVue","dialogId","pageName","pageNameNext","dialog","getDialogWorker","nextTick","waitWhile","$dialogBody","connectScrollShadow","initPopup","_e","$popup","w1","scrollBarWidth","recalcPositions","setHash","eldDialog","$ui","toViewDirty","toViewPageName","moveDirection","toViewParts","argsString","args","viewNameOr$Dialog","callback","resolve","_reject","timer","toViewPage","stopped","stopAnimations","sleep","$modalLayers","$currentPage","$nextPage","beforeOpenViewPage","afterOpenViewPage","TopPopupWorker","delay","toPrevPage","prevPageName","$prevPage","beforeOpenViewPageTimers","$page","eventKey","inAnimation","close","setLoading","isLoading","duration"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ define(["require","exports","vue","../utils/system.amd","../utils/route.amd"],function(P,h,s,p,w){"use strict";if(typeof s>"u")var s=window.Vue;class c{static state={load:void 0,decoratorOnCreate:void 0,viewPageN:0,locationHashPrev:""};static inited=!1;static init(e){if(this.inited)return;this.inited=!0,this.state.load=e==null?void 0:e.load,this.state.decoratorOnCreate=e==null?void 0:e.decoratorOnCreate;const t=(e==null?void 0:e.autoInitDelay)??5e3;$(window).on("hashchange.dialogs",()=>{this.compareStates(location.hash,this.state.locationHashPrev)&&this.opendDialogsFromUrl()}),$(window).trigger("hashchange.dialogs"),$(document).on("mousedown","a[data-to-view]",async i=>{const a=i.target.closest("[data-to-view]"),r=a.dataset.toView.split("-")[0],l=$("#"+r);$("> .modal-layer",l);let g="next";a.dataset.action==="top-dialog-close"&&(g="prev"),a.href=c.genViewPageHash(a.dataset.toView,g)}),$(document).on("click","[data-to-view]",async i=>{const a=i.target.closest("[data-to-view]");if(a.href==="."){i.preventDefault(),a.mousedown(),setTimeout(()=>a.click());return}const n=await this.getDialogsUtils(),r=a.dataset.toView,l=r.split("-")[0],g=$("#"+l),u=$("> .modal-layer",g),k=$("> .active",u),S=!!g.data("data-to-view-replace");let v="next";if(k.length){const L=r.split("-")[1].split(":")[0];$('> [data-view-page="'+L+'"]',u).data("order")<k.data("order")&&(v="prev")}a.dataset.action==="top-dialog-close"&&(v="prev");const f=c.genViewPageHash(r,v);if(a.tagName==="A"){if(!g.is(":visible"))return;if(location.hash.indexOf(r.replace("-","="))!==-1){await n.toViewDirty(r);return}}S?(i.preventDefault(),w.historySetState(!0,f),await n.toViewDirty(r),v=="next"?c.state.viewPageN++:c.state.viewPageN--):a.tagName!=="A"&&(this.compareStates(f,location.hash)?location.hash=f:await n.toViewDirty(r))}),setTimeout(()=>this.getDialogsUtils(),t)}static async getDialogsUtils(){const{TopDialogUtils:e}=await new Promise((t,i)=>P(["./utils-DAfofcEq.amd"],t,i));return e}static get$dialog(e){return e.closest(".ui-dialog-content")}static get$page(e){return e.closest("[data-view-page]")}static get$pairPage(e){const t=c.get$dialog(e),a=c.get$page(e).data("view-page");return $('[data-view-page="'+a+'"]',t)}static close(e){const t=$("#"+e);t.dialog("instance")&&t.dialog("close")}static destroy(e){const t=$("#"+e);t.dialog("instance")&&(t.dialog("close"),t.dialog("destroy"))}static genViewPageHash(e,t="next"){var i=this.state.viewPageN;t=="prev"?i--:i++;var a=e.split("-"),n=a.shift(),r=a.join("-"),l=w.genHash("vpn",i),l=w.genHash("view-"+n,r,l);return l}static compareStates(e,t){const i=e.match(/[#&]view-[^&]+/g)||[],a=t.match(/[#&]view-[^&]+/g)||[];return!!(i.length!==a.length||i.filter((r,l)=>{const g=a[l]||"";return r!==g}).length)}static opendDialogsFromUrl=async()=>{const e=Number(w.getHash("vpn"))||0;this.state.locationHashPrev=location.hash;let t;const i=new RegExp("view-((\\w+)=([\\w-]+)(?::([\\w.:-]+))?)","g");for(;t=i.exec(location.hash);){var a="next";return e<this.state.viewPageN&&(a="prev"),(await this.getDialogsUtils()).toViewDirty(t[1],a)}return $(".ui-dialog-content[data-view-page-active]:visible").each((n,r)=>{var l=$(r),g=l.attr("id"),u=w.getHash("view-"+g);u||l.dialog("close")}),this.state.viewPageN=e,!0}}class D{id;idAttr;Component;isMounted=s.ref(!1);isReady=s.ref(!1);isOpened=s.ref(!1);pageActive=s.ref("");isLoadingPage=s.ref(!1);pageActiveNext=s.ref("");props;emit;onCloseOnce;constructor(e){this.id=e.id,this.idAttr="dialog_"+e.id,this.Component=s.markRaw(e)}onMounted(e,t){this.isMounted.value=!0,this.props=e.props,this.emit=t.emit}async open(e="main",t,i=[],a,n){t&&await this.setProps(t),a&&(this.onCloseOnce=a),await(await c.getDialogsUtils()).toView(this.idAttr,e,i,n)}async openAsLink(e="main",t,i=[],a,n){t&&await this.setProps(t),a&&(this.onCloseOnce=a);const r=this.idAttr+"-"+e;location.hash=c.genViewPageHash(r,n)}async close(){c.close(this.idAttr)}async destroy(){c.destroy(this.idAttr)}async setProps(e={}){this.isMounted||await p.waitWhile(()=>!this.props);for(const t in this.props)this.props[t]=e[t]}needShowPage(e){return this.isOpened.value?this.pageActive.value===e||this.pageActiveNext.value===e:!1}}const N={class:"top-dialogs",style:{display:"none"}},d=s.shallowReactive(new Map),m=o=>(o=o.replace(/^dialog_/,""),d.get(o)),A=o=>{if(!(o!=null&&o.id))throw console.log({TopDialogComponent:o}),new Error("Expected TopDialogComponent");return d.has(o.id)||d.set(o.id,new D(o)),d.get(o.id)},V=s.defineComponent({name:"DialogWrapper",__name:"dialogs",setup(o){return s.onUnmounted(()=>{d.forEach(e=>e.destroy()),d.clear()}),(e,t)=>(s.openBlock(),s.createElementBlock("div",N,[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(s.unref(d),([i,a])=>(s.openBlock(),s.createBlock(s.resolveDynamicComponent(a.Component),{key:i}))),128))]))}});class H{resolve;worker=s.ref(null);constructor(e){this.resolve=e}async get(){if(this.worker.value)return this.worker.value;const t=(await this.resolve()).default;this.worker.value=y(t);const i=this.worker.value;return await p.waitWhile(()=>!i.isMounted),i}async open(...e){await(await this.get()).open(...e)}async openAsLink(...e){(await this.get()).openAsLink(...e)}async close(...e){(await this.get()).close(...e)}async destroy(...e){(await this.get()).destroy(...e)}async setProps(...e){await(await this.get()).setProps(...e)}}const U=()=>{var e;const o=s.getCurrentInstance();if((e=o==null?void 0:o.type)!=null&&e.id){const t=m(o.type.id);if(t)return t}return s.inject("dialogWorker")},y=o=>A(o),x=o=>new H(o);h.TopDialogWorker=c,h._sfc_main=V,h.getDialogWorker=m,h.useAsyncTopDialog=x,h.useTopDialog=y,h.useTopDialogSelf=U});
2
+ //# sourceMappingURL=utils-CPty_L5T.amd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-CPty_L5T.amd.js","sources":["../../src/components/dialog/lib/worker.ts","../../src/components/dialog/dialog/composables/dialogHandle.ts","../../src/components/dialog/dialog/dialogs/dialogs.vue","../../src/components/dialog/dialog/composables/asyncDialogHandle.ts","../../src/components/dialog/dialog/composables/utils.ts"],"sourcesContent":["import { genHash, getHash, historySetState } from '@/core/utils/route';\r\nimport type { MoveDirection, TopDialogOptions } from './types';\r\nimport type { $el } from '@/components/types';\r\n\r\nexport abstract class TopDialogWorker {\r\n\tstatic state = {\r\n\t\tload: undefined as TopDialogOptions['load'] | undefined,\r\n\t\tdecoratorOnCreate: undefined as TopDialogOptions['decoratorOnCreate'] | undefined,\r\n\r\n\t\t/**\r\n\t\t * Порядковай номер перехода в диалоговых окнах\r\n\t\t *\r\n\t\t * Для расчета направления Вперед / Назад\r\n\t\t */\r\n\t\tviewPageN: 0,\r\n\t\tlocationHashPrev: '',\r\n\t};\r\n\r\n\tprivate static inited = false;\r\n\r\n\t/**\r\n\t * Инициировать события слежения за парамтерами url\r\n\t *\r\n\t * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу\r\n\t */\r\n\tstatic init(options?: TopDialogOptions) {\r\n\t\tif (this.inited) return;\r\n\t\tthis.inited = true;\r\n\r\n\t\tthis.state.load = options?.load;\r\n\t\tthis.state.decoratorOnCreate = options?.decoratorOnCreate;\r\n\r\n\t\tconst autoInitDelay = options?.autoInitDelay ?? 5000;\r\n\r\n\t\t$(window).on('hashchange.dialogs', () => {\r\n\t\t\tconst dialogsStateChanged = this.compareStates(location.hash, this.state.locationHashPrev);\r\n\t\t\tif (dialogsStateChanged) this.opendDialogsFromUrl();\r\n\t\t});\r\n\r\n\t\t$(window).trigger('hashchange.dialogs');\r\n\r\n\t\t/**\r\n\t\t * Сгенерировать ссылку для перехода к странице диалогового окна\r\n\t\t */\r\n\t\t$(document).on('mousedown', 'a[data-to-view]', async (e) => {\r\n\t\t\tconst el = e.target.closest('[data-to-view]');\r\n\r\n\t\t\tconst toView = el.dataset.toView;\r\n\t\t\tconst viewName = toView.split('-')[0];\r\n\t\t\tconst $toDialog = $('#' + viewName);\r\n\t\t\tconst $modalLayers = $('> .modal-layer', $toDialog);\r\n\t\t\t// const $currentPage = $('> .active', $modalLayers);\r\n\r\n\t\t\tlet moveDirection: MoveDirection = 'next';\r\n\r\n\t\t\t// /**\r\n\t\t\t// * Данный алгоритм определения направления работает не корректно, так как для чтения свойства order менят состояние через getDialogsUtils()\r\n\t\t\t// */\r\n\t\t\t// if ($currentPage.length) {\r\n\t\t\t// \tconst pageName = toView.split('-')[1].split(':')[0];\r\n\t\t\t//\r\n\t\t\t// \tconst TopDialogUtils = await this.getDialogsUtils();\r\n\t\t\t//\r\n\t\t\t// \tawait TopDialogUtils.updatePageVue(viewName, undefined, pageName);\r\n\t\t\t//\r\n\t\t\t// \tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\r\n\t\t\t// \tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\r\n\t\t\t// }\r\n\r\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\r\n\r\n\t\t\tel.href = TopDialogWorker.genViewPageHash(el.dataset.toView, moveDirection);\r\n\t\t});\r\n\r\n\t\t/**\r\n\t\t * Осуществить переход по ссылке с учетом historyType\r\n\t\t */\r\n\t\t$(document).on('click', '[data-to-view]', async (e) => {\r\n\t\t\tconst el = e.target.closest('[data-to-view]');\r\n\r\n\t\t\t// Подождать генерацию ссылки\r\n\t\t\tif (el.href === '.') {\r\n\t\t\t\te.preventDefault();\r\n\r\n\t\t\t\tel.mousedown();\r\n\r\n\t\t\t\tsetTimeout(() => el.click());\r\n\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\r\n\r\n\t\t\tconst toView = el.dataset.toView;\r\n\t\t\tconst viewName = toView.split('-')[0];\r\n\t\t\tconst $toDialog = $('#' + viewName);\r\n\t\t\tconst $modalLayers = $('> .modal-layer', $toDialog);\r\n\t\t\tconst $currentPage = $('> .active', $modalLayers);\r\n\r\n\t\t\tconst replaceHistory = !!$toDialog.data('data-to-view-replace');\r\n\r\n\t\t\tlet moveDirection: MoveDirection = 'next';\r\n\t\t\tif ($currentPage.length) {\r\n\t\t\t\tconst pageName = toView.split('-')[1].split(':')[0];\r\n\t\t\t\tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\r\n\t\t\t\tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\r\n\t\t\t}\r\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\r\n\r\n\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, moveDirection);\r\n\r\n\t\t\tif (el.tagName === 'A') {\r\n\t\t\t\t// диалоговое окно еще не открыто, произвести переход по ссылке\r\n\t\t\t\tif (!$toDialog.is(':visible')) return;\r\n\r\n\t\t\t\t// в адресе уже указана эта страница, необходимсо явно запросить ее открытие\r\n\t\t\t\tif (location.hash.indexOf(toView.replace('-', '=')) !== -1) {\r\n\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\r\n\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (replaceHistory) {\r\n\t\t\t\te.preventDefault();\r\n\r\n\t\t\t\thistorySetState(true, hash);\r\n\r\n\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\r\n\r\n\t\t\t\tif (moveDirection == 'next') {\r\n\t\t\t\t\tTopDialogWorker.state.viewPageN++;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tTopDialogWorker.state.viewPageN--;\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\tif (el.tagName !== 'A') {\r\n\t\t\t\t\tif (this.compareStates(hash, location.hash)) {\r\n\t\t\t\t\t\tlocation.hash = hash;\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tsetTimeout(() => this.getDialogsUtils(), autoInitDelay);\r\n\t}\r\n\r\n\tstatic async getDialogsUtils() {\r\n\t\tconst { TopDialogUtils } = await import('./utils');\r\n\r\n\t\treturn TopDialogUtils;\r\n\t}\r\n\r\n\tstatic get$dialog($el: $el) {\r\n\t\treturn $el.closest('.ui-dialog-content');\r\n\t};\r\n\r\n\tstatic get$page($el: $el) {\r\n\t\treturn $el.closest('[data-view-page]');\r\n\t};\r\n\r\n\t/**\r\n\t * Получить элементы страницы в шапке и в контенте\r\n\t */\r\n\tstatic get$pairPage($el: $el) {\r\n\t\tconst $dialog = TopDialogWorker.get$dialog($el);\r\n\r\n\t\tconst $page = TopDialogWorker.get$page($el);\r\n\t\tconst pageName = $page.data('view-page');\r\n\r\n\t\treturn $('[data-view-page=\"' + pageName + '\"]', $dialog);\r\n\t};\r\n\r\n\t/**\r\n\t * Закрыть диалоговое окно\r\n\t */\r\n\tstatic close(dialogId: string) {\r\n\t\tconst $dialog = $('#' + dialogId);\r\n\r\n\t\tif (!$dialog.dialog('instance')) return;\r\n\r\n\t\t$dialog.dialog('close');\r\n\t};\r\n\r\n\t/**\r\n\t * Размонтировать $.dialog\r\n\t */\r\n\tstatic destroy(dialogId: string) {\r\n\t\tconst $dialog = $('#' + dialogId);\r\n\r\n\t\tif (!$dialog.dialog('instance')) return;\r\n\r\n\t\t$dialog.dialog('close');\r\n\t\t$dialog.dialog('destroy');\r\n\t};\r\n\r\n\t/**\r\n\t * Сгенерировать ссылку на страницу в диалоговом окне\r\n\t * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}\r\n\t * @param moveDirection\r\n\t */\r\n\tstatic genViewPageHash(toView: string, moveDirection: MoveDirection = 'next') {\r\n\t\tvar toViewPageN = this.state.viewPageN;\r\n\t\tif (moveDirection == 'prev') {\r\n\t\t\ttoViewPageN--;\r\n\t\t} else {\r\n\t\t\ttoViewPageN++;\r\n\t\t}\r\n\r\n\t\tvar viewNameAndPageLink = toView.split('-');\r\n\t\tvar viewName = viewNameAndPageLink.shift();\r\n\t\tvar pageLink = viewNameAndPageLink.join('-');\r\n\t\tvar hash = genHash('vpn', toViewPageN);\r\n\t\tvar hash = genHash('view-' + viewName, pageLink, hash);\r\n\r\n\t\treturn hash;\r\n\t};\r\n\r\n\t/**\r\n\t * Сравнить версию открытых диалоговых окон\r\n\t * @returns вернет true, если состояния открытых окон изменилось\r\n\t */\r\n\tstatic compareStates(hash: string, hash2: string) {\r\n\t\tconst mathes = hash.match(/[#&]view-[^&]+/g) || [];\r\n\t\tconst mathes2 = hash2.match(/[#&]view-[^&]+/g) || [];\r\n\r\n\t\tif (mathes.length !== mathes2.length) return true;\r\n\r\n\t\tconst mathesChanged = mathes.filter((math, n) => {\r\n\t\t\tconst math2 = mathes2[n] || '';\r\n\r\n\t\t\treturn math !== math2;\r\n\t\t});\r\n\r\n\t\tif (mathesChanged.length) return true;\r\n\r\n\t\treturn false;\r\n\t};\r\n\r\n\tstatic opendDialogsFromUrl = async () => {\r\n\t\tconst toViewPageN = Number(getHash('vpn')) || 0;\r\n\r\n\t\tthis.state.locationHashPrev = location.hash;\r\n\r\n\t\t// Открыть диалоговое окно\r\n\t\tlet view: RegExpExecArray | null;\r\n\t\t// const regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)' + '(' + Math.random() + ')?', 'g'); // fix babel minify regexp\r\n\t\tconst regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)', 'g');\r\n\t\twhile (view = regexp.exec(location.hash)) {\r\n\t\t\tvar moveDirection: MoveDirection = 'next';\r\n\t\t\tif (toViewPageN < this.state.viewPageN) moveDirection = 'prev';\r\n\r\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\r\n\r\n\t\t\treturn TopDialogUtils.toViewDirty(view[1], moveDirection);\r\n\t\t}\r\n\r\n\t\t// Закрыть ненужные view\r\n\t\t$('.ui-dialog-content[data-view-page-active]:visible').each((_index: number, dialog: HTMLElement) => {\r\n\t\t\tvar $dialog = $(dialog);\r\n\r\n\t\t\tvar viewName = $dialog.attr('id');\r\n\t\t\tvar pageName = getHash('view-' + viewName);\r\n\t\t\tif (!pageName) $dialog.dialog('close');\r\n\t\t});\r\n\r\n\t\tthis.state.viewPageN = toViewPageN;\r\n\r\n\t\treturn true;\r\n\t};\r\n}\r\n","import { type ComponentInstance, type ComponentInternalInstance, markRaw, ref } from 'vue';\r\nimport { waitWhile } from '@/core/utils/system';\r\nimport TopDialog from '../dialog.vue';\r\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\r\nimport type { MoveDirection } from '@/components/dialog/lib/types';\r\nimport type { TopDialogComponent } from './types';\r\n\r\n/**\r\n * Объект для работы с диалоговым окном\r\n *\r\n * Каждое окно уникально и может быть открыто одновременно только один раз\r\n *\r\n * Можно определить много окон, после чего с ними можно вести работу в любой части приложения\r\n */\r\nexport class TopDialogHandle<T extends TopDialogComponent> {\r\n\r\n\t/**\r\n\t * Индентификатор, определяется на уровне компонента TopDialogComponent\r\n\t *\r\n\t * Может использоваться в навигации для открытия нужных окон с нужными настройками\r\n\t */\r\n\tid: string;\r\n\r\n\t/**\r\n\t * ID, используемый в верстке диалогового окна\r\n\t */\r\n\tidAttr: string;\r\n\r\n\t/**\r\n\t * Пользовательский компонент диалогового окна\r\n\t */\r\n\tComponent: T;\r\n\r\n\t/**\r\n\t * Компонент инициирован\r\n\t *\r\n\t * Устанавливается после первого вызова useTopDialog()\r\n\t */\r\n\tisMounted = ref(false);\r\n\r\n\t/**\r\n\t * Компонент готов к использованию\r\n\t *\r\n\t * Используется для внутренних преобразований после отрисовки\r\n\t */\r\n\tisReady = ref(false);\r\n\r\n\t/**\r\n\t * Диалоговое окно открыто\r\n\t */\r\n\tisOpened = ref(false);\r\n\r\n\t/**\r\n\t * Имя активной страницы дилогового окна\r\n\t */\r\n\tpageActive = ref('');\r\n\r\n\t/**\r\n\t * Диалоговое окно находится в состоянии загрузки своей страницы\r\n\t */\r\n\tisLoadingPage = ref(false);\r\n\r\n\t/**\r\n\t * Следующая активная страница\r\n\t *\r\n\t * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию\r\n\t */\r\n\tpageActiveNext = ref('');\r\n\r\n\t/**\r\n\t * props компонента, доступны после инициализации\r\n\t */\r\n\tprops?: ComponentInstance<T>['$props'];\r\n\r\n\t/**\r\n\t * emit базового компонента `TopDialog`\r\n\t */\r\n\temit?: ComponentInstance<typeof TopDialog>['$emit'];\r\n\r\n\t/**\r\n\t * Одноразовое событие на закрытие диалогового окна\r\n\t *\r\n\t * Используется для привязки окна к сценариям использования\r\n\t */\r\n\tonCloseOnce?: (props: typeof this.props, pageName: string) => void;\r\n\r\n\tconstructor(TopDialogComponent: T) {\r\n\t\tthis.id = TopDialogComponent.id!;\r\n\t\tthis.idAttr = 'dialog_' + TopDialogComponent.id;\r\n\t\tthis.Component = markRaw(TopDialogComponent);\r\n\t}\r\n\r\n\t/**\r\n\t * Событие - компонент инициирован\r\n\t */\r\n\tonMounted(topDialogComponent: ComponentInternalInstance, topDialogBaseComponent: ComponentInternalInstance) {\r\n\t\tthis.isMounted.value = true;\r\n\t\tthis.props = topDialogComponent.props;\r\n\t\tthis.emit = topDialogBaseComponent.emit;\r\n\t}\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно\r\n\t *\r\n\t * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента\r\n\t */\r\n\tasync open(pageName: string = 'main', props?: {}, args: [] = [], onCloseOnce?: typeof this.onCloseOnce, moveDirection?: MoveDirection) {\r\n\t\tif (props) await this.setProps(props);\r\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\r\n\r\n\t\tconst TopDialogUtils = await TopDialogWorker.getDialogsUtils();\r\n\r\n\t\tawait TopDialogUtils.toView(this.idAttr, pageName, args, moveDirection);\r\n\t};\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\r\n\t *\r\n\t * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader\r\n\t */\r\n\tasync openAsLink(\r\n\t\tpageName: string = 'main',\r\n\t\tprops?: {},\r\n\t\t_args: string[] = [],\r\n\t\tonCloseOnce?: typeof this.onCloseOnce,\r\n\t\tmoveDirection?: MoveDirection,\r\n\t) {\r\n\t\tif (props) await this.setProps(props);\r\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\r\n\r\n\t\tconst viewName = this.idAttr + '-' + pageName;\r\n\r\n\t\tlocation.hash = TopDialogWorker.genViewPageHash(viewName, moveDirection);\r\n\t};\r\n\r\n\t/**\r\n\t * Закрыть диалоговое окно\r\n\t *\r\n\t * Не меняет состояние компонента диалогового окна\r\n\t */\r\n\tasync close() {\r\n\t\tTopDialogWorker.close(this.idAttr);\r\n\t};\r\n\r\n\t/**\r\n\t * Размонтировать $.dialog\r\n\t */\r\n\tasync destroy() {\r\n\t\tTopDialogWorker.destroy(this.idAttr);\r\n\t}\r\n\r\n\t/**\r\n\t * Устанвоить props\r\n\t *\r\n\t * Полностью сбрасывается состояние props\r\n\t */\r\n\tasync setProps(props: ComponentInstance<T>['$props'] = {}) {\r\n\t\t// ожидание инициализации компонента\r\n\t\tif (!this.isMounted) {\r\n\t\t\tawait waitWhile(() => !this.props);\r\n\t\t}\r\n\r\n\t\tfor (const name in this.props) {\r\n\t\t\tthis.props[name] = props[name];\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Проверить, есть ли необходимость отрисовки страницы диалогового окна\r\n\t */\r\n\tneedShowPage(pageName: string): boolean {\r\n\t\tif (!this.isOpened.value) return false;\r\n\r\n\t\treturn this.pageActive.value === pageName || this.pageActiveNext.value === pageName;\r\n\t}\r\n}\r\n","<script lang=\"ts\">\r\nimport { shallowReactive } from 'vue';\r\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\r\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\r\n\r\n/**\r\n * Словарь всех используемых диалоговых окон\r\n *\r\n * В других компонентах не использовать\r\n */\r\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\r\n\r\nexport const getDialogWorker = (id: string) => {\r\n\tid = id.replace(/^dialog_/, '');\r\n\r\n\treturn dialogsWorkers.get(id);\r\n};\r\n\r\n/**\r\n * Добавить компонент диалогового окна для использования\r\n */\r\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\r\n\tif (!TopDialogComponent?.id) {\r\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\r\n\r\n\t\tthrow new Error('Expected TopDialogComponent');\r\n\t}\r\n\r\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\r\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\r\n\t}\r\n\r\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\r\n};\r\n</script>\r\n\r\n<script setup lang=\"ts\">\r\nimport { onUnmounted } from 'vue';\r\n\r\ndefineOptions({\r\n\tname: 'DialogWrapper',\r\n});\r\n\r\nonUnmounted(() => {\r\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\r\n\tdialogsWorkers.clear();\r\n});\r\n</script>\r\n\r\n<template>\r\n\t<div class=\"top-dialogs\" style=\"display: none;\">\r\n\t\t<component\r\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\r\n\t\t\t:is=\"dialog.Component\"\r\n\t\t\t:key=\"dialogId\"\r\n\t\t/>\r\n\t</div>\r\n</template>\r\n","import type { Ref } from 'vue';\r\nimport { ref } from 'vue';\r\nimport { useTopDialog } from './utils';\r\nimport { waitWhile } from '@/core/utils/system';\r\nimport type { AsyncTopDialogComponentLoader, TopDialogComponent } from './types';\r\nimport { TopDialogHandle } from './dialogHandle';\r\n\r\n/**\r\n * Объект для работы с асинхронным диалоговым окном\r\n *\r\n * Является прослойкой для доступа к TopDialogHandle\r\n */\r\nexport class AsyncTopDialogHandle<T extends TopDialogComponent> {\r\n\r\n\t/**\r\n\t * Функция, определяющая компонент TopDialogComponent\r\n\t */\r\n\treadonly resolve: AsyncTopDialogComponentLoader<T>;\r\n\r\n\t/**\r\n\t * Реактивная Сссылка на объект worker,\r\n\t *\r\n\t * Ссылка не будет указывать на объект, если диалоговое окно еще не загружено\r\n\t */\r\n\treadonly worker: Ref<TopDialogHandle<T> | null> = ref(null);\r\n\r\n\tconstructor(resolve: AsyncTopDialogComponentLoader<T>) {\r\n\t\tthis.resolve = resolve;\r\n\t}\r\n\r\n\t/**\r\n\t * Получить доступ к TopDialogHandle\r\n\t */\r\n\tasync get() {\r\n\t\tif (this.worker.value) return this.worker.value;\r\n\r\n\t\tconst result = await this.resolve();\r\n\t\tconst TopDialogComponent = result.default;\r\n\r\n\t\tthis.worker.value = useTopDialog(TopDialogComponent);\r\n\r\n\t\tconst worker = this.worker.value;\r\n\r\n\t\tawait waitWhile(() => !worker.isMounted);\r\n\r\n\t\treturn worker;\r\n\t}\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно\r\n\t */\r\n\tasync open(...args: Parameters<TopDialogHandle<T>['open']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tawait worker.open(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\r\n\t *\r\n\t * Только общедоступные диалоговые окна, расположенные в @/dialogs\r\n\t */\r\n\tasync openAsLink(...args: Parameters<TopDialogHandle<T>['open']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tvoid worker.openAsLink(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Закрыть диалоговое окно\r\n\t *\r\n\t * Не меняет состояние компонента диалогового окна\r\n\t */\r\n\tasync close(...args: Parameters<TopDialogHandle<T>['close']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tworker.close(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Размонтировать виджет диалогового окна\r\n\t */\r\n\tasync destroy(...args: Parameters<TopDialogHandle<T>['close']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tworker.destroy(...args);\r\n\t}\r\n\r\n\t/**\r\n\t * Устанвоить props\r\n\t *\r\n\t * Полностью сбрасывается состояние props\r\n\t */\r\n\tasync setProps(...args: Parameters<TopDialogHandle<T>['setProps']>) {\r\n\t\tconst worker = await this.get();\r\n\r\n\t\tawait worker.setProps(...args);\r\n\t}\r\n}\r\n","import { getCurrentInstance, inject } from 'vue';\r\nimport { TopDialogHandle } from './dialogHandle';\r\nimport { AsyncTopDialogHandle } from './asyncDialogHandle';\r\nimport type { AsyncTopDialogComponentLoader, TopDialogComponent } from './types';\r\nimport { addDialogWorker, getDialogWorker } from '../dialogs/dialogs.vue';\r\n\r\n/**\r\n * Получить объект управленя текущим диалоговым окном\r\n */\r\nexport const useTopDialogSelf = () => {\r\n\t// вызов из пользовтаельского компонента диалога\r\n\tconst topDialogComponent = getCurrentInstance() as any;\r\n\tif (topDialogComponent?.type?.id) {\r\n\t\tconst dialogWorker = getDialogWorker(topDialogComponent.type.id);\r\n\t\tif (dialogWorker) return dialogWorker;\r\n\t}\r\n\r\n\treturn inject('dialogWorker') as TopDialogHandle<TopDialogComponent>;\r\n};\r\n\r\n/**\r\n * Получить объект управленя диалоговым окном\r\n *\r\n * При первом вызове компонент диалогового окна будет внедрен в компонент DialogWrapper\r\n */\r\nexport const useTopDialog = <T extends TopDialogComponent>(DialogComponent: T): TopDialogHandle<T> => {\r\n\treturn addDialogWorker(DialogComponent);\r\n};\r\n\r\n/**\r\n * Получить объект управленя асинхронным диалоговым окном\r\n *\r\n * Компонент диалогового окна будет загружен и инициирован при первом взаимодействии с объектом\r\n *\r\n * Использует useTopDialog()\r\n */\r\nexport const useAsyncTopDialog = <T extends TopDialogComponent>(resolve: AsyncTopDialogComponentLoader<T>): AsyncTopDialogHandle<T> => {\r\n\treturn new AsyncTopDialogHandle(resolve);\r\n};\r\n"],"names":["TopDialogWorker","options","autoInitDelay","e","el","$toDialog","moveDirection","TopDialogUtils","toView","$currentPage","pageName","$modalLayers","utils_route","hash","$el","dialogId","$dialog","toViewPageN","viewName","viewNameAndPageLink","pageLink","hash2","view","dialog","TopDialogHandle","vue","TopDialogComponent","topDialogComponent","topDialogBaseComponent","props","args","onCloseOnce","_args","name","dialogsWorkers","getDialogWorker","id","addDialogWorker","AsyncTopDialogHandle","resolve","worker","useTopDialogSelf","_a","dialogWorker","useTopDialog","DialogComponent","useAsyncTopDialog"],"mappings":"gJAIO,MAAAA,CAAA,gEAUM,iBAAA,qBAIY,OAAA,KAAAC,EAAA,CAQvB,GAAA,KAAA,OAAA,OACA,KAAA,OAAA,yGAKA,MAAAC,GAAAD,GAAA,YAAAA,EAAA,gBAAA,2CAGC,KAAA,cAAA,SAAA,KAAA,KAAA,MAAA,gBAAA,GACA,KAAA,oBAAA,CAAkD,CAAA,0CAQnD,EAAA,QAAA,EAAA,GAAA,YAAA,kBAAA,MAAAE,GAAA,8CAGCC,EAAA,QAAA,gCAGA,EAAA,iBAAAC,CAAA,iEAqBAD,EAAA,KAAAJ,EAAA,gBAAAI,EAAA,QAAA,OAAAE,CAAA,CAA0E,CAAA,EAM3E,EAAA,QAAA,EAAA,GAAA,QAAA,iBAAA,MAAAH,GAAA,4CAIC,GAAAC,EAAA,OAAA,IAAA,kCAKC,WAAA,IAAAA,EAAA,MAAA,CAAA,QAEA,CAGD,MAAAG,EAAA,MAAA,KAAA,gBAAA,EAEAC,EAAAJ,EAAA,QAAA,+HASA,GAAAK,EAAA,OAAA,CACC,MAAAC,EAAAF,EAAA,MAAA,GAAA,EAAA,CAAA,EAAA,MAAA,GAAA,EAAA,CAAA,EACA,EAAA,sBAAAE,EAAA,KAAAC,CAAA,EACA,KAAA,OAAA,EAAAF,EAAA,KAAA,OAAA,IAAAH,EAAA,OAA0E,kFAM3E,GAAAF,EAAA,UAAA,IAAA,6BAKC,GAAA,SAAA,KAAA,QAAAI,EAAA,QAAA,IAAA,GAAA,CAAA,IAAA,GAAA,CACC,MAAAD,EAAA,YAAAC,CAAA,QAEA,CACD,uBAMAI,EAAA,gBAAA,GAAAC,CAAA,EAEA,MAAAN,EAAA,YAAAC,CAAA,EAEAF,GAAA,OACCN,EAAA,MAAA,YAEAA,EAAA,MAAA,aAGDI,EAAA,UAAA,0CAEE,SAAA,KAAAS,EAEA,MAAAN,EAAA,YAAAC,CAAA,EAGH,CAAA,0CAGqD,kHAMtD,OAAAD,CAAO,CACR,OAAA,WAAAO,EAAA,CAGC,OAAAA,EAAA,QAAA,oBAAA,CAAuC,CACxC,OAAA,SAAAA,EAAA,CAGC,OAAAA,EAAA,QAAA,kBAAA,CAAqC,CACtC,OAAA,aAAAA,EAAA,iGAWwD,CACxD,OAAA,MAAAC,EAAA,wCAUCC,EAAA,OAAA,OAAA,CAAsB,CACvB,OAAA,QAAAD,EAAA,yCAUCC,EAAA,OAAA,OAAA,EACAA,EAAA,OAAA,SAAA,EAAwB,oCASxB,IAAAC,EAAA,KAAA,MAAA,UACAX,GAAA,OACCW,IAEAA,uBAIDC,EAAAC,EAAA,MAAA,qCAGAN,EAAAD,EAAA,QAAA,QAAAM,EAAAE,EAAAP,CAAA,EAEA,OAAAA,CAAO,CACR,OAAA,cAAAA,EAAAQ,EAAA,yEAkBC,4EAHiB,CAAA,EAGjB,OAEO,oHASP,IAAAC,4JAOC,MAAA,KAAA,gBAAA,sBAEwD,4EAKxD,IAAAN,EAAA,EAAAO,CAAA,4DAIqC,CAAA,EAGtC,KAAA,MAAA,UAAAN,EAEA,GAEF,CClQO,MAAAO,CAAA,CAAoD,GAO1D,OAKA,UAKA,UAAAC,EAAA,IAAA,EAAA,EAOqB,QAAAA,EAAA,IAAA,EAAA,EAOF,SAAAA,EAAA,IAAA,EAAA,EAKC,WAAAA,EAAA,IAAA,EAAA,EAKD,cAAAA,EAAA,IAAA,EAAA,EAKM,eAAAA,EAAA,IAAA,EAAA,EAOF,MAKvB,KAKA,2BAUC,KAAA,GAAAC,EAAA,8BAEA,KAAA,UAAAD,EAAA,QAAAC,CAAA,CAA2C,CAC5C,UAAAC,EAAAC,EAAA,CAMC,KAAA,UAAA,MAAA,GACA,KAAA,MAAAD,EAAA,MACA,KAAA,KAAAC,EAAA,IAAmC,CACpC,MAAA,KAAAlB,EAAA,OAAAmB,EAAAC,EAAA,CAAA,EAAAC,EAAAzB,EAAA,2BASCyB,IAAA,KAAA,YAAAA,GAIA,MAFA,MAAA/B,EAAA,gBAAA,GAEA,OAAA,KAAA,OAAAU,EAAAoB,EAAAxB,CAAA,CAAsE,CACvE,MAAA,WAAAI,EAAA,OAAAmB,EAAAG,EAAA,CAAA,EAAAD,EAAAzB,EAAA,2BAeCyB,IAAA,KAAA,YAAAA,iEAIuE,eASvE/B,EAAA,MAAA,KAAA,MAAA,CAAiC,iBAOjCA,EAAA,QAAA,KAAA,MAAA,CAAmC,CACpC,MAAA,SAAA6B,EAAA,CAAA,EAAA,CASC,KAAA,8CAIA,UAAAI,KAAA,KAAA,wBAEA,4CASA,KAAA,WAAA,QAAAvB,GAAA,KAAA,eAAA,QAAAA,IAA2E,CAE7E,sDCrKAwB,EAAAT,EAAA,gBAAA,IAAA,GAAA,EAEaU,EAAAC,+BAGZF,EAAA,IAAAE,CAAA,GAMYC,EAAAX,GAAA,CACZ,GAAA,EAAAA,GAAA,MAAAA,EAAA,IACC,cAAA,IAAA,CAAA,mBAAAA,CAAA,CAAA,EAEA,IAAA,MAAA,6BAAA,sBAIAQ,EAAA,IAAAR,EAAA,GAAA,IAAAF,EAAAE,CAAA,CAAA,gJAgBoB,CAAA,wOCjCf,MAAAY,CAAA,CAAyD,QAKtD,OAAAb,EAAA,IAAA,IAAA,iBAUR,KAAA,QAAAc,CAAe,aAOf,GAAA,KAAA,OAAA,MAAA,OAAA,KAAA,OAAA,MAGA,MAAAb,GADA,MAAA,KAAA,QAAA,GACA,+BAIA,MAAAc,EAAA,KAAA,OAAA,iDAIAA,CAAO,CACR,MAAA,QAAAV,EAAA,CAQC,MAFA,MAAA,KAAA,IAAA,GAEA,KAAA,GAAAA,CAAA,CAAyB,CAC1B,MAAA,cAAAA,EAAA,EAQC,MAAA,KAAA,IAAA,GAEA,WAAA,GAAAA,CAAA,CAA8B,CAC/B,MAAA,SAAAA,EAAA,EAQC,MAAA,KAAA,IAAA,GAEA,MAAA,GAAAA,CAAA,CAAoB,CACrB,MAAA,WAAAA,EAAA,EAMC,MAAA,KAAA,IAAA,GAEA,QAAA,GAAAA,CAAA,CAAsB,CACvB,MAAA,YAAAA,EAAA,CAUC,MAFA,MAAA,KAAA,IAAA,GAEA,SAAA,GAAAA,CAAA,CAA6B,CAE/B,CCzFO,MAAAW,EAAA,IAAA,OAEN,MAAAd,EAAAF,EAAA,mBAAA,EACA,IAAAiB,EAAAf,GAAA,YAAAA,EAAA,OAAA,MAAAe,EAAA,GAAA,sBAEC,GAAAC,EAAA,OAAAA,CAAyB,CAG1B,OAAAlB,EAAA,OAAA,cAAA,CACD,EAOamB,EAAAC,GACZR,EAAAQ,CAAA,EAUYC,EAAAP,GACZ,IAAAD,EAAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ define(["require","exports","vue","./forms-Dh0QU6P9.amd","../popup/worker.amd","../utils/system.amd","../utils/route.amd","../utils/scroll.amd","./utils-CPty_L5T.amd","../utils/dom.amd"],function(G,_,h,p,O,k,v,j,l,P){"use strict";if(typeof h>"u")var h=window.Vue;$;let T=!1;const A=()=>{T||(T=!0,document.addEventListener("keydown",e=>{if(e.key!=="Escape"||!e.target)return;const t=e.target;t.closest(".ui-dialog")&&(t.contentEditable==="true"||t.contentEditable==="plaintext-only"||P.querySelectorVisible(document.documentElement,".top-popup-wrapper")||t.classList.contains("autocomplete")||P.querySelectorVisible(document.documentElement,".fancybox-container")||$(".ui-dialog-content:visible:last").dialog("close"))}),$(document).on("click",'[data-action="top-dialog-close"]',e=>{e.preventDefault();const t=e.target.closest('[data-action="top-dialog-close"]'),o=t.closest(".ui-dialog-content");if(!o)return;const a=$(o),i=t.dataset.toView;if(i=="toPrevPage()"){u.toPrevPage(a);return}if(i){var r=i.split("-"),d=r.shift(),n=r.join("-"),s=$("#"+d),g=$('[data-view-page="'+n+'"]',s);if(!g.is(":visible")){const c=l.TopDialogWorker.genViewPageHash(i,"prev");location.hash=c;return}}a.dialog("close")}),$(document).on("submit",".modal-body > form, .modal-layer-body > form",function(e){e.preventDefault()}),$(document).on("keypress",".ui-dialog .modal-body :input:not(.searcher), .ui-dialog .modal-body [contenteditable]",function(e){if(e.key==="ENTER"){if(e.target.classList.contains("autocomplete")){e.preventDefault();return}if(e.target.tagName==="TEXTAREA"){if(!e.ctrlKey&&!e.metaKey)return;const t=e.target.closest("form");if(t){let o=$(":submit:visible",t)[0];o||(o=$(":submit:visible",t)[0]),o==null||o.click()}}}}),$(document).on("click",".ui-widget-overlay",function(){let e,t=0;$(".ui-dialog:visible").each((o,a)=>{const i=Number($(a).css("z-index"));i<t||(e=$(a),t=i)}),e&&$(".ui-dialog-content",e).dialog("close")}),$(window).on("resize",u.recalcPositions),u.recalcPositions())},L=':root{--dialog-border-color: var(--color-line-1);--dialog-loading-duration: 10s;--top-dialog-footer-height: var(--top-forms-base-height_s)}html.with_dialog{overflow:hidden!important}a[data-to-view]{cursor:pointer}.ui-widget-overlay{background:#040404;opacity:.5;filter:Alpha(Opacity=50)}.ui-dialog{border-radius:8px;border:none;padding:0}.ui-dialog.ui-widget{border:none}.ui-dialog-titlebar{display:none}.ui-dialog .ui-dialog-content{padding:0;overflow:visible}.ui-dialog .project_name{word-break:break-all}.ui-dialog-content{--dialog-header-height: 50px;--dialog-layer-pageSelector: 0px}.ui-dialog-content-withPageSelector{--dialog-layer-pageSelector: 42px}.modal-header,.modal-body,.modal-footer{font-size:14px;position:relative}.modal-body{padding:var(--padding-default)}.modal-header{border-bottom:1px solid var(--dialog-border-color);height:var(--dialog-header-height);padding:0 var(--padding-default);display:flex;justify-content:space-between;align-items:center;gap:16px}.modal-header>*{padding:10px 0;font-size:16px}.modal-header>.top-title{margin:0;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1;order:50;display:flex;align-items:center}.modal-header>.top-title>div[class*=icon]{display:none}.modal-header>div:not(.top-title){order:60}.modal-header>div.close{--top-icon-color: var(--color-text-3);cursor:pointer;background:var(--color-layout-front-1);font-size:16px;order:100;animation-name:none!important}.modal-header>div.close:hover{--top-icon-color: var(--color-text-1)}.modal-header .links_icons{position:absolute;right:50px}.modal-header .links_icons [class*=icon-]{width:auto;height:auto;padding:0 5px;color:#d6dee0}.modal-header .links_icons [class*=icon-].active{color:var(--color-bg-warning-1)}.modal-layer-pageSelector{padding:0 10px!important}.modal-body{max-height:calc(var(--100vh) - var(--dialog-header-height) - 1px - var(--dialog-layer-pageSelector) - var(--top-dialog-footer-height, var(--dialog-footer-height)) - 1px);overflow-y:auto;overflow-x:hidden;box-sizing:border-box;flex-grow:1}.modal-body hr{margin:16px -15px}.modal-body h4{padding:0;margin:0 0 10px;line-height:normal}.modal-body .inner{padding:var(--padding-default);margin:0 calc(0px - var(--padding-default));position:relative}.modal-body .inner .bt{border-top:1px dashed var(--color-layout-front-primary-3);position:absolute;top:0;right:0;left:0}.modal-body .inner .bb{border-bottom:1px dashed var(--color-layout-front-primary-3);position:absolute;right:0;bottom:0;left:0}.modal-body .inner.color-1{background:var(--color-layout-front-primary-3);color:var(--color-text-1)}.modal-body .inner strong{color:var(--color-text-1)}.modal-body .comment{line-height:18px}.modal-footer{min-height:var(--top-dialog-footer-height, var(--dialog-footer-height));padding:var(--top-gap-2);display:flex;flex-shrink:0;align-items:center;justify-content:flex-end;gap:var(--top-gap-2)}.modal-footer .modal-footer-btn-left{margin-right:auto}.modal-footer>.btn.full_width,.modal-footer>.top-button.full_width{flex-grow:1;align-self:flex-end}.modal-footer-fullWith{flex-wrap:wrap}.modal-footer-fullWith>*{flex-grow:1}.modal-footer-fullWith>.top-info{flex-grow:5}.modal-footer-fullWith>*:empty{flex-grow:0}.ui-dialog-content>.modal-layer>[data-view-page]>input[type=submit]{position:absolute;visibility:hidden}.help_popup .modal-header{display:none}.help_popup .modal-header a{top:2px;z-index:10}.help_popup .modal-header .top-title{display:none}.modal-layer{overflow:hidden}.modal-layer a[data-top-icon]:empty{color:var(--color-text-4);text-decoration:none}.modal-layer>[data-view-page]>div>div.buttons{display:flex;white-space:nowrap}.modal-layer>[data-view-page]>div>div.buttons:empty{display:none}.modal-layer>[data-view-page]>div>div.buttons>div,.modal-layer>[data-view-page]>div>div.buttons>a{cursor:pointer;width:auto;height:auto;min-width:auto;min-height:auto;padding:10px 9px;color:var(--color-text-4)}.modal-layer>[data-view-page]>div>div.buttons>div:hover{color:var(--color-text-2)}.modal-layer>[data-view-page]>div>div.buttons>div.hidden{display:none!important}.ui-dialog-content[data-view-page-active]{display:flex!important;flex-direction:column;justify-items:stretch}.ui-dialog-content>.modal-layer{display:flex!important;align-items:stretch;position:relative}.ui-dialog-content.i-change-page>.modal-layer{overflow:hidden}.ui-dialog-content>.modal-layer>[data-view-page]{width:100%;position:relative;display:none;flex-direction:column;justify-content:space-between;animation:.3s cubic-bezier(.4,0,.2,1) forwards}.ui-dialog-content>.modal-layer>[data-view-page].active{display:flex}.ui-dialog-content>.modal-layer>[data-view-page].reverse{animation-direction:reverse}.ui-dialog-content>.modal-layer>[data-view-page].center-to-left,.ui-dialog-content>.modal-layer>[data-view-page].right-to-center{display:flex;position:absolute;inset:0}.ui-dialog-content>.modal-layer>[data-view-page].center-to-left>div,.ui-dialog-content>.modal-layer>[data-view-page].right-to-center>div{overflow:hidden}.ui-dialog-content>.modal-layer-header{border-bottom:1px solid var(--dialog-border-color);min-height:var(--dialog-header-height)}.ui-dialog-content>.modal-layer-header>[data-view-page]>.modal-header{border:none;background:none}.ui-dialog-content>.modal-layer-header>[data-view-page]>.modal-header>*{animation:.3s cubic-bezier(.4,0,.2,1) forwards}.ui-dialog-content>.modal-layer-header>[data-view-page].reverse>.modal-header>*{animation-direction:reverse}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>.top-title{animation-name:dialog-center-to-left-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>.top-title{animation-name:dialog-right-to-center-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>[class*=widget-]{animation-name:dialog-center-to-left-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>[class*=widget-]{animation-name:dialog-right-to-center-header-title}.ui-dialog-content>.modal-layer-header>[data-view-page].center-to-left>.modal-header>div{animation-name:dialog-center-to-left-header-icons}.ui-dialog-content>.modal-layer-header>[data-view-page].right-to-center>.modal-header>div{animation-name:dialog-right-to-center-header-icons}.ui-dialog-content>.modal-layer-body{border-radius:0 0 8px 8px;max-height:calc(var(--100vh) - var(--dialog-header-height) - var(--dialog-layer-pageSelector) - var(--toolbar-height));flex-grow:2}.ui-dialog-content.i-change-page>.modal-layer-body>[data-view-page]{background:var(--color-layout-front-1)}.ui-dialog-content>.modal-layer-body>[data-view-page].center-to-left{animation-name:dialog-center-to-left}.ui-dialog-content>.modal-layer-body>[data-view-page].right-to-center{animation-name:dialog-right-to-center}.ui-dialog-content .modal-footer .second_level{box-sizing:border-box;background:var(--color-layout-front-1);width:100%;min-height:25px;display:flex;align-items:center;justify-content:center}.ui-dialog-content .modal-footer .second_level input{border-radius:8px;width:100%;height:var(--top-forms-base-height);padding:var(--top-padding-1) var(--top-padding-3);box-sizing:border-box}.ui-dialog-content>.modal-layer-body>[data-view-page].i-load-data{pointer-events:none}.ui-dialog-content>.modal-layer-body>[data-view-page].i-load-data:before{content:" ";background:#378dc6;width:0;height:4px;position:absolute;top:0;left:0;z-index:100;animation:top-loadbar var(--dialog-loading-duration) forwards}.ui-dialog-content.modal-expanded{width:100vw!important;height:calc(var(--100vh) + 10px)!important}.modal-header>[data-widget]{padding:0 8px;position:absolute;inset:0;opacity:0;overflow:hidden;align-items:center;visibility:hidden;transition:opacity .3s;z-index:1}.modal-header>[data-widget=search] div.cancel{opacity:0;transform:translate(100%);transition:transform,opacity;transition-duration:.3s}[data-view-page].i-show-search .modal-header>:not([data-widget=search]){visibility:hidden}[data-view-page].i-show-search [data-widget=search]{visibility:visible;opacity:1}[data-view-page].i-show-search [data-widget=search] .cancel{transform:translate(0);opacity:1}[data-view-page]>.modal-header>*{transition:opacity .3s}[data-view-page].i-show-search>.modal-header>div.buttons{opacity:0}.modal-layer .top-popup-wrapper{height:100%!important}@keyframes dialog-center-to-left-header-title{0%{transform:translate(0);opacity:1}75%{opacity:0}to{transform:translate(-30%);opacity:0}}@keyframes dialog-right-to-center-header-title{0%{transform:translate(100%);opacity:0}25%{opacity:0}to{transform:translate(0);opacity:1}}@keyframes dialog-center-to-left-header-icons{0%{transform:translate(0);opacity:1}35%{transform:translate(-20%);opacity:0}to{trantransform:translateX(-20%);opacity:0}}@keyframes dialog-right-to-center-header-icons{0%{transform:translate(20%);opacity:0}65%{transform:translate(20%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes dialog-center-to-left{0%{transform:translate(0);filter:brightness(1)}to{transform:translate(-30%);filter:brightness(.9)}}@keyframes dialog-right-to-center{0%{transform:translate(100%);box-shadow:#0000001a 0 0 10px}to{transform:translate(0);box-shadow:#0003 0 0 10px}}@media only screen and (max-width: 1480px){.win_side_panel_opener{display:none}}@media only screen and (min-width: 1480px){.ui-dialog-content.with_side_panel{box-shadow:#0003 0 0 6px}.ui-dialog-content.with_side_panel .modal-layer-body{background:var(--color-layout-front-1)}[data-widget=side_panel]{--side_panel_width: calc((100vw - 900px)/2 - 28px) ;box-sizing:border-box;background:var(--color-layout-front-1);max-width:var(--side_panel_width);padding:18px;position:absolute;top:calc(var(--dialog-header-height) + 1px + var(--dialog-layer-pageSelector));bottom:calc(var(--dialog-footer-height) + 1px);z-index:-1;display:block;transition:.2s}.win_side_panel_left{border-radius:8px 0 0 8px;right:100%}.win_side_panel_right{border-radius:0 8px 8px 0;left:100%}.win_side_panel_closed.win_side_panel_left{right:calc(100% - var(--side_panel_width))}.win_side_panel_closed.win_side_panel_right{left:calc(100% - var(--side_panel_width))}[data-widget=side_panel] .template{display:block}[data-widget=side_panel] .template>.header,[data-widget=side_panel] .template>.footer{display:flex}.win_side_panel_opener{cursor:pointer;background:var(--color-cyan);color:#fff;padding:4px;position:absolute;top:20px}.win_side_panel_closed .win_side_panel_opener:not(:hover){opacity:.3}.win_side_panel_left .win_side_panel_opener{border-radius:4px 0 0 4px;right:100%}.win_side_panel_right .win_side_panel_opener{border-radius:0 6px 6px 0;left:100%}}@media only screen and (max-height: 900px){html.with_dialog{background:#f1f1f1;overflow:hidden}.ui-dialog.me-tightly{border-radius:0;height:auto!important;position:fixed;top:0!important;bottom:0!important}.ui-dialog.me-tightly .ui-dialog-content{min-height:100%!important}.ui-dialog.me-tightly>div>.modal-body{position:absolute;top:var(--dialog-header-height);right:0;left:0;bottom:var(--dialog-header-height)}.ui-dialog.me-tightly>div>.modal-body:last-child{bottom:0}.ui-dialog.me-tightly>div>.modal-footer{position:absolute;right:0;bottom:0;left:0}.ui-dialog.me-tightly .modal-layer-body{border-radius:0;min-height:0!important}.ui-dialog.me-tightly .modal-layer-body .modal-footer{min-height:unset}}',q='html.with_dialog body{height:var(--100vh);overflow:hidden}.ui-widget-overlay{height:calc(100% - var(--toolbar-height))}.ui-dialog{border-radius:0;width:auto!important;height:auto!important;position:fixed;inset:0!important}.ui-dialog-content{width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important}.modal-header>.top-title{text-align:center;font-size:14px}.modal-header>div.close{font-size:14px;order:1}.modal-header>div.close:before{content:""}.modal-body:last-child{bottom:0}.modal-footer{bottom:0}.modal-footer .second_level{padding:10px 8px}.modal-layer-body{min-height:0!important}.ui-dialog-content>.modal-layer-body{border-radius:0}.modal-body,.modal-footer{padding-right:12px;padding-left:12px}.modal-footer .btn:last-child{margin-right:12px}.modal-body .inner{padding:12px;margin:0 -12px;position:relative}',M=".modal-menu-opener{order:1!important}.modal-menu-opener:before{--top-icon-size: 20px;--top-icon-color: #FFF;--top-icon-width: var(--top-icon-size);border-radius:50%;background:var(--color-bg-primary-1);padding:3px;transition:transform .1s}.modal-menu-opener:hover:before{background:var(--color-bg-primary-2)}.modal-menu-opener.top-active:before{background:var(--color-bg-primary-2);transform:scale(.8)}.modal-layer .top-popup-wrapper{background:transparent;width:auto!important;padding:0!important;margin:0!important;top:0!important;right:0!important;left:0!important;transition:background .3s}.modal-layer .top-popup-wrapper>.top-popup[class],.modal-layer .top-popup-wrapper.with_notch>.top-popup[class]{border-radius:8px;border:none;margin:12px!important;max-width:100%;max-height:calc(100% - 24px);inset:0 0 auto!important;overflow:auto;display:flex;flex-direction:column;opacity:1;transform:translateY(calc(-100% - 24px));transition:transform .3s}.modal-layer .top-popup>.top-popup_header{background:var(--color-theme-50)}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select{border:none}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select .text{color:#fff}.modal-layer .top-theme-lite .top-popup>.top-popup_header .select .arrow{background:none}.modal-layer .top-popup-wrapper-shown:not(.top-popup-wrapper-closed){background:#34495e40}@media only screen and (min-width: 1480px){.ui-dialog-content.with_side_panel{box-shadow:#0003 0 0 6px}.ui-dialog-content.with_side_panel .modal-layer-body{background:var(--color-layout-front-1)}[data-widget=side_panel]{--side_panel_width: calc((100vw - 900px)/2 - 28px) ;box-sizing:border-box;background:var(--color-layout-front-1);max-width:var(--side_panel_width);padding:18px;display:block;position:absolute;top:51px;bottom:51px;z-index:-1;transition:.2s}.win_side_panel_left{border-radius:8px 0 0 8px;right:100%}.win_side_panel_right{border-radius:0 8px 8px 0;left:100%}.win_side_panel_closed.win_side_panel_left{right:calc(100% - var(--side_panel_width))}.win_side_panel_closed.win_side_panel_right{left:calc(100% - var(--side_panel_width))}[data-widget=side_panel] .template{display:block}[data-widget=side_panel] .template>.header,[data-widget=side_panel] .template>.footer{display:flex}.win_side_panel_opener{cursor:pointer;background:var(--color-cyan);color:#fff;padding:4px;position:absolute;top:20px}.win_side_panel_closed .win_side_panel_opener:not(:hover){opacity:.3}.win_side_panel_left .win_side_panel_opener{border-radius:4px 0 0 4px;right:100%}.win_side_panel_right .win_side_panel_opener{border-radius:0 6px 6px 0;left:100%}}",B="html{--top-dialog-width: auto;--top-dialog-height: auto}.top-dialog{max-width:100vw}.top-dialog .modal-layer-body{height:var(--top-dialog-height)}",H=".top-dialog{width:var(--top-dialog-width)!important}";p.Core.insertStyleToPage(L),p.Core.insertStyleToPage(q,"m"),p.Core.insertStyleToPage(M,"pc"),p.Core.insertStyleToPage(B),p.Core.insertStyleToPage(H,"pc");let C,f=!1;const D=()=>{$.extend($.ui.dialog.prototype.options,{focus:e=>{var t;e.target.focus(),(t=$("[autofocus]",e.target)[0])==null||t.focus()},create:e=>F(e.target),open:e=>K(e.target),close:e=>R(e.target),modal:!0,resizable:!1,closeOnEscape:!1,width:"auto",minHeight:0}),$.ui.dialog.prototype._focusTabbable=$.noop,$.ui.dialog.prototype._moveToTopOriginal=$.ui.dialog.prototype._moveToTop,$.ui.dialog.prototype._moveToTop=function(){this._moveToTopOriginal();const e=$(this.element);e.trigger("dialogsMoveToTop",[e])},A(),f=!0},z=e=>{var o,a,i,r;const t={};return((a=(o=e[0])==null?void 0:o.dataset)==null?void 0:a.modal)==="false"&&(t.modal=!1),(r=(i=e[0])==null?void 0:i.dataset)!=null&&r.position&&(t.position=JSON.parse(e[0].dataset.position)),t},m=async(e,t,o)=>{if(!e.startsWith("dialog_"))return;const a=l.getDialogWorker(e);if(a&&(a.isOpened.value=!0,t!==void 0&&(a.pageActive.value=t),o!==void 0&&(a.pageActiveNext.value=o),await h.nextTick(),o)){const i=$("#"+e);$('[data-view-page="'+o+'"]',i).length||await k.waitWhile(()=>!$('[data-view-page="'+o+'"]',i).length)}},F=e=>{var a,i;var t=$(e),o=$(".modal-body",t);j.connectScrollShadow(o[0]),(i=(a=l.TopDialogWorker.state).decoratorOnCreate)==null||i.call(a,e),I(e)},I=e=>{$(e).on("aftershow.top-menu-popup","[data-top-popup]",(t,o)=>{l.TopDialogWorker.get$pairPage(o).eq(1).prepend(o)})},K=async e=>{var n;var t=$(e),o=t.data("view-page-active");const a=Number($(window).width());p.Core.state.documentClassModificators.set("top-dialog","with_dialog");const r=Number($(window).width())-a;Number($(document).height())>Number($(window).height())&&$("html").css({"margin-right":r+"px"}),S();const d=l.getDialogWorker(t.attr("id"));(n=d==null?void 0:d.emit)==null||n.call(d,"open",o)},R=async e=>{var r;var t=$(e),o=t.attr("id"),a=t.data("view-page-active");a&&(v.setHash("vpn",l.TopDialogWorker.state.viewPageN),v.setHash("view-"+o,null,!1),(l.TopDialogWorker.state.viewPageN===0||l.TopDialogWorker.state.viewPageN===1)&&v.setHash("vpn",null)),$(".ui-widget-overlay:visible").length||(p.Core.state.documentClassModificators.delete("top-dialog"),$("html").css({"margin-right":""})),t.trigger("viewAfterClose",[t]);const i=l.getDialogWorker(t.attr("id"));i&&(i.isOpened.value=!1,(r=i.emit)==null||r.call(i,"close",a),i.onCloseOnce&&(i.onCloseOnce(i.props,a),i.onCloseOnce=void 0)),window.dispatchEvent(new Event("resize"))},S=()=>{$(".ui-dialog:visible > .ui-dialog-content").each((e,t)=>{const o=$(t),a=$(".modal-body:visible",o),i=o.closest(".ui-dialog");if(!a.length)return;const r=z(o);r.position??={of:window},o.dialog("option",r),i.removeClass("me-tightly"),Number(i.height())>Number($(window).height())&&i.addClass("me-tightly")})},U=async(e,t)=>{const a=/(\w+)[=-]([\w-]+)(?::([\w.:-]+))?/g.exec(e);if(a){const i=a[1],r=a[2],d=a[3];let n=[];d&&(n=d.split(":")),await w(i,r,n,t)}},w=async(e,t,o,a,i)=>{f||await new Promise((d,n)=>{const s=setInterval(()=>{f&&(clearInterval(s),d())},10)}),await h.nextTick();let r;if(typeof e=="object"?r=e:r=$("#"+e),!r.length&&typeof e=="string"&&l.TopDialogWorker.state.load){await l.TopDialogWorker.state.load(e),w(e,t,o,a,i);return}if(await y(r,t,o,a),r.is(".ui-dialog-content"))r.dialog("open");else{const d=z(r);r.dialog(d)}i&&i(r)},y=async(e,t,o,a)=>{if(t===void 0&&(t=e.data("view-page-active")),t!=e.data("view-page-active")){var i=E(e);i&&await k.sleep(100)}o===void 0&&(o=[]),await m(e.attr("id"),void 0,t);var r=$("> .modal-layer",e),d=$("> .active",r),n=$('> [data-view-page="'+t+'"]',r),s=o.join(":");if(a===void 0&&(a="next",n.data("order")<d.data("order")&&(a="prev")),!!n.length){if(e.data("view-page-active",t),n.is(".active")){n.data("view-page-args")!=s&&n.data("view-page-args",s),W(e,n,t,o),x(e,n,t,o);return}switch(n.data("view-page-args",s),$(".top-popup-wrapper",d).length&&O.TopPopupWorker.close($(".top-popup-wrapper",d)[0]),n.closest(".ui-dialog").is(":hidden")&&(a="none"),d.length||(a="none"),n.is(":visible")&&(a="none"),a){case"prev":n.each((g,c)=>{$(c).insertBefore($(c).siblings(".active"))}),d.addClass("right-to-center reverse"),n.addClass("center-to-left reverse");break;case"next":n.each((g,c)=>{$(c).insertAfter($(c).siblings(".active"))}),d.addClass("center-to-left"),n.addClass("right-to-center");break}if(e.attr("view-page-active",t),d.removeClass("active"),n.addClass("active"),W(e,n,t,o),a){e.addClass("i-change-page");const g=Number(n.css("animation-duration").replace("s",""))*1e3;C=setTimeout(function(){m(e.attr("id"),t,""),E(e),x(e,n,t,o)},g)}else await m(e.attr("id"),t,""),x(e,n,t,o)}},X=e=>{var t="",o=$("> .modal-layer",e),a=$("> .active",o).eq(0),i=a.prev("[data-view-page]");t=i.data("view-page"),t?y(e,t,void 0,"prev"):e.dialog("close")},b=new Set,W=(e,t,o,a)=>{const i=e.attr("id")+t.eq(0).data("view-page")+o+a.join();b.has(i)||(b.add(i),setTimeout(function(){b.delete(i),e.trigger("viewBeforeOpen",[e,t,o,a])}))},x=(e,t,o,a)=>{setTimeout(function(){e.trigger("viewAfterOpen",[e,t,o,a])})},V=e=>e.is(".i-change-page"),E=e=>{if(!V(e))return!1;clearTimeout(C);var t=$("> .modal-layer",e),o=e.data("view-page-active");return e.removeClass("i-change-page"),$("> [data-view-page]",t).removeClass("center-to-left right-to-center reverse active"),$('> [data-view-page="'+o+'"]',t).addClass("active"),!0},u={updatePageVue:m,recalcPositions:S,toViewDirty:U,toView:w,toViewPage:y,toPrevPage:X,setLoading:(e,t,o)=>{e.is("[data-view-page]")||(e=$("[data-view-page]:visible",e)),t?(o!==void 0&&e.each((a,i)=>{i.style.setProperty("--dialog-loading-duration",o+"s")}),e.addClass("i-load-data")):(e.removeClass("i-load-data"),e.each((a,i)=>{i.style.setProperty("--dialog-loading-duration","10s")}))},isLoading:e=>e.is(".i-load-data"),inAnimation:V,close:function(e){const t=$("#"+e);t.dialog("instance")&&t.dialog("close")}};D(),_.TopDialogUtils=u,Object.defineProperty(_,Symbol.toStringTag,{value:"Module"})});
2
+ //# sourceMappingURL=utils-DAfofcEq.amd.js.map