@topvisor/ui 1.0.19 → 1.0.20-selector2-3

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 (921) hide show
  1. package/.idea/.gitignore +11 -0
  2. package/.idea/codeStyles/Project.xml +205 -0
  3. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  4. package/.idea/externalDependencies.xml +6 -0
  5. package/.idea/inspectionProfiles/Disabled.xml +824 -0
  6. package/.idea/inspectionProfiles/Project_Default.xml +33 -0
  7. package/.idea/php.xml +19 -0
  8. package/.idea/vcs.xml +6 -0
  9. package/.storybook/TopTheme.ts +115 -0
  10. package/.storybook/TopThemeManager.ts +53 -0
  11. package/.storybook/main.ts +51 -0
  12. package/.storybook/manager.ts +25 -0
  13. package/.storybook/preview-head.html +21 -0
  14. package/.storybook/preview.ts +47 -0
  15. package/.storybook/vue/coreDecorator.ts +76 -0
  16. package/.storybook/vue/vModelDecorator.ts +46 -0
  17. package/.versionrc.json +16 -0
  18. package/.vscode/extensions.json +11 -0
  19. package/.vscode/keybindings.example.json +121 -0
  20. package/.vscode/settings.json +45 -0
  21. package/CHANGELOG.md +175 -0
  22. package/NPM.md +25 -0
  23. package/PUBLISH.md +63 -0
  24. package/README.md +41 -82
  25. package/STORYBOOK.md +43 -0
  26. package/USE_IN_PROJECT.md +32 -0
  27. package/build/afterBuild.sh +11 -0
  28. package/build/cssModules.ts +39 -0
  29. package/build/genDocs.sh +19 -0
  30. package/build/plugin/amdFix.ts +83 -0
  31. package/build/plugin/autoloadCSS.ts +155 -0
  32. package/build/rollup.config.ts +37 -0
  33. package/package.json +87 -34
  34. package/public/README.md +82 -0
  35. package/public/icomoon/Read Me.txt +7 -0
  36. package/public/icomoon/Topvisor icons.json +6260 -0
  37. package/public/icomoon/demo-files/demo.css +158 -0
  38. package/public/icomoon/demo-files/demo.js +30 -0
  39. package/public/icomoon/demo.html +3558 -0
  40. package/public/icomoon/fonts/Topvisor-2.eot +0 -0
  41. package/public/icomoon/fonts/Topvisor-2.svg +277 -0
  42. package/public/icomoon/fonts/Topvisor-2.ttf +0 -0
  43. package/public/icomoon/fonts/Topvisor-2.woff +0 -0
  44. package/public/icomoon/selection.json +1 -0
  45. package/public/icomoon/style.css +780 -0
  46. package/public/jquery-ui.min.css +6 -0
  47. package/public/require/css.amd.js +12 -0
  48. package/src/components/charts/charts.ts +8 -0
  49. package/src/components/charts/miniChart/miniChart.stories.ts +67 -0
  50. package/src/components/charts/miniChart/miniChart.ts +110 -0
  51. package/src/components/charts/miniChart/miniChart.vue +158 -0
  52. package/src/components/charts/miniChart/stories/README.md +9 -0
  53. package/src/components/charts/miniChart/stories/dummy.ts +25 -0
  54. package/src/components/charts/miniChart/styles/miniChart.css +87 -0
  55. package/src/components/charts/miniChart/utils/consts.ts +9 -0
  56. package/src/components/charts/miniCharts/miniCharts.stories.ts +76 -0
  57. package/src/components/charts/miniCharts/miniCharts.ts +24 -0
  58. package/src/components/charts/miniCharts/miniCharts.vue +128 -0
  59. package/src/components/charts/miniCharts/stories/README.md +18 -0
  60. package/src/components/charts/miniCharts/stories/dummy.ts +70 -0
  61. package/src/components/charts/miniCharts/stories/overview.vue +139 -0
  62. package/src/components/charts/miniCharts/styles/miniCharts.css +32 -0
  63. package/src/components/component.ts +130 -0
  64. package/src/components/core/core.mdx +7 -0
  65. package/src/components/core/notice/item/item.vue +145 -0
  66. package/src/components/core/notice/item/style.css +70 -0
  67. package/src/components/core/notice/item/types.ts +71 -0
  68. package/src/components/core/notice/notice.stories.ts +105 -0
  69. package/src/components/core/notice/notice.vue +69 -0
  70. package/src/components/core/notice/stories/README.md +34 -0
  71. package/src/components/core/notice/types.ts +1 -0
  72. package/src/components/core/notice/utils.ts +115 -0
  73. package/src/components/dialog/dialog/Dialog (code).mdx +61 -0
  74. package/src/components/dialog/dialog/composables/asyncDialogHandle.ts +99 -0
  75. package/src/components/dialog/dialog/composables/dialogHandle.ts +176 -0
  76. package/src/components/dialog/dialog/composables/types.ts +12 -0
  77. package/src/components/dialog/dialog/composables/utils.ts +39 -0
  78. package/src/components/dialog/dialog/dialog.stories.ts +83 -0
  79. package/src/components/dialog/dialog/dialog.vue +74 -0
  80. package/src/components/dialog/dialog/dialogs/dialogs.vue +58 -0
  81. package/src/components/dialog/dialog/page/page.vue +86 -0
  82. package/src/components/dialog/dialog/page/types.ts +84 -0
  83. package/src/components/dialog/dialog/page.stories.ts +27 -0
  84. package/src/components/dialog/dialog/pageComponent/pageComponent.vue +57 -0
  85. package/src/components/dialog/dialog/pageComponent/types.ts +21 -0
  86. package/src/components/dialog/dialog/pageComponent.stories.ts +27 -0
  87. package/src/components/dialog/dialog/stories/README.md +117 -0
  88. package/src/components/dialog/dialog/stories/autoload.ts +12 -0
  89. package/src/components/dialog/dialog/stories/dialog_example/dialog_example.vue +73 -0
  90. package/src/components/dialog/dialog/stories/dialog_example/pages/async.vue +57 -0
  91. package/src/components/dialog/dialog/stories/dialog_example/pages/default.vue +64 -0
  92. package/src/components/dialog/dialog/stories/dialog_example/pages/headerButtons.vue +56 -0
  93. package/src/components/dialog/dialog/stories/dialog_example/pages/utils.ts +26 -0
  94. package/src/components/dialog/dialog/stories/dialog_example/pages/withoutCache.vue +64 -0
  95. package/src/components/dialog/dialog/stories/page/README.md +24 -0
  96. package/src/components/dialog/dialog/stories/pageComponent/README.md +12 -0
  97. package/src/components/dialog/dialog/style/dialog.css +316 -0
  98. package/src/components/dialog/dialog/style/dialog.m.css +40 -0
  99. package/src/components/dialog/dialog/style/dialog.pc.css +73 -0
  100. package/src/components/dialog/dialog/style/modern/dialog.css +12 -0
  101. package/src/components/dialog/dialog/style/modern/dialog.pc.css +3 -0
  102. package/src/components/dialog/dialog/types.ts +69 -0
  103. package/src/components/dialog/dialog.ts +7 -0
  104. package/src/components/dialog/lib/types.ts +26 -0
  105. package/src/components/dialog/lib/utils.globalEvents.ts +175 -0
  106. package/src/components/dialog/lib/utils.ts +525 -0
  107. package/src/components/dialog/lib/worker.ts +273 -0
  108. package/src/components/forms/README.mdx +10 -0
  109. package/src/components/forms/avatar/avatar.stories.ts +38 -0
  110. package/src/components/forms/avatar/avatar.ts +40 -0
  111. package/src/components/forms/avatar/avatar.vue +77 -0
  112. package/src/components/forms/avatar/stories/overview.vue +28 -0
  113. package/src/components/forms/button/button.stories.ts +118 -0
  114. package/src/components/forms/button/button.vue +111 -0
  115. package/src/components/forms/button/stories/README.md +9 -0
  116. package/src/components/forms/button/stories/overview.vue +33 -0
  117. package/src/components/forms/button/style/button.css +139 -0
  118. package/src/components/forms/button/style/style-outline.css +129 -0
  119. package/src/components/forms/button/style/style-soft.css +89 -0
  120. package/src/components/forms/button/style/style-transparent.css +39 -0
  121. package/src/components/forms/button/types.ts +66 -0
  122. package/src/components/forms/checkbox/checkbox.stories.ts +33 -0
  123. package/src/components/forms/checkbox/checkbox.ts +21 -0
  124. package/src/components/forms/checkbox/checkbox.vue +114 -0
  125. package/src/components/forms/checkbox/stories/overview.vue +171 -0
  126. package/src/components/forms/controlLabel/controlLabel.stories.ts +32 -0
  127. package/src/components/forms/controlLabel/controlLabel.ts +4 -0
  128. package/src/components/forms/controlLabel/controlLabel.vue +54 -0
  129. package/src/components/forms/forms.ts +40 -0
  130. package/src/components/forms/helpers.ts +11 -0
  131. package/src/components/forms/hint/hint.stories.ts +41 -0
  132. package/src/components/forms/hint/hint.ts +8 -0
  133. package/src/components/forms/hint/hint.vue +32 -0
  134. package/src/components/forms/input/input.stories.ts +31 -0
  135. package/src/components/forms/input/input.ts +37 -0
  136. package/src/components/forms/input/input.vue +187 -0
  137. package/src/components/forms/input/stories/overview.vue +61 -0
  138. package/src/components/forms/inputDate/datepicker.css +246 -0
  139. package/src/components/forms/inputDate/datepicker.ts +101 -0
  140. package/src/components/forms/inputDate/inputDate.stories.ts +41 -0
  141. package/src/components/forms/inputDate/inputDate.ts +5 -0
  142. package/src/components/forms/inputDate/inputDate.vue +133 -0
  143. package/src/components/forms/inputDate/stories/overview.vue +35 -0
  144. package/src/components/forms/inputRange/inputRange.stories.ts +53 -0
  145. package/src/components/forms/inputRange/inputRange.ts +3 -0
  146. package/src/components/forms/inputRange/inputRange.vue +39 -0
  147. package/src/components/forms/inputRange/stories/overview.vue +129 -0
  148. package/src/components/forms/loadbar/loadbar.stories.ts +17 -0
  149. package/src/components/forms/loadbar/loadbar.vue +37 -0
  150. package/src/components/forms/radio/radio.stories.ts +34 -0
  151. package/src/components/forms/radio/radio.ts +15 -0
  152. package/src/components/forms/radio/radio.vue +97 -0
  153. package/src/components/forms/radio/stories/overview.vue +79 -0
  154. package/src/components/forms/select/select.stories.ts +68 -0
  155. package/src/components/forms/select/select.ts +60 -0
  156. package/src/components/forms/select/select.vue +298 -0
  157. package/src/components/forms/select/stories/exampleOptions.ts +61 -0
  158. package/src/components/forms/select/stories/overview.vue +72 -0
  159. package/src/components/forms/switcher/stories/overview.vue +139 -0
  160. package/src/components/forms/switcher/switcher.stories.ts +33 -0
  161. package/src/components/forms/switcher/switcher.ts +22 -0
  162. package/src/components/forms/switcher/switcher.vue +118 -0
  163. package/src/components/forms/textarea/stories/overview.vue +62 -0
  164. package/src/components/forms/textarea/textarea.stories.ts +33 -0
  165. package/src/components/forms/textarea/textarea.ts +38 -0
  166. package/src/components/forms/textarea/textarea.vue +121 -0
  167. package/src/components/formsExt/README.mdx +5 -0
  168. package/src/components/formsExt/editArea/editArea.stories.ts +41 -0
  169. package/src/components/formsExt/editArea/editArea.ts +41 -0
  170. package/src/components/formsExt/editArea/editArea.vue +195 -0
  171. package/src/components/formsExt/editArea/stories/README.md +21 -0
  172. package/src/components/formsExt/editArea/stories/overview.vue +67 -0
  173. package/src/components/formsExt/editInput/editInput.stories.ts +36 -0
  174. package/src/components/formsExt/editInput/editInput.ts +20 -0
  175. package/src/components/formsExt/editInput/editInput.vue +54 -0
  176. package/src/components/formsExt/editInput/stories/overview.vue +54 -0
  177. package/src/components/formsExt/formsExt.ts +15 -0
  178. package/src/components/formsExt/info/info.stories.ts +35 -0
  179. package/src/components/formsExt/info/info.vue +84 -0
  180. package/src/components/formsExt/info/stories/overview.vue +29 -0
  181. package/src/components/formsExt/info/types.ts +25 -0
  182. package/src/components/formsExt/menu/menu.stories.ts +59 -0
  183. package/src/components/formsExt/menu/menu.ts +45 -0
  184. package/src/components/formsExt/menu/menu.vue +321 -0
  185. package/src/components/formsExt/menu/stories/items.ts +18 -0
  186. package/src/components/formsExt/menu/stories/overview.vue +52 -0
  187. package/src/components/formsExt/radioGroup/radioGroup.stories.ts +51 -0
  188. package/src/components/formsExt/radioGroup/radioGroup.ts +28 -0
  189. package/src/components/formsExt/radioGroup/radioGroup.vue +146 -0
  190. package/src/components/formsExt/radioGroup/stories/overview.vue +78 -0
  191. package/src/components/formsExt/radioGroup/styles/top-scrollBar.css +52 -0
  192. package/src/components/formsExt/selector2/api.ts +148 -0
  193. package/src/components/formsExt/selector2/itemMulti.vue +57 -0
  194. package/src/components/formsExt/selector2/selector2.stories.ts +48 -0
  195. package/src/components/formsExt/selector2/selector2.ts +145 -0
  196. package/src/components/formsExt/selector2/selector2.vue +389 -0
  197. package/src/components/formsExt/selector2/stories/dummyAPIRequest.ts +58 -0
  198. package/src/components/formsExt/selector2/stories/overview.vue +93 -0
  199. package/src/components/helper.js +10 -0
  200. package/src/components/helpersStories.ts +205 -0
  201. package/src/components/layout/islandRows/islandRows.stories.ts +139 -0
  202. package/src/components/layout/islandRows/islandRows.vue +53 -0
  203. package/src/components/layout/islandRows/islandRowsRow/islandRowsRow.vue +36 -0
  204. package/src/components/layout/islandRows/islandRowsRow/types.ts +1 -0
  205. package/src/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue +16 -0
  206. package/src/components/layout/islandRows/stories/README.md +8 -0
  207. package/src/components/layout/islandRows/types.ts +11 -0
  208. package/src/components/layout/layout.ts +11 -0
  209. package/src/components/layout/rows/rows.stories.ts +48 -0
  210. package/src/components/layout/rows/rows.vue +46 -0
  211. package/src/components/layout/rows/stories/README.md +10 -0
  212. package/src/components/layout/rows/types.ts +6 -0
  213. package/src/components/popup/alert/alert.stories.ts +71 -0
  214. package/src/components/popup/alert/alert.ts +11 -0
  215. package/src/components/popup/alert/alert.vue +46 -0
  216. package/src/components/popup/alert/stories/overview.vue +40 -0
  217. package/src/components/popup/confirm/confirm.stories.ts +75 -0
  218. package/src/components/popup/confirm/confirm.ts +26 -0
  219. package/src/components/popup/confirm/confirm.vue +75 -0
  220. package/src/components/popup/confirm/stories/overview.vue +62 -0
  221. package/src/components/popup/lib/popup.globalEvents.ts +239 -0
  222. package/src/components/popup/lib/popup.ts +790 -0
  223. package/src/components/popup/lib/worker.globalEvents.ts +97 -0
  224. package/src/components/popup/lib/worker.ts +286 -0
  225. package/src/components/popup/popup/listItem.vue +35 -0
  226. package/src/components/popup/popup/opener.vue +81 -0
  227. package/src/components/popup/popup/popup.stories.ts +74 -0
  228. package/src/components/popup/popup/popup.ts +120 -0
  229. package/src/components/popup/popup/popup.vue +168 -0
  230. package/src/components/popup/popup/stories/README.md +55 -0
  231. package/src/components/popup/popup/stories/listItems.vue +44 -0
  232. package/src/components/popup/popup/stories/listSubItems.vue +47 -0
  233. package/src/components/popup/popup/stories/overview.vue +210 -0
  234. package/src/components/popup/popup/style/popup.css +345 -0
  235. package/src/components/popup/popup/style/popup.m.css +72 -0
  236. package/src/components/popup/popup/style/popup.pc.css +26 -0
  237. package/src/components/popup/popup/widgetInput.vue +43 -0
  238. package/src/components/popup/popup.ts +17 -0
  239. package/src/components/popup/prompt/prompt.stories.ts +78 -0
  240. package/src/components/popup/prompt/prompt.ts +26 -0
  241. package/src/components/popup/prompt/prompt.vue +84 -0
  242. package/src/components/popup/prompt/stories/overview.vue +50 -0
  243. package/src/components/popup/worker.ts +1 -0
  244. package/src/components/project/project.ts +23 -0
  245. package/src/components/project/selectorCompetitors/composables.ts +21 -0
  246. package/src/components/project/selectorCompetitors/selectorCompetitors.stories.ts +33 -0
  247. package/src/components/project/selectorCompetitors/selectorCompetitors.ts +27 -0
  248. package/src/components/project/selectorCompetitors/selectorCompetitors.vue +75 -0
  249. package/src/components/project/selectorCompetitors/stories/README.md +20 -0
  250. package/src/components/project/selectorCompetitors/stories/items.ts +30 -0
  251. package/src/components/project/selectorCompetitors/types/competitor.ts +7 -0
  252. package/src/components/project/selectorRegion/composables/compare.ts +87 -0
  253. package/src/components/project/selectorRegion/composables/selectRegion.ts +147 -0
  254. package/src/components/project/selectorRegion/composables/selectSearcher.ts +64 -0
  255. package/src/components/project/selectorRegion/composables/selectorRegion.ts +165 -0
  256. package/src/components/project/selectorRegion/selectorRegion.stories.ts +69 -0
  257. package/src/components/project/selectorRegion/selectorRegion.ts +217 -0
  258. package/src/components/project/selectorRegion/selectorRegion.vue +330 -0
  259. package/src/components/project/selectorRegion/stories/README.md +36 -0
  260. package/src/components/project/selectorRegion/stories/searchers.ts +59 -0
  261. package/src/components/project/selectorRegion/styles/searcherColors.css +41 -0
  262. package/src/components/project/selectorRegion/utils/consts.ts +73 -0
  263. package/src/components/project/selectorRegion/utils/utils.ts +157 -0
  264. package/src/components/project/tagSelector/popupListItem/tagPopupListItem.vue +209 -0
  265. package/src/components/project/tagSelector/popupListItem/types.ts +40 -0
  266. package/src/components/project/tagSelector/popupOpener/popupOpener.vue +145 -0
  267. package/src/components/project/tagSelector/popupOpener/types.ts +71 -0
  268. package/src/components/project/tagSelector/stories/README.md +62 -0
  269. package/src/components/project/tagSelector/stories/overview.vue +152 -0
  270. package/src/components/project/tagSelector/tagIcon/tagIcon.vue +97 -0
  271. package/src/components/project/tagSelector/tagIcon/types.ts +25 -0
  272. package/src/components/project/tagSelector/tagSelector.stories.ts +51 -0
  273. package/src/components/project/tagSelector/tagSelector.vue +359 -0
  274. package/src/components/project/tagSelector/tagsDefaults.ts +54 -0
  275. package/src/components/project/tagSelector/types.ts +159 -0
  276. package/src/components/project/tagSelector/utils/el.ts +151 -0
  277. package/src/components/project/tagSelector/utils/utils.ts +30 -0
  278. package/src/components/tabs/tabs/content.vue +24 -0
  279. package/src/components/tabs/tabs/stories/README.md +12 -0
  280. package/src/components/tabs/tabs/tab.vue +49 -0
  281. package/src/components/tabs/tabs/tabs.stories.ts +171 -0
  282. package/src/components/tabs/tabs/tabs.ts +22 -0
  283. package/src/components/tabs/tabs/tabs.vue +64 -0
  284. package/src/components/tabs/tabs.ts +9 -0
  285. package/src/components/tabsView/tabsView/menu.vue +291 -0
  286. package/src/components/tabsView/tabsView/menuDelimeter.vue +26 -0
  287. package/src/components/tabsView/tabsView/menuItem.vue +125 -0
  288. package/src/components/tabsView/tabsView/menuTitle.vue +46 -0
  289. package/src/components/tabsView/tabsView/store.ts +60 -0
  290. package/src/components/tabsView/tabsView/stories/README.md +22 -0
  291. package/src/components/tabsView/tabsView/tabsView.stories.ts +170 -0
  292. package/src/components/tabsView/tabsView/tabsView.ts +118 -0
  293. package/src/components/tabsView/tabsView/tabsView.vue +120 -0
  294. package/src/components/tabsView/tabsView/utils.ts +27 -0
  295. package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuItem.stories.ts +47 -0
  296. package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuTitle.stories.ts +43 -0
  297. package/src/components/tabsView/tabsView.ts +9 -0
  298. package/src/components/types.ts +3 -0
  299. package/src/core/app.ts +22 -0
  300. package/src/core/core/core.mdx +36 -0
  301. package/src/core/core/core.ts +287 -0
  302. package/src/core/core/events/resize.ts +47 -0
  303. package/src/core/core/events.ts +6 -0
  304. package/src/core/core/jQuery.mdx +41 -0
  305. package/src/core/core/options.ts +51 -0
  306. package/src/core/core/preloaders.ts +31 -0
  307. package/src/core/core/state.ts +61 -0
  308. package/src/core/directives/data.mdx +24 -0
  309. package/src/core/directives/data.ts +25 -0
  310. package/src/core/directives/focus.mdx +28 -0
  311. package/src/core/directives/focus.ts +73 -0
  312. package/src/core/directives/scrollIntoView.mdx +41 -0
  313. package/src/core/directives/scrollIntoView.ts +123 -0
  314. package/src/core/directives/scrollShadow.mdx +23 -0
  315. package/src/core/directives/scrollShadow.ts +27 -0
  316. package/src/core/directives/sticky.mdx +29 -0
  317. package/src/core/directives/sticky.ts +32 -0
  318. package/src/core/directives/swimUp.mdx +27 -0
  319. package/src/core/directives/swimUp.ts +95 -0
  320. package/src/core/directives/tooltip.mdx +13 -0
  321. package/src/core/directives/tooltip.ts +57 -0
  322. package/src/core/icons/gallery.vue +70 -0
  323. package/src/core/icons/icons.mdx +24 -0
  324. package/src/core/icons/icons.stories.ts +14 -0
  325. package/src/core/plugins/core.ts +131 -0
  326. package/src/core/plugins/i18n.ts +184 -0
  327. package/src/core/plugins/piniaTPA.ts +431 -0
  328. package/src/core/plugins/plugins.mdx +82 -0
  329. package/src/core/styles/CSS Variables.stories.ts +17 -0
  330. package/src/core/styles/styles.mdx +26 -0
  331. package/src/core/theme/Variables.stories.ts +16 -0
  332. package/src/core/theme/theme.mdx +117 -0
  333. package/src/core/utils/References/Docs.mdx +23 -0
  334. package/src/core/utils/References/check/Docs.mdx +15 -0
  335. package/src/core/utils/References/check/functions/getDomainRegexp.mdx +15 -0
  336. package/src/core/utils/References/check/functions/isDomain.mdx +21 -0
  337. package/src/core/utils/References/check/functions/isEmail.mdx +22 -0
  338. package/src/core/utils/References/check/functions/isIp.mdx +21 -0
  339. package/src/core/utils/References/check/functions/validUrl.mdx +22 -0
  340. package/src/core/utils/References/clipboard/Docs.mdx +11 -0
  341. package/src/core/utils/References/clipboard/functions/setClipboard.mdx +23 -0
  342. package/src/core/utils/References/date/Docs.mdx +17 -0
  343. package/src/core/utils/References/date/functions/dateFormat.mdx +28 -0
  344. package/src/core/utils/References/date/functions/dateToString.mdx +26 -0
  345. package/src/core/utils/References/date/functions/dateUnformat.mdx +22 -0
  346. package/src/core/utils/References/date/functions/genDate.mdx +26 -0
  347. package/src/core/utils/References/date/functions/genDateMoscow.mdx +22 -0
  348. package/src/core/utils/References/date/functions/getDayOfWeek.mdx +26 -0
  349. package/src/core/utils/References/date/functions/stringToDate.mdx +21 -0
  350. package/src/core/utils/References/device/Docs.mdx +21 -0
  351. package/src/core/utils/References/device/functions/get$scroll.mdx +15 -0
  352. package/src/core/utils/References/device/functions/getCommandKeyLabel.mdx +15 -0
  353. package/src/core/utils/References/device/functions/getElsScroll.mdx +15 -0
  354. package/src/core/utils/References/device/functions/getOS.mdx +17 -0
  355. package/src/core/utils/References/device/functions/getOSAsync.mdx +15 -0
  356. package/src/core/utils/References/device/functions/getScrollTop.mdx +15 -0
  357. package/src/core/utils/References/device/functions/isApp.mdx +15 -0
  358. package/src/core/utils/References/device/functions/isMacOS.mdx +15 -0
  359. package/src/core/utils/References/device/functions/isMobile.mdx +15 -0
  360. package/src/core/utils/References/device/functions/isRetina.mdx +15 -0
  361. package/src/core/utils/References/device/functions/isSafari.mdx +15 -0
  362. package/src/core/utils/References/dom/Docs.mdx +27 -0
  363. package/src/core/utils/References/dom/functions/css.mdx +24 -0
  364. package/src/core/utils/References/dom/functions/genEl.mdx +28 -0
  365. package/src/core/utils/References/dom/functions/isVisible.mdx +23 -0
  366. package/src/core/utils/References/dom/functions/offset.mdx +35 -0
  367. package/src/core/utils/References/dom/functions/querySelectorAllArray.mdx +22 -0
  368. package/src/core/utils/References/dom/functions/querySelectorAllVisible.mdx +22 -0
  369. package/src/core/utils/References/dom/functions/querySelectorVisible.mdx +22 -0
  370. package/src/core/utils/References/dom/functions/querySelectorVisibleLast.mdx +22 -0
  371. package/src/core/utils/References/dom/functions/storage.mdx +28 -0
  372. package/src/core/utils/References/dom/functions/storageClear.mdx +21 -0
  373. package/src/core/utils/References/dom/functions/wrap.mdx +22 -0
  374. package/src/core/utils/References/dom/variables/default.mdx +241 -0
  375. package/src/core/utils/References/image/Docs.mdx +12 -0
  376. package/src/core/utils/References/image/functions/downloadImageFromString.mdx +22 -0
  377. package/src/core/utils/References/image/functions/genFaviconImgHtml.mdx +22 -0
  378. package/src/core/utils/References/keyboard/Docs.mdx +11 -0
  379. package/src/core/utils/References/keyboard/functions/invertKeyboardLayout.mdx +21 -0
  380. package/src/core/utils/References/lodash/Docs.mdx +20 -0
  381. package/src/core/utils/References/lodash/functions/cloneDeep.mdx +29 -0
  382. package/src/core/utils/References/lodash/functions/debounce.mdx +76 -0
  383. package/src/core/utils/References/lodash/functions/memoize.mdx +26 -0
  384. package/src/core/utils/References/lodash/functions/merge.mdx +200 -0
  385. package/src/core/utils/References/lodash/functions/throttle.mdx +73 -0
  386. package/src/core/utils/References/number/Docs.mdx +11 -0
  387. package/src/core/utils/References/number/functions/percentOfNumber.mdx +26 -0
  388. package/src/core/utils/References/price/Docs.mdx +11 -0
  389. package/src/core/utils/References/price/functions/genPrice.mdx +28 -0
  390. package/src/core/utils/References/route/Docs.mdx +16 -0
  391. package/src/core/utils/References/route/functions/delHash.mdx +26 -0
  392. package/src/core/utils/References/route/functions/genHash.mdx +26 -0
  393. package/src/core/utils/References/route/functions/getHash.mdx +22 -0
  394. package/src/core/utils/References/route/functions/historySetState.mdx +31 -0
  395. package/src/core/utils/References/route/functions/setHash.mdx +26 -0
  396. package/src/core/utils/References/route/functions/setHashs.mdx +22 -0
  397. package/src/core/utils/References/scroll/Docs.mdx +14 -0
  398. package/src/core/utils/References/scroll/functions/amountScrolled.mdx +17 -0
  399. package/src/core/utils/References/scroll/functions/connectScrollShadow.mdx +28 -0
  400. package/src/core/utils/References/scroll/functions/genHasScroll.mdx +25 -0
  401. package/src/core/utils/References/scroll/functions/getScrollPercent.mdx +21 -0
  402. package/src/core/utils/References/searchers/Docs.mdx +19 -0
  403. package/src/core/utils/References/searchers/functions/genVolumeLabel.mdx +26 -0
  404. package/src/core/utils/References/searchers/functions/getDeviceGIcon.mdx +21 -0
  405. package/src/core/utils/References/searchers/functions/getLangLabel.mdx +22 -0
  406. package/src/core/utils/References/searchers/functions/getSearcherGIcon.mdx +21 -0
  407. package/src/core/utils/References/searchers/functions/prepareVolumeType.mdx +22 -0
  408. package/src/core/utils/References/searchers/variables/searchersNames.mdx +97 -0
  409. package/src/core/utils/References/store/Docs.mdx +18 -0
  410. package/src/core/utils/References/store/functions/defineStore.mdx +36 -0
  411. package/src/core/utils/References/store/functions/useStore.mdx +29 -0
  412. package/src/core/utils/References/store/variables/plugin.mdx +66 -0
  413. package/src/core/utils/References/string/Docs.mdx +26 -0
  414. package/src/core/utils/References/string/functions/addCommasWhite.mdx +21 -0
  415. package/src/core/utils/References/string/functions/addLinkTags.mdx +23 -0
  416. package/src/core/utils/References/string/functions/camelToSnakeCase.mdx +21 -0
  417. package/src/core/utils/References/string/functions/ellipsis.mdx +26 -0
  418. package/src/core/utils/References/string/functions/genFlagLinkByCountryCode.mdx +21 -0
  419. package/src/core/utils/References/string/functions/genIntHash.mdx +21 -0
  420. package/src/core/utils/References/string/functions/getRandomHash.mdx +21 -0
  421. package/src/core/utils/References/string/functions/highlightHtml.mdx +25 -0
  422. package/src/core/utils/References/string/functions/htmlspecialchars.mdx +21 -0
  423. package/src/core/utils/References/string/functions/isUrl.mdx +21 -0
  424. package/src/core/utils/References/string/functions/nl2br.mdx +21 -0
  425. package/src/core/utils/References/string/functions/numberEnding.mdx +28 -0
  426. package/src/core/utils/References/string/functions/numberWithWord.mdx +28 -0
  427. package/src/core/utils/References/string/functions/rusToLatin.mdx +21 -0
  428. package/src/core/utils/References/string/functions/toCapitalize.mdx +21 -0
  429. package/src/core/utils/References/string/functions/toRoditPadej.mdx +21 -0
  430. package/src/core/utils/References/system/Docs.mdx +13 -0
  431. package/src/core/utils/References/system/functions/sleep.mdx +21 -0
  432. package/src/core/utils/References/system/functions/sleepWhile.mdx +26 -0
  433. package/src/core/utils/References/system/functions/waitWhile.mdx +26 -0
  434. package/src/core/utils/References/url/Docs.mdx +17 -0
  435. package/src/core/utils/References/url/functions/decode.mdx +21 -0
  436. package/src/core/utils/References/url/functions/encode.mdx +21 -0
  437. package/src/core/utils/References/url/functions/fromPuny.mdx +23 -0
  438. package/src/core/utils/References/url/functions/getHost.mdx +21 -0
  439. package/src/core/utils/References/url/functions/hostToLowerCase.mdx +21 -0
  440. package/src/core/utils/References/url/functions/normalize.mdx +21 -0
  441. package/src/core/utils/References/url/functions/toPuny.mdx +23 -0
  442. package/src/core/utils/check.ts +88 -0
  443. package/src/core/utils/clipboard.ts +51 -0
  444. package/src/core/utils/date.ts +291 -0
  445. package/src/core/utils/device.ts +139 -0
  446. package/src/core/utils/dom.ts +182 -0
  447. package/src/core/utils/image.ts +46 -0
  448. package/src/core/utils/keyboard.ts +29 -0
  449. package/src/core/utils/lodash.ts +18 -0
  450. package/src/core/utils/number.ts +37 -0
  451. package/src/core/utils/price.ts +24 -0
  452. package/src/core/utils/route.ts +115 -0
  453. package/src/core/utils/scroll.ts +120 -0
  454. package/src/core/utils/searchers.ts +189 -0
  455. package/src/core/utils/store/localStorage.ts +56 -0
  456. package/src/core/utils/store/plugin.ts +50 -0
  457. package/src/core/utils/store/store.ts +77 -0
  458. package/src/core/utils/store.ts +7 -0
  459. package/src/core/utils/string.ts +315 -0
  460. package/src/core/utils/system.ts +72 -0
  461. package/src/core/utils/url.ts +138 -0
  462. package/src/core/utils/utils.mdx +6 -0
  463. package/src/d.ts +12 -0
  464. package/src/icomoon.d.ts +98 -0
  465. package/src/resources/styles/core/components.css +102 -0
  466. package/src/resources/styles/core/core.ts +11 -0
  467. package/src/resources/styles/core/forms/clear.css +20 -0
  468. package/src/resources/styles/core/forms/controls.css +20 -0
  469. package/src/resources/styles/core/forms/focusable.css +26 -0
  470. package/src/resources/styles/core/forms/forms.css +117 -0
  471. package/src/resources/styles/core/icon.css +58 -0
  472. package/src/resources/styles/core/jquery.css +1 -0
  473. package/src/resources/styles/core/layout.css +59 -0
  474. package/src/resources/styles/core/modifiers/as.css +9 -0
  475. package/src/resources/styles/core/modifiers/ellipsis.css +26 -0
  476. package/src/resources/styles/core/modifiers/modifiers.css +120 -0
  477. package/src/resources/styles/core/modifiers/only.css +19 -0
  478. package/src/resources/styles/core/modifiers/scrollShadow.css +50 -0
  479. package/src/resources/styles/core/select.css +15 -0
  480. package/src/resources/styles/storybook.css +11 -0
  481. package/src/resources/styles/themes/dark/dark-layout.css +47 -0
  482. package/src/resources/styles/themes/dark/dark-positions.css +66 -0
  483. package/src/resources/styles/themes/dark/dark.css +400 -0
  484. package/src/resources/styles/themes/dark-positions.ts +1 -0
  485. package/src/resources/styles/themes/dark-th/dark-th-layout.css +47 -0
  486. package/src/resources/styles/themes/dark-th/dark-th-positions.css +67 -0
  487. package/src/resources/styles/themes/dark-th/dark-th.css +400 -0
  488. package/src/resources/styles/themes/dark-th-positions.ts +1 -0
  489. package/src/resources/styles/themes/dark-th.ts +3 -0
  490. package/src/resources/styles/themes/dark.ts +3 -0
  491. package/src/resources/styles/themes/light/light-layout.css +47 -0
  492. package/src/resources/styles/themes/light/light-positions.css +66 -0
  493. package/src/resources/styles/themes/light/light.css +400 -0
  494. package/src/resources/styles/themes/light-positions.ts +1 -0
  495. package/src/resources/styles/themes/light.ts +3 -0
  496. package/src/storybook/components/color.vue +47 -0
  497. package/src/storybook/components/cssVariables.vue +195 -0
  498. package/src/storybook/components/icomoon.ts +40 -0
  499. package/src/storybook/jquery.ts +4 -0
  500. 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
  501. 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" +12 -0
  502. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CHANGELOG.md.mdx" +4 -0
  503. 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
  504. 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
  505. 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
  506. 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
  507. 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
  508. 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
  509. 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
  510. 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
  511. 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
  512. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/STORYBOOK.md.mdx" +4 -0
  513. package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/USE_IN_PROJECT.md.mdx" +3 -0
  514. 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
  515. 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
  516. 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
  517. 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" +31 -0
  518. 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
  519. 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" +41 -0
  520. 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
  521. 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
  522. 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
  523. package/tsconfig.json +91 -0
  524. package/typedoc.json +20 -0
  525. package/vite.config.ts +148 -0
  526. package/web-types.json +130 -130
  527. package/.chunks/datepicker-B8O5mg_G.es.js +0 -44
  528. package/.chunks/datepicker-B8O5mg_G.es.js.map +0 -1
  529. package/.chunks/datepicker-CFiizYlZ.amd.js +0 -2
  530. package/.chunks/datepicker-CFiizYlZ.amd.js.map +0 -1
  531. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-B55gllXV.amd.js +0 -2
  532. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-B55gllXV.amd.js.map +0 -1
  533. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BkBYW0yR.es.js +0 -266
  534. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BkBYW0yR.es.js.map +0 -1
  535. package/.chunks/forms-BWc2kMFD.amd.js +0 -3
  536. package/.chunks/forms-BWc2kMFD.amd.js.map +0 -1
  537. package/.chunks/forms-DW_XLzg8.es.js +0 -2018
  538. package/.chunks/forms-DW_XLzg8.es.js.map +0 -1
  539. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-naMiJruI.amd.js +0 -2
  540. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-naMiJruI.amd.js.map +0 -1
  541. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-saYIC17M.es.js +0 -181
  542. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-saYIC17M.es.js.map +0 -1
  543. package/.chunks/menu.vue_vue_type_style_index_0_lang-06YUloqb.amd.js +0 -2
  544. package/.chunks/menu.vue_vue_type_style_index_0_lang-06YUloqb.amd.js.map +0 -1
  545. package/.chunks/menu.vue_vue_type_style_index_0_lang-CcspstQc.es.js +0 -109
  546. package/.chunks/menu.vue_vue_type_style_index_0_lang-CcspstQc.es.js.map +0 -1
  547. package/.chunks/notice-BQyuy4nF.es.js +0 -175
  548. package/.chunks/notice-BQyuy4nF.es.js.map +0 -1
  549. package/.chunks/notice-zADfJ5TR.amd.js +0 -4
  550. package/.chunks/notice-zADfJ5TR.amd.js.map +0 -1
  551. package/.chunks/popup-CPS-7fSX.amd.js +0 -2
  552. package/.chunks/popup-CPS-7fSX.amd.js.map +0 -1
  553. package/.chunks/popup-DsVptZvL.es.js +0 -415
  554. package/.chunks/popup-DsVptZvL.es.js.map +0 -1
  555. package/.chunks/punycode.es6-C2yitnNb.amd.js +0 -2
  556. package/.chunks/punycode.es6-C2yitnNb.amd.js.map +0 -1
  557. package/.chunks/punycode.es6-CNI-zL6U.es.js +0 -134
  558. package/.chunks/punycode.es6-CNI-zL6U.es.js.map +0 -1
  559. package/.chunks/store-CX_6ZXhO.es.js +0 -29
  560. package/.chunks/store-CX_6ZXhO.es.js.map +0 -1
  561. package/.chunks/store-esTid5oI.amd.js +0 -2
  562. package/.chunks/store-esTid5oI.amd.js.map +0 -1
  563. package/.chunks/utils-B75aamxF.amd.js +0 -2
  564. package/.chunks/utils-B75aamxF.amd.js.map +0 -1
  565. package/.chunks/utils-DIP-BdDy.es.js +0 -225
  566. package/.chunks/utils-DIP-BdDy.es.js.map +0 -1
  567. package/.chunks/utils-DfYj3r9i.amd.js +0 -2
  568. package/.chunks/utils-DfYj3r9i.amd.js.map +0 -1
  569. package/.chunks/utils-h5v4GPgp.es.js +0 -79
  570. package/.chunks/utils-h5v4GPgp.es.js.map +0 -1
  571. package/assets/charts.css +0 -1
  572. package/assets/core.css +0 -1
  573. package/assets/forms.css +0 -1
  574. package/assets/formsExt.css +0 -1
  575. package/assets/layout.css +0 -1
  576. package/assets/listItem.css +0 -1
  577. package/assets/menu.css +0 -1
  578. package/assets/notice.css +0 -1
  579. package/assets/popup.css +0 -1
  580. package/assets/project.css +0 -1
  581. package/assets/tabs.css +0 -1
  582. package/assets/tabsView.css +0 -1
  583. package/assets/themes/dark-th.css +0 -1
  584. package/assets/themes/dark.css +0 -1
  585. package/assets/themes/light.css +0 -1
  586. package/charts/charts.amd.js +0 -2
  587. package/charts/charts.amd.js.map +0 -1
  588. package/charts/charts.d.ts +0 -2
  589. package/charts/charts.js +0 -178
  590. package/charts/charts.js.map +0 -1
  591. package/components/charts/charts.d.ts +0 -5
  592. package/components/charts/miniChart/miniChart.d.ts +0 -92
  593. package/components/charts/miniChart/miniChart.vue.d.ts +0 -15
  594. package/components/charts/miniChart/stories/dummy.d.ts +0 -13
  595. package/components/charts/miniChart/utils/consts.d.ts +0 -8
  596. package/components/charts/miniCharts/miniCharts.d.ts +0 -20
  597. package/components/charts/miniCharts/miniCharts.vue.d.ts +0 -32
  598. package/components/charts/miniCharts/stories/dummy.d.ts +0 -6
  599. package/components/core/notice/item/item.vue.d.ts +0 -10
  600. package/components/core/notice/item/types.d.ts +0 -61
  601. package/components/core/notice/notice.vue.d.ts +0 -5
  602. package/components/core/notice/types.d.ts +0 -1
  603. package/components/core/notice/utils.d.ts +0 -27
  604. package/components/dialog/dialog/composables/asyncDialogHandle.d.ts +0 -51
  605. package/components/dialog/dialog/composables/dialogHandle.d.ts +0 -108
  606. package/components/dialog/dialog/composables/types.d.ts +0 -11
  607. package/components/dialog/dialog/composables/utils.d.ts +0 -21
  608. package/components/dialog/dialog/dialog.vue.d.ts +0 -28
  609. package/components/dialog/dialog/dialogs/dialogs.vue.d.ts +0 -10
  610. package/components/dialog/dialog/page/page.vue.d.ts +0 -19
  611. package/components/dialog/dialog/page/types.d.ts +0 -72
  612. package/components/dialog/dialog/pageComponent/pageComponent.vue.d.ts +0 -6
  613. package/components/dialog/dialog/pageComponent/types.d.ts +0 -18
  614. package/components/dialog/dialog/stories/autoload.d.ts +0 -2
  615. package/components/dialog/dialog/stories/dialog_example/pages/utils.d.ts +0 -7
  616. package/components/dialog/dialog/types.d.ts +0 -58
  617. package/components/dialog/dialog.d.ts +0 -6
  618. package/components/dialog/lib/types.d.ts +0 -21
  619. package/components/dialog/lib/utils.d.ts +0 -14
  620. package/components/dialog/lib/utils.globalEvents.d.ts +0 -8
  621. package/components/dialog/lib/worker.d.ts +0 -60
  622. package/components/forms/avatar/avatar.d.ts +0 -38
  623. package/components/forms/avatar/avatar.vue.d.ts +0 -10
  624. package/components/forms/button/button.vue.d.ts +0 -25
  625. package/components/forms/button/types.d.ts +0 -53
  626. package/components/forms/checkbox/checkbox.d.ts +0 -19
  627. package/components/forms/checkbox/checkbox.vue.d.ts +0 -27
  628. package/components/forms/controlLabel/controlLabel.d.ts +0 -4
  629. package/components/forms/controlLabel/controlLabel.vue.d.ts +0 -19
  630. package/components/forms/forms.d.ts +0 -27
  631. package/components/forms/helpers.d.ts +0 -10
  632. package/components/forms/hint/hint.d.ts +0 -8
  633. package/components/forms/hint/hint.vue.d.ts +0 -4
  634. package/components/forms/input/input.d.ts +0 -26
  635. package/components/forms/input/input.vue.d.ts +0 -27
  636. package/components/forms/inputDate/datepicker.d.ts +0 -5
  637. package/components/forms/inputDate/inputDate.d.ts +0 -3
  638. package/components/forms/inputDate/inputDate.vue.d.ts +0 -12
  639. package/components/forms/inputRange/inputRange.d.ts +0 -2
  640. package/components/forms/inputRange/inputRange.vue.d.ts +0 -19
  641. package/components/forms/loadbar/loadbar.vue.d.ts +0 -3
  642. package/components/forms/radio/radio.d.ts +0 -14
  643. package/components/forms/radio/radio.vue.d.ts +0 -23
  644. package/components/forms/select/select.d.ts +0 -51
  645. package/components/forms/select/select.vue.d.ts +0 -17
  646. package/components/forms/select/stories/exampleOptions.d.ts +0 -5
  647. package/components/forms/switcher/switcher.d.ts +0 -21
  648. package/components/forms/switcher/switcher.vue.d.ts +0 -23
  649. package/components/forms/textarea/textarea.d.ts +0 -33
  650. package/components/forms/textarea/textarea.vue.d.ts +0 -11
  651. package/components/formsExt/editArea/editArea.d.ts +0 -33
  652. package/components/formsExt/editArea/editArea.vue.d.ts +0 -18
  653. package/components/formsExt/editInput/editInput.d.ts +0 -16
  654. package/components/formsExt/editInput/editInput.vue.d.ts +0 -8
  655. package/components/formsExt/formsExt.d.ts +0 -13
  656. package/components/formsExt/info/info.vue.d.ts +0 -20
  657. package/components/formsExt/info/types.d.ts +0 -21
  658. package/components/formsExt/menu/menu.d.ts +0 -37
  659. package/components/formsExt/menu/menu.vue.d.ts +0 -16
  660. package/components/formsExt/menu/stories/items.d.ts +0 -3
  661. package/components/formsExt/radioGroup/radioGroup.d.ts +0 -21
  662. package/components/formsExt/radioGroup/radioGroup.vue.d.ts +0 -19
  663. package/components/formsExt/selector2/api.d.ts +0 -8
  664. package/components/formsExt/selector2/itemMulti.vue.d.ts +0 -8
  665. package/components/formsExt/selector2/selector2.d.ts +0 -130
  666. package/components/formsExt/selector2/selector2.vue.d.ts +0 -210
  667. package/components/formsExt/selector2/stories/dummyAPIRequest.d.ts +0 -10
  668. package/components/layout/islandRows/islandRows.vue.d.ts +0 -17
  669. package/components/layout/islandRows/islandRowsRow/islandRowsRow.vue.d.ts +0 -18
  670. package/components/layout/islandRows/islandRowsRow/types.d.ts +0 -2
  671. package/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue.d.ts +0 -18
  672. package/components/layout/islandRows/types.d.ts +0 -10
  673. package/components/layout/layout.d.ts +0 -9
  674. package/components/layout/rows/rows.vue.d.ts +0 -21
  675. package/components/layout/rows/types.d.ts +0 -6
  676. package/components/popup/alert/alert.d.ts +0 -8
  677. package/components/popup/alert/alert.vue.d.ts +0 -31
  678. package/components/popup/confirm/confirm.d.ts +0 -21
  679. package/components/popup/confirm/confirm.vue.d.ts +0 -33
  680. package/components/popup/lib/popup.d.ts +0 -83
  681. package/components/popup/lib/popup.globalEvents.d.ts +0 -26
  682. package/components/popup/lib/worker.d.ts +0 -75
  683. package/components/popup/lib/worker.globalEvents.d.ts +0 -19
  684. package/components/popup/popup/listItem.vue.d.ts +0 -22
  685. package/components/popup/popup/opener.vue.d.ts +0 -23
  686. package/components/popup/popup/popup.d.ts +0 -101
  687. package/components/popup/popup/popup.vue.d.ts +0 -40
  688. package/components/popup/popup/widgetInput.vue.d.ts +0 -17
  689. package/components/popup/popup.d.ts +0 -15
  690. package/components/popup/prompt/prompt.d.ts +0 -21
  691. package/components/popup/prompt/prompt.vue.d.ts +0 -33
  692. package/components/popup/worker.d.ts +0 -1
  693. package/components/project/project.d.ts +0 -15
  694. package/components/project/selectorCompetitors/composables.d.ts +0 -4
  695. package/components/project/selectorCompetitors/selectorCompetitors.d.ts +0 -23
  696. package/components/project/selectorCompetitors/selectorCompetitors.vue.d.ts +0 -14
  697. package/components/project/selectorCompetitors/stories/items.d.ts +0 -3
  698. package/components/project/selectorCompetitors/types/competitor.d.ts +0 -7
  699. package/components/project/selectorRegion/composables/compare.d.ts +0 -12
  700. package/components/project/selectorRegion/composables/selectRegion.d.ts +0 -14
  701. package/components/project/selectorRegion/composables/selectSearcher.d.ts +0 -13
  702. package/components/project/selectorRegion/composables/selectorRegion.d.ts +0 -25
  703. package/components/project/selectorRegion/selectorRegion.d.ts +0 -182
  704. package/components/project/selectorRegion/selectorRegion.vue.d.ts +0 -25
  705. package/components/project/selectorRegion/stories/searchers.d.ts +0 -3
  706. package/components/project/selectorRegion/utils/consts.d.ts +0 -18
  707. package/components/project/selectorRegion/utils/utils.d.ts +0 -23
  708. package/components/project/tagSelector/popupListItem/tagPopupListItem.vue.d.ts +0 -20
  709. package/components/project/tagSelector/popupListItem/types.d.ts +0 -33
  710. package/components/project/tagSelector/popupOpener/popupOpener.vue.d.ts +0 -27
  711. package/components/project/tagSelector/popupOpener/types.d.ts +0 -62
  712. package/components/project/tagSelector/tagIcon/tagIcon.vue.d.ts +0 -4
  713. package/components/project/tagSelector/tagIcon/types.d.ts +0 -21
  714. package/components/project/tagSelector/tagSelector.vue.d.ts +0 -37
  715. package/components/project/tagSelector/tagsDefaults.d.ts +0 -3
  716. package/components/project/tagSelector/types.d.ts +0 -138
  717. package/components/project/tagSelector/utils/el.d.ts +0 -19
  718. package/components/project/tagSelector/utils/utils.d.ts +0 -14
  719. package/components/tabs/tabs/content.vue.d.ts +0 -19
  720. package/components/tabs/tabs/tab.vue.d.ts +0 -19
  721. package/components/tabs/tabs/tabs.d.ts +0 -19
  722. package/components/tabs/tabs/tabs.vue.d.ts +0 -21
  723. package/components/tabs/tabs.d.ts +0 -7
  724. package/components/tabsView/tabsView/menu.vue.d.ts +0 -32
  725. package/components/tabsView/tabsView/menuDelimeter.vue.d.ts +0 -3
  726. package/components/tabsView/tabsView/menuItem.vue.d.ts +0 -23
  727. package/components/tabsView/tabsView/menuTitle.vue.d.ts +0 -20
  728. package/components/tabsView/tabsView/store.d.ts +0 -192
  729. package/components/tabsView/tabsView/tabsView.d.ts +0 -98
  730. package/components/tabsView/tabsView/tabsView.vue.d.ts +0 -34
  731. package/components/tabsView/tabsView/utils.d.ts +0 -11
  732. package/components/tabsView/tabsView.d.ts +0 -7
  733. package/core/app.amd.js +0 -2
  734. package/core/app.amd.js.map +0 -1
  735. package/core/app.d.ts +0 -8
  736. package/core/app.js +0 -402
  737. package/core/app.js.map +0 -1
  738. package/core/core/core.d.ts +0 -113
  739. package/core/core/events/resize.d.ts +0 -16
  740. package/core/core/events.d.ts +0 -15
  741. package/core/core/options.d.ts +0 -46
  742. package/core/core/preloaders.d.ts +0 -19
  743. package/core/core/state.d.ts +0 -49
  744. package/core/directives/data.d.ts +0 -10
  745. package/core/directives/focus.d.ts +0 -10
  746. package/core/directives/scrollIntoView.d.ts +0 -3
  747. package/core/directives/scrollShadow.d.ts +0 -15
  748. package/core/directives/sticky.d.ts +0 -10
  749. package/core/directives/swimUp.d.ts +0 -15
  750. package/core/directives/tooltip.d.ts +0 -10
  751. package/core/plugins/core.d.ts +0 -60
  752. package/core/plugins/i18n.d.ts +0 -107
  753. package/core/plugins/piniaTPA.d.ts +0 -17
  754. package/core/utils/check.d.ts +0 -26
  755. package/core/utils/clipboard.d.ts +0 -12
  756. package/core/utils/date.d.ts +0 -52
  757. package/core/utils/device.d.ts +0 -50
  758. package/core/utils/dom.d.ts +0 -94
  759. package/core/utils/image.d.ts +0 -16
  760. package/core/utils/keyboard.d.ts +0 -8
  761. package/core/utils/lodash.d.ts +0 -6
  762. package/core/utils/number.d.ts +0 -17
  763. package/core/utils/price.d.ts +0 -10
  764. package/core/utils/route.d.ts +0 -33
  765. package/core/utils/scroll.d.ts +0 -32
  766. package/core/utils/searchers.d.ts +0 -38
  767. package/core/utils/store/localStorage.d.ts +0 -6
  768. package/core/utils/store/plugin.d.ts +0 -24
  769. package/core/utils/store/store.d.ts +0 -34
  770. package/core/utils/store.d.ts +0 -6
  771. package/core/utils/string.d.ts +0 -86
  772. package/core/utils/system.d.ts +0 -25
  773. package/core/utils/url.d.ts +0 -36
  774. package/dialog/dialog.amd.js +0 -2
  775. package/dialog/dialog.amd.js.map +0 -1
  776. package/dialog/dialog.d.ts +0 -2
  777. package/dialog/dialog.js +0 -194
  778. package/dialog/dialog.js.map +0 -1
  779. package/forms/forms.amd.js +0 -2
  780. package/forms/forms.amd.js.map +0 -1
  781. package/forms/forms.d.ts +0 -2
  782. package/forms/forms.js +0 -17
  783. package/forms/forms.js.map +0 -1
  784. package/forms/helpers.amd.js +0 -2
  785. package/forms/helpers.amd.js.map +0 -1
  786. package/forms/helpers.d.ts +0 -2
  787. package/forms/helpers.js +0 -10
  788. package/forms/helpers.js.map +0 -1
  789. package/formsExt/formsExt.amd.js +0 -2
  790. package/formsExt/formsExt.amd.js.map +0 -1
  791. package/formsExt/formsExt.d.ts +0 -2
  792. package/formsExt/formsExt.js +0 -483
  793. package/formsExt/formsExt.js.map +0 -1
  794. package/icomoon/Read Me.txt +0 -7
  795. package/icomoon/Topvisor icons.json +0 -6145
  796. package/icomoon/demo-files/demo.css +0 -158
  797. package/icomoon/demo-files/demo.js +0 -30
  798. package/icomoon/demo.html +0 -3488
  799. package/icomoon/fonts/Topvisor-2.eot +0 -0
  800. package/icomoon/fonts/Topvisor-2.svg +0 -272
  801. package/icomoon/fonts/Topvisor-2.ttf +0 -0
  802. package/icomoon/fonts/Topvisor-2.woff +0 -0
  803. package/icomoon/selection.json +0 -1
  804. package/icomoon/style.css +0 -765
  805. package/jquery-ui.min.css +0 -6
  806. package/layout/layout.amd.js +0 -2
  807. package/layout/layout.amd.js.map +0 -1
  808. package/layout/layout.d.ts +0 -2
  809. package/layout/layout.js +0 -62
  810. package/layout/layout.js.map +0 -1
  811. package/popup/popup.amd.js +0 -2
  812. package/popup/popup.amd.js.map +0 -1
  813. package/popup/popup.d.ts +0 -2
  814. package/popup/popup.js +0 -243
  815. package/popup/popup.js.map +0 -1
  816. package/popup/worker.amd.js +0 -2
  817. package/popup/worker.amd.js.map +0 -1
  818. package/popup/worker.d.ts +0 -2
  819. package/popup/worker.js +0 -129
  820. package/popup/worker.js.map +0 -1
  821. package/project/project.amd.js +0 -2
  822. package/project/project.amd.js.map +0 -1
  823. package/project/project.d.ts +0 -2
  824. package/project/project.js +0 -975
  825. package/project/project.js.map +0 -1
  826. package/require/css.amd.js +0 -12
  827. package/tabs/tabs.amd.js +0 -2
  828. package/tabs/tabs.amd.js.map +0 -1
  829. package/tabs/tabs.d.ts +0 -2
  830. package/tabs/tabs.js +0 -81
  831. package/tabs/tabs.js.map +0 -1
  832. package/tabsView/tabsView.amd.js +0 -2
  833. package/tabsView/tabsView.amd.js.map +0 -1
  834. package/tabsView/tabsView.d.ts +0 -2
  835. package/tabsView/tabsView.js +0 -306
  836. package/tabsView/tabsView.js.map +0 -1
  837. package/utils/check.amd.js +0 -2
  838. package/utils/check.amd.js.map +0 -1
  839. package/utils/check.d.ts +0 -2
  840. package/utils/check.js +0 -26
  841. package/utils/check.js.map +0 -1
  842. package/utils/clipboard.amd.js +0 -6
  843. package/utils/clipboard.amd.js.map +0 -1
  844. package/utils/clipboard.d.ts +0 -2
  845. package/utils/clipboard.js +0 -33
  846. package/utils/clipboard.js.map +0 -1
  847. package/utils/date.amd.js +0 -2
  848. package/utils/date.amd.js.map +0 -1
  849. package/utils/date.d.ts +0 -2
  850. package/utils/date.js +0 -11
  851. package/utils/date.js.map +0 -1
  852. package/utils/device.amd.js +0 -2
  853. package/utils/device.amd.js.map +0 -1
  854. package/utils/device.d.ts +0 -2
  855. package/utils/device.js +0 -15
  856. package/utils/device.js.map +0 -1
  857. package/utils/dom.amd.js +0 -2
  858. package/utils/dom.amd.js.map +0 -1
  859. package/utils/dom.d.ts +0 -6
  860. package/utils/dom.js +0 -75
  861. package/utils/dom.js.map +0 -1
  862. package/utils/image.amd.js +0 -12
  863. package/utils/image.amd.js.map +0 -1
  864. package/utils/image.d.ts +0 -2
  865. package/utils/image.js +0 -23
  866. package/utils/image.js.map +0 -1
  867. package/utils/keyboard.amd.js +0 -2
  868. package/utils/keyboard.amd.js.map +0 -1
  869. package/utils/keyboard.d.ts +0 -2
  870. package/utils/keyboard.js +0 -12
  871. package/utils/keyboard.js.map +0 -1
  872. package/utils/lodash.amd.js +0 -2
  873. package/utils/lodash.amd.js.map +0 -1
  874. package/utils/lodash.d.ts +0 -2
  875. package/utils/lodash.js +0 -9
  876. package/utils/lodash.js.map +0 -1
  877. package/utils/number.amd.js +0 -2
  878. package/utils/number.amd.js.map +0 -1
  879. package/utils/number.d.ts +0 -2
  880. package/utils/number.js +0 -13
  881. package/utils/number.js.map +0 -1
  882. package/utils/price.amd.js +0 -2
  883. package/utils/price.amd.js.map +0 -1
  884. package/utils/price.d.ts +0 -2
  885. package/utils/price.js +0 -10
  886. package/utils/price.js.map +0 -1
  887. package/utils/route.amd.js +0 -2
  888. package/utils/route.amd.js.map +0 -1
  889. package/utils/route.d.ts +0 -2
  890. package/utils/route.js +0 -31
  891. package/utils/route.js.map +0 -1
  892. package/utils/scroll.amd.js +0 -2
  893. package/utils/scroll.amd.js.map +0 -1
  894. package/utils/scroll.d.ts +0 -2
  895. package/utils/scroll.js +0 -45
  896. package/utils/scroll.js.map +0 -1
  897. package/utils/searchers.amd.js +0 -2
  898. package/utils/searchers.amd.js.map +0 -1
  899. package/utils/searchers.d.ts +0 -2
  900. package/utils/searchers.js +0 -128
  901. package/utils/searchers.js.map +0 -1
  902. package/utils/store.amd.js +0 -2
  903. package/utils/store.amd.js.map +0 -1
  904. package/utils/store.d.ts +0 -2
  905. package/utils/store.js +0 -7
  906. package/utils/store.js.map +0 -1
  907. package/utils/string.amd.js +0 -2
  908. package/utils/string.amd.js.map +0 -1
  909. package/utils/string.d.ts +0 -2
  910. package/utils/string.js +0 -139
  911. package/utils/string.js.map +0 -1
  912. package/utils/system.amd.js +0 -2
  913. package/utils/system.amd.js.map +0 -1
  914. package/utils/system.d.ts +0 -2
  915. package/utils/system.js +0 -29
  916. package/utils/system.js.map +0 -1
  917. package/utils/url.amd.js +0 -3
  918. package/utils/url.amd.js.map +0 -1
  919. package/utils/url.d.ts +0 -2
  920. package/utils/url.js +0 -48
  921. package/utils/url.js.map +0 -1
@@ -1,2 +0,0 @@
1
- define(["require","exports","vue","../.chunks/dialogs.vue_vue_type_script_setup_true_lang-B55gllXV.amd","../.chunks/forms-BWc2kMFD.amd","../.chunks/utils-DfYj3r9i.amd"],function(b,r,e,d,p,s){"use strict";if(typeof e>"u")var e=window.Vue;const u=["id","data-view-page-active","data-modal","data-position"],c=e.defineComponent({__name:"dialog",props:{id:{},pageActive:{},width:{default:"600px"},height:{default:"auto"},modal:{type:Boolean,default:!0},position:{},historyType:{default:"push"},classes:{}},emits:["open","close"],setup(i){const l=i,a=d.getDialogWorker(l.id);if(!a)throw new Error("TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()");return e.provide("dialogWorker",a),e.onMounted(()=>{var n;const t=e.getCurrentInstance(),o=t.parent;if(((n=o==null?void 0:o.parent)==null?void 0:n.type.name)!=="DialogWrapper")throw new Error("TopDialog cannot be used in a template, use useTopDialog()");if(Array.isArray(o.subTree.children)&&o.subTree.children.length!==1)throw new Error("TopDialog can has only one root element");a.onMounted(o,t)}),e.watch(a.isOpened,()=>{a.isReady.value=!0},{flush:"post",once:!0}),(t,o)=>(e.openBlock(),e.createElementBlock("div",{id:e.unref(a).idAttr,class:e.normalizeClass(["top-dialog",t.classes]),style:e.normalizeStyle({"--top-dialog-width":t.width,"--top-dialog-height":t.height}),tabindex:"-1","data-view-page-active":e.unref(a).pageActive.value,"data-modal":t.modal,"data-position":t.position},[o[0]||(o[0]=e.createElementVNode("div",{class:"modal-layer modal-layer-header"},null,-1)),e.createElementVNode("div",{class:"modal-layer modal-layer-body",style:e.normalizeStyle({"min-height":t.height+"px"})},null,4),e.renderSlot(t.$slots,"default")],14,u))}}),m={key:0,style:{display:"none"}},g=["data-order","data-view-page"],v={class:"modal-header"},f={class:"top-title"},h={class:"buttons"},y=["title"],k=["title"],B=["data-order","data-view-page"],w={class:"modal-body"},C=e.defineComponent({__name:"page",props:{isLoading:{type:Boolean},name:{},order:{default:0},prevName:{},footerFullWith:{type:Boolean}},setup(i){const l=i,a=s.useTopDialogSelf(),t=e.computed(()=>{var o;return{active:((o=a.pageActive)==null?void 0:o.value)===l.name,"i-load-data":l.isLoading||a.isLoadingPage.value}});return(o,n)=>{const T=e.resolveDirective("top-scroll-shadow");return e.unref(a).isReady.value?(e.openBlock(),e.createElementBlock("div",m,[(e.openBlock(),e.createBlock(e.Teleport,{to:"#"+e.unref(a).idAttr+" .modal-layer-header",disabled:!e.unref(a).needShowPage(o.name)},[e.createElementVNode("div",{"data-order":o.order,"data-view-page":o.name,class:e.normalizeClass(t.value)},[e.createElementVNode("div",v,[e.createElementVNode("div",f,[e.renderSlot(o.$slots,"header")]),e.createElementVNode("div",h,[e.renderSlot(o.$slots,"headerButtons")]),e.unref(p.Core).state.isMobile&&o.prevName?(e.openBlock(),e.createElementBlock("div",{key:0,class:"close",title:o.$i18n.Common.Back,"data-top-icon":"",onClick:n[0]||(n[0]=D=>e.unref(a).open(o.prevName))},null,8,y)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"close",title:o.$i18n.Common.Close,"data-top-icon":"","data-action":"top-dialog-close"},null,8,k))])],10,g)],8,["to","disabled"])),(e.openBlock(),e.createBlock(e.Teleport,{to:"#"+e.unref(a).idAttr+" .modal-layer-body",disabled:!e.unref(a).needShowPage(o.name)},[e.createElementVNode("div",{"data-order":o.order,"data-view-page":o.name,class:e.normalizeClass(["has_scroll_container",t.value]),style:e.normalizeStyle({"--top-dialog-footer-height":o.$slots.footer?void 0:"0px"})},[e.withDirectives((e.openBlock(),e.createElementBlock("div",w,[e.renderSlot(o.$slots,"body")])),[[T]]),o.$slots.footer?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["modal-footer",{"modal-footer-fullWith":o.footerFullWith}])},[e.renderSlot(o.$slots,"footer")],2)):e.createCommentVNode("",!0)],14,B)],8,["to","disabled"]))])):e.createCommentVNode("",!0)}}}),S={name:{type:String,required:!0},order:{type:Number,required:!0},prevName:String,footerFullWith:Boolean},N=e.defineComponent({__name:"pageComponent",props:{component:{},keepAlive:{type:Boolean,default:!0},props:{},name:{},order:{},prevName:{},footerFullWith:{type:Boolean}},setup(i){const l=i,a=s.useTopDialogSelf(),t=(o,n)=>{if(!n.value){if(o.name!=="AsyncComponentWrapper"){n.value=!0;return}a.needShowPage(l.name)&&(a.isLoadingPage.value=!0,o.__asyncResolved&&(n.value=!0,a.isLoadingPage.value=!1))}};if(l.component.name==="AsyncComponentWrapper"){const o=e.ref(!1);e.onUpdated(()=>{t(l.component,o)})}return(o,n)=>(e.openBlock(),e.createBlock(e.KeepAlive,{include:o.keepAlive?"":"none"},[e.unref(a).needShowPage(o.name)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(o.component),e.mergeProps({key:0},l,{name:o.name,order:o.order,prevName:o.prevName}),null,16,["name","order","prevName"])):e.createCommentVNode("",!0)],1032,["include"]))}});r.useTopDialogSelf=s.useTopDialogSelf,r.TopDialog=c,r.TopDialogPage=C,r.TopDialogPageComponent=N,r.propsPageCommon=S,Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})});
2
- //# sourceMappingURL=dialog.amd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog.amd.js","sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/page/page.vue","../../src/components/dialog/dialog/page/types.ts","../../src/components/dialog/dialog/pageComponent/pageComponent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t\t'--top-dialog-width': width,\n\t\t\t\t'--top-dialog-height': height,\n\t\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport Core from '@/core/core/core';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\torder: 0,\n});\n\ndefineSlots<Slots>();\n\nconst dialog = useTopDialogSelf();\n\nconst classes = computed(() => {\n\treturn {\n\t\tactive: dialog.pageActive?.value === props.name,\n\t\t'i-load-data': props.isLoading || dialog.isLoadingPage.value,\n\t};\n});\n</script>\n\n<template>\n\t<div\n\t\tstyle=\"display: none\"\n\t\tv-if=\"dialog.isReady.value\"\n\t>\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-header'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\t:class=\"classes\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-header\">\n\t\t\t\t\t<div class=\"top-title\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class=\"buttons\">\n\t\t\t\t\t\t<slot name=\"headerButtons\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-if=\"Core.state.isMobile && prevName\"\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Back\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"dialog.open(prevName)\"\n\t\t\t\t\t></div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-else\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\tdata-action=\"top-dialog-close\"\n\t\t\t\t\t></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-body'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\tclass=\"has_scroll_container\"\n\t\t\t\t:class=\"classes\"\n\t\t\t\t:style=\"{'--top-dialog-footer-height': $slots.footer ? undefined : '0px'}\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-body\" v-top-scroll-shadow>\n\t\t\t\t\t<slot name=\"body\"></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div\n\t\t\t\t\tclass=\"modal-footer\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'modal-footer-fullWith': footerFullWith\n\t\t\t\t\t}\"\n\t\t\t\t\tv-if=\"$slots.footer\"\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n</template>\n","export interface Props extends PropsCommon {\n\t/**\n\t * Статус загрузки страницы диалогового окна\n\t *\n\t * При включении взаимодействие со страницей блокируется, отображается анимация загрузки\n\t */\n\tisLoading?: boolean;\n}\n\n/**\n * Общие props для компонентов реализуюущих TopDialogPage\n */\nexport interface PropsCommon {\n\t/**\n\t * Имя страницы для диалогового окна\n\t *\n\t * Имя страницы нужно для навигации между страницами в одном диалоговом окне\n\t */\n\tname: string,\n\n\t/**\n\t * Порядкой номер страницы в диалоговом окне\n\t *\n\t * Одна и та же страница может быть подключена в разные диалоговые окна и иметь разный порядковый номер\n\t */\n\torder: number,\n\n\t/**\n\t * Имя предыдущей страницы\n\t *\n\t * Для кнопки Назад / Закрыть в мобильной версии\n\t */\n\tprevName?: string,\n\n\t/**\n\t * Стиль отображения футера, при котороым элементы растягиваются на всю ширину\n\t *\n\t * Разрешены переносы\n\t */\n\tfooterFullWith?: boolean,\n}\n\n/**\n * Общие props для компонентов реализуюущих TopDialogPage\n *\n * Для не SFC компонентов\n */\nexport const propsPageCommon = {\n\tname: {\n\t\ttype: String,\n\t\trequired: true,\n\t},\n\n\torder: {\n\t\ttype: Number,\n\t\trequired: true,\n\t},\n\n\tprevName: String,\n\n\tfooterFullWith: Boolean,\n};\n\nexport interface Slots {\n\t/**\n\t * Шапка страницы\n\t */\n\theader(props: {}): any;\n\n\t/**\n\t * Кнопки для шапки страницы\n\t */\n\theaderButtons(props: {}): any;\n\n\t/**\n\t * Контент страницы\n\t */\n\tbody(props: {}): any;\n\n\t/**\n\t * Футер страницы\n\t */\n\tfooter(props: {}): any;\n}\n","<script setup lang=\"ts\">\nimport { type Component, onUpdated, ref, type Ref } from 'vue';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tkeepAlive: true,\n});\n\nconst dialog = useTopDialogSelf();\n\n/**\n * Статус загрузи асинхронного компонента страницы диалогового окна\n */\nconst updateIsLoadingAsyncPage = (component: Component, isLoaded: Ref) => {\n\tif (isLoaded.value) return;\n\n\tif (component.name !== 'AsyncComponentWrapper') {\n\t\tisLoaded.value = true;\n\n\t\treturn;\n\t}\n\n\tif (!dialog.needShowPage(props.name as string)) return;\n\n\tdialog.isLoadingPage.value = true;\n\n\t// @ts-ignore\n\tif (component.__asyncResolved) {\n\t\tisLoaded.value = true;\n\n\t\tdialog.isLoadingPage.value = false;\n\t}\n};\n\nif (props.component.name === 'AsyncComponentWrapper') {\n\tconst isLoaded = ref(false);\n\n\tonUpdated(() => {\n\t\tupdateIsLoadingAsyncPage(props.component, isLoaded);\n\t});\n}\n</script>\n\n<template>\n\t<!-- Teleport внутри при keepAlive размонитроваться не будет, см. TopDialogPage -->\n\t<KeepAlive :include=\"keepAlive ? '' : 'none'\">\n\t\t<Component\n\t\t\t:is=\"component\"\n\t\t\tv-if=\"dialog.needShowPage(name)\"\n\t\t\t:=\"props\"\n\t\t\t:name=\"name\"\n\t\t\t:order=\"order\"\n\t\t\t:prevName=\"prevName\"\n\t\t/>\n\t</KeepAlive>\n</template>\n"],"names":["vue","dialog","topDialogBaseComponent","topDialogComponent","utils","classes","propsPageCommon","updateIsLoadingAsyncPage","component","isLoaded","props"],"mappings":"gkBAmBC,MAAA,IAAA,MAAA,kFAAA,EAMD,OAAAA,EAAA,QAAA,eAAAC,CAAA,yBAMC,MAAAC,EAAAF,EAAA,mBAAA,EACAG,EAAAD,EAAA,mFAGC,MAAA,IAAA,MAAA,4DAAA,sEAIA,MAAA,IAAA,MAAA,yCAAA,EAGDD,EAAA,UAAAE,EAAAD,CAAA,CAA2D,CAAA,EAG5DF,EAAA,MAAAC,EAAA,SAAA,IAAA,CACCA,EAAA,QAAA,MAAA,EAAuB,EAAA,cAEhB,KAAA,EACD,CAAA,27BCrCPA,EAAAG,EAAA,iBAAA,EAEAC,EAAAL,EAAA,SAAA,IAAA,OACC,MAAA,0GAGA,CAAA,+oDC6BMM,EAAA,CAAwB,KAAA,aAEvB,SAAA,IAEP,MAAA,aAGO,SAAA,oBAIG,eAAA,OAGX,8LCpDAL,EAAAG,EAAA,iBAAA,EAKAG,EAAA,CAAAC,EAAAC,IAAA,CACC,GAAA,CAAAA,EAAA,MAEA,IAAAD,EAAA,OAAA,wBAAA,CACCC,EAAA,MAAA,SAEA,0BAKDR,EAAA,cAAA,MAAA,GAGAO,EAAA,kBACCC,EAAA,MAAA,GAEAR,EAAA,cAAA,MAAA,sDAKD,MAAAQ,EAAAT,EAAA,IAAA,EAAA,mBAGCO,EAAAG,EAAA,UAAAD,CAAA,CAAkD,CAAA,CAClD"}
@@ -1,2 +0,0 @@
1
- export * from '../components/dialog/dialog'
2
- export {}
package/dialog/dialog.js DELETED
@@ -1,194 +0,0 @@
1
- import { defineComponent as v, provide as w, onMounted as b, getCurrentInstance as C, watch as A, openBlock as r, createElementBlock as i, unref as s, normalizeClass as m, normalizeStyle as c, createElementVNode as l, renderSlot as p, computed as D, resolveDirective as k, createBlock as u, Teleport as h, withDirectives as T, createCommentVNode as g, ref as $, onUpdated as B, KeepAlive as P, resolveDynamicComponent as _, mergeProps as N } from "vue";
2
- import { g as W } from "../.chunks/dialogs.vue_vue_type_script_setup_true_lang-BkBYW0yR.es.js";
3
- import { C as S } from "../.chunks/forms-DW_XLzg8.es.js";
4
- import { u as y } from "../.chunks/utils-h5v4GPgp.es.js";
5
- const E = ["id", "data-view-page-active", "data-modal", "data-position"], J = /* @__PURE__ */ v({
6
- __name: "dialog",
7
- props: {
8
- id: {},
9
- pageActive: {},
10
- width: { default: "600px" },
11
- height: { default: "auto" },
12
- modal: { type: Boolean, default: !0 },
13
- position: {},
14
- historyType: { default: "push" },
15
- classes: {}
16
- },
17
- emits: ["open", "close"],
18
- setup(d) {
19
- const o = W(d.id);
20
- if (!o)
21
- throw new Error("TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()");
22
- return w("dialogWorker", o), b(() => {
23
- var t;
24
- const a = C(), e = a.parent;
25
- if (((t = e == null ? void 0 : e.parent) == null ? void 0 : t.type.name) !== "DialogWrapper")
26
- throw new Error("TopDialog cannot be used in a template, use useTopDialog()");
27
- if (Array.isArray(e.subTree.children) && e.subTree.children.length !== 1)
28
- throw new Error("TopDialog can has only one root element");
29
- o.onMounted(e, a);
30
- }), A(o.isOpened, () => {
31
- o.isReady.value = !0;
32
- }, {
33
- flush: "post",
34
- once: !0
35
- }), (a, e) => (r(), i("div", {
36
- id: s(o).idAttr,
37
- class: m(["top-dialog", a.classes]),
38
- style: c({
39
- "--top-dialog-width": a.width,
40
- "--top-dialog-height": a.height
41
- }),
42
- tabindex: "-1",
43
- "data-view-page-active": s(o).pageActive.value,
44
- "data-modal": a.modal,
45
- "data-position": a.position
46
- }, [
47
- e[0] || (e[0] = l("div", { class: "modal-layer modal-layer-header" }, null, -1)),
48
- l("div", {
49
- class: "modal-layer modal-layer-body",
50
- style: c({ "min-height": a.height + "px" })
51
- }, null, 4),
52
- p(a.$slots, "default")
53
- ], 14, E));
54
- }
55
- }), L = {
56
- key: 0,
57
- style: { display: "none" }
58
- }, F = ["data-order", "data-view-page"], M = { class: "modal-header" }, R = { class: "top-title" }, q = { class: "buttons" }, z = ["title"], I = ["title"], V = ["data-order", "data-view-page"], K = { class: "modal-body" }, Q = /* @__PURE__ */ v({
59
- __name: "page",
60
- props: {
61
- isLoading: { type: Boolean },
62
- name: {},
63
- order: { default: 0 },
64
- prevName: {},
65
- footerFullWith: { type: Boolean }
66
- },
67
- setup(d) {
68
- const n = d, o = y(), a = D(() => {
69
- var e;
70
- return {
71
- active: ((e = o.pageActive) == null ? void 0 : e.value) === n.name,
72
- "i-load-data": n.isLoading || o.isLoadingPage.value
73
- };
74
- });
75
- return (e, t) => {
76
- const f = k("top-scroll-shadow");
77
- return s(o).isReady.value ? (r(), i("div", L, [
78
- (r(), u(h, {
79
- to: "#" + s(o).idAttr + " .modal-layer-header",
80
- disabled: !s(o).needShowPage(e.name)
81
- }, [
82
- l("div", {
83
- "data-order": e.order,
84
- "data-view-page": e.name,
85
- class: m(a.value)
86
- }, [
87
- l("div", M, [
88
- l("div", R, [
89
- p(e.$slots, "header")
90
- ]),
91
- l("div", q, [
92
- p(e.$slots, "headerButtons")
93
- ]),
94
- s(S).state.isMobile && e.prevName ? (r(), i("div", {
95
- key: 0,
96
- class: "close",
97
- title: e.$i18n.Common.Back,
98
- "data-top-icon": "",
99
- onClick: t[0] || (t[0] = (O) => s(o).open(e.prevName))
100
- }, null, 8, z)) : (r(), i("div", {
101
- key: 1,
102
- class: "close",
103
- title: e.$i18n.Common.Close,
104
- "data-top-icon": "",
105
- "data-action": "top-dialog-close"
106
- }, null, 8, I))
107
- ])
108
- ], 10, F)
109
- ], 8, ["to", "disabled"])),
110
- (r(), u(h, {
111
- to: "#" + s(o).idAttr + " .modal-layer-body",
112
- disabled: !s(o).needShowPage(e.name)
113
- }, [
114
- l("div", {
115
- "data-order": e.order,
116
- "data-view-page": e.name,
117
- class: m(["has_scroll_container", a.value]),
118
- style: c({ "--top-dialog-footer-height": e.$slots.footer ? void 0 : "0px" })
119
- }, [
120
- T((r(), i("div", K, [
121
- p(e.$slots, "body")
122
- ])), [
123
- [f]
124
- ]),
125
- e.$slots.footer ? (r(), i("div", {
126
- key: 0,
127
- class: m(["modal-footer", {
128
- "modal-footer-fullWith": e.footerFullWith
129
- }])
130
- }, [
131
- p(e.$slots, "footer")
132
- ], 2)) : g("", !0)
133
- ], 14, V)
134
- ], 8, ["to", "disabled"]))
135
- ])) : g("", !0);
136
- };
137
- }
138
- }), X = {
139
- name: {
140
- type: String,
141
- required: !0
142
- },
143
- order: {
144
- type: Number,
145
- required: !0
146
- },
147
- prevName: String,
148
- footerFullWith: Boolean
149
- }, Y = /* @__PURE__ */ v({
150
- __name: "pageComponent",
151
- props: {
152
- component: {},
153
- keepAlive: { type: Boolean, default: !0 },
154
- props: {},
155
- name: {},
156
- order: {},
157
- prevName: {},
158
- footerFullWith: { type: Boolean }
159
- },
160
- setup(d) {
161
- const n = d, o = y(), a = (e, t) => {
162
- if (!t.value) {
163
- if (e.name !== "AsyncComponentWrapper") {
164
- t.value = !0;
165
- return;
166
- }
167
- o.needShowPage(n.name) && (o.isLoadingPage.value = !0, e.__asyncResolved && (t.value = !0, o.isLoadingPage.value = !1));
168
- }
169
- };
170
- if (n.component.name === "AsyncComponentWrapper") {
171
- const e = $(!1);
172
- B(() => {
173
- a(n.component, e);
174
- });
175
- }
176
- return (e, t) => (r(), u(P, {
177
- include: e.keepAlive ? "" : "none"
178
- }, [
179
- s(o).needShowPage(e.name) ? (r(), u(_(e.component), N({ key: 0 }, n, {
180
- name: e.name,
181
- order: e.order,
182
- prevName: e.prevName
183
- }), null, 16, ["name", "order", "prevName"])) : g("", !0)
184
- ], 1032, ["include"]));
185
- }
186
- });
187
- export {
188
- J as TopDialog,
189
- Q as TopDialogPage,
190
- Y as TopDialogPageComponent,
191
- X as propsPageCommon,
192
- y as useTopDialogSelf
193
- };
194
- //# sourceMappingURL=dialog.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dialog.js","sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/page/page.vue","../../src/components/dialog/dialog/page/types.ts","../../src/components/dialog/dialog/pageComponent/pageComponent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t\t'--top-dialog-width': width,\n\t\t\t\t'--top-dialog-height': height,\n\t\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport { computed } from 'vue';\nimport Core from '@/core/core/core';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\torder: 0,\n});\n\ndefineSlots<Slots>();\n\nconst dialog = useTopDialogSelf();\n\nconst classes = computed(() => {\n\treturn {\n\t\tactive: dialog.pageActive?.value === props.name,\n\t\t'i-load-data': props.isLoading || dialog.isLoadingPage.value,\n\t};\n});\n</script>\n\n<template>\n\t<div\n\t\tstyle=\"display: none\"\n\t\tv-if=\"dialog.isReady.value\"\n\t>\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-header'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\t:class=\"classes\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-header\">\n\t\t\t\t\t<div class=\"top-title\">\n\t\t\t\t\t\t<slot name=\"header\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class=\"buttons\">\n\t\t\t\t\t\t<slot name=\"headerButtons\"></slot>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-if=\"Core.state.isMobile && prevName\"\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Back\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\t@click=\"dialog.open(prevName)\"\n\t\t\t\t\t></div>\n\n\t\t\t\t\t<div\n\t\t\t\t\t\tv-else\n\t\t\t\t\t\tclass=\"close\"\n\t\t\t\t\t\t:title=\"$i18n.Common.Close\"\n\t\t\t\t\t\tdata-top-icon=\"\"\n\t\t\t\t\t\tdata-action=\"top-dialog-close\"\n\t\t\t\t\t></div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\n\t\t<Teleport :to=\"'#' + dialog.idAttr + ' .modal-layer-body'\" :disabled=\"!dialog.needShowPage(name)\">\n\t\t\t<div\n\t\t\t\t:data-order=\"order\"\n\t\t\t\t:data-view-page=\"name\"\n\t\t\t\tclass=\"has_scroll_container\"\n\t\t\t\t:class=\"classes\"\n\t\t\t\t:style=\"{'--top-dialog-footer-height': $slots.footer ? undefined : '0px'}\"\n\t\t\t>\n\t\t\t\t<div class=\"modal-body\" v-top-scroll-shadow>\n\t\t\t\t\t<slot name=\"body\"></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div\n\t\t\t\t\tclass=\"modal-footer\"\n\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t'modal-footer-fullWith': footerFullWith\n\t\t\t\t\t}\"\n\t\t\t\t\tv-if=\"$slots.footer\"\n\t\t\t\t>\n\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</Teleport>\n\t</div>\n</template>\n","export interface Props extends PropsCommon {\n\t/**\n\t * Статус загрузки страницы диалогового окна\n\t *\n\t * При включении взаимодействие со страницей блокируется, отображается анимация загрузки\n\t */\n\tisLoading?: boolean;\n}\n\n/**\n * Общие props для компонентов реализуюущих TopDialogPage\n */\nexport interface PropsCommon {\n\t/**\n\t * Имя страницы для диалогового окна\n\t *\n\t * Имя страницы нужно для навигации между страницами в одном диалоговом окне\n\t */\n\tname: string,\n\n\t/**\n\t * Порядкой номер страницы в диалоговом окне\n\t *\n\t * Одна и та же страница может быть подключена в разные диалоговые окна и иметь разный порядковый номер\n\t */\n\torder: number,\n\n\t/**\n\t * Имя предыдущей страницы\n\t *\n\t * Для кнопки Назад / Закрыть в мобильной версии\n\t */\n\tprevName?: string,\n\n\t/**\n\t * Стиль отображения футера, при котороым элементы растягиваются на всю ширину\n\t *\n\t * Разрешены переносы\n\t */\n\tfooterFullWith?: boolean,\n}\n\n/**\n * Общие props для компонентов реализуюущих TopDialogPage\n *\n * Для не SFC компонентов\n */\nexport const propsPageCommon = {\n\tname: {\n\t\ttype: String,\n\t\trequired: true,\n\t},\n\n\torder: {\n\t\ttype: Number,\n\t\trequired: true,\n\t},\n\n\tprevName: String,\n\n\tfooterFullWith: Boolean,\n};\n\nexport interface Slots {\n\t/**\n\t * Шапка страницы\n\t */\n\theader(props: {}): any;\n\n\t/**\n\t * Кнопки для шапки страницы\n\t */\n\theaderButtons(props: {}): any;\n\n\t/**\n\t * Контент страницы\n\t */\n\tbody(props: {}): any;\n\n\t/**\n\t * Футер страницы\n\t */\n\tfooter(props: {}): any;\n}\n","<script setup lang=\"ts\">\nimport { type Component, onUpdated, ref, type Ref } from 'vue';\nimport { useTopDialogSelf } from '@/components/dialog/dialog/composables/utils';\nimport type { Props } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\tkeepAlive: true,\n});\n\nconst dialog = useTopDialogSelf();\n\n/**\n * Статус загрузи асинхронного компонента страницы диалогового окна\n */\nconst updateIsLoadingAsyncPage = (component: Component, isLoaded: Ref) => {\n\tif (isLoaded.value) return;\n\n\tif (component.name !== 'AsyncComponentWrapper') {\n\t\tisLoaded.value = true;\n\n\t\treturn;\n\t}\n\n\tif (!dialog.needShowPage(props.name as string)) return;\n\n\tdialog.isLoadingPage.value = true;\n\n\t// @ts-ignore\n\tif (component.__asyncResolved) {\n\t\tisLoaded.value = true;\n\n\t\tdialog.isLoadingPage.value = false;\n\t}\n};\n\nif (props.component.name === 'AsyncComponentWrapper') {\n\tconst isLoaded = ref(false);\n\n\tonUpdated(() => {\n\t\tupdateIsLoadingAsyncPage(props.component, isLoaded);\n\t});\n}\n</script>\n\n<template>\n\t<!-- Teleport внутри при keepAlive размонитроваться не будет, см. TopDialogPage -->\n\t<KeepAlive :include=\"keepAlive ? '' : 'none'\">\n\t\t<Component\n\t\t\t:is=\"component\"\n\t\t\tv-if=\"dialog.needShowPage(name)\"\n\t\t\t:=\"props\"\n\t\t\t:name=\"name\"\n\t\t\t:order=\"order\"\n\t\t\t:prevName=\"prevName\"\n\t\t/>\n\t</KeepAlive>\n</template>\n"],"names":["dialog","getDialogWorker","__props","provide","onMounted","topDialogBaseComponent","getCurrentInstance","topDialogComponent","_a","watch","props","useTopDialogSelf","classes","computed","propsPageCommon","updateIsLoadingAsyncPage","component","isLoaded","ref","onUpdated"],"mappings":";;;;;;;;;;;;;;;;;;AAiBM,UAAAA,IAASC,EAXDC,EAWuB,EAAE;AACvC,QAAI,CAACF;AACE,YAAA,IAAI,MAAM,kFAAkF;AAMnG,WAAAG,EAAQ,gBAAgBH,CAAM,GAK9BI,EAAU,MAAM;;AACf,YAAMC,IAAyBC,EAAmB,GAC5CC,IAAqBF,EAAuB;AAElD,YAAIG,IAAAD,KAAA,gBAAAA,EAAoB,WAApB,gBAAAC,EAA4B,KAAK,UAAS;AACvC,cAAA,IAAI,MAAM,4DAA4D;AAGzE,UAAA,MAAM,QAAQD,EAAmB,QAAQ,QAAQ,KAAKA,EAAmB,QAAQ,SAAS,WAAW;AAClG,cAAA,IAAI,MAAM,yCAAyC;AAGnD,MAAAP,EAAA,UAAUO,GAAoBF,CAAsB;AAAA,IAAA,CAC3D,GAEKI,EAAAT,EAAO,UAAU,MAAM;AAC5B,MAAAA,EAAO,QAAQ,QAAQ;AAAA,IAAA,GACrB;AAAA,MACF,OAAO;AAAA,MACP,MAAM;AAAA,IAAA,CACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC5CD,UAAMU,IAAQR,GAMRF,IAASW,EAAiB,GAE1BC,IAAUC,EAAS,MAAM;;AACvB,aAAA;AAAA,QACN,UAAQL,IAAAR,EAAO,eAAP,gBAAAQ,EAAmB,WAAUE,EAAM;AAAA,QAC3C,eAAeA,EAAM,aAAaV,EAAO,cAAc;AAAA,MACxD;AAAA,IAAA,CACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IC4BYc,IAAkB;AAAA,EAC9B,MAAM;AAAA,IACL,MAAM;AAAA,IACN,UAAU;AAAA,EACX;AAAA,EAEA,OAAO;AAAA,IACN,MAAM;AAAA,IACN,UAAU;AAAA,EACX;AAAA,EAEA,UAAU;AAAA,EAEV,gBAAgB;AACjB;;;;;;;;;;;;ACxDA,UAAMJ,IAAQR,GAIRF,IAASW,EAAiB,GAK1BI,IAA2B,CAACC,GAAsBC,MAAkB;AACzE,UAAI,CAAAA,EAAS,OAET;AAAA,YAAAD,EAAU,SAAS,yBAAyB;AAC/C,UAAAC,EAAS,QAAQ;AAEjB;AAAA,QAAA;AAGD,QAAKjB,EAAO,aAAaU,EAAM,IAAc,MAE7CV,EAAO,cAAc,QAAQ,IAGzBgB,EAAU,oBACbC,EAAS,QAAQ,IAEjBjB,EAAO,cAAc,QAAQ;AAAA;AAAA,IAE/B;AAEI,QAAAU,EAAM,UAAU,SAAS,yBAAyB;AAC/C,YAAAO,IAAWC,EAAI,EAAK;AAE1B,MAAAC,EAAU,MAAM;AACU,QAAAJ,EAAAL,EAAM,WAAWO,CAAQ;AAAA,MAAA,CAClD;AAAA,IAAA;;;;;;;;;;;;"}
@@ -1,2 +0,0 @@
1
- define(["require","exports","../.chunks/forms-BWc2kMFD.amd"],function(n,T,a){"use strict";if(typeof e>"u")var e=window.Vue;T.TopAvatar=a.TopAvatar,T.TopButton=a.TopButton,T.TopCheckbox=a.TopCheckbox,T.TopControlLabel=a.TopControlLabel,T.TopHint=a.TopHint,T.TopInput=a.TopInput,T.TopInputDate=a.TopInputDate,T.TopInputRange=a.TopInputRange,T.TopLoadbar=a.TopLoadbar,T.TopRadio=a.TopRadio,T.TopSelect=a.TopSelect,T.TopSwitcher=a.TopSwitcher,T.TopTextarea=a.TopTextarea,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
2
- //# sourceMappingURL=forms.amd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"forms.amd.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/forms/forms.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export * from '../components/forms/forms'
2
- export {}
package/forms/forms.js DELETED
@@ -1,17 +0,0 @@
1
- import { T as p, f as T, g as s, h as t, j as e, k as n, l as r, m as l, n as u, o as b, p as c, q as h, r as i } from "../.chunks/forms-DW_XLzg8.es.js";
2
- export {
3
- p as TopAvatar,
4
- T as TopButton,
5
- s as TopCheckbox,
6
- t as TopControlLabel,
7
- e as TopHint,
8
- n as TopInput,
9
- r as TopInputDate,
10
- l as TopInputRange,
11
- u as TopLoadbar,
12
- b as TopRadio,
13
- c as TopSelect,
14
- h as TopSwitcher,
15
- i as TopTextarea
16
- };
17
- //# sourceMappingURL=forms.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"forms.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -1,2 +0,0 @@
1
- define(["require","exports"],function(n,e){"use strict";if(typeof i>"u")var i=window.Vue;const s={xs:"xs",s:"s",m:"m",l:"l"};e.sizes=s,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
2
- //# sourceMappingURL=helpers.amd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.amd.js","sources":["../../src/components/forms/helpers.ts"],"sourcesContent":["/**\n * Размеры\n */\nexport const sizes = {\n\txs: 'xs',\n\ts: 's',\n\tm: 'm',\n\tl: 'l',\n} as const;\n\nexport type Size = typeof sizes[keyof typeof sizes];"],"names":["sizes"],"mappings":"yFAGO,MAAAA,EAAA,qBAGH,EAAA,GAEJ"}
@@ -1,2 +0,0 @@
1
- export * from '../components/forms/helpers'
2
- export {}
package/forms/helpers.js DELETED
@@ -1,10 +0,0 @@
1
- const s = {
2
- xs: "xs",
3
- s: "s",
4
- m: "m",
5
- l: "l"
6
- };
7
- export {
8
- s as sizes
9
- };
10
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sources":["../../src/components/forms/helpers.ts"],"sourcesContent":["/**\n * Размеры\n */\nexport const sizes = {\n\txs: 'xs',\n\ts: 's',\n\tm: 'm',\n\tl: 'l',\n} as const;\n\nexport type Size = typeof sizes[keyof typeof sizes];"],"names":["sizes"],"mappings":"AAGO,MAAMA,IAAQ;AAAA,EACpB,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACJ;"}
@@ -1,2 +0,0 @@
1
- define(["require","exports","vue","../.chunks/forms-BWc2kMFD.amd","../utils/keyboard.amd","../popup/popup.amd","../.chunks/menu.vue_vue_type_style_index_0_lang-06YUloqb.amd","../require/css.amd!../assets/formsExt.css"],function(oe,V,e,g,I,w,$){"use strict";if(typeof e>"u")var e=window.Vue;const N={class:"top-editArea_footer"},M=e.defineComponent({__name:"editArea",props:{defaultValue:{default:""},title:{},cancelText:{default:"Cancel"},submitText:{default:"Send"},closeText:{default:"Close"},isFocused:{type:Boolean},forceShowCloseBtn:{type:Boolean},attachToKeyboard:{type:Boolean},modelValue:{},name:{},placeholder:{},rows:{},minHeight:{},expandable:{type:Boolean,default:!0},disabled:{type:Boolean},readonly:{type:Boolean},isError:{type:Boolean},hint:{}},emits:["submit","close","clickOnTitle"],setup(i,{emit:n}){const t=i,a=n,f=e.ref(t.defaultValue),v=e.ref(t.isFocused),c=e.computed(()=>f.value!==t.defaultValue),p=e.computed(()=>t.attachToKeyboard?"":t.forceShowCloseBtn&&!c.value?t.closeText:t.cancelText),s=u=>{a("submit",u),f.value=t.defaultValue},y=()=>{if(t.forceShowCloseBtn&&!c.value){a("close");return}f.value=t.defaultValue},B=()=>{t.attachToKeyboard&&a("clickOnTitle")};return(u,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-editArea":!0,"top-editArea-attachedToKeyboard":u.attachToKeyboard})},[u.title?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-editArea_title",onClick:l[0]||(l[0]=h=>B())},e.toDisplayString(u.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass({"top-editArea_form":!0,"top-error":u.isError,"top-focus":v.value})},[e.createVNode(g._sfc_main$3,{modelValue:f.value,"onUpdate:modelValue":l[1]||(l[1]=h=>f.value=h),name:u.name,placeholder:u.placeholder,rows:u.rows,minHeight:u.minHeight,expandable:u.expandable,disabled:u.disabled,readonly:u.readonly,isError:u.isError,hint:u.hint,class:"top-editArea_element",onFocus:l[2]||(l[2]=()=>v.value=!0),onBlur:l[3]||(l[3]=()=>v.value=!1),onKeyup:[e.withKeys(y,["esc"]),l[4]||(l[4]=e.withKeys(e.withModifiers(h=>s(f.value),["ctrl"]),["enter"]))]},null,8,["modelValue","name","placeholder","rows","minHeight","expandable","disabled","readonly","isError","hint"]),e.createElementVNode("div",N,[!u.attachToKeyboard&&(c.value||u.forceShowCloseBtn)?(e.openBlock(),e.createBlock(g._sfc_main,{key:0,class:"top-editArea_button",color:"theme",styling:"soft",onClick:y},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.value),1)]),_:1})):e.createCommentVNode("",!0),c.value?(e.openBlock(),e.createBlock(g._sfc_main,{key:1,class:"top-editArea_button",icon:u.attachToKeyboard?"":"",onClick:l[5]||(l[5]=h=>s(f.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(u.attachToKeyboard?"":u.submitText),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])],2)],2))}}),L={class:"top-editInput"},_=e.defineComponent({__name:"editInput",props:{modelValue:{},input:{},button:{}},emits:["update:modelValue"],setup(i,{emit:n}){const t=i,a=e.ref(t.modelValue);e.watch(e.toRef(t.modelValue),()=>{a.value=t.modelValue});const f=n,v=()=>{f("update:modelValue",a.value)};return(c,p)=>(e.openBlock(),e.createElementBlock("div",L,[e.createVNode(g._sfc_main$2,e.mergeProps(c.input,{onKeydownCapture:p[0]||(p[0]=e.withKeys(e.withModifiers(s=>a.value=c.modelValue,["stop"]),["esc"])),onKeydown:e.withKeys(e.withModifiers(v,["stop"]),["enter"]),modelValue:a.value,"onUpdate:modelValue":p[1]||(p[1]=s=>a.value=s)}),null,16,["onKeydown","modelValue"]),a.value!==c.modelValue?(e.openBlock(),e.createBlock(g._sfc_main,e.mergeProps({key:0,icon:"",styling:"soft"},c.button,{onClick:v}),null,16)):e.createCommentVNode("",!0)]))}}),K=["data-top-icon","onClick"],P={key:0,class:"top-radioGroup_circle"},z=["value","disabled"],D=e.defineComponent({__name:"radioGroup",props:e.mergeModels({modelValue:{},radiosProps:{},showIndicator:{type:Boolean},size:{default:"s"},isError:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue"],["update:modelValue"]),setup(i,{emit:n}){const t=e.useModel(i,"modelValue"),a=i,f=e.ref(null);e.watch(t,()=>{var c,p,s,y,B;(c=a.radiosProps)!=null&&c.some(u=>u.value===t.value)||(t.value=((s=(p=a.radiosProps)==null?void 0:p[0])==null?void 0:s.value)??""),(B=(y=f.value)==null?void 0:y.querySelector(".radioGroup_item-selected"))==null||B.scrollIntoView()},{immediate:!0});const v="radioGroup-"+Math.random();return(c,p)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:f,class:e.normalizeClass({"top-radioGroup":!0,"top-scrollBarXHidding":!0,["top-size_"+c.size]:!!c.size,"top-error":c.isError})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.radiosProps,s=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass({"top-radioGroup_item-selected":s.value===t.value,"top-radioGroup_item":!0,"top-forms-focusable":!0,"top-disabled":s.disabled}),"data-top-icon":s.icon,onClick:y=>t.value=s.value},[e.createTextVNode(e.toDisplayString(s.title)+" ",1),c.showIndicator?(e.openBlock(),e.createElementBlock("span",P)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=y=>t.value=y),name:v,type:"radio",class:e.normalizeClass({"top-unvisible":!0}),value:s.value,disabled:s.disabled},null,8,z),[[e.vModelRadio,t.value]])],10,K))),256))],2))}}),O=(i,n,t)=>{const a=e.ref([]),f=e.ref(!1);let v="",c;i&&!i.params.limit&&(i.params.limit=100);const p=async()=>{if(!i)return;let l,h;if(t&&(i.cache??=new Map,h=JSON.stringify(i.params),l=i.cache.get(h),l))return l;if(f.value=!0,l=await i.call(),f.value=!1,l.errors)return;if(!Array.isArray(l.result)){console.warn("В result ожидался массив");return}const C=l.result.findIndex(T=>T.id===void 0||T.name===void 0);if(C!==-1){console.warn(`В result[${C}] нет id или name`);return}return t&&i.cache.set(h,l),l},s=async()=>{if(!i)return;i.params.offset=0,i.params.search=v;const l=await p();l&&(c=l.nextOffset,a.value=l.result)},y=async()=>{if(!i||!c||f.value)return;i.params.offset=c,i.params.search=v;const l=await p();l&&(c=l.nextOffset,a.value=a.value.concat(l.result))},B=g.debounce(()=>s(),200);return{items:a,isLoading:f,loadAppend:y,setSearchTextAndLoad:(l,h=!0)=>{i&&(l.length<n||l===v&&a.value.length||(v=l,h?B():s()))}}},F={class:"top-selector2_itemMulti top-ellipsis"},G=e.defineComponent({__name:"itemMulti",props:{id:{},name:{}},emits:["delete"],setup(i){return(n,t)=>(e.openBlock(),e.createElementBlock("div",F,[e.createTextVNode(e.toDisplayString(n.name)+" ",1),e.createElementVNode("span",{class:"top-selector2_itemMultiDelete","data-top-icon":"",onClick:t[0]||(t[0]=a=>n.$emit("delete",n.id)),onMousedown:t[1]||(t[1]=e.withModifiers(()=>{},["stop"]))},null,32)]))}}),H={key:0,class:"top-selector2_activeItems"},R={key:1,class:"top-selector2_activeName top-ellipsis"},U=e.defineComponent({__name:"selector2",props:e.mergeModels({modelValue:{},items:{default:()=>[]},multiselect:{type:Boolean},disabled:{type:Boolean},size:{default:"s"},isError:{type:Boolean},apiRequest:{},minLength:{default:0},useCache:{type:Boolean},appendSearchToResult:{type:Boolean},appendAllValue:{type:Boolean},addChanger:{type:Boolean},placeholder:{},showSelectedInInput:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(i){const n=i,t=e.useModel(i,"modelValue"),a=e.ref(""),f={id:0,name:g.useI18n().Common.All},v=e.ref(null),c=e.ref(null),p=()=>{var o;return(o=v.value)==null?void 0:o.popup};window.__STORYBOOK_PREVIEW__&&!n.modelValue&&e.watch(()=>n.multiselect,()=>{t.value=n.multiselect?[]:{id:null,name:""}},{immediate:!0});const s=O(n.apiRequest,n.minLength,n.useCache),y=e.computed(()=>{const o=[];return!n.multiselect&&n.appendAllValue&&o.push(f),n.items.forEach(r=>o.push({...r})),o}),B=(o,r=!0)=>r&&o.id===null?Array.isArray(t.value)?t.value.some(m=>m.id===o.id&&m.name===o.name):o.name===t.value.name:Array.isArray(t.value)?t.value.some(m=>m.id===o.id):o.id===t.value.id,u=e.computed(()=>{const o=a.value.toLowerCase(),r=I.invertKeyboardLayout(o);let m=[];return y.value.forEach(d=>{const k=d.name.toLowerCase();(d.id===Number(o)||k.includes(o)||k.includes(r))&&(k===o||k===r?m.unshift(d):m.push(d))}),m.push(...s.items.value),n.appendSearchToResult&&a.value&&(!m.length||m[0].name.toLowerCase()!==o)&&m.push({id:null,name:a.value}),n.multiselect&&(m=m.filter(d=>!B(d))),m}),l=e.ref(s.isLoading.value);e.watch(s.isLoading,()=>{l.value=s.isLoading.value});const h=async o=>{var r,m;if(n.multiselect){if(!Array.isArray(t.value)||B(o))return;n.apiRequest&&a.value&&(l.value=!0);const d=[...t.value];d.push({...o}),t.value=d,g.Core.state.isMobile?((r=p())==null||r.close(),a.value&&(a.value="",s.items.value=[])):setTimeout(()=>{var k,A,E,S;(k=p())==null||k.recalcPosition(),(S=(E=(A=p())==null?void 0:A.elPopupWidget)==null?void 0:E.querySelector("input"))==null||S.focus(),a.value&&(u.value.length?n.apiRequest&&(l.value=!1):(a.value="",s.items.value=[]))})}else a.value&&(a.value="",s.items.value=[]),JSON.stringify(o)!==JSON.stringify(t.value)&&(t.value={...o}),(m=p())==null||m.close()},C=()=>{if(!Array.isArray(t.value)){const r=(y.value.findIndex(m=>m.id===t.value.id)+1)%y.value.length;t.value={...y.value[r]}}},T=async o=>{Array.isArray(t.value)&&(t.value=t.value.filter(r=>r.id!==o),setTimeout(()=>{var r;(r=p())==null||r.recalcPosition()}))},b=e.ref(!1);n.apiRequest&&(e.watch(b,()=>{b.value&&s.setSearchTextAndLoad(a.value,!1)}),e.watch(a,()=>s.setSearchTextAndLoad(a.value)));const te=o=>{const r=o.target;r.scrollTop/(r.scrollHeight-r.offsetHeight)>.8&&s.loadAppend()};return(o,r)=>{const m=e.resolveDirective("top-focus");return e.openBlock(),e.createBlock(e.unref(w.TopPopup),{ref_key:"popupRef",ref:v,onOpen:r[3]||(r[3]=d=>b.value=!0),onClose:r[4]||(r[4]=d=>{var k;return b.value=!1,(k=c.value)==null?void 0:k.focus()}),onScrollContentList:r[5]||(r[5]=d=>o.apiRequest?te(d):void 0),notch:!1,transitionDuration:0},{opener:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:c,class:e.normalizeClass({"top-selector2":!0,"top-selector2-multiselect":o.multiselect,["top-size_"+o.size]:!0,"top-disabled":o.disabled,"top-forms-focusable":!o.disabled,"top-error":o.isError}),onKeydown:[r[0]||(r[0]=e.withKeys(e.withModifiers(d=>d.currentTarget.click(),["stop","prevent"]),["up","down","enter","space"])),r[1]||(r[1]=e.withKeys(d=>t.value=[],["delete"]))],tabindex:"0"},[o.multiselect?(e.openBlock(),e.createElementBlock("div",H,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,d=>(e.openBlock(),e.createBlock(G,{id:d.id,name:d.name,onDelete:T},null,8,["id","name"]))),256))])):e.createCommentVNode("",!0),o.multiselect?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",R,e.toDisplayString(Array.isArray(t.value)?"":t.value.name),1)),o.addChanger&&!o.multiselect&&y.value.length>1&&!o.disabled?(e.openBlock(),e.createElementBlock("span",{key:2,class:"top-changer top-changer-selector",onClick:e.withModifiers(C,["stop"])})):e.createCommentVNode("",!0)],34)),[[m,o.isError,void 0,{onupdate:!0}]])]),widget:e.withCtx(()=>[e.createVNode(e.unref(w.TopPopupWidgetInput),{title:"Поиск",icon:"",modelValue:a.value,"onUpdate:modelValue":r[2]||(r[2]=d=>a.value=d),isLoading:l.value,placeholder:!Array.isArray(t.value)&&!o.multiselect&&o.showSelectedInInput?t.value.name:o.placeholder},null,8,["modelValue","isLoading","placeholder"])]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,d=>(e.openBlock(),e.createBlock(e.unref(w.TopPopupListItem),{class:e.normalizeClass({"top-active":!Array.isArray(t.value)&&!o.multiselect&&t.value.name===d.name}),key:d.id??void 0,onClick:e.withModifiers(k=>h(d),["stop"])},{default:e.withCtx(()=>[o.$slots.item?e.renderSlot(o.$slots,"item",{key:0,item:d}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(d.name),1)],64))]),_:2},1032,["class","onClick"]))),128)),!l.value&&!u.value.length?(e.openBlock(),e.createBlock(e.unref(w.TopPopupListItem),{key:0,type:"regular"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.$i18n.Common.No_results),1)]),_:1})):e.createCommentVNode("",!0)]),_:3},512)}}}),W=["data-top-icon"],J={class:"top-info_text"},j={key:0,class:"top-info_value"},X=e.defineComponent({__name:"info",props:{icon:{},styling:{default:"default"},size:{default:"default"}},setup(i){return(n,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-info":!0,["top-size_"+n.size]:!0,["top-info-styling_"+n.styling]:!0}),"data-top-icon":n.icon},[e.createElementVNode("div",J,[e.renderSlot(n.$slots,"default")]),n.$slots.additional?(e.openBlock(),e.createElementBlock("span",j,[e.renderSlot(n.$slots,"additional")])):e.createCommentVNode("",!0)],10,W))}}),Y=M,Q=_,Z=D,q=U,x=$._sfc_main,ee=X;V.TopEditArea=Y,V.TopEditInput=Q,V.TopInfo=ee,V.TopMenu=x,V.TopRadioGroup=Z,V.TopSelector2=q,Object.defineProperty(V,Symbol.toStringTag,{value:"Module"})});
2
- //# sourceMappingURL=formsExt.amd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formsExt.amd.js","sources":["../../src/components/formsExt/editArea/editArea.vue","../../src/components/formsExt/editInput/editInput.vue","../../src/components/formsExt/radioGroup/radioGroup.vue","../../src/components/formsExt/selector2/api.ts","../../src/components/formsExt/selector2/selector2.vue","../../src/components/formsExt/formsExt.ts"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue';\nimport Button from '@/components/forms/button/button.vue';\nimport type { Emits, Props } from './editArea';\nimport Textarea from '@/components/forms/textarea/textarea.vue';\n\n// TODO: добавить переменную top-forms-fixed-height и использовать ее при добавлении отступов у страницы\n\nconst props = withDefaults(defineProps<Props>(), {\n\tdefaultValue: '',\n\tcancelText: 'Cancel',\n\tsubmitText: 'Send',\n\tcloseText: 'Close',\n\texpandable: true,\n});\n\nconst emit = defineEmits<Emits>();\n\nconst localValue = ref(props.defaultValue);\n\nconst isFocused = ref(props.isFocused);\n\nconst isChanged = computed(() => localValue.value !== props.defaultValue);\n\nconst cancelBtnText = computed(() => {\n\tif (props.attachToKeyboard) return '';\n\n\tif (props.forceShowCloseBtn && !isChanged.value) return props.closeText;\n\n\treturn props.cancelText;\n});\n\nconst submit = (value: string) => {\n\temit('submit', value);\n\n\tlocalValue.value = props.defaultValue;\n};\n\nconst cancel = () => {\n\tif (props.forceShowCloseBtn && !isChanged.value) {\n\t\temit('close');\n\n\t\treturn;\n\t}\n\n\tlocalValue.value = props.defaultValue;\n};\n\nconst clickOnTitle = () => {\n\tif (props.attachToKeyboard) emit('clickOnTitle');\n};\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t'top-editArea': true,\n\t\t\t'top-editArea-attachedToKeyboard': attachToKeyboard,\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tv-if=\"title\"\n\t\t\tclass=\"top-editArea_title\"\n\t\t\t@click=\"clickOnTitle()\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div\n\t\t\t:class=\"{\n\t\t\t\t'top-editArea_form': true,\n\t\t\t\t'top-error': isError,\n\t\t\t\t'top-focus': isFocused,\n\t\t\t}\"\n\t\t>\n\t\t\t<Textarea\n\t\t\t\tv-model=\"localValue\"\n\t\t\t\t:name=\"name\"\n\t\t\t\t:placeholder=\"placeholder\"\n\t\t\t\t:rows=\"rows\"\n\t\t\t\t:minHeight=\"minHeight\"\n\t\t\t\t:expandable=\"expandable\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:readonly=\"readonly\"\n\t\t\t\t:isError=\"isError\"\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-editArea_element\"\n\t\t\t\t@focus=\"() => isFocused = true\"\n\t\t\t\t@blur=\"() => isFocused = false\"\n\t\t\t\t@keyup.esc=\"cancel\"\n\t\t\t\t@keyup.ctrl.enter=\"submit(localValue)\"\n\t\t\t/>\n\n\t\t\t<div class=\"top-editArea_footer\">\n\t\t\t\t<Button\n\t\t\t\t\tv-if=\"!attachToKeyboard && (isChanged || forceShowCloseBtn)\"\n\t\t\t\t\tclass=\"top-editArea_button\"\n\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\tstyling=\"soft\"\n\t\t\t\t\t@click=\"cancel\"\n\t\t\t\t>\n\t\t\t\t\t{{ cancelBtnText }}\n\t\t\t\t</Button>\n\n\t\t\t\t<Button\n\t\t\t\t\tclass=\"top-editArea_button\"\n\t\t\t\t\tv-if=\"isChanged\"\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\n\t\t\t\t\t@click=\"submit(localValue)\"\n\t\t\t\t>\n\t\t\t\t\t{{ attachToKeyboard ? '' : submitText }}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n\n<style>\n.top-editArea {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 6px;\n}\n\n.top-editArea_title {\n\tfont-size: 12px;\n}\n\n.top-editArea_form {\n\tflex-direction: column;\n\toutline: none;\n}\n\n.top-editArea_form:not(.top-error):hover,\n.top-editArea_form:not(.top-error).top-focus {\n\tborder-color: var(--top-forms-border-color-hover);\n}\n\n/* textarea в EditArea */\n.top-textarea {\n\twidth: 100%;\n}\n\n.top-editArea_element.top-textarea_textarea {\n\tborder: none;\n\toutline: none;\n\tanimation: none;\n}\n\n/* footer */\n.top-editArea_footer {\n\tpadding: var(--top-forms-padding);\n\tdisplay: flex;\n\tmin-height: 32px;\n\tjustify-content: flex-end;\n\tgap: var(--top-forms-padding);\n}\n\n/* attachedToKeyboard */\n.top-editArea-attachedToKeyboard {\n\tbackground: var(--top-forms-background-color);\n\tmargin-bottom: env(keyboard-inset-height, 0);\n\tposition: fixed;\n\tbottom: 0;\n\tright: 0;\n\tleft: 0;\n\tz-index: 2;\n\tgap: 0;\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_form {\n\tborder-radius: 0;\n\tborder: none;\n\tborder-top: 1px solid var(--top-forms-border-color);\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_title {\n\tcursor: pointer;\n\tborder-top: 1px solid var(--color-line-2-opacity);\n\tpadding: var(--top-forms-padding);\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_footer > [data-top-icon] {\n\tborder-radius: 100%;\n}\n\n.top-editArea-attachedToKeyboard .top-button.top-editArea_button {\n\tmin-width: auto;\n\tpadding: 0;\n}\n\n.top-editArea-attachedToKeyboard .top-button.top-editArea_button:before {\n\t--top-icon-size: 18px;\n}\n</style>\n","<script setup lang=\"ts\">\nimport { ref, toRef, watch } from 'vue';\nimport type { Emits, Props } from './editInput';\nimport TopInput from '@/components/forms/input/input.vue';\nimport TopButton from '@/components/forms/button/button.vue';\n\nconst props = defineProps<Props>();\n\nconst intermediateValue = ref(props.modelValue);\n\nwatch(toRef(props.modelValue), () => {\n\tintermediateValue.value = props.modelValue;\n});\n\nconst emit = defineEmits<Emits>();\n\nconst submit = () => {\n\temit('update:modelValue', intermediateValue.value);\n};\n</script>\n\n<template>\n\t<div class=\"top-editInput\">\n\t\t<TopInput\n\t\t\t:=\"input\"\n\t\t\t@keydown.esc.capture.stop=\"intermediateValue = modelValue\"\n\t\t\t@keydown.enter.stop=\"submit\"\n\t\t\tv-model=\"intermediateValue\"\n\t\t/>\n\n\t\t<TopButton\n\t\t\tv-if=\"intermediateValue !== modelValue\"\n\t\t\ticon=\"\"\n\t\t\tstyling=\"soft\"\n\t\t\t:=\"button\"\n\t\t\t@click=\"submit\"\n\t\t/>\n\t</div>\n</template>\n\n<style>\n.top-editInput {\n\twidth: 220px;\n\tflex-grow: 1;\n\tdisplay: flex;\n\talign-items: flex-end;\n\tgap: var(--top-gap-1);\n}\n\n.top-editInput .top-input {\n\twidth: unset;\n\tflex-grow: 1;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { Ref } from '@vue/reactivity';\nimport { ref, watch } from 'vue';\nimport type { Props, Emits } from './radioGroup';\n\nconst model = defineModel<string>({\n\trequired: true,\n});\n\nconst props = withDefaults(defineProps<Props>(), {\n\tsize: 's',\n});\n\nconst emit = defineEmits<Emits>();\n\nconst elRef: Ref<HTMLElement | null> = ref(null);\n\nwatch(model, () => {\n\tif (!props.radiosProps?.some(item => item.value === model.value)) {\n\t\tmodel.value = props.radiosProps?.[0]?.value ?? '';\n\t}\n\n\telRef.value?.querySelector('.radioGroup_item-selected')?.scrollIntoView();\n}, { immediate: true });\n\nconst uid = 'radioGroup-' + Math.random();\n</script>\n\n<template>\n\t<div\n\t\tref=\"elRef\"\n\t\t:class=\"{\n\t\t\t['top-radioGroup']: true,\n\t\t\t['top-scrollBarXHidding']: true,\n\t\t\t['top-size_' + size]: !!size,\n\t\t\t['top-error']: isError,\n\t\t}\"\n\t>\n\t\t<label\n\t\t\tv-for=\"item of radiosProps\"\n\t\t\t:class=\"{\n\t\t\t\t['top-radioGroup_item-selected']: item.value === model,\n\t\t\t\t['top-radioGroup_item']: true,\n\t\t\t\t['top-forms-focusable']: true,\n\t\t\t\t['top-disabled']: item.disabled,\n\t\t\t}\"\n\t\t\t:data-top-icon=\"item.icon\"\n\t\t\t@click=\"model = item.value\"\n\t\t>\n\t\t\t{{ item.title }}\n\n\t\t\t<span\n\t\t\t\tv-if=\"showIndicator\"\n\t\t\t\tclass=\"top-radioGroup_circle\"\n\t\t\t></span>\n\n\t\t\t<!-- Для нативной навигации -->\n\t\t\t<input\n\t\t\t\tv-model=\"model\"\n\t\t\t\t:name=\"uid\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\t:class=\"{\n\t\t\t\t\t['top-unvisible']: true,\n\t\t\t\t}\"\n\t\t\t\t:value=\"item.value\"\n\t\t\t\t:disabled=\"item.disabled\"\n\t\t\t/>\n\t\t</label>\n\t</div>\n</template>\n\n<style>\n@import \"./styles/top-scrollBar.css\";\n\n.top-radioGroup {\n\tuser-select: none;\n\tbox-sizing: border-box;\n\tborder-radius: 8px;\n\tbackground-color: var(--color-layout-middle);\n\theight: var(--top-forms-base-height);\n\tpadding: 2px;\n\tgap: 2px;\n\tdisplay: flex;\n\talign-items: flex-start;\n}\n\n.top-radioGroup_item {\n\tcolor: var(--color-text-2);\n\tcursor: pointer;\n\tbox-sizing: border-box;\n\tborder-radius: 6px;\n\theight: calc(var(--top-forms-base-height) - 4px);\n\tpadding: 0 16px;\n\tfont-weight: 400;\n\twhite-space: nowrap;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tflex-grow: 1;\n\tgap: 4px;\n}\n\n.top-radioGroup_item:hover {\n\tbackground-color: var(--color-layout-front-1);\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\n}\n\n/* selected */\n.top-radioGroup_item-selected {\n\tcolor: var(--color-text-1);\n\tpointer-events: none;\n\tbackground-color: var(--color-bg-lightning-1);\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\n}\n\n/* circle */\n.top-radioGroup_circle {\n\tcontent: \"\";\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--color-line-3-opacity);\n\tborder-radius: 50%;\n\tpadding: 3px;\n\tmargin-left: auto;\n\twidth: calc(var(--top-forms-option-height) - 3px * 2);\n\theight: calc(var(--top-forms-option-height) - 3px * 2);\n}\n\n.top-radioGroup_item:hover .top-radioGroup_circle:before {\n\tborder-color: var(--color-line-primary-1);\n}\n\n/* circle selected */\n.top-radioGroup_item-selected .top-radioGroup_circle {\n\tborder-color: var(--color-line-primary-1);\n\tborder-width: 5px;\n}\n\n.top-radioGroup_item-selected:hover .top-radioGroup_circle {\n\tborder-color: var(--color-line-primary-1);\n}\n\n/* top-error */\n.top-radioGroup.top-error .top-radioGroup_item:not(.top-disabled) .top-radioGroup_circle {\n\tborder-color: var(--color-line-negative-1);\n}\n</style>\n","import type { Ref } from 'vue';\nimport { ref } from 'vue';\nimport { debounce } from '@/core/utils/lodash';\nimport type { Item, Props } from './selector2';\n\nexport const useAPI = (apiRequest: Props['apiRequest'], minLength: number, useCache: Props['useCache']) => {\n\t/**\n\t * Список, полученный через API\n\t */\n\tconst items: Ref<Array<Item>> = ref([]);\n\n\t/**\n\t * Флаг - идет загрузка\n\t */\n\tconst isLoading = ref(false);\n\n\tlet _searchText = '';\n\tlet _nextOffset: number | undefined;\n\n\tif (apiRequest && !apiRequest.params.limit) {\n\t\tapiRequest.params.limit = 100;\n\t}\n\n\t/**\n\t * Выполнить обращение к API\n\t *\n\t * При ошибке вернет undefined\n\t */\n\tconst callAPIRequest = async (): Promise<{ nextOffset?: number, result: Array<Item> } | undefined> => {\n\t\tif (!apiRequest) return;\n\n\t\tlet res;\n\t\tlet cacheKey;\n\n\t\tif (useCache) {\n\t\t\t// кэш для полученных ответов через apiRequest\n\t\t\t// общий для всех компонентов, использующих apiRequest\n\t\t\tapiRequest.cache ??= new Map();\n\n\t\t\tcacheKey = JSON.stringify(apiRequest.params);\n\t\t\tres = apiRequest.cache.get(cacheKey);\n\n\t\t\tif (res) {\n\t\t\t\treturn res;\n\t\t\t}\n\t\t}\n\n\t\tisLoading.value = true;\n\t\tres = await apiRequest.call();\n\t\tisLoading.value = false;\n\n\t\tif (res.errors) return;\n\n\t\tif (!Array.isArray(res.result)) {\n\t\t\tconsole.warn(`В result ожидался массив`);\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst indexWithError = (res.result as Array<Item | any>).findIndex(item => item.id === undefined || item.name === undefined);\n\t\tif (indexWithError !== -1) {\n\t\t\tconsole.warn(`В result[${indexWithError}] нет id или name`);\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (useCache) {\n\t\t\tapiRequest.cache.set(cacheKey as string, res);\n\t\t}\n\n\t\treturn res;\n\t};\n\n\t/**\n\t * Загрузить items\n\t */\n\tconst load = async () => {\n\t\tif (!apiRequest) return;\n\n\t\tapiRequest.params.offset = 0;\n\t\tapiRequest.params.search = _searchText;\n\n\t\tconst res = await callAPIRequest();\n\t\tif (!res) return;\n\n\t\t_nextOffset = res.nextOffset;\n\n\t\titems.value = res.result;\n\t};\n\n\t/**\n\t * Загрузить следующую страницу items\n\t */\n\tconst loadAppend = async () => {\n\t\tif (!apiRequest) return;\n\n\t\t// данных о следующих страницах не обнаружено\n\t\tif (!_nextOffset) return;\n\n\t\t// дозагружать нельзя, если не завершена предыдущшая загрузка\n\t\tif (isLoading.value) return;\n\n\t\tapiRequest.params.offset = _nextOffset;\n\t\tapiRequest.params.search = _searchText;\n\n\t\tconst res = await callAPIRequest();\n\t\tif (!res) return;\n\n\t\t_nextOffset = res.nextOffset;\n\n\t\titems.value = items.value.concat(res.result);\n\t};\n\n\tconst loadDebounce = debounce(() => load(), 200);\n\n\t/**\n\t * Выполнить поиск по указанному тексту\n\t *\n\t * Если длина текста меньше minLength, поиск не будет проивзеден\n\t *\n\t * Если текст не изменился, поиск не будет проивзеден\n\t * @param searchText - текст поиска\n\t * @param useDebounce - отложенное выполнение поиска\n\t */\n\tconst setSearchTextAndLoad = (searchText: string, useDebounce = true) => {\n\t\tif (!apiRequest) return;\n\n\t\tif (searchText.length < minLength) return;\n\n\t\t// условия поиска не поменялись, данные загружены\n\t\tif (searchText === _searchText && items.value.length) return;\n\n\t\t_searchText = searchText;\n\n\t\tif (useDebounce) {\n\t\t\tloadDebounce();\n\t\t} else {\n\t\t\tvoid load();\n\t\t}\n\t};\n\n\treturn {\n\t\titems,\n\t\tisLoading,\n\t\tloadAppend,\n\t\tsetSearchTextAndLoad,\n\t};\n};\n","<script setup lang=\"ts\">\nimport type { ComputedRef, ModelRef, ComponentInstance } from 'vue';\nimport { computed, ref, watch } from 'vue';\nimport Core from '@/core/core/core';\nimport { invertKeyboardLayout } from '@/core/utils/keyboard';\nimport { useI18n } from '@/core/plugins/i18n';\nimport { TopPopup, TopPopupListItem, TopPopupWidgetInput } from '@/components/popup/popup';\nimport type PopupClass from '@/components/popup/lib/popup';\nimport type { Item, Props, Slots } from './selector2';\nimport { useAPI } from './api';\nimport Selector2ItemMulti from './itemMulti.vue';\n\nconst props = withDefaults(defineProps<Props>(), {\n\titems: () => [] as Array<Item>,\n\tsize: 's',\n\tminLength: 0,\n\tshowSelectedInInput: true,\n});\n\nconst model = defineModel<Props['modelValue']>() as ModelRef<Props['modelValue']>;\n\ndefineSlots<Slots>();\n\n/**\n * Текст поиска по результатам\n */\nconst searchText = ref('');\n\nconst itemAll = {\n\tid: 0,\n\tname: useI18n().Common.All!,\n};\n\n/**\n * Экземпляр компонента Popup\n */\nconst popupRef = ref<ComponentInstance<typeof TopPopup> | null>(null);\n\n/**\n * Основной элемент селектора\n */\nconst elRef = ref<HTMLElement | null>(null);\n\n/**\n * Получить доступ к объекту popup\n */\nconst getPopup = (): PopupClass | undefined => {\n\treturn popupRef.value?.popup;\n};\n\n// для storybook\nif ((window as any).__STORYBOOK_PREVIEW__ && !props.modelValue) {\n\twatch(\n\t\t() => props.multiselect,\n\t\t() => {\n\t\t\tmodel.value = props.multiselect ? [] : { id: null, name: '' };\n\t\t},\n\t\t{ immediate: true },\n\t);\n}\n\nconst API = useAPI(props.apiRequest, props.minLength, props.useCache);\n\n/**\n * Варианты выбора: props.items + \"Выбрать все\"\n */\nconst localItems: ComputedRef<Array<Item>> = computed(() => {\n\tconst items: Array<Item> = [];\n\n\tif (!props.multiselect && props.appendAllValue) {\n\t\titems.push(itemAll);\n\t}\n\n\tprops.items.forEach(item => items.push({ ...item }));\n\n\treturn items;\n});\n\n/**\n * Проверить, что элемент выбран\n */\nconst isSelected = (item: Item, checkNameForNullId = true) => {\n\tif (checkNameForNullId && item.id === null) {\n\t\tif (Array.isArray(model.value)) {\n\t\t\treturn model.value.some(itemSelected => itemSelected.id === item.id && itemSelected.name === item.name);\n\t\t} else {\n\t\t\treturn item.name === model.value.name;\n\t\t}\n\t}\n\n\tif (Array.isArray(model.value)) {\n\t\treturn model.value.some(itemSelected => itemSelected.id === item.id);\n\t} else {\n\t\treturn item.id === model.value.id;\n\t}\n};\n\n/**\n * Варианты выбора, которые выводятся\n */\nconst itemsForShow = computed(() => {\n\tconst searchString = searchText.value.toLowerCase();\n\tconst searchStringInvertKeyboard = invertKeyboardLayout(searchString);\n\n\tlet items: typeof localItems.value = [];\n\n\tlocalItems.value.forEach((item) => {\n\t\tconst itemName = item.name.toLowerCase();\n\n\t\tif (\n\t\t\titem.id === Number(searchString) ||\n\t\t\titemName.includes(searchString) ||\n\t\t\titemName.includes(searchStringInvertKeyboard)\n\t\t) {\n\t\t\tif (itemName === searchString || itemName === searchStringInvertKeyboard) {\n\t\t\t\titems.unshift(item);\n\t\t\t} else {\n\t\t\t\titems.push(item);\n\t\t\t}\n\t\t}\n\t});\n\n\titems.push(...API.items.value);\n\n\tif (\n\t\tprops.appendSearchToResult &&\n\t\t!!searchText.value &&\n\t\t(!items.length || items[0].name.toLowerCase() !== searchString)\n\t) {\n\t\titems.push({\n\t\t\tid: null,\n\t\t\tname: searchText.value,\n\t\t});\n\t}\n\n\tif (props.multiselect) {\n\t\titems = items.filter(item => !isSelected(item));\n\t}\n\n\treturn items;\n});\n\n/**\n * Флаг - идет загрузка\n *\n * Скрывает вывод заглушки \"Нет результатов\" - для загрузки данных через API (multiselect = true) - (см. selectItem)\n */\nconst isLoading = ref(API.isLoading.value);\n\nwatch(API.isLoading, () => {\n\tisLoading.value = API.isLoading.value;\n});\n\n/**\n * Выбрать значение\n *\n * Управляет закрытием окна\n */\nconst selectItem = async (item: Item) => {\n\tif (props.multiselect) {\n\t\tif (!Array.isArray(model.value)) return;\n\n\t\tif (isSelected(item)) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (props.apiRequest && searchText.value) {\n\t\t\tisLoading.value = true;\n\t\t}\n\n\t\tconst newModel = [...model.value];\n\t\tnewModel.push({ ...item });\n\t\tmodel.value = newModel;\n\n\t\tif (Core.state.isMobile) {\n\t\t\tgetPopup()?.close();\n\n\t\t\t// сбросить введенный текст\n\t\t\tif (searchText.value) {\n\t\t\t\tsearchText.value = '';\n\t\t\t\tAPI.items.value = [];\n\t\t\t}\n\t\t} else {\n\t\t\tsetTimeout(() => {\n\t\t\t\tgetPopup()?.recalcPosition();\n\t\t\t\tgetPopup()?.elPopupWidget?.querySelector('input')?.focus();\n\n\t\t\t\t// сбросить введенный текст, только если больше не найдено результатов\n\t\t\t\tif (searchText.value) {\n\t\t\t\t\tif (!itemsForShow.value.length) {\n\t\t\t\t\t\tsearchText.value = '';\n\t\t\t\t\t\tAPI.items.value = [];\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (props.apiRequest) {\n\t\t\t\t\t\t\tisLoading.value = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\t// сбросить введенный текст\n\t\tif (searchText.value) {\n\t\t\tsearchText.value = '';\n\t\t\tAPI.items.value = [];\n\t\t}\n\n\t\tif (JSON.stringify(item) !== JSON.stringify(model.value)) {\n\t\t\tmodel.value = { ...item };\n\t\t}\n\n\t\tgetPopup()?.close();\n\t}\n};\n\n/**\n * Выбрать следующее значение\n */\nconst selectNextItem = () => {\n\tif (!Array.isArray(model.value)) {\n\t\tconst currentIndex = localItems.value.findIndex(item => item.id === (model.value as Item).id);\n\t\tconst nextIndex = (currentIndex + 1) % localItems.value.length;\n\t\tmodel.value = { ...localItems.value[nextIndex] };\n\t}\n};\n\n/**\n * Удалить выбранное значение по id\n * @param id\n */\nconst deleteItemById = async (id: Item['id']) => {\n\tif (Array.isArray(model.value)) {\n\t\tmodel.value = model.value.filter(item => item.id !== id);\n\n\t\tsetTimeout(() => {\n\t\t\tgetPopup()?.recalcPosition();\n\t\t});\n\t}\n};\n\nconst isOpened = ref(false); // флаг попап открыт\n\nif (props.apiRequest) {\n\twatch(isOpened, () => {\n\t\tif (isOpened.value) {\n\t\t\t// при открытии сразу выполнить поиск\n\t\t\tAPI.setSearchTextAndLoad(searchText.value, false);\n\t\t}\n\t});\n\n\t// отложенный поиск при вводе текста\n\twatch(searchText, () => API.setSearchTextAndLoad(searchText.value));\n}\n\nconst onScrollContentList = (e: Event) => {\n\tconst el = e.target as HTMLElement;\n\n\tif (el.scrollTop / (el.scrollHeight - el.offsetHeight) > 0.8) {\n\t\tAPI.loadAppend();\n\t}\n};\n</script>\n\n<template>\n\t<TopPopup\n\t\tref=\"popupRef\"\n\t\t@open=\"isOpened = true\"\n\t\t@close=\"isOpened = false, elRef?.focus()\"\n\t\t@scrollContentList=\"apiRequest ? onScrollContentList($event) : undefined\"\n\t\t:notch=\"false\"\n\t\t:transitionDuration=\"0\"\n\t>\n\t\t<template #opener>\n\t\t\t<div\n\t\t\t\tref=\"elRef\"\n\t\t\t\tv-top-focus.onupdate=\"isError\"\n\t\t\t\t:class=\"{\n\t\t\t\t\t'top-selector2' : true,\n\t\t\t\t\t'top-selector2-multiselect': multiselect,\n\t\t\t\t\t['top-size_' + size]: true,\n\t\t\t\t\t['top-disabled']: disabled,\n\t\t\t\t\t['top-forms-focusable']: !disabled,\n\t\t\t\t\t['top-error']: isError,\n\t\t\t\t}\"\n\t\t\t\t@keydown.up.down.enter.space.stop.prevent=\"($event.currentTarget as HTMLElement).click()\"\n\t\t\t\t@keydown.delete=\"model = []\"\n\t\t\t\ttabindex=\"0\"\n\t\t\t>\n\t\t\t\t<template v-if=\"multiselect\">\n\t\t\t\t\t<div class=\"top-selector2_activeItems\">\n\t\t\t\t\t\t<Selector2ItemMulti\n\t\t\t\t\t\t\tv-for=\"item of model as Array<Item>\"\n\t\t\t\t\t\t\t:id=\"item.id\"\n\t\t\t\t\t\t\t:name=\"item.name\"\n\t\t\t\t\t\t\t@delete=\"deleteItemById\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\n\t\t\t\t<span v-if=\"!multiselect\" class=\"top-selector2_activeName top-ellipsis\">\n\t\t\t\t\t{{ !Array.isArray(model) ? model.name : '' }}\n\t\t\t\t</span>\n\n\t\t\t\t<span\n\t\t\t\t\tv-if=\"addChanger && !multiselect && localItems.length > 1 && !disabled\"\n\t\t\t\t\tclass=\"top-changer top-changer-selector\"\n\t\t\t\t\t@click.stop=\"selectNextItem\"\n\t\t\t\t></span>\n\t\t\t</div>\n\t\t</template>\n\n\t\t<template #widget>\n\t\t\t<TopPopupWidgetInput\n\t\t\t\ttitle=\"Поиск\"\n\t\t\t\ticon=\"\"\n\t\t\t\tv-model=\"searchText\"\n\t\t\t\t:isLoading=\"isLoading\"\n\t\t\t\t:placeholder=\"!Array.isArray(model) && !multiselect && showSelectedInInput ? model.name : placeholder\"\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #contentList>\n\t\t\t<TopPopupListItem\n\t\t\t\tv-for=\"item of itemsForShow\"\n\t\t\t\t:class=\"{\n\t\t\t\t\t'top-active': !Array.isArray(model) && !multiselect && model.name === item.name\n\t\t\t\t}\"\n\t\t\t\t:key=\"item.id ?? undefined\"\n\t\t\t\t@click.stop=\"selectItem(item)\"\n\t\t\t>\n\t\t\t\t<slot\n\t\t\t\t\tv-if=\"$slots.item\"\n\t\t\t\t\tname=\"item\"\n\t\t\t\t\t:item=\"item\"\n\t\t\t\t></slot>\n\n\t\t\t\t<template\n\t\t\t\t\tv-else\n\t\t\t\t>\n\t\t\t\t\t{{ item.name }}\n\t\t\t\t</template>\n\t\t\t</TopPopupListItem>\n\n\t\t\t<TopPopupListItem\n\t\t\t\tv-if=\"!isLoading && !itemsForShow.length\"\n\t\t\t\ttype=\"regular\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.No_results }}\n\t\t\t</TopPopupListItem>\n\t\t</template>\n\t</TopPopup>\n</template>\n\n<style>\n.top-selector2 {\n\twidth: 180px;\n\tmin-height: var(--top-forms-base-height);\n\tbox-sizing: border-box;\n\tposition: relative;\n\tdisplay: flex;\n\toverflow: hidden;\n\tpadding: var(--top-padding-1) var(--top-forms-padding);\n\tcolor: var(--top-forms-placeholder-color);\n\n\tborder-radius: var(--top-radius-2);\n\tborder: 1px solid var(--top-forms-border-color);\n\tbackground: var(--top-forms-background-color);\n}\n\n.top-selector2-multiselect {\n\twidth: unset;\n\tmin-width: 180px;\n\tpadding: var(--top-padding-1);\n}\n\n.top-selector2.top-active {\n\t--top-forms-border-color: var(--top-forms-border-color-hover);\n}\n\n.top-selector2_activeItems {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tgap: var(--top-padding-1);\n\tmax-width: 100%;\n}\n\n.top-selector2_activeName {\n\twhite-space: nowrap;\n}\n\n.top-changer-selector {\n\ttransform: translateX(-16px);\n}\n</style>\n","import type { ComponentCustomProps } from 'vue';\n\nimport EditArea from './editArea/editArea.vue';\nimport EditInput from './editInput/editInput.vue';\nimport RadioGroup from './radioGroup/radioGroup.vue';\nimport Selector2 from './selector2/selector2.vue';\nimport Menu from './menu/menu.vue';\nimport Info from './info/info.vue';\n\nexport const TopEditArea = EditArea as typeof EditArea & ComponentCustomProps;\nexport const TopEditInput = EditInput as typeof EditInput & ComponentCustomProps;\nexport const TopRadioGroup = RadioGroup as typeof RadioGroup & ComponentCustomProps;\nexport const TopSelector2 = Selector2 as typeof Selector2 & ComponentCustomProps;\nexport const TopMenu = Menu as typeof Menu & ComponentCustomProps;\nexport const TopInfo = Info as typeof Info & ComponentCustomProps;\n"],"names":["isChanged","vue","localValue","props","cancelBtnText","submit","value","emit","intermediateValue","elRef","model","_a","item","_c","_b","items","isLoading","_nextOffset","apiRequest","res","cacheKey","indexWithError","_searchText","callAPIRequest","loadAppend","searchText","minLength","loadDebounce","forms","popupRef","API","useAPI","localItems","itemAll","itemSelected","itemsForShow","searchStringInvertKeyboard","utils_keyboard","searchString","isSelected","selectItem","newModel","getPopup","nextIndex","deleteItemById","id","isOpened","onScrollContentList","e","el","TopEditArea","_sfc_main$5","TopEditInput","_sfc_main$4","TopRadioGroup","_sfc_main$3","TopSelector2","_sfc_main$1","TopMenu","menu_vue_vue_type_style_index_0_lang","TopInfo","_sfc_main"],"mappings":"62BAsBAA,EAAAC,EAAA,SAAA,IAAAC,EAAA,QAAAC,EAAA,YAAA,EAEAC,EAAAH,EAAA,SAAA,IACCE,EAAA,iBAAA,GAEAA,EAAA,mBAAA,CAAAH,EAAA,MAAAG,EAAA,sBAEa,EAGdE,EAAAC,GAAA,CACCC,EAAA,SAAAD,CAAA,EAEAJ,EAAA,MAAAC,EAAA,wEAOC,CAGDD,EAAA,MAAAC,EAAA,44DClCAK,EAAA,MAAAL,EAAA,UAAgC,CAAA,mBAMhCI,EAAA,oBAAAC,EAAA,KAAA,+8BCFDC,EAAAR,EAAA,IAAA,IAAA,EAEAA,EAAA,MAAAS,EAAA,IAAA,gBACCC,EAAAR,EAAA,cAAA,MAAAQ,EAAA,KAAAC,GAAAA,EAAA,QAAAF,EAAA,SACCA,EAAA,QAAAG,GAAAC,EAAAX,EAAA,cAAA,YAAAW,EAAA,KAAA,YAAAD,EAAA,QAAA,uGAGuE,EAAA,CAAA,UAAA,EAAA,CAAA,y9BCbxE,MAAAE,EAAAd,EAAA,IAAA,CAAA,CAAA,EAKAe,EAAAf,EAAA,IAAA,EAAA,WAGAgB,uBAGCC,EAAA,OAAA,MAAA,oCAWA,IAAAC,EACAC,SAKCF,EAAA,QAAA,IAAA,mDAMC,OAAAC,EAQF,GAJAH,EAAA,MAAA,GACAG,EAAA,MAAAD,EAAA,KAAA,EACAF,EAAA,MAAA,GAEAG,EAAA,OAAA,oCAGC,QAAA,KAAA,0BAAA,QAEA,+DAID,GAAAE,IAAA,GAAA,sDAGC,4BAODF,4BASAD,EAAA,OAAA,OAAA,EACAA,EAAA,OAAA,OAAAI,EAEA,MAAAH,EAAA,MAAAI,EAAA,MAGAN,EAAAE,EAAA,WAEAJ,EAAA,MAAAI,EAAA,qBAaA,WAAAH,EAAA,MAAA,OAEAE,EAAA,OAAA,OAAAD,EACAC,EAAA,OAAA,OAAAI,EAEA,MAAAH,EAAA,MAAAI,EAAA,MAGAN,EAAAE,EAAA,WAEAJ,EAAA,MAAAA,EAAA,MAAA,OAAAI,EAAA,MAAA,8BA+BD,MAAA,CAAO,MAAAJ,EACN,UAAAC,EACA,WAAAQ,sCAhBAC,EAAA,OAAAC,iCAQCC,EAAA,yjCC7GHF,EAAAxB,EAAA,IAAA,EAAA,UAGK,KAAA2B,EAAA,QAAA,EAAA,OAAA,KAOLC,EAAA5B,EAAA,IAAA,IAAA,EAKAQ,EAAAR,EAAA,IAAA,IAAA,eAMC,OAAAU,EAAAkB,EAAA,QAAA,YAAAlB,EAAA,oDAKAV,EAAA,wBACa,IAAA,CAEXS,EAAA,MAAAP,EAAA,YAAA,CAAA,EAAA,CAAA,GAAA,KAAA,KAAA,EAAA,mBAMH,MAAA2B,EAAAC,EAAA5B,EAAA,WAAAA,EAAA,UAAAA,EAAA,QAAA,EAKA6B,EAAA/B,EAAA,SAAA,IAAA,oDAIEc,EAAA,KAAAkB,CAAA,EAGD9B,EAAA,MAAA,QAAAS,GAAAG,EAAA,KAAA,CAAA,GAAAH,CAAA,CAAA,CAAA,EAEAG,CAAO,CAAA,+IAgBNL,EAAA,MAAA,KAAAwB,GAAAA,EAAA,KAAAtB,EAAA,EAAA,oBASFuB,EAAAlC,EAAA,SAAA,IAAA,+BAECmC,EAAAC,EAAA,qBAAAC,CAAA,mIAaGvB,EAAA,QAAAH,CAAA,EAEAG,EAAA,KAAAH,CAAA,EAEF,CAAA,2BAKDT,EAAA,sBAAAsB,EAAA,QAAA,CAAAV,EAAA,QAAAA,EAAA,CAAA,EAAA,KAAA,YAAA,IAAAuB,gCAOmB,CAAA,EAInBnC,EAAA,cACCY,EAAAA,EAAA,OAAAH,GAAA,CAAA2B,EAAA3B,CAAA,CAAA,GAGDG,CAAO,CAAA,6BAURd,EAAA,MAAA6B,EAAA,UAAA,IAAA,0BACiC,CAAA,EAQjC,MAAAU,EAAA,MAAA5B,GAAA,SACC,GAAAT,EAAA,YAAA,CAGC,4BAAAoC,EAAA3B,CAAA,iCAKCI,EAAA,MAAA,wCAKDN,EAAA,MAAA+B,EAEAb,EAAA,KAAA,MAAA,WACCjB,EAAA+B,EAAA,IAAA,MAAA/B,EAAA,QAGAc,EAAA,QACCA,EAAA,MAAA,GACAK,EAAA,MAAA,MAAA,CAAA,iCAIAnB,EAAA+B,EAAA,IAAA,MAAA/B,EAAA,qHAIAc,EAAA,QACCU,EAAA,MAAA,OAIChC,EAAA,aACCa,EAAA,MAAA,KAJDS,EAAA,MAAA,GACAK,EAAA,MAAA,MAAA,CAAA,GAMF,CAAA,CAEF,MAGAL,EAAA,QACCA,EAAA,MAAA,GACAK,EAAA,MAAA,MAAA,CAAA,GAGD,KAAA,UAAAlB,CAAA,IAAA,KAAA,UAAAF,EAAA,KAAA,IACCA,EAAA,MAAA,CAAA,GAAAE,CAAA,IAGDE,EAAA4B,EAAA,IAAA,MAAA5B,EAAA,4CAUA,MAAA6B,2CAAA,GAAAX,EAAA,MAAA,OACAtB,EAAA,MAAA,CAAA,GAAAsB,EAAA,MAAAW,CAAA,CAAA,CAA+C,GAQjDC,EAAA,MAAAC,GAAA,0BAEEnC,EAAA,MAAAA,EAAA,MAAA,OAAAE,GAAAA,EAAA,KAAAiC,CAAA,yBAGClC,EAAA+B,EAAA,IAAA,MAAA/B,EAAA,gBAA2B,CAAA,IAK9BmC,EAAA7C,EAAA,IAAA,EAAA,EAEAE,EAAA,aACCF,EAAA,MAAA6C,EAAA,IAAA,CACCA,EAAA,yCAGA,CAAA,EAID7C,EAAA,MAAAwB,EAAA,IAAAK,EAAA,qBAAAL,EAAA,KAAA,CAAA,GAGD,MAAAsB,GAAAC,GAAA,CACC,MAAAC,EAAAD,EAAA,OAEAC,EAAA,WAAAA,EAAA,aAAAA,EAAA,cAAA,qrGCxPMC,EAAAC,EACAC,EAAAC,EACAC,EAAAC,EACAC,EAAAC,EACAC,EAAAC,EAAA,UACAC,GAAAC"}
@@ -1,2 +0,0 @@
1
- export * from '../components/formsExt/formsExt'
2
- export {}