@topvisor/ui 1.0.42-checkvisibility.3 → 1.0.42-dev.1

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 (993) hide show
  1. package/.env_example +1 -0
  2. package/.gitlab-ci/.gitlab-ci.yml +27 -0
  3. package/.gitlab-ci/README.md +59 -0
  4. package/.gitlab-ci/common/install.yml +21 -0
  5. package/.gitlab-ci/common/lint.yml +11 -0
  6. package/.gitlab-ci/common/redmine.yml +12 -0
  7. package/.gitlab-ci/common/version.yml +34 -0
  8. package/.gitlab-ci/storybook/build.yml +18 -0
  9. package/.gitlab-ci/storybook/deploy.yml +50 -0
  10. package/.gitlab-ci/ui/build.yml +12 -0
  11. package/.gitlab-ci/ui/deploy-dist.yml +89 -0
  12. package/.gitlab-ci/ui/deploy.yml +19 -0
  13. package/.idea/.gitignore +11 -0
  14. package/.idea/codeStyles/Project.xml +205 -0
  15. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  16. package/.idea/externalDependencies.xml +6 -0
  17. package/.idea/icon.svg +5 -0
  18. package/.idea/inspectionProfiles/Disabled.xml +824 -0
  19. package/.idea/inspectionProfiles/Project_Default.xml +33 -0
  20. package/.idea/modules.xml +8 -0
  21. package/.idea/php.xml +19 -0
  22. package/.idea/ui.iml +8 -0
  23. package/.idea/vcs.xml +12 -0
  24. package/.storybook/TopTheme.ts +115 -0
  25. package/.storybook/TopThemeManager.ts +53 -0
  26. package/.storybook/argsArrayDecorator.ts +120 -0
  27. package/.storybook/main.ts +78 -0
  28. package/.storybook/manager.ts +25 -0
  29. package/.storybook/preview-head.html +21 -0
  30. package/.storybook/preview.ts +50 -0
  31. package/.storybook/vue/coreDecorator.ts +86 -0
  32. package/.storybook/vue/vModelDecorator.ts +46 -0
  33. package/.versionrc.json +16 -0
  34. package/.vscode/extensions.json +11 -0
  35. package/.vscode/keybindings.example.json +121 -0
  36. package/.vscode/settings.json +45 -0
  37. package/CHANGELOG.md +426 -0
  38. package/NPM.md +25 -0
  39. package/PUBLISH.md +88 -0
  40. package/README.md +37 -59
  41. package/STORYBOOK.md +41 -0
  42. package/USE_IN_PROJECT.md +32 -0
  43. package/package.json +63 -2
  44. package/public/README.md +82 -0
  45. package/rollup.config.ts +38 -0
  46. package/scripts/afterBuild.sh +13 -0
  47. package/scripts/cssModules.ts +39 -0
  48. package/scripts/genDocs.sh +20 -0
  49. package/scripts/plugin/amdFix.ts +83 -0
  50. package/scripts/plugin/autoloadCSS.ts +155 -0
  51. package/src/CHANGELOG.md.mdx +4 -0
  52. package/src/components/charts/charts.ts +8 -0
  53. package/src/components/charts/miniChart/miniChart.stories.ts +66 -0
  54. package/src/components/charts/miniChart/miniChart.vue +158 -0
  55. package/src/components/charts/miniChart/stories/README.md +9 -0
  56. package/src/components/charts/miniChart/stories/dummy.ts +25 -0
  57. package/src/components/charts/miniChart/styles/miniChart.css +87 -0
  58. package/src/components/charts/miniChart/types.ts +110 -0
  59. package/src/components/charts/miniChart/utils/consts.ts +9 -0
  60. package/src/components/charts/miniCharts/miniCharts.stories.ts +75 -0
  61. package/src/components/charts/miniCharts/miniCharts.ts +24 -0
  62. package/src/components/charts/miniCharts/miniCharts.vue +124 -0
  63. package/src/components/charts/miniCharts/stories/README.md +18 -0
  64. package/src/components/charts/miniCharts/stories/dummy.ts +70 -0
  65. package/src/components/charts/miniCharts/stories/overview.vue +139 -0
  66. package/src/components/charts/miniCharts/styles/miniCharts.css +32 -0
  67. package/src/components/component.ts +130 -0
  68. package/src/components/core/core.mdx +7 -0
  69. package/src/components/core/notice/item/item.vue +145 -0
  70. package/src/components/core/notice/item/style.css +70 -0
  71. package/src/components/core/notice/item/types.ts +74 -0
  72. package/src/components/core/notice/notice.stories.ts +104 -0
  73. package/src/components/core/notice/notice.vue +69 -0
  74. package/src/components/core/notice/stories/README.md +34 -0
  75. package/src/components/core/notice/utils.ts +115 -0
  76. package/src/components/dialog/dialog/Dialog (code).mdx +61 -0
  77. package/src/components/dialog/dialog/composables/asyncDialogHandle.ts +99 -0
  78. package/src/components/dialog/dialog/composables/dialogHandle.ts +178 -0
  79. package/src/components/dialog/dialog/composables/types.ts +12 -0
  80. package/src/components/dialog/dialog/composables/utils.ts +39 -0
  81. package/src/components/dialog/dialog/dialog.stories.ts +82 -0
  82. package/src/components/dialog/dialog/dialog.vue +74 -0
  83. package/src/components/dialog/dialog/dialogs/dialogs.vue +61 -0
  84. package/src/components/dialog/dialog/page/page.vue +86 -0
  85. package/src/components/dialog/dialog/page/types.ts +84 -0
  86. package/src/components/dialog/dialog/page.stories.ts +26 -0
  87. package/src/components/dialog/dialog/pageComponent/pageComponent.vue +57 -0
  88. package/src/components/dialog/dialog/pageComponent/types.ts +21 -0
  89. package/src/components/dialog/dialog/pageComponent.stories.ts +26 -0
  90. package/src/components/dialog/dialog/stories/README.md +117 -0
  91. package/src/components/dialog/dialog/stories/autoload.ts +12 -0
  92. package/src/components/dialog/dialog/stories/dialog_example/dialog_example.vue +77 -0
  93. package/src/components/dialog/dialog/stories/dialog_example/pages/async.vue +57 -0
  94. package/src/components/dialog/dialog/stories/dialog_example/pages/default.vue +56 -0
  95. package/src/components/dialog/dialog/stories/dialog_example/pages/headerButtons.vue +56 -0
  96. package/src/components/dialog/dialog/stories/dialog_example/pages/utils.ts +26 -0
  97. package/src/components/dialog/dialog/stories/dialog_example/pages/withoutCache.vue +56 -0
  98. package/src/components/dialog/dialog/stories/page/README.md +24 -0
  99. package/src/components/dialog/dialog/stories/pageComponent/README.md +12 -0
  100. package/src/components/dialog/dialog/style/dialog.css +319 -0
  101. package/src/components/dialog/dialog/style/dialog.m.css +40 -0
  102. package/src/components/dialog/dialog/style/dialog.pc.css +73 -0
  103. package/src/components/dialog/dialog/style/modern/dialog.css +12 -0
  104. package/src/components/dialog/dialog/style/modern/dialog.pc.css +3 -0
  105. package/src/components/dialog/dialog/types.ts +69 -0
  106. package/src/components/dialog/dialog.ts +7 -0
  107. package/src/components/dialog/lib/types.ts +42 -0
  108. package/src/components/dialog/lib/utils.globalEvents.ts +214 -0
  109. package/src/components/dialog/lib/utils.ts +656 -0
  110. package/src/components/dialog/lib/worker.ts +362 -0
  111. package/src/components/extra/extra.ts +5 -0
  112. package/src/components/extra/rive/rive.vue +56 -0
  113. package/src/components/extra/rive/rives.stories.ts +65 -0
  114. package/src/components/extra/rive/stories/README.md +40 -0
  115. package/src/components/extra/rive/stories/nope.riv +0 -0
  116. package/src/components/extra/rive/stories/sadness.riv +0 -0
  117. package/src/components/extra/rive/types.ts +8 -0
  118. package/src/components/forms/README.mdx +10 -0
  119. package/src/components/forms/avatar/avatar.stories.ts +37 -0
  120. package/src/components/forms/avatar/avatar.vue +77 -0
  121. package/src/components/forms/avatar/stories/overview.vue +30 -0
  122. package/src/components/forms/avatar/types.ts +38 -0
  123. package/src/components/forms/button/button.stories.ts +117 -0
  124. package/src/components/forms/button/button.vue +111 -0
  125. package/src/components/forms/button/stories/README.md +9 -0
  126. package/src/components/forms/button/stories/overview.vue +36 -0
  127. package/src/components/forms/button/style/button.css +146 -0
  128. package/src/components/forms/button/style/style-outline.css +129 -0
  129. package/src/components/forms/button/style/style-soft.css +89 -0
  130. package/src/components/forms/button/style/style-transparent.css +39 -0
  131. package/src/components/forms/button/types.ts +59 -0
  132. package/src/components/forms/caption/caption.stories.ts +108 -0
  133. package/src/components/forms/caption/caption.vue +29 -0
  134. package/src/components/forms/caption/types.ts +10 -0
  135. package/src/components/forms/checkbox/checkbox.stories.ts +32 -0
  136. package/src/components/forms/checkbox/checkbox.vue +115 -0
  137. package/src/components/forms/checkbox/stories/overview.vue +171 -0
  138. package/src/components/forms/checkbox/types.ts +21 -0
  139. package/src/components/forms/controlLabel/controlLabel.stories.ts +31 -0
  140. package/src/components/forms/controlLabel/controlLabel.vue +54 -0
  141. package/src/components/forms/controlLabel/types.ts +4 -0
  142. package/src/components/forms/forms.ts +44 -0
  143. package/src/components/forms/hint/hint.stories.ts +40 -0
  144. package/src/components/forms/hint/hint.vue +32 -0
  145. package/src/components/forms/hint/types.ts +8 -0
  146. package/src/components/forms/input/input.stories.ts +31 -0
  147. package/src/components/forms/input/input.vue +178 -0
  148. package/src/components/forms/input/stories/overview.vue +63 -0
  149. package/src/components/forms/input/types.ts +31 -0
  150. package/src/components/forms/inputDate/datepicker.css +246 -0
  151. package/src/components/forms/inputDate/datepicker.ts +101 -0
  152. package/src/components/forms/inputDate/inputDate.stories.ts +40 -0
  153. package/src/components/forms/inputDate/inputDate.vue +133 -0
  154. package/src/components/forms/inputDate/stories/overview.vue +35 -0
  155. package/src/components/forms/inputDate/types.ts +1 -0
  156. package/src/components/forms/inputRange/inputRange.stories.ts +52 -0
  157. package/src/components/forms/inputRange/inputRange.vue +39 -0
  158. package/src/components/forms/inputRange/stories/overview.vue +129 -0
  159. package/src/components/forms/inputRange/types.ts +3 -0
  160. package/src/components/forms/loadbar/loadbar.stories.ts +22 -0
  161. package/src/components/forms/loadbar/loadbar.vue +37 -0
  162. package/src/components/forms/loadbar/stories/README.md +6 -0
  163. package/src/components/forms/preloader/preloader.stories.ts +46 -0
  164. package/src/components/forms/preloader/preloader.vue +103 -0
  165. package/src/components/forms/preloader/stories/README.md +26 -0
  166. package/src/components/forms/preloader/types.ts +3 -0
  167. package/src/components/forms/radio/radio.stories.ts +33 -0
  168. package/src/components/forms/radio/radio.vue +97 -0
  169. package/src/components/forms/radio/stories/overview.vue +79 -0
  170. package/src/components/forms/radio/types.ts +15 -0
  171. package/src/components/forms/select/select.stories.ts +68 -0
  172. package/src/components/forms/select/select.vue +299 -0
  173. package/src/components/forms/select/stories/exampleOptions.ts +61 -0
  174. package/src/components/forms/select/stories/overview.vue +72 -0
  175. package/src/components/forms/select/types.ts +68 -0
  176. package/src/components/forms/switcher/stories/overview.vue +139 -0
  177. package/src/components/forms/switcher/switcher.stories.ts +32 -0
  178. package/src/components/forms/switcher/switcher.vue +118 -0
  179. package/src/components/forms/switcher/types.ts +22 -0
  180. package/src/components/forms/textarea/stories/overview.vue +89 -0
  181. package/src/components/forms/textarea/textarea.stories.ts +33 -0
  182. package/src/components/forms/textarea/textarea.vue +143 -0
  183. package/src/components/forms/textarea/types.ts +52 -0
  184. package/src/components/formsExt/README.mdx +5 -0
  185. package/src/components/formsExt/checkboxGroup/checkboxGroup.stories.ts +36 -0
  186. package/src/components/formsExt/checkboxGroup/checkboxGroup.vue +159 -0
  187. package/src/components/formsExt/checkboxGroup/stories/example.ts +42 -0
  188. package/src/components/formsExt/checkboxGroup/stories/overview.vue +36 -0
  189. package/src/components/formsExt/checkboxGroup/types.ts +23 -0
  190. package/src/components/formsExt/editArea/editArea.stories.ts +40 -0
  191. package/src/components/formsExt/editArea/editArea.vue +194 -0
  192. package/src/components/formsExt/editArea/stories/README.md +21 -0
  193. package/src/components/formsExt/editArea/stories/overview.vue +67 -0
  194. package/src/components/formsExt/editArea/types.ts +41 -0
  195. package/src/components/formsExt/editInput/editInput.stories.ts +35 -0
  196. package/src/components/formsExt/editInput/editInput.vue +54 -0
  197. package/src/components/formsExt/editInput/stories/overview.vue +54 -0
  198. package/src/components/formsExt/editInput/types.ts +20 -0
  199. package/src/components/formsExt/formsExt.ts +19 -0
  200. package/src/components/formsExt/info/info.stories.ts +34 -0
  201. package/src/components/formsExt/info/info.vue +84 -0
  202. package/src/components/formsExt/info/stories/overview.vue +29 -0
  203. package/src/components/formsExt/info/types.ts +25 -0
  204. package/src/components/formsExt/menu/menu.stories.ts +58 -0
  205. package/src/components/formsExt/menu/menu.vue +324 -0
  206. package/src/components/formsExt/menu/stories/items.ts +18 -0
  207. package/src/components/formsExt/menu/stories/overview.vue +52 -0
  208. package/src/components/formsExt/menu/types.ts +45 -0
  209. package/src/components/formsExt/policy/policy.stories.ts +66 -0
  210. package/src/components/formsExt/policy/policy.vue +75 -0
  211. package/src/components/formsExt/policy/types.ts +11 -0
  212. package/src/components/formsExt/radioGroup/radioGroup.stories.ts +35 -0
  213. package/src/components/formsExt/radioGroup/radioGroup.vue +142 -0
  214. package/src/components/formsExt/radioGroup/stories/example.ts +43 -0
  215. package/src/components/formsExt/radioGroup/stories/overview.vue +35 -0
  216. package/src/components/formsExt/radioGroup/types.ts +27 -0
  217. package/src/components/formsExt/selector2/composables/useAPI.ts +151 -0
  218. package/src/components/formsExt/selector2/composables/useMenu.ts +165 -0
  219. package/src/components/formsExt/selector2/itemMulti.vue +57 -0
  220. package/src/components/formsExt/selector2/selector2.stories.ts +123 -0
  221. package/src/components/formsExt/selector2/selector2.vue +448 -0
  222. package/src/components/formsExt/selector2/stories/README.md +146 -0
  223. package/src/components/formsExt/selector2/stories/dummyAPIRequest.ts +57 -0
  224. package/src/components/formsExt/selector2/stories/overview.vue +95 -0
  225. package/src/components/formsExt/selector2/types.ts +184 -0
  226. package/src/components/formsExt/selector2/utils.ts +22 -0
  227. package/src/components/helpersStories.ts +331 -0
  228. package/src/components/layout/islandRows/islandRows.stories.ts +138 -0
  229. package/src/components/layout/islandRows/islandRows.vue +53 -0
  230. package/src/components/layout/islandRows/islandRowsRow/islandRowsRow.vue +36 -0
  231. package/src/components/layout/islandRows/islandRowsRow/types.ts +1 -0
  232. package/src/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue +16 -0
  233. package/src/components/layout/islandRows/stories/README.md +8 -0
  234. package/src/components/layout/islandRows/types.ts +11 -0
  235. package/src/components/layout/layout.ts +11 -0
  236. package/src/components/layout/rows/rows.stories.ts +47 -0
  237. package/src/components/layout/rows/rows.vue +46 -0
  238. package/src/components/layout/rows/stories/README.md +10 -0
  239. package/src/components/layout/rows/types.ts +6 -0
  240. package/src/components/popup/alert/alert.stories.ts +70 -0
  241. package/src/components/popup/alert/alert.vue +49 -0
  242. package/src/components/popup/alert/stories/overview.vue +40 -0
  243. package/src/components/popup/alert/types.ts +11 -0
  244. package/src/components/popup/confirm/confirm.stories.ts +74 -0
  245. package/src/components/popup/confirm/confirm.vue +78 -0
  246. package/src/components/popup/confirm/stories/overview.vue +62 -0
  247. package/src/components/popup/confirm/types.ts +26 -0
  248. package/src/components/popup/lib/popup.globalEvents.ts +271 -0
  249. package/src/components/popup/lib/popup.ts +858 -0
  250. package/src/components/popup/lib/worker.globalEvents.ts +101 -0
  251. package/src/components/popup/lib/worker.ts +305 -0
  252. package/src/components/popup/popup/listItem.vue +35 -0
  253. package/src/components/popup/popup/opener.vue +82 -0
  254. package/src/components/popup/popup/popup.stories.ts +73 -0
  255. package/src/components/popup/popup/popup.vue +176 -0
  256. package/src/components/popup/popup/stories/README.md +145 -0
  257. package/src/components/popup/popup/stories/listItems.vue +69 -0
  258. package/src/components/popup/popup/stories/listSubItems.vue +47 -0
  259. package/src/components/popup/popup/stories/overview.vue +224 -0
  260. package/src/components/popup/popup/style/popup.css +355 -0
  261. package/src/components/popup/popup/style/popup.m.css +70 -0
  262. package/src/components/popup/popup/style/popup.pc.css +26 -0
  263. package/src/components/popup/popup/types.ts +131 -0
  264. package/src/components/popup/popup/widgetInput.vue +43 -0
  265. package/src/components/popup/popup.ts +17 -0
  266. package/src/components/popup/prompt/prompt.stories.ts +76 -0
  267. package/src/components/popup/prompt/prompt.vue +87 -0
  268. package/src/components/popup/prompt/stories/overview.vue +50 -0
  269. package/src/components/popup/prompt/types.ts +26 -0
  270. package/src/components/project/project.ts +23 -0
  271. package/src/components/project/selectorCompetitors/composables.ts +20 -0
  272. package/src/components/project/selectorCompetitors/selectorCompetitors.stories.ts +32 -0
  273. package/src/components/project/selectorCompetitors/selectorCompetitors.vue +75 -0
  274. package/src/components/project/selectorCompetitors/stories/README.md +20 -0
  275. package/src/components/project/selectorCompetitors/stories/items.ts +30 -0
  276. package/src/components/project/selectorCompetitors/types.ts +35 -0
  277. package/src/components/project/selectorRegion/composables/compare.ts +87 -0
  278. package/src/components/project/selectorRegion/composables/selectRegion.ts +146 -0
  279. package/src/components/project/selectorRegion/composables/selectSearcher.ts +64 -0
  280. package/src/components/project/selectorRegion/composables/selectorRegion.ts +167 -0
  281. package/src/components/project/selectorRegion/dialog_selectorRegions/dialog_selectorRegions.vue +252 -0
  282. package/src/components/project/selectorRegion/dialog_selectorRegions/style.css +49 -0
  283. package/src/components/project/selectorRegion/dialog_selectorRegions/types.ts +31 -0
  284. package/src/components/project/selectorRegion/selectorRegion.stories.ts +84 -0
  285. package/src/components/project/selectorRegion/selectorRegion.vue +365 -0
  286. package/src/components/project/selectorRegion/stories/README.md +36 -0
  287. package/src/components/project/selectorRegion/stories/searchers.ts +77 -0
  288. package/src/components/project/selectorRegion/styles/searcherColors.css +41 -0
  289. package/src/components/project/selectorRegion/types.ts +206 -0
  290. package/src/components/project/selectorRegion/utils/consts.ts +88 -0
  291. package/src/components/project/selectorRegion/utils/utils.ts +178 -0
  292. package/src/components/project/tagSelector/popupListItem/tagPopupListItem.vue +209 -0
  293. package/src/components/project/tagSelector/popupListItem/types.ts +40 -0
  294. package/src/components/project/tagSelector/popupOpener/popupOpener.vue +140 -0
  295. package/src/components/project/tagSelector/popupOpener/types.ts +74 -0
  296. package/src/components/project/tagSelector/stories/README.md +62 -0
  297. package/src/components/project/tagSelector/stories/overview.vue +152 -0
  298. package/src/components/project/tagSelector/tagIcon/tagIcon.vue +96 -0
  299. package/src/components/project/tagSelector/tagIcon/types.ts +25 -0
  300. package/src/components/project/tagSelector/tagSelector.stories.ts +50 -0
  301. package/src/components/project/tagSelector/tagSelector.vue +360 -0
  302. package/src/components/project/tagSelector/tagsDefaults.ts +54 -0
  303. package/src/components/project/tagSelector/types.ts +162 -0
  304. package/src/components/project/tagSelector/utils/el.ts +151 -0
  305. package/src/components/project/tagSelector/utils/utils.ts +30 -0
  306. package/src/components/tabs/tabs/content.vue +24 -0
  307. package/src/components/tabs/tabs/stories/README.md +12 -0
  308. package/src/components/tabs/tabs/tab.vue +49 -0
  309. package/src/components/tabs/tabs/tabs.stories.ts +170 -0
  310. package/src/components/tabs/tabs/tabs.vue +64 -0
  311. package/src/components/tabs/tabs/types.ts +22 -0
  312. package/src/components/tabs/tabs.ts +9 -0
  313. package/src/components/tabsView/tabsView/menu.vue +291 -0
  314. package/src/components/tabsView/tabsView/menuDelimeter.vue +26 -0
  315. package/src/components/tabsView/tabsView/menuItem.vue +125 -0
  316. package/src/components/tabsView/tabsView/menuTitle.vue +46 -0
  317. package/src/components/tabsView/tabsView/store.ts +60 -0
  318. package/src/components/tabsView/tabsView/stories/README.md +22 -0
  319. package/src/components/tabsView/tabsView/tabsView.stories.ts +169 -0
  320. package/src/components/tabsView/tabsView/tabsView.vue +120 -0
  321. package/src/components/tabsView/tabsView/types.ts +118 -0
  322. package/src/components/tabsView/tabsView/utils.ts +27 -0
  323. package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuItem.stories.ts +46 -0
  324. package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuTitle.stories.ts +42 -0
  325. package/src/components/tabsView/tabsView.ts +9 -0
  326. package/src/components/types.ts +6 -0
  327. package/src/core/app.ts +22 -0
  328. package/src/core/core/core.mdx +36 -0
  329. package/src/core/core/core.ts +287 -0
  330. package/src/core/core/events/resize.ts +47 -0
  331. package/src/core/core/events.ts +6 -0
  332. package/src/core/core/jQuery.mdx +41 -0
  333. package/src/core/core/options.ts +52 -0
  334. package/src/core/core/preloaders.ts +31 -0
  335. package/src/core/core/state.ts +61 -0
  336. package/src/core/directives/data.mdx +24 -0
  337. package/src/core/directives/data.ts +25 -0
  338. package/src/core/directives/focus.mdx +28 -0
  339. package/src/core/directives/focus.ts +73 -0
  340. package/src/core/directives/preloader.ts +23 -0
  341. package/src/core/directives/scrollIntoView.mdx +41 -0
  342. package/src/core/directives/scrollIntoView.ts +123 -0
  343. package/src/core/directives/scrollShadow.mdx +23 -0
  344. package/src/core/directives/scrollShadow.ts +27 -0
  345. package/src/core/directives/sticky.mdx +29 -0
  346. package/src/core/directives/sticky.ts +32 -0
  347. package/src/core/directives/swimUp.mdx +27 -0
  348. package/src/core/directives/swimUp.ts +95 -0
  349. package/src/core/directives/tooltip.mdx +13 -0
  350. package/src/core/directives/tooltip.ts +57 -0
  351. package/src/core/icons/gallery.vue +70 -0
  352. package/src/core/icons/icons.mdx +24 -0
  353. package/src/core/icons/icons.stories.ts +14 -0
  354. package/src/core/plugins/core.ts +131 -0
  355. package/src/core/plugins/i18n.ts +189 -0
  356. package/src/core/plugins/piniaTPA.ts +432 -0
  357. package/src/core/plugins/plugins.mdx +82 -0
  358. package/src/core/styles/CSS Variables.stories.ts +17 -0
  359. package/src/core/styles/styles.mdx +26 -0
  360. package/src/core/theme/Variables.stories.ts +16 -0
  361. package/src/core/theme/theme.mdx +117 -0
  362. package/src/core/utils/References/Docs.mdx +23 -0
  363. package/src/core/utils/References/check/Docs.mdx +13 -0
  364. package/src/core/utils/References/check/functions/getDomainRegexp.mdx +13 -0
  365. package/src/core/utils/References/check/functions/isDomain.mdx +19 -0
  366. package/src/core/utils/References/check/functions/isEmail.mdx +20 -0
  367. package/src/core/utils/References/check/functions/isIp.mdx +19 -0
  368. package/src/core/utils/References/check/functions/validUrl.mdx +20 -0
  369. package/src/core/utils/References/clipboard/Docs.mdx +8 -0
  370. package/src/core/utils/References/clipboard/functions/guestLinkToClipboard.mdx +19 -0
  371. package/src/core/utils/References/clipboard/functions/setClipboard.mdx +20 -0
  372. package/src/core/utils/References/date/Docs.mdx +15 -0
  373. package/src/core/utils/References/date/functions/dateFormat.mdx +26 -0
  374. package/src/core/utils/References/date/functions/dateToString.mdx +24 -0
  375. package/src/core/utils/References/date/functions/dateUnformat.mdx +20 -0
  376. package/src/core/utils/References/date/functions/genDate.mdx +24 -0
  377. package/src/core/utils/References/date/functions/genDateMoscow.mdx +20 -0
  378. package/src/core/utils/References/date/functions/getDayOfWeek.mdx +24 -0
  379. package/src/core/utils/References/date/functions/stringToDate.mdx +19 -0
  380. package/src/core/utils/References/device/Docs.mdx +19 -0
  381. package/src/core/utils/References/device/functions/get$scroll.mdx +13 -0
  382. package/src/core/utils/References/device/functions/getCommandKeyLabel.mdx +13 -0
  383. package/src/core/utils/References/device/functions/getElsScroll.mdx +13 -0
  384. package/src/core/utils/References/device/functions/getOS.mdx +15 -0
  385. package/src/core/utils/References/device/functions/getOSAsync.mdx +13 -0
  386. package/src/core/utils/References/device/functions/getScrollTop.mdx +13 -0
  387. package/src/core/utils/References/device/functions/isApp.mdx +13 -0
  388. package/src/core/utils/References/device/functions/isMacOS.mdx +13 -0
  389. package/src/core/utils/References/device/functions/isMobile.mdx +13 -0
  390. package/src/core/utils/References/device/functions/isRetina.mdx +13 -0
  391. package/src/core/utils/References/device/functions/isSafari.mdx +13 -0
  392. package/src/core/utils/References/dom/Docs.mdx +25 -0
  393. package/src/core/utils/References/dom/functions/css.mdx +22 -0
  394. package/src/core/utils/References/dom/functions/genEl.mdx +26 -0
  395. package/src/core/utils/References/dom/functions/isVisible.mdx +21 -0
  396. package/src/core/utils/References/dom/functions/offset.mdx +33 -0
  397. package/src/core/utils/References/dom/functions/querySelectorAllArray.mdx +20 -0
  398. package/src/core/utils/References/dom/functions/querySelectorAllVisible.mdx +20 -0
  399. package/src/core/utils/References/dom/functions/querySelectorVisible.mdx +23 -0
  400. package/src/core/utils/References/dom/functions/querySelectorVisibleLast.mdx +23 -0
  401. package/src/core/utils/References/dom/functions/storage.mdx +26 -0
  402. package/src/core/utils/References/dom/functions/storageClear.mdx +19 -0
  403. package/src/core/utils/References/dom/functions/wrap.mdx +20 -0
  404. package/src/core/utils/References/dom/variables/default.mdx +245 -0
  405. package/src/core/utils/References/image/Docs.mdx +10 -0
  406. package/src/core/utils/References/image/functions/downloadImageFromString.mdx +20 -0
  407. package/src/core/utils/References/image/functions/genFaviconImgHtml.mdx +20 -0
  408. package/src/core/utils/References/keyboard/Docs.mdx +9 -0
  409. package/src/core/utils/References/keyboard/functions/invertKeyboardLayout.mdx +19 -0
  410. package/src/core/utils/References/lodash/Docs.mdx +18 -0
  411. package/src/core/utils/References/lodash/functions/cloneDeep.mdx +27 -0
  412. package/src/core/utils/References/lodash/functions/debounce.mdx +72 -0
  413. package/src/core/utils/References/lodash/functions/merge.mdx +190 -0
  414. package/src/core/utils/References/lodash/functions/throttle.mdx +69 -0
  415. package/src/core/utils/References/lodash/variables/memoize.mdx +42 -0
  416. package/src/core/utils/References/number/Docs.mdx +10 -0
  417. package/src/core/utils/References/number/functions/percentOfNumber.mdx +24 -0
  418. package/src/core/utils/References/number/functions/randomBySeed.mdx +21 -0
  419. package/src/core/utils/References/price/Docs.mdx +9 -0
  420. package/src/core/utils/References/price/functions/genPrice.mdx +26 -0
  421. package/src/core/utils/References/route/Docs.mdx +14 -0
  422. package/src/core/utils/References/route/functions/delHash.mdx +24 -0
  423. package/src/core/utils/References/route/functions/genHash.mdx +24 -0
  424. package/src/core/utils/References/route/functions/getHash.mdx +20 -0
  425. package/src/core/utils/References/route/functions/historySetState.mdx +29 -0
  426. package/src/core/utils/References/route/functions/setHash.mdx +24 -0
  427. package/src/core/utils/References/route/functions/setHashs.mdx +20 -0
  428. package/src/core/utils/References/scroll/Docs.mdx +13 -0
  429. package/src/core/utils/References/scroll/functions/amountScrolled.mdx +15 -0
  430. package/src/core/utils/References/scroll/functions/connectScrollShadow.mdx +26 -0
  431. package/src/core/utils/References/scroll/functions/genHasScroll.mdx +23 -0
  432. package/src/core/utils/References/scroll/functions/getScrollPercent.mdx +19 -0
  433. package/src/core/utils/References/scroll/functions/unconnectScrollShadow.mdx +17 -0
  434. package/src/core/utils/References/searchers/Docs.mdx +17 -0
  435. package/src/core/utils/References/searchers/functions/genVolumeLabel.mdx +24 -0
  436. package/src/core/utils/References/searchers/functions/getDeviceGIcon.mdx +19 -0
  437. package/src/core/utils/References/searchers/functions/getLangLabel.mdx +20 -0
  438. package/src/core/utils/References/searchers/functions/getSearcherGIcon.mdx +19 -0
  439. package/src/core/utils/References/searchers/functions/prepareVolumeType.mdx +20 -0
  440. package/src/core/utils/References/searchers/variables/searchersNames.mdx +83 -0
  441. package/src/core/utils/References/store/Docs.mdx +22 -0
  442. package/src/core/utils/References/store/functions/defineStore.mdx +34 -0
  443. package/src/core/utils/References/store/functions/useStore.mdx +27 -0
  444. package/src/core/utils/References/store/interfaces/Store.mdx +29 -0
  445. package/src/core/utils/References/store/variables/plugin.mdx +64 -0
  446. package/src/core/utils/References/string/Docs.mdx +24 -0
  447. package/src/core/utils/References/string/functions/addCommasWhite.mdx +19 -0
  448. package/src/core/utils/References/string/functions/addLinkTags.mdx +21 -0
  449. package/src/core/utils/References/string/functions/camelToSnakeCase.mdx +19 -0
  450. package/src/core/utils/References/string/functions/ellipsis.mdx +24 -0
  451. package/src/core/utils/References/string/functions/genFlagLinkByCountryCode.mdx +23 -0
  452. package/src/core/utils/References/string/functions/genIntHash.mdx +19 -0
  453. package/src/core/utils/References/string/functions/getRandomHash.mdx +19 -0
  454. package/src/core/utils/References/string/functions/highlightHtml.mdx +23 -0
  455. package/src/core/utils/References/string/functions/htmlspecialchars.mdx +19 -0
  456. package/src/core/utils/References/string/functions/isUrl.mdx +19 -0
  457. package/src/core/utils/References/string/functions/nl2br.mdx +19 -0
  458. package/src/core/utils/References/string/functions/numberEnding.mdx +26 -0
  459. package/src/core/utils/References/string/functions/numberWithWord.mdx +26 -0
  460. package/src/core/utils/References/string/functions/rusToLatin.mdx +19 -0
  461. package/src/core/utils/References/string/functions/toCapitalize.mdx +19 -0
  462. package/src/core/utils/References/string/functions/toRoditPadej.mdx +19 -0
  463. package/src/core/utils/References/system/Docs.mdx +11 -0
  464. package/src/core/utils/References/system/functions/sleep.mdx +19 -0
  465. package/src/core/utils/References/system/functions/sleepWhile.mdx +27 -0
  466. package/src/core/utils/References/system/functions/waitWhile.mdx +27 -0
  467. package/src/core/utils/References/url/Docs.mdx +15 -0
  468. package/src/core/utils/References/url/functions/decode.mdx +19 -0
  469. package/src/core/utils/References/url/functions/encode.mdx +19 -0
  470. package/src/core/utils/References/url/functions/fromPuny.mdx +21 -0
  471. package/src/core/utils/References/url/functions/getHost.mdx +19 -0
  472. package/src/core/utils/References/url/functions/hostToLowerCase.mdx +19 -0
  473. package/src/core/utils/References/url/functions/normalize.mdx +19 -0
  474. package/src/core/utils/References/url/functions/toPuny.mdx +21 -0
  475. package/src/core/utils/check.ts +88 -0
  476. package/src/core/utils/clipboard.ts +51 -0
  477. package/src/core/utils/date.ts +334 -0
  478. package/src/core/utils/device.ts +139 -0
  479. package/src/core/utils/dom.ts +195 -0
  480. package/src/core/utils/image.ts +46 -0
  481. package/src/core/utils/keyboard.ts +29 -0
  482. package/src/core/utils/lodash.ts +18 -0
  483. package/src/core/utils/number.ts +37 -0
  484. package/src/core/utils/price.ts +24 -0
  485. package/src/core/utils/route.ts +130 -0
  486. package/src/core/utils/scroll.ts +120 -0
  487. package/src/core/utils/searchers.ts +191 -0
  488. package/src/core/utils/store/localStorage.ts +56 -0
  489. package/src/core/utils/store/plugin.ts +50 -0
  490. package/src/core/utils/store/store.ts +77 -0
  491. package/src/core/utils/store.ts +7 -0
  492. package/src/core/utils/string.ts +349 -0
  493. package/src/core/utils/system.ts +72 -0
  494. package/src/core/utils/url.ts +138 -0
  495. package/src/core/utils/utils.mdx +6 -0
  496. package/src/d.ts +12 -0
  497. package/src/icomoon.d.ts +98 -0
  498. package/src/resources/styles/core/components/bage.css +16 -0
  499. package/src/resources/styles/core/components/components.css +94 -0
  500. package/src/resources/styles/core/components/formsCaption.css +43 -0
  501. package/src/resources/styles/core/components/jquery.css +19 -0
  502. package/src/resources/styles/core/core.ts +14 -0
  503. package/src/resources/styles/core/forms/clear.css +20 -0
  504. package/src/resources/styles/core/forms/controls.css +20 -0
  505. package/src/resources/styles/core/forms/focusable.css +27 -0
  506. package/src/resources/styles/core/forms/forms.css +178 -0
  507. package/src/resources/styles/core/icon.css +58 -0
  508. package/src/resources/styles/core/jquery.css +1 -0
  509. package/src/resources/styles/core/layout.css +59 -0
  510. package/src/resources/styles/core/modifiers/as.css +33 -0
  511. package/src/resources/styles/core/modifiers/ellipsis.css +26 -0
  512. package/src/resources/styles/core/modifiers/modifiers.css +120 -0
  513. package/src/resources/styles/core/modifiers/only.css +23 -0
  514. package/src/resources/styles/core/modifiers/scrollBar.css +52 -0
  515. package/src/resources/styles/core/modifiers/scrollShadow.css +50 -0
  516. package/src/resources/styles/storybook.css +11 -0
  517. package/src/resources/styles/themes/dark/dark-layout.css +47 -0
  518. package/src/resources/styles/themes/dark/dark-positions.css +66 -0
  519. package/src/resources/styles/themes/dark/dark.css +405 -0
  520. package/src/resources/styles/themes/dark-positions.ts +1 -0
  521. package/src/resources/styles/themes/dark-th/dark-th-layout.css +47 -0
  522. package/src/resources/styles/themes/dark-th/dark-th-positions.css +67 -0
  523. package/src/resources/styles/themes/dark-th/dark-th.css +405 -0
  524. package/src/resources/styles/themes/dark-th-positions.ts +1 -0
  525. package/src/resources/styles/themes/dark-th.ts +3 -0
  526. package/src/resources/styles/themes/dark.ts +3 -0
  527. package/src/resources/styles/themes/light/light-layout.css +47 -0
  528. package/src/resources/styles/themes/light/light-positions.css +66 -0
  529. package/src/resources/styles/themes/light/light.css +405 -0
  530. package/src/resources/styles/themes/light-positions.ts +1 -0
  531. package/src/resources/styles/themes/light.ts +3 -0
  532. package/src/storybook/components/color.vue +47 -0
  533. package/src/storybook/components/cssVariables.vue +195 -0
  534. package/src/storybook/components/icomoon.ts +40 -0
  535. package/src/storybook/jquery.ts +4 -0
  536. 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" +181 -0
  537. package/src//320/223/320/260/320/271/320/264/320/273/320/260/320/271/320/275.mdx +120 -0
  538. 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" +14 -0
  539. 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" +43 -0
  540. 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" +155 -0
  541. 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" +35 -0
  542. 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" +15 -0
  543. 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" +56 -0
  544. 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" +53 -0
  545. 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" +55 -0
  546. 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" +4 -0
  547. 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" +4 -0
  548. 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" +4 -0
  549. 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" +15 -0
  550. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/230/321/201/320/277/320/276/320/273/321/214/320/267/320/276/320/262/320/260/320/275/320/270/320/265 /320/262 /320/277/321/200/320/276/320/265/320/272/321/202/320/260/321/205.mdx" +3 -0
  551. 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" +45 -0
  552. 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" +33 -0
  553. 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" +29 -0
  554. 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" +66 -0
  555. 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" +58 -0
  556. 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" +11 -0
  557. 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" +5 -0
  558. package/storybook-dev.sh +14 -0
  559. package/tsconfig.json +91 -0
  560. package/typedoc.json +20 -0
  561. package/vite.config.ts +150 -0
  562. package/.chunks/core-BPipsaQZ.es.js +0 -197
  563. package/.chunks/core-BPipsaQZ.es.js.map +0 -1
  564. package/.chunks/core-Brtg1JMJ.amd.js +0 -2
  565. package/.chunks/core-Brtg1JMJ.amd.js.map +0 -1
  566. package/.chunks/datepicker-BWaVsTd0.amd.js +0 -2
  567. package/.chunks/datepicker-BWaVsTd0.amd.js.map +0 -1
  568. package/.chunks/datepicker-DCDYQmsc.es.js +0 -44
  569. package/.chunks/datepicker-DCDYQmsc.es.js.map +0 -1
  570. package/.chunks/dialog_selectorRegions-C0MYw4n5.es.js +0 -188
  571. package/.chunks/dialog_selectorRegions-C0MYw4n5.es.js.map +0 -1
  572. package/.chunks/dialog_selectorRegions-DW77c8Ny.amd.js +0 -2
  573. package/.chunks/dialog_selectorRegions-DW77c8Ny.amd.js.map +0 -1
  574. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-Bck_g47j.es.js +0 -322
  575. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-Bck_g47j.es.js.map +0 -1
  576. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-zs6u7ER0.amd.js +0 -2
  577. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-zs6u7ER0.amd.js.map +0 -1
  578. package/.chunks/forms-DOGPN_TR.es.js +0 -2051
  579. package/.chunks/forms-DOGPN_TR.es.js.map +0 -1
  580. package/.chunks/forms-Gb7ujpmz.amd.js +0 -3
  581. package/.chunks/forms-Gb7ujpmz.amd.js.map +0 -1
  582. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CF_hIWa6.amd.js +0 -2
  583. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CF_hIWa6.amd.js.map +0 -1
  584. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CJQj81Yq.es.js +0 -181
  585. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CJQj81Yq.es.js.map +0 -1
  586. package/.chunks/menu.vue_vue_type_style_index_0_lang-CczcI_-j.amd.js +0 -2
  587. package/.chunks/menu.vue_vue_type_style_index_0_lang-CczcI_-j.amd.js.map +0 -1
  588. package/.chunks/menu.vue_vue_type_style_index_0_lang-Dq5eEX9i.es.js +0 -109
  589. package/.chunks/menu.vue_vue_type_style_index_0_lang-Dq5eEX9i.es.js.map +0 -1
  590. package/.chunks/notice-C5sXcBql.amd.js +0 -4
  591. package/.chunks/notice-C5sXcBql.amd.js.map +0 -1
  592. package/.chunks/notice-DE88Oe-t.es.js +0 -175
  593. package/.chunks/notice-DE88Oe-t.es.js.map +0 -1
  594. package/.chunks/page.vue_vue_type_script_setup_true_lang-BwuWfSuv.amd.js +0 -2
  595. package/.chunks/page.vue_vue_type_script_setup_true_lang-BwuWfSuv.amd.js.map +0 -1
  596. package/.chunks/page.vue_vue_type_script_setup_true_lang-CNkG4DXi.es.js +0 -143
  597. package/.chunks/page.vue_vue_type_script_setup_true_lang-CNkG4DXi.es.js.map +0 -1
  598. package/.chunks/popup-B_8bvIsF.amd.js +0 -2
  599. package/.chunks/popup-B_8bvIsF.amd.js.map +0 -1
  600. package/.chunks/popup-BjsK_pMZ.es.js +0 -452
  601. package/.chunks/popup-BjsK_pMZ.es.js.map +0 -1
  602. package/.chunks/punycode.es6-C2yitnNb.amd.js +0 -2
  603. package/.chunks/punycode.es6-C2yitnNb.amd.js.map +0 -1
  604. package/.chunks/punycode.es6-CNI-zL6U.es.js +0 -134
  605. package/.chunks/punycode.es6-CNI-zL6U.es.js.map +0 -1
  606. package/.chunks/store-CX_6ZXhO.es.js +0 -29
  607. package/.chunks/store-CX_6ZXhO.es.js.map +0 -1
  608. package/.chunks/store-esTid5oI.amd.js +0 -2
  609. package/.chunks/store-esTid5oI.amd.js.map +0 -1
  610. package/.chunks/utils-BPftYwd6.es.js +0 -304
  611. package/.chunks/utils-BPftYwd6.es.js.map +0 -1
  612. package/.chunks/utils-CM6ONOZ3.es.js +0 -79
  613. package/.chunks/utils-CM6ONOZ3.es.js.map +0 -1
  614. package/.chunks/utils-DwFoJcHP.amd.js +0 -2
  615. package/.chunks/utils-DwFoJcHP.amd.js.map +0 -1
  616. package/.chunks/utils-GhVWvSHi.amd.js +0 -2
  617. package/.chunks/utils-GhVWvSHi.amd.js.map +0 -1
  618. package/assets/charts.css +0 -1
  619. package/assets/core.css +0 -1
  620. package/assets/dialog_selectorRegions.css +0 -1
  621. package/assets/extra.css +0 -1
  622. package/assets/forms.css +0 -1
  623. package/assets/formsExt.css +0 -1
  624. package/assets/layout.css +0 -1
  625. package/assets/listItem.css +0 -1
  626. package/assets/menu.css +0 -1
  627. package/assets/notice.css +0 -1
  628. package/assets/popup.css +0 -1
  629. package/assets/project.css +0 -1
  630. package/assets/tabs.css +0 -1
  631. package/assets/tabsView.css +0 -1
  632. package/assets/themes/dark-th.css +0 -1
  633. package/assets/themes/dark.css +0 -1
  634. package/assets/themes/light.css +0 -1
  635. package/charts/charts.amd.js +0 -2
  636. package/charts/charts.amd.js.map +0 -1
  637. package/charts/charts.d.ts +0 -2
  638. package/charts/charts.js +0 -178
  639. package/charts/charts.js.map +0 -1
  640. package/components/charts/charts.d.ts +0 -5
  641. package/components/charts/miniChart/miniChart.vue.d.ts +0 -15
  642. package/components/charts/miniChart/stories/dummy.d.ts +0 -13
  643. package/components/charts/miniChart/types.d.ts +0 -92
  644. package/components/charts/miniChart/utils/consts.d.ts +0 -8
  645. package/components/charts/miniCharts/miniCharts.d.ts +0 -20
  646. package/components/charts/miniCharts/miniCharts.vue.d.ts +0 -32
  647. package/components/charts/miniCharts/stories/dummy.d.ts +0 -6
  648. package/components/core/notice/item/item.vue.d.ts +0 -10
  649. package/components/core/notice/item/types.d.ts +0 -63
  650. package/components/core/notice/notice.vue.d.ts +0 -5
  651. package/components/core/notice/utils.d.ts +0 -27
  652. package/components/dialog/dialog/composables/asyncDialogHandle.d.ts +0 -51
  653. package/components/dialog/dialog/composables/dialogHandle.d.ts +0 -108
  654. package/components/dialog/dialog/composables/types.d.ts +0 -11
  655. package/components/dialog/dialog/composables/utils.d.ts +0 -21
  656. package/components/dialog/dialog/dialog.vue.d.ts +0 -28
  657. package/components/dialog/dialog/dialogs/dialogs.vue.d.ts +0 -13
  658. package/components/dialog/dialog/page/page.vue.d.ts +0 -19
  659. package/components/dialog/dialog/page/types.d.ts +0 -72
  660. package/components/dialog/dialog/pageComponent/pageComponent.vue.d.ts +0 -6
  661. package/components/dialog/dialog/pageComponent/types.d.ts +0 -18
  662. package/components/dialog/dialog/stories/autoload.d.ts +0 -2
  663. package/components/dialog/dialog/stories/dialog_example/pages/utils.d.ts +0 -7
  664. package/components/dialog/dialog/types.d.ts +0 -58
  665. package/components/dialog/dialog.d.ts +0 -6
  666. package/components/dialog/lib/types.d.ts +0 -44
  667. package/components/dialog/lib/utils.d.ts +0 -14
  668. package/components/dialog/lib/utils.globalEvents.d.ts +0 -8
  669. package/components/dialog/lib/worker.d.ts +0 -76
  670. package/components/extra/extra.d.ts +0 -3
  671. package/components/extra/rive/rive.vue.d.ts +0 -11
  672. package/components/extra/rive/types.d.ts +0 -7
  673. package/components/forms/avatar/avatar.vue.d.ts +0 -10
  674. package/components/forms/avatar/types.d.ts +0 -32
  675. package/components/forms/button/button.vue.d.ts +0 -24
  676. package/components/forms/button/types.d.ts +0 -39
  677. package/components/forms/caption/caption.vue.d.ts +0 -17
  678. package/components/forms/caption/types.d.ts +0 -9
  679. package/components/forms/checkbox/checkbox.vue.d.ts +0 -27
  680. package/components/forms/checkbox/types.d.ts +0 -21
  681. package/components/forms/controlLabel/controlLabel.vue.d.ts +0 -19
  682. package/components/forms/controlLabel/types.d.ts +0 -4
  683. package/components/forms/forms.d.ts +0 -31
  684. package/components/forms/hint/hint.vue.d.ts +0 -4
  685. package/components/forms/hint/types.d.ts +0 -8
  686. package/components/forms/input/input.vue.d.ts +0 -27
  687. package/components/forms/input/types.d.ts +0 -23
  688. package/components/forms/inputDate/datepicker.d.ts +0 -5
  689. package/components/forms/inputDate/inputDate.vue.d.ts +0 -12
  690. package/components/forms/inputDate/types.d.ts +0 -1
  691. package/components/forms/inputRange/inputRange.vue.d.ts +0 -19
  692. package/components/forms/inputRange/types.d.ts +0 -2
  693. package/components/forms/loadbar/loadbar.vue.d.ts +0 -3
  694. package/components/forms/preloader/preloader.vue.d.ts +0 -4
  695. package/components/forms/preloader/types.d.ts +0 -3
  696. package/components/forms/radio/radio.vue.d.ts +0 -23
  697. package/components/forms/radio/types.d.ts +0 -14
  698. package/components/forms/select/select.vue.d.ts +0 -17
  699. package/components/forms/select/stories/exampleOptions.d.ts +0 -5
  700. package/components/forms/select/types.d.ts +0 -58
  701. package/components/forms/switcher/switcher.vue.d.ts +0 -23
  702. package/components/forms/switcher/types.d.ts +0 -21
  703. package/components/forms/textarea/textarea.vue.d.ts +0 -12
  704. package/components/forms/textarea/types.d.ts +0 -44
  705. package/components/formsExt/checkboxGroup/checkboxGroup.vue.d.ts +0 -16
  706. package/components/formsExt/checkboxGroup/stories/example.d.ts +0 -15
  707. package/components/formsExt/checkboxGroup/types.d.ts +0 -19
  708. package/components/formsExt/editArea/editArea.vue.d.ts +0 -18
  709. package/components/formsExt/editArea/types.d.ts +0 -33
  710. package/components/formsExt/editInput/editInput.vue.d.ts +0 -8
  711. package/components/formsExt/editInput/types.d.ts +0 -16
  712. package/components/formsExt/formsExt.d.ts +0 -17
  713. package/components/formsExt/info/info.vue.d.ts +0 -20
  714. package/components/formsExt/info/types.d.ts +0 -21
  715. package/components/formsExt/menu/menu.vue.d.ts +0 -16
  716. package/components/formsExt/menu/stories/items.d.ts +0 -3
  717. package/components/formsExt/menu/types.d.ts +0 -37
  718. package/components/formsExt/policy/policy.vue.d.ts +0 -4
  719. package/components/formsExt/policy/types.d.ts +0 -10
  720. package/components/formsExt/radioGroup/radioGroup.vue.d.ts +0 -16
  721. package/components/formsExt/radioGroup/stories/example.d.ts +0 -20
  722. package/components/formsExt/radioGroup/types.d.ts +0 -21
  723. package/components/formsExt/selector2/composables/useAPI.d.ts +0 -30
  724. package/components/formsExt/selector2/composables/useMenu.d.ts +0 -14
  725. package/components/formsExt/selector2/itemMulti.vue.d.ts +0 -8
  726. package/components/formsExt/selector2/selector2.vue.d.ts +0 -35
  727. package/components/formsExt/selector2/stories/dummyAPIRequest.d.ts +0 -10
  728. package/components/formsExt/selector2/types.d.ts +0 -143
  729. package/components/formsExt/selector2/utils.d.ts +0 -6
  730. package/components/layout/islandRows/islandRows.vue.d.ts +0 -17
  731. package/components/layout/islandRows/islandRowsRow/islandRowsRow.vue.d.ts +0 -18
  732. package/components/layout/islandRows/islandRowsRow/types.d.ts +0 -2
  733. package/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue.d.ts +0 -18
  734. package/components/layout/islandRows/types.d.ts +0 -10
  735. package/components/layout/layout.d.ts +0 -9
  736. package/components/layout/rows/rows.vue.d.ts +0 -21
  737. package/components/layout/rows/types.d.ts +0 -6
  738. package/components/popup/alert/alert.vue.d.ts +0 -31
  739. package/components/popup/alert/types.d.ts +0 -8
  740. package/components/popup/confirm/confirm.vue.d.ts +0 -33
  741. package/components/popup/confirm/types.d.ts +0 -21
  742. package/components/popup/lib/popup.d.ts +0 -83
  743. package/components/popup/lib/popup.globalEvents.d.ts +0 -32
  744. package/components/popup/lib/worker.d.ts +0 -75
  745. package/components/popup/lib/worker.globalEvents.d.ts +0 -19
  746. package/components/popup/popup/listItem.vue.d.ts +0 -22
  747. package/components/popup/popup/opener.vue.d.ts +0 -23
  748. package/components/popup/popup/popup.vue.d.ts +0 -40
  749. package/components/popup/popup/types.d.ts +0 -101
  750. package/components/popup/popup/widgetInput.vue.d.ts +0 -17
  751. package/components/popup/popup.d.ts +0 -15
  752. package/components/popup/prompt/prompt.vue.d.ts +0 -33
  753. package/components/popup/prompt/types.d.ts +0 -21
  754. package/components/project/project.d.ts +0 -15
  755. package/components/project/selectorCompetitors/composables.d.ts +0 -3
  756. package/components/project/selectorCompetitors/selectorCompetitors.vue.d.ts +0 -14
  757. package/components/project/selectorCompetitors/stories/items.d.ts +0 -3
  758. package/components/project/selectorCompetitors/types.d.ts +0 -30
  759. package/components/project/selectorRegion/composables/compare.d.ts +0 -12
  760. package/components/project/selectorRegion/composables/selectRegion.d.ts +0 -13
  761. package/components/project/selectorRegion/composables/selectSearcher.d.ts +0 -13
  762. package/components/project/selectorRegion/composables/selectorRegion.d.ts +0 -25
  763. package/components/project/selectorRegion/dialog_selectorRegions/dialog_selectorRegions.vue.d.ts +0 -6
  764. package/components/project/selectorRegion/dialog_selectorRegions/types.d.ts +0 -26
  765. package/components/project/selectorRegion/selectorRegion.vue.d.ts +0 -23
  766. package/components/project/selectorRegion/stories/searchers.d.ts +0 -3
  767. package/components/project/selectorRegion/types.d.ts +0 -172
  768. package/components/project/selectorRegion/utils/consts.d.ts +0 -31
  769. package/components/project/selectorRegion/utils/utils.d.ts +0 -34
  770. package/components/project/tagSelector/popupListItem/tagPopupListItem.vue.d.ts +0 -20
  771. package/components/project/tagSelector/popupListItem/types.d.ts +0 -33
  772. package/components/project/tagSelector/popupOpener/popupOpener.vue.d.ts +0 -27
  773. package/components/project/tagSelector/popupOpener/types.d.ts +0 -64
  774. package/components/project/tagSelector/tagIcon/tagIcon.vue.d.ts +0 -4
  775. package/components/project/tagSelector/tagIcon/types.d.ts +0 -21
  776. package/components/project/tagSelector/tagSelector.vue.d.ts +0 -37
  777. package/components/project/tagSelector/tagsDefaults.d.ts +0 -3
  778. package/components/project/tagSelector/types.d.ts +0 -140
  779. package/components/project/tagSelector/utils/el.d.ts +0 -19
  780. package/components/project/tagSelector/utils/utils.d.ts +0 -14
  781. package/components/tabs/tabs/content.vue.d.ts +0 -19
  782. package/components/tabs/tabs/tab.vue.d.ts +0 -19
  783. package/components/tabs/tabs/tabs.vue.d.ts +0 -21
  784. package/components/tabs/tabs/types.d.ts +0 -19
  785. package/components/tabs/tabs.d.ts +0 -7
  786. package/components/tabsView/tabsView/menu.vue.d.ts +0 -32
  787. package/components/tabsView/tabsView/menuDelimeter.vue.d.ts +0 -3
  788. package/components/tabsView/tabsView/menuItem.vue.d.ts +0 -23
  789. package/components/tabsView/tabsView/menuTitle.vue.d.ts +0 -20
  790. package/components/tabsView/tabsView/store.d.ts +0 -12
  791. package/components/tabsView/tabsView/tabsView.vue.d.ts +0 -34
  792. package/components/tabsView/tabsView/types.d.ts +0 -98
  793. package/components/tabsView/tabsView/utils.d.ts +0 -11
  794. package/components/tabsView/tabsView.d.ts +0 -7
  795. package/core/app.amd.js +0 -2
  796. package/core/app.amd.js.map +0 -1
  797. package/core/app.d.ts +0 -8
  798. package/core/app.js +0 -214
  799. package/core/app.js.map +0 -1
  800. package/core/core/core.d.ts +0 -113
  801. package/core/core/events/resize.d.ts +0 -16
  802. package/core/core/events.d.ts +0 -15
  803. package/core/core/options.d.ts +0 -47
  804. package/core/core/preloaders.d.ts +0 -19
  805. package/core/core/state.d.ts +0 -49
  806. package/core/directives/data.d.ts +0 -10
  807. package/core/directives/focus.d.ts +0 -10
  808. package/core/directives/preloader.d.ts +0 -8
  809. package/core/directives/scrollIntoView.d.ts +0 -3
  810. package/core/directives/scrollShadow.d.ts +0 -15
  811. package/core/directives/sticky.d.ts +0 -10
  812. package/core/directives/swimUp.d.ts +0 -15
  813. package/core/directives/tooltip.d.ts +0 -10
  814. package/core/plugins/core.d.ts +0 -60
  815. package/core/plugins/i18n.d.ts +0 -97
  816. package/core/plugins/piniaTPA.d.ts +0 -17
  817. package/core/utils/check.d.ts +0 -26
  818. package/core/utils/clipboard.d.ts +0 -12
  819. package/core/utils/date.d.ts +0 -70
  820. package/core/utils/device.d.ts +0 -50
  821. package/core/utils/dom.d.ts +0 -104
  822. package/core/utils/image.d.ts +0 -16
  823. package/core/utils/keyboard.d.ts +0 -8
  824. package/core/utils/lodash.d.ts +0 -6
  825. package/core/utils/number.d.ts +0 -17
  826. package/core/utils/price.d.ts +0 -10
  827. package/core/utils/route.d.ts +0 -33
  828. package/core/utils/scroll.d.ts +0 -32
  829. package/core/utils/searchers.d.ts +0 -38
  830. package/core/utils/store/localStorage.d.ts +0 -6
  831. package/core/utils/store/plugin.d.ts +0 -24
  832. package/core/utils/store/store.d.ts +0 -34
  833. package/core/utils/store.d.ts +0 -6
  834. package/core/utils/string.d.ts +0 -100
  835. package/core/utils/system.d.ts +0 -25
  836. package/core/utils/url.d.ts +0 -36
  837. package/dialog/dialog.amd.js +0 -2
  838. package/dialog/dialog.amd.js.map +0 -1
  839. package/dialog/dialog.d.ts +0 -2
  840. package/dialog/dialog.js +0 -60
  841. package/dialog/dialog.js.map +0 -1
  842. package/extra/extra.amd.js +0 -2
  843. package/extra/extra.amd.js.map +0 -1
  844. package/extra/extra.d.ts +0 -2
  845. package/extra/extra.js +0 -72
  846. package/extra/extra.js.map +0 -1
  847. package/forms/forms.amd.js +0 -2
  848. package/forms/forms.amd.js.map +0 -1
  849. package/forms/forms.d.ts +0 -2
  850. package/forms/forms.js +0 -19
  851. package/forms/forms.js.map +0 -1
  852. package/forms/helpers.amd.js +0 -2
  853. package/forms/helpers.amd.js.map +0 -1
  854. package/forms/helpers.d.ts +0 -1
  855. package/forms/helpers.js +0 -2
  856. package/forms/helpers.js.map +0 -1
  857. package/formsExt/formsExt.amd.js +0 -2
  858. package/formsExt/formsExt.amd.js.map +0 -1
  859. package/formsExt/formsExt.d.ts +0 -2
  860. package/formsExt/formsExt.js +0 -599
  861. package/formsExt/formsExt.js.map +0 -1
  862. package/layout/layout.amd.js +0 -2
  863. package/layout/layout.amd.js.map +0 -1
  864. package/layout/layout.d.ts +0 -2
  865. package/layout/layout.js +0 -62
  866. package/layout/layout.js.map +0 -1
  867. package/popup/popup.amd.js +0 -2
  868. package/popup/popup.amd.js.map +0 -1
  869. package/popup/popup.d.ts +0 -2
  870. package/popup/popup.js +0 -244
  871. package/popup/popup.js.map +0 -1
  872. package/popup/worker.amd.js +0 -2
  873. package/popup/worker.amd.js.map +0 -1
  874. package/popup/worker.d.ts +0 -2
  875. package/popup/worker.js +0 -129
  876. package/popup/worker.js.map +0 -1
  877. package/project/project.amd.js +0 -2
  878. package/project/project.amd.js.map +0 -1
  879. package/project/project.d.ts +0 -2
  880. package/project/project.js +0 -986
  881. package/project/project.js.map +0 -1
  882. package/tabs/tabs.amd.js +0 -2
  883. package/tabs/tabs.amd.js.map +0 -1
  884. package/tabs/tabs.d.ts +0 -2
  885. package/tabs/tabs.js +0 -81
  886. package/tabs/tabs.js.map +0 -1
  887. package/tabsView/tabsView.amd.js +0 -2
  888. package/tabsView/tabsView.amd.js.map +0 -1
  889. package/tabsView/tabsView.d.ts +0 -2
  890. package/tabsView/tabsView.js +0 -306
  891. package/tabsView/tabsView.js.map +0 -1
  892. package/utils/check.amd.js +0 -2
  893. package/utils/check.amd.js.map +0 -1
  894. package/utils/check.d.ts +0 -2
  895. package/utils/check.js +0 -26
  896. package/utils/check.js.map +0 -1
  897. package/utils/clipboard.amd.js +0 -6
  898. package/utils/clipboard.amd.js.map +0 -1
  899. package/utils/clipboard.d.ts +0 -2
  900. package/utils/clipboard.js +0 -33
  901. package/utils/clipboard.js.map +0 -1
  902. package/utils/date.amd.js +0 -2
  903. package/utils/date.amd.js.map +0 -1
  904. package/utils/date.d.ts +0 -2
  905. package/utils/date.js +0 -12
  906. package/utils/date.js.map +0 -1
  907. package/utils/device.amd.js +0 -2
  908. package/utils/device.amd.js.map +0 -1
  909. package/utils/device.d.ts +0 -2
  910. package/utils/device.js +0 -15
  911. package/utils/device.js.map +0 -1
  912. package/utils/dom.amd.js +0 -2
  913. package/utils/dom.amd.js.map +0 -1
  914. package/utils/dom.d.ts +0 -6
  915. package/utils/dom.js +0 -80
  916. package/utils/dom.js.map +0 -1
  917. package/utils/image.amd.js +0 -12
  918. package/utils/image.amd.js.map +0 -1
  919. package/utils/image.d.ts +0 -2
  920. package/utils/image.js +0 -23
  921. package/utils/image.js.map +0 -1
  922. package/utils/keyboard.amd.js +0 -2
  923. package/utils/keyboard.amd.js.map +0 -1
  924. package/utils/keyboard.d.ts +0 -2
  925. package/utils/keyboard.js +0 -12
  926. package/utils/keyboard.js.map +0 -1
  927. package/utils/lodash.amd.js +0 -2
  928. package/utils/lodash.amd.js.map +0 -1
  929. package/utils/lodash.d.ts +0 -2
  930. package/utils/lodash.js +0 -9
  931. package/utils/lodash.js.map +0 -1
  932. package/utils/number.amd.js +0 -2
  933. package/utils/number.amd.js.map +0 -1
  934. package/utils/number.d.ts +0 -2
  935. package/utils/number.js +0 -13
  936. package/utils/number.js.map +0 -1
  937. package/utils/price.amd.js +0 -2
  938. package/utils/price.amd.js.map +0 -1
  939. package/utils/price.d.ts +0 -2
  940. package/utils/price.js +0 -10
  941. package/utils/price.js.map +0 -1
  942. package/utils/route.amd.js +0 -2
  943. package/utils/route.amd.js.map +0 -1
  944. package/utils/route.d.ts +0 -2
  945. package/utils/route.js +0 -38
  946. package/utils/route.js.map +0 -1
  947. package/utils/scroll.amd.js +0 -2
  948. package/utils/scroll.amd.js.map +0 -1
  949. package/utils/scroll.d.ts +0 -2
  950. package/utils/scroll.js +0 -45
  951. package/utils/scroll.js.map +0 -1
  952. package/utils/searchers.amd.js +0 -2
  953. package/utils/searchers.amd.js.map +0 -1
  954. package/utils/searchers.d.ts +0 -2
  955. package/utils/searchers.js +0 -134
  956. package/utils/searchers.js.map +0 -1
  957. package/utils/store.amd.js +0 -2
  958. package/utils/store.amd.js.map +0 -1
  959. package/utils/store.d.ts +0 -2
  960. package/utils/store.js +0 -7
  961. package/utils/store.js.map +0 -1
  962. package/utils/string.amd.js +0 -2
  963. package/utils/string.amd.js.map +0 -1
  964. package/utils/string.d.ts +0 -2
  965. package/utils/string.js +0 -148
  966. package/utils/string.js.map +0 -1
  967. package/utils/system.amd.js +0 -2
  968. package/utils/system.amd.js.map +0 -1
  969. package/utils/system.d.ts +0 -2
  970. package/utils/system.js +0 -29
  971. package/utils/system.js.map +0 -1
  972. package/utils/url.amd.js +0 -3
  973. package/utils/url.amd.js.map +0 -1
  974. package/utils/url.d.ts +0 -2
  975. package/utils/url.js +0 -48
  976. package/utils/url.js.map +0 -1
  977. /package/{icomoon → public/icomoon}/Read Me.txt +0 -0
  978. /package/{icomoon → public/icomoon}/demo-files/demo.css +0 -0
  979. /package/{icomoon → public/icomoon}/demo-files/demo.js +0 -0
  980. /package/{icomoon → public/icomoon}/demo.css +0 -0
  981. /package/{icomoon → public/icomoon}/demo.html +0 -0
  982. /package/{icomoon → public/icomoon}/demo.js +0 -0
  983. /package/{icomoon → public/icomoon}/fonts/Topvisor-2.eot +0 -0
  984. /package/{icomoon → public/icomoon}/fonts/Topvisor-2.svg +0 -0
  985. /package/{icomoon → public/icomoon}/fonts/Topvisor-2.ttf +0 -0
  986. /package/{icomoon → public/icomoon}/fonts/Topvisor-2.woff +0 -0
  987. /package/{icomoon → public/icomoon}/selection.json +0 -0
  988. /package/{icomoon → public/icomoon}/style.css +0 -0
  989. /package/{jquery-ui.min.css → public/jquery-ui.min.css} +0 -0
  990. /package/{require → public/require}/css.amd.js +0 -0
  991. /package/{components/core/notice/types.d.ts → src/components/core/notice/types.ts} +0 -0
  992. /package/{components/forms/helpers.d.ts → src/components/forms/helpers.ts} +0 -0
  993. /package/{components/popup/worker.d.ts → src/components/popup/worker.ts} +0 -0
@@ -1,188 +0,0 @@
1
- import { Core as j } from "../core/app.js";
2
- import { defineComponent as P, ref as R, reactive as D, computed as M, watch as O, resolveComponent as S, createBlock as V, openBlock as d, unref as x, withCtx as u, createVNode as m, createTextVNode as L, toDisplayString as v, createElementVNode as p, createElementBlock as f, Fragment as G, renderList as X, createCommentVNode as k } from "vue";
3
- import { _ as Q, a as q } from "./page.vue_vue_type_script_setup_true_lang-CNkG4DXi.es.js";
4
- import { b as z } from "./utils-CM6ONOZ3.es.js";
5
- import { genFlagLinkByCountryCode as H } from "../utils/string.js";
6
- import { getSearcherGIcon as J, getLangLabel as K, getDeviceGIcon as W } from "../utils/searchers.js";
7
- import { C as N } from "./forms-DOGPN_TR.es.js";
8
- const w = ["../assets/dialog_selectorRegions.css"].map((y) => import.meta.resolve(y));
9
- j.insertCSSLinkToPage(w, !0);
10
- const Y = { class: "dialog_selectorRegions_header" }, Z = ["data-top-icon"], F = ["src", "alt"], ee = { class: "top-ellipsis" }, oe = { class: "dialog_selectorRegions_regionAreaName" }, te = { key: 1 }, ne = ["data-top-icon"], ue = /* @__PURE__ */ P({
11
- id: "selectorRegions",
12
- __name: "dialog_selectorRegions",
13
- props: {
14
- regions: {},
15
- regionsIndexes: {},
16
- "@update:regionsIndexes": { type: Function }
17
- },
18
- setup(y) {
19
- const a = y, C = z(), l = R([]), i = R(null), _ = D({
20
- searcher_key: -1,
21
- key: -1,
22
- name: -1
23
- }), b = M({
24
- get() {
25
- return l.value.every((o) => o.selected);
26
- },
27
- set(o) {
28
- l.value = l.value.map((n) => ({ ...n, selected: o }));
29
- }
30
- }), h = (o) => {
31
- _[o] = -_[o], l.value.sort((n, e) => !n[o] || !e[o] ? -1 : n[o] >= e[o] ? _[o] : -_[o]);
32
- }, B = () => {
33
- var n;
34
- if (!l.value.some((e) => e.selected)) return;
35
- const o = l.value.filter((e) => e.selected).map((e) => e.index);
36
- (n = a["@update:regionsIndexes"]) == null || n.call(a, o), C.close();
37
- };
38
- O([
39
- () => a.regions,
40
- () => a.regionsIndexes
41
- ], () => {
42
- if (l.value = [], !a.regions || !a.regionsIndexes) return;
43
- let o = [...a.regions];
44
- const n = new Map(a.regionsIndexes.map((e, s) => [e, s]));
45
- o.sort((e, s) => {
46
- const t = n.get(e.index) ?? Number.MAX_VALUE, r = n.get(s.index) ?? Number.MAX_VALUE;
47
- return t - r;
48
- }), o.forEach((e) => {
49
- var I;
50
- let s = e.name;
51
- e.areaName && (s += ` (${e.areaName})`);
52
- const t = ((I = a.regionsIndexes) == null ? void 0 : I.includes(e.index)) ?? !1, r = J(e.searcher_key), g = e.lang !== void 0 ? K(e.searcher_key ?? 999, e.lang) : void 0, c = e.device !== void 0 ? W(e.device) : void 0, U = e.countryCode !== void 0 ? H(e.countryCode) : void 0, E = {
53
- ...e,
54
- selected: t,
55
- title: s,
56
- searcherIcon: r,
57
- langLabel: g,
58
- deviceIcon: c,
59
- flagLink: U
60
- };
61
- l.value.push(E);
62
- });
63
- });
64
- const A = () => {
65
- var o;
66
- if (!((o = N.$) != null && o.ui.sortable)) {
67
- console.info("Для работы сортировки требуется глобальная загрузка jQuery UI Sortable");
68
- return;
69
- }
70
- i.value && $(i.value).sortable({
71
- distance: 10,
72
- stop: () => {
73
- const n = [...i.value.children].map((e) => Number(e.getAttribute("data-region-index")));
74
- l.value.sort((e, s) => n.indexOf(e.index) - n.indexOf(s.index));
75
- }
76
- });
77
- }, T = () => {
78
- var o;
79
- (o = N.$) != null && o.ui.sortable && i.value && $(i.value).sortable("destroy");
80
- };
81
- return (o, n) => {
82
- const e = S("TopCheckbox"), s = S("TopButton");
83
- return d(), V(x(Q), {
84
- id: x(C).id,
85
- pageActive: "selectorRegions",
86
- class: "dialog_selectorRegions",
87
- height: "600px",
88
- width: "600px",
89
- onOpen: A,
90
- onClose: T
91
- }, {
92
- default: u(() => [
93
- m(x(q), {
94
- name: "selectorRegions",
95
- order: 0
96
- }, {
97
- header: u(() => {
98
- var t, r, g;
99
- return [
100
- p("div", Y, [
101
- m(e, {
102
- modelValue: b.value,
103
- "onUpdate:modelValue": n[0] || (n[0] = (c) => b.value = c)
104
- }, null, 8, ["modelValue"]),
105
- m(s, {
106
- class: "dialog_selectorRegions_sortButton",
107
- color: "theme",
108
- "data-top-icon": "",
109
- onClick: n[1] || (n[1] = (c) => h("searcher_key")),
110
- title: (t = o.$i18n.Projects) == null ? void 0 : t.Sort_by_search_engine
111
- }, null, 8, ["title"]),
112
- m(s, {
113
- class: "dialog_selectorRegions_sortButton",
114
- color: "theme",
115
- "data-top-icon": "",
116
- onClick: n[2] || (n[2] = (c) => h("key")),
117
- title: (r = o.$i18n.Projects) == null ? void 0 : r.Sort_by_yande_region_code
118
- }, null, 8, ["title"]),
119
- m(s, {
120
- class: "dialog_selectorRegions_sortButton",
121
- color: "theme",
122
- "data-top-icon": "",
123
- onClick: n[3] || (n[3] = (c) => h("name")),
124
- title: (g = o.$i18n.Projects) == null ? void 0 : g.Sort_by_lphabetically
125
- }, null, 8, ["title"])
126
- ])
127
- ];
128
- }),
129
- body: u(() => [
130
- p("div", {
131
- ref_key: "elRegions",
132
- ref: i
133
- }, [
134
- (d(!0), f(G, null, X(l.value, (t) => (d(), V(e, {
135
- key: t.index,
136
- modelValue: t.selected,
137
- "onUpdate:modelValue": (r) => t.selected = r,
138
- class: "dialog_selectorRegions_region",
139
- "data-region-index": t.index
140
- }, {
141
- default: u(() => [
142
- p("div", {
143
- class: "dialog_selectorRegions_regionSearcherIcon",
144
- "data-top-icon": t.searcherIcon
145
- }, null, 8, Z),
146
- t.flagLink ? (d(), f("img", {
147
- key: 0,
148
- class: "top-flag",
149
- src: "//topvisor.dev" + t.flagLink,
150
- alt: t.countryCode
151
- }, null, 8, F)) : k("", !0),
152
- p("div", ee, [
153
- L(v(t.name) + " ", 1),
154
- p("span", oe, v(t.areaName), 1)
155
- ]),
156
- t.langLabel ? (d(), f("div", te, " [" + v(t.langLabel) + "] ", 1)) : k("", !0),
157
- t.deviceIcon ? (d(), f("div", {
158
- key: 2,
159
- "data-top-icon": t.deviceIcon
160
- }, null, 8, ne)) : k("", !0)
161
- ]),
162
- _: 2
163
- }, 1032, ["modelValue", "onUpdate:modelValue", "data-region-index"]))), 128))
164
- ], 512)
165
- ]),
166
- footer: u(() => [
167
- m(s, { onClick: B }, {
168
- default: u(() => {
169
- var t;
170
- return [
171
- L(v((t = o.$i18n.Common) == null ? void 0 : t.Apply), 1)
172
- ];
173
- }),
174
- _: 1
175
- })
176
- ]),
177
- _: 1
178
- })
179
- ]),
180
- _: 1
181
- }, 8, ["id"]);
182
- };
183
- }
184
- });
185
- export {
186
- ue as default
187
- };
188
- //# sourceMappingURL=dialog_selectorRegions-C0MYw4n5.es.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog_selectorRegions-C0MYw4n5.es.js","sources":["../../src/components/project/selectorRegion/dialog_selectorRegions/dialog_selectorRegions.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, reactive, ref, watch } from 'vue';\nimport { TopDialog, TopDialogPage, useTopDialogSelf } from '@/components/dialog/dialog';\nimport { genFlagLinkByCountryCode } from '@/core/utils/string';\nimport type { Props, RegionRich } from './types';\nimport { getDeviceGIcon, getLangLabel, getSearcherGIcon } from '@/core/utils/searchers';\nimport Core from '@/core/core/core';\n\ndefineOptions({ id: 'selectorRegions' });\n\nconst props = defineProps<Partial<Props>>();\n\nconst dialog = useTopDialogSelf();\n\n/**\n * Список расширенных регионов для использования в компоненте\n */\nconst regionsRich = ref<RegionRich[]>([]);\n\n/**\n * Ссылка на элемент с регионами\n */\nconst elRegions = ref<null | HTMLElement>(null);\n\n/**\n * Направление сортировки по полю\n */\nconst sortedVectorByField = reactive({\n\tsearcher_key: -1,\n\tkey: -1,\n\tname: -1,\n});\n\n/**\n * Выбраны все регионы\n */\nconst isAllSelected = computed({\n\tget() {\n\t\treturn regionsRich.value.every(region => region.selected);\n\t},\n\n\tset(value) {\n\t\tregionsRich.value = regionsRich.value.map(region => ({ ...region, selected: value }));\n\t},\n});\n\n/**\n * Сортировать регионы по выбранному полю\n * @param sortedField - Поле для сортировки\n */\nconst sort = (sortedField: keyof typeof sortedVectorByField) => {\n\tsortedVectorByField[sortedField] = -sortedVectorByField[sortedField];\n\n\tregionsRich.value.sort((regionA, regionB) => {\n\t\tif (!regionA[sortedField] || !regionB[sortedField]) return -1;\n\n\t\treturn regionA[sortedField] >= regionB[sortedField] ? sortedVectorByField[sortedField] : -sortedVectorByField[sortedField];\n\t});\n};\n\n/**\n * Применить изменения\n *\n * Вызывает callback `props['@update:regionsIndexes']`\n */\nconst onSubmit = () => {\n\tif (!regionsRich.value.some(region => region.selected)) return;\n\n\tconst regionsIndexes = regionsRich.value\n\t\t.filter(region => region.selected)\n\t\t.map(region => region.index);\n\n\tprops['@update:regionsIndexes']?.(regionsIndexes);\n\n\tdialog.close();\n};\n\n// генерация регионов\nwatch([\n\t() => props.regions,\n\t() => props.regionsIndexes,\n], () => {\n\tregionsRich.value = [];\n\n\tif (!props.regions) return;\n\tif (!props.regionsIndexes) return;\n\n\tlet regions = [...props.regions];\n\n\t// отсортировать регионы по входным данным\n\tconst orderByRegionIndex = new Map(props.regionsIndexes.map((index, order) => [index, order]));\n\n\tregions.sort((regionA, regionB) => {\n\t\tconst orderA = orderByRegionIndex.get(regionA.index) ?? Number.MAX_VALUE;\n\t\tconst orderB = orderByRegionIndex.get(regionB.index) ?? Number.MAX_VALUE;\n\n\t\treturn orderA - orderB;\n\t});\n\n\tregions.forEach(region => {\n\t\tlet title = region.name;\n\t\tif (region.areaName) title += ` (${region.areaName})`;\n\n\t\tconst selected = props.regionsIndexes?.includes(region.index) ?? false;\n\t\tconst searcherIcon = getSearcherGIcon(region.searcher_key);\n\t\tconst langLabel = region.lang !== undefined ? getLangLabel(region.searcher_key ?? 999, region.lang) : undefined;\n\t\tconst deviceIcon = region.device !== undefined ? getDeviceGIcon(region.device) : undefined;\n\t\tconst flagLink = region.countryCode !== undefined ? genFlagLinkByCountryCode(region.countryCode) : undefined;\n\n\t\tconst regionRich = {\n\t\t\t...region,\n\t\t\tselected,\n\t\t\ttitle,\n\t\t\tsearcherIcon,\n\t\t\tlangLabel,\n\t\t\tdeviceIcon,\n\t\t\tflagLink,\n\t\t};\n\n\t\tregionsRich.value.push(regionRich);\n\t});\n});\n\n/**\n * Проверить на существование sortable\n */\nconst onOpen = () => {\n\tif (!Core.$?.ui['sortable']) {\n\t\tconsole.info('Для работы сортировки требуется глобальная загрузка jQuery UI Sortable');\n\n\t\treturn;\n\t}\n\n\tif (!elRegions.value) return;\n\n\t$(elRegions.value).sortable({\n\t\tdistance: 10,\n\n\t\tstop: () => {\n\t\t\t// Обновляем порядок регионов в массиве regionsRich после сортировки\n\t\t\tconst sortedIndexes = [...elRegions.value!.children].map(el => Number(el.getAttribute('data-region-index')));\n\t\t\tregionsRich.value.sort((a, b) => sortedIndexes.indexOf(a.index) - sortedIndexes.indexOf(b.index));\n\t\t},\n\t});\n};\n\n/**\n * Удаление sortable\n */\nconst onClose = () => {\n\tif (!Core.$?.ui['sortable']) return;\n\tif (!elRegions.value) return;\n\n\t$(elRegions.value).sortable('destroy');\n};\n\n</script>\n\n<template>\n\t<TopDialog\n\t\t:id=\"dialog.id\"\n\t\tpageActive=\"selectorRegions\"\n\t\tclass=\"dialog_selectorRegions\"\n\t\theight=\"600px\"\n\t\twidth=\"600px\"\n\t\t@open=\"onOpen\"\n\t\t@close=\"onClose\"\n\t>\n\t\t<TopDialogPage name=\"selectorRegions\" :order=\"0\">\n\t\t\t<template #header>\n\t\t\t\t<div class=\"dialog_selectorRegions_header\">\n\t\t\t\t\t<TopCheckbox v-model=\"isAllSelected\"></TopCheckbox>\n\n\t\t\t\t\t<TopButton\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_sortButton\"\n\t\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"sort('searcher_key')\"\n\t\t\t\t\t\t:title=\"$i18n.Projects?.Sort_by_search_engine\"\n\t\t\t\t\t/>\n\n\t\t\t\t\t<TopButton\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_sortButton\"\n\t\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"sort('key')\"\n\t\t\t\t\t\t:title=\"$i18n.Projects?.Sort_by_yande_region_code\"\n\t\t\t\t\t/>\n\n\t\t\t\t\t<TopButton\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_sortButton\"\n\t\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"sort('name')\"\n\t\t\t\t\t\t:title=\"$i18n.Projects?.Sort_by_lphabetically\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template #body>\n\t\t\t\t<div ref=\"elRegions\">\n\t\t\t\t\t<TopCheckbox\n\t\t\t\t\t\tv-for=\"region of regionsRich\"\n\t\t\t\t\t\t:key=\"region.index\"\n\t\t\t\t\t\tv-model=\"region.selected\"\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_region\"\n\t\t\t\t\t\t:data-region-index=\"region.index\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"dialog_selectorRegions_regionSearcherIcon\"\n\t\t\t\t\t\t\t:data-top-icon=\"region.searcherIcon\"\n\t\t\t\t\t\t></div>\n\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tv-if=\"region.flagLink\"\n\t\t\t\t\t\t\tclass=\"top-flag\"\n\t\t\t\t\t\t\t:src=\"'//topvisor.dev' + region.flagLink\"\n\t\t\t\t\t\t\t:alt=\"region.countryCode\"\n\t\t\t\t\t\t>\n\n\t\t\t\t\t\t<div class=\"top-ellipsis\">\n\t\t\t\t\t\t\t{{ region.name }}\n\n\t\t\t\t\t\t\t<span class=\"dialog_selectorRegions_regionAreaName\">\n\t\t\t\t\t\t\t\t{{ region.areaName }}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div v-if=\"region.langLabel\">\n\t\t\t\t\t\t\t[{{ region.langLabel }}]\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tv-if=\"region.deviceIcon\"\n\t\t\t\t\t\t\t:data-top-icon=\"region.deviceIcon\"\n\t\t\t\t\t\t></div>\n\t\t\t\t\t</TopCheckbox>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template #footer>\n\t\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t\t{{ $i18n.Common?.Apply }}\n\t\t\t\t</TopButton>\n\t\t\t</template>\n\t\t</TopDialogPage>\n\t</TopDialog>\n</template>\n\n<style>\n@import \"./style.css\";\n</style>\n"],"names":["props","__props","dialog","useTopDialogSelf","regionsRich","ref","elRegions","sortedVectorByField","reactive","isAllSelected","computed","region","value","sort","sortedField","regionA","regionB","onSubmit","regionsIndexes","_a","watch","regions","orderByRegionIndex","index","order","orderA","orderB","title","selected","searcherIcon","getSearcherGIcon","langLabel","getLangLabel","deviceIcon","getDeviceGIcon","flagLink","genFlagLinkByCountryCode","regionRich","onOpen","Core","sortedIndexes","el","a","b","onClose"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- define(["require","exports","vue","./page.vue_vue_type_script_setup_true_lang-BwuWfSuv.amd","./utils-DwFoJcHP.amd","../utils/string.amd","../utils/searchers.amd","./forms-Gb7ujpmz.amd","../require/css.amd!../assets/dialog_selectorRegions.css"],function(j,v,e,_,h,C,p,f){"use strict";if(typeof e>"u")var e=window.Vue;const V={class:"dialog_selectorRegions_header"},b=["data-top-icon"],N=["src","alt"],B={class:"top-ellipsis"},I={class:"dialog_selectorRegions_regionAreaName"},R={key:1},S=["data-top-icon"],E=e.defineComponent({id:"selectorRegions",__name:"dialog_selectorRegions",props:{regions:{},regionsIndexes:{},"@update:regionsIndexes":{type:Function}},setup(L){const s=L,y=h.useTopDialogSelf(),r=e.ref([]),i=e.ref(null),u=e.reactive({searcher_key:-1,key:-1,name:-1}),k=e.computed({get(){return r.value.every(o=>o.selected)},set(o){r.value=r.value.map(l=>({...l,selected:o}))}}),g=o=>{u[o]=-u[o],r.value.sort((l,t)=>!l[o]||!t[o]?-1:l[o]>=t[o]?u[o]:-u[o])},w=()=>{var l;if(!r.value.some(t=>t.selected))return;const o=r.value.filter(t=>t.selected).map(t=>t.index);(l=s["@update:regionsIndexes"])==null||l.call(s,o),y.close()};e.watch([()=>s.regions,()=>s.regionsIndexes],()=>{if(r.value=[],!s.regions||!s.regionsIndexes)return;let o=[...s.regions];const l=new Map(s.regionsIndexes.map((t,a)=>[t,a]));o.sort((t,a)=>{const n=l.get(t.index)??Number.MAX_VALUE,c=l.get(a.index)??Number.MAX_VALUE;return n-c}),o.forEach(t=>{var x;let a=t.name;t.areaName&&(a+=` (${t.areaName})`);const n=((x=s.regionsIndexes)==null?void 0:x.includes(t.index))??!1,c=p.getSearcherGIcon(t.searcher_key),m=t.lang!==void 0?p.getLangLabel(t.searcher_key??999,t.lang):void 0,d=t.device!==void 0?p.getDeviceGIcon(t.device):void 0,D=t.countryCode!==void 0?C.genFlagLinkByCountryCode(t.countryCode):void 0,U={...t,selected:n,title:a,searcherIcon:c,langLabel:m,deviceIcon:d,flagLink:D};r.value.push(U)})});const A=()=>{var o;if(!((o=f.Core.$)!=null&&o.ui.sortable)){console.info("Для работы сортировки требуется глобальная загрузка jQuery UI Sortable");return}i.value&&$(i.value).sortable({distance:10,stop:()=>{const l=[...i.value.children].map(t=>Number(t.getAttribute("data-region-index")));r.value.sort((t,a)=>l.indexOf(t.index)-l.indexOf(a.index))}})},T=()=>{var o;(o=f.Core.$)!=null&&o.ui.sortable&&i.value&&$(i.value).sortable("destroy")};return(o,l)=>{const t=e.resolveComponent("TopCheckbox"),a=e.resolveComponent("TopButton");return e.openBlock(),e.createBlock(e.unref(_._sfc_main),{id:e.unref(y).id,pageActive:"selectorRegions",class:"dialog_selectorRegions",height:"600px",width:"600px",onOpen:A,onClose:T},{default:e.withCtx(()=>[e.createVNode(e.unref(_._sfc_main$1),{name:"selectorRegions",order:0},{header:e.withCtx(()=>{var n,c,m;return[e.createElementVNode("div",V,[e.createVNode(t,{modelValue:k.value,"onUpdate:modelValue":l[0]||(l[0]=d=>k.value=d)},null,8,["modelValue"]),e.createVNode(a,{class:"dialog_selectorRegions_sortButton",color:"theme","data-top-icon":"",onClick:l[1]||(l[1]=d=>g("searcher_key")),title:(n=o.$i18n.Projects)==null?void 0:n.Sort_by_search_engine},null,8,["title"]),e.createVNode(a,{class:"dialog_selectorRegions_sortButton",color:"theme","data-top-icon":"",onClick:l[2]||(l[2]=d=>g("key")),title:(c=o.$i18n.Projects)==null?void 0:c.Sort_by_yande_region_code},null,8,["title"]),e.createVNode(a,{class:"dialog_selectorRegions_sortButton",color:"theme","data-top-icon":"",onClick:l[3]||(l[3]=d=>g("name")),title:(m=o.$i18n.Projects)==null?void 0:m.Sort_by_lphabetically},null,8,["title"])])]}),body:e.withCtx(()=>[e.createElementVNode("div",{ref_key:"elRegions",ref:i},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,n=>(e.openBlock(),e.createBlock(t,{key:n.index,modelValue:n.selected,"onUpdate:modelValue":c=>n.selected=c,class:"dialog_selectorRegions_region","data-region-index":n.index},{default:e.withCtx(()=>[e.createElementVNode("div",{class:"dialog_selectorRegions_regionSearcherIcon","data-top-icon":n.searcherIcon},null,8,b),n.flagLink?(e.openBlock(),e.createElementBlock("img",{key:0,class:"top-flag",src:"//topvisor.dev"+n.flagLink,alt:n.countryCode},null,8,N)):e.createCommentVNode("",!0),e.createElementVNode("div",B,[e.createTextVNode(e.toDisplayString(n.name)+" ",1),e.createElementVNode("span",I,e.toDisplayString(n.areaName),1)]),n.langLabel?(e.openBlock(),e.createElementBlock("div",R," ["+e.toDisplayString(n.langLabel)+"] ",1)):e.createCommentVNode("",!0),n.deviceIcon?(e.openBlock(),e.createElementBlock("div",{key:2,"data-top-icon":n.deviceIcon},null,8,S)):e.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-region-index"]))),128))],512)]),footer:e.withCtx(()=>[e.createVNode(a,{onClick:w},{default:e.withCtx(()=>{var n;return[e.createTextVNode(e.toDisplayString((n=o.$i18n.Common)==null?void 0:n.Apply),1)]}),_:1})]),_:1})]),_:1},8,["id"])}}});v.default=E,Object.defineProperty(v,Symbol.toStringTag,{value:"Module"})});
2
- //# sourceMappingURL=dialog_selectorRegions-DW77c8Ny.amd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog_selectorRegions-DW77c8Ny.amd.js","sources":["../../src/components/project/selectorRegion/dialog_selectorRegions/dialog_selectorRegions.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, reactive, ref, watch } from 'vue';\nimport { TopDialog, TopDialogPage, useTopDialogSelf } from '@/components/dialog/dialog';\nimport { genFlagLinkByCountryCode } from '@/core/utils/string';\nimport type { Props, RegionRich } from './types';\nimport { getDeviceGIcon, getLangLabel, getSearcherGIcon } from '@/core/utils/searchers';\nimport Core from '@/core/core/core';\n\ndefineOptions({ id: 'selectorRegions' });\n\nconst props = defineProps<Partial<Props>>();\n\nconst dialog = useTopDialogSelf();\n\n/**\n * Список расширенных регионов для использования в компоненте\n */\nconst regionsRich = ref<RegionRich[]>([]);\n\n/**\n * Ссылка на элемент с регионами\n */\nconst elRegions = ref<null | HTMLElement>(null);\n\n/**\n * Направление сортировки по полю\n */\nconst sortedVectorByField = reactive({\n\tsearcher_key: -1,\n\tkey: -1,\n\tname: -1,\n});\n\n/**\n * Выбраны все регионы\n */\nconst isAllSelected = computed({\n\tget() {\n\t\treturn regionsRich.value.every(region => region.selected);\n\t},\n\n\tset(value) {\n\t\tregionsRich.value = regionsRich.value.map(region => ({ ...region, selected: value }));\n\t},\n});\n\n/**\n * Сортировать регионы по выбранному полю\n * @param sortedField - Поле для сортировки\n */\nconst sort = (sortedField: keyof typeof sortedVectorByField) => {\n\tsortedVectorByField[sortedField] = -sortedVectorByField[sortedField];\n\n\tregionsRich.value.sort((regionA, regionB) => {\n\t\tif (!regionA[sortedField] || !regionB[sortedField]) return -1;\n\n\t\treturn regionA[sortedField] >= regionB[sortedField] ? sortedVectorByField[sortedField] : -sortedVectorByField[sortedField];\n\t});\n};\n\n/**\n * Применить изменения\n *\n * Вызывает callback `props['@update:regionsIndexes']`\n */\nconst onSubmit = () => {\n\tif (!regionsRich.value.some(region => region.selected)) return;\n\n\tconst regionsIndexes = regionsRich.value\n\t\t.filter(region => region.selected)\n\t\t.map(region => region.index);\n\n\tprops['@update:regionsIndexes']?.(regionsIndexes);\n\n\tdialog.close();\n};\n\n// генерация регионов\nwatch([\n\t() => props.regions,\n\t() => props.regionsIndexes,\n], () => {\n\tregionsRich.value = [];\n\n\tif (!props.regions) return;\n\tif (!props.regionsIndexes) return;\n\n\tlet regions = [...props.regions];\n\n\t// отсортировать регионы по входным данным\n\tconst orderByRegionIndex = new Map(props.regionsIndexes.map((index, order) => [index, order]));\n\n\tregions.sort((regionA, regionB) => {\n\t\tconst orderA = orderByRegionIndex.get(regionA.index) ?? Number.MAX_VALUE;\n\t\tconst orderB = orderByRegionIndex.get(regionB.index) ?? Number.MAX_VALUE;\n\n\t\treturn orderA - orderB;\n\t});\n\n\tregions.forEach(region => {\n\t\tlet title = region.name;\n\t\tif (region.areaName) title += ` (${region.areaName})`;\n\n\t\tconst selected = props.regionsIndexes?.includes(region.index) ?? false;\n\t\tconst searcherIcon = getSearcherGIcon(region.searcher_key);\n\t\tconst langLabel = region.lang !== undefined ? getLangLabel(region.searcher_key ?? 999, region.lang) : undefined;\n\t\tconst deviceIcon = region.device !== undefined ? getDeviceGIcon(region.device) : undefined;\n\t\tconst flagLink = region.countryCode !== undefined ? genFlagLinkByCountryCode(region.countryCode) : undefined;\n\n\t\tconst regionRich = {\n\t\t\t...region,\n\t\t\tselected,\n\t\t\ttitle,\n\t\t\tsearcherIcon,\n\t\t\tlangLabel,\n\t\t\tdeviceIcon,\n\t\t\tflagLink,\n\t\t};\n\n\t\tregionsRich.value.push(regionRich);\n\t});\n});\n\n/**\n * Проверить на существование sortable\n */\nconst onOpen = () => {\n\tif (!Core.$?.ui['sortable']) {\n\t\tconsole.info('Для работы сортировки требуется глобальная загрузка jQuery UI Sortable');\n\n\t\treturn;\n\t}\n\n\tif (!elRegions.value) return;\n\n\t$(elRegions.value).sortable({\n\t\tdistance: 10,\n\n\t\tstop: () => {\n\t\t\t// Обновляем порядок регионов в массиве regionsRich после сортировки\n\t\t\tconst sortedIndexes = [...elRegions.value!.children].map(el => Number(el.getAttribute('data-region-index')));\n\t\t\tregionsRich.value.sort((a, b) => sortedIndexes.indexOf(a.index) - sortedIndexes.indexOf(b.index));\n\t\t},\n\t});\n};\n\n/**\n * Удаление sortable\n */\nconst onClose = () => {\n\tif (!Core.$?.ui['sortable']) return;\n\tif (!elRegions.value) return;\n\n\t$(elRegions.value).sortable('destroy');\n};\n\n</script>\n\n<template>\n\t<TopDialog\n\t\t:id=\"dialog.id\"\n\t\tpageActive=\"selectorRegions\"\n\t\tclass=\"dialog_selectorRegions\"\n\t\theight=\"600px\"\n\t\twidth=\"600px\"\n\t\t@open=\"onOpen\"\n\t\t@close=\"onClose\"\n\t>\n\t\t<TopDialogPage name=\"selectorRegions\" :order=\"0\">\n\t\t\t<template #header>\n\t\t\t\t<div class=\"dialog_selectorRegions_header\">\n\t\t\t\t\t<TopCheckbox v-model=\"isAllSelected\"></TopCheckbox>\n\n\t\t\t\t\t<TopButton\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_sortButton\"\n\t\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"sort('searcher_key')\"\n\t\t\t\t\t\t:title=\"$i18n.Projects?.Sort_by_search_engine\"\n\t\t\t\t\t/>\n\n\t\t\t\t\t<TopButton\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_sortButton\"\n\t\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"sort('key')\"\n\t\t\t\t\t\t:title=\"$i18n.Projects?.Sort_by_yande_region_code\"\n\t\t\t\t\t/>\n\n\t\t\t\t\t<TopButton\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_sortButton\"\n\t\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"sort('name')\"\n\t\t\t\t\t\t:title=\"$i18n.Projects?.Sort_by_lphabetically\"\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template #body>\n\t\t\t\t<div ref=\"elRegions\">\n\t\t\t\t\t<TopCheckbox\n\t\t\t\t\t\tv-for=\"region of regionsRich\"\n\t\t\t\t\t\t:key=\"region.index\"\n\t\t\t\t\t\tv-model=\"region.selected\"\n\t\t\t\t\t\tclass=\"dialog_selectorRegions_region\"\n\t\t\t\t\t\t:data-region-index=\"region.index\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass=\"dialog_selectorRegions_regionSearcherIcon\"\n\t\t\t\t\t\t\t:data-top-icon=\"region.searcherIcon\"\n\t\t\t\t\t\t></div>\n\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tv-if=\"region.flagLink\"\n\t\t\t\t\t\t\tclass=\"top-flag\"\n\t\t\t\t\t\t\t:src=\"'//topvisor.dev' + region.flagLink\"\n\t\t\t\t\t\t\t:alt=\"region.countryCode\"\n\t\t\t\t\t\t>\n\n\t\t\t\t\t\t<div class=\"top-ellipsis\">\n\t\t\t\t\t\t\t{{ region.name }}\n\n\t\t\t\t\t\t\t<span class=\"dialog_selectorRegions_regionAreaName\">\n\t\t\t\t\t\t\t\t{{ region.areaName }}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div v-if=\"region.langLabel\">\n\t\t\t\t\t\t\t[{{ region.langLabel }}]\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tv-if=\"region.deviceIcon\"\n\t\t\t\t\t\t\t:data-top-icon=\"region.deviceIcon\"\n\t\t\t\t\t\t></div>\n\t\t\t\t\t</TopCheckbox>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template #footer>\n\t\t\t\t<TopButton @click=\"onSubmit\">\n\t\t\t\t\t{{ $i18n.Common?.Apply }}\n\t\t\t\t</TopButton>\n\t\t\t</template>\n\t\t</TopDialogPage>\n\t</TopDialog>\n</template>\n\n<style>\n@import \"./style.css\";\n</style>\n"],"names":["dialog","utils","regionsRich","vue","elRegions","sortedVectorByField","isAllSelected","region","sort","sortedField","regionA","regionB","_a","props","regionsIndexes","orderA","orderByRegionIndex","orderB","regions","title","selected","deviceIcon","utils_searchers","flagLink","utils_string","searcherIcon","langLabel","regionRich","a","b","sortedIndexes"],"mappings":"oqBAYAA,EAAAC,EAAA,iBAAA,EAKAC,EAAAC,EAAA,IAAA,CAAA,CAAA,EAKAC,EAAAD,EAAA,IAAA,IAAA,EAKAE,EAAAF,EAAA,SAAA,wBAEM,KAAA,EACC,CAAA,EAMPG,EAAAH,EAAA,SAAA,CAA+B,KAAA,CAE7B,OAAAD,EAAA,MAAA,MAAAK,GAAAA,EAAA,QAAA,qDAIoF,CACrF,CAAA,EAODC,EAAAC,GAAA,gCAIE,CAAAC,EAAAD,CAAA,GAAA,CAAAE,EAAAF,CAAA,EAAA,wBAEyH,gBAU1H,GAAA,CAAAP,EAAA,MAAA,KAAAK,GAAAA,EAAA,QAAA,EAAA,8DAMAK,EAAAC,EAAA,4BAAA,MAAAD,EAAA,KAAAC,EAAAC,cAMDX,EAAA,MAAA,mCAEa,EAAA,IAAA,CAKZ,GAHAD,EAAA,MAAA,CAAA,EAEA,CAAAW,EAAA,SACA,CAAAA,EAAA,eAAA,+FAQC,MAAAE,EAAAC,EAAA,IAAAN,EAAA,KAAA,GAAA,OAAA,UACAO,EAAAD,EAAA,IAAAL,EAAA,KAAA,GAAA,OAAA,oBAEgB,CAAA,EAGjBO,EAAA,QAAAX,GAAA,OACC,IAAAY,EAAAZ,EAAA,KACAA,EAAA,WAAAY,GAAA,KAAAZ,EAAA,QAAA,KAEA,MAAAa,IAAAR,EAAAC,EAAA,iBAAA,YAAAD,EAAA,SAAAL,EAAA,SAAA,4GAGAc,EAAAd,EAAA,SAAA,OAAAe,EAAA,eAAAf,EAAA,MAAA,EAAA,OACAgB,EAAAhB,EAAA,cAAA,OAAAiB,EAAA,yBAAAjB,EAAA,WAAA,EAAA,UAEmB,GAAAA,EACf,SAAAa,EACH,MAAAD,EACA,aAAAM,EACA,UAAAC,EACA,WAAAL,cAKDnB,EAAA,MAAA,KAAAyB,CAAA,CAAiC,CAAA,CACjC,CAAA,8DAQA,QAAA,KAAA,wEAAA,QAEA,CAGDvB,EAAA,oIAQEF,EAAA,MAAA,KAAA,CAAA0B,EAAAC,IAAAC,EAAA,QAAAF,EAAA,KAAA,EAAAE,EAAA,QAAAD,EAAA,KAAA,CAAA,CAAgG,CACjG,CAAA,mDASDzB,EAAA"}
@@ -1,322 +0,0 @@
1
- import { ref as d, markRaw as S, shallowReactive as C, defineComponent as b, onUnmounted as O, createElementBlock as V, openBlock as y, Fragment as R, renderList as k, unref as B, createBlock as F, resolveDynamicComponent as _ } from "vue";
2
- import { waitWhile as q } from "../utils/system.js";
3
- import { historySetState as N, genHash as H, getHash as L } from "../utils/route.js";
4
- import { querySelectorAllArray as P, isVisible as M } from "../utils/dom.js";
5
- class c {
6
- static state = {
7
- load: void 0,
8
- decoratorOnCreate: void 0,
9
- /**
10
- * Порядковый номер перехода в диалоговых окнах
11
- *
12
- * Для расчета анимации Вперед / Назад
13
- */
14
- viewPageN: 0
15
- };
16
- static inited = !1;
17
- /**
18
- * Инициировать события слежения за парамтерами url
19
- *
20
- * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу
21
- */
22
- static init(e) {
23
- if (this.inited) return;
24
- this.inited = !0, this.state.load = e == null ? void 0 : e.load, this.state.decoratorOnCreate = e == null ? void 0 : e.decoratorOnCreate;
25
- const a = (e == null ? void 0 : e.autoInitDelay) ?? 5e3;
26
- window.addEventListener("hashchange", (t) => {
27
- this.opendDialogsFromChangeUrl(t.oldURL, t.newURL);
28
- }), this.opendDialogsFromChangeUrl("", location.href), document.addEventListener("mousedown", async (t) => {
29
- const i = t.target.closest("a[data-to-view]");
30
- if (!i) return;
31
- let n = "next";
32
- i.dataset.action === "top-dialog-close" && (n = "prev"), i.href = c.genViewPageHash(i.dataset.toView, n);
33
- }), document.addEventListener("click", async (t) => {
34
- var D, E;
35
- const i = t.target.closest("[data-to-view]");
36
- if (!i) return;
37
- if (i instanceof HTMLAnchorElement && i.href === ".") {
38
- t.preventDefault();
39
- const f = new MouseEvent("mousedown", {
40
- bubbles: !0,
41
- cancelable: !0,
42
- view: window
43
- });
44
- i.dispatchEvent(f), setTimeout(() => i.click());
45
- return;
46
- }
47
- const n = await this.getDialogsUtils(), r = i.dataset.toView, u = r.split("-")[0], l = n.getElDialogById(u);
48
- let w = "next";
49
- if (l) {
50
- const f = P(l, ".modal-layer"), U = f.reduce((v, A) => {
51
- const h = A.querySelector(":scope > .active");
52
- return h && v.push(h), v;
53
- }, []);
54
- if (U.length) {
55
- const v = r.split("-")[1].split(":")[0];
56
- (((D = f.reduce((h, p) => {
57
- const x = p == null ? void 0 : p.querySelector(`:scope > [data-view-page="${v}"]`);
58
- return x && h.push(x), h;
59
- }, [])[0]) == null ? void 0 : D.dataset.order) ?? 0) < (((E = U[0]) == null ? void 0 : E.dataset.order) ?? 0) && (w = "prev");
60
- }
61
- }
62
- i.dataset.action === "top-dialog-close" && (w = "prev");
63
- const m = c.genViewPageHash(r, w);
64
- if (i instanceof HTMLAnchorElement) {
65
- if (!l || !M(l)) return;
66
- if (location.hash.indexOf(r.replace("-", "=")) !== -1) {
67
- await n.toViewDirty(r);
68
- return;
69
- }
70
- }
71
- !!(l != null && l.dataset.toViewReplace) ? (t.preventDefault(), N(!0, m), await n.toViewDirty(r), w == "next" ? c.state.viewPageN++ : c.state.viewPageN--) : i.tagName !== "A" && (this.compareStates(m, location.hash) ? N(!1, m) : await n.toViewDirty(r));
72
- }), setTimeout(() => this.getDialogsUtils(), a);
73
- }
74
- static opendDialogsFromChangeUrl(e, a) {
75
- const t = e.replace(/.*?#/, "#"), s = a.replace(/.*?#/, "#");
76
- this.compareStates(t, s) && this.opendDialogsFromUrl();
77
- }
78
- static async getDialogsUtils() {
79
- const { TopDialogUtils: e } = await import("./utils-BPftYwd6.es.js");
80
- return e;
81
- }
82
- static getDialog(e) {
83
- return e.closest(".ui-dialog-content");
84
- }
85
- /**
86
- * todo: Переписать на сайте на this.getDialog()
87
- *
88
- * @deprecated Для обратной совместимости
89
- */
90
- static get$dialog(e) {
91
- return e.closest(".ui-dialog-content");
92
- }
93
- static getPage(e) {
94
- return e.closest("[data-view-page]");
95
- }
96
- /**
97
- * todo: Переписать на сайте на this.getPage()
98
- *
99
- * @deprecated Для обратной совместимости
100
- */
101
- static get$page(e) {
102
- return e.closest("[data-view-page]");
103
- }
104
- /**
105
- * todo: Переписать на сайте на this.getPairPage()
106
- *
107
- * @deprecated Для обратной совместимости
108
- */
109
- static get$pairPage(e) {
110
- const a = c.get$dialog(e), s = c.get$page(e).data("view-page");
111
- return $('[data-view-page="' + s + '"]', a);
112
- }
113
- static getPairPage(e) {
114
- const a = c.getDialog(e);
115
- if (!a) return;
116
- const t = c.getPage(e), s = t == null ? void 0 : t.dataset.viewPage;
117
- return P(a, `[data-view-page="${s}"]`);
118
- }
119
- /**
120
- * Закрыть диалоговое окно
121
- */
122
- static close(e) {
123
- const a = $("#" + e);
124
- if (a.dialog("instance")) {
125
- a.dialog("close");
126
- return;
127
- }
128
- const t = document.getElementById(e);
129
- t instanceof HTMLDialogElement && t.close();
130
- }
131
- /**
132
- * Размонтировать $.dialog
133
- */
134
- static destroy(e) {
135
- const a = $("#" + e);
136
- if (a.dialog("instance")) {
137
- a.dialog("close"), a.dialog("destroy");
138
- return;
139
- }
140
- const t = document.getElementById(e);
141
- t instanceof HTMLDialogElement && t.close();
142
- }
143
- /**
144
- * Сгенерировать ссылку на страницу в диалоговом окне
145
- * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}
146
- * @param moveDirection
147
- */
148
- static genViewPageHash(e, a = "next") {
149
- let t = this.state.viewPageN;
150
- a == "prev" ? t-- : t++;
151
- const s = e.split("-"), i = s.shift(), n = s.join("-");
152
- let r = H("vpn", t);
153
- return r = H("view-" + i, n, r), r;
154
- }
155
- /**
156
- * Сравнить версию открытых диалоговых окон
157
- * @returns вернет true, если состояния открытых окон изменилось
158
- */
159
- static compareStates(e, a) {
160
- const t = e.match(/[#&]view-[^&]+/g) || [], s = a.match(/[#&]view-[^&]+/g) || [];
161
- return !!(t.length !== s.length || t.filter((n, r) => {
162
- const u = s[r] || "";
163
- return n !== u;
164
- }).length);
165
- }
166
- static opendDialogsFromUrl = async () => {
167
- const e = Number(L("vpn")) || 0;
168
- let a;
169
- const t = new RegExp("view-((\\w+)=([\\w-]+)(?::([\\w.:-]+))?)", "g");
170
- for (; a = t.exec(location.hash); ) {
171
- let i = "next";
172
- return e < this.state.viewPageN && (i = "prev"), (await this.getDialogsUtils()).toViewDirty(a[1], i);
173
- }
174
- return P(document, ".ui-dialog-content[data-view-page-active]").filter((i) => M(i)).forEach((i) => {
175
- const n = i.getAttribute("id");
176
- if (!n) throw "Диалоговое окно не содержит id";
177
- L("view-" + n) || $(i).dialog("close");
178
- }), this.state.viewPageN = e, !0;
179
- };
180
- }
181
- class I {
182
- /**
183
- * Индентификатор, определяется на уровне компонента TopDialogComponent
184
- *
185
- * Может использоваться в навигации для открытия нужных окон с нужными настройками
186
- */
187
- id;
188
- /**
189
- * ID, используемый в верстке диалогового окна
190
- */
191
- idAttr;
192
- /**
193
- * Пользовательский компонент диалогового окна
194
- */
195
- Component;
196
- /**
197
- * Компонент инициирован
198
- *
199
- * Устанавливается после первого вызова useTopDialog()
200
- */
201
- isMounted = d(!1);
202
- /**
203
- * Компонент готов к использованию
204
- *
205
- * Используется для внутренних преобразований после отрисовки
206
- */
207
- isReady = d(!1);
208
- /**
209
- * Диалоговое окно открыто
210
- */
211
- isOpened = d(!1);
212
- /**
213
- * Имя активной страницы дилогового окна
214
- */
215
- pageActive = d("");
216
- /**
217
- * Диалоговое окно находится в состоянии загрузки своей страницы
218
- */
219
- isLoadingPage = d(!1);
220
- /**
221
- * Следующая активная страница
222
- *
223
- * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию
224
- */
225
- pageActiveNext = d("");
226
- /**
227
- * props компонента, доступны после инициализации
228
- */
229
- props;
230
- /**
231
- * emit базового компонента `TopDialog`
232
- */
233
- emit;
234
- /**
235
- * Одноразовое событие на закрытие диалогового окна
236
- *
237
- * Используется для привязки окна к сценариям использования
238
- */
239
- onCloseOnce;
240
- constructor(e) {
241
- this.id = e.id, this.idAttr = "dialog_" + e.id, this.Component = S(e);
242
- }
243
- /**
244
- * Событие - компонент инициирован
245
- */
246
- onMounted(e, a) {
247
- this.isMounted.value = !0, this.props = e.props, this.emit = a.emit;
248
- }
249
- /**
250
- * Открыть диалоговое окно
251
- *
252
- * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента
253
- */
254
- async open(e = "main", a, t = [], s, i) {
255
- a && await this.setProps(a), s && (this.onCloseOnce = s), await (await c.getDialogsUtils()).toView(this.idAttr, e, t, i);
256
- }
257
- /**
258
- * Открыть диалоговое окно как ссылку, для хеш-навигации
259
- *
260
- * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader
261
- */
262
- async openAsLink(e = "main", a, t = [], s, i) {
263
- a && await this.setProps(a), s && (this.onCloseOnce = s);
264
- const n = this.idAttr + "-" + e, r = c.genViewPageHash(n, i);
265
- N(!1, r);
266
- }
267
- /**
268
- * Закрыть диалоговое окно
269
- *
270
- * Не меняет состояние компонента диалогового окна
271
- */
272
- async close() {
273
- c.close(this.idAttr);
274
- }
275
- /**
276
- * Размонтировать $.dialog
277
- */
278
- async destroy() {
279
- c.destroy(this.idAttr);
280
- }
281
- /**
282
- * Устанвоить props
283
- *
284
- * Полностью сбрасывается состояние props
285
- */
286
- async setProps(e = {}) {
287
- this.isMounted || await q(() => !this.props);
288
- for (const a in this.props)
289
- this.props[a] = e[a];
290
- }
291
- /**
292
- * Проверить, есть ли необходимость отрисовки страницы диалогового окна
293
- */
294
- needShowPage(e) {
295
- return this.isOpened.value ? this.pageActive.value === e || this.pageActiveNext.value === e : !1;
296
- }
297
- }
298
- const j = {
299
- class: "top-dialogs",
300
- style: { display: "none" }
301
- }, g = C(/* @__PURE__ */ new Map()), Q = (o) => (o = o.replace(/^dialog_/, ""), g.get(o)), X = (o) => {
302
- if (!(o != null && o.id))
303
- throw console.log({ TopDialogComponent: o }), new Error("Expected TopDialogComponent");
304
- return g.has(o.id) || g.set(o.id, new I(o)), g.get(o.id);
305
- }, Y = /* @__PURE__ */ b({
306
- name: "DialogWrapper",
307
- __name: "dialogs",
308
- setup(o) {
309
- return O(() => {
310
- g.forEach((e) => e.destroy()), g.clear();
311
- }), (e, a) => (y(), V("div", j, [
312
- (y(!0), V(R, null, k(B(g), ([t, s]) => (y(), F(_(s.Component), { key: t }))), 128))
313
- ]));
314
- }
315
- });
316
- export {
317
- c as T,
318
- Y as _,
319
- X as a,
320
- Q as g
321
- };
322
- //# sourceMappingURL=dialogs.vue_vue_type_script_setup_true_lang-Bck_g47j.es.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialogs.vue_vue_type_script_setup_true_lang-Bck_g47j.es.js","sources":["../../src/components/dialog/lib/worker.ts","../../src/components/dialog/dialog/composables/dialogHandle.ts","../../src/components/dialog/dialog/dialogs/dialogs.vue"],"sourcesContent":["import { genHash, getHash, historySetState } from '@/core/utils/route';\nimport type { ElTopDialog, ElTopDialogOpener, ElTopDialogPage, MoveDirection, TopDialogOptions } from './types';\nimport { isVisible, querySelectorAllArray } from '@/core/utils/dom';\nimport type { $el } from '@/components/types';\n\nexport abstract class TopDialogWorker {\n\tstatic state = {\n\t\tload: undefined as TopDialogOptions['load'] | undefined,\n\t\tdecoratorOnCreate: undefined as TopDialogOptions['decoratorOnCreate'] | undefined,\n\n\t\t/**\n\t\t * Порядковый номер перехода в диалоговых окнах\n\t\t *\n\t\t * Для расчета анимации Вперед / Назад\n\t\t */\n\t\tviewPageN: 0,\n\t};\n\n\tprivate static inited = false;\n\n\t/**\n\t * Инициировать события слежения за парамтерами url\n\t *\n\t * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу\n\t */\n\tstatic init(options?: TopDialogOptions) {\n\t\tif (this.inited) return;\n\t\tthis.inited = true;\n\n\t\tthis.state.load = options?.load;\n\t\tthis.state.decoratorOnCreate = options?.decoratorOnCreate;\n\n\t\tconst autoInitDelay = options?.autoInitDelay ?? 5000;\n\n\t\twindow.addEventListener('hashchange', (e) => {\n\t\t\tthis.opendDialogsFromChangeUrl(e.oldURL, e.newURL);\n\t\t});\n\n\t\tthis.opendDialogsFromChangeUrl('', location.href);\n\n\t\t/**\n\t\t * Сгенерировать ссылку для перехода к странице диалогового окна\n\t\t */\n\t\tdocument.addEventListener('mousedown', async (e) => {\n\t\t\tconst elEventTarget = e.target as HTMLElement;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener<HTMLAnchorElement>>('a[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// const toView = el.dataset.toView;\n\t\t\t// const viewName = toView.split('-')[0];\n\t\t\t// const $toDialog = $('#' + viewName);\n\t\t\t// const $modalLayers = $('> .modal-layer', $toDialog);\n\t\t\t// const $currentPage = $('> .active', $modalLayers);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\t// /**\n\t\t\t// * Данный алгоритм определения направления работает не корректно, так как для чтения свойства order менят состояние через getDialogsUtils()\n\t\t\t// */\n\t\t\t// if ($currentPage.length) {\n\t\t\t// \tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t//\n\t\t\t// \tconst TopDialogUtils = await this.getDialogsUtils();\n\t\t\t//\n\t\t\t// \tawait TopDialogUtils.updatePageVue(viewName, undefined, pageName);\n\t\t\t//\n\t\t\t// \tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\n\t\t\t// \tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\n\t\t\t// }\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tel.href = TopDialogWorker.genViewPageHash(el.dataset.toView, moveDirection);\n\t\t});\n\n\t\t/**\n\t\t * Осуществить переход по ссылке с учетом historyType\n\t\t */\n\t\tdocument.addEventListener('click', async (e) => {\n\t\t\tconst elEventTarget = e.target as HTMLElement;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener>('[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// Подождать генерацию ссылки\n\t\t\tif (el instanceof HTMLAnchorElement && el.href === '.') {\n\t\t\t\te.preventDefault();\n\n\t\t\t\tconst mouseEvent = new MouseEvent('mousedown', {\n\t\t\t\t\tbubbles: true,\n\t\t\t\t\tcancelable: true,\n\t\t\t\t\tview: window,\n\t\t\t\t});\n\n\t\t\t\tel.dispatchEvent(mouseEvent);\n\n\t\t\t\tsetTimeout(() => el.click());\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\tconst toView = el.dataset.toView;\n\t\t\tconst viewName = toView.split('-')[0];\n\n\t\t\tconst elDialog = TopDialogUtils.getElDialogById(viewName);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\tif (elDialog) {\n\t\t\t\tconst elModalLayers = querySelectorAllArray(elDialog, '.modal-layer');\n\t\t\t\tconst elCurrentPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\tconst elCurrentPage = el.querySelector<ElTopDialogPage>(':scope > .active');\n\n\t\t\t\t\tif (elCurrentPage) acc.push(elCurrentPage);\n\n\t\t\t\t\treturn acc;\n\t\t\t\t}, []);\n\n\t\t\t\tif (elCurrentPages.length) {\n\t\t\t\t\tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t\t\tconst elNextPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\t\tconst elNextPage = el?.querySelector<ElTopDialogPage>(`:scope > [data-view-page=\"${pageName}\"]`);\n\n\t\t\t\t\t\tif (elNextPage) acc.push(elNextPage);\n\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t}, []);\n\n\t\t\t\t\tif ((elNextPages[0]?.dataset.order ?? 0) < (elCurrentPages[0]?.dataset.order ?? 0)) moveDirection = 'prev';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, moveDirection);\n\n\t\t\tif (el instanceof HTMLAnchorElement) {\n\t\t\t\t// диалоговое окно еще не открыто, произвести переход по ссылке\n\t\t\t\tif (!elDialog || !isVisible(elDialog)) return;\n\n\t\t\t\t// в адресе уже указана эта страница, необходимо явно запросить ее открытие\n\t\t\t\tif (location.hash.indexOf(toView.replace('-', '=')) !== -1) {\n\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst replaceHistory = !!elDialog?.dataset.toViewReplace;\n\n\t\t\tif (replaceHistory) {\n\t\t\t\te.preventDefault();\n\n\t\t\t\thistorySetState(true, hash);\n\n\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\tif (moveDirection == 'next') {\n\t\t\t\t\tTopDialogWorker.state.viewPageN++;\n\t\t\t\t} else {\n\t\t\t\t\tTopDialogWorker.state.viewPageN--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (el.tagName !== 'A') {\n\t\t\t\t\tif (this.compareStates(hash, location.hash)) {\n\t\t\t\t\t\thistorySetState(false, hash);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetTimeout(() => this.getDialogsUtils(), autoInitDelay);\n\t}\n\n\tprivate static opendDialogsFromChangeUrl(oldUrl: string, newUrl: string) {\n\t\tconst oldHash = oldUrl.replace(/.*?#/, '#');\n\t\tconst newHash = newUrl.replace(/.*?#/, '#');\n\n\t\tconst dialogsStateChanged = this.compareStates(oldHash, newHash);\n\t\tif (dialogsStateChanged) void this.opendDialogsFromUrl();\n\t}\n\n\tstatic async getDialogsUtils() {\n\t\tconst { TopDialogUtils } = await import('./utils');\n\n\t\treturn TopDialogUtils;\n\t}\n\n\tstatic getDialog(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialog>('.ui-dialog-content');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getDialog()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$dialog($el: $el) {\n\t\treturn $el.closest('.ui-dialog-content');\n\t};\n\n\tstatic getPage(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialogPage>('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$page($el: $el) {\n\t\treturn $el.closest('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPairPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$pairPage($el: $el) {\n\t\tconst $dialog = TopDialogWorker.get$dialog($el);\n\n\t\tconst $page = TopDialogWorker.get$page($el);\n\t\tconst pageName = $page.data('view-page');\n\n\t\treturn $('[data-view-page=\"' + pageName + '\"]', $dialog);\n\t};\n\n\tstatic getPairPage(el: HTMLElement) {\n\t\tconst elDialog = TopDialogWorker.getDialog(el);\n\t\tif (!elDialog) return;\n\n\t\tconst elPage = TopDialogWorker.getPage(el);\n\t\tconst pageName = elPage?.dataset.viewPage;\n\n\t\treturn querySelectorAllArray(elDialog, `[data-view-page=\"${pageName}\"]`);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t */\n\tstatic close(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tstatic destroy(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\t\t\t$dialog.dialog('destroy');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Сгенерировать ссылку на страницу в диалоговом окне\n\t * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}\n\t * @param moveDirection\n\t */\n\tstatic genViewPageHash(toView: string, moveDirection: MoveDirection = 'next') {\n\t\tlet toViewPageN = this.state.viewPageN;\n\t\tif (moveDirection == 'prev') {\n\t\t\ttoViewPageN--;\n\t\t} else {\n\t\t\ttoViewPageN++;\n\t\t}\n\n\t\tconst viewNameAndPageLink = toView.split('-');\n\t\tconst viewName = viewNameAndPageLink.shift();\n\t\tconst pageLink = viewNameAndPageLink.join('-');\n\n\t\tlet hash = genHash('vpn', toViewPageN);\n\t\thash = genHash('view-' + viewName, pageLink, hash);\n\n\t\treturn hash;\n\t};\n\n\t/**\n\t * Сравнить версию открытых диалоговых окон\n\t * @returns вернет true, если состояния открытых окон изменилось\n\t */\n\tstatic compareStates(hash: string, hash2: string) {\n\t\tconst mathes = hash.match(/[#&]view-[^&]+/g) || [];\n\t\tconst mathes2 = hash2.match(/[#&]view-[^&]+/g) || [];\n\n\t\tif (mathes.length !== mathes2.length) return true;\n\n\t\tconst mathesChanged = mathes.filter((math, n) => {\n\t\t\tconst math2 = mathes2[n] || '';\n\n\t\t\treturn math !== math2;\n\t\t});\n\n\t\tif (mathesChanged.length) return true;\n\n\t\treturn false;\n\t};\n\n\tstatic opendDialogsFromUrl = async () => {\n\t\tconst toViewPageN = Number(getHash('vpn')) || 0;\n\n\t\t// Открыть диалоговое окно\n\t\tlet view: RegExpExecArray | null;\n\t\t// const regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)' + '(' + Math.random() + ')?', 'g'); // fix babel minify regexp\n\t\tconst regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)', 'g');\n\n\t\t// TODO: Цикл делает только одну оперцию и выходит (возможно, оставлен специально с какой-то целью, если нет - заменить на if)\n\t\twhile (view = regexp.exec(location.hash)) {\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\t\t\tif (toViewPageN < this.state.viewPageN) moveDirection = 'prev';\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\treturn TopDialogUtils.toViewDirty(view[1], moveDirection);\n\t\t}\n\n\t\t// Закрыть ненужные view\n\t\tconst elDialogs = querySelectorAllArray(document, '.ui-dialog-content[data-view-page-active]') as HTMLDialogElement[];\n\t\telDialogs.filter((elDialog) => {\n\t\t\treturn isVisible(elDialog);\n\t\t}).forEach((elDialog) => {\n\t\t\tconst viewName = elDialog.getAttribute('id');\n\t\t\tif (!viewName) throw 'Диалоговое окно не содержит id';\n\t\t\tconst pageName = getHash('view-' + viewName);\n\t\t\tif (!pageName) {\n\t\t\t\tconst $dialog = $(elDialog);\n\n\t\t\t\t$dialog.dialog('close');\n\t\t\t}\n\t\t});\n\n\t\tthis.state.viewPageN = toViewPageN;\n\n\t\treturn true;\n\t};\n}\n","import { type ComponentInstance, type ComponentInternalInstance, markRaw, ref } from 'vue';\nimport { waitWhile } from '@/core/utils/system';\nimport TopDialog from '../dialog.vue';\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\nimport type { MoveDirection } from '@/components/dialog/lib/types';\nimport type { TopDialogComponent } from './types';\nimport { historySetState } from '@/core/utils/route';\n\n/**\n * Объект для работы с диалоговым окном\n *\n * Каждое окно уникально и может быть открыто одновременно только один раз\n *\n * Можно определить много окон, после чего с ними можно вести работу в любой части приложения\n */\nexport class TopDialogHandle<T extends TopDialogComponent> {\n\n\t/**\n\t * Индентификатор, определяется на уровне компонента TopDialogComponent\n\t *\n\t * Может использоваться в навигации для открытия нужных окон с нужными настройками\n\t */\n\tid: string;\n\n\t/**\n\t * ID, используемый в верстке диалогового окна\n\t */\n\tidAttr: string;\n\n\t/**\n\t * Пользовательский компонент диалогового окна\n\t */\n\tComponent: T;\n\n\t/**\n\t * Компонент инициирован\n\t *\n\t * Устанавливается после первого вызова useTopDialog()\n\t */\n\tisMounted = ref(false);\n\n\t/**\n\t * Компонент готов к использованию\n\t *\n\t * Используется для внутренних преобразований после отрисовки\n\t */\n\tisReady = ref(false);\n\n\t/**\n\t * Диалоговое окно открыто\n\t */\n\tisOpened = ref(false);\n\n\t/**\n\t * Имя активной страницы дилогового окна\n\t */\n\tpageActive = ref('');\n\n\t/**\n\t * Диалоговое окно находится в состоянии загрузки своей страницы\n\t */\n\tisLoadingPage = ref(false);\n\n\t/**\n\t * Следующая активная страница\n\t *\n\t * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию\n\t */\n\tpageActiveNext = ref('');\n\n\t/**\n\t * props компонента, доступны после инициализации\n\t */\n\tprops?: ComponentInstance<T>['$props'];\n\n\t/**\n\t * emit базового компонента `TopDialog`\n\t */\n\temit?: ComponentInstance<typeof TopDialog>['$emit'];\n\n\t/**\n\t * Одноразовое событие на закрытие диалогового окна\n\t *\n\t * Используется для привязки окна к сценариям использования\n\t */\n\tonCloseOnce?: (props: typeof this.props, pageName: string) => void;\n\n\tconstructor(TopDialogComponent: T) {\n\t\tthis.id = TopDialogComponent.id!;\n\t\tthis.idAttr = 'dialog_' + TopDialogComponent.id;\n\t\tthis.Component = markRaw(TopDialogComponent);\n\t}\n\n\t/**\n\t * Событие - компонент инициирован\n\t */\n\tonMounted(topDialogComponent: ComponentInternalInstance, topDialogBaseComponent: ComponentInternalInstance) {\n\t\tthis.isMounted.value = true;\n\t\tthis.props = topDialogComponent.props;\n\t\tthis.emit = topDialogBaseComponent.emit;\n\t}\n\n\t/**\n\t * Открыть диалоговое окно\n\t *\n\t * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента\n\t */\n\tasync open(pageName: string = 'main', props?: {}, args: [] = [], onCloseOnce?: typeof this.onCloseOnce, moveDirection?: MoveDirection) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst TopDialogUtils = await TopDialogWorker.getDialogsUtils();\n\n\t\tawait TopDialogUtils.toView(this.idAttr, pageName, args, moveDirection);\n\t};\n\n\t/**\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\n\t *\n\t * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader\n\t */\n\tasync openAsLink(\n\t\tpageName: string = 'main',\n\t\tprops?: {},\n\t\t_args: string[] = [],\n\t\tonCloseOnce?: typeof this.onCloseOnce,\n\t\tmoveDirection?: MoveDirection,\n\t) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst viewName = this.idAttr + '-' + pageName;\n\n\t\tconst hash = TopDialogWorker.genViewPageHash(viewName, moveDirection);\n\t\thistorySetState(false, hash);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t *\n\t * Не меняет состояние компонента диалогового окна\n\t */\n\tasync close() {\n\t\tTopDialogWorker.close(this.idAttr);\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tasync destroy() {\n\t\tTopDialogWorker.destroy(this.idAttr);\n\t}\n\n\t/**\n\t * Устанвоить props\n\t *\n\t * Полностью сбрасывается состояние props\n\t */\n\tasync setProps(props: ComponentInstance<T>['$props'] = {}) {\n\t\t// ожидание инициализации компонента\n\t\tif (!this.isMounted) {\n\t\t\tawait waitWhile(() => !this.props);\n\t\t}\n\n\t\tfor (const name in this.props) {\n\t\t\tthis.props[name] = props[name];\n\t\t}\n\t}\n\n\t/**\n\t * Проверить, есть ли необходимость отрисовки страницы диалогового окна\n\t */\n\tneedShowPage(pageName: string): boolean {\n\t\tif (!this.isOpened.value) return false;\n\n\t\treturn this.pageActive.value === pageName || this.pageActiveNext.value === pageName;\n\t}\n}\n","<script lang=\"ts\">\nimport { shallowReactive } from 'vue';\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\n\n/**\n * Словарь всех используемых диалоговых окон\n *\n * В других компонентах не использовать\n */\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\n\n/**\n * Получить компонент диалогового окна по id\n */\nexport const getDialogWorker = (id: string) => {\n\tid = id.replace(/^dialog_/, '');\n\n\treturn dialogsWorkers.get(id);\n};\n\n/**\n * Добавить компонент диалогового окна для использования\n */\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\n\tif (!TopDialogComponent?.id) {\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\n\n\t\tthrow new Error('Expected TopDialogComponent');\n\t}\n\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\n\t}\n\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\n};\n</script>\n\n<script setup lang=\"ts\">\nimport { onUnmounted } from 'vue';\n\ndefineOptions({\n\tname: 'DialogWrapper',\n});\n\nonUnmounted(() => {\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\n\tdialogsWorkers.clear();\n});\n</script>\n\n<template>\n\t<div class=\"top-dialogs\" style=\"display: none;\">\n\t\t<component\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\n\t\t\t:is=\"dialog.Component\"\n\t\t\t:key=\"dialogId\"\n\t\t/>\n\t</div>\n</template>\n"],"names":["TopDialogWorker","options","autoInitDelay","e","el","moveDirection","mouseEvent","TopDialogUtils","toView","viewName","elDialog","elModalLayers","querySelectorAllArray","elCurrentPages","acc","elCurrentPage","pageName","_a","elNextPage","_b","hash","isVisible","historySetState","oldUrl","newUrl","oldHash","newHash","$el","$dialog","elPage","dialogId","toViewPageN","viewNameAndPageLink","pageLink","genHash","hash2","mathes","mathes2","math","n","math2","getHash","view","regexp","TopDialogHandle","ref","TopDialogComponent","markRaw","topDialogComponent","topDialogBaseComponent","props","args","onCloseOnce","_args","waitWhile","name","dialogsWorkers","shallowReactive","getDialogWorker","id","addDialogWorker","onUnmounted","dialog"],"mappings":"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"}