@topvisor/ui 1.0.20-selector2-3 → 1.0.20-selector2-4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.chunks/datepicker-BbASdlXo.es.js +44 -0
- package/.chunks/datepicker-BbASdlXo.es.js.map +1 -0
- package/.chunks/datepicker-CSpzAz1a.amd.js +2 -0
- package/.chunks/datepicker-CSpzAz1a.amd.js.map +1 -0
- package/.chunks/forms-BciWy0wX.es.js +1992 -0
- package/.chunks/forms-BciWy0wX.es.js.map +1 -0
- package/.chunks/forms-Dh0QU6P9.amd.js +3 -0
- package/.chunks/forms-Dh0QU6P9.amd.js.map +1 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CZqS-tRD.es.js +181 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CZqS-tRD.es.js.map +1 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-Del8bjSk.amd.js +2 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-Del8bjSk.amd.js.map +1 -0
- package/.chunks/menu.vue_vue_type_style_index_0_lang-B8-UPDGJ.amd.js +2 -0
- package/.chunks/menu.vue_vue_type_style_index_0_lang-B8-UPDGJ.amd.js.map +1 -0
- package/.chunks/menu.vue_vue_type_style_index_0_lang-yNOWbXpd.es.js +109 -0
- package/.chunks/menu.vue_vue_type_style_index_0_lang-yNOWbXpd.es.js.map +1 -0
- package/.chunks/notice-DEcP2RCJ.amd.js +4 -0
- package/.chunks/notice-DEcP2RCJ.amd.js.map +1 -0
- package/.chunks/notice-DQSQs6yC.es.js +175 -0
- package/.chunks/notice-DQSQs6yC.es.js.map +1 -0
- package/.chunks/popup-BdJJx21M.amd.js +2 -0
- package/.chunks/popup-BdJJx21M.amd.js.map +1 -0
- package/.chunks/popup-D-6PIelY.es.js +416 -0
- package/.chunks/popup-D-6PIelY.es.js.map +1 -0
- package/.chunks/punycode.es6-C2yitnNb.amd.js +2 -0
- package/.chunks/punycode.es6-C2yitnNb.amd.js.map +1 -0
- package/.chunks/punycode.es6-CNI-zL6U.es.js +134 -0
- package/.chunks/punycode.es6-CNI-zL6U.es.js.map +1 -0
- package/.chunks/store-CX_6ZXhO.es.js +29 -0
- package/.chunks/store-CX_6ZXhO.es.js.map +1 -0
- package/.chunks/store-esTid5oI.amd.js +2 -0
- package/.chunks/store-esTid5oI.amd.js.map +1 -0
- package/.chunks/utils-9b7woobj.es.js +338 -0
- package/.chunks/utils-9b7woobj.es.js.map +1 -0
- package/.chunks/utils-BvHwHAyQ.es.js +225 -0
- package/.chunks/utils-BvHwHAyQ.es.js.map +1 -0
- package/.chunks/utils-CPty_L5T.amd.js +2 -0
- package/.chunks/utils-CPty_L5T.amd.js.map +1 -0
- package/.chunks/utils-DAfofcEq.amd.js +2 -0
- package/.chunks/utils-DAfofcEq.amd.js.map +1 -0
- package/README.md +66 -25
- package/assets/charts.css +1 -0
- package/assets/core.css +1 -0
- package/assets/forms.css +1 -0
- package/assets/formsExt.css +1 -0
- package/assets/layout.css +1 -0
- package/assets/listItem.css +1 -0
- package/assets/menu.css +1 -0
- package/assets/notice.css +1 -0
- package/assets/popup.css +1 -0
- package/assets/project.css +1 -0
- package/assets/tabs.css +1 -0
- package/assets/tabsView.css +1 -0
- package/assets/themes/dark-th.css +1 -0
- package/assets/themes/dark.css +1 -0
- package/assets/themes/light.css +1 -0
- package/charts/charts.amd.js +2 -0
- package/charts/charts.amd.js.map +1 -0
- package/charts/charts.d.ts +2 -0
- package/charts/charts.js +178 -0
- package/charts/charts.js.map +1 -0
- package/components/charts/charts.d.ts +5 -0
- package/components/charts/miniChart/miniChart.d.ts +92 -0
- package/components/charts/miniChart/miniChart.vue.d.ts +15 -0
- package/components/charts/miniChart/stories/dummy.d.ts +13 -0
- package/components/charts/miniChart/utils/consts.d.ts +8 -0
- package/components/charts/miniCharts/miniCharts.d.ts +20 -0
- package/components/charts/miniCharts/miniCharts.vue.d.ts +32 -0
- package/components/charts/miniCharts/stories/dummy.d.ts +6 -0
- package/components/core/notice/item/item.vue.d.ts +10 -0
- package/components/core/notice/item/types.d.ts +61 -0
- package/components/core/notice/notice.vue.d.ts +5 -0
- package/components/core/notice/types.d.ts +1 -0
- package/components/core/notice/utils.d.ts +27 -0
- package/components/dialog/dialog/composables/asyncDialogHandle.d.ts +51 -0
- package/components/dialog/dialog/composables/dialogHandle.d.ts +108 -0
- package/components/dialog/dialog/composables/types.d.ts +11 -0
- package/components/dialog/dialog/composables/utils.d.ts +21 -0
- package/components/dialog/dialog/dialog.vue.d.ts +28 -0
- package/components/dialog/dialog/dialogs/dialogs.vue.d.ts +10 -0
- package/components/dialog/dialog/page/page.vue.d.ts +19 -0
- package/components/dialog/dialog/page/types.d.ts +72 -0
- package/components/dialog/dialog/pageComponent/pageComponent.vue.d.ts +6 -0
- package/components/dialog/dialog/pageComponent/types.d.ts +18 -0
- package/components/dialog/dialog/stories/autoload.d.ts +2 -0
- package/components/dialog/dialog/stories/dialog_example/pages/utils.d.ts +7 -0
- package/components/dialog/dialog/types.d.ts +58 -0
- package/components/dialog/dialog.d.ts +6 -0
- package/components/dialog/lib/types.d.ts +21 -0
- package/components/dialog/lib/utils.d.ts +14 -0
- package/components/dialog/lib/utils.globalEvents.d.ts +8 -0
- package/components/dialog/lib/worker.d.ts +60 -0
- package/components/forms/avatar/avatar.d.ts +38 -0
- package/components/forms/avatar/avatar.vue.d.ts +10 -0
- package/components/forms/button/button.vue.d.ts +25 -0
- package/components/forms/button/types.d.ts +53 -0
- package/components/forms/checkbox/checkbox.d.ts +21 -0
- package/components/forms/checkbox/checkbox.vue.d.ts +27 -0
- package/components/forms/controlLabel/controlLabel.d.ts +4 -0
- package/components/forms/controlLabel/controlLabel.vue.d.ts +19 -0
- package/components/forms/forms.d.ts +27 -0
- package/components/forms/helpers.d.ts +10 -0
- package/components/forms/hint/hint.d.ts +8 -0
- package/components/forms/hint/hint.vue.d.ts +4 -0
- package/components/forms/input/input.d.ts +26 -0
- package/components/forms/input/input.vue.d.ts +27 -0
- package/components/forms/inputDate/datepicker.d.ts +5 -0
- package/components/forms/inputDate/inputDate.d.ts +3 -0
- package/components/forms/inputDate/inputDate.vue.d.ts +12 -0
- package/components/forms/inputRange/inputRange.d.ts +2 -0
- package/components/forms/inputRange/inputRange.vue.d.ts +19 -0
- package/components/forms/loadbar/loadbar.vue.d.ts +3 -0
- package/components/forms/radio/radio.d.ts +14 -0
- package/components/forms/radio/radio.vue.d.ts +23 -0
- package/components/forms/select/select.d.ts +51 -0
- package/components/forms/select/select.vue.d.ts +17 -0
- package/components/forms/select/stories/exampleOptions.d.ts +5 -0
- package/components/forms/switcher/switcher.d.ts +21 -0
- package/components/forms/switcher/switcher.vue.d.ts +23 -0
- package/components/forms/textarea/textarea.d.ts +33 -0
- package/components/forms/textarea/textarea.vue.d.ts +11 -0
- package/components/formsExt/editArea/editArea.d.ts +33 -0
- package/components/formsExt/editArea/editArea.vue.d.ts +18 -0
- package/components/formsExt/editInput/editInput.d.ts +16 -0
- package/components/formsExt/editInput/editInput.vue.d.ts +8 -0
- package/components/formsExt/formsExt.d.ts +13 -0
- package/components/formsExt/info/info.vue.d.ts +20 -0
- package/components/formsExt/info/types.d.ts +21 -0
- package/components/formsExt/menu/menu.d.ts +37 -0
- package/components/formsExt/menu/menu.vue.d.ts +16 -0
- package/components/formsExt/menu/stories/items.d.ts +3 -0
- package/components/formsExt/radioGroup/radioGroup.d.ts +21 -0
- package/components/formsExt/radioGroup/radioGroup.vue.d.ts +19 -0
- package/components/formsExt/selector2/api.d.ts +8 -0
- package/components/formsExt/selector2/itemMulti.vue.d.ts +8 -0
- package/components/formsExt/selector2/selector2.d.ts +130 -0
- package/components/formsExt/selector2/selector2.vue.d.ts +210 -0
- package/components/formsExt/selector2/stories/dummyAPIRequest.d.ts +10 -0
- package/components/layout/islandRows/islandRows.vue.d.ts +17 -0
- package/components/layout/islandRows/islandRowsRow/islandRowsRow.vue.d.ts +18 -0
- package/components/layout/islandRows/islandRowsRow/types.d.ts +2 -0
- package/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue.d.ts +18 -0
- package/components/layout/islandRows/types.d.ts +10 -0
- package/components/layout/layout.d.ts +9 -0
- package/components/layout/rows/rows.vue.d.ts +21 -0
- package/components/layout/rows/types.d.ts +6 -0
- package/components/popup/alert/alert.d.ts +8 -0
- package/components/popup/alert/alert.vue.d.ts +31 -0
- package/components/popup/confirm/confirm.d.ts +21 -0
- package/components/popup/confirm/confirm.vue.d.ts +33 -0
- package/components/popup/lib/popup.d.ts +83 -0
- package/components/popup/lib/popup.globalEvents.d.ts +26 -0
- package/components/popup/lib/worker.d.ts +75 -0
- package/components/popup/lib/worker.globalEvents.d.ts +19 -0
- package/components/popup/popup/listItem.vue.d.ts +22 -0
- package/components/popup/popup/opener.vue.d.ts +23 -0
- package/components/popup/popup/popup.d.ts +101 -0
- package/components/popup/popup/popup.vue.d.ts +40 -0
- package/components/popup/popup/widgetInput.vue.d.ts +17 -0
- package/components/popup/popup.d.ts +15 -0
- package/components/popup/prompt/prompt.d.ts +21 -0
- package/components/popup/prompt/prompt.vue.d.ts +33 -0
- package/components/popup/worker.d.ts +1 -0
- package/components/project/project.d.ts +15 -0
- package/components/project/selectorCompetitors/composables.d.ts +4 -0
- package/components/project/selectorCompetitors/selectorCompetitors.d.ts +23 -0
- package/components/project/selectorCompetitors/selectorCompetitors.vue.d.ts +14 -0
- package/components/project/selectorCompetitors/stories/items.d.ts +3 -0
- package/components/project/selectorCompetitors/types/competitor.d.ts +7 -0
- package/components/project/selectorRegion/composables/compare.d.ts +12 -0
- package/components/project/selectorRegion/composables/selectRegion.d.ts +14 -0
- package/components/project/selectorRegion/composables/selectSearcher.d.ts +13 -0
- package/components/project/selectorRegion/composables/selectorRegion.d.ts +25 -0
- package/components/project/selectorRegion/selectorRegion.d.ts +182 -0
- package/components/project/selectorRegion/selectorRegion.vue.d.ts +25 -0
- package/components/project/selectorRegion/stories/searchers.d.ts +3 -0
- package/components/project/selectorRegion/utils/consts.d.ts +18 -0
- package/components/project/selectorRegion/utils/utils.d.ts +23 -0
- package/components/project/tagSelector/popupListItem/tagPopupListItem.vue.d.ts +20 -0
- package/components/project/tagSelector/popupListItem/types.d.ts +33 -0
- package/components/project/tagSelector/popupOpener/popupOpener.vue.d.ts +27 -0
- package/components/project/tagSelector/popupOpener/types.d.ts +62 -0
- package/components/project/tagSelector/tagIcon/tagIcon.vue.d.ts +4 -0
- package/components/project/tagSelector/tagIcon/types.d.ts +21 -0
- package/components/project/tagSelector/tagSelector.vue.d.ts +37 -0
- package/components/project/tagSelector/tagsDefaults.d.ts +3 -0
- package/components/project/tagSelector/types.d.ts +138 -0
- package/components/project/tagSelector/utils/el.d.ts +19 -0
- package/components/project/tagSelector/utils/utils.d.ts +14 -0
- package/components/tabs/tabs/content.vue.d.ts +19 -0
- package/components/tabs/tabs/tab.vue.d.ts +19 -0
- package/components/tabs/tabs/tabs.d.ts +19 -0
- package/components/tabs/tabs/tabs.vue.d.ts +21 -0
- package/components/tabs/tabs.d.ts +7 -0
- package/components/tabsView/tabsView/menu.vue.d.ts +32 -0
- package/components/tabsView/tabsView/menuDelimeter.vue.d.ts +3 -0
- package/components/tabsView/tabsView/menuItem.vue.d.ts +23 -0
- package/components/tabsView/tabsView/menuTitle.vue.d.ts +20 -0
- package/components/tabsView/tabsView/store.d.ts +192 -0
- package/components/tabsView/tabsView/tabsView.d.ts +98 -0
- package/components/tabsView/tabsView/tabsView.vue.d.ts +34 -0
- package/components/tabsView/tabsView/utils.d.ts +11 -0
- package/components/tabsView/tabsView.d.ts +7 -0
- package/core/app.amd.js +2 -0
- package/core/app.amd.js.map +1 -0
- package/core/app.d.ts +8 -0
- package/core/app.js +402 -0
- package/core/app.js.map +1 -0
- package/core/core/core.d.ts +113 -0
- package/core/core/events/resize.d.ts +16 -0
- package/core/core/events.d.ts +15 -0
- package/core/core/options.d.ts +46 -0
- package/core/core/preloaders.d.ts +19 -0
- package/core/core/state.d.ts +49 -0
- package/core/directives/data.d.ts +10 -0
- package/core/directives/focus.d.ts +10 -0
- package/core/directives/scrollIntoView.d.ts +3 -0
- package/core/directives/scrollShadow.d.ts +15 -0
- package/core/directives/sticky.d.ts +10 -0
- package/core/directives/swimUp.d.ts +15 -0
- package/core/directives/tooltip.d.ts +10 -0
- package/core/plugins/core.d.ts +60 -0
- package/core/plugins/i18n.d.ts +97 -0
- package/core/plugins/piniaTPA.d.ts +17 -0
- package/core/utils/check.d.ts +26 -0
- package/core/utils/clipboard.d.ts +12 -0
- package/core/utils/date.d.ts +52 -0
- package/core/utils/device.d.ts +50 -0
- package/core/utils/dom.d.ts +94 -0
- package/core/utils/image.d.ts +16 -0
- package/core/utils/keyboard.d.ts +8 -0
- package/core/utils/lodash.d.ts +6 -0
- package/core/utils/number.d.ts +17 -0
- package/core/utils/price.d.ts +10 -0
- package/core/utils/route.d.ts +33 -0
- package/core/utils/scroll.d.ts +32 -0
- package/core/utils/searchers.d.ts +38 -0
- package/core/utils/store/localStorage.d.ts +6 -0
- package/core/utils/store/plugin.d.ts +24 -0
- package/core/utils/store/store.d.ts +34 -0
- package/core/utils/store.d.ts +6 -0
- package/core/utils/string.d.ts +86 -0
- package/core/utils/system.d.ts +25 -0
- package/core/utils/url.d.ts +36 -0
- package/dialog/dialog.amd.js +2 -0
- package/dialog/dialog.amd.js.map +1 -0
- package/dialog/dialog.d.ts +2 -0
- package/dialog/dialog.js +193 -0
- package/dialog/dialog.js.map +1 -0
- package/forms/forms.amd.js +2 -0
- package/forms/forms.amd.js.map +1 -0
- package/forms/forms.d.ts +2 -0
- package/forms/forms.js +17 -0
- package/forms/forms.js.map +1 -0
- package/forms/helpers.amd.js +2 -0
- package/forms/helpers.amd.js.map +1 -0
- package/forms/helpers.d.ts +2 -0
- package/forms/helpers.js +10 -0
- package/forms/helpers.js.map +1 -0
- package/formsExt/formsExt.amd.js +2 -0
- package/formsExt/formsExt.amd.js.map +1 -0
- package/formsExt/formsExt.d.ts +2 -0
- package/formsExt/formsExt.js +485 -0
- package/formsExt/formsExt.js.map +1 -0
- package/layout/layout.amd.js +2 -0
- package/layout/layout.amd.js.map +1 -0
- package/layout/layout.d.ts +2 -0
- package/layout/layout.js +62 -0
- package/layout/layout.js.map +1 -0
- package/package.json +1 -55
- package/popup/popup.amd.js +2 -0
- package/popup/popup.amd.js.map +1 -0
- package/popup/popup.d.ts +2 -0
- package/popup/popup.js +243 -0
- package/popup/popup.js.map +1 -0
- package/popup/worker.amd.js +2 -0
- package/popup/worker.amd.js.map +1 -0
- package/popup/worker.d.ts +2 -0
- package/popup/worker.js +129 -0
- package/popup/worker.js.map +1 -0
- package/project/project.amd.js +2 -0
- package/project/project.amd.js.map +1 -0
- package/project/project.d.ts +2 -0
- package/project/project.js +975 -0
- package/project/project.js.map +1 -0
- package/tabs/tabs.amd.js +2 -0
- package/tabs/tabs.amd.js.map +1 -0
- package/tabs/tabs.d.ts +2 -0
- package/tabs/tabs.js +81 -0
- package/tabs/tabs.js.map +1 -0
- package/tabsView/tabsView.amd.js +2 -0
- package/tabsView/tabsView.amd.js.map +1 -0
- package/tabsView/tabsView.d.ts +2 -0
- package/tabsView/tabsView.js +306 -0
- package/tabsView/tabsView.js.map +1 -0
- package/utils/check.amd.js +2 -0
- package/utils/check.amd.js.map +1 -0
- package/utils/check.d.ts +2 -0
- package/utils/check.js +26 -0
- package/utils/check.js.map +1 -0
- package/utils/clipboard.amd.js +6 -0
- package/utils/clipboard.amd.js.map +1 -0
- package/utils/clipboard.d.ts +2 -0
- package/utils/clipboard.js +33 -0
- package/utils/clipboard.js.map +1 -0
- package/utils/date.amd.js +2 -0
- package/utils/date.amd.js.map +1 -0
- package/utils/date.d.ts +2 -0
- package/utils/date.js +11 -0
- package/utils/date.js.map +1 -0
- package/utils/device.amd.js +2 -0
- package/utils/device.amd.js.map +1 -0
- package/utils/device.d.ts +2 -0
- package/utils/device.js +15 -0
- package/utils/device.js.map +1 -0
- package/utils/dom.amd.js +2 -0
- package/utils/dom.amd.js.map +1 -0
- package/utils/dom.d.ts +6 -0
- package/utils/dom.js +75 -0
- package/utils/dom.js.map +1 -0
- package/utils/image.amd.js +12 -0
- package/utils/image.amd.js.map +1 -0
- package/utils/image.d.ts +2 -0
- package/utils/image.js +23 -0
- package/utils/image.js.map +1 -0
- package/utils/keyboard.amd.js +2 -0
- package/utils/keyboard.amd.js.map +1 -0
- package/utils/keyboard.d.ts +2 -0
- package/utils/keyboard.js +12 -0
- package/utils/keyboard.js.map +1 -0
- package/utils/lodash.amd.js +2 -0
- package/utils/lodash.amd.js.map +1 -0
- package/utils/lodash.d.ts +2 -0
- package/utils/lodash.js +9 -0
- package/utils/lodash.js.map +1 -0
- package/utils/number.amd.js +2 -0
- package/utils/number.amd.js.map +1 -0
- package/utils/number.d.ts +2 -0
- package/utils/number.js +13 -0
- package/utils/number.js.map +1 -0
- package/utils/price.amd.js +2 -0
- package/utils/price.amd.js.map +1 -0
- package/utils/price.d.ts +2 -0
- package/utils/price.js +10 -0
- package/utils/price.js.map +1 -0
- package/utils/route.amd.js +2 -0
- package/utils/route.amd.js.map +1 -0
- package/utils/route.d.ts +2 -0
- package/utils/route.js +31 -0
- package/utils/route.js.map +1 -0
- package/utils/scroll.amd.js +2 -0
- package/utils/scroll.amd.js.map +1 -0
- package/utils/scroll.d.ts +2 -0
- package/utils/scroll.js +45 -0
- package/utils/scroll.js.map +1 -0
- package/utils/searchers.amd.js +2 -0
- package/utils/searchers.amd.js.map +1 -0
- package/utils/searchers.d.ts +2 -0
- package/utils/searchers.js +130 -0
- package/utils/searchers.js.map +1 -0
- package/utils/store.amd.js +2 -0
- package/utils/store.amd.js.map +1 -0
- package/utils/store.d.ts +2 -0
- package/utils/store.js +7 -0
- package/utils/store.js.map +1 -0
- package/utils/string.amd.js +2 -0
- package/utils/string.amd.js.map +1 -0
- package/utils/string.d.ts +2 -0
- package/utils/string.js +139 -0
- package/utils/string.js.map +1 -0
- package/utils/system.amd.js +2 -0
- package/utils/system.amd.js.map +1 -0
- package/utils/system.d.ts +2 -0
- package/utils/system.js +29 -0
- package/utils/system.js.map +1 -0
- package/utils/url.amd.js +3 -0
- package/utils/url.amd.js.map +1 -0
- package/utils/url.d.ts +2 -0
- package/utils/url.js +48 -0
- package/utils/url.js.map +1 -0
- package/.idea/.gitignore +0 -11
- package/.idea/codeStyles/Project.xml +0 -205
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/externalDependencies.xml +0 -6
- package/.idea/inspectionProfiles/Disabled.xml +0 -824
- package/.idea/inspectionProfiles/Project_Default.xml +0 -33
- package/.idea/php.xml +0 -19
- package/.idea/vcs.xml +0 -6
- package/.storybook/TopTheme.ts +0 -115
- package/.storybook/TopThemeManager.ts +0 -53
- package/.storybook/main.ts +0 -51
- package/.storybook/manager.ts +0 -25
- package/.storybook/preview-head.html +0 -21
- package/.storybook/preview.ts +0 -47
- package/.storybook/vue/coreDecorator.ts +0 -76
- package/.storybook/vue/vModelDecorator.ts +0 -46
- package/.versionrc.json +0 -16
- package/.vscode/extensions.json +0 -11
- package/.vscode/keybindings.example.json +0 -121
- package/.vscode/settings.json +0 -45
- package/CHANGELOG.md +0 -175
- package/NPM.md +0 -25
- package/PUBLISH.md +0 -63
- package/STORYBOOK.md +0 -43
- package/USE_IN_PROJECT.md +0 -32
- package/build/afterBuild.sh +0 -11
- package/build/cssModules.ts +0 -39
- package/build/genDocs.sh +0 -19
- package/build/plugin/amdFix.ts +0 -83
- package/build/plugin/autoloadCSS.ts +0 -155
- package/build/rollup.config.ts +0 -37
- package/public/README.md +0 -82
- package/src/components/charts/charts.ts +0 -8
- package/src/components/charts/miniChart/miniChart.stories.ts +0 -67
- package/src/components/charts/miniChart/miniChart.ts +0 -110
- package/src/components/charts/miniChart/miniChart.vue +0 -158
- package/src/components/charts/miniChart/stories/README.md +0 -9
- package/src/components/charts/miniChart/stories/dummy.ts +0 -25
- package/src/components/charts/miniChart/styles/miniChart.css +0 -87
- package/src/components/charts/miniChart/utils/consts.ts +0 -9
- package/src/components/charts/miniCharts/miniCharts.stories.ts +0 -76
- package/src/components/charts/miniCharts/miniCharts.ts +0 -24
- package/src/components/charts/miniCharts/miniCharts.vue +0 -128
- package/src/components/charts/miniCharts/stories/README.md +0 -18
- package/src/components/charts/miniCharts/stories/dummy.ts +0 -70
- package/src/components/charts/miniCharts/stories/overview.vue +0 -139
- package/src/components/charts/miniCharts/styles/miniCharts.css +0 -32
- package/src/components/component.ts +0 -130
- package/src/components/core/core.mdx +0 -7
- package/src/components/core/notice/item/item.vue +0 -145
- package/src/components/core/notice/item/style.css +0 -70
- package/src/components/core/notice/item/types.ts +0 -71
- package/src/components/core/notice/notice.stories.ts +0 -105
- package/src/components/core/notice/notice.vue +0 -69
- package/src/components/core/notice/stories/README.md +0 -34
- package/src/components/core/notice/types.ts +0 -1
- package/src/components/core/notice/utils.ts +0 -115
- package/src/components/dialog/dialog/Dialog (code).mdx +0 -61
- package/src/components/dialog/dialog/composables/asyncDialogHandle.ts +0 -99
- package/src/components/dialog/dialog/composables/dialogHandle.ts +0 -176
- package/src/components/dialog/dialog/composables/types.ts +0 -12
- package/src/components/dialog/dialog/composables/utils.ts +0 -39
- package/src/components/dialog/dialog/dialog.stories.ts +0 -83
- package/src/components/dialog/dialog/dialog.vue +0 -74
- package/src/components/dialog/dialog/dialogs/dialogs.vue +0 -58
- package/src/components/dialog/dialog/page/page.vue +0 -86
- package/src/components/dialog/dialog/page/types.ts +0 -84
- package/src/components/dialog/dialog/page.stories.ts +0 -27
- package/src/components/dialog/dialog/pageComponent/pageComponent.vue +0 -57
- package/src/components/dialog/dialog/pageComponent/types.ts +0 -21
- package/src/components/dialog/dialog/pageComponent.stories.ts +0 -27
- package/src/components/dialog/dialog/stories/README.md +0 -117
- package/src/components/dialog/dialog/stories/autoload.ts +0 -12
- package/src/components/dialog/dialog/stories/dialog_example/dialog_example.vue +0 -73
- package/src/components/dialog/dialog/stories/dialog_example/pages/async.vue +0 -57
- package/src/components/dialog/dialog/stories/dialog_example/pages/default.vue +0 -64
- package/src/components/dialog/dialog/stories/dialog_example/pages/headerButtons.vue +0 -56
- package/src/components/dialog/dialog/stories/dialog_example/pages/utils.ts +0 -26
- package/src/components/dialog/dialog/stories/dialog_example/pages/withoutCache.vue +0 -64
- package/src/components/dialog/dialog/stories/page/README.md +0 -24
- package/src/components/dialog/dialog/stories/pageComponent/README.md +0 -12
- package/src/components/dialog/dialog/style/dialog.css +0 -316
- package/src/components/dialog/dialog/style/dialog.m.css +0 -40
- package/src/components/dialog/dialog/style/dialog.pc.css +0 -73
- package/src/components/dialog/dialog/style/modern/dialog.css +0 -12
- package/src/components/dialog/dialog/style/modern/dialog.pc.css +0 -3
- package/src/components/dialog/dialog/types.ts +0 -69
- package/src/components/dialog/dialog.ts +0 -7
- package/src/components/dialog/lib/types.ts +0 -26
- package/src/components/dialog/lib/utils.globalEvents.ts +0 -175
- package/src/components/dialog/lib/utils.ts +0 -525
- package/src/components/dialog/lib/worker.ts +0 -273
- package/src/components/forms/README.mdx +0 -10
- package/src/components/forms/avatar/avatar.stories.ts +0 -38
- package/src/components/forms/avatar/avatar.ts +0 -40
- package/src/components/forms/avatar/avatar.vue +0 -77
- package/src/components/forms/avatar/stories/overview.vue +0 -28
- package/src/components/forms/button/button.stories.ts +0 -118
- package/src/components/forms/button/button.vue +0 -111
- package/src/components/forms/button/stories/README.md +0 -9
- package/src/components/forms/button/stories/overview.vue +0 -33
- package/src/components/forms/button/style/button.css +0 -139
- package/src/components/forms/button/style/style-outline.css +0 -129
- package/src/components/forms/button/style/style-soft.css +0 -89
- package/src/components/forms/button/style/style-transparent.css +0 -39
- package/src/components/forms/button/types.ts +0 -66
- package/src/components/forms/checkbox/checkbox.stories.ts +0 -33
- package/src/components/forms/checkbox/checkbox.ts +0 -21
- package/src/components/forms/checkbox/checkbox.vue +0 -114
- package/src/components/forms/checkbox/stories/overview.vue +0 -171
- package/src/components/forms/controlLabel/controlLabel.stories.ts +0 -32
- package/src/components/forms/controlLabel/controlLabel.ts +0 -4
- package/src/components/forms/controlLabel/controlLabel.vue +0 -54
- package/src/components/forms/forms.ts +0 -40
- package/src/components/forms/helpers.ts +0 -11
- package/src/components/forms/hint/hint.stories.ts +0 -41
- package/src/components/forms/hint/hint.ts +0 -8
- package/src/components/forms/hint/hint.vue +0 -32
- package/src/components/forms/input/input.stories.ts +0 -31
- package/src/components/forms/input/input.ts +0 -37
- package/src/components/forms/input/input.vue +0 -187
- package/src/components/forms/input/stories/overview.vue +0 -61
- package/src/components/forms/inputDate/datepicker.css +0 -246
- package/src/components/forms/inputDate/datepicker.ts +0 -101
- package/src/components/forms/inputDate/inputDate.stories.ts +0 -41
- package/src/components/forms/inputDate/inputDate.ts +0 -5
- package/src/components/forms/inputDate/inputDate.vue +0 -133
- package/src/components/forms/inputDate/stories/overview.vue +0 -35
- package/src/components/forms/inputRange/inputRange.stories.ts +0 -53
- package/src/components/forms/inputRange/inputRange.ts +0 -3
- package/src/components/forms/inputRange/inputRange.vue +0 -39
- package/src/components/forms/inputRange/stories/overview.vue +0 -129
- package/src/components/forms/loadbar/loadbar.stories.ts +0 -17
- package/src/components/forms/loadbar/loadbar.vue +0 -37
- package/src/components/forms/radio/radio.stories.ts +0 -34
- package/src/components/forms/radio/radio.ts +0 -15
- package/src/components/forms/radio/radio.vue +0 -97
- package/src/components/forms/radio/stories/overview.vue +0 -79
- package/src/components/forms/select/select.stories.ts +0 -68
- package/src/components/forms/select/select.ts +0 -60
- package/src/components/forms/select/select.vue +0 -298
- package/src/components/forms/select/stories/exampleOptions.ts +0 -61
- package/src/components/forms/select/stories/overview.vue +0 -72
- package/src/components/forms/switcher/stories/overview.vue +0 -139
- package/src/components/forms/switcher/switcher.stories.ts +0 -33
- package/src/components/forms/switcher/switcher.ts +0 -22
- package/src/components/forms/switcher/switcher.vue +0 -118
- package/src/components/forms/textarea/stories/overview.vue +0 -62
- package/src/components/forms/textarea/textarea.stories.ts +0 -33
- package/src/components/forms/textarea/textarea.ts +0 -38
- package/src/components/forms/textarea/textarea.vue +0 -121
- package/src/components/formsExt/README.mdx +0 -5
- package/src/components/formsExt/editArea/editArea.stories.ts +0 -41
- package/src/components/formsExt/editArea/editArea.ts +0 -41
- package/src/components/formsExt/editArea/editArea.vue +0 -195
- package/src/components/formsExt/editArea/stories/README.md +0 -21
- package/src/components/formsExt/editArea/stories/overview.vue +0 -67
- package/src/components/formsExt/editInput/editInput.stories.ts +0 -36
- package/src/components/formsExt/editInput/editInput.ts +0 -20
- package/src/components/formsExt/editInput/editInput.vue +0 -54
- package/src/components/formsExt/editInput/stories/overview.vue +0 -54
- package/src/components/formsExt/formsExt.ts +0 -15
- package/src/components/formsExt/info/info.stories.ts +0 -35
- package/src/components/formsExt/info/info.vue +0 -84
- package/src/components/formsExt/info/stories/overview.vue +0 -29
- package/src/components/formsExt/info/types.ts +0 -25
- package/src/components/formsExt/menu/menu.stories.ts +0 -59
- package/src/components/formsExt/menu/menu.ts +0 -45
- package/src/components/formsExt/menu/menu.vue +0 -321
- package/src/components/formsExt/menu/stories/items.ts +0 -18
- package/src/components/formsExt/menu/stories/overview.vue +0 -52
- package/src/components/formsExt/radioGroup/radioGroup.stories.ts +0 -51
- package/src/components/formsExt/radioGroup/radioGroup.ts +0 -28
- package/src/components/formsExt/radioGroup/radioGroup.vue +0 -146
- package/src/components/formsExt/radioGroup/stories/overview.vue +0 -78
- package/src/components/formsExt/radioGroup/styles/top-scrollBar.css +0 -52
- package/src/components/formsExt/selector2/api.ts +0 -148
- package/src/components/formsExt/selector2/itemMulti.vue +0 -57
- package/src/components/formsExt/selector2/selector2.stories.ts +0 -48
- package/src/components/formsExt/selector2/selector2.ts +0 -145
- package/src/components/formsExt/selector2/selector2.vue +0 -389
- package/src/components/formsExt/selector2/stories/dummyAPIRequest.ts +0 -58
- package/src/components/formsExt/selector2/stories/overview.vue +0 -93
- package/src/components/helper.js +0 -10
- package/src/components/helpersStories.ts +0 -205
- package/src/components/layout/islandRows/islandRows.stories.ts +0 -139
- package/src/components/layout/islandRows/islandRows.vue +0 -53
- package/src/components/layout/islandRows/islandRowsRow/islandRowsRow.vue +0 -36
- package/src/components/layout/islandRows/islandRowsRow/types.ts +0 -1
- package/src/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue +0 -16
- package/src/components/layout/islandRows/stories/README.md +0 -8
- package/src/components/layout/islandRows/types.ts +0 -11
- package/src/components/layout/layout.ts +0 -11
- package/src/components/layout/rows/rows.stories.ts +0 -48
- package/src/components/layout/rows/rows.vue +0 -46
- package/src/components/layout/rows/stories/README.md +0 -10
- package/src/components/layout/rows/types.ts +0 -6
- package/src/components/popup/alert/alert.stories.ts +0 -71
- package/src/components/popup/alert/alert.ts +0 -11
- package/src/components/popup/alert/alert.vue +0 -46
- package/src/components/popup/alert/stories/overview.vue +0 -40
- package/src/components/popup/confirm/confirm.stories.ts +0 -75
- package/src/components/popup/confirm/confirm.ts +0 -26
- package/src/components/popup/confirm/confirm.vue +0 -75
- package/src/components/popup/confirm/stories/overview.vue +0 -62
- package/src/components/popup/lib/popup.globalEvents.ts +0 -239
- package/src/components/popup/lib/popup.ts +0 -790
- package/src/components/popup/lib/worker.globalEvents.ts +0 -97
- package/src/components/popup/lib/worker.ts +0 -286
- package/src/components/popup/popup/listItem.vue +0 -35
- package/src/components/popup/popup/opener.vue +0 -81
- package/src/components/popup/popup/popup.stories.ts +0 -74
- package/src/components/popup/popup/popup.ts +0 -120
- package/src/components/popup/popup/popup.vue +0 -168
- package/src/components/popup/popup/stories/README.md +0 -55
- package/src/components/popup/popup/stories/listItems.vue +0 -44
- package/src/components/popup/popup/stories/listSubItems.vue +0 -47
- package/src/components/popup/popup/stories/overview.vue +0 -210
- package/src/components/popup/popup/style/popup.css +0 -345
- package/src/components/popup/popup/style/popup.m.css +0 -72
- package/src/components/popup/popup/style/popup.pc.css +0 -26
- package/src/components/popup/popup/widgetInput.vue +0 -43
- package/src/components/popup/popup.ts +0 -17
- package/src/components/popup/prompt/prompt.stories.ts +0 -78
- package/src/components/popup/prompt/prompt.ts +0 -26
- package/src/components/popup/prompt/prompt.vue +0 -84
- package/src/components/popup/prompt/stories/overview.vue +0 -50
- package/src/components/popup/worker.ts +0 -1
- package/src/components/project/project.ts +0 -23
- package/src/components/project/selectorCompetitors/composables.ts +0 -21
- package/src/components/project/selectorCompetitors/selectorCompetitors.stories.ts +0 -33
- package/src/components/project/selectorCompetitors/selectorCompetitors.ts +0 -27
- package/src/components/project/selectorCompetitors/selectorCompetitors.vue +0 -75
- package/src/components/project/selectorCompetitors/stories/README.md +0 -20
- package/src/components/project/selectorCompetitors/stories/items.ts +0 -30
- package/src/components/project/selectorCompetitors/types/competitor.ts +0 -7
- package/src/components/project/selectorRegion/composables/compare.ts +0 -87
- package/src/components/project/selectorRegion/composables/selectRegion.ts +0 -147
- package/src/components/project/selectorRegion/composables/selectSearcher.ts +0 -64
- package/src/components/project/selectorRegion/composables/selectorRegion.ts +0 -165
- package/src/components/project/selectorRegion/selectorRegion.stories.ts +0 -69
- package/src/components/project/selectorRegion/selectorRegion.ts +0 -217
- package/src/components/project/selectorRegion/selectorRegion.vue +0 -330
- package/src/components/project/selectorRegion/stories/README.md +0 -36
- package/src/components/project/selectorRegion/stories/searchers.ts +0 -59
- package/src/components/project/selectorRegion/styles/searcherColors.css +0 -41
- package/src/components/project/selectorRegion/utils/consts.ts +0 -73
- package/src/components/project/selectorRegion/utils/utils.ts +0 -157
- package/src/components/project/tagSelector/popupListItem/tagPopupListItem.vue +0 -209
- package/src/components/project/tagSelector/popupListItem/types.ts +0 -40
- package/src/components/project/tagSelector/popupOpener/popupOpener.vue +0 -145
- package/src/components/project/tagSelector/popupOpener/types.ts +0 -71
- package/src/components/project/tagSelector/stories/README.md +0 -62
- package/src/components/project/tagSelector/stories/overview.vue +0 -152
- package/src/components/project/tagSelector/tagIcon/tagIcon.vue +0 -97
- package/src/components/project/tagSelector/tagIcon/types.ts +0 -25
- package/src/components/project/tagSelector/tagSelector.stories.ts +0 -51
- package/src/components/project/tagSelector/tagSelector.vue +0 -359
- package/src/components/project/tagSelector/tagsDefaults.ts +0 -54
- package/src/components/project/tagSelector/types.ts +0 -159
- package/src/components/project/tagSelector/utils/el.ts +0 -151
- package/src/components/project/tagSelector/utils/utils.ts +0 -30
- package/src/components/tabs/tabs/content.vue +0 -24
- package/src/components/tabs/tabs/stories/README.md +0 -12
- package/src/components/tabs/tabs/tab.vue +0 -49
- package/src/components/tabs/tabs/tabs.stories.ts +0 -171
- package/src/components/tabs/tabs/tabs.ts +0 -22
- package/src/components/tabs/tabs/tabs.vue +0 -64
- package/src/components/tabs/tabs.ts +0 -9
- package/src/components/tabsView/tabsView/menu.vue +0 -291
- package/src/components/tabsView/tabsView/menuDelimeter.vue +0 -26
- package/src/components/tabsView/tabsView/menuItem.vue +0 -125
- package/src/components/tabsView/tabsView/menuTitle.vue +0 -46
- package/src/components/tabsView/tabsView/store.ts +0 -60
- package/src/components/tabsView/tabsView/stories/README.md +0 -22
- package/src/components/tabsView/tabsView/tabsView.stories.ts +0 -170
- package/src/components/tabsView/tabsView/tabsView.ts +0 -118
- package/src/components/tabsView/tabsView/tabsView.vue +0 -120
- package/src/components/tabsView/tabsView/utils.ts +0 -27
- package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuItem.stories.ts +0 -47
- package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuTitle.stories.ts +0 -43
- package/src/components/tabsView/tabsView.ts +0 -9
- package/src/components/types.ts +0 -3
- package/src/core/app.ts +0 -22
- package/src/core/core/core.mdx +0 -36
- package/src/core/core/core.ts +0 -287
- package/src/core/core/events/resize.ts +0 -47
- package/src/core/core/events.ts +0 -6
- package/src/core/core/jQuery.mdx +0 -41
- package/src/core/core/options.ts +0 -51
- package/src/core/core/preloaders.ts +0 -31
- package/src/core/core/state.ts +0 -61
- package/src/core/directives/data.mdx +0 -24
- package/src/core/directives/data.ts +0 -25
- package/src/core/directives/focus.mdx +0 -28
- package/src/core/directives/focus.ts +0 -73
- package/src/core/directives/scrollIntoView.mdx +0 -41
- package/src/core/directives/scrollIntoView.ts +0 -123
- package/src/core/directives/scrollShadow.mdx +0 -23
- package/src/core/directives/scrollShadow.ts +0 -27
- package/src/core/directives/sticky.mdx +0 -29
- package/src/core/directives/sticky.ts +0 -32
- package/src/core/directives/swimUp.mdx +0 -27
- package/src/core/directives/swimUp.ts +0 -95
- package/src/core/directives/tooltip.mdx +0 -13
- package/src/core/directives/tooltip.ts +0 -57
- package/src/core/icons/gallery.vue +0 -70
- package/src/core/icons/icons.mdx +0 -24
- package/src/core/icons/icons.stories.ts +0 -14
- package/src/core/plugins/core.ts +0 -131
- package/src/core/plugins/i18n.ts +0 -184
- package/src/core/plugins/piniaTPA.ts +0 -431
- package/src/core/plugins/plugins.mdx +0 -82
- package/src/core/styles/CSS Variables.stories.ts +0 -17
- package/src/core/styles/styles.mdx +0 -26
- package/src/core/theme/Variables.stories.ts +0 -16
- package/src/core/theme/theme.mdx +0 -117
- package/src/core/utils/References/Docs.mdx +0 -23
- package/src/core/utils/References/check/Docs.mdx +0 -15
- package/src/core/utils/References/check/functions/getDomainRegexp.mdx +0 -15
- package/src/core/utils/References/check/functions/isDomain.mdx +0 -21
- package/src/core/utils/References/check/functions/isEmail.mdx +0 -22
- package/src/core/utils/References/check/functions/isIp.mdx +0 -21
- package/src/core/utils/References/check/functions/validUrl.mdx +0 -22
- package/src/core/utils/References/clipboard/Docs.mdx +0 -11
- package/src/core/utils/References/clipboard/functions/setClipboard.mdx +0 -23
- package/src/core/utils/References/date/Docs.mdx +0 -17
- package/src/core/utils/References/date/functions/dateFormat.mdx +0 -28
- package/src/core/utils/References/date/functions/dateToString.mdx +0 -26
- package/src/core/utils/References/date/functions/dateUnformat.mdx +0 -22
- package/src/core/utils/References/date/functions/genDate.mdx +0 -26
- package/src/core/utils/References/date/functions/genDateMoscow.mdx +0 -22
- package/src/core/utils/References/date/functions/getDayOfWeek.mdx +0 -26
- package/src/core/utils/References/date/functions/stringToDate.mdx +0 -21
- package/src/core/utils/References/device/Docs.mdx +0 -21
- package/src/core/utils/References/device/functions/get$scroll.mdx +0 -15
- package/src/core/utils/References/device/functions/getCommandKeyLabel.mdx +0 -15
- package/src/core/utils/References/device/functions/getElsScroll.mdx +0 -15
- package/src/core/utils/References/device/functions/getOS.mdx +0 -17
- package/src/core/utils/References/device/functions/getOSAsync.mdx +0 -15
- package/src/core/utils/References/device/functions/getScrollTop.mdx +0 -15
- package/src/core/utils/References/device/functions/isApp.mdx +0 -15
- package/src/core/utils/References/device/functions/isMacOS.mdx +0 -15
- package/src/core/utils/References/device/functions/isMobile.mdx +0 -15
- package/src/core/utils/References/device/functions/isRetina.mdx +0 -15
- package/src/core/utils/References/device/functions/isSafari.mdx +0 -15
- package/src/core/utils/References/dom/Docs.mdx +0 -27
- package/src/core/utils/References/dom/functions/css.mdx +0 -24
- package/src/core/utils/References/dom/functions/genEl.mdx +0 -28
- package/src/core/utils/References/dom/functions/isVisible.mdx +0 -23
- package/src/core/utils/References/dom/functions/offset.mdx +0 -35
- package/src/core/utils/References/dom/functions/querySelectorAllArray.mdx +0 -22
- package/src/core/utils/References/dom/functions/querySelectorAllVisible.mdx +0 -22
- package/src/core/utils/References/dom/functions/querySelectorVisible.mdx +0 -22
- package/src/core/utils/References/dom/functions/querySelectorVisibleLast.mdx +0 -22
- package/src/core/utils/References/dom/functions/storage.mdx +0 -28
- package/src/core/utils/References/dom/functions/storageClear.mdx +0 -21
- package/src/core/utils/References/dom/functions/wrap.mdx +0 -22
- package/src/core/utils/References/dom/variables/default.mdx +0 -241
- package/src/core/utils/References/image/Docs.mdx +0 -12
- package/src/core/utils/References/image/functions/downloadImageFromString.mdx +0 -22
- package/src/core/utils/References/image/functions/genFaviconImgHtml.mdx +0 -22
- package/src/core/utils/References/keyboard/Docs.mdx +0 -11
- package/src/core/utils/References/keyboard/functions/invertKeyboardLayout.mdx +0 -21
- package/src/core/utils/References/lodash/Docs.mdx +0 -20
- package/src/core/utils/References/lodash/functions/cloneDeep.mdx +0 -29
- package/src/core/utils/References/lodash/functions/debounce.mdx +0 -76
- package/src/core/utils/References/lodash/functions/memoize.mdx +0 -26
- package/src/core/utils/References/lodash/functions/merge.mdx +0 -200
- package/src/core/utils/References/lodash/functions/throttle.mdx +0 -73
- package/src/core/utils/References/number/Docs.mdx +0 -11
- package/src/core/utils/References/number/functions/percentOfNumber.mdx +0 -26
- package/src/core/utils/References/price/Docs.mdx +0 -11
- package/src/core/utils/References/price/functions/genPrice.mdx +0 -28
- package/src/core/utils/References/route/Docs.mdx +0 -16
- package/src/core/utils/References/route/functions/delHash.mdx +0 -26
- package/src/core/utils/References/route/functions/genHash.mdx +0 -26
- package/src/core/utils/References/route/functions/getHash.mdx +0 -22
- package/src/core/utils/References/route/functions/historySetState.mdx +0 -31
- package/src/core/utils/References/route/functions/setHash.mdx +0 -26
- package/src/core/utils/References/route/functions/setHashs.mdx +0 -22
- package/src/core/utils/References/scroll/Docs.mdx +0 -14
- package/src/core/utils/References/scroll/functions/amountScrolled.mdx +0 -17
- package/src/core/utils/References/scroll/functions/connectScrollShadow.mdx +0 -28
- package/src/core/utils/References/scroll/functions/genHasScroll.mdx +0 -25
- package/src/core/utils/References/scroll/functions/getScrollPercent.mdx +0 -21
- package/src/core/utils/References/searchers/Docs.mdx +0 -19
- package/src/core/utils/References/searchers/functions/genVolumeLabel.mdx +0 -26
- package/src/core/utils/References/searchers/functions/getDeviceGIcon.mdx +0 -21
- package/src/core/utils/References/searchers/functions/getLangLabel.mdx +0 -22
- package/src/core/utils/References/searchers/functions/getSearcherGIcon.mdx +0 -21
- package/src/core/utils/References/searchers/functions/prepareVolumeType.mdx +0 -22
- package/src/core/utils/References/searchers/variables/searchersNames.mdx +0 -97
- package/src/core/utils/References/store/Docs.mdx +0 -18
- package/src/core/utils/References/store/functions/defineStore.mdx +0 -36
- package/src/core/utils/References/store/functions/useStore.mdx +0 -29
- package/src/core/utils/References/store/variables/plugin.mdx +0 -66
- package/src/core/utils/References/string/Docs.mdx +0 -26
- package/src/core/utils/References/string/functions/addCommasWhite.mdx +0 -21
- package/src/core/utils/References/string/functions/addLinkTags.mdx +0 -23
- package/src/core/utils/References/string/functions/camelToSnakeCase.mdx +0 -21
- package/src/core/utils/References/string/functions/ellipsis.mdx +0 -26
- package/src/core/utils/References/string/functions/genFlagLinkByCountryCode.mdx +0 -21
- package/src/core/utils/References/string/functions/genIntHash.mdx +0 -21
- package/src/core/utils/References/string/functions/getRandomHash.mdx +0 -21
- package/src/core/utils/References/string/functions/highlightHtml.mdx +0 -25
- package/src/core/utils/References/string/functions/htmlspecialchars.mdx +0 -21
- package/src/core/utils/References/string/functions/isUrl.mdx +0 -21
- package/src/core/utils/References/string/functions/nl2br.mdx +0 -21
- package/src/core/utils/References/string/functions/numberEnding.mdx +0 -28
- package/src/core/utils/References/string/functions/numberWithWord.mdx +0 -28
- package/src/core/utils/References/string/functions/rusToLatin.mdx +0 -21
- package/src/core/utils/References/string/functions/toCapitalize.mdx +0 -21
- package/src/core/utils/References/string/functions/toRoditPadej.mdx +0 -21
- package/src/core/utils/References/system/Docs.mdx +0 -13
- package/src/core/utils/References/system/functions/sleep.mdx +0 -21
- package/src/core/utils/References/system/functions/sleepWhile.mdx +0 -26
- package/src/core/utils/References/system/functions/waitWhile.mdx +0 -26
- package/src/core/utils/References/url/Docs.mdx +0 -17
- package/src/core/utils/References/url/functions/decode.mdx +0 -21
- package/src/core/utils/References/url/functions/encode.mdx +0 -21
- package/src/core/utils/References/url/functions/fromPuny.mdx +0 -23
- package/src/core/utils/References/url/functions/getHost.mdx +0 -21
- package/src/core/utils/References/url/functions/hostToLowerCase.mdx +0 -21
- package/src/core/utils/References/url/functions/normalize.mdx +0 -21
- package/src/core/utils/References/url/functions/toPuny.mdx +0 -23
- package/src/core/utils/check.ts +0 -88
- package/src/core/utils/clipboard.ts +0 -51
- package/src/core/utils/date.ts +0 -291
- package/src/core/utils/device.ts +0 -139
- package/src/core/utils/dom.ts +0 -182
- package/src/core/utils/image.ts +0 -46
- package/src/core/utils/keyboard.ts +0 -29
- package/src/core/utils/lodash.ts +0 -18
- package/src/core/utils/number.ts +0 -37
- package/src/core/utils/price.ts +0 -24
- package/src/core/utils/route.ts +0 -115
- package/src/core/utils/scroll.ts +0 -120
- package/src/core/utils/searchers.ts +0 -189
- package/src/core/utils/store/localStorage.ts +0 -56
- package/src/core/utils/store/plugin.ts +0 -50
- package/src/core/utils/store/store.ts +0 -77
- package/src/core/utils/store.ts +0 -7
- package/src/core/utils/string.ts +0 -315
- package/src/core/utils/system.ts +0 -72
- package/src/core/utils/url.ts +0 -138
- package/src/core/utils/utils.mdx +0 -6
- package/src/d.ts +0 -12
- package/src/icomoon.d.ts +0 -98
- package/src/resources/styles/core/components.css +0 -102
- package/src/resources/styles/core/core.ts +0 -11
- package/src/resources/styles/core/forms/clear.css +0 -20
- package/src/resources/styles/core/forms/controls.css +0 -20
- package/src/resources/styles/core/forms/focusable.css +0 -26
- package/src/resources/styles/core/forms/forms.css +0 -117
- package/src/resources/styles/core/icon.css +0 -58
- package/src/resources/styles/core/jquery.css +0 -1
- package/src/resources/styles/core/layout.css +0 -59
- package/src/resources/styles/core/modifiers/as.css +0 -9
- package/src/resources/styles/core/modifiers/ellipsis.css +0 -26
- package/src/resources/styles/core/modifiers/modifiers.css +0 -120
- package/src/resources/styles/core/modifiers/only.css +0 -19
- package/src/resources/styles/core/modifiers/scrollShadow.css +0 -50
- package/src/resources/styles/core/select.css +0 -15
- package/src/resources/styles/storybook.css +0 -11
- package/src/resources/styles/themes/dark/dark-layout.css +0 -47
- package/src/resources/styles/themes/dark/dark-positions.css +0 -66
- package/src/resources/styles/themes/dark/dark.css +0 -400
- package/src/resources/styles/themes/dark-positions.ts +0 -1
- package/src/resources/styles/themes/dark-th/dark-th-layout.css +0 -47
- package/src/resources/styles/themes/dark-th/dark-th-positions.css +0 -67
- package/src/resources/styles/themes/dark-th/dark-th.css +0 -400
- package/src/resources/styles/themes/dark-th-positions.ts +0 -1
- package/src/resources/styles/themes/dark-th.ts +0 -3
- package/src/resources/styles/themes/dark.ts +0 -3
- package/src/resources/styles/themes/light/light-layout.css +0 -47
- package/src/resources/styles/themes/light/light-positions.css +0 -66
- package/src/resources/styles/themes/light/light.css +0 -400
- package/src/resources/styles/themes/light-positions.ts +0 -1
- package/src/resources/styles/themes/light.ts +0 -3
- package/src/storybook/components/color.vue +0 -47
- package/src/storybook/components/cssVariables.vue +0 -195
- package/src/storybook/components/icomoon.ts +0 -40
- package/src/storybook/jquery.ts +0 -4
- package/src//320/221/321/213/321/201/321/202/321/200/321/213/320/271 /321/201/321/202/320/260/321/200/321/202.mdx" +0 -181
- package/src//320/230/320/275/321/204/320/276/321/200/320/274/320/260/321/206/320/270/321/217 /320/276 /321/201/320/261/320/276/321/200/320/272/320/265.mdx" +0 -12
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CHANGELOG.md.mdx" +0 -4
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS/FAQ.mdx" +0 -43
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/236/320/261/321/211/320/270/320/265 /320/274/320/276/320/264/320/270/321/204/320/270/320/272/320/260/321/202/320/276/321/200/321/213.mdx" +0 -155
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/237/320/265/321/200/320/265/320/274/320/265/320/275/320/275/321/213/320/265.mdx" +0 -35
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/237/321/200/320/265/320/264/320/277/321/200/320/276/321/206/320/265/321/201/321/201/320/276/321/200/321/213.mdx" +0 -15
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/240/320/265/320/272/320/276/320/274/320/265/320/275/320/264/320/260/321/206/320/270/320/270 /320/221/320/255/320/234.mdx" +0 -56
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/241/321/202/320/270/320/273/320/270.mdx" +0 -53
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/247/321/202/320/276 /321/202/320/260/320/272/320/276/320/265 css /320/274/320/276/320/264/321/203/320/273/321/214.mdx" +0 -55
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/PUBLISH.md.mdx" +0 -4
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/README.md.mdx" +0 -4
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/STORYBOOK.md.mdx" +0 -4
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/USE_IN_PROJECT.md.mdx" +0 -3
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/222/320/262/320/265/320/264/320/265/320/275/320/270/320/265 /320/262 NPM.md.mdx" +0 -4
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/224/320/276/320/277/320/276/320/273/320/275/320/270/321/202/320/265/320/273/321/214/320/275/320/260/321/217 /320/273/320/270/321/202/320/265/321/200/320/260/321/202/321/203/321/200/320/260.mdx" +0 -15
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/235/320/260/321/201/321/202/321/200/320/276/320/271/320/272/320/260 IDE.mdx" +0 -45
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/236/321/204/320/276/321/200/320/274/320/273/320/265/320/275/320/270/320/265 /320/272/320/276/320/264/320/260.mdx" +0 -31
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260.mdx" +0 -29
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213.mdx" +0 -41
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213//320/241/321/202/320/270/320/273/320/270 /320/272/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213.mdx" +0 -58
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI.mdx" +0 -11
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/243/321/202/320/270/320/273/320/270/321/202/321/213.mdx" +0 -5
- package/tsconfig.json +0 -91
- package/typedoc.json +0 -20
- package/vite.config.ts +0 -148
- /package/{public/icomoon → icomoon}/Read Me.txt +0 -0
- /package/{public/icomoon → icomoon}/Topvisor icons.json +0 -0
- /package/{public/icomoon → icomoon}/demo-files/demo.css +0 -0
- /package/{public/icomoon → icomoon}/demo-files/demo.js +0 -0
- /package/{public/icomoon → icomoon}/demo.html +0 -0
- /package/{public/icomoon → icomoon}/fonts/Topvisor-2.eot +0 -0
- /package/{public/icomoon → icomoon}/fonts/Topvisor-2.svg +0 -0
- /package/{public/icomoon → icomoon}/fonts/Topvisor-2.ttf +0 -0
- /package/{public/icomoon → icomoon}/fonts/Topvisor-2.woff +0 -0
- /package/{public/icomoon → icomoon}/selection.json +0 -0
- /package/{public/icomoon → icomoon}/style.css +0 -0
- /package/{public/jquery-ui.min.css → jquery-ui.min.css} +0 -0
- /package/{public/require → require}/css.amd.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.amd.js","sources":["../../src/components/popup/lib/worker.globalEvents.ts","../../src/core/directives/data.ts","../../src/core/directives/focus.ts","../../src/core/directives/scrollIntoView.ts","../../src/core/directives/scrollShadow.ts","../../src/core/directives/sticky.ts","../../src/core/directives/swimUp.ts","../../src/core/directives/tooltip.ts","../../src/core/plugins/core.ts","../../src/core/plugins/piniaTPA.ts"],"sourcesContent":["import Core from '@/core/core/core';\r\nimport Events from '@/core/core/events';\r\nimport Worker from '@/components/popup/lib/worker';\r\n\r\n/**\r\n * Глобальные события, для реализации Popup\r\n */\r\nclass WorkerEvents {\r\n\r\n\tprivate static isInited = false;\r\n\r\n\t/**\r\n\t * Добавить глобальные обработчики\r\n\t *\r\n\t * Добавляются на страницу один раз и навсегда\r\n\t */\r\n\tstatic init(): void {\r\n\t\tif (this.isInited) return;\r\n\r\n\t\tthis.isInited = true;\r\n\r\n\t\t// автоматическое открытие при наведении мыши, событие глобальное, так как инициализация popup отложена\r\n\t\tdocument.addEventListener('mouseover', (e) => {\r\n\t\t\tif (!(e.target instanceof HTMLElement) || !e.target.dataset?.topPopupOpenByHover) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\te.target.click();\r\n\t\t});\r\n\r\n\t\t// при скролле страницы закрыть Popup\r\n\t\tdocument.addEventListener('scroll', () => {\r\n\t\t\tif (Core.state.isMobile || Core.state.isMobileUA) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\r\n\t\t});\r\n\r\n\t\tEvents.addOnReize(e => {\r\n\t\t\t// закрыть popup при повороте экрана телефона\r\n\t\t\t// если была отображена ПК версия, она будет закрыта\r\n\t\t\tif (Core.state.isMobile && e.topEvent.widthDiff) {\r\n\t\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tdocument.addEventListener('click', this.onclick);\r\n\t}\r\n\r\n\t/**\r\n\t * Глобальный обработчик кликов\r\n\t *\r\n\t * Обрабатывает клики на открытие Popup\r\n\t */\r\n\tprivate static async onclick(e: Event): Promise<void> {\r\n\t\tif (!(e.target instanceof HTMLElement)) return;\r\n\r\n\t\tlet elOpener: HTMLElement | null | undefined;\r\n\r\n\t\tswitch (true) {\r\n\t\t\tcase !!e.target.dataset?.topPopup:\r\n\t\t\t\telOpener = e.target;\r\n\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase !!e.target.parentElement?.dataset.topPopup:\r\n\t\t\t\telOpener = e.target.parentElement;\r\n\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase !!e.target.parentElement?.parentElement?.dataset.topPopup:\r\n\t\t\t\telOpener = e.target.parentElement?.parentElement;\r\n\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tif (!elOpener) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupDisabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// меню уже открыто\r\n\t\tif (elOpener.dataset.topPopupOpened) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\te.preventDefault();\r\n\r\n\t\tawait Worker.openByOpener(elOpener);\r\n\t}\r\n}\r\n\r\nexport default WorkerEvents;\r\n","import type { DirectiveBinding, ObjectDirective } from 'vue';\r\n\r\nlet storage: any;\r\n\r\n/**\r\n * Сохранить данные в элементе\r\n *\r\n * Для доступа к данным можно воспользоваться ui/utils/dom storage()\r\n */\r\nconst data = {\r\n\tmounted: async (el: HTMLElement, binding: DirectiveBinding) => {\r\n\t\tif (!storage) {\r\n\t\t\tconst UtilsDom = await import('@/core/utils/dom');\r\n\r\n\t\t\tstorage = UtilsDom.storage;\r\n\t\t}\r\n\r\n\t\tconst name = binding.arg;\r\n\t\tconst value = binding.value;\r\n\r\n\t\tstorage(el, name, value);\r\n\t},\r\n};\r\n\r\nexport default data;\r\n","import type { DirectiveBinding } from 'vue';\r\n\r\ntype Binding = DirectiveBinding<boolean, 'onupdate'>;\r\n\r\nlet UtilsLodash: typeof import('@/core/utils/lodash');\r\n\r\n/**\r\n * Список элементов, на которых бала запрошена фокусировка, для дедупликации фокусировок\r\n */\r\nlet elsActive: HTMLElement[] = [];\r\n\r\n/**\r\n * Функция скролла с дедупликацией\r\n */\r\nlet focusOnElActiveDebounce: Function;\r\n\r\n/**\r\n * Выполнить фокусировку на активном элементе\r\n *\r\n * Если фокусирока запрошена на несколько элементов, будет выбран первый элемент\r\n */\r\nconst focusOnElActive = async () => {\r\n\tconst { isVisible } = await import('@/core/utils/dom');\r\n\telsActive = elsActive.filter(isVisible)\r\n\r\n\tif (!elsActive.length) return;\r\n\r\n\tconst el = elsActive[0];\r\n\r\n\tel.focus();\r\n\r\n\t// // UX: Если выбрано несколько чекбоксов или радио после выбора фокусировка будет снята, чтобы не делать выбор за пользователя\r\n\t// if (elsActive.length && el.nodeName === 'INPUT') {\r\n\t// \tconst type = (el as HTMLInputElement).type;\r\n\t// \tif (type === 'checkbox' || type === 'radio') el.blur();\r\n\t// }\r\n\r\n\telsActive = [];\r\n};\r\n\r\n/**\r\n * Выполнить дедуплицированную фокусировку на элементе\r\n */\r\nconst focusOnElDebounce = async (el: HTMLElement) => {\r\n\tif (!UtilsLodash) UtilsLodash = await import('@/core/utils/lodash');\r\n\tif (!focusOnElActiveDebounce) focusOnElActiveDebounce = UtilsLodash.debounce(focusOnElActive, 30);\r\n\r\n\telsActive.push(el);\r\n\r\n\tfocusOnElActiveDebounce();\r\n};\r\n\r\n/**\r\n * Фокусировка на элементе сразу после его отображения\r\n */\r\nconst focus = {\r\n\tmounted: function (el: HTMLElement, binding: Binding) {\r\n\t\tel['__TOP_V_FOCUS_VALUE'] = binding.value ?? true;\r\n\r\n\t\tif (binding.value ?? true) focusOnElDebounce(el);\r\n\t},\r\n\r\n\tupdated: function (el: HTMLElement, binding: Binding) {\r\n\t\tif (!binding.modifiers.onupdate) return;\r\n\r\n\t\tif (el['__TOP_V_FOCUS_VALUE'] === (binding.value ?? true)) return;\r\n\t\tel['__TOP_V_FOCUS_VALUE'] = binding.value ?? true;\r\n\r\n\t\tif (binding.value ?? true) focusOnElDebounce(el);\r\n\t},\r\n};\r\n\r\nexport default focus;\r\n","import type { DirectiveBinding, ObjectDirective } from 'vue';\r\nimport { isVisible } from '@/core/utils/dom';\r\n\r\ntype Binding = DirectiveBinding<ScrollIntoViewOptions | boolean | undefined, 'immediate'>;\r\n\r\ntype Storage = {\r\n\t/**\r\n\t * Сохраненное состояние видимости\r\n\t */\r\n\tisVisible: boolean,\r\n\r\n\t/**\r\n\t * Текущие настройки скролла\r\n\t */\r\n\tscrollIntoViewOptions: ScrollIntoViewOptions | boolean\r\n};\r\n\r\nlet UtilsDom: typeof import('@/core/utils/dom');\r\nlet UtilsLodash: typeof import('@/core/utils/lodash');\r\n\r\n/**\r\n * Сгенерировать настройки для скролла\r\n *\r\n * @see https://developer.mozilla.org/ru/docs/Web/API/Element/scrollIntoView\r\n */\r\nconst genScrollIntoViewOptions = (scrollIntoViewOptions?: ScrollIntoViewOptions | boolean) => {\r\n\tif (typeof scrollIntoViewOptions === 'boolean') return scrollIntoViewOptions;\r\n\r\n\tif (!scrollIntoViewOptions) {\r\n\t\tscrollIntoViewOptions = {};\r\n\t} else {\r\n\t\tscrollIntoViewOptions = { ...scrollIntoViewOptions };\r\n\t}\r\n\r\n\tscrollIntoViewOptions.behavior ??= 'smooth';\r\n\tscrollIntoViewOptions.block ??= 'nearest';\r\n\tscrollIntoViewOptions.inline ??= 'nearest';\r\n\r\n\treturn scrollIntoViewOptions;\r\n};\r\n\r\n/**\r\n * Активный элемент, для дедупликации скроллов\r\n *\r\n * Только один элемент на странице может считаться активным\r\n */\r\nlet elActive: HTMLElement | undefined;\r\n\r\n/**\r\n * Функция скролла с дедупликацией\r\n */\r\nlet scrollToElActiveDebounce: Function;\r\n\r\n/**\r\n * Выполнить скролл к текущему активному элементу\r\n */\r\nconst scrollToElActive = async () => {\r\n\tif (!elActive) return;\r\n\r\n\tconst storage = await useStorage(elActive);\r\n\tif (!storage.isVisible) return;\r\n\r\n\telActive.scrollIntoView(storage.scrollIntoViewOptions);\r\n};\r\n\r\n/**\r\n * Выполнить дедуплицированный скролл к элементу\r\n *\r\n * Будет выполнен скролл к самому последнему элементу, вызвавшему срабатывание директивы\r\n */\r\nconst scrollToElDebounce = async (el: HTMLElement) => {\r\n\tif (!UtilsLodash) UtilsLodash = await import('@/core/utils/lodash');\r\n\tif (!scrollToElActiveDebounce) scrollToElActiveDebounce = UtilsLodash.debounce(scrollToElActive, 30);\r\n\r\n\telActive = el;\r\n\r\n\tscrollToElActiveDebounce();\r\n};\r\n\r\n/**\r\n * Данные, связанные с элементом и директивой\r\n */\r\nconst useStorage = async (el: HTMLElement, scrollIntoViewOptions?: ScrollIntoViewOptions | boolean) => {\r\n\tif (!UtilsDom) UtilsDom = await import('@/core/utils/dom');\r\n\r\n\tlet storage: Storage | undefined = UtilsDom.storage(el, 'v-top-scrollIntoView');\r\n\r\n\t// инициализация\r\n\tif (!storage) {\r\n\t\tstorage = {\r\n\t\t\tisVisible: isVisible(el),\r\n\t\t\tscrollIntoViewOptions: genScrollIntoViewOptions(scrollIntoViewOptions),\r\n\t\t};\r\n\r\n\t\tUtilsDom.storage(el, 'v-top-scrollIntoView', storage);\r\n\t}\r\n\r\n\treturn storage;\r\n};\r\n\r\nconst scrollIntoView: ObjectDirective = {\r\n\tasync mounted(el: HTMLElement, binding: Binding) {\r\n\t\tawait useStorage(el, binding.value);\r\n\r\n\t\tif (binding.modifiers.immediate) {\r\n\t\t\tscrollToElDebounce(el);\r\n\t\t}\r\n\t},\r\n\r\n\tasync updated(el: HTMLElement, binding: Binding) {\r\n\t\tconst storage = await useStorage(el, binding.value);\r\n\t\tstorage.scrollIntoViewOptions = genScrollIntoViewOptions(binding.value);\r\n\r\n\t\tconst isVisibleNew = isVisible(el);\r\n\t\tif (isVisibleNew && storage.isVisible !== isVisibleNew) {\r\n\t\t\tscrollToElDebounce(el);\r\n\t\t}\r\n\r\n\t\tstorage.isVisible = isVisibleNew;\r\n\t},\r\n};\r\n\r\nexport default scrollIntoView;\r\n","let UtilsScroll: typeof import('@/core/utils/scroll');\r\n\r\n/**\r\n * Добавить отображение тени при появлении скролла у элемента\r\n *\r\n * Будут добавлены события для усатновки модификаторов тени в зависимости от скролла элемента\r\n *\r\n * Модификаторы:\r\n * - top-scrollShadow\r\n * - top-scrollShadow-started\r\n * - top-scrollShadow-finished\r\n */\r\nconst connectScrollShadow = {\r\n\tasync mounted(el) {\r\n\t\tif (!UtilsScroll) UtilsScroll = await import('@/core/utils/scroll');\r\n\r\n\t\tUtilsScroll.connectScrollShadow(el);\r\n\t},\r\n\r\n\tasync unmounted(el) {\r\n\t\tif (!UtilsScroll) UtilsScroll = await import('@/core/utils/scroll');\r\n\r\n\t\tUtilsScroll.unconnectScrollShadow(el);\r\n\t},\r\n};\r\n\r\nexport default connectScrollShadow;\r\n","import type { DirectiveBinding, ObjectDirective, VNode } from 'vue';\r\n\r\nlet appStickyObserver: IntersectionObserver;\r\n\r\n/**\r\n * Добавление sticky\r\n * К элементу добляется класс переданный как значение диррективы либо **'top-sticky'** по умолчанию\r\n */\r\nconst sticky = {\r\n\tmounted(el: HTMLElement, binding: DirectiveBinding, _vnode: VNode) {\r\n\t\tconst className = binding.value || 'top-sticky';\r\n\r\n\t\tappStickyObserver = new IntersectionObserver(entries => {\r\n\t\t\tlet condition = entries[0].intersectionRatio < 1;\r\n\t\t\tif (condition) {\r\n\t\t\t\tif (binding.modifiers.bottom && entries[0].intersectionRect.y === 0) condition = false;\r\n\t\t\t}\r\n\r\n\t\t\tel.classList.toggle(className, condition);\r\n\t\t}, {\r\n\t\t\tthreshold: [1],\r\n\t\t});\r\n\r\n\t\tappStickyObserver.observe(el);\r\n\t},\r\n\r\n\tunmounted(_el: HTMLElement, _binding: DirectiveBinding, _vnode: VNode) {\r\n\t\tappStickyObserver?.disconnect();\r\n\t},\r\n};\r\n\r\nexport default sticky;\r\n","import type { DirectiveBinding, ObjectDirective, VNode } from 'vue';\r\nimport Core from '@/core/core/core';\r\n\r\ninterface HTMLElementWithSwimUpOptions extends HTMLElement {\r\n\tdirectiveSwipUpOptions: {\r\n\t\tdistance: number,\r\n\t\tpercent: number,\r\n\t};\r\n}\r\n\r\nlet appSwimUpInited = false;\r\nlet appSwimUpObserver: IntersectionObserver;\r\nconst appSwimUpEls = new Map();\r\n\r\n/**\r\n * Отодвинуть блок в зависимости от скролла старинцы\r\n * @param el\r\n * @param windowHeight\r\n */\r\nconst swimUpElTransform = (el: HTMLElementWithSwimUpOptions, windowHeight: number): void => {\r\n\tconst { distance, percent } = el.directiveSwipUpOptions;\r\n\r\n\tconst elTop = el.getBoundingClientRect().top;\r\n\r\n\t// во столько раз triggerHeight должен быть меньше, чтобы закончить подплытие к нужной высоте экрана\r\n\tconst triggerHeightReducer = windowHeight * percent / 100 / distance;\r\n\tconst triggerHeight = (windowHeight - elTop) / triggerHeightReducer;\r\n\r\n\tif (triggerHeight <= distance) {\r\n\t\tel.style.transform = `translateY(${distance - triggerHeight}px)`;\r\n\t} else {\r\n\t\tel.style.transform = 'translateY(0px)';\r\n\t}\r\n};\r\n\r\nconst swimUpInit = (_el: HTMLElementWithSwimUpOptions): void => {\r\n\tlet windowHeight = window.innerHeight;\r\n\r\n\twindow.addEventListener('scroll', () => {\r\n\t\tappSwimUpEls.forEach((el) => swimUpElTransform(el, windowHeight));\r\n\t}, { passive: true });\r\n\r\n\t// проверка того, что элемент в зоне видимости\r\n\tappSwimUpObserver = new IntersectionObserver(entries => {\r\n\t\twindowHeight = window.innerHeight;\r\n\r\n\t\tentries.forEach((entry) => {\r\n\t\t\tconst el = entry.target as HTMLElementWithSwimUpOptions;\r\n\r\n\t\t\tif (entry.intersectionRatio < 0.1) {\r\n\t\t\t\t// элемент за областью видимости\r\n\t\t\t\tappSwimUpEls.delete(el);\r\n\t\t\t} else {\r\n\t\t\t\t// элемент на экране\r\n\t\t\t\tappSwimUpEls.set(el, el);\r\n\t\t\t}\r\n\r\n\t\t\tif (entry.intersectionRatio === 0) {\r\n\t\t\t\tconst { distance } = el.directiveSwipUpOptions;\r\n\t\t\t\tel.style.transform = `translateY(${distance}px)`;\r\n\t\t\t}\r\n\t\t});\r\n\t}, {\r\n\t\tthreshold: 0.1,\r\n\t});\r\n};\r\n\r\n/**\r\n * Добавление анимации подплытия вверх для блока\r\n */\r\nconst swimUp = {\r\n\tmounted(el: HTMLElementWithSwimUpOptions, binding: DirectiveBinding, _vnode: VNode): void {\r\n\t\tif (Core.state.isMobileUA) return;\r\n\r\n\t\tel.directiveSwipUpOptions = {\r\n\t\t\tdistance: binding.value?.distance ?? 100, // количество px на которые блок изначально смещен вниз,\r\n\t\t\tpercent: binding.value?.percent ?? 30, // процент высоты экрана поднявшись на который блок закончит подплытие\r\n\t\t};\r\n\r\n\t\tif (!appSwimUpInited) {\r\n\t\t\tswimUpInit(el);\r\n\r\n\t\t\tappSwimUpInited = true;\r\n\t\t}\r\n\r\n\t\tappSwimUpObserver.observe(el);\r\n\t},\r\n\r\n\tunmounted(el: HTMLElementWithSwimUpOptions, _binding: DirectiveBinding, _vnode: VNode) {\r\n\t\tappSwimUpEls.delete(el);\r\n\t\tappSwimUpObserver?.unobserve(el);\r\n\t},\r\n};\r\n\r\nexport default swimUp;\r\n","import type { DirectiveBinding, ObjectDirective, VNode } from 'vue';\r\nimport Core from '@/core/core/core';\r\n\r\nconst $ = (el: VNode) => {\r\n\tif (!Core.$?.ui?.tooltip) {\r\n\t\tconsole.info('Для работы v-top-tooltip требуется глобальная загрузка jQuery UI Tooltip');\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\treturn Core.$(el);\r\n};\r\n\r\nconst tvTooltipGenOptions = (binding: DirectiveBinding, vnode: VNode) => {\r\n\tconst options = binding.value ?? {};\r\n\r\n\toptions.content ??= vnode.props?.title;\r\n\toptions.content = String(options.content).replace(/\\r\\n|\\r|\\n/g, '<br>');\r\n\r\n\toptions.position ??= {\r\n\t\tmy: 'bottom-18px',\r\n\t\tat: 'top center',\r\n\t};\r\n\r\n\treturn options;\r\n};\r\n\r\n/**\r\n * Добавление всплывающей подсказки к элементу.\r\n */\r\nconst tooltip = {\r\n\tmounted(el: VNode, binding: DirectiveBinding, vnode: VNode) {\r\n\t\t$(el)?.tooltip(tvTooltipGenOptions(binding, vnode));\r\n\t},\r\n\r\n\tupdated(el: VNode, binding: DirectiveBinding, vnode: VNode, _prevVnode: VNode) {\r\n\t\t/**\r\n\t\t * В результате обновления может быть открыто несколько тултипов поэтому изменить опции, без перерисовки тултипа\r\n\t\t */\r\n\t\tconst options = tvTooltipGenOptions(binding, vnode);\r\n\t\tconst instance = $(el)?.tooltip('instance') as { options: JQueryUI.TooltipOptions } | undefined;\r\n\t\tif (!instance) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tinstance.options = {\r\n\t\t\t...instance.options,\r\n\t\t\t...options,\r\n\t\t};\r\n\t},\r\n\r\n\tunmounted(el: VNode, _binding: DirectiveBinding, _vnode: VNode) {\r\n\t\t$(el)?.tooltip('destroy');\r\n\t},\r\n};\r\n\r\nexport default tooltip;\r\n","import { defineAsyncComponent, type Plugin } from 'vue';\r\nimport type { PartialBy } from '@/components/types';\r\n\r\nimport Core from '@/core/core/core';\r\nimport coreDefaultOptions from '@/core/core/options';\r\n\r\nimport * as Forms from '../../components/forms/forms';\r\n\r\nconst TopNotice = defineAsyncComponent(() => import('@/components/core/notice/notice.vue'));\r\n\r\nimport type { Options as TopPopupOptions } from '@/components/popup/lib/worker';\r\nimport TopPopupWorker from '@/components/popup/lib/worker';\r\nimport TopPopupWorkerGlobalEvents from '@/components/popup/lib/worker.globalEvents';\r\n\r\nimport TopDialogs from '@/components/dialog/dialog/dialogs/dialogs.vue';\r\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\r\nimport type { TopDialogOptions } from '@/components/dialog/lib/types';\r\n\r\nimport directiveData from '@/core/directives/data';\r\nimport directiveFocus from '@/core/directives/focus';\r\nimport directiveScrollIntoView from '@/core/directives/scrollIntoView';\r\nimport directiveScrollShadow from '@/core/directives/scrollShadow';\r\nimport directiveSticky from '@/core/directives/sticky';\r\nimport directiveSwimUp from '@/core/directives/swimUp';\r\nimport directiveTooltip from '@/core/directives/tooltip';\r\n\r\ndeclare global {\r\n\tconst vd: typeof console.log;\r\n}\r\n\r\nwindow['vd'] = console.log;\r\n\r\ndeclare module 'vue' {\r\n\texport interface ComponentCustomProperties {\r\n\t\t/**\r\n\t\t * Статический класс с текущим состоянимем UI\r\n\t\t */\r\n\t\t$core: typeof Core;\r\n\r\n\t\t$vd: typeof console.log;\r\n\t}\r\n\r\n\t/**\r\n\t * Обязательные компоненты UI\r\n\t *\r\n\t * Они подключаются через плагин и доступны без явного указания импорта\r\n\t */\r\n\texport interface GlobalComponents {\r\n\t\tTopAvatar: typeof Forms.TopAvatar;\r\n\t\tTopButton: typeof Forms.TopButton;\r\n\t\tTopCheckbox: typeof Forms.TopCheckbox;\r\n\t\tTopControlLabel: typeof Forms.TopControlLabel;\r\n\t\tTopHint: typeof Forms.TopHint;\r\n\t\tTopInput: typeof Forms.TopInput;\r\n\t\tTopInputDate: typeof Forms.TopInputDate;\r\n\t\tTopInputRange: typeof Forms.TopInputRange;\r\n\t\tTopRadio: typeof Forms.TopRadio;\r\n\t\tTopSwitcher: typeof Forms.TopSwitcher;\r\n\t\tTopTextarea: typeof Forms.TopTextarea;\r\n\t\tTopSelect: typeof Forms.TopSelect;\r\n\t\tTopLoadbar: typeof Forms.TopLoadbar;\r\n\r\n\t\tTopNotice: typeof TopNotice;\r\n\t\tTopDialogs: typeof TopDialogs;\r\n\t}\r\n}\r\n\r\ntype CoreOptions = PartialBy<typeof coreDefaultOptions, 'gmt' | 'documentClassModificators'>;\r\n\r\ntype Options = CoreOptions & {\r\n\ttopPopupOptions?: TopPopupOptions\r\n\ttopDialogOptions?: TopDialogOptions\r\n};\r\n\r\n/**\r\n * Плагин для интеграции UI во Vue приложение\r\n *\r\n * - В глобальную область видимости шаблонов будет добавлен объект $core\r\n * - Будут зарегистрирвоаны директивы UI: https://ui.topvisor.com/?path=/docs/core-directives-focus--docs\r\n * - Будут подключены базовые компоненты UI/Forms: https://ui.topvisor.com/?path=/docs/components-forms-readme--docs\r\n */\r\nexport default {\r\n\r\n\tinstall: (app, options: Options) => {\r\n\t\tapp.config.globalProperties.$core = Core;\r\n\t\tapp.config.globalProperties.$vd = console.log;\r\n\r\n\t\t// начальные настройки UI\r\n\t\tfor (const name in options) {\r\n\t\t\tCore.state[name] = options[name];\r\n\t\t}\r\n\r\n\t\tif (options.widthForMobile) Core.widthForMobile = options.widthForMobile;\r\n\t\tif (options.themeName) Core.themeName = options.themeName;\r\n\r\n\t\tCore._setState();\r\n\r\n\t\tif (options.topPopupOptions) TopPopupWorker.options = options.topPopupOptions;\r\n\t\tTopPopupWorkerGlobalEvents.init();\r\n\r\n\t\tTopDialogWorker.init(options.topDialogOptions);\r\n\r\n\t\t// определение директив\r\n\t\tapp.directive('top-data', directiveData);\r\n\t\tapp.directive('top-focus', directiveFocus);\r\n\t\tapp.directive('top-scroll-into-view', directiveScrollIntoView);\r\n\t\tapp.directive('top-scroll-shadow', directiveScrollShadow);\r\n\t\tapp.directive('top-sticky', directiveSticky);\r\n\t\tapp.directive('top-swim-up', directiveSwimUp);\r\n\t\tapp.directive('top-tooltip', directiveTooltip);\r\n\r\n\t\t// определение базовых компонентов\r\n\t\tapp.component('TopAvatar', Forms.TopAvatar);\r\n\t\tapp.component('TopButton', Forms.TopButton);\r\n\t\tapp.component('TopCheckbox', Forms.TopCheckbox);\r\n\t\tapp.component('TopControlLabel', Forms.TopControlLabel);\r\n\t\tapp.component('TopHint', Forms.TopHint);\r\n\t\tapp.component('TopInput', Forms.TopInput);\r\n\t\tapp.component('TopInputDate', Forms.TopInputDate);\r\n\t\tapp.component('TopInputRange', Forms.TopInputRange);\r\n\t\tapp.component('TopLoadbar', Forms.TopLoadbar);\r\n\t\tapp.component('TopRadio', Forms.TopRadio);\r\n\t\tapp.component('TopSelect', Forms.TopSelect);\r\n\t\tapp.component('TopSwitcher', Forms.TopSwitcher);\r\n\t\tapp.component('TopTextarea', Forms.TopTextarea);\r\n\r\n\t\tapp.component('TopNotice', TopNotice);\r\n\t\tapp.component('TopDialogs', TopDialogs);\r\n\t},\r\n\r\n} satisfies Plugin<Options>;\r\n","import type { PiniaPluginContext, Store } from 'pinia';\r\nimport { watch } from 'vue';\r\nimport Core from '@/core/core/core';\r\nimport { useI18n } from '@/core/plugins/i18n';\r\nimport { debounce } from '@/core/utils/lodash';\r\nimport { guestLinkToClipboard } from '@/core/utils/clipboard';\r\nimport { camelToSnakeCase } from '@/core/utils/string.js';\r\nimport type { paths as OpenAPIPaths } from 'topvisor-openapi/src/ts/Topvisor';\r\nimport { getHash, setHash } from '@/core/utils/route';\r\n\r\ntype OpenAPIPath = keyof OpenAPIPaths;\r\n\r\nclass PiniaTPA {\r\n\r\n\treadonly #storeId: string;\r\n\treadonly #store: Store<string, any>;\r\n\r\n\t/**\r\n\t * @deprecated\r\n\t */\r\n\treadonly #Page: any;\r\n\r\n\treadonly #user: any;\r\n\treadonly #Api: any;\r\n\r\n\treadonly #namesUrlHash: string[] = [];\r\n\treadonly #namesStorage: string[] = [];\r\n\treadonly #namesStorageLocal: string[] = [];\r\n\treadonly #namesGuestLink: string[] = [];\r\n\r\n\tconstructor(context: Context) {\r\n\t\tthis.#store = context.store;\r\n\t\tthis.#storeId = this.#store.$id;\r\n\r\n\t\tthis.#Page = context.options.Page;\r\n\r\n\t\tthis.#user = context.options.user;\r\n\t\tthis.#Api = context.options.Api;\r\n\r\n\t\tthis.#namesUrlHash = context.options.tpaNamesUrlHash || [];\r\n\t\tthis.#namesStorage = context.options.tpaNamesStorage || [];\r\n\t\tthis.#namesStorageLocal = context.options.tpaNamesStorageLocal || [];\r\n\t\tthis.#namesGuestLink = context.options.tpaNamesGuestLink || [];\r\n\r\n\t\tcontext.store.genGuestLink = <Path extends OpenAPIPath>(url: Path, data: any) => this.genGuestLink(url, data);\r\n\r\n\t\tif (!this.#user.guest_data?.data) {\r\n\t\t\tthis.#loadFromStorage();\r\n\t\t\tthis.#loadFromStorage(true);\r\n\r\n\t\t\t// настройки URL hash имеют приоритет\r\n\t\t\tthis.#loadFromHash();\r\n\t\t}\r\n\r\n\t\t// настройки гостевой ссылки имеют приоритет\r\n\t\tthis.#loadFromGuestLink();\r\n\r\n\t\tthis.#prepareParams();\r\n\r\n\t\tconst save = debounce(() => {\r\n\t\t\tthis.#saveInHash();\r\n\t\t\tthis.#saveInStorage();\r\n\t\t});\r\n\r\n\t\tcontext.store.$subscribe(save);\r\n\t}\r\n\r\n\t/**\r\n\t * Сгенерировать гостевую ссылку\r\n\t *\r\n\t * Метод, путь к которому указан в url, должен возвращать сгенерированную ссылку\r\n\t */\r\n\tasync genGuestLink<Path extends OpenAPIPath>(url: Path, data: any) {\r\n\t\tconst dataGuestLink = this.#genOptionsForGuestLink();\r\n\t\tdata = Object.assign(data, Object.fromEntries(dataGuestLink));\r\n\r\n\t\tconst res = await this.#Api.gen(url, 'fetchColumn').call({} as any, data);\r\n\r\n\t\t// @ts-ignore - метод, который скачивает файл не возвращает json\r\n\t\tif (res?.errors) return;\r\n\r\n\t\t// @ts-ignore - метод, который скачивает файл не возвращает json\r\n\t\tawait guestLinkToClipboard(res.result);\r\n\t}\r\n\r\n\t/**\r\n\t * Сгенерировать опции для гостевой ссылки\r\n\t */\r\n\t#genOptionsForGuestLink() {\r\n\t\tconst data = new Map();\r\n\r\n\t\tthis.#namesGuestLink.forEach(name => {\r\n\t\t\t// формат параметров API: snake_case\r\n\t\t\tconst nameSnakeCase = camelToSnakeCase(name);\r\n\t\t\tdata.set(nameSnakeCase, this.#store[name]);\r\n\t\t});\r\n\r\n\t\treturn data;\r\n\t}\r\n\r\n\t/**\r\n\t * Установить опции из объекта без фиксации состояния\r\n\t */\r\n\t#setOptions(data: Map<string, any>) {\r\n\t\tdata.forEach((value, name) => {\r\n\t\t\tconst currentValue = this.#store[name];\r\n\r\n\t\t\tif (value === null || value === undefined) return;\r\n\t\t\tif (currentValue === undefined) return;\r\n\t\t\tif (!value?.constructor) return;\r\n\t\t\tif (value.constructor !== currentValue.constructor) return;\r\n\r\n\t\t\t// дополнительная проверка на формат даты\r\n\t\t\tif (name.indexOf('date') === 0) {\r\n\t\t\t\tif (Array.isArray(value)) {\r\n\t\t\t\t\t// value.forEach((valueI) => {\r\n\t\t\t\t\t// \tif (!/\\d\\d\\d\\d-\\d\\d-\\d\\d/.test(valueI)) return;\r\n\t\t\t\t\t// });\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (typeof (value) === 'string') {\r\n\t\t\t\t\t\tif (!/\\d\\d\\d\\d-\\d\\d-\\d\\d/.test(value)) return;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tthis.#store[name] = value;\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Сгенерировать Map объект с опциями со значениями в виде json строк\r\n\t */\r\n\t#genDataFormat(data: Map<string, any>) {\r\n\t\tconst dataFormatted = new Map();\r\n\r\n\t\tdata.forEach((value, name) => {\r\n\t\t\tif (value === null) return;\r\n\r\n\t\t\tvalue = JSON.stringify(value);\r\n\r\n\t\t\tdataFormatted.set(name, value);\r\n\t\t});\r\n\r\n\t\treturn dataFormatted;\r\n\t}\r\n\r\n\t/**\r\n\t * Сгенерировать Map объект с опциями со значениями в оригинальном виде\r\n\t */\r\n\t#genDataUnFormat(dataFormatted: Map<string, string>) {\r\n\t\tconst data: Map<string, any> = new Map();\r\n\r\n\t\tdataFormatted.forEach((value, name) => {\r\n\t\t\tif (value === null || value === undefined || value === 'false') return;\r\n\r\n\t\t\ttry {\r\n\t\t\t\tif (typeof (value) === 'string' && !/^\\d\\d\\d\\d-\\d\\d-\\d\\d$/.test(value)) value = JSON.parse(value);\r\n\r\n\t\t\t\tif (value === null || value === undefined || value === 'false') return;\r\n\t\t\t} catch (e) {\r\n\t\t\t\t// не json строка\r\n\t\t\t}\r\n\r\n\t\t\tdata.set(name, value);\r\n\t\t});\r\n\r\n\t\treturn data;\r\n\t}\r\n\r\n\t/**\r\n\t * Установить опции из хеша адреса страницы\r\n\t */\r\n\t#loadFromHash() {\r\n\t\tlet dataHash: any;\r\n\t\ttry {\r\n\t\t\tdataHash = JSON.parse(getHash(this.#storeId));\r\n\t\t} catch (e) {\r\n\r\n\t\t}\r\n\t\tif (!dataHash) return;\r\n\r\n\t\tconst data: Map<string, any> = new Map();\r\n\r\n\t\tthis.#namesUrlHash.forEach((name) => {\r\n\t\t\tconst value = dataHash[name];\r\n\t\t\tif (!value) return;\r\n\r\n\t\t\tdata.set(name, value);\r\n\t\t});\r\n\r\n\t\tthis.#setOptions(data);\r\n\t}\r\n\r\n\t/**\r\n\t * Сохранить опции в хеш адреса страницы\r\n\t */\r\n\t#saveInHash() {\r\n\t\tconst data = new Map();\r\n\r\n\t\tthis.#namesUrlHash.forEach((name) => {\r\n\t\t\tconst value = this.#store[name];\r\n\r\n\t\t\tdata.set(name, value);\r\n\t\t});\r\n\r\n\t\tconst dataObject = Object.fromEntries(data);\r\n\t\tconst dataJSON = JSON.stringify(dataObject);\r\n\r\n\t\tsetHash(this.#storeId, dataJSON);\r\n\t};\r\n\r\n\t/**\r\n\t * Установить опции из localStorage\r\n\t * @param isLocal - сохранить с учетом адреса страницы\r\n\t */\r\n\t#loadFromStorage(isLocal = false) {\r\n\t\tconst dataFormatted = new Map();\r\n\r\n\t\t// let names = this.#namesStorage;\r\n\t\tlet storageNamespace = 'state:' + this.#storeId;\r\n\r\n\t\tif (isLocal) {\r\n\t\t\t// names = this.#namesStorageLocal;\r\n\t\t\tstorageNamespace = 'state:' + this.#storeId + ':' + location.pathname;\r\n\t\t}\r\n\r\n\t\tthis.#namesStorage.forEach((name) => {\r\n\t\t\tconst value = localStorage.getItem(storageNamespace + ':' + name);\r\n\t\t\tdataFormatted.set(name, value);\r\n\t\t});\r\n\r\n\t\tconst data = this.#genDataUnFormat(dataFormatted);\r\n\r\n\t\tthis.#setOptions(data);\r\n\t}\r\n\r\n\t/**\r\n\t * Сохранить опции в localStorage\r\n\t * @param isLocal - сохранить с учетом адреса страницы\r\n\t */\r\n\t#saveInStorage(isLocal = false) {\r\n\t\tconst data = new Map();\r\n\r\n\t\tlet names = this.#namesStorage;\r\n\t\tlet storageNamespace = 'state:' + this.#storeId;\r\n\r\n\t\tif (isLocal) {\r\n\t\t\tnames = this.#namesStorageLocal;\r\n\t\t\tstorageNamespace = 'state:' + this.#storeId + ':' + location.pathname;\r\n\t\t}\r\n\r\n\t\tnames.forEach((name) => {\r\n\t\t\tconst value = this.#store[name];\r\n\r\n\t\t\tdata.set(name, value);\r\n\t\t});\r\n\r\n\t\tconst dataFormatted = this.#genDataFormat(data);\r\n\r\n\t\tnames.forEach((name) => {\r\n\t\t\tconst value = dataFormatted.get(name);\r\n\r\n\t\t\tlocalStorage.setItem(storageNamespace + ':' + name, value);\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Установить опции из гостевой ссылки\r\n\t */\r\n\t#loadFromGuestLink() {\r\n\t\tconst guestData = this.#user?.guest_data?.data;\r\n\t\tif (!guestData) return;\r\n\r\n\t\t// общие правила для гостевых сессий\r\n\t\tif (this.#user.id === -1) this.#user.positionsReverseDates = guestData.positionsReverseDates;\r\n\r\n\t\tconst dataFormatted = new Map();\r\n\r\n\t\tthis.#namesGuestLink.forEach((name) => {\r\n\t\t\tconst value = guestData[name];\r\n\t\t\tdataFormatted.set(name, value);\r\n\t\t});\r\n\r\n\t\tconst data = this.#genDataUnFormat(dataFormatted);\r\n\r\n\t\tthis.#setOptions(data);\r\n\r\n\t\tconst $guestTitle = $('.mod_guest_title');\r\n\r\n\t\t// TODO: вынести в опции плагина\r\n\t\tif (this.#store.competitorsIds?.length === 1 && this.#Page.page.data.competitors) {\r\n\t\t\tlet competitors = this.#Page.page.data.competitors.filter((competitor: any) => competitor.id === guestData.competitorsIds[0]);\r\n\t\t\tif (competitors.length) {\r\n\t\t\t\t$('a', $guestTitle).attr('href', 'http://' + competitors[0].url);\r\n\t\t\t\t$('a', $guestTitle).text(competitors[0].name);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Подготовить входные параметры перед инициализацией основного функционала\r\n\t *\r\n\t * Входные параметры устанавливаются при открытии страницы\r\n\t *\r\n\t * Входные параметры могут меняться пользоваталем и устаревать\r\n\t */\r\n\t#prepareParams() {\r\n\t\t// контролль за вводом регионов\r\n\t\t// TODO: вынести в опции плагина\r\n\t\tif (this.#store.regionsIndexes) {\r\n\t\t\twatch(this.#store.regionsIndexes, (regionsIndexes) => {\r\n\t\t\t\tif (!regionsIndexes.length) return;\r\n\r\n\t\t\t\t// приведение типа\r\n\t\t\t\tregionsIndexes.forEach((regionIndex: number, index: number) => regionsIndexes[index] = regionIndex);\r\n\r\n\t\t\t\t// оставить только включенные регионы\r\n\t\t\t\t// @ts-ignore\r\n\t\t\t\tconst mapSearchers = TplProjectSelectorRegion.genSearchersMap();\r\n\r\n\t\t\t\tconst availableRegionsIndexes: number[] = [];\r\n\t\t\t\tmapSearchers.forEach((searcher: any) => {\r\n\t\t\t\t\tsearcher.regions.forEach((region: any) => {\r\n\t\t\t\t\t\tif (region.index === -1) return;\r\n\r\n\t\t\t\t\t\tavailableRegionsIndexes.push(region.index);\r\n\t\t\t\t\t});\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.#store.regionsIndexes = regionsIndexes.filter((regionIndex: number) => availableRegionsIndexes.includes(regionIndex));\r\n\t\t\t}, { immediate: true });\r\n\t\t}\r\n\r\n\t\t// контролль за вводом конкурентов\r\n\t\t// TODO: вынести в опции плагина\r\n\t\tif (this.#store.competitorsIds) {\r\n\t\t\twatch(this.#store.competitorsIds, (competitorsIds) => {\r\n\t\t\t\tif (!competitorsIds.length) return;\r\n\r\n\t\t\t\t// приведение типа\r\n\t\t\t\tcompetitorsIds.forEach((competitorId: number, index: number) => competitorsIds[index] = competitorId);\r\n\r\n\t\t\t\t// оставить только включенных конкурентов\r\n\t\t\t\tconst availableCompetitorsIds = [this.#Page.page.data.project.id];\r\n\t\t\t\tthis.#Page.page.data.project.competitors.forEach((competitor: any) => {\r\n\t\t\t\t\tif (competitor.on >= 0) availableCompetitorsIds.push(competitor.id);\r\n\t\t\t\t});\r\n\r\n\t\t\t\tthis.#store.competitorsIds = competitorsIds.filter((competitorId: number) => availableCompetitorsIds.includes(competitorId));\r\n\t\t\t}, { immediate: true });\r\n\t\t}\r\n\t}\r\n\r\n}\r\n\r\ntype Options = {\r\n\t/**\r\n\t * TODO: Убрать из плагина\r\n\t */\r\n\tPage: any,\r\n\r\n\t/**\r\n\t * Объект с настройками пользователя\r\n\t */\r\n\tuser: any,\r\n\r\n\t/**\r\n\t * Объект для работы с API\r\n\t *\r\n\t * См. на сайте: @/component/api/core/api.ts\r\n\t */\r\n\tApi: any;\r\n\r\n\t/**\r\n\t * Имена свойств для сохранения в URL\r\n\t */\r\n\ttpaNamesUrlHash?: string[],\r\n\r\n\t/**\r\n\t * Имена свойств для сохранения в localStorage\r\n\t */\r\n\ttpaNamesStorage?: string[],\r\n\r\n\t/**\r\n\t * Имена свойств для сохранения в localStorage с учетом пути URL\r\n\t *\r\n\t * Каждый URL будет работать со своим состоянием\r\n\t */\r\n\ttpaNamesStorageLocal?: string[],\r\n\r\n\t/**\r\n\t * Имена свойств для работы с гостевой ссылкой\r\n\t *\r\n\t * Для генерации гостевой ссылки используйте store.genGuestLink(data, url)\r\n\t */\r\n\ttpaNamesGuestLink?: string[],\r\n};\r\n\r\ntype Context = PiniaPluginContext & {\r\n\toptions: Options\r\n};\r\n\r\n/**\r\n * Плагин tpa (Third-party access) для pinia\r\n *\r\n * Добавляет возможность сохранять и загружать данные в/из:\r\n * \t- URL hash в адресе страницы\r\n * \t- localStorage\r\n * \t- гостевая ссылка\r\n *\r\n * Для подключения плагина нужно указань одну или несколько опций при определении defineStore():\r\n * - tpaNamesUrlHash\r\n * - tpaNamesStorage\r\n * - tpaNamesStorageLocal\r\n * - tpaNamesGuestLink\r\n */\r\nexport default (contextPinia: PiniaPluginContext) => {\r\n\tconst context = contextPinia as Context;\r\n\r\n\t// плагин подключать не нужно\r\n\tif (\r\n\t\t!context.options.tpaNamesUrlHash?.length &&\r\n\t\t!context.options.tpaNamesStorage?.length &&\r\n\t\t!context.options.tpaNamesStorageLocal?.length &&\r\n\t\t!context.options.tpaNamesGuestLink?.length\r\n\t) {\r\n\t\treturn;\r\n\t}\r\n\r\n\tnew PiniaTPA(context);\r\n}\r\n"],"names":["WorkerEvents","e","_a","forms","popup_worker","elPopup","elOpener","_d","_c","storage","data","el","binding","resolve","reject","require","name","value","UtilsLodash$1","focusOnElActiveDebounce","elsActive","isVisible","focusOnElDebounce","focusOnElActive","focus","UtilsDom","UtilsLodash","genScrollIntoViewOptions","scrollIntoViewOptions","elActive","scrollToElActiveDebounce","useStorage","scrollToElDebounce","scrollToElActive","utils_dom","scrollIntoView","isVisibleNew","UtilsScroll","connectScrollShadow","appStickyObserver","sticky","_vnode","className","entries","_el","_binding","appSwimUpObserver","appSwimUpEls","swimUpElTransform","windowHeight","triggerHeight","distance","swimUpInit","entry","swimUp","_b","$$1","tvTooltipGenOptions","vnode","options","tooltip","core","app","utils","TopNotice","PiniaTPA","#storeId","#store","#Page","#user","#Api","context","url","#loadFromStorage","save","dataGuestLink","#genOptionsForGuestLink","res","utils_clipboard","nameSnakeCase","utils_string","currentValue","dataFormatted","#loadFromHash","dataHash","utils_route","#setOptions","#saveInHash","dataJSON","isLocal","storageNamespace","#saveInStorage","names","#namesStorage","#namesStorageLocal","#loadFromGuestLink","guestData","$guestTitle","competitors","competitor","#prepareParams","regionsIndexes","regionIndex","index","mapSearchers","searcher","region","availableRegionsIndexes","competitorsIds","competitorId","availableCompetitorsIds","piniaTPA","contextPinia"],"mappings":"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"}
|
package/core/app.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as Core } from './core/core';
|
|
2
|
+
import { default as corePlugin } from './plugins/core';
|
|
3
|
+
import { Lang, default as i18nPlugin, useI18n, useI18nLang } from './plugins/i18n';
|
|
4
|
+
import { default as piniaTPAPlugin } from './plugins/piniaTPA';
|
|
5
|
+
export { Core, useI18n, useI18nLang, corePlugin, i18nPlugin, piniaTPAPlugin, };
|
|
6
|
+
export { useAsyncTopDialog, useTopDialog } from '../components/dialog/dialog/composables/utils';
|
|
7
|
+
export { TopDialogWorker } from '../components/dialog/lib/worker';
|
|
8
|
+
export type { Lang, };
|
package/core/app.js
ADDED
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
import { C as r, E as N, T as M, f as H, g as C, h as F, j as R, k as V, l as G, m as j, n as x, o as B, p as J, q as W, r as Y, s as q } from "../.chunks/forms-BciWy0wX.es.js";
|
|
2
|
+
import { t as Ut, a as Pt, u as At } from "../.chunks/forms-BciWy0wX.es.js";
|
|
3
|
+
import { defineAsyncComponent as z, watch as k } from "vue";
|
|
4
|
+
import { TopPopupWorker as d } from "../popup/worker.js";
|
|
5
|
+
import { T as Q, _ as K } from "../.chunks/utils-9b7woobj.es.js";
|
|
6
|
+
import { a as Dt, b as Nt } from "../.chunks/utils-9b7woobj.es.js";
|
|
7
|
+
import { isVisible as I } from "../utils/dom.js";
|
|
8
|
+
import { guestLinkToClipboard as X } from "../utils/clipboard.js";
|
|
9
|
+
import { camelToSnakeCase as Z } from "../utils/string.js";
|
|
10
|
+
import { getHash as tt, setHash as et } from "../utils/route.js";
|
|
11
|
+
class ot {
|
|
12
|
+
static isInited = !1;
|
|
13
|
+
/**
|
|
14
|
+
* Добавить глобальные обработчики
|
|
15
|
+
*
|
|
16
|
+
* Добавляются на страницу один раз и навсегда
|
|
17
|
+
*/
|
|
18
|
+
static init() {
|
|
19
|
+
this.isInited || (this.isInited = !0, document.addEventListener("mouseover", (t) => {
|
|
20
|
+
var e;
|
|
21
|
+
!(t.target instanceof HTMLElement) || !((e = t.target.dataset) != null && e.topPopupOpenByHover) || t.target.click();
|
|
22
|
+
}), document.addEventListener("scroll", () => {
|
|
23
|
+
r.state.isMobile || r.state.isMobileUA || d.getAll().forEach((t) => d.close(t));
|
|
24
|
+
}), N.addOnReize((t) => {
|
|
25
|
+
r.state.isMobile && t.topEvent.widthDiff && d.getAll().forEach((e) => d.close(e));
|
|
26
|
+
}), document.addEventListener("click", this.onclick));
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Глобальный обработчик кликов
|
|
30
|
+
*
|
|
31
|
+
* Обрабатывает клики на открытие Popup
|
|
32
|
+
*/
|
|
33
|
+
static async onclick(t) {
|
|
34
|
+
var s, i, n, a, c;
|
|
35
|
+
if (!(t.target instanceof HTMLElement)) return;
|
|
36
|
+
let e;
|
|
37
|
+
switch (!0) {
|
|
38
|
+
case !!((s = t.target.dataset) != null && s.topPopup):
|
|
39
|
+
e = t.target;
|
|
40
|
+
break;
|
|
41
|
+
case !!((i = t.target.parentElement) != null && i.dataset.topPopup):
|
|
42
|
+
e = t.target.parentElement;
|
|
43
|
+
break;
|
|
44
|
+
case !!((a = (n = t.target.parentElement) == null ? void 0 : n.parentElement) != null && a.dataset.topPopup):
|
|
45
|
+
e = (c = t.target.parentElement) == null ? void 0 : c.parentElement;
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
e && (e.dataset.topPopupDisabled || e.dataset.topPopupOpened || (t.preventDefault(), await d.openByOpener(e)));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
let v;
|
|
52
|
+
const st = {
|
|
53
|
+
mounted: async (o, t) => {
|
|
54
|
+
v || (v = (await import("../utils/dom.js")).storage);
|
|
55
|
+
const e = t.arg, s = t.value;
|
|
56
|
+
v(o, e, s);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
let E, u = [], b;
|
|
60
|
+
const it = async () => {
|
|
61
|
+
const { isVisible: o } = await import("../utils/dom.js");
|
|
62
|
+
if (u = u.filter(o), !u.length) return;
|
|
63
|
+
u[0].focus(), u = [];
|
|
64
|
+
}, O = async (o) => {
|
|
65
|
+
E || (E = await import("../utils/lodash.js")), b || (b = E.debounce(it, 30)), u.push(o), b();
|
|
66
|
+
}, nt = {
|
|
67
|
+
mounted: function(o, t) {
|
|
68
|
+
o.__TOP_V_FOCUS_VALUE = t.value ?? !0, (t.value ?? !0) && O(o);
|
|
69
|
+
},
|
|
70
|
+
updated: function(o, t) {
|
|
71
|
+
t.modifiers.onupdate && o.__TOP_V_FOCUS_VALUE !== (t.value ?? !0) && (o.__TOP_V_FOCUS_VALUE = t.value ?? !0, (t.value ?? !0) && O(o));
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
let m, S;
|
|
75
|
+
const D = (o) => (typeof o == "boolean" || (o ? o = { ...o } : o = {}, o.behavior ??= "smooth", o.block ??= "nearest", o.inline ??= "nearest"), o);
|
|
76
|
+
let g, _;
|
|
77
|
+
const at = async () => {
|
|
78
|
+
if (!g) return;
|
|
79
|
+
const o = await L(g);
|
|
80
|
+
o.isVisible && g.scrollIntoView(o.scrollIntoViewOptions);
|
|
81
|
+
}, U = async (o) => {
|
|
82
|
+
S || (S = await import("../utils/lodash.js")), _ || (_ = S.debounce(at, 30)), g = o, _();
|
|
83
|
+
}, L = async (o, t) => {
|
|
84
|
+
m || (m = await import("../utils/dom.js"));
|
|
85
|
+
let e = m.storage(o, "v-top-scrollIntoView");
|
|
86
|
+
return e || (e = {
|
|
87
|
+
isVisible: I(o),
|
|
88
|
+
scrollIntoViewOptions: D(t)
|
|
89
|
+
}, m.storage(o, "v-top-scrollIntoView", e)), e;
|
|
90
|
+
}, rt = {
|
|
91
|
+
async mounted(o, t) {
|
|
92
|
+
await L(o, t.value), t.modifiers.immediate && U(o);
|
|
93
|
+
},
|
|
94
|
+
async updated(o, t) {
|
|
95
|
+
const e = await L(o, t.value);
|
|
96
|
+
e.scrollIntoViewOptions = D(t.value);
|
|
97
|
+
const s = I(o);
|
|
98
|
+
s && e.isVisible !== s && U(o), e.isVisible = s;
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
let p;
|
|
102
|
+
const ct = {
|
|
103
|
+
async mounted(o) {
|
|
104
|
+
p || (p = await import("../utils/scroll.js")), p.connectScrollShadow(o);
|
|
105
|
+
},
|
|
106
|
+
async unmounted(o) {
|
|
107
|
+
p || (p = await import("../utils/scroll.js")), p.unconnectScrollShadow(o);
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
let f;
|
|
111
|
+
const lt = {
|
|
112
|
+
mounted(o, t, e) {
|
|
113
|
+
const s = t.value || "top-sticky";
|
|
114
|
+
f = new IntersectionObserver((i) => {
|
|
115
|
+
let n = i[0].intersectionRatio < 1;
|
|
116
|
+
n && t.modifiers.bottom && i[0].intersectionRect.y === 0 && (n = !1), o.classList.toggle(s, n);
|
|
117
|
+
}, {
|
|
118
|
+
threshold: [1]
|
|
119
|
+
}), f.observe(o);
|
|
120
|
+
},
|
|
121
|
+
unmounted(o, t, e) {
|
|
122
|
+
f == null || f.disconnect();
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
let P = !1, h;
|
|
126
|
+
const T = /* @__PURE__ */ new Map(), pt = (o, t) => {
|
|
127
|
+
const { distance: e, percent: s } = o.directiveSwipUpOptions, i = o.getBoundingClientRect().top, n = t * s / 100 / e, a = (t - i) / n;
|
|
128
|
+
a <= e ? o.style.transform = `translateY(${e - a}px)` : o.style.transform = "translateY(0px)";
|
|
129
|
+
}, dt = (o) => {
|
|
130
|
+
let t = window.innerHeight;
|
|
131
|
+
window.addEventListener("scroll", () => {
|
|
132
|
+
T.forEach((e) => pt(e, t));
|
|
133
|
+
}, { passive: !0 }), h = new IntersectionObserver((e) => {
|
|
134
|
+
t = window.innerHeight, e.forEach((s) => {
|
|
135
|
+
const i = s.target;
|
|
136
|
+
if (s.intersectionRatio < 0.1 ? T.delete(i) : T.set(i, i), s.intersectionRatio === 0) {
|
|
137
|
+
const { distance: n } = i.directiveSwipUpOptions;
|
|
138
|
+
i.style.transform = `translateY(${n}px)`;
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
}, {
|
|
142
|
+
threshold: 0.1
|
|
143
|
+
});
|
|
144
|
+
}, ut = {
|
|
145
|
+
mounted(o, t, e) {
|
|
146
|
+
var s, i;
|
|
147
|
+
r.state.isMobileUA || (o.directiveSwipUpOptions = {
|
|
148
|
+
distance: ((s = t.value) == null ? void 0 : s.distance) ?? 100,
|
|
149
|
+
// количество px на которые блок изначально смещен вниз,
|
|
150
|
+
percent: ((i = t.value) == null ? void 0 : i.percent) ?? 30
|
|
151
|
+
// процент высоты экрана поднявшись на который блок закончит подплытие
|
|
152
|
+
}, P || (dt(), P = !0), h.observe(o));
|
|
153
|
+
},
|
|
154
|
+
unmounted(o, t, e) {
|
|
155
|
+
T.delete(o), h == null || h.unobserve(o);
|
|
156
|
+
}
|
|
157
|
+
}, y = (o) => {
|
|
158
|
+
var t, e;
|
|
159
|
+
if (!((e = (t = r.$) == null ? void 0 : t.ui) != null && e.tooltip)) {
|
|
160
|
+
console.info("Для работы v-top-tooltip требуется глобальная загрузка jQuery UI Tooltip");
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
return r.$(o);
|
|
164
|
+
}, A = (o, t) => {
|
|
165
|
+
var s;
|
|
166
|
+
const e = o.value ?? {};
|
|
167
|
+
return e.content ??= (s = t.props) == null ? void 0 : s.title, e.content = String(e.content).replace(/\r\n|\r|\n/g, "<br>"), e.position ??= {
|
|
168
|
+
my: "bottom-18px",
|
|
169
|
+
at: "top center"
|
|
170
|
+
}, e;
|
|
171
|
+
}, ft = {
|
|
172
|
+
mounted(o, t, e) {
|
|
173
|
+
var s;
|
|
174
|
+
(s = y(o)) == null || s.tooltip(A(t, e));
|
|
175
|
+
},
|
|
176
|
+
updated(o, t, e, s) {
|
|
177
|
+
var a;
|
|
178
|
+
const i = A(t, e), n = (a = y(o)) == null ? void 0 : a.tooltip("instance");
|
|
179
|
+
n && (n.options = {
|
|
180
|
+
...n.options,
|
|
181
|
+
...i
|
|
182
|
+
});
|
|
183
|
+
},
|
|
184
|
+
unmounted(o, t, e) {
|
|
185
|
+
var s;
|
|
186
|
+
(s = y(o)) == null || s.tooltip("destroy");
|
|
187
|
+
}
|
|
188
|
+
}, ht = z(() => import("../.chunks/notice-DQSQs6yC.es.js"));
|
|
189
|
+
window.vd = console.log;
|
|
190
|
+
const yt = {
|
|
191
|
+
install: (o, t) => {
|
|
192
|
+
o.config.globalProperties.$core = r, o.config.globalProperties.$vd = console.log;
|
|
193
|
+
for (const e in t)
|
|
194
|
+
r.state[e] = t[e];
|
|
195
|
+
t.widthForMobile && (r.widthForMobile = t.widthForMobile), t.themeName && (r.themeName = t.themeName), r._setState(), t.topPopupOptions && (d.options = t.topPopupOptions), ot.init(), Q.init(t.topDialogOptions), o.directive("top-data", st), o.directive("top-focus", nt), o.directive("top-scroll-into-view", rt), o.directive("top-scroll-shadow", ct), o.directive("top-sticky", lt), o.directive("top-swim-up", ut), o.directive("top-tooltip", ft), o.component("TopAvatar", M), o.component("TopButton", H), o.component("TopCheckbox", C), o.component("TopControlLabel", F), o.component("TopHint", R), o.component("TopInput", V), o.component("TopInputDate", G), o.component("TopInputRange", j), o.component("TopLoadbar", x), o.component("TopRadio", B), o.component("TopSelect", J), o.component("TopSwitcher", W), o.component("TopTextarea", Y), o.component("TopNotice", ht), o.component("TopDialogs", K);
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
class mt {
|
|
199
|
+
#e;
|
|
200
|
+
#t;
|
|
201
|
+
/**
|
|
202
|
+
* @deprecated
|
|
203
|
+
*/
|
|
204
|
+
#o;
|
|
205
|
+
#s;
|
|
206
|
+
#c;
|
|
207
|
+
#i = [];
|
|
208
|
+
#n = [];
|
|
209
|
+
#l = [];
|
|
210
|
+
#a = [];
|
|
211
|
+
constructor(t) {
|
|
212
|
+
var s;
|
|
213
|
+
this.#t = t.store, this.#e = this.#t.$id, this.#o = t.options.Page, this.#s = t.options.user, this.#c = t.options.Api, this.#i = t.options.tpaNamesUrlHash || [], this.#n = t.options.tpaNamesStorage || [], this.#l = t.options.tpaNamesStorageLocal || [], this.#a = t.options.tpaNamesGuestLink || [], t.store.genGuestLink = (i, n) => this.genGuestLink(i, n), (s = this.#s.guest_data) != null && s.data || (this.#d(), this.#d(!0), this.#h()), this.#T(), this.#w();
|
|
214
|
+
const e = q(() => {
|
|
215
|
+
this.#m(), this.#g();
|
|
216
|
+
});
|
|
217
|
+
t.store.$subscribe(e);
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Сгенерировать гостевую ссылку
|
|
221
|
+
*
|
|
222
|
+
* Метод, путь к которому указан в url, должен возвращать сгенерированную ссылку
|
|
223
|
+
*/
|
|
224
|
+
async genGuestLink(t, e) {
|
|
225
|
+
const s = this.#u();
|
|
226
|
+
e = Object.assign(e, Object.fromEntries(s));
|
|
227
|
+
const i = await this.#c.gen(t, "fetchColumn").call({}, e);
|
|
228
|
+
i != null && i.errors || await X(i.result);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Сгенерировать опции для гостевой ссылки
|
|
232
|
+
*/
|
|
233
|
+
#u() {
|
|
234
|
+
const t = /* @__PURE__ */ new Map();
|
|
235
|
+
return this.#a.forEach((e) => {
|
|
236
|
+
const s = Z(e);
|
|
237
|
+
t.set(s, this.#t[e]);
|
|
238
|
+
}), t;
|
|
239
|
+
}
|
|
240
|
+
/**
|
|
241
|
+
* Установить опции из объекта без фиксации состояния
|
|
242
|
+
*/
|
|
243
|
+
#r(t) {
|
|
244
|
+
t.forEach((e, s) => {
|
|
245
|
+
const i = this.#t[s];
|
|
246
|
+
if (e != null && i !== void 0 && e != null && e.constructor && e.constructor === i.constructor) {
|
|
247
|
+
if (s.indexOf("date") === 0 && !Array.isArray(e)) {
|
|
248
|
+
if (typeof e == "string" && !/\d\d\d\d-\d\d-\d\d/.test(e))
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
251
|
+
this.#t[s] = e;
|
|
252
|
+
}
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Сгенерировать Map объект с опциями со значениями в виде json строк
|
|
257
|
+
*/
|
|
258
|
+
#f(t) {
|
|
259
|
+
const e = /* @__PURE__ */ new Map();
|
|
260
|
+
return t.forEach((s, i) => {
|
|
261
|
+
s !== null && (s = JSON.stringify(s), e.set(i, s));
|
|
262
|
+
}), e;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Сгенерировать Map объект с опциями со значениями в оригинальном виде
|
|
266
|
+
*/
|
|
267
|
+
#p(t) {
|
|
268
|
+
const e = /* @__PURE__ */ new Map();
|
|
269
|
+
return t.forEach((s, i) => {
|
|
270
|
+
if (!(s == null || s === "false")) {
|
|
271
|
+
try {
|
|
272
|
+
if (typeof s == "string" && !/^\d\d\d\d-\d\d-\d\d$/.test(s) && (s = JSON.parse(s)), s == null || s === "false") return;
|
|
273
|
+
} catch {
|
|
274
|
+
}
|
|
275
|
+
e.set(i, s);
|
|
276
|
+
}
|
|
277
|
+
}), e;
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Установить опции из хеша адреса страницы
|
|
281
|
+
*/
|
|
282
|
+
#h() {
|
|
283
|
+
let t;
|
|
284
|
+
try {
|
|
285
|
+
t = JSON.parse(tt(this.#e));
|
|
286
|
+
} catch {
|
|
287
|
+
}
|
|
288
|
+
if (!t) return;
|
|
289
|
+
const e = /* @__PURE__ */ new Map();
|
|
290
|
+
this.#i.forEach((s) => {
|
|
291
|
+
const i = t[s];
|
|
292
|
+
i && e.set(s, i);
|
|
293
|
+
}), this.#r(e);
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* Сохранить опции в хеш адреса страницы
|
|
297
|
+
*/
|
|
298
|
+
#m() {
|
|
299
|
+
const t = /* @__PURE__ */ new Map();
|
|
300
|
+
this.#i.forEach((i) => {
|
|
301
|
+
const n = this.#t[i];
|
|
302
|
+
t.set(i, n);
|
|
303
|
+
});
|
|
304
|
+
const e = Object.fromEntries(t), s = JSON.stringify(e);
|
|
305
|
+
et(this.#e, s);
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Установить опции из localStorage
|
|
309
|
+
* @param isLocal - сохранить с учетом адреса страницы
|
|
310
|
+
*/
|
|
311
|
+
#d(t = !1) {
|
|
312
|
+
const e = /* @__PURE__ */ new Map();
|
|
313
|
+
let s = "state:" + this.#e;
|
|
314
|
+
t && (s = "state:" + this.#e + ":" + location.pathname), this.#n.forEach((n) => {
|
|
315
|
+
const a = localStorage.getItem(s + ":" + n);
|
|
316
|
+
e.set(n, a);
|
|
317
|
+
});
|
|
318
|
+
const i = this.#p(e);
|
|
319
|
+
this.#r(i);
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* Сохранить опции в localStorage
|
|
323
|
+
* @param isLocal - сохранить с учетом адреса страницы
|
|
324
|
+
*/
|
|
325
|
+
#g(t = !1) {
|
|
326
|
+
const e = /* @__PURE__ */ new Map();
|
|
327
|
+
let s = this.#n, i = "state:" + this.#e;
|
|
328
|
+
t && (s = this.#l, i = "state:" + this.#e + ":" + location.pathname), s.forEach((a) => {
|
|
329
|
+
const c = this.#t[a];
|
|
330
|
+
e.set(a, c);
|
|
331
|
+
});
|
|
332
|
+
const n = this.#f(e);
|
|
333
|
+
s.forEach((a) => {
|
|
334
|
+
const c = n.get(a);
|
|
335
|
+
localStorage.setItem(i + ":" + a, c);
|
|
336
|
+
});
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Установить опции из гостевой ссылки
|
|
340
|
+
*/
|
|
341
|
+
#T() {
|
|
342
|
+
var n, a, c;
|
|
343
|
+
const t = (a = (n = this.#s) == null ? void 0 : n.guest_data) == null ? void 0 : a.data;
|
|
344
|
+
if (!t) return;
|
|
345
|
+
this.#s.id === -1 && (this.#s.positionsReverseDates = t.positionsReverseDates);
|
|
346
|
+
const e = /* @__PURE__ */ new Map();
|
|
347
|
+
this.#a.forEach((l) => {
|
|
348
|
+
const w = t[l];
|
|
349
|
+
e.set(l, w);
|
|
350
|
+
});
|
|
351
|
+
const s = this.#p(e);
|
|
352
|
+
this.#r(s);
|
|
353
|
+
const i = $(".mod_guest_title");
|
|
354
|
+
if (((c = this.#t.competitorsIds) == null ? void 0 : c.length) === 1 && this.#o.page.data.competitors) {
|
|
355
|
+
let l = this.#o.page.data.competitors.filter((w) => w.id === t.competitorsIds[0]);
|
|
356
|
+
l.length && ($("a", i).attr("href", "http://" + l[0].url), $("a", i).text(l[0].name));
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
/**
|
|
360
|
+
* Подготовить входные параметры перед инициализацией основного функционала
|
|
361
|
+
*
|
|
362
|
+
* Входные параметры устанавливаются при открытии страницы
|
|
363
|
+
*
|
|
364
|
+
* Входные параметры могут меняться пользоваталем и устаревать
|
|
365
|
+
*/
|
|
366
|
+
#w() {
|
|
367
|
+
this.#t.regionsIndexes && k(this.#t.regionsIndexes, (t) => {
|
|
368
|
+
if (!t.length) return;
|
|
369
|
+
t.forEach((i, n) => t[n] = i);
|
|
370
|
+
const e = TplProjectSelectorRegion.genSearchersMap(), s = [];
|
|
371
|
+
e.forEach((i) => {
|
|
372
|
+
i.regions.forEach((n) => {
|
|
373
|
+
n.index !== -1 && s.push(n.index);
|
|
374
|
+
});
|
|
375
|
+
}), this.#t.regionsIndexes = t.filter((i) => s.includes(i));
|
|
376
|
+
}, { immediate: !0 }), this.#t.competitorsIds && k(this.#t.competitorsIds, (t) => {
|
|
377
|
+
if (!t.length) return;
|
|
378
|
+
t.forEach((s, i) => t[i] = s);
|
|
379
|
+
const e = [this.#o.page.data.project.id];
|
|
380
|
+
this.#o.page.data.project.competitors.forEach((s) => {
|
|
381
|
+
s.on >= 0 && e.push(s.id);
|
|
382
|
+
}), this.#t.competitorsIds = t.filter((s) => e.includes(s));
|
|
383
|
+
}, { immediate: !0 });
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
const Lt = (o) => {
|
|
387
|
+
var e, s, i, n;
|
|
388
|
+
const t = o;
|
|
389
|
+
!((e = t.options.tpaNamesUrlHash) != null && e.length) && !((s = t.options.tpaNamesStorage) != null && s.length) && !((i = t.options.tpaNamesStorageLocal) != null && i.length) && !((n = t.options.tpaNamesGuestLink) != null && n.length) || new mt(t);
|
|
390
|
+
};
|
|
391
|
+
export {
|
|
392
|
+
r as Core,
|
|
393
|
+
Q as TopDialogWorker,
|
|
394
|
+
yt as corePlugin,
|
|
395
|
+
Ut as i18nPlugin,
|
|
396
|
+
Lt as piniaTPAPlugin,
|
|
397
|
+
Dt as useAsyncTopDialog,
|
|
398
|
+
Pt as useI18n,
|
|
399
|
+
At as useI18nLang,
|
|
400
|
+
Nt as useTopDialog
|
|
401
|
+
};
|
|
402
|
+
//# sourceMappingURL=app.js.map
|