@topvisor/ui 1.1.0 → 1.2.0
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/.gitlab-ci/.gitlab-ci.yml +26 -0
- package/.gitlab-ci/common/install.yml +21 -0
- package/.gitlab-ci/common/lint.yml +14 -0
- package/.gitlab-ci/common/version.yml +23 -0
- package/.gitlab-ci/storybook/build.yml +20 -0
- package/.gitlab-ci/storybook/deploy.yml +49 -0
- package/.gitlab-ci/ui/build.yml +13 -0
- package/.gitlab-ci/ui/deploy.yml +23 -0
- package/.idea/.gitignore +11 -0
- package/.idea/codeStyles/Project.xml +205 -0
- package/.idea/codeStyles/codeStyleConfig.xml +5 -0
- package/.idea/externalDependencies.xml +6 -0
- package/.idea/inspectionProfiles/Disabled.xml +824 -0
- package/.idea/inspectionProfiles/Project_Default.xml +33 -0
- package/.idea/php.xml +19 -0
- package/.idea/vcs.xml +6 -0
- package/.storybook/TopTheme.ts +115 -0
- package/.storybook/TopThemeManager.ts +53 -0
- package/.storybook/main.ts +51 -0
- package/.storybook/manager.ts +25 -0
- package/.storybook/preview-head.html +21 -0
- package/.storybook/preview.ts +47 -0
- package/.storybook/vue/coreDecorator.ts +77 -0
- package/.storybook/vue/vModelDecorator.ts +46 -0
- package/.versionrc.json +16 -0
- package/.vscode/extensions.json +11 -0
- package/.vscode/keybindings.example.json +121 -0
- package/.vscode/settings.json +45 -0
- package/CHANGELOG.md +223 -14
- package/NPM.md +25 -0
- package/PUBLISH.md +63 -0
- package/README.md +20 -69
- package/STORYBOOK.md +48 -0
- package/USE_IN_PROJECT.md +32 -0
- package/build/afterBuild.sh +11 -0
- package/build/cssModules.ts +39 -0
- package/build/genDocs.sh +19 -0
- package/build/plugin/amdFix.ts +83 -0
- package/build/plugin/autoloadCSS.ts +155 -0
- package/build/rollup.config.ts +37 -0
- package/package.json +56 -1
- package/public/README.md +82 -0
- package/src/components/charts/charts.ts +8 -0
- package/src/components/charts/miniChart/miniChart.stories.ts +67 -0
- package/src/components/charts/miniChart/miniChart.ts +110 -0
- package/src/components/charts/miniChart/miniChart.vue +158 -0
- package/src/components/charts/miniChart/stories/README.md +9 -0
- package/src/components/charts/miniChart/stories/dummy.ts +25 -0
- package/src/components/charts/miniChart/styles/miniChart.css +87 -0
- package/src/components/charts/miniChart/utils/consts.ts +9 -0
- package/src/components/charts/miniCharts/miniCharts.stories.ts +76 -0
- package/src/components/charts/miniCharts/miniCharts.ts +24 -0
- package/src/components/charts/miniCharts/miniCharts.vue +128 -0
- package/src/components/charts/miniCharts/stories/README.md +18 -0
- package/src/components/charts/miniCharts/stories/dummy.ts +70 -0
- package/src/components/charts/miniCharts/stories/overview.vue +139 -0
- package/src/components/charts/miniCharts/styles/miniCharts.css +32 -0
- package/src/components/component.ts +130 -0
- package/src/components/core/core.mdx +7 -0
- package/src/components/core/notice/item/item.vue +145 -0
- package/src/components/core/notice/item/style.css +70 -0
- package/src/components/core/notice/item/types.ts +71 -0
- package/src/components/core/notice/notice.stories.ts +105 -0
- package/src/components/core/notice/notice.vue +69 -0
- package/src/components/core/notice/stories/README.md +34 -0
- package/src/components/core/notice/types.ts +1 -0
- package/src/components/core/notice/utils.ts +115 -0
- package/src/components/dialog/dialog/Dialog (code).mdx +61 -0
- package/src/components/dialog/dialog/composables/asyncDialogHandle.ts +99 -0
- package/src/components/dialog/dialog/composables/dialogHandle.ts +176 -0
- package/src/components/dialog/dialog/composables/types.ts +12 -0
- package/src/components/dialog/dialog/composables/utils.ts +39 -0
- package/src/components/dialog/dialog/dialog.stories.ts +83 -0
- package/src/components/dialog/dialog/dialog.vue +74 -0
- package/src/components/dialog/dialog/dialogs/dialogs.vue +58 -0
- package/src/components/dialog/dialog/page/page.vue +86 -0
- package/src/components/dialog/dialog/page/types.ts +84 -0
- package/src/components/dialog/dialog/page.stories.ts +27 -0
- package/src/components/dialog/dialog/pageComponent/pageComponent.vue +57 -0
- package/src/components/dialog/dialog/pageComponent/types.ts +21 -0
- package/src/components/dialog/dialog/pageComponent.stories.ts +27 -0
- package/src/components/dialog/dialog/stories/README.md +117 -0
- package/src/components/dialog/dialog/stories/autoload.ts +12 -0
- package/src/components/dialog/dialog/stories/dialog_example/dialog_example.vue +73 -0
- package/src/components/dialog/dialog/stories/dialog_example/pages/async.vue +57 -0
- package/src/components/dialog/dialog/stories/dialog_example/pages/default.vue +64 -0
- package/src/components/dialog/dialog/stories/dialog_example/pages/headerButtons.vue +56 -0
- package/src/components/dialog/dialog/stories/dialog_example/pages/utils.ts +26 -0
- package/src/components/dialog/dialog/stories/dialog_example/pages/withoutCache.vue +64 -0
- package/src/components/dialog/dialog/stories/page/README.md +24 -0
- package/src/components/dialog/dialog/stories/pageComponent/README.md +12 -0
- package/src/components/dialog/dialog/style/dialog.css +316 -0
- package/src/components/dialog/dialog/style/dialog.m.css +40 -0
- package/src/components/dialog/dialog/style/dialog.pc.css +73 -0
- package/src/components/dialog/dialog/style/modern/dialog.css +12 -0
- package/src/components/dialog/dialog/style/modern/dialog.pc.css +3 -0
- package/src/components/dialog/dialog/types.ts +69 -0
- package/src/components/dialog/dialog.ts +7 -0
- package/src/components/dialog/lib/types.ts +26 -0
- package/src/components/dialog/lib/utils.globalEvents.ts +175 -0
- package/src/components/dialog/lib/utils.ts +525 -0
- package/src/components/dialog/lib/worker.ts +273 -0
- package/src/components/forms/README.mdx +10 -0
- package/src/components/forms/avatar/avatar.stories.ts +38 -0
- package/src/components/forms/avatar/avatar.ts +40 -0
- package/src/components/forms/avatar/avatar.vue +77 -0
- package/src/components/forms/avatar/stories/overview.vue +28 -0
- package/src/components/forms/button/button.stories.ts +118 -0
- package/src/components/forms/button/button.vue +111 -0
- package/src/components/forms/button/stories/README.md +9 -0
- package/src/components/forms/button/stories/overview.vue +33 -0
- package/src/components/forms/button/style/button.css +139 -0
- package/src/components/forms/button/style/style-outline.css +129 -0
- package/src/components/forms/button/style/style-soft.css +89 -0
- package/src/components/forms/button/style/style-transparent.css +39 -0
- package/src/components/forms/button/types.ts +66 -0
- package/src/components/forms/checkbox/checkbox.stories.ts +33 -0
- package/src/components/forms/checkbox/checkbox.ts +21 -0
- package/src/components/forms/checkbox/checkbox.vue +114 -0
- package/src/components/forms/checkbox/stories/overview.vue +171 -0
- package/src/components/forms/controlLabel/controlLabel.stories.ts +32 -0
- package/src/components/forms/controlLabel/controlLabel.ts +4 -0
- package/src/components/forms/controlLabel/controlLabel.vue +54 -0
- package/src/components/forms/forms.ts +40 -0
- package/src/components/forms/helpers.ts +11 -0
- package/src/components/forms/hint/hint.stories.ts +41 -0
- package/src/components/forms/hint/hint.ts +8 -0
- package/src/components/forms/hint/hint.vue +32 -0
- package/src/components/forms/input/input.stories.ts +32 -0
- package/src/components/forms/input/input.ts +47 -0
- package/src/components/forms/input/input.vue +189 -0
- package/src/components/forms/input/stories/overview.vue +61 -0
- package/src/components/forms/inputDate/datepicker.css +246 -0
- package/src/components/forms/inputDate/datepicker.ts +101 -0
- package/src/components/forms/inputDate/inputDate.stories.ts +41 -0
- package/src/components/forms/inputDate/inputDate.ts +5 -0
- package/src/components/forms/inputDate/inputDate.vue +133 -0
- package/src/components/forms/inputDate/stories/overview.vue +35 -0
- package/src/components/forms/inputRange/inputRange.stories.ts +53 -0
- package/src/components/forms/inputRange/inputRange.ts +3 -0
- package/src/components/forms/inputRange/inputRange.vue +39 -0
- package/src/components/forms/inputRange/stories/overview.vue +129 -0
- package/src/components/forms/loadbar/loadbar.stories.ts +17 -0
- package/src/components/forms/loadbar/loadbar.vue +37 -0
- package/src/components/forms/radio/radio.stories.ts +34 -0
- package/src/components/forms/radio/radio.ts +15 -0
- package/src/components/forms/radio/radio.vue +97 -0
- package/src/components/forms/radio/stories/overview.vue +79 -0
- package/src/components/forms/select/select.stories.ts +69 -0
- package/src/components/forms/select/select.ts +69 -0
- package/src/components/forms/select/select.vue +300 -0
- package/src/components/forms/select/stories/exampleOptions.ts +61 -0
- package/src/components/forms/select/stories/overview.vue +72 -0
- package/src/components/forms/switcher/stories/overview.vue +139 -0
- package/src/components/forms/switcher/switcher.stories.ts +33 -0
- package/src/components/forms/switcher/switcher.ts +22 -0
- package/src/components/forms/switcher/switcher.vue +118 -0
- package/src/components/forms/textarea/stories/overview.vue +62 -0
- package/src/components/forms/textarea/textarea.stories.ts +34 -0
- package/src/components/forms/textarea/textarea.ts +47 -0
- package/src/components/forms/textarea/textarea.vue +123 -0
- package/src/components/formsExt/README.mdx +5 -0
- package/src/components/formsExt/editArea/editArea.stories.ts +41 -0
- package/src/components/formsExt/editArea/editArea.ts +41 -0
- package/src/components/formsExt/editArea/editArea.vue +198 -0
- package/src/components/formsExt/editArea/stories/README.md +21 -0
- package/src/components/formsExt/editArea/stories/overview.vue +67 -0
- package/src/components/formsExt/editInput/editInput.stories.ts +36 -0
- package/src/components/formsExt/editInput/editInput.ts +20 -0
- package/src/components/formsExt/editInput/editInput.vue +54 -0
- package/src/components/formsExt/editInput/stories/overview.vue +54 -0
- package/src/components/formsExt/formsExt.ts +15 -0
- package/src/components/formsExt/info/info.stories.ts +35 -0
- package/src/components/formsExt/info/info.vue +84 -0
- package/src/components/formsExt/info/stories/overview.vue +29 -0
- package/src/components/formsExt/info/types.ts +25 -0
- package/src/components/formsExt/menu/menu.stories.ts +59 -0
- package/src/components/formsExt/menu/menu.ts +45 -0
- package/src/components/formsExt/menu/menu.vue +321 -0
- package/src/components/formsExt/menu/stories/items.ts +18 -0
- package/src/components/formsExt/menu/stories/overview.vue +52 -0
- package/src/components/formsExt/navigationMenu/item.vue +186 -0
- package/src/components/formsExt/navigationMenu/navigationMenu.stories.ts +37 -0
- package/src/components/formsExt/navigationMenu/navigationMenu.ts +28 -0
- package/src/components/formsExt/navigationMenu/navigationMenu.vue +40 -0
- package/src/components/formsExt/navigationMenu/stories/items.ts +116 -0
- package/src/components/formsExt/radioGroup/radioGroup.stories.ts +51 -0
- package/src/components/formsExt/radioGroup/radioGroup.ts +28 -0
- package/src/components/formsExt/radioGroup/radioGroup.vue +146 -0
- package/src/components/formsExt/radioGroup/stories/overview.vue +78 -0
- package/src/components/formsExt/radioGroup/styles/top-scrollBar.css +52 -0
- package/src/components/formsExt/selector2/api.ts +148 -0
- package/src/components/formsExt/selector2/itemMulti.vue +57 -0
- package/src/components/formsExt/selector2/selector2.stories.ts +48 -0
- package/src/components/formsExt/selector2/selector2.ts +145 -0
- package/src/components/formsExt/selector2/selector2.vue +389 -0
- package/src/components/formsExt/selector2/stories/dummyAPIRequest.ts +58 -0
- package/src/components/formsExt/selector2/stories/overview.vue +93 -0
- package/src/components/helper.js +10 -0
- package/src/components/helpersStories.ts +205 -0
- package/src/components/layout/islandRows/islandRows.stories.ts +139 -0
- package/src/components/layout/islandRows/islandRows.vue +53 -0
- package/src/components/layout/islandRows/islandRowsRow/islandRowsRow.vue +36 -0
- package/src/components/layout/islandRows/islandRowsRow/types.ts +1 -0
- package/src/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue +16 -0
- package/src/components/layout/islandRows/stories/README.md +8 -0
- package/src/components/layout/islandRows/types.ts +11 -0
- package/src/components/layout/layout.ts +11 -0
- package/src/components/layout/rows/rows.stories.ts +48 -0
- package/src/components/layout/rows/rows.vue +46 -0
- package/src/components/layout/rows/stories/README.md +10 -0
- package/src/components/layout/rows/types.ts +6 -0
- package/src/components/popup/alert/alert.stories.ts +71 -0
- package/src/components/popup/alert/alert.ts +11 -0
- package/src/components/popup/alert/alert.vue +46 -0
- package/src/components/popup/alert/stories/overview.vue +40 -0
- package/src/components/popup/confirm/confirm.stories.ts +75 -0
- package/src/components/popup/confirm/confirm.ts +26 -0
- package/src/components/popup/confirm/confirm.vue +75 -0
- package/src/components/popup/confirm/stories/overview.vue +62 -0
- package/src/components/popup/lib/popup.globalEvents.ts +239 -0
- package/src/components/popup/lib/popup.ts +790 -0
- package/src/components/popup/lib/worker.globalEvents.ts +97 -0
- package/src/components/popup/lib/worker.ts +286 -0
- package/src/components/popup/popup/listItem.vue +35 -0
- package/src/components/popup/popup/opener.vue +81 -0
- package/src/components/popup/popup/popup.stories.ts +74 -0
- package/src/components/popup/popup/popup.ts +120 -0
- package/src/components/popup/popup/popup.vue +168 -0
- package/src/components/popup/popup/stories/README.md +55 -0
- package/src/components/popup/popup/stories/listItems.vue +44 -0
- package/src/components/popup/popup/stories/listSubItems.vue +47 -0
- package/src/components/popup/popup/stories/overview.vue +210 -0
- package/src/components/popup/popup/style/popup.css +345 -0
- package/src/components/popup/popup/style/popup.m.css +72 -0
- package/src/components/popup/popup/style/popup.pc.css +26 -0
- package/src/components/popup/popup/widgetInput.vue +43 -0
- package/src/components/popup/popup.ts +17 -0
- package/src/components/popup/prompt/prompt.stories.ts +78 -0
- package/src/components/popup/prompt/prompt.ts +26 -0
- package/src/components/popup/prompt/prompt.vue +84 -0
- package/src/components/popup/prompt/stories/overview.vue +50 -0
- package/src/components/popup/worker.ts +1 -0
- package/src/components/project/project.ts +23 -0
- package/src/components/project/selectorCompetitors/composables.ts +21 -0
- package/src/components/project/selectorCompetitors/selectorCompetitors.stories.ts +33 -0
- package/src/components/project/selectorCompetitors/selectorCompetitors.ts +27 -0
- package/src/components/project/selectorCompetitors/selectorCompetitors.vue +75 -0
- package/src/components/project/selectorCompetitors/stories/README.md +20 -0
- package/src/components/project/selectorCompetitors/stories/items.ts +30 -0
- package/src/components/project/selectorCompetitors/types/competitor.ts +7 -0
- package/src/components/project/selectorRegion/composables/compare.ts +87 -0
- package/src/components/project/selectorRegion/composables/selectRegion.ts +147 -0
- package/src/components/project/selectorRegion/composables/selectSearcher.ts +64 -0
- package/src/components/project/selectorRegion/composables/selectorRegion.ts +167 -0
- package/src/components/project/selectorRegion/dialog_selectorRegions/dialog_selectorRegions.vue +190 -0
- package/src/components/project/selectorRegion/dialog_selectorRegions/style.css +49 -0
- package/src/components/project/selectorRegion/dialog_selectorRegions/types.ts +31 -0
- package/src/components/project/selectorRegion/selectorRegion.stories.ts +85 -0
- package/src/components/project/selectorRegion/selectorRegion.ts +204 -0
- package/src/components/project/selectorRegion/selectorRegion.vue +335 -0
- package/src/components/project/selectorRegion/stories/README.md +36 -0
- package/src/components/project/selectorRegion/stories/searchers.ts +77 -0
- package/src/components/project/selectorRegion/styles/searcherColors.css +41 -0
- package/src/components/project/selectorRegion/utils/consts.ts +73 -0
- package/src/components/project/selectorRegion/utils/utils.ts +167 -0
- package/src/components/project/tagSelector/popupListItem/tagPopupListItem.vue +209 -0
- package/src/components/project/tagSelector/popupListItem/types.ts +40 -0
- package/src/components/project/tagSelector/popupOpener/popupOpener.vue +145 -0
- package/src/components/project/tagSelector/popupOpener/types.ts +71 -0
- package/src/components/project/tagSelector/stories/README.md +62 -0
- package/src/components/project/tagSelector/stories/overview.vue +152 -0
- package/src/components/project/tagSelector/tagIcon/tagIcon.vue +97 -0
- package/src/components/project/tagSelector/tagIcon/types.ts +25 -0
- package/src/components/project/tagSelector/tagSelector.stories.ts +51 -0
- package/src/components/project/tagSelector/tagSelector.vue +359 -0
- package/src/components/project/tagSelector/tagsDefaults.ts +54 -0
- package/src/components/project/tagSelector/types.ts +159 -0
- package/src/components/project/tagSelector/utils/el.ts +151 -0
- package/src/components/project/tagSelector/utils/utils.ts +30 -0
- package/src/components/tabs/tabs/content.vue +24 -0
- package/src/components/tabs/tabs/stories/README.md +12 -0
- package/src/components/tabs/tabs/tab.vue +49 -0
- package/src/components/tabs/tabs/tabs.stories.ts +171 -0
- package/src/components/tabs/tabs/tabs.ts +22 -0
- package/src/components/tabs/tabs/tabs.vue +64 -0
- package/src/components/tabs/tabs.ts +9 -0
- package/src/components/tabsView/tabsView/menu.vue +291 -0
- package/src/components/tabsView/tabsView/menuDelimeter.vue +26 -0
- package/src/components/tabsView/tabsView/menuItem.vue +125 -0
- package/src/components/tabsView/tabsView/menuTitle.vue +46 -0
- package/src/components/tabsView/tabsView/store.ts +60 -0
- package/src/components/tabsView/tabsView/stories/README.md +22 -0
- package/src/components/tabsView/tabsView/tabsView.stories.ts +170 -0
- package/src/components/tabsView/tabsView/tabsView.ts +118 -0
- package/src/components/tabsView/tabsView/tabsView.vue +120 -0
- package/src/components/tabsView/tabsView/utils.ts +27 -0
- package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuItem.stories.ts +47 -0
- package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuTitle.stories.ts +43 -0
- package/src/components/tabsView/tabsView.ts +9 -0
- package/src/components/types.ts +3 -0
- package/src/core/app.ts +22 -0
- package/src/core/core/core.mdx +36 -0
- package/src/core/core/core.ts +287 -0
- package/src/core/core/events/resize.ts +47 -0
- package/src/core/core/events.ts +6 -0
- package/src/core/core/jQuery.mdx +41 -0
- package/src/core/core/options.ts +51 -0
- package/src/core/core/preloaders.ts +31 -0
- package/src/core/core/state.ts +61 -0
- package/src/core/directives/data.mdx +24 -0
- package/src/core/directives/data.ts +25 -0
- package/src/core/directives/focus.mdx +28 -0
- package/src/core/directives/focus.ts +73 -0
- package/src/core/directives/scrollIntoView.mdx +41 -0
- package/src/core/directives/scrollIntoView.ts +123 -0
- package/src/core/directives/scrollShadow.mdx +23 -0
- package/src/core/directives/scrollShadow.ts +27 -0
- package/src/core/directives/sticky.mdx +29 -0
- package/src/core/directives/sticky.ts +32 -0
- package/src/core/directives/swimUp.mdx +27 -0
- package/src/core/directives/swimUp.ts +95 -0
- package/src/core/directives/tooltip.mdx +13 -0
- package/src/core/directives/tooltip.ts +57 -0
- package/src/core/icons/gallery.vue +70 -0
- package/src/core/icons/icons.mdx +24 -0
- package/src/core/icons/icons.stories.ts +14 -0
- package/src/core/plugins/core.ts +131 -0
- package/src/core/plugins/i18n.ts +184 -0
- package/src/core/plugins/piniaTPA.ts +431 -0
- package/src/core/plugins/plugins.mdx +82 -0
- package/src/core/styles/CSS Variables.stories.ts +17 -0
- package/src/core/styles/styles.mdx +26 -0
- package/src/core/theme/Variables.stories.ts +16 -0
- package/src/core/theme/theme.mdx +117 -0
- package/src/core/utils/References/Docs.mdx +23 -0
- package/src/core/utils/References/check/Docs.mdx +15 -0
- package/src/core/utils/References/check/functions/getDomainRegexp.mdx +15 -0
- package/src/core/utils/References/check/functions/isDomain.mdx +21 -0
- package/src/core/utils/References/check/functions/isEmail.mdx +22 -0
- package/src/core/utils/References/check/functions/isIp.mdx +21 -0
- package/src/core/utils/References/check/functions/validUrl.mdx +22 -0
- package/src/core/utils/References/clipboard/Docs.mdx +11 -0
- package/src/core/utils/References/clipboard/functions/setClipboard.mdx +23 -0
- package/src/core/utils/References/date/Docs.mdx +17 -0
- package/src/core/utils/References/date/functions/dateFormat.mdx +28 -0
- package/src/core/utils/References/date/functions/dateToString.mdx +26 -0
- package/src/core/utils/References/date/functions/dateUnformat.mdx +22 -0
- package/src/core/utils/References/date/functions/genDate.mdx +26 -0
- package/src/core/utils/References/date/functions/genDateMoscow.mdx +22 -0
- package/src/core/utils/References/date/functions/getDayOfWeek.mdx +26 -0
- package/src/core/utils/References/date/functions/stringToDate.mdx +21 -0
- package/src/core/utils/References/device/Docs.mdx +21 -0
- package/src/core/utils/References/device/functions/get$scroll.mdx +15 -0
- package/src/core/utils/References/device/functions/getCommandKeyLabel.mdx +15 -0
- package/src/core/utils/References/device/functions/getElsScroll.mdx +15 -0
- package/src/core/utils/References/device/functions/getOS.mdx +17 -0
- package/src/core/utils/References/device/functions/getOSAsync.mdx +15 -0
- package/src/core/utils/References/device/functions/getScrollTop.mdx +15 -0
- package/src/core/utils/References/device/functions/isApp.mdx +15 -0
- package/src/core/utils/References/device/functions/isMacOS.mdx +15 -0
- package/src/core/utils/References/device/functions/isMobile.mdx +15 -0
- package/src/core/utils/References/device/functions/isRetina.mdx +15 -0
- package/src/core/utils/References/device/functions/isSafari.mdx +15 -0
- package/src/core/utils/References/dom/Docs.mdx +27 -0
- package/src/core/utils/References/dom/functions/css.mdx +24 -0
- package/src/core/utils/References/dom/functions/genEl.mdx +28 -0
- package/src/core/utils/References/dom/functions/isVisible.mdx +23 -0
- package/src/core/utils/References/dom/functions/offset.mdx +35 -0
- package/src/core/utils/References/dom/functions/querySelectorAllArray.mdx +22 -0
- package/src/core/utils/References/dom/functions/querySelectorAllVisible.mdx +22 -0
- package/src/core/utils/References/dom/functions/querySelectorVisible.mdx +22 -0
- package/src/core/utils/References/dom/functions/querySelectorVisibleLast.mdx +22 -0
- package/src/core/utils/References/dom/functions/storage.mdx +28 -0
- package/src/core/utils/References/dom/functions/storageClear.mdx +21 -0
- package/src/core/utils/References/dom/functions/wrap.mdx +22 -0
- package/src/core/utils/References/dom/variables/default.mdx +241 -0
- package/src/core/utils/References/image/Docs.mdx +12 -0
- package/src/core/utils/References/image/functions/downloadImageFromString.mdx +22 -0
- package/src/core/utils/References/image/functions/genFaviconImgHtml.mdx +22 -0
- package/src/core/utils/References/keyboard/Docs.mdx +11 -0
- package/src/core/utils/References/keyboard/functions/invertKeyboardLayout.mdx +21 -0
- package/src/core/utils/References/lodash/Docs.mdx +20 -0
- package/src/core/utils/References/lodash/functions/cloneDeep.mdx +29 -0
- package/src/core/utils/References/lodash/functions/debounce.mdx +76 -0
- package/src/core/utils/References/lodash/functions/memoize.mdx +26 -0
- package/src/core/utils/References/lodash/functions/merge.mdx +200 -0
- package/src/core/utils/References/lodash/functions/throttle.mdx +73 -0
- package/src/core/utils/References/number/Docs.mdx +11 -0
- package/src/core/utils/References/number/functions/percentOfNumber.mdx +26 -0
- package/src/core/utils/References/price/Docs.mdx +11 -0
- package/src/core/utils/References/price/functions/genPrice.mdx +28 -0
- package/src/core/utils/References/route/Docs.mdx +16 -0
- package/src/core/utils/References/route/functions/delHash.mdx +26 -0
- package/src/core/utils/References/route/functions/genHash.mdx +26 -0
- package/src/core/utils/References/route/functions/getHash.mdx +22 -0
- package/src/core/utils/References/route/functions/historySetState.mdx +31 -0
- package/src/core/utils/References/route/functions/setHash.mdx +26 -0
- package/src/core/utils/References/route/functions/setHashs.mdx +22 -0
- package/src/core/utils/References/scroll/Docs.mdx +14 -0
- package/src/core/utils/References/scroll/functions/amountScrolled.mdx +17 -0
- package/src/core/utils/References/scroll/functions/connectScrollShadow.mdx +28 -0
- package/src/core/utils/References/scroll/functions/genHasScroll.mdx +25 -0
- package/src/core/utils/References/scroll/functions/getScrollPercent.mdx +21 -0
- package/src/core/utils/References/searchers/Docs.mdx +19 -0
- package/src/core/utils/References/searchers/functions/genVolumeLabel.mdx +26 -0
- package/src/core/utils/References/searchers/functions/getDeviceGIcon.mdx +21 -0
- package/src/core/utils/References/searchers/functions/getLangLabel.mdx +22 -0
- package/src/core/utils/References/searchers/functions/getSearcherGIcon.mdx +21 -0
- package/src/core/utils/References/searchers/functions/prepareVolumeType.mdx +22 -0
- package/src/core/utils/References/searchers/variables/searchersNames.mdx +97 -0
- package/src/core/utils/References/store/Docs.mdx +18 -0
- package/src/core/utils/References/store/functions/defineStore.mdx +36 -0
- package/src/core/utils/References/store/functions/useStore.mdx +29 -0
- package/src/core/utils/References/store/variables/plugin.mdx +66 -0
- package/src/core/utils/References/string/Docs.mdx +26 -0
- package/src/core/utils/References/string/functions/addCommasWhite.mdx +21 -0
- package/src/core/utils/References/string/functions/addLinkTags.mdx +23 -0
- package/src/core/utils/References/string/functions/camelToSnakeCase.mdx +21 -0
- package/src/core/utils/References/string/functions/ellipsis.mdx +26 -0
- package/src/core/utils/References/string/functions/genFlagLinkByCountryCode.mdx +21 -0
- package/src/core/utils/References/string/functions/genIntHash.mdx +21 -0
- package/src/core/utils/References/string/functions/getRandomHash.mdx +21 -0
- package/src/core/utils/References/string/functions/highlightHtml.mdx +25 -0
- package/src/core/utils/References/string/functions/htmlspecialchars.mdx +21 -0
- package/src/core/utils/References/string/functions/isUrl.mdx +21 -0
- package/src/core/utils/References/string/functions/nl2br.mdx +21 -0
- package/src/core/utils/References/string/functions/numberEnding.mdx +28 -0
- package/src/core/utils/References/string/functions/numberWithWord.mdx +28 -0
- package/src/core/utils/References/string/functions/rusToLatin.mdx +21 -0
- package/src/core/utils/References/string/functions/toCapitalize.mdx +21 -0
- package/src/core/utils/References/string/functions/toRoditPadej.mdx +21 -0
- package/src/core/utils/References/system/Docs.mdx +13 -0
- package/src/core/utils/References/system/functions/sleep.mdx +21 -0
- package/src/core/utils/References/system/functions/sleepWhile.mdx +26 -0
- package/src/core/utils/References/system/functions/waitWhile.mdx +26 -0
- package/src/core/utils/References/url/Docs.mdx +17 -0
- package/src/core/utils/References/url/functions/decode.mdx +21 -0
- package/src/core/utils/References/url/functions/encode.mdx +21 -0
- package/src/core/utils/References/url/functions/fromPuny.mdx +23 -0
- package/src/core/utils/References/url/functions/getHost.mdx +21 -0
- package/src/core/utils/References/url/functions/hostToLowerCase.mdx +21 -0
- package/src/core/utils/References/url/functions/normalize.mdx +21 -0
- package/src/core/utils/References/url/functions/toPuny.mdx +23 -0
- package/src/core/utils/check.ts +88 -0
- package/src/core/utils/clipboard.ts +51 -0
- package/src/core/utils/date.ts +291 -0
- package/src/core/utils/device.ts +139 -0
- package/src/core/utils/dom.ts +182 -0
- package/src/core/utils/image.ts +46 -0
- package/src/core/utils/keyboard.ts +29 -0
- package/src/core/utils/lodash.ts +18 -0
- package/src/core/utils/number.ts +37 -0
- package/src/core/utils/price.ts +24 -0
- package/src/core/utils/route.ts +115 -0
- package/src/core/utils/scroll.ts +120 -0
- package/src/core/utils/searchers.ts +191 -0
- package/src/core/utils/store/localStorage.ts +56 -0
- package/src/core/utils/store/plugin.ts +50 -0
- package/src/core/utils/store/store.ts +77 -0
- package/src/core/utils/store.ts +7 -0
- package/src/core/utils/string.ts +317 -0
- package/src/core/utils/system.ts +72 -0
- package/src/core/utils/url.ts +138 -0
- package/src/core/utils/utils.mdx +6 -0
- package/src/d.ts +12 -0
- package/src/icomoon.d.ts +98 -0
- package/src/resources/styles/core/components.css +111 -0
- package/src/resources/styles/core/core.ts +11 -0
- package/src/resources/styles/core/forms/clear.css +20 -0
- package/src/resources/styles/core/forms/controls.css +20 -0
- package/src/resources/styles/core/forms/focusable.css +26 -0
- package/src/resources/styles/core/forms/forms.css +156 -0
- package/src/resources/styles/core/icon.css +58 -0
- package/src/resources/styles/core/jquery.css +1 -0
- package/src/resources/styles/core/layout.css +59 -0
- package/src/resources/styles/core/modifiers/as.css +9 -0
- package/src/resources/styles/core/modifiers/ellipsis.css +26 -0
- package/src/resources/styles/core/modifiers/modifiers.css +120 -0
- package/src/resources/styles/core/modifiers/only.css +19 -0
- package/src/resources/styles/core/modifiers/scrollShadow.css +50 -0
- package/src/resources/styles/core/select.css +15 -0
- package/src/resources/styles/storybook.css +11 -0
- package/src/resources/styles/themes/dark/dark-layout.css +47 -0
- package/src/resources/styles/themes/dark/dark-positions.css +66 -0
- package/src/resources/styles/themes/dark/dark.css +400 -0
- package/src/resources/styles/themes/dark-positions.ts +1 -0
- package/src/resources/styles/themes/dark-th/dark-th-layout.css +47 -0
- package/src/resources/styles/themes/dark-th/dark-th-positions.css +67 -0
- package/src/resources/styles/themes/dark-th/dark-th.css +400 -0
- package/src/resources/styles/themes/dark-th-positions.ts +1 -0
- package/src/resources/styles/themes/dark-th.ts +3 -0
- package/src/resources/styles/themes/dark.ts +3 -0
- package/src/resources/styles/themes/light/light-layout.css +47 -0
- package/src/resources/styles/themes/light/light-positions.css +66 -0
- package/src/resources/styles/themes/light/light.css +400 -0
- package/src/resources/styles/themes/light-positions.ts +1 -0
- package/src/resources/styles/themes/light.ts +3 -0
- package/src/storybook/components/color.vue +47 -0
- package/src/storybook/components/cssVariables.vue +195 -0
- package/src/storybook/components/icomoon.ts +40 -0
- package/src/storybook/jquery.ts +4 -0
- package/src//320/221/321/213/321/201/321/202/321/200/321/213/320/271 /321/201/321/202/320/260/321/200/321/202.mdx" +181 -0
- package/src//320/230/320/275/321/204/320/276/321/200/320/274/320/260/321/206/320/270/321/217 /320/276 /321/201/320/261/320/276/321/200/320/272/320/265.mdx" +12 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CHANGELOG.md.mdx" +4 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS/FAQ.mdx" +43 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/236/320/261/321/211/320/270/320/265 /320/274/320/276/320/264/320/270/321/204/320/270/320/272/320/260/321/202/320/276/321/200/321/213.mdx" +155 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/237/320/265/321/200/320/265/320/274/320/265/320/275/320/275/321/213/320/265.mdx" +35 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/237/321/200/320/265/320/264/320/277/321/200/320/276/321/206/320/265/321/201/321/201/320/276/321/200/321/213.mdx" +15 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/240/320/265/320/272/320/276/320/274/320/265/320/275/320/264/320/260/321/206/320/270/320/270 /320/221/320/255/320/234.mdx" +56 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/241/321/202/320/270/320/273/320/270.mdx" +53 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/CSS//320/247/321/202/320/276 /321/202/320/260/320/272/320/276/320/265 css /320/274/320/276/320/264/321/203/320/273/321/214.mdx" +55 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/PUBLISH.md.mdx" +4 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/README.md.mdx" +4 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/STORYBOOK.md.mdx" +4 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)/USE_IN_PROJECT.md.mdx" +3 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/222/320/262/320/265/320/264/320/265/320/275/320/270/320/265 /320/262 NPM.md.mdx" +4 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/224/320/276/320/277/320/276/320/273/320/275/320/270/321/202/320/265/320/273/321/214/320/275/320/260/321/217 /320/273/320/270/321/202/320/265/321/200/320/260/321/202/321/203/321/200/320/260.mdx" +15 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/235/320/260/321/201/321/202/321/200/320/276/320/271/320/272/320/260 IDE.mdx" +45 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/236/321/204/320/276/321/200/320/274/320/273/320/265/320/275/320/270/320/265 /320/272/320/276/320/264/320/260.mdx" +31 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260//320/241/321/202/320/260/320/275/320/264/320/260/321/200/321/202/321/213 /320/272/320/276/320/264/320/260.mdx" +29 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213.mdx" +41 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/232/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213//320/241/321/202/320/270/320/273/320/270 /320/272/320/276/320/274/320/277/320/276/320/275/320/265/320/275/321/202/321/213.mdx" +58 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI.mdx" +11 -0
- package/src//320/240/320/260/320/267/321/200/320/260/320/261/320/276/321/202/320/272/320/260 (Contributing)//320/241/321/202/321/200/321/203/320/272/321/202/321/203/321/200/320/260 UI//320/243/321/202/320/270/320/273/320/270/321/202/321/213.mdx" +5 -0
- package/storybook-dev.sh +14 -0
- package/tsconfig.json +91 -0
- package/typedoc.json +20 -0
- package/vite.config.ts +148 -0
- package/.chunks/core-CcWs0qYw.amd.js +0 -2
- package/.chunks/core-CcWs0qYw.amd.js.map +0 -1
- package/.chunks/core-Dsl28h7N.es.js +0 -196
- package/.chunks/core-Dsl28h7N.es.js.map +0 -1
- package/.chunks/datepicker-B6kIyIcw.amd.js +0 -2
- package/.chunks/datepicker-B6kIyIcw.amd.js.map +0 -1
- package/.chunks/datepicker-BTiE5Grw.es.js +0 -44
- package/.chunks/datepicker-BTiE5Grw.es.js.map +0 -1
- package/.chunks/dialog_selectorRegions-BZcnnvJM.es.js +0 -140
- package/.chunks/dialog_selectorRegions-BZcnnvJM.es.js.map +0 -1
- package/.chunks/dialog_selectorRegions-CePGUsCo.amd.js +0 -2
- package/.chunks/dialog_selectorRegions-CePGUsCo.amd.js.map +0 -1
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-B5hK613K.es.js +0 -266
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-B5hK613K.es.js.map +0 -1
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-izSFcRLb.amd.js +0 -2
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-izSFcRLb.amd.js.map +0 -1
- package/.chunks/forms-BsuCen2-.es.js +0 -1999
- package/.chunks/forms-BsuCen2-.es.js.map +0 -1
- package/.chunks/forms-BwGakScF.amd.js +0 -3
- package/.chunks/forms-BwGakScF.amd.js.map +0 -1
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CfM8kOV1.amd.js +0 -2
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CfM8kOV1.amd.js.map +0 -1
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CszHDnB0.es.js +0 -181
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CszHDnB0.es.js.map +0 -1
- package/.chunks/menu.vue_vue_type_style_index_0_lang-DQTVNJGq.amd.js +0 -2
- package/.chunks/menu.vue_vue_type_style_index_0_lang-DQTVNJGq.amd.js.map +0 -1
- package/.chunks/menu.vue_vue_type_style_index_0_lang-DmY5w4yr.es.js +0 -109
- package/.chunks/menu.vue_vue_type_style_index_0_lang-DmY5w4yr.es.js.map +0 -1
- package/.chunks/notice-CJdCc72d.amd.js +0 -4
- package/.chunks/notice-CJdCc72d.amd.js.map +0 -1
- package/.chunks/notice-Cqs1dKt8.es.js +0 -175
- package/.chunks/notice-Cqs1dKt8.es.js.map +0 -1
- package/.chunks/page.vue_vue_type_script_setup_true_lang-1JWduCTr.amd.js +0 -2
- package/.chunks/page.vue_vue_type_script_setup_true_lang-1JWduCTr.amd.js.map +0 -1
- package/.chunks/page.vue_vue_type_script_setup_true_lang-BCfksgg3.es.js +0 -143
- package/.chunks/page.vue_vue_type_script_setup_true_lang-BCfksgg3.es.js.map +0 -1
- package/.chunks/popup-CLhWWJDe.amd.js +0 -2
- package/.chunks/popup-CLhWWJDe.amd.js.map +0 -1
- package/.chunks/popup-N10MDafw.es.js +0 -416
- package/.chunks/popup-N10MDafw.es.js.map +0 -1
- package/.chunks/punycode.es6-C2yitnNb.amd.js +0 -2
- package/.chunks/punycode.es6-C2yitnNb.amd.js.map +0 -1
- package/.chunks/punycode.es6-CNI-zL6U.es.js +0 -134
- package/.chunks/punycode.es6-CNI-zL6U.es.js.map +0 -1
- package/.chunks/store-CX_6ZXhO.es.js +0 -29
- package/.chunks/store-CX_6ZXhO.es.js.map +0 -1
- package/.chunks/store-esTid5oI.amd.js +0 -2
- package/.chunks/store-esTid5oI.amd.js.map +0 -1
- package/.chunks/utils-B1H3EGkg.es.js +0 -79
- package/.chunks/utils-B1H3EGkg.es.js.map +0 -1
- package/.chunks/utils-B7GVqGBH.amd.js +0 -2
- package/.chunks/utils-B7GVqGBH.amd.js.map +0 -1
- package/.chunks/utils-DIy2mbYd.amd.js +0 -2
- package/.chunks/utils-DIy2mbYd.amd.js.map +0 -1
- package/.chunks/utils-bjr7c5my.es.js +0 -225
- package/.chunks/utils-bjr7c5my.es.js.map +0 -1
- package/assets/charts.css +0 -1
- package/assets/core.css +0 -1
- package/assets/dialog_selectorRegions.css +0 -1
- package/assets/forms.css +0 -1
- package/assets/formsExt.css +0 -1
- package/assets/layout.css +0 -1
- package/assets/listItem.css +0 -1
- package/assets/menu.css +0 -1
- package/assets/notice.css +0 -1
- package/assets/popup.css +0 -1
- package/assets/project.css +0 -1
- package/assets/tabs.css +0 -1
- package/assets/tabsView.css +0 -1
- package/assets/themes/dark-th.css +0 -1
- package/assets/themes/dark.css +0 -1
- package/assets/themes/light.css +0 -1
- package/charts/charts.amd.js +0 -2
- package/charts/charts.amd.js.map +0 -1
- package/charts/charts.d.ts +0 -2
- package/charts/charts.js +0 -178
- package/charts/charts.js.map +0 -1
- package/components/charts/charts.d.ts +0 -5
- package/components/charts/miniChart/miniChart.d.ts +0 -92
- package/components/charts/miniChart/miniChart.vue.d.ts +0 -15
- package/components/charts/miniChart/stories/dummy.d.ts +0 -13
- package/components/charts/miniChart/utils/consts.d.ts +0 -8
- package/components/charts/miniCharts/miniCharts.d.ts +0 -20
- package/components/charts/miniCharts/miniCharts.vue.d.ts +0 -32
- package/components/charts/miniCharts/stories/dummy.d.ts +0 -6
- package/components/core/notice/item/item.vue.d.ts +0 -10
- package/components/core/notice/item/types.d.ts +0 -61
- package/components/core/notice/notice.vue.d.ts +0 -5
- package/components/core/notice/types.d.ts +0 -1
- package/components/core/notice/utils.d.ts +0 -27
- package/components/dialog/dialog/composables/asyncDialogHandle.d.ts +0 -51
- package/components/dialog/dialog/composables/dialogHandle.d.ts +0 -108
- package/components/dialog/dialog/composables/types.d.ts +0 -11
- package/components/dialog/dialog/composables/utils.d.ts +0 -21
- package/components/dialog/dialog/dialog.vue.d.ts +0 -28
- package/components/dialog/dialog/dialogs/dialogs.vue.d.ts +0 -10
- package/components/dialog/dialog/page/page.vue.d.ts +0 -19
- package/components/dialog/dialog/page/types.d.ts +0 -72
- package/components/dialog/dialog/pageComponent/pageComponent.vue.d.ts +0 -6
- package/components/dialog/dialog/pageComponent/types.d.ts +0 -18
- package/components/dialog/dialog/stories/autoload.d.ts +0 -2
- package/components/dialog/dialog/stories/dialog_example/pages/utils.d.ts +0 -7
- package/components/dialog/dialog/types.d.ts +0 -58
- package/components/dialog/dialog.d.ts +0 -6
- package/components/dialog/lib/types.d.ts +0 -21
- package/components/dialog/lib/utils.d.ts +0 -14
- package/components/dialog/lib/utils.globalEvents.d.ts +0 -8
- package/components/dialog/lib/worker.d.ts +0 -60
- package/components/forms/avatar/avatar.d.ts +0 -38
- package/components/forms/avatar/avatar.vue.d.ts +0 -10
- package/components/forms/button/button.vue.d.ts +0 -25
- package/components/forms/button/types.d.ts +0 -53
- package/components/forms/checkbox/checkbox.d.ts +0 -21
- package/components/forms/checkbox/checkbox.vue.d.ts +0 -27
- package/components/forms/controlLabel/controlLabel.d.ts +0 -4
- package/components/forms/controlLabel/controlLabel.vue.d.ts +0 -19
- package/components/forms/forms.d.ts +0 -27
- package/components/forms/helpers.d.ts +0 -10
- package/components/forms/hint/hint.d.ts +0 -8
- package/components/forms/hint/hint.vue.d.ts +0 -4
- package/components/forms/input/input.d.ts +0 -34
- package/components/forms/input/input.vue.d.ts +0 -28
- package/components/forms/inputDate/datepicker.d.ts +0 -5
- package/components/forms/inputDate/inputDate.d.ts +0 -3
- package/components/forms/inputDate/inputDate.vue.d.ts +0 -12
- package/components/forms/inputRange/inputRange.d.ts +0 -2
- package/components/forms/inputRange/inputRange.vue.d.ts +0 -19
- package/components/forms/loadbar/loadbar.vue.d.ts +0 -3
- package/components/forms/radio/radio.d.ts +0 -14
- package/components/forms/radio/radio.vue.d.ts +0 -23
- package/components/forms/select/select.d.ts +0 -58
- package/components/forms/select/select.vue.d.ts +0 -18
- package/components/forms/select/stories/exampleOptions.d.ts +0 -5
- package/components/forms/switcher/switcher.d.ts +0 -21
- package/components/forms/switcher/switcher.vue.d.ts +0 -23
- package/components/forms/textarea/textarea.d.ts +0 -40
- package/components/forms/textarea/textarea.vue.d.ts +0 -12
- package/components/formsExt/editArea/editArea.d.ts +0 -33
- package/components/formsExt/editArea/editArea.vue.d.ts +0 -18
- package/components/formsExt/editInput/editInput.d.ts +0 -16
- package/components/formsExt/editInput/editInput.vue.d.ts +0 -8
- package/components/formsExt/formsExt.d.ts +0 -13
- package/components/formsExt/info/info.vue.d.ts +0 -20
- package/components/formsExt/info/types.d.ts +0 -21
- package/components/formsExt/menu/menu.d.ts +0 -37
- package/components/formsExt/menu/menu.vue.d.ts +0 -16
- package/components/formsExt/menu/stories/items.d.ts +0 -3
- package/components/formsExt/navigationMenu/navigationMenu.d.ts +0 -24
- package/components/formsExt/navigationMenu/stories/items.d.ts +0 -3
- package/components/formsExt/radioGroup/radioGroup.d.ts +0 -21
- package/components/formsExt/radioGroup/radioGroup.vue.d.ts +0 -19
- package/components/formsExt/selector2/api.d.ts +0 -8
- package/components/formsExt/selector2/itemMulti.vue.d.ts +0 -8
- package/components/formsExt/selector2/selector2.d.ts +0 -130
- package/components/formsExt/selector2/selector2.vue.d.ts +0 -210
- package/components/formsExt/selector2/stories/dummyAPIRequest.d.ts +0 -10
- package/components/layout/islandRows/islandRows.vue.d.ts +0 -17
- package/components/layout/islandRows/islandRowsRow/islandRowsRow.vue.d.ts +0 -18
- package/components/layout/islandRows/islandRowsRow/types.d.ts +0 -2
- package/components/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue.d.ts +0 -18
- package/components/layout/islandRows/types.d.ts +0 -10
- package/components/layout/layout.d.ts +0 -9
- package/components/layout/rows/rows.vue.d.ts +0 -21
- package/components/layout/rows/types.d.ts +0 -6
- package/components/popup/alert/alert.d.ts +0 -8
- package/components/popup/alert/alert.vue.d.ts +0 -31
- package/components/popup/confirm/confirm.d.ts +0 -21
- package/components/popup/confirm/confirm.vue.d.ts +0 -33
- package/components/popup/lib/popup.d.ts +0 -83
- package/components/popup/lib/popup.globalEvents.d.ts +0 -26
- package/components/popup/lib/worker.d.ts +0 -75
- package/components/popup/lib/worker.globalEvents.d.ts +0 -19
- package/components/popup/popup/listItem.vue.d.ts +0 -22
- package/components/popup/popup/opener.vue.d.ts +0 -23
- package/components/popup/popup/popup.d.ts +0 -101
- package/components/popup/popup/popup.vue.d.ts +0 -40
- package/components/popup/popup/widgetInput.vue.d.ts +0 -17
- package/components/popup/popup.d.ts +0 -15
- package/components/popup/prompt/prompt.d.ts +0 -21
- package/components/popup/prompt/prompt.vue.d.ts +0 -33
- package/components/popup/worker.d.ts +0 -1
- package/components/project/project.d.ts +0 -15
- package/components/project/selectorCompetitors/composables.d.ts +0 -4
- package/components/project/selectorCompetitors/selectorCompetitors.d.ts +0 -23
- package/components/project/selectorCompetitors/selectorCompetitors.vue.d.ts +0 -14
- package/components/project/selectorCompetitors/stories/items.d.ts +0 -3
- package/components/project/selectorCompetitors/types/competitor.d.ts +0 -7
- package/components/project/selectorRegion/composables/compare.d.ts +0 -12
- package/components/project/selectorRegion/composables/selectRegion.d.ts +0 -14
- package/components/project/selectorRegion/composables/selectSearcher.d.ts +0 -13
- package/components/project/selectorRegion/composables/selectorRegion.d.ts +0 -25
- package/components/project/selectorRegion/dialog_selectorRegions/dialog_selectorRegions.vue.d.ts +0 -4
- package/components/project/selectorRegion/dialog_selectorRegions/types.d.ts +0 -26
- package/components/project/selectorRegion/selectorRegion.d.ts +0 -170
- package/components/project/selectorRegion/selectorRegion.vue.d.ts +0 -23
- package/components/project/selectorRegion/stories/searchers.d.ts +0 -3
- package/components/project/selectorRegion/utils/consts.d.ts +0 -18
- package/components/project/selectorRegion/utils/utils.d.ts +0 -32
- package/components/project/tagSelector/popupListItem/tagPopupListItem.vue.d.ts +0 -20
- package/components/project/tagSelector/popupListItem/types.d.ts +0 -33
- package/components/project/tagSelector/popupOpener/popupOpener.vue.d.ts +0 -27
- package/components/project/tagSelector/popupOpener/types.d.ts +0 -62
- package/components/project/tagSelector/tagIcon/tagIcon.vue.d.ts +0 -4
- package/components/project/tagSelector/tagIcon/types.d.ts +0 -21
- package/components/project/tagSelector/tagSelector.vue.d.ts +0 -37
- package/components/project/tagSelector/tagsDefaults.d.ts +0 -3
- package/components/project/tagSelector/types.d.ts +0 -138
- package/components/project/tagSelector/utils/el.d.ts +0 -19
- package/components/project/tagSelector/utils/utils.d.ts +0 -14
- package/components/tabs/tabs/content.vue.d.ts +0 -19
- package/components/tabs/tabs/tab.vue.d.ts +0 -19
- package/components/tabs/tabs/tabs.d.ts +0 -19
- package/components/tabs/tabs/tabs.vue.d.ts +0 -21
- package/components/tabs/tabs.d.ts +0 -7
- package/components/tabsView/tabsView/menu.vue.d.ts +0 -32
- package/components/tabsView/tabsView/menuDelimeter.vue.d.ts +0 -3
- package/components/tabsView/tabsView/menuItem.vue.d.ts +0 -23
- package/components/tabsView/tabsView/menuTitle.vue.d.ts +0 -20
- package/components/tabsView/tabsView/store.d.ts +0 -192
- package/components/tabsView/tabsView/tabsView.d.ts +0 -98
- package/components/tabsView/tabsView/tabsView.vue.d.ts +0 -34
- package/components/tabsView/tabsView/utils.d.ts +0 -11
- package/components/tabsView/tabsView.d.ts +0 -7
- package/core/app.amd.js +0 -2
- package/core/app.amd.js.map +0 -1
- package/core/app.d.ts +0 -8
- package/core/app.js +0 -214
- package/core/app.js.map +0 -1
- package/core/core/core.d.ts +0 -113
- package/core/core/events/resize.d.ts +0 -16
- package/core/core/events.d.ts +0 -15
- package/core/core/options.d.ts +0 -46
- package/core/core/preloaders.d.ts +0 -19
- package/core/core/state.d.ts +0 -49
- package/core/directives/data.d.ts +0 -10
- package/core/directives/focus.d.ts +0 -10
- package/core/directives/scrollIntoView.d.ts +0 -3
- package/core/directives/scrollShadow.d.ts +0 -15
- package/core/directives/sticky.d.ts +0 -10
- package/core/directives/swimUp.d.ts +0 -15
- package/core/directives/tooltip.d.ts +0 -10
- package/core/plugins/core.d.ts +0 -60
- package/core/plugins/i18n.d.ts +0 -97
- package/core/plugins/piniaTPA.d.ts +0 -17
- package/core/utils/check.d.ts +0 -26
- package/core/utils/clipboard.d.ts +0 -12
- package/core/utils/date.d.ts +0 -52
- package/core/utils/device.d.ts +0 -50
- package/core/utils/dom.d.ts +0 -94
- package/core/utils/image.d.ts +0 -16
- package/core/utils/keyboard.d.ts +0 -8
- package/core/utils/lodash.d.ts +0 -6
- package/core/utils/number.d.ts +0 -17
- package/core/utils/price.d.ts +0 -10
- package/core/utils/route.d.ts +0 -33
- package/core/utils/scroll.d.ts +0 -32
- package/core/utils/searchers.d.ts +0 -38
- package/core/utils/store/localStorage.d.ts +0 -6
- package/core/utils/store/plugin.d.ts +0 -24
- package/core/utils/store/store.d.ts +0 -34
- package/core/utils/store.d.ts +0 -6
- package/core/utils/string.d.ts +0 -88
- package/core/utils/system.d.ts +0 -25
- package/core/utils/url.d.ts +0 -36
- package/dialog/dialog.amd.js +0 -2
- package/dialog/dialog.amd.js.map +0 -1
- package/dialog/dialog.d.ts +0 -2
- package/dialog/dialog.js +0 -60
- package/dialog/dialog.js.map +0 -1
- package/forms/forms.amd.js +0 -2
- package/forms/forms.amd.js.map +0 -1
- package/forms/forms.d.ts +0 -2
- package/forms/forms.js +0 -17
- package/forms/forms.js.map +0 -1
- package/forms/helpers.amd.js +0 -2
- package/forms/helpers.amd.js.map +0 -1
- package/forms/helpers.d.ts +0 -2
- package/forms/helpers.js +0 -10
- package/forms/helpers.js.map +0 -1
- package/formsExt/formsExt.amd.js +0 -2
- package/formsExt/formsExt.amd.js.map +0 -1
- package/formsExt/formsExt.d.ts +0 -2
- package/formsExt/formsExt.js +0 -493
- package/formsExt/formsExt.js.map +0 -1
- package/layout/layout.amd.js +0 -2
- package/layout/layout.amd.js.map +0 -1
- package/layout/layout.d.ts +0 -2
- package/layout/layout.js +0 -62
- package/layout/layout.js.map +0 -1
- package/popup/popup.amd.js +0 -2
- package/popup/popup.amd.js.map +0 -1
- package/popup/popup.d.ts +0 -2
- package/popup/popup.js +0 -244
- package/popup/popup.js.map +0 -1
- package/popup/worker.amd.js +0 -2
- package/popup/worker.amd.js.map +0 -1
- package/popup/worker.d.ts +0 -2
- package/popup/worker.js +0 -129
- package/popup/worker.js.map +0 -1
- package/project/project.amd.js +0 -2
- package/project/project.amd.js.map +0 -1
- package/project/project.d.ts +0 -2
- package/project/project.js +0 -976
- package/project/project.js.map +0 -1
- package/tabs/tabs.amd.js +0 -2
- package/tabs/tabs.amd.js.map +0 -1
- package/tabs/tabs.d.ts +0 -2
- package/tabs/tabs.js +0 -81
- package/tabs/tabs.js.map +0 -1
- package/tabsView/tabsView.amd.js +0 -2
- package/tabsView/tabsView.amd.js.map +0 -1
- package/tabsView/tabsView.d.ts +0 -2
- package/tabsView/tabsView.js +0 -306
- package/tabsView/tabsView.js.map +0 -1
- package/utils/check.amd.js +0 -2
- package/utils/check.amd.js.map +0 -1
- package/utils/check.d.ts +0 -2
- package/utils/check.js +0 -26
- package/utils/check.js.map +0 -1
- package/utils/clipboard.amd.js +0 -6
- package/utils/clipboard.amd.js.map +0 -1
- package/utils/clipboard.d.ts +0 -2
- package/utils/clipboard.js +0 -33
- package/utils/clipboard.js.map +0 -1
- package/utils/date.amd.js +0 -2
- package/utils/date.amd.js.map +0 -1
- package/utils/date.d.ts +0 -2
- package/utils/date.js +0 -11
- package/utils/date.js.map +0 -1
- package/utils/device.amd.js +0 -2
- package/utils/device.amd.js.map +0 -1
- package/utils/device.d.ts +0 -2
- package/utils/device.js +0 -15
- package/utils/device.js.map +0 -1
- package/utils/dom.amd.js +0 -2
- package/utils/dom.amd.js.map +0 -1
- package/utils/dom.d.ts +0 -6
- package/utils/dom.js +0 -75
- package/utils/dom.js.map +0 -1
- package/utils/image.amd.js +0 -12
- package/utils/image.amd.js.map +0 -1
- package/utils/image.d.ts +0 -2
- package/utils/image.js +0 -23
- package/utils/image.js.map +0 -1
- package/utils/keyboard.amd.js +0 -2
- package/utils/keyboard.amd.js.map +0 -1
- package/utils/keyboard.d.ts +0 -2
- package/utils/keyboard.js +0 -12
- package/utils/keyboard.js.map +0 -1
- package/utils/lodash.amd.js +0 -2
- package/utils/lodash.amd.js.map +0 -1
- package/utils/lodash.d.ts +0 -2
- package/utils/lodash.js +0 -9
- package/utils/lodash.js.map +0 -1
- package/utils/number.amd.js +0 -2
- package/utils/number.amd.js.map +0 -1
- package/utils/number.d.ts +0 -2
- package/utils/number.js +0 -13
- package/utils/number.js.map +0 -1
- package/utils/price.amd.js +0 -2
- package/utils/price.amd.js.map +0 -1
- package/utils/price.d.ts +0 -2
- package/utils/price.js +0 -10
- package/utils/price.js.map +0 -1
- package/utils/route.amd.js +0 -2
- package/utils/route.amd.js.map +0 -1
- package/utils/route.d.ts +0 -2
- package/utils/route.js +0 -31
- package/utils/route.js.map +0 -1
- package/utils/scroll.amd.js +0 -2
- package/utils/scroll.amd.js.map +0 -1
- package/utils/scroll.d.ts +0 -2
- package/utils/scroll.js +0 -45
- package/utils/scroll.js.map +0 -1
- package/utils/searchers.amd.js +0 -2
- package/utils/searchers.amd.js.map +0 -1
- package/utils/searchers.d.ts +0 -2
- package/utils/searchers.js +0 -134
- package/utils/searchers.js.map +0 -1
- package/utils/store.amd.js +0 -2
- package/utils/store.amd.js.map +0 -1
- package/utils/store.d.ts +0 -2
- package/utils/store.js +0 -7
- package/utils/store.js.map +0 -1
- package/utils/string.amd.js +0 -2
- package/utils/string.amd.js.map +0 -1
- package/utils/string.d.ts +0 -2
- package/utils/string.js +0 -139
- package/utils/string.js.map +0 -1
- package/utils/system.amd.js +0 -2
- package/utils/system.amd.js.map +0 -1
- package/utils/system.d.ts +0 -2
- package/utils/system.js +0 -29
- package/utils/system.js.map +0 -1
- package/utils/url.amd.js +0 -3
- package/utils/url.amd.js.map +0 -1
- package/utils/url.d.ts +0 -2
- package/utils/url.js +0 -48
- package/utils/url.js.map +0 -1
- /package/{icomoon → public/icomoon}/Read Me.txt +0 -0
- /package/{icomoon → public/icomoon}/Topvisor icons.json +0 -0
- /package/{icomoon → public/icomoon}/demo-files/demo.css +0 -0
- /package/{icomoon → public/icomoon}/demo-files/demo.js +0 -0
- /package/{icomoon → public/icomoon}/demo.html +0 -0
- /package/{icomoon → public/icomoon}/fonts/Topvisor-2.eot +0 -0
- /package/{icomoon → public/icomoon}/fonts/Topvisor-2.svg +0 -0
- /package/{icomoon → public/icomoon}/fonts/Topvisor-2.ttf +0 -0
- /package/{icomoon → public/icomoon}/fonts/Topvisor-2.woff +0 -0
- /package/{icomoon → public/icomoon}/selection.json +0 -0
- /package/{icomoon → public/icomoon}/style.css +0 -0
- /package/{jquery-ui.min.css → public/jquery-ui.min.css} +0 -0
- /package/{require → public/require}/css.amd.js +0 -0
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Props } from './tabsView';
|
|
2
|
-
import { DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
|
|
3
|
-
type __VLS_Props = Props;
|
|
4
|
-
type __VLS_PublicProps = {
|
|
5
|
-
modelValue?: string;
|
|
6
|
-
} & __VLS_Props;
|
|
7
|
-
declare function __VLS_template(): {
|
|
8
|
-
attrs: Partial<{}>;
|
|
9
|
-
slots: {
|
|
10
|
-
menu?(_: {}): any;
|
|
11
|
-
};
|
|
12
|
-
refs: {
|
|
13
|
-
componentRef: unknown;
|
|
14
|
-
};
|
|
15
|
-
rootEl: HTMLDivElement;
|
|
16
|
-
};
|
|
17
|
-
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
18
|
-
declare const __VLS_component: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
|
|
19
|
-
"update:modelValue": (value: string) => any;
|
|
20
|
-
}, string, PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
21
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
22
|
-
}>, {
|
|
23
|
-
showMenuInPopup: boolean;
|
|
24
|
-
isShortable: boolean;
|
|
25
|
-
}, {}, {}, {}, string, ComponentProvideOptions, false, {
|
|
26
|
-
componentRef: unknown;
|
|
27
|
-
}, HTMLDivElement>;
|
|
28
|
-
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
29
|
-
export default _default;
|
|
30
|
-
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
31
|
-
new (): {
|
|
32
|
-
$slots: S;
|
|
33
|
-
};
|
|
34
|
-
};
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Проверка нахождения компонента в состояние загрузки
|
|
3
|
-
* @param component
|
|
4
|
-
*/
|
|
5
|
-
export declare const checkComponentIsLoading: (component: any) => boolean;
|
|
6
|
-
/**
|
|
7
|
-
* Презагрузить компонент
|
|
8
|
-
*
|
|
9
|
-
* Некоторое время ожидает загрузку компонента, прежде чем завершит работу
|
|
10
|
-
*/
|
|
11
|
-
export declare const preResolveComponent: (component: any, condition: Function) => Promise<void>;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ComponentCustomProps } from 'vue';
|
|
2
|
-
import { default as TabsView } from './tabsView/tabsView.vue';
|
|
3
|
-
import { default as TabsViewMenuItem } from './tabsView/menuItem.vue';
|
|
4
|
-
import { default as TabsViewMenuTitle } from './tabsView/menuTitle.vue';
|
|
5
|
-
export declare const TopTabsView: typeof TabsView & ComponentCustomProps;
|
|
6
|
-
export declare const TopTabsViewMenuItem: typeof TabsViewMenuItem & ComponentCustomProps;
|
|
7
|
-
export declare const TopTabsViewMenuTitle: typeof TabsViewMenuTitle & ComponentCustomProps;
|
package/core/app.amd.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/forms-BwGakScF.amd","../.chunks/core-CcWs0qYw.amd","vue","../utils/clipboard.amd","../utils/string.amd","../utils/route.amd","../.chunks/utils-DIy2mbYd.amd","../.chunks/dialogs.vue_vue_type_script_setup_true_lang-izSFcRLb.amd"],function(y,o,c,l,d,m,S,p,g,k){"use strict";if(typeof d>"u")var d=window.Vue;class E{#s;#t;#e;#i;#h;#a=[];#o=[];#c=[];#n=[];constructor(s){var t;this.#t=s.store,this.#s=this.#t.$id,this.#e=s.options.Page,this.#i=s.options.user,this.#h=s.options.Api,this.#a=s.options.tpaNamesUrlHash||[],this.#o=s.options.tpaNamesStorage||[],this.#c=s.options.tpaNamesStorageLocal||[],this.#n=s.options.tpaNamesGuestLink||[],s.store.genGuestLink=(i,a)=>this.genGuestLink(i,a),(t=this.#i.guest_data)!=null&&t.data||(this.#u(),this.#u(!0),this.#f()),this.#S(),this.#k();const e=c.debounce(()=>{this.#l(),this.#m()});s.store.$subscribe(e)}async genGuestLink(s,e){const t=this.#p();e=Object.assign(e,Object.fromEntries(t));const i=await this.#h.gen(s,"fetchColumn").call({},e);i!=null&&i.errors||await m.guestLinkToClipboard(i.result)}#p(){const s=new Map;return this.#n.forEach(e=>{const t=S.camelToSnakeCase(e);s.set(t,this.#t[e])}),s}#r(s){s.forEach((e,t)=>{const i=this.#t[t];if(e!=null&&i!==void 0&&e!=null&&e.constructor&&e.constructor===i.constructor){if(t.indexOf("date")===0&&!Array.isArray(e)){if(typeof e=="string"&&!/\d\d\d\d-\d\d-\d\d/.test(e))return}this.#t[t]=e}})}#g(s){const e=new Map;return s.forEach((t,i)=>{t!==null&&(t=JSON.stringify(t),e.set(i,t))}),e}#d(s){const e=new Map;return s.forEach((t,i)=>{if(!(t==null||t==="false")){try{if(typeof t=="string"&&!/^\d\d\d\d-\d\d-\d\d$/.test(t)&&(t=JSON.parse(t)),t==null||t==="false")return}catch{}e.set(i,t)}}),e}#f(){let s;try{s=JSON.parse(p.getHash(this.#s))}catch{}if(!s)return;const e=new Map;this.#a.forEach(t=>{const i=s[t];i&&e.set(t,i)}),this.#r(e)}#l(){const s=new Map;this.#a.forEach(i=>{const a=this.#t[i];s.set(i,a)});const e=Object.fromEntries(s),t=JSON.stringify(e);p.setHash(this.#s,t)}#u(s=!1){const e=new Map;let t="state:"+this.#s;s&&(t="state:"+this.#s+":"+location.pathname),this.#o.forEach(a=>{const n=localStorage.getItem(t+":"+a);e.set(a,n)});const i=this.#d(e);this.#r(i)}#m(s=!1){const e=new Map;let t=this.#o,i="state:"+this.#s;s&&(t=this.#c,i="state:"+this.#s+":"+location.pathname),t.forEach(n=>{const r=this.#t[n];e.set(n,r)});const a=this.#g(e);t.forEach(n=>{const r=a.get(n);localStorage.setItem(i+":"+n,r)})}#S(){var a,n,r;const s=(n=(a=this.#i)==null?void 0:a.guest_data)==null?void 0:n.data;if(!s)return;this.#i.id===-1&&(this.#i.positionsReverseDates=s.positionsReverseDates);const e=new Map;this.#n.forEach(h=>{const u=s[h];e.set(h,u)});const t=this.#d(e);this.#r(t);const i=$(".mod_guest_title");if(((r=this.#t.competitorsIds)==null?void 0:r.length)===1&&this.#e.page.data.competitors){let h=this.#e.page.data.competitors.filter(u=>u.id===s.competitorsIds[0]);h.length&&($("a",i).attr("href","http://"+h[0].url),$("a",i).text(h[0].name))}}#k(){this.#t.regionsIndexes&&d.watch(this.#t.regionsIndexes,s=>{if(!s.length)return;s.forEach((i,a)=>s[a]=i);const e=TplProjectSelectorRegion.genSearchersMap(),t=[];e.forEach(i=>{i.regions.forEach(a=>{a.index!==-1&&t.push(a.index)})}),this.#t.regionsIndexes=s.filter(i=>t.includes(i))},{immediate:!0}),this.#t.competitorsIds&&d.watch(this.#t.competitorsIds,s=>{if(!s.length)return;s.forEach((t,i)=>s[i]=t);const e=[this.#e.page.data.project.id];this.#e.page.data.project.competitors.forEach(t=>{t.on>=0&&e.push(t.id)}),this.#t.competitorsIds=s.filter(t=>e.includes(t))},{immediate:!0})}}const w=f=>{var e,t,i,a;const s=f;!((e=s.options.tpaNamesUrlHash)!=null&&e.length)&&!((t=s.options.tpaNamesStorage)!=null&&t.length)&&!((i=s.options.tpaNamesStorageLocal)!=null&&i.length)&&!((a=s.options.tpaNamesGuestLink)!=null&&a.length)||new E(s)};o.Core=c.Core,o.i18nPlugin=c.i18n,o.useI18n=c.useI18n,o.useI18nLang=c.useI18nLang,o.corePlugin=l.core,o.useAsyncTopDialog=g.useAsyncTopDialog,o.useTopDialog=g.useTopDialog,o.TopDialogWorker=k.TopDialogWorker,o.piniaTPAPlugin=w,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
|
|
2
|
-
//# sourceMappingURL=app.amd.js.map
|
package/core/app.amd.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app.amd.js","sources":["../../src/core/plugins/piniaTPA.ts"],"sourcesContent":["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":["PiniaTPA","#storeId","#store","#Page","#user","#Api","context","url","data","#loadFromStorage","save","forms","dataGuestLink","#genOptionsForGuestLink","res","utils_clipboard","nameSnakeCase","utils_string","name","currentValue","value","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","_a","_b","_c","_d"],"mappings":"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"}
|
package/core/app.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
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
DELETED
|
@@ -1,214 +0,0 @@
|
|
|
1
|
-
import { d } from "../.chunks/forms-BsuCen2-.es.js";
|
|
2
|
-
import { C as P, i as T, u as b, a as y } from "../.chunks/forms-BsuCen2-.es.js";
|
|
3
|
-
import { c as G } from "../.chunks/core-Dsl28h7N.es.js";
|
|
4
|
-
import { watch as p } from "vue";
|
|
5
|
-
import { guestLinkToClipboard as f } from "../utils/clipboard.js";
|
|
6
|
-
import { camelToSnakeCase as g } from "../utils/string.js";
|
|
7
|
-
import { getHash as m, setHash as l } from "../utils/route.js";
|
|
8
|
-
import { u as A, a as D } from "../.chunks/utils-B1H3EGkg.es.js";
|
|
9
|
-
import { T as j } from "../.chunks/dialogs.vue_vue_type_script_setup_true_lang-B5hK613K.es.js";
|
|
10
|
-
class u {
|
|
11
|
-
#s;
|
|
12
|
-
#t;
|
|
13
|
-
/**
|
|
14
|
-
* @deprecated
|
|
15
|
-
*/
|
|
16
|
-
#e;
|
|
17
|
-
#a;
|
|
18
|
-
#h;
|
|
19
|
-
#i = [];
|
|
20
|
-
#o = [];
|
|
21
|
-
#c = [];
|
|
22
|
-
#r = [];
|
|
23
|
-
constructor(s) {
|
|
24
|
-
var t;
|
|
25
|
-
this.#t = s.store, this.#s = this.#t.$id, this.#e = s.options.Page, this.#a = s.options.user, this.#h = s.options.Api, this.#i = s.options.tpaNamesUrlHash || [], this.#o = s.options.tpaNamesStorage || [], this.#c = s.options.tpaNamesStorageLocal || [], this.#r = s.options.tpaNamesGuestLink || [], s.store.genGuestLink = (a, i) => this.genGuestLink(a, i), (t = this.#a.guest_data) != null && t.data || (this.#d(), this.#d(!0), this.#m()), this.#S(), this.#E();
|
|
26
|
-
const e = d(() => {
|
|
27
|
-
this.#l(), this.#u();
|
|
28
|
-
});
|
|
29
|
-
s.store.$subscribe(e);
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Сгенерировать гостевую ссылку
|
|
33
|
-
*
|
|
34
|
-
* Метод, путь к которому указан в url, должен возвращать сгенерированную ссылку
|
|
35
|
-
*/
|
|
36
|
-
async genGuestLink(s, e) {
|
|
37
|
-
const t = this.#f();
|
|
38
|
-
e = Object.assign(e, Object.fromEntries(t));
|
|
39
|
-
const a = await this.#h.gen(s, "fetchColumn").call({}, e);
|
|
40
|
-
a != null && a.errors || await f(a.result);
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Сгенерировать опции для гостевой ссылки
|
|
44
|
-
*/
|
|
45
|
-
#f() {
|
|
46
|
-
const s = /* @__PURE__ */ new Map();
|
|
47
|
-
return this.#r.forEach((e) => {
|
|
48
|
-
const t = g(e);
|
|
49
|
-
s.set(t, this.#t[e]);
|
|
50
|
-
}), s;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Установить опции из объекта без фиксации состояния
|
|
54
|
-
*/
|
|
55
|
-
#n(s) {
|
|
56
|
-
s.forEach((e, t) => {
|
|
57
|
-
const a = this.#t[t];
|
|
58
|
-
if (e != null && a !== void 0 && e != null && e.constructor && e.constructor === a.constructor) {
|
|
59
|
-
if (t.indexOf("date") === 0 && !Array.isArray(e)) {
|
|
60
|
-
if (typeof e == "string" && !/\d\d\d\d-\d\d-\d\d/.test(e))
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
this.#t[t] = e;
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Сгенерировать Map объект с опциями со значениями в виде json строк
|
|
69
|
-
*/
|
|
70
|
-
#g(s) {
|
|
71
|
-
const e = /* @__PURE__ */ new Map();
|
|
72
|
-
return s.forEach((t, a) => {
|
|
73
|
-
t !== null && (t = JSON.stringify(t), e.set(a, t));
|
|
74
|
-
}), e;
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Сгенерировать Map объект с опциями со значениями в оригинальном виде
|
|
78
|
-
*/
|
|
79
|
-
#p(s) {
|
|
80
|
-
const e = /* @__PURE__ */ new Map();
|
|
81
|
-
return s.forEach((t, a) => {
|
|
82
|
-
if (!(t == null || t === "false")) {
|
|
83
|
-
try {
|
|
84
|
-
if (typeof t == "string" && !/^\d\d\d\d-\d\d-\d\d$/.test(t) && (t = JSON.parse(t)), t == null || t === "false") return;
|
|
85
|
-
} catch {
|
|
86
|
-
}
|
|
87
|
-
e.set(a, t);
|
|
88
|
-
}
|
|
89
|
-
}), e;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Установить опции из хеша адреса страницы
|
|
93
|
-
*/
|
|
94
|
-
#m() {
|
|
95
|
-
let s;
|
|
96
|
-
try {
|
|
97
|
-
s = JSON.parse(m(this.#s));
|
|
98
|
-
} catch {
|
|
99
|
-
}
|
|
100
|
-
if (!s) return;
|
|
101
|
-
const e = /* @__PURE__ */ new Map();
|
|
102
|
-
this.#i.forEach((t) => {
|
|
103
|
-
const a = s[t];
|
|
104
|
-
a && e.set(t, a);
|
|
105
|
-
}), this.#n(e);
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Сохранить опции в хеш адреса страницы
|
|
109
|
-
*/
|
|
110
|
-
#l() {
|
|
111
|
-
const s = /* @__PURE__ */ new Map();
|
|
112
|
-
this.#i.forEach((a) => {
|
|
113
|
-
const i = this.#t[a];
|
|
114
|
-
s.set(a, i);
|
|
115
|
-
});
|
|
116
|
-
const e = Object.fromEntries(s), t = JSON.stringify(e);
|
|
117
|
-
l(this.#s, t);
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Установить опции из localStorage
|
|
121
|
-
* @param isLocal - сохранить с учетом адреса страницы
|
|
122
|
-
*/
|
|
123
|
-
#d(s = !1) {
|
|
124
|
-
const e = /* @__PURE__ */ new Map();
|
|
125
|
-
let t = "state:" + this.#s;
|
|
126
|
-
s && (t = "state:" + this.#s + ":" + location.pathname), this.#o.forEach((i) => {
|
|
127
|
-
const o = localStorage.getItem(t + ":" + i);
|
|
128
|
-
e.set(i, o);
|
|
129
|
-
});
|
|
130
|
-
const a = this.#p(e);
|
|
131
|
-
this.#n(a);
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Сохранить опции в localStorage
|
|
135
|
-
* @param isLocal - сохранить с учетом адреса страницы
|
|
136
|
-
*/
|
|
137
|
-
#u(s = !1) {
|
|
138
|
-
const e = /* @__PURE__ */ new Map();
|
|
139
|
-
let t = this.#o, a = "state:" + this.#s;
|
|
140
|
-
s && (t = this.#c, a = "state:" + this.#s + ":" + location.pathname), t.forEach((o) => {
|
|
141
|
-
const r = this.#t[o];
|
|
142
|
-
e.set(o, r);
|
|
143
|
-
});
|
|
144
|
-
const i = this.#g(e);
|
|
145
|
-
t.forEach((o) => {
|
|
146
|
-
const r = i.get(o);
|
|
147
|
-
localStorage.setItem(a + ":" + o, r);
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* Установить опции из гостевой ссылки
|
|
152
|
-
*/
|
|
153
|
-
#S() {
|
|
154
|
-
var i, o, r;
|
|
155
|
-
const s = (o = (i = this.#a) == null ? void 0 : i.guest_data) == null ? void 0 : o.data;
|
|
156
|
-
if (!s) return;
|
|
157
|
-
this.#a.id === -1 && (this.#a.positionsReverseDates = s.positionsReverseDates);
|
|
158
|
-
const e = /* @__PURE__ */ new Map();
|
|
159
|
-
this.#r.forEach((n) => {
|
|
160
|
-
const h = s[n];
|
|
161
|
-
e.set(n, h);
|
|
162
|
-
});
|
|
163
|
-
const t = this.#p(e);
|
|
164
|
-
this.#n(t);
|
|
165
|
-
const a = $(".mod_guest_title");
|
|
166
|
-
if (((r = this.#t.competitorsIds) == null ? void 0 : r.length) === 1 && this.#e.page.data.competitors) {
|
|
167
|
-
let n = this.#e.page.data.competitors.filter((h) => h.id === s.competitorsIds[0]);
|
|
168
|
-
n.length && ($("a", a).attr("href", "http://" + n[0].url), $("a", a).text(n[0].name));
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* Подготовить входные параметры перед инициализацией основного функционала
|
|
173
|
-
*
|
|
174
|
-
* Входные параметры устанавливаются при открытии страницы
|
|
175
|
-
*
|
|
176
|
-
* Входные параметры могут меняться пользоваталем и устаревать
|
|
177
|
-
*/
|
|
178
|
-
#E() {
|
|
179
|
-
this.#t.regionsIndexes && p(this.#t.regionsIndexes, (s) => {
|
|
180
|
-
if (!s.length) return;
|
|
181
|
-
s.forEach((a, i) => s[i] = a);
|
|
182
|
-
const e = TplProjectSelectorRegion.genSearchersMap(), t = [];
|
|
183
|
-
e.forEach((a) => {
|
|
184
|
-
a.regions.forEach((i) => {
|
|
185
|
-
i.index !== -1 && t.push(i.index);
|
|
186
|
-
});
|
|
187
|
-
}), this.#t.regionsIndexes = s.filter((a) => t.includes(a));
|
|
188
|
-
}, { immediate: !0 }), this.#t.competitorsIds && p(this.#t.competitorsIds, (s) => {
|
|
189
|
-
if (!s.length) return;
|
|
190
|
-
s.forEach((t, a) => s[a] = t);
|
|
191
|
-
const e = [this.#e.page.data.project.id];
|
|
192
|
-
this.#e.page.data.project.competitors.forEach((t) => {
|
|
193
|
-
t.on >= 0 && e.push(t.id);
|
|
194
|
-
}), this.#t.competitorsIds = s.filter((t) => e.includes(t));
|
|
195
|
-
}, { immediate: !0 });
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
const w = (c) => {
|
|
199
|
-
var e, t, a, i;
|
|
200
|
-
const s = c;
|
|
201
|
-
!((e = s.options.tpaNamesUrlHash) != null && e.length) && !((t = s.options.tpaNamesStorage) != null && t.length) && !((a = s.options.tpaNamesStorageLocal) != null && a.length) && !((i = s.options.tpaNamesGuestLink) != null && i.length) || new u(s);
|
|
202
|
-
};
|
|
203
|
-
export {
|
|
204
|
-
P as Core,
|
|
205
|
-
j as TopDialogWorker,
|
|
206
|
-
G as corePlugin,
|
|
207
|
-
T as i18nPlugin,
|
|
208
|
-
w as piniaTPAPlugin,
|
|
209
|
-
A as useAsyncTopDialog,
|
|
210
|
-
b as useI18n,
|
|
211
|
-
y as useI18nLang,
|
|
212
|
-
D as useTopDialog
|
|
213
|
-
};
|
|
214
|
-
//# sourceMappingURL=app.js.map
|
package/core/app.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sources":["../../src/core/plugins/piniaTPA.ts"],"sourcesContent":["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":["PiniaTPA","#storeId","#store","#Page","#user","#Api","#namesUrlHash","#namesStorage","#namesStorageLocal","#namesGuestLink","context","url","data","_a","#loadFromStorage","#loadFromHash","#loadFromGuestLink","#prepareParams","save","debounce","#saveInHash","#saveInStorage","dataGuestLink","#genOptionsForGuestLink","res","guestLinkToClipboard","name","nameSnakeCase","camelToSnakeCase","#setOptions","value","currentValue","#genDataFormat","dataFormatted","#genDataUnFormat","dataHash","getHash","dataObject","dataJSON","setHash","isLocal","storageNamespace","names","guestData","_b","$guestTitle","_c","competitors","competitor","watch","regionsIndexes","regionIndex","index","mapSearchers","availableRegionsIndexes","searcher","region","competitorsIds","competitorId","availableCompetitorsIds","piniaTPA","contextPinia","_d"],"mappings":"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"}
|
package/core/core/core.d.ts
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { default as preloaders } from './preloaders';
|
|
2
|
-
import { Options as TopNoticeOptions } from '../../components/core/notice/utils';
|
|
3
|
-
import { Style as TopNoticeStyle } from '../../components/core/notice/item/types';
|
|
4
|
-
/**
|
|
5
|
-
* Статический класс с текущим состоянимем UI
|
|
6
|
-
*
|
|
7
|
-
* @docs https://ui.topvisor.com/?path=/docs/core-core--docs
|
|
8
|
-
*/
|
|
9
|
-
export default class Core {
|
|
10
|
-
static state: {
|
|
11
|
-
documentClassModificators: Map<string | number, string> & Omit<Map<string | number, string>, keyof Map<any, any>>;
|
|
12
|
-
dateFormat: string;
|
|
13
|
-
currency: "USD" | "RUB" | "EUR";
|
|
14
|
-
gmt: string;
|
|
15
|
-
isMobile: boolean;
|
|
16
|
-
isMobileUA: boolean;
|
|
17
|
-
isRetina: boolean;
|
|
18
|
-
isApp: boolean;
|
|
19
|
-
isLandscape: boolean;
|
|
20
|
-
isPortrait: boolean;
|
|
21
|
-
size: number;
|
|
22
|
-
isHidden: boolean;
|
|
23
|
-
};
|
|
24
|
-
static preloaders: typeof preloaders;
|
|
25
|
-
static widthForMobile: number;
|
|
26
|
-
static themeName: string;
|
|
27
|
-
static matchMediaIsMobile?: MediaQueryList;
|
|
28
|
-
static $?: JQueryStatic | undefined;
|
|
29
|
-
static Events: {
|
|
30
|
-
addOnReize: (listener: (this: HTMLElement, e: UIEvent & {
|
|
31
|
-
topEvent: {
|
|
32
|
-
widthDiff: number;
|
|
33
|
-
hightDiff: number;
|
|
34
|
-
};
|
|
35
|
-
}) => void) => void;
|
|
36
|
-
removeOnResize: (listener: (this: HTMLElement, e: UIEvent & {
|
|
37
|
-
topEvent: {
|
|
38
|
-
widthDiff: number;
|
|
39
|
-
hightDiff: number;
|
|
40
|
-
};
|
|
41
|
-
}) => void) => void;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Различные флаги, необходимые для работы UI
|
|
45
|
-
*/
|
|
46
|
-
static flags: {
|
|
47
|
-
needLoadNotice: boolean;
|
|
48
|
-
};
|
|
49
|
-
static _setState(): void;
|
|
50
|
-
private static useDocumentClassModificators;
|
|
51
|
-
private static useIsHidden;
|
|
52
|
-
private static setStateByWindowSize;
|
|
53
|
-
private static onResize;
|
|
54
|
-
/**
|
|
55
|
-
* Сохранить информацию об устройстве в cookie
|
|
56
|
-
*/
|
|
57
|
-
private static saveToCookie;
|
|
58
|
-
/**
|
|
59
|
-
* Добавить установку класса при нажатии ctrl (cmd) / alt
|
|
60
|
-
*/
|
|
61
|
-
private static useCtrlClasses;
|
|
62
|
-
/**
|
|
63
|
-
* Вывести на экране сообщение в стилизации под push уведомление
|
|
64
|
-
*
|
|
65
|
-
* Для удобства работы со словарем, принимает один парамтер `text` и первую строку из него использует как `title`.
|
|
66
|
-
* Данное поведение можно изменить, передав в параметрах `options.title`
|
|
67
|
-
*
|
|
68
|
-
* Для вывода используется компонент TopNotice, требует его подклчючения
|
|
69
|
-
*
|
|
70
|
-
* @docs https://ui.topvisor.com/?path=/docs/components-core-notice--docs
|
|
71
|
-
*/
|
|
72
|
-
static notice: (text: string, style: TopNoticeStyle, options?: TopNoticeOptions) => Promise<void>;
|
|
73
|
-
/**
|
|
74
|
-
* Вставить css стили на страницу по ссылке с автоматическим добавлением правил media
|
|
75
|
-
*
|
|
76
|
-
* Правила media:
|
|
77
|
-
* - Файлы *.m.css будут грузиться, только на экранах с шириной менее, чем Core.widthForMobile
|
|
78
|
-
* - Файлы *.pc.css будут грузиться, только на экранах с шириной более, чем Core.widthForMobile
|
|
79
|
-
*
|
|
80
|
-
* Настройкой Core.widthForMobile можно управлять через plugin: @topvisor/ui/plugin/core
|
|
81
|
-
*
|
|
82
|
-
* @param fileNames - список ссылок на css файлы
|
|
83
|
-
* @param useSync - использовать синхронную загрузку css, только для css с того же домена. В синхронном режиме стили предзагружаются независимо от
|
|
84
|
-
* media
|
|
85
|
-
*/
|
|
86
|
-
static insertCSSLinkToPage: (fileNames: Array<string>, useSync?: boolean) => Promise<unknown[]>;
|
|
87
|
-
private static _insertToPage;
|
|
88
|
-
/**
|
|
89
|
-
* Вставить css стили на страницу с автоматическим добавлением правил media
|
|
90
|
-
*
|
|
91
|
-
* Загрузка с Vite:
|
|
92
|
-
*
|
|
93
|
-
* ```js
|
|
94
|
-
* import style from '/style.css?inline';
|
|
95
|
-
*
|
|
96
|
-
* insertToPageAsInine(style);
|
|
97
|
-
* ```
|
|
98
|
-
*
|
|
99
|
-
* Загрузка с fetch:
|
|
100
|
-
*
|
|
101
|
-
* ```js
|
|
102
|
-
* const style = await fetch('./style.css');
|
|
103
|
-
*
|
|
104
|
-
* insertToPageAsInine(style);
|
|
105
|
-
* ```
|
|
106
|
-
*
|
|
107
|
-
* @param style - css стили в строке
|
|
108
|
-
* @param type - если указать 'm' или 'pc', то стили будут применяться по условию в зависимости от настройки this.widthForMobile
|
|
109
|
-
*
|
|
110
|
-
* @see insertToPage
|
|
111
|
-
*/
|
|
112
|
-
static insertStyleToPage: (style: string, type?: "" | "m" | "pc") => void;
|
|
113
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
type TopUIEvent = UIEvent & {
|
|
2
|
-
topEvent: {
|
|
3
|
-
widthDiff: number;
|
|
4
|
-
hightDiff: number;
|
|
5
|
-
};
|
|
6
|
-
};
|
|
7
|
-
/**
|
|
8
|
-
* Добавить обработчик на событие изменения размеров экрана
|
|
9
|
-
* вызов таких обработчиков будет опмизирован и объединен в одно событие
|
|
10
|
-
*/
|
|
11
|
-
export declare const addOnReize: (listener: (this: HTMLElement, e: TopUIEvent) => void) => void;
|
|
12
|
-
/**
|
|
13
|
-
* Удаление обработчика на событие изменений размеров экрана
|
|
14
|
-
*/
|
|
15
|
-
export declare const removeOnResize: (listener: (this: HTMLElement, e: TopUIEvent) => void) => void;
|
|
16
|
-
export {};
|
package/core/core/events.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
declare const _default: {
|
|
2
|
-
addOnReize: (listener: (this: HTMLElement, e: UIEvent & {
|
|
3
|
-
topEvent: {
|
|
4
|
-
widthDiff: number;
|
|
5
|
-
hightDiff: number;
|
|
6
|
-
};
|
|
7
|
-
}) => void) => void;
|
|
8
|
-
removeOnResize: (listener: (this: HTMLElement, e: UIEvent & {
|
|
9
|
-
topEvent: {
|
|
10
|
-
widthDiff: number;
|
|
11
|
-
hightDiff: number;
|
|
12
|
-
};
|
|
13
|
-
}) => void) => void;
|
|
14
|
-
};
|
|
15
|
-
export default _default;
|
package/core/core/options.d.ts
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Конфигурация UI
|
|
3
|
-
*
|
|
4
|
-
* Начальные значений устанавилаются при подклчюении Core во Vue приложение через app.use(PluginCore, options)
|
|
5
|
-
*/
|
|
6
|
-
declare const _default: {
|
|
7
|
-
/**
|
|
8
|
-
* Имя темы оформления
|
|
9
|
-
*
|
|
10
|
-
* В данный момент не используется для загрузки css
|
|
11
|
-
*
|
|
12
|
-
* @todo Реализовать загрузки и замену css темы на стороне UI
|
|
13
|
-
*
|
|
14
|
-
* @see https://ui.topvisor.com/?path=/docs/core-theme--docs
|
|
15
|
-
*/
|
|
16
|
-
themeName: "light" | "dark" | string;
|
|
17
|
-
/**
|
|
18
|
-
* CSS-классы модификаторы для документа страницы
|
|
19
|
-
*
|
|
20
|
-
* Могут испоьзвоаться компонентами для включения необхоимых режимов отображения страницы
|
|
21
|
-
*
|
|
22
|
-
* Разные компоненты могут добавлять один и тот же класс, чтобы не было конфликтов каждый компонент управляет только своим классом:
|
|
23
|
-
* - Ключ - уникальное имя компонента, например в setup: `const uid = Math.random();`
|
|
24
|
-
* - Значение - класс модификатора
|
|
25
|
-
*/
|
|
26
|
-
documentClassModificators: Map<string | number, string>;
|
|
27
|
-
/**
|
|
28
|
-
* Базовая ширина страницы для отображения ПК / Мобильной версии сайта
|
|
29
|
-
*
|
|
30
|
-
* @see Core state isMobile
|
|
31
|
-
*/
|
|
32
|
-
widthForMobile: number;
|
|
33
|
-
/**
|
|
34
|
-
* Формат даты, который будет испоьзоваться по умолчанию для вывода даты, как правило, завсит от текущего пользователя
|
|
35
|
-
*/
|
|
36
|
-
dateFormat: string;
|
|
37
|
-
/**
|
|
38
|
-
* Валюта, которая будет испоьзоваться по умолчанию, как правило, завсит от текущего пользователя
|
|
39
|
-
*/
|
|
40
|
-
currency: "RUB" | "USD" | "EUR";
|
|
41
|
-
/**
|
|
42
|
-
* Для Москвы: +0300
|
|
43
|
-
*/
|
|
44
|
-
gmt: string;
|
|
45
|
-
};
|
|
46
|
-
export default _default;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Набор функцией, реализующих загрузку модулей системы, которые рекомендуется загружать в отложенном режиме
|
|
3
|
-
*
|
|
4
|
-
* Функции выполняют загрузку в память полный код модулей и компонентов
|
|
5
|
-
*/
|
|
6
|
-
export default class {
|
|
7
|
-
/**
|
|
8
|
-
* Загрузить в память полный функционал TopNotice
|
|
9
|
-
*/
|
|
10
|
-
static TopNotice(): Promise<void>;
|
|
11
|
-
/**
|
|
12
|
-
* Загрузить в память полный функционал TopPopup
|
|
13
|
-
*/
|
|
14
|
-
static TopPopup(): Promise<void>;
|
|
15
|
-
/**
|
|
16
|
-
* Загрузить в память полный функционал TopDialog
|
|
17
|
-
*/
|
|
18
|
-
static TopDialog(): Promise<void>;
|
|
19
|
-
}
|
package/core/core/state.d.ts
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* State UI для взаимодейсвтиями с приложениями Vue
|
|
3
|
-
*/
|
|
4
|
-
declare const state: {
|
|
5
|
-
/**
|
|
6
|
-
* CSS-классы модификаторы для документа страницы
|
|
7
|
-
*/
|
|
8
|
-
documentClassModificators: Map<string | number, string>;
|
|
9
|
-
dateFormat: string;
|
|
10
|
-
currency: "USD" | "RUB" | "EUR";
|
|
11
|
-
gmt: string;
|
|
12
|
-
/**
|
|
13
|
-
* Device by size
|
|
14
|
-
*
|
|
15
|
-
* @see Core widthForMobile
|
|
16
|
-
*/
|
|
17
|
-
isMobile: boolean;
|
|
18
|
-
/**
|
|
19
|
-
* Device by user agent
|
|
20
|
-
*/
|
|
21
|
-
isMobileUA: boolean;
|
|
22
|
-
/**
|
|
23
|
-
* true, если плотность пикселей экрана больше 1
|
|
24
|
-
*/
|
|
25
|
-
isRetina: boolean;
|
|
26
|
-
/**
|
|
27
|
-
* true, елси это приложение
|
|
28
|
-
*/
|
|
29
|
-
isApp: boolean;
|
|
30
|
-
/**
|
|
31
|
-
* true при горизонтальном расположении устройства
|
|
32
|
-
*/
|
|
33
|
-
isLandscape: boolean;
|
|
34
|
-
/**
|
|
35
|
-
* true при вертикальном расположении устройства
|
|
36
|
-
*/
|
|
37
|
-
isPortrait: boolean;
|
|
38
|
-
/**
|
|
39
|
-
* Максимальная сторона страницы
|
|
40
|
-
*/
|
|
41
|
-
size: number;
|
|
42
|
-
/**
|
|
43
|
-
* true, если страница скрыта
|
|
44
|
-
*
|
|
45
|
-
* Не меняйте это значение вручную
|
|
46
|
-
*/
|
|
47
|
-
isHidden: boolean;
|
|
48
|
-
};
|
|
49
|
-
export default state;
|