@topvisor/ui 1.5.0-updates.8 → 1.5.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/.chunks/{api-CawzY1Cw.amd.js → api-DW3Y93Lp.amd.js} +2 -2
- package/.chunks/{api-CawzY1Cw.amd.js.map → api-DW3Y93Lp.amd.js.map} +1 -1
- package/.chunks/{api-CawzY1Cw.esm.js → api-DW3Y93Lp.esm.js} +2 -2
- package/.chunks/{api-CawzY1Cw.esm.js.map → api-DW3Y93Lp.esm.js.map} +1 -1
- package/.chunks/{app-CCX-gNqz.amd.js → app-Df8tFGnf.amd.js} +2 -2
- package/.chunks/{app-CCX-gNqz.amd.js.map → app-Df8tFGnf.amd.js.map} +1 -1
- package/.chunks/{app-CCX-gNqz.esm.js → app-Df8tFGnf.esm.js} +6 -6
- package/.chunks/{app-CCX-gNqz.esm.js.map → app-Df8tFGnf.esm.js.map} +1 -1
- package/.chunks/{datepicker-BTkZOq7d.amd.js → datepicker-06ASYGz9.amd.js} +2 -2
- package/.chunks/{datepicker-BTkZOq7d.amd.js.map → datepicker-06ASYGz9.amd.js.map} +1 -1
- package/.chunks/{datepicker-BTkZOq7d.esm.js → datepicker-06ASYGz9.esm.js} +2 -2
- package/.chunks/{datepicker-BTkZOq7d.esm.js.map → datepicker-06ASYGz9.esm.js.map} +1 -1
- package/.chunks/{dialog-DeM4SApg.amd.js → dialog-TwUfHMd8.amd.js} +2 -2
- package/.chunks/{dialog-DeM4SApg.amd.js.map → dialog-TwUfHMd8.amd.js.map} +1 -1
- package/.chunks/{dialog-DeM4SApg.esm.js → dialog-TwUfHMd8.esm.js} +4 -4
- package/.chunks/{dialog-DeM4SApg.esm.js.map → dialog-TwUfHMd8.esm.js.map} +1 -1
- package/.chunks/{dialog_regionSelectorRegions-CYrmaDt3.amd.js → dialog_regionSelectorRegions-D2PDcJOI.amd.js} +2 -2
- package/.chunks/{dialog_regionSelectorRegions-CYrmaDt3.amd.js.map → dialog_regionSelectorRegions-D2PDcJOI.amd.js.map} +1 -1
- package/.chunks/{dialog_regionSelectorRegions-CYrmaDt3.esm.js → dialog_regionSelectorRegions-D2PDcJOI.esm.js} +5 -5
- package/.chunks/{dialog_regionSelectorRegions-CYrmaDt3.esm.js.map → dialog_regionSelectorRegions-D2PDcJOI.esm.js.map} +1 -1
- package/.chunks/{dialogs-CMrERMI7.amd.js → dialogs-69JOByg2.amd.js} +2 -2
- package/.chunks/{dialogs-CMrERMI7.amd.js.map → dialogs-69JOByg2.amd.js.map} +1 -1
- package/.chunks/{dialogs-CMrERMI7.esm.js → dialogs-69JOByg2.esm.js} +3 -3
- package/.chunks/{dialogs-CMrERMI7.esm.js.map → dialogs-69JOByg2.esm.js.map} +1 -1
- package/.chunks/forms-3oS4Utyg.amd.js +2 -0
- package/.chunks/forms-3oS4Utyg.amd.js.map +1 -0
- package/.chunks/{forms-CbUt-6Ff.esm.js → forms-3oS4Utyg.esm.js} +108 -109
- package/.chunks/{forms-CbUt-6Ff.esm.js.map → forms-3oS4Utyg.esm.js.map} +1 -1
- package/.chunks/{formsExt-CrTmBhja.amd.js → formsExt-CdLb48ea.amd.js} +2 -2
- package/.chunks/{formsExt-CrTmBhja.amd.js.map → formsExt-CdLb48ea.amd.js.map} +1 -1
- package/.chunks/{formsExt-CrTmBhja.esm.js → formsExt-CdLb48ea.esm.js} +4 -4
- package/.chunks/formsExt-CdLb48ea.esm.js.map +1 -0
- package/.chunks/{notice-CslVdVNm.amd.js → notice-CBraHnl2.amd.js} +2 -2
- package/.chunks/{notice-CslVdVNm.amd.js.map → notice-CBraHnl2.amd.js.map} +1 -1
- package/.chunks/{notice-CslVdVNm.esm.js → notice-CBraHnl2.esm.js} +2 -2
- package/.chunks/{notice-CslVdVNm.esm.js.map → notice-CBraHnl2.esm.js.map} +1 -1
- package/.chunks/{popup-dNrN-eKi.amd.js → popup--ITACA7I.amd.js} +2 -2
- package/.chunks/{popup-dNrN-eKi.amd.js.map → popup--ITACA7I.amd.js.map} +1 -1
- package/.chunks/{popup-dNrN-eKi.esm.js → popup--ITACA7I.esm.js} +3 -3
- package/.chunks/{popup-dNrN-eKi.esm.js.map → popup--ITACA7I.esm.js.map} +1 -1
- package/.chunks/{popup-DrByVU-k.amd.js → popup-CAy1LTfy.amd.js} +2 -2
- package/.chunks/{popup-DrByVU-k.amd.js.map → popup-CAy1LTfy.amd.js.map} +1 -1
- package/.chunks/{popup-DrByVU-k.esm.js → popup-CAy1LTfy.esm.js} +3 -3
- package/.chunks/{popup-DrByVU-k.esm.js.map → popup-CAy1LTfy.esm.js.map} +1 -1
- package/.chunks/{utils-Dd0MZgyw.amd.js → utils-BAP3Hzmk.amd.js} +2 -2
- package/.chunks/{utils-Dd0MZgyw.amd.js.map → utils-BAP3Hzmk.amd.js.map} +1 -1
- package/.chunks/{utils-Dd0MZgyw.esm.js → utils-BAP3Hzmk.esm.js} +4 -4
- package/.chunks/{utils-Dd0MZgyw.esm.js.map → utils-BAP3Hzmk.esm.js.map} +1 -1
- package/.chunks/{utils-BwiXsV0S.amd.js → utils-DI45Ujdf.amd.js} +2 -2
- package/.chunks/{utils-BwiXsV0S.amd.js.map → utils-DI45Ujdf.amd.js.map} +1 -1
- package/.chunks/{utils-BwiXsV0S.esm.js → utils-DI45Ujdf.esm.js} +3 -3
- package/.chunks/{utils-BwiXsV0S.esm.js.map → utils-DI45Ujdf.esm.js.map} +1 -1
- package/.chunks/{worker-Db8YrEHo.amd.js → worker-OsfdwnCi.amd.js} +2 -2
- package/.chunks/{worker-Db8YrEHo.amd.js.map → worker-OsfdwnCi.amd.js.map} +1 -1
- package/.chunks/{worker-Db8YrEHo.esm.js → worker-OsfdwnCi.esm.js} +3 -3
- package/.chunks/{worker-Db8YrEHo.esm.js.map → worker-OsfdwnCi.esm.js.map} +1 -1
- package/api/additional.d.ts +1 -0
- package/api/index.amd.js +1 -1
- package/api/index.amd.js.map +1 -1
- package/api/index.d.ts +1 -0
- package/api/index.js +1 -1
- package/assets/core.css +1 -1
- package/assets/formsExt.css +1 -1
- package/assets/project.css +1 -1
- package/autoload-css-manifest.amd.json +4 -4
- package/autoload-css-manifest.json +4 -4
- package/charts/charts.amd.js +1 -1
- package/charts/charts.amd.js.map +1 -1
- package/charts/charts.d.ts +1 -0
- package/charts/charts.js +1 -1
- package/core/app.amd.js +1 -1
- package/core/app.amd.js.map +1 -1
- package/core/app.d.ts +1 -0
- package/core/app.js +4 -4
- package/dialog/dialog.amd.js +1 -1
- package/dialog/dialog.amd.js.map +1 -1
- package/dialog/dialog.d.ts +1 -0
- package/dialog/dialog.js +3 -3
- package/extra/extra.amd.js +1 -1
- package/extra/extra.amd.js.map +1 -1
- package/extra/extra.d.ts +1 -0
- package/forms/forms.amd.js +1 -1
- package/forms/forms.amd.js.map +1 -1
- package/forms/forms.d.ts +1 -0
- package/forms/forms.js +1 -1
- package/formsExt/formsExt.amd.js +1 -1
- package/formsExt/formsExt.amd.js.map +1 -1
- package/formsExt/formsExt.d.ts +1 -0
- package/formsExt/formsExt.js +1 -1
- package/icomoon/Topvisor icons.json +286 -235
- package/icomoon/demo-files/demo.css +3 -0
- package/icomoon/demo.html +33 -2
- package/icomoon/fonts/Topvisor-2.eot +0 -0
- package/icomoon/fonts/Topvisor-2.svg +4 -2
- package/icomoon/fonts/Topvisor-2.ttf +0 -0
- package/icomoon/fonts/Topvisor-2.woff +0 -0
- package/icomoon/selection.json +1 -1
- package/icomoon/style.css +11 -5
- package/layout/layout.amd.js +1 -1
- package/layout/layout.amd.js.map +1 -1
- package/layout/layout.d.ts +1 -0
- package/layout/layout.js +1 -1
- package/package.json +1 -1
- package/popup/popup.amd.js +1 -1
- package/popup/popup.amd.js.map +1 -1
- package/popup/popup.d.ts +1 -0
- package/popup/popup.js +1 -1
- package/popup/worker.amd.js +1 -1
- package/popup/worker.amd.js.map +1 -1
- package/popup/worker.d.ts +1 -0
- package/popup/worker.js +1 -1
- package/project/project.amd.js +1 -1
- package/project/project.amd.js.map +1 -1
- package/project/project.d.ts +1 -0
- package/project/project.js +11 -11
- package/project/project.js.map +1 -1
- package/src/{src/components → components}/charts/miniCharts/miniCharts.d.ts +1 -1
- package/src/{src/components → components}/core/notice/item/types.d.ts +1 -1
- package/src/{src/components → components}/core/notice/utils.d.ts +1 -1
- package/src/{src/components → components}/dialog/dialog/composables/dialogHandle.d.ts +1 -1
- package/src/{src/components → components}/dialog/dialog/dialogs/dialogs.vue.d.ts +2 -2
- package/src/{src/components → components}/dialog/dialog/stories/dialog_example/pages/utils.d.ts +1 -1
- package/src/components/dialog/dialog.d.ts +6 -0
- package/src/{src/components → components}/dialog/lib/worker.d.ts +1 -1
- package/src/{src/components → components}/forms/button/types.d.ts +1 -1
- package/src/{src/components → components}/forms/input/types.d.ts +1 -1
- package/src/components/forms/inputDate/types.d.ts +1 -0
- package/src/{src/components → components}/forms/select/types.d.ts +1 -1
- package/src/{src/components → components}/formsExt/editArea/types.d.ts +1 -1
- package/src/{src/components → components}/formsExt/editInput/types.d.ts +2 -2
- package/src/{src/components → components}/formsExt/libs/optionGroup/types.d.ts +1 -1
- package/src/{src/components → components}/formsExt/menu/types.d.ts +1 -1
- package/src/{src/components → components}/formsExt/policy/policy.vue.d.ts +1 -1
- package/src/{src/components → components}/formsExt/selector2/types.d.ts +3 -3
- package/src/{src/components → components}/popup/lib/popup.d.ts +2 -2
- package/src/{src/components → components}/popup/lib/worker.d.ts +2 -2
- package/src/{src/components → components}/popup/popup/popup.vue.d.ts +1 -1
- package/src/{src/components → components}/popup/popup/widgetInput/widgetInput.vue.d.ts +1 -1
- package/src/{src/components → components}/popup/popupConfirm/popupConfirm.vue.d.ts +1 -1
- package/src/{src/components → components}/project/competitorSelector/composables.d.ts +1 -1
- package/src/{src/components → components}/project/competitorSelector/types.d.ts +1 -1
- package/src/{src/components → components}/project/groupSelector/folders/types.d.ts +1 -1
- package/src/{src/components → components}/project/groupSelector/groups/groups.vue.d.ts +1 -1
- package/src/{src/components → components}/project/groupSelector/groups/types.d.ts +1 -1
- package/src/{src/components → components}/project/groupSelector/stories/mocks/index.d.ts +1 -1
- package/src/{src/components → components}/project/projectSelector/cache.d.ts +1 -1
- package/src/{src/components → components}/project/projectSelector/projectSelector.vue.d.ts +1 -1
- package/src/{src/components → components}/project/projectSelector/types.d.ts +2 -2
- package/src/{src/components → components}/project/projectSelector/utils.d.ts +1 -1
- package/src/{src/components → components}/project/regionSelector/composables/selectRegion.d.ts +1 -1
- package/src/{src/components → components}/project/regionSelector/composables/selectSearcher.d.ts +1 -1
- package/src/{src/components → components}/project/regionSelector/dialog_regionSelectorRegions/types.d.ts +1 -1
- package/src/{src/components → components}/project/tagSelector/popupOpener/types.d.ts +1 -1
- package/src/{src/components → components}/project/tagSelector/types.d.ts +1 -1
- package/src/{src/components → components}/project/tagSelector/utils/el.d.ts +1 -1
- package/src/{src/components → components}/tabsView/tabsView/store.d.ts +1 -1
- package/src/{src/core → core}/app.d.ts +2 -2
- package/src/{src/core → core}/core/core.d.ts +3 -3
- package/src/{src/core → core}/plugins/core.d.ts +6 -6
- package/src/{src/core → core}/plugins/i18n.d.ts +3 -1
- package/src/{src/core → core}/utils/price.d.ts +2 -2
- package/src/core/utils/store.d.ts +6 -0
- package/tabs/tabs.amd.js.map +1 -1
- package/tabs/tabs.d.ts +1 -0
- package/tabsView/tabsView.amd.js +1 -1
- package/tabsView/tabsView.amd.js.map +1 -1
- package/tabsView/tabsView.d.ts +1 -0
- package/tabsView/tabsView.js +2 -2
- package/utils/check.d.ts +1 -0
- package/utils/clipboard.amd.js +1 -1
- package/utils/clipboard.amd.js.map +1 -1
- package/utils/clipboard.d.ts +1 -0
- package/utils/clipboard.js +1 -1
- package/utils/date.amd.js +1 -1
- package/utils/date.amd.js.map +1 -1
- package/utils/date.d.ts +1 -0
- package/utils/date.js +1 -1
- package/utils/device.amd.js +1 -1
- package/utils/device.amd.js.map +1 -1
- package/utils/device.d.ts +1 -0
- package/utils/device.js +1 -1
- package/utils/dom.d.ts +5 -0
- package/utils/image.d.ts +1 -0
- package/utils/keyboard.d.ts +1 -0
- package/utils/lodash.amd.js +1 -1
- package/utils/lodash.amd.js.map +1 -1
- package/utils/lodash.d.ts +1 -0
- package/utils/lodash.js +1 -1
- package/utils/number.d.ts +1 -0
- package/utils/price.amd.js +1 -1
- package/utils/price.amd.js.map +1 -1
- package/utils/price.d.ts +1 -0
- package/utils/price.js +1 -1
- package/utils/route.d.ts +1 -0
- package/utils/scroll.d.ts +1 -0
- package/utils/searchers.amd.js +1 -1
- package/utils/searchers.amd.js.map +1 -1
- package/utils/searchers.d.ts +1 -0
- package/utils/searchers.js +1 -1
- package/utils/store.d.ts +1 -0
- package/utils/string.amd.js +1 -1
- package/utils/string.amd.js.map +1 -1
- package/utils/string.d.ts +1 -0
- package/utils/string.js +1 -1
- package/utils/system.d.ts +1 -0
- package/utils/url.d.ts +1 -0
- package/.chunks/forms-CbUt-6Ff.amd.js +0 -2
- package/.chunks/forms-CbUt-6Ff.amd.js.map +0 -1
- package/.chunks/formsExt-CrTmBhja.esm.js.map +0 -1
- package/src/src/components/dialog/dialog.d.ts +0 -6
- package/src/src/components/forms/inputDate/types.d.ts +0 -1
- package/src/src/core/utils/store.d.ts +0 -6
- /package/src/{src/api → api}/api/additional.d.ts +0 -0
- /package/src/{src/api → api}/api/client/client.d.ts +0 -0
- /package/src/{src/api → api}/api/client/request-options.d.ts +0 -0
- /package/src/{src/api → api}/api/client/request.d.ts +0 -0
- /package/src/{src/api → api}/api/index.d.ts +0 -0
- /package/src/{src/api → api}/api/mocker/index.d.ts +0 -0
- /package/src/{src/api → api}/api/tests/types.test-d.d.ts +0 -0
- /package/src/{src/api → api}/api/types/api.d.ts +0 -0
- /package/src/{src/api → api}/api/types/client/client.d.ts +0 -0
- /package/src/{src/api → api}/api/types/client/middleware.d.ts +0 -0
- /package/src/{src/api → api}/api/types/client/options.d.ts +0 -0
- /package/src/{src/api → api}/api/types/client/request-context.d.ts +0 -0
- /package/src/{src/api → api}/api/types/client/request-options.d.ts +0 -0
- /package/src/{src/api → api}/api/types/client/request.d.ts +0 -0
- /package/src/{src/api → api}/api/types/ext.d.ts +0 -0
- /package/src/{src/api → api}/api/types/field.d.ts +0 -0
- /package/src/{src/api → api}/api/types/index.d.ts +0 -0
- /package/src/{src/api → api}/api/types/mocker.d.ts +0 -0
- /package/src/{src/api → api}/api/types/schema.d.ts +0 -0
- /package/src/{src/api → api}/api/types/tv.d.ts +0 -0
- /package/src/{src/api → api}/api/types/utils.d.ts +0 -0
- /package/src/{src/api → api}/api/utils/common.d.ts +0 -0
- /package/src/{src/api → api}/api/utils/field.d.ts +0 -0
- /package/src/{src/api → api}/api/utils/filters.d.ts +0 -0
- /package/src/{src/api → api}/api/utils/lazy.d.ts +0 -0
- /package/src/{src/components → components}/charts/charts.d.ts +0 -0
- /package/src/{src/components → components}/charts/miniChart/miniChart.vue.d.ts +0 -0
- /package/src/{src/components → components}/charts/miniChart/types.d.ts +0 -0
- /package/src/{src/components → components}/charts/miniChart/utils/consts.d.ts +0 -0
- /package/src/{src/components → components}/charts/miniCharts/miniCharts.vue.d.ts +0 -0
- /package/src/{src/components → components}/core/notice/item/item.vue.d.ts +0 -0
- /package/src/{src/components → components}/core/notice/notice.vue.d.ts +0 -0
- /package/src/{src/components → components}/core/notice/types.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/composables/asyncDialogHandle.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/composables/types.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/composables/utils.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/dialog.vue.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/page/page.vue.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/page/types.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/pageComponent/pageComponent.vue.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/pageComponent/types.d.ts +0 -0
- /package/src/{src/components → components}/dialog/dialog/types.d.ts +0 -0
- /package/src/{src/components → components}/dialog/lib/types.d.ts +0 -0
- /package/src/{src/components → components}/dialog/lib/utils.d.ts +0 -0
- /package/src/{src/components → components}/dialog/lib/utils.globalEvents.d.ts +0 -0
- /package/src/{src/components → components}/extra/extra.d.ts +0 -0
- /package/src/{src/components → components}/extra/rive/rive.vue.d.ts +0 -0
- /package/src/{src/components → components}/extra/rive/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/avatar/avatar.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/avatar/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/button/button.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/caption/caption.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/caption/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/checkbox/checkbox.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/checkbox/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/controlLabel/controlLabel.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/controlLabel/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/forms.d.ts +0 -0
- /package/src/{src/components → components}/forms/helpers.d.ts +0 -0
- /package/src/{src/components → components}/forms/hint/hint.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/hint/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/input/input.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/inputDate/datepicker.d.ts +0 -0
- /package/src/{src/components → components}/forms/inputDate/inputDate.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/inputRange/inputRange.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/inputRange/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/loadbar/loadbar.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/preloader/preloader.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/preloader/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/radio/radio.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/radio/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/select/select.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/switcher/switcher.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/switcher/types.d.ts +0 -0
- /package/src/{src/components → components}/forms/textarea/textarea.vue.d.ts +0 -0
- /package/src/{src/components → components}/forms/textarea/types.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/checkboxGroup/checkboxGroup.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/checkboxGroup/types.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/editArea/editArea.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/editInput/editInput.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/formsExt.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/info/info.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/info/types.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/libs/optionGroup/optionGroup.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/menu/menu.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/policy/types.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/radioGroup/radioGroup.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/radioGroup/types.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/selector2/cache.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/selector2/composables/useAPI.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/selector2/composables/useMenu.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/selector2/itemMulti.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/selector2/selector2.vue.d.ts +0 -0
- /package/src/{src/components → components}/formsExt/selector2/utils.d.ts +0 -0
- /package/src/{src/components → components}/layout/islandRows/islandRows.vue.d.ts +0 -0
- /package/src/{src/components → components}/layout/islandRows/islandRowsRow/islandRowsRow.vue.d.ts +0 -0
- /package/src/{src/components → components}/layout/islandRows/islandRowsRow/types.d.ts +0 -0
- /package/src/{src/components → components}/layout/islandRows/islandRowsSubTitle/islandRowsSubTitle.vue.d.ts +0 -0
- /package/src/{src/components → components}/layout/islandRows/types.d.ts +0 -0
- /package/src/{src/components → components}/layout/layout.d.ts +0 -0
- /package/src/{src/components → components}/layout/rows/rows.vue.d.ts +0 -0
- /package/src/{src/components → components}/layout/rows/types.d.ts +0 -0
- /package/src/{src/components → components}/popup/lib/popup.globalEvents.d.ts +0 -0
- /package/src/{src/components → components}/popup/lib/worker.globalEvents.d.ts +0 -0
- /package/src/{src/components → components}/popup/popup/listItem.vue.d.ts +0 -0
- /package/src/{src/components → components}/popup/popup/opener/opener.vue.d.ts +0 -0
- /package/src/{src/components → components}/popup/popup/opener/types.d.ts +0 -0
- /package/src/{src/components → components}/popup/popup/types.d.ts +0 -0
- /package/src/{src/components → components}/popup/popup.d.ts +0 -0
- /package/src/{src/components → components}/popup/popupAlert/popupAlert.vue.d.ts +0 -0
- /package/src/{src/components → components}/popup/popupAlert/types.d.ts +0 -0
- /package/src/{src/components → components}/popup/popupConfirm/types.d.ts +0 -0
- /package/src/{src/components → components}/popup/popupHint/popupHint.vue.d.ts +0 -0
- /package/src/{src/components → components}/popup/popupHint/types.d.ts +0 -0
- /package/src/{src/components → components}/popup/popupPrompt/popupPrompt.vue.d.ts +0 -0
- /package/src/{src/components → components}/popup/popupPrompt/types.d.ts +0 -0
- /package/src/{src/components → components}/popup/worker.d.ts +0 -0
- /package/src/{src/components → components}/project/competitorSelector/competitorSelector.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/groupSelector/folders/folders.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/groupSelector/folders/utils.d.ts +0 -0
- /package/src/{src/components → components}/project/groupSelector/groupSelector.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/groupSelector/groups/utils.d.ts +0 -0
- /package/src/{src/components → components}/project/groupSelector/stories/mocks/folders.d.ts +0 -0
- /package/src/{src/components → components}/project/groupSelector/stories/mocks/groups.d.ts +0 -0
- /package/src/{src/components → components}/project/groupSelector/types.d.ts +0 -0
- /package/src/{src/components → components}/project/project.d.ts +0 -0
- /package/src/{src/components → components}/project/projectSelector/submenu/submenu.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/projectSelector/submenu/types.d.ts +0 -0
- /package/src/{src/components → components}/project/regionSelector/composables/compare.d.ts +0 -0
- /package/src/{src/components → components}/project/regionSelector/composables/selectorRegion.d.ts +0 -0
- /package/src/{src/components → components}/project/regionSelector/dialog_regionSelectorRegions/dialog_regionSelectorRegions.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/regionSelector/regionSelector.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/regionSelector/types.d.ts +0 -0
- /package/src/{src/components → components}/project/regionSelector/utils/consts.d.ts +0 -0
- /package/src/{src/components → components}/project/regionSelector/utils/utils.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/popupListItem/tagPopupListItem.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/popupListItem/types.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/popupOpener/popupOpener.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/tagIcon/tagIcon.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/tagIcon/types.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/tagSelector.vue.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/tagsDefaults.d.ts +0 -0
- /package/src/{src/components → components}/project/tagSelector/utils/utils.d.ts +0 -0
- /package/src/{src/components → components}/tabs/tabs/content.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabs/tabs/tab.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabs/tabs/tabs.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabs/tabs/types.d.ts +0 -0
- /package/src/{src/components → components}/tabs/tabs.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView/menu.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView/menuDelimeter.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView/menuItem.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView/menuTitle.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView/tabsView.vue.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView/types.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView/utils.d.ts +0 -0
- /package/src/{src/components → components}/tabsView/tabsView.d.ts +0 -0
- /package/src/{src/core → core}/core/events/resize.d.ts +0 -0
- /package/src/{src/core → core}/core/events.d.ts +0 -0
- /package/src/{src/core → core}/core/options.d.ts +0 -0
- /package/src/{src/core → core}/core/preloaders.d.ts +0 -0
- /package/src/{src/core → core}/core/state.d.ts +0 -0
- /package/src/{src/core → core}/directives/data.d.ts +0 -0
- /package/src/{src/core → core}/directives/focus.d.ts +0 -0
- /package/src/{src/core → core}/directives/preloader.d.ts +0 -0
- /package/src/{src/core → core}/directives/scrollIntoView.d.ts +0 -0
- /package/src/{src/core → core}/directives/scrollShadow.d.ts +0 -0
- /package/src/{src/core → core}/directives/shortcut.d.ts +0 -0
- /package/src/{src/core → core}/directives/sticky.d.ts +0 -0
- /package/src/{src/core → core}/directives/swimUp.d.ts +0 -0
- /package/src/{src/core → core}/directives/tooltip.d.ts +0 -0
- /package/src/{src/core → core}/plugins/piniaTPA.d.ts +0 -0
- /package/src/{src/core → core}/utils/check.d.ts +0 -0
- /package/src/{src/core → core}/utils/clipboard.d.ts +0 -0
- /package/src/{src/core → core}/utils/composables/useWatch.d.ts +0 -0
- /package/src/{src/core → core}/utils/date.d.ts +0 -0
- /package/src/{src/core → core}/utils/device.d.ts +0 -0
- /package/src/{src/core → core}/utils/dom.d.ts +0 -0
- /package/src/{src/core → core}/utils/image.d.ts +0 -0
- /package/src/{src/core → core}/utils/keyboard.d.ts +0 -0
- /package/src/{src/core → core}/utils/lodash.d.ts +0 -0
- /package/src/{src/core → core}/utils/number.d.ts +0 -0
- /package/src/{src/core → core}/utils/route.d.ts +0 -0
- /package/src/{src/core → core}/utils/scroll.d.ts +0 -0
- /package/src/{src/core → core}/utils/searchers.d.ts +0 -0
- /package/src/{src/core → core}/utils/store/localStorage.d.ts +0 -0
- /package/src/{src/core → core}/utils/store/plugin.d.ts +0 -0
- /package/src/{src/core → core}/utils/store/store.d.ts +0 -0
- /package/src/{src/core → core}/utils/string.d.ts +0 -0
- /package/src/{src/core → core}/utils/system.d.ts +0 -0
- /package/src/{src/core → core}/utils/tests/date/dateFormat.test.d.ts +0 -0
- /package/src/{src/core → core}/utils/url.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[".chunks/dialogs-CMrERMI7.esm.js","../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/lib/worker.ts","../../src/components/dialog/dialog/composables/dialogHandle.ts","../../src/components/dialog/dialog/dialogs/dialogs.vue"],"names":["k2","k","desc","m","o","v","\"default\"","ownKeys","ar","mod","result","i","vue","exports","D","O","vue_1","P","A","e","r","t","a","s","c","l","u","dom_js_1","d","route_js_1","require","resolve_1","reject_1","forms_CbUt_6Ff_esm_js_1","j","system_js_1","M","N","F","I"],"mappings":"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","sourcesContent":["var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || (function () {\n var ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n };\n return function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n };\n})();\ndefine([\"require\", \"exports\", \"./forms-CbUt-6Ff.esm.js\", \"../utils/dom.js\", \"../utils/system.js\", \"../utils/route.js\", \"vue\"], function (require, exports, forms_CbUt_6Ff_esm_js_1, dom_js_1, system_js_1, route_js_1, vue_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.t = exports.r = exports.n = exports.i = exports.a = void 0;\n //#region src/components/dialog/dialog/dialog.vue?vue&type=script&setup=true&lang.ts\n var D = [\n \"id\",\n \"data-view-page-active\",\n \"data-modal\",\n \"data-position\"\n ], O = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"dialog\",\n props: {\n id: {},\n pageActive: {},\n width: { default: \"600px\" },\n height: { default: \"auto\" },\n modal: {\n type: Boolean,\n default: !0\n },\n position: {},\n historyType: { default: \"push\" },\n classes: {}\n },\n emits: [\"open\", \"close\"],\n setup(e) {\n let t = P(e.id);\n if (!t)\n throw Error(\"TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()\");\n return (0, vue_1.provide)(\"dialogWorker\", t), (0, vue_1.onMounted)(() => {\n let e = (0, vue_1.getCurrentInstance)(), n = e.parent;\n if (n?.parent?.type.name !== \"DialogWrapper\")\n throw Error(\"TopDialog cannot be used in a template, use useTopDialog()\");\n if (Array.isArray(n.subTree.children) && n.subTree.children.length !== 1)\n throw Error(\"TopDialog can has only one root element\");\n t.onMounted(n, e);\n }), (0, vue_1.watch)(t.isOpened, () => {\n t.isReady.value = !0;\n }, {\n flush: \"post\",\n once: !0\n }), (n, r) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n id: (0, vue_1.unref)(t).idAttr,\n class: (0, vue_1.normalizeClass)([\"top-dialog\", e.classes]),\n style: (0, vue_1.normalizeStyle)({\n \"--top-dialog-width\": e.width,\n \"--top-dialog-height\": e.height\n }),\n tabindex: \"-1\",\n \"data-view-page-active\": (0, vue_1.unref)(t).pageActive.value,\n \"data-modal\": e.modal,\n \"data-position\": e.position\n }, [\n r[0] ||= (0, vue_1.createElementVNode)(\"div\", { class: \"modal-layer modal-layer-header\" }, null, -1),\n (0, vue_1.createElementVNode)(\"div\", {\n class: \"modal-layer modal-layer-body\",\n style: (0, vue_1.normalizeStyle)({ \"min-height\": e.height + \"px\" })\n }, null, 4),\n (0, vue_1.renderSlot)(n.$slots, \"default\")\n ], 14, D));\n }\n }), k, A = class e {\n static init(r) {\n if (this.inited)\n return;\n this.inited = !0, this.state.load = r?.load, this.state.decoratorOnCreate = r?.decoratorOnCreate;\n let i = r?.autoInitDelay ?? 5e3;\n window.addEventListener(\"hashchange\", (e) => {\n this.opendDialogsFromChangeUrl(e.oldURL, e.newURL);\n }), this.opendDialogsFromChangeUrl(\"\", location.href), document.addEventListener(\"mousedown\", async (t) => {\n if (!(t.target instanceof HTMLElement))\n return;\n let n = t.target.closest(\"a[data-to-view]\");\n if (!n)\n return;\n let r = \"next\";\n n.dataset.action === \"top-dialog-close\" && (r = \"prev\"), n.href = e.genViewPageHash(n.dataset.toView, r);\n }), document.addEventListener(\"click\", async (r) => {\n if (!(r.target instanceof HTMLElement))\n return;\n let i = r.target.closest(\"[data-to-view]\");\n if (!i)\n return;\n if (i instanceof HTMLAnchorElement && i.href === \".\") {\n r.preventDefault();\n let e = new MouseEvent(\"mousedown\", {\n bubbles: !0,\n cancelable: !0,\n view: window\n });\n i.dispatchEvent(e), setTimeout(() => i.click());\n return;\n }\n let a = await this.getDialogsUtils(), s = i.dataset.toView, c = s.split(\"-\")[0], l = a.getElDialogById(c), u = \"next\";\n if (l) {\n let e = (0, dom_js_1.querySelectorAllArray)(l, \".modal-layer\"), t = e.reduce((e, t) => {\n let n = t.querySelector(\":scope > .active\");\n return n && e.push(n), e;\n }, []);\n if (t.length) {\n let n = s.split(\"-\")[1].split(\":\")[0];\n (e.reduce((e, t) => {\n let r = t?.querySelector(`:scope > [data-view-page=\"${n}\"]`);\n return r && e.push(r), e;\n }, [])[0]?.dataset.order ?? 0) < (t[0]?.dataset.order ?? 0) && (u = \"prev\");\n }\n }\n i.dataset.action === \"top-dialog-close\" && (u = \"prev\");\n let d = e.genViewPageHash(s, u);\n if (i instanceof HTMLAnchorElement) {\n if (!l || !(0, dom_js_1.isVisible)(l))\n return;\n if (location.hash.indexOf(s.replace(\"-\", \"=\")) !== -1) {\n await a.toViewDirty(s);\n return;\n }\n }\n l?.dataset.toViewReplace ? (r.preventDefault(), (0, route_js_1.historySetState)(!0, d), await a.toViewDirty(s), u == \"next\" ? e.state.viewPageN++ : e.state.viewPageN--) : i.tagName !== \"A\" && (this.compareStates(d, location.hash) ? (0, route_js_1.historySetState)(!1, d) : await a.toViewDirty(s));\n }), setTimeout(() => this.getDialogsUtils(), i);\n }\n static opendDialogsFromChangeUrl(e, t) {\n let n = e.replace(/.*?#/, \"#\"), r = t.replace(/.*?#/, \"#\");\n this.compareStates(n, r) && this.opendDialogsFromUrl();\n }\n static async getDialogsUtils() {\n let { TopDialogUtils: e } = await new Promise((resolve_1, reject_1) => { require([\"./utils-Dd0MZgyw.esm.js\"], resolve_1, reject_1); }).then(__importStar);\n return e;\n }\n static getDialog(e) {\n return e.closest(\".ui-dialog-content\");\n }\n static get$dialog(e) {\n return e.closest(\".ui-dialog-content\");\n }\n static getPage(e) {\n return e.closest(\"[data-view-page]\");\n }\n static get$page(e) {\n return e.closest(\"[data-view-page]\");\n }\n static get$pairPage(t) {\n let n = e.get$dialog(t), r = e.get$page(t).data(\"view-page\");\n return $(\"[data-view-page=\\\"\" + r + \"\\\"]\", n);\n }\n static getPairPage(t) {\n let r = e.getDialog(t);\n if (!r)\n return;\n let i = e.getPage(t)?.dataset.viewPage;\n return (0, dom_js_1.querySelectorAllArray)(r, `[data-view-page=\"${i}\"]`);\n }\n static close(e) {\n let t = $(\"#\" + e);\n if (t.dialog(\"instance\")) {\n t.dialog(\"close\");\n return;\n }\n let n = document.getElementById(e);\n n instanceof HTMLDialogElement && n.close();\n }\n static destroy(e) {\n let t = $(\"#\" + e);\n if (t.dialog(\"instance\")) {\n t.dialog(\"close\"), t.dialog(\"destroy\");\n return;\n }\n let n = document.getElementById(e);\n n instanceof HTMLDialogElement && n.close();\n }\n static genViewPageHash(e, t = \"next\") {\n let n = this.state.viewPageN;\n t == \"prev\" ? n-- : n++;\n let r = e.split(\"-\"), a = r.shift(), o = r.join(\"-\"), s = (0, route_js_1.genHash)(\"vpn\", n);\n return s = (0, route_js_1.genHash)(\"view-\" + a, o, s), s;\n }\n static compareStates(e, t) {\n let n = e.match(/[#&]view-[^&]+/g) || [], r = t.match(/[#&]view-[^&]+/g) || [];\n return !!(n.length !== r.length || n.filter((e, t) => e !== (r[t] || \"\")).length);\n }\n };\n exports.a = O;\n exports.i = A;\n k = A, (0, forms_CbUt_6Ff_esm_js_1.K)(A, \"state\", {\n load: void 0,\n decoratorOnCreate: void 0,\n viewPageN: 0\n }), (0, forms_CbUt_6Ff_esm_js_1.K)(A, \"inited\", !1), (0, forms_CbUt_6Ff_esm_js_1.K)(A, \"opendDialogsFromUrl\", async () => {\n let e = Number((0, route_js_1.getHash)(\"vpn\")) || 0, r, i = /* @__PURE__ */ RegExp(\"view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)\", \"g\");\n for (; r = i.exec(location.hash);) {\n let t = \"next\";\n return e < k.state.viewPageN && (t = \"prev\"), (await k.getDialogsUtils()).toViewDirty(r[1], t);\n }\n return (0, dom_js_1.querySelectorAllArray)(document, \".ui-dialog-content[data-view-page-active]\").filter((e) => (0, dom_js_1.isVisible)(e)).forEach((e) => {\n let t = e.getAttribute(\"id\");\n if (!t)\n throw \"Диалоговое окно не содержит id\";\n (0, route_js_1.getHash)(\"view-\" + t) || $(e).dialog(\"close\");\n }), k.state.viewPageN = e, !0;\n });\n //#endregion\n //#region src/components/dialog/dialog/composables/dialogHandle.ts\n var j = class {\n constructor(t) {\n (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"id\", void 0), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"idAttr\", void 0), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"Component\", void 0), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"isMounted\", (0, vue_1.ref)(!1)), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"isReady\", (0, vue_1.ref)(!1)), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"isOpened\", (0, vue_1.ref)(!1)), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"pageActive\", (0, vue_1.ref)(\"\")), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"isLoadingPage\", (0, vue_1.ref)(!1)), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"pageActiveNext\", (0, vue_1.ref)(\"\")), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"props\", void 0), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"emit\", void 0), (0, forms_CbUt_6Ff_esm_js_1.K)(this, \"onCloseOnce\", void 0), this.id = t.id, this.idAttr = \"dialog_\" + t.id, this.Component = (0, vue_1.markRaw)(t);\n }\n onMounted(e, t) {\n this.isMounted.value = !0, this.props = e.props, this.emit = t.emit;\n }\n async open(e = \"main\", t, n = [], r, i) {\n t && await this.setProps(t), r && (this.onCloseOnce = r), await (await A.getDialogsUtils()).toView(this.idAttr, e, n, i);\n }\n async openAsLink(e = \"main\", t, n = [], r, i) {\n t && await this.setProps(t), r && (this.onCloseOnce = r);\n let a = this.idAttr + \"-\" + e;\n (0, route_js_1.historySetState)(!1, A.genViewPageHash(a, i));\n }\n async close() {\n A.close(this.idAttr);\n }\n async destroy() {\n A.destroy(this.idAttr);\n }\n async setProps(e = {}) {\n this.isMounted || await (0, system_js_1.waitWhile)(() => !this.props);\n for (let t in this.props)\n this.props[t] = e[t];\n }\n needShowPage(e) {\n return this.isOpened.value ? this.pageActive.value === e || this.pageActiveNext.value === e : !1;\n }\n }, M = {\n class: \"top-dialogs\",\n style: { display: \"none\" }\n }, N = (0, vue_1.shallowReactive)(/* @__PURE__ */ new Map()), P = (e) => (e = e.replace(/^dialog_/, \"\"), N.get(e)), F = (e) => {\n if (!e?.id)\n throw console.log({ TopDialogComponent: e }), Error(\"Expected TopDialogComponent\");\n return N.has(e.id) || N.set(e.id, new j(e)), N.get(e.id);\n }, I = /* @__PURE__ */ (0, vue_1.defineComponent)({\n name: \"DialogWrapper\",\n __name: \"dialogs\",\n setup(e) {\n return (0, vue_1.onUnmounted)(() => {\n N.forEach((e) => e.destroy()), N.clear();\n }), (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", M, [((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)((0, vue_1.unref)(N), ([e, t]) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)((0, vue_1.resolveDynamicComponent)(t.Component), { key: e }))), 128))]));\n }\n });\n exports.r = P;\n exports.n = F;\n exports.t = I;\n});\n//# sourceMappingURL=dialogs-CMrERMI7.esm.js.map\n","<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","import { genHash, getHash, historySetState } from '@/core/utils/route';\nimport type { ElTopDialog, ElTopDialogOpener, ElTopDialogPage, MoveDirection, TopDialogOptions } from './types';\nimport { isVisible, querySelectorAllArray } from '@/core/utils/dom';\nimport type { $el } from '@/components/types';\n\nexport abstract class TopDialogWorker {\n\tstatic state = {\n\t\tload: undefined as TopDialogOptions['load'] | undefined,\n\t\tdecoratorOnCreate: undefined as TopDialogOptions['decoratorOnCreate'] | undefined,\n\n\t\t/**\n\t\t * Порядковый номер перехода в диалоговых окнах\n\t\t *\n\t\t * Для расчета анимации Вперед / Назад\n\t\t */\n\t\tviewPageN: 0,\n\t};\n\n\tprivate static inited = false;\n\n\t/**\n\t * Инициировать события слежения за парамтерами url\n\t *\n\t * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу\n\t */\n\tstatic init(options?: TopDialogOptions) {\n\t\tif (this.inited) return;\n\t\tthis.inited = true;\n\n\t\tthis.state.load = options?.load;\n\t\tthis.state.decoratorOnCreate = options?.decoratorOnCreate;\n\n\t\tconst autoInitDelay = options?.autoInitDelay ?? 5000;\n\n\t\twindow.addEventListener('hashchange', (e) => {\n\t\t\tthis.opendDialogsFromChangeUrl(e.oldURL, e.newURL);\n\t\t});\n\n\t\tthis.opendDialogsFromChangeUrl('', location.href);\n\n\t\t/**\n\t\t * Сгенерировать ссылку для перехода к странице диалогового окна\n\t\t */\n\t\tdocument.addEventListener('mousedown', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener<HTMLAnchorElement>>('a[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// const toView = el.dataset.toView;\n\t\t\t// const viewName = toView.split('-')[0];\n\t\t\t// const $toDialog = $('#' + viewName);\n\t\t\t// const $modalLayers = $('> .modal-layer', $toDialog);\n\t\t\t// const $currentPage = $('> .active', $modalLayers);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\t// /**\n\t\t\t// * Данный алгоритм определения направления работает не корректно, так как для чтения свойства order менят состояние через getDialogsUtils()\n\t\t\t// */\n\t\t\t// if ($currentPage.length) {\n\t\t\t// \tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t//\n\t\t\t// \tconst TopDialogUtils = await this.getDialogsUtils();\n\t\t\t//\n\t\t\t// \tawait TopDialogUtils.updatePageVue(viewName, undefined, pageName);\n\t\t\t//\n\t\t\t// \tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\n\t\t\t// \tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\n\t\t\t// }\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tel.href = TopDialogWorker.genViewPageHash(el.dataset.toView, moveDirection);\n\t\t});\n\n\t\t/**\n\t\t * Осуществить переход по ссылке с учетом historyType\n\t\t */\n\t\tdocument.addEventListener('click', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener>('[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// Подождать генерацию ссылки\n\t\t\tif (el instanceof HTMLAnchorElement && el.href === '.') {\n\t\t\t\te.preventDefault();\n\n\t\t\t\tconst mouseEvent = new MouseEvent('mousedown', {\n\t\t\t\t\tbubbles: true,\n\t\t\t\t\tcancelable: true,\n\t\t\t\t\tview: window,\n\t\t\t\t});\n\n\t\t\t\tel.dispatchEvent(mouseEvent);\n\n\t\t\t\tsetTimeout(() => el.click());\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\tconst toView = el.dataset.toView;\n\t\t\tconst viewName = toView.split('-')[0];\n\n\t\t\tconst elDialog = TopDialogUtils.getElDialogById(viewName);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\tif (elDialog) {\n\t\t\t\tconst elModalLayers = querySelectorAllArray(elDialog, '.modal-layer');\n\t\t\t\tconst elCurrentPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\tconst elCurrentPage = el.querySelector<ElTopDialogPage>(':scope > .active');\n\n\t\t\t\t\tif (elCurrentPage) acc.push(elCurrentPage);\n\n\t\t\t\t\treturn acc;\n\t\t\t\t}, []);\n\n\t\t\t\tif (elCurrentPages.length) {\n\t\t\t\t\tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t\t\tconst elNextPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\t\tconst elNextPage = el?.querySelector<ElTopDialogPage>(`:scope > [data-view-page=\"${pageName}\"]`);\n\n\t\t\t\t\t\tif (elNextPage) acc.push(elNextPage);\n\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t}, []);\n\n\t\t\t\t\tif ((elNextPages[0]?.dataset.order ?? 0) < (elCurrentPages[0]?.dataset.order ?? 0)) moveDirection = 'prev';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, moveDirection);\n\n\t\t\tif (el instanceof HTMLAnchorElement) {\n\t\t\t\t// диалоговое окно еще не открыто, произвести переход по ссылке\n\t\t\t\tif (!elDialog || !isVisible(elDialog)) return;\n\n\t\t\t\t// в адресе уже указана эта страница, необходимо явно запросить ее открытие\n\t\t\t\tif (location.hash.indexOf(toView.replace('-', '=')) !== -1) {\n\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst replaceHistory = !!elDialog?.dataset.toViewReplace;\n\n\t\t\tif (replaceHistory) {\n\t\t\t\te.preventDefault();\n\n\t\t\t\thistorySetState(true, hash);\n\n\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\tif (moveDirection == 'next') {\n\t\t\t\t\tTopDialogWorker.state.viewPageN++;\n\t\t\t\t} else {\n\t\t\t\t\tTopDialogWorker.state.viewPageN--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (el.tagName !== 'A') {\n\t\t\t\t\tif (this.compareStates(hash, location.hash)) {\n\t\t\t\t\t\thistorySetState(false, hash);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetTimeout(() => this.getDialogsUtils(), autoInitDelay);\n\t}\n\n\tprivate static opendDialogsFromChangeUrl(oldUrl: string, newUrl: string) {\n\t\tconst oldHash = oldUrl.replace(/.*?#/, '#');\n\t\tconst newHash = newUrl.replace(/.*?#/, '#');\n\n\t\tconst dialogsStateChanged = this.compareStates(oldHash, newHash);\n\t\tif (dialogsStateChanged) void this.opendDialogsFromUrl();\n\t}\n\n\tstatic async getDialogsUtils() {\n\t\tconst { TopDialogUtils } = await import('./utils');\n\n\t\treturn TopDialogUtils;\n\t}\n\n\tstatic getDialog(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialog>('.ui-dialog-content');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getDialog()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$dialog($el: $el) {\n\t\treturn $el.closest('.ui-dialog-content');\n\t};\n\n\tstatic getPage(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialogPage>('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$page($el: $el) {\n\t\treturn $el.closest('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPairPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$pairPage($el: $el) {\n\t\tconst $dialog = TopDialogWorker.get$dialog($el);\n\n\t\tconst $page = TopDialogWorker.get$page($el);\n\t\tconst pageName = $page.data('view-page');\n\n\t\treturn $('[data-view-page=\"' + pageName + '\"]', $dialog);\n\t};\n\n\tstatic getPairPage(el: HTMLElement) {\n\t\tconst elDialog = TopDialogWorker.getDialog(el);\n\t\tif (!elDialog) return;\n\n\t\tconst elPage = TopDialogWorker.getPage(el);\n\t\tconst pageName = elPage?.dataset.viewPage;\n\n\t\treturn querySelectorAllArray(elDialog, `[data-view-page=\"${pageName}\"]`);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t */\n\tstatic close(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tstatic destroy(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\t\t\t$dialog.dialog('destroy');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Сгенерировать ссылку на страницу в диалоговом окне\n\t * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}\n\t * @param moveDirection\n\t */\n\tstatic genViewPageHash(toView: string, moveDirection: MoveDirection = 'next') {\n\t\tlet toViewPageN = this.state.viewPageN;\n\t\tif (moveDirection == 'prev') {\n\t\t\ttoViewPageN--;\n\t\t} else {\n\t\t\ttoViewPageN++;\n\t\t}\n\n\t\tconst viewNameAndPageLink = toView.split('-');\n\t\tconst viewName = viewNameAndPageLink.shift();\n\t\tconst pageLink = viewNameAndPageLink.join('-');\n\n\t\tlet hash = genHash('vpn', toViewPageN);\n\t\thash = genHash('view-' + viewName, pageLink, hash);\n\n\t\treturn hash;\n\t};\n\n\t/**\n\t * Сравнить версию открытых диалоговых окон\n\t * @returns вернет true, если состояния открытых окон изменилось\n\t */\n\tstatic compareStates(hash: string, hash2: string) {\n\t\tconst mathes = hash.match(/[#&]view-[^&]+/g) || [];\n\t\tconst mathes2 = hash2.match(/[#&]view-[^&]+/g) || [];\n\n\t\tif (mathes.length !== mathes2.length) return true;\n\n\t\tconst mathesChanged = mathes.filter((math, n) => {\n\t\t\tconst math2 = mathes2[n] || '';\n\n\t\t\treturn math !== math2;\n\t\t});\n\n\t\tif (mathesChanged.length) return true;\n\n\t\treturn false;\n\t};\n\n\tstatic opendDialogsFromUrl = async () => {\n\t\tconst toViewPageN = Number(getHash('vpn')) || 0;\n\n\t\t// Открыть диалоговое окно\n\t\tlet view: RegExpExecArray | null;\n\t\t// const regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)' + '(' + Math.random() + ')?', 'g'); // fix babel minify regexp\n\t\tconst regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)', 'g');\n\n\t\t// TODO: Цикл делает только одну операцию и выходит (возможно, оставлен специально с какой-то целью, если нет - заменить на if)\n\t\twhile (view = regexp.exec(location.hash)) {\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\t\t\tif (toViewPageN < this.state.viewPageN) moveDirection = 'prev';\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\treturn TopDialogUtils.toViewDirty(view[1], moveDirection);\n\t\t}\n\n\t\t// Закрыть ненужные view\n\t\tconst elDialogs = querySelectorAllArray(document, '.ui-dialog-content[data-view-page-active]') as HTMLDialogElement[];\n\t\telDialogs.filter((elDialog) => {\n\t\t\treturn isVisible(elDialog);\n\t\t}).forEach((elDialog) => {\n\t\t\tconst viewName = elDialog.getAttribute('id');\n\t\t\tif (!viewName) throw 'Диалоговое окно не содержит id';\n\t\t\tconst pageName = getHash('view-' + viewName);\n\t\t\tif (!pageName) {\n\t\t\t\tconst $dialog = $(elDialog);\n\n\t\t\t\t$dialog.dialog('close');\n\t\t\t}\n\t\t});\n\n\t\tthis.state.viewPageN = toViewPageN;\n\n\t\treturn true;\n\t};\n}\n","import { type ComponentInstance, type ComponentInternalInstance, markRaw, ref } from 'vue';\nimport { waitWhile } from '@/core/utils/system';\nimport TopDialog from '../dialog.vue';\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\nimport type { MoveDirection } from '@/components/dialog/lib/types';\nimport type { TopDialogComponent } from './types';\nimport { historySetState } from '@/core/utils/route';\n\n/**\n * Объект для работы с диалоговым окном\n *\n * Каждое окно уникально и может быть открыто одновременно только один раз\n *\n * Можно определить много окон, после чего с ними можно вести работу в любой части приложения\n */\nexport class TopDialogHandle<T extends TopDialogComponent> {\n\n\t/**\n\t * Индентификатор, определяется на уровне компонента TopDialogComponent\n\t *\n\t * Может использоваться в навигации для открытия нужных окон с нужными настройками\n\t */\n\tid: string;\n\n\t/**\n\t * ID, используемый в верстке диалогового окна\n\t */\n\tidAttr: string;\n\n\t/**\n\t * Пользовательский компонент диалогового окна\n\t */\n\tComponent: T;\n\n\t/**\n\t * Компонент инициирован\n\t *\n\t * Устанавливается после первого вызова useTopDialog()\n\t */\n\tisMounted = ref(false);\n\n\t/**\n\t * Компонент готов к использованию\n\t *\n\t * Используется для внутренних преобразований после отрисовки\n\t */\n\tisReady = ref(false);\n\n\t/**\n\t * Диалоговое окно открыто\n\t */\n\tisOpened = ref(false);\n\n\t/**\n\t * Имя активной страницы дилогового окна\n\t */\n\tpageActive = ref('');\n\n\t/**\n\t * Диалоговое окно находится в состоянии загрузки своей страницы\n\t */\n\tisLoadingPage = ref(false);\n\n\t/**\n\t * Следующая активная страница\n\t *\n\t * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию\n\t */\n\tpageActiveNext = ref('');\n\n\t/**\n\t * props компонента, доступны после инициализации\n\t */\n\tprops?: ComponentInstance<T>['$props'];\n\n\t/**\n\t * emit базового компонента `TopDialog`\n\t */\n\temit?: ComponentInstance<typeof TopDialog>['$emit'];\n\n\t/**\n\t * Одноразовое событие на закрытие диалогового окна\n\t *\n\t * Используется для привязки окна к сценариям использования\n\t */\n\tonCloseOnce?: (props: typeof this.props, pageName: string) => void;\n\n\tconstructor(TopDialogComponent: T) {\n\t\tthis.id = TopDialogComponent.id!;\n\t\tthis.idAttr = 'dialog_' + TopDialogComponent.id;\n\t\tthis.Component = markRaw(TopDialogComponent);\n\t}\n\n\t/**\n\t * Событие - компонент инициирован\n\t */\n\tonMounted(topDialogComponent: ComponentInternalInstance, topDialogBaseComponent: ComponentInternalInstance) {\n\t\tthis.isMounted.value = true;\n\t\tthis.props = topDialogComponent.props;\n\t\tthis.emit = topDialogBaseComponent.emit;\n\t}\n\n\t/**\n\t * Открыть диалоговое окно\n\t *\n\t * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента\n\t */\n\tasync open(pageName: string = 'main', props?: {}, args: [] = [], onCloseOnce?: typeof this.onCloseOnce, moveDirection?: MoveDirection) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst TopDialogUtils = await TopDialogWorker.getDialogsUtils();\n\n\t\tawait TopDialogUtils.toView(this.idAttr, pageName, args, moveDirection);\n\t};\n\n\t/**\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\n\t *\n\t * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader\n\t */\n\tasync openAsLink(\n\t\tpageName: string = 'main',\n\t\tprops?: {},\n\t\t_args: string[] = [],\n\t\tonCloseOnce?: typeof this.onCloseOnce,\n\t\tmoveDirection?: MoveDirection,\n\t) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst viewName = this.idAttr + '-' + pageName;\n\n\t\tconst hash = TopDialogWorker.genViewPageHash(viewName, moveDirection);\n\t\thistorySetState(false, hash);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t *\n\t * Не меняет состояние компонента диалогового окна\n\t */\n\tasync close() {\n\t\tTopDialogWorker.close(this.idAttr);\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tasync destroy() {\n\t\tTopDialogWorker.destroy(this.idAttr);\n\t}\n\n\t/**\n\t * Устанвоить props\n\t *\n\t * Полностью сбрасывается состояние props\n\t */\n\tasync setProps(props: ComponentInstance<T>['$props'] = {}) {\n\t\t// ожидание инициализации компонента\n\t\tif (!this.isMounted) {\n\t\t\tawait waitWhile(() => !this.props);\n\t\t}\n\n\t\tfor (const name in this.props) {\n\t\t\tthis.props[name] = props[name];\n\t\t}\n\t}\n\n\t/**\n\t * Проверить, есть ли необходимость отрисовки страницы диалогового окна\n\t */\n\tneedShowPage(pageName: string): boolean {\n\t\tif (!this.isOpened.value) return false;\n\n\t\treturn this.pageActive.value === pageName || this.pageActiveNext.value === pageName;\n\t}\n\n}\n","<script lang=\"ts\">\nimport { shallowReactive } from 'vue';\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\n\n/**\n * Словарь всех используемых диалоговых окон\n *\n * В других компонентах не использовать\n */\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\n\n/**\n * Получить компонент диалогового окна по id\n */\nexport const getDialogWorker = (id: string) => {\n\tid = id.replace(/^dialog_/, '');\n\n\treturn dialogsWorkers.get(id);\n};\n\n/**\n * Добавить компонент диалогового окна для использования\n */\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\n\tif (!TopDialogComponent?.id) {\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\n\n\t\tthrow new Error('Expected TopDialogComponent');\n\t}\n\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\n\t}\n\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\n};\n</script>\n\n<script setup lang=\"ts\">\nimport { onUnmounted } from 'vue';\n\ndefineOptions({\n\tname: 'DialogWrapper',\n});\n\nonUnmounted(() => {\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\n\tdialogsWorkers.clear();\n});\n</script>\n\n<template>\n\t<div class=\"top-dialogs\" style=\"display: none;\">\n\t\t<component\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\n\t\t\t:is=\"dialog.Component\"\n\t\t\t:key=\"dialogId\"\n\t\t/>\n\t</div>\n</template>\n"]}
|
|
1
|
+
{"version":3,"sources":[".chunks/dialogs-69JOByg2.esm.js","../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/lib/worker.ts","../../src/components/dialog/dialog/composables/dialogHandle.ts","../../src/components/dialog/dialog/dialogs/dialogs.vue"],"names":["k2","k","desc","m","o","v","\"default\"","ownKeys","ar","mod","result","i","vue","exports","D","O","vue_1","P","A","e","r","t","a","s","c","l","u","dom_js_1","d","route_js_1","require","resolve_1","reject_1","forms_3oS4Utyg_esm_js_1","j","system_js_1","M","N","F","I"],"mappings":"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","sourcesContent":["var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || (function () {\n var ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n };\n return function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n };\n})();\ndefine([\"require\", \"exports\", \"./forms-3oS4Utyg.esm.js\", \"../utils/dom.js\", \"../utils/system.js\", \"../utils/route.js\", \"vue\"], function (require, exports, forms_3oS4Utyg_esm_js_1, dom_js_1, system_js_1, route_js_1, vue_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.t = exports.r = exports.n = exports.i = exports.a = void 0;\n //#region src/components/dialog/dialog/dialog.vue?vue&type=script&setup=true&lang.ts\n var D = [\n \"id\",\n \"data-view-page-active\",\n \"data-modal\",\n \"data-position\"\n ], O = /* @__PURE__ */ (0, vue_1.defineComponent)({\n __name: \"dialog\",\n props: {\n id: {},\n pageActive: {},\n width: { default: \"600px\" },\n height: { default: \"auto\" },\n modal: {\n type: Boolean,\n default: !0\n },\n position: {},\n historyType: { default: \"push\" },\n classes: {}\n },\n emits: [\"open\", \"close\"],\n setup(e) {\n let t = P(e.id);\n if (!t)\n throw Error(\"TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()\");\n return (0, vue_1.provide)(\"dialogWorker\", t), (0, vue_1.onMounted)(() => {\n let e = (0, vue_1.getCurrentInstance)(), n = e.parent;\n if (n?.parent?.type.name !== \"DialogWrapper\")\n throw Error(\"TopDialog cannot be used in a template, use useTopDialog()\");\n if (Array.isArray(n.subTree.children) && n.subTree.children.length !== 1)\n throw Error(\"TopDialog can has only one root element\");\n t.onMounted(n, e);\n }), (0, vue_1.watch)(t.isOpened, () => {\n t.isReady.value = !0;\n }, {\n flush: \"post\",\n once: !0\n }), (n, r) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", {\n id: (0, vue_1.unref)(t).idAttr,\n class: (0, vue_1.normalizeClass)([\"top-dialog\", e.classes]),\n style: (0, vue_1.normalizeStyle)({\n \"--top-dialog-width\": e.width,\n \"--top-dialog-height\": e.height\n }),\n tabindex: \"-1\",\n \"data-view-page-active\": (0, vue_1.unref)(t).pageActive.value,\n \"data-modal\": e.modal,\n \"data-position\": e.position\n }, [\n r[0] ||= (0, vue_1.createElementVNode)(\"div\", { class: \"modal-layer modal-layer-header\" }, null, -1),\n (0, vue_1.createElementVNode)(\"div\", {\n class: \"modal-layer modal-layer-body\",\n style: (0, vue_1.normalizeStyle)({ \"min-height\": e.height + \"px\" })\n }, null, 4),\n (0, vue_1.renderSlot)(n.$slots, \"default\")\n ], 14, D));\n }\n }), k, A = class e {\n static init(r) {\n if (this.inited)\n return;\n this.inited = !0, this.state.load = r?.load, this.state.decoratorOnCreate = r?.decoratorOnCreate;\n let i = r?.autoInitDelay ?? 5e3;\n window.addEventListener(\"hashchange\", (e) => {\n this.opendDialogsFromChangeUrl(e.oldURL, e.newURL);\n }), this.opendDialogsFromChangeUrl(\"\", location.href), document.addEventListener(\"mousedown\", async (t) => {\n if (!(t.target instanceof HTMLElement))\n return;\n let n = t.target.closest(\"a[data-to-view]\");\n if (!n)\n return;\n let r = \"next\";\n n.dataset.action === \"top-dialog-close\" && (r = \"prev\"), n.href = e.genViewPageHash(n.dataset.toView, r);\n }), document.addEventListener(\"click\", async (r) => {\n if (!(r.target instanceof HTMLElement))\n return;\n let i = r.target.closest(\"[data-to-view]\");\n if (!i)\n return;\n if (i instanceof HTMLAnchorElement && i.href === \".\") {\n r.preventDefault();\n let e = new MouseEvent(\"mousedown\", {\n bubbles: !0,\n cancelable: !0,\n view: window\n });\n i.dispatchEvent(e), setTimeout(() => i.click());\n return;\n }\n let a = await this.getDialogsUtils(), s = i.dataset.toView, c = s.split(\"-\")[0], l = a.getElDialogById(c), u = \"next\";\n if (l) {\n let e = (0, dom_js_1.querySelectorAllArray)(l, \".modal-layer\"), t = e.reduce((e, t) => {\n let n = t.querySelector(\":scope > .active\");\n return n && e.push(n), e;\n }, []);\n if (t.length) {\n let n = s.split(\"-\")[1].split(\":\")[0];\n (e.reduce((e, t) => {\n let r = t?.querySelector(`:scope > [data-view-page=\"${n}\"]`);\n return r && e.push(r), e;\n }, [])[0]?.dataset.order ?? 0) < (t[0]?.dataset.order ?? 0) && (u = \"prev\");\n }\n }\n i.dataset.action === \"top-dialog-close\" && (u = \"prev\");\n let d = e.genViewPageHash(s, u);\n if (i instanceof HTMLAnchorElement) {\n if (!l || !(0, dom_js_1.isVisible)(l))\n return;\n if (location.hash.indexOf(s.replace(\"-\", \"=\")) !== -1) {\n await a.toViewDirty(s);\n return;\n }\n }\n l?.dataset.toViewReplace ? (r.preventDefault(), (0, route_js_1.historySetState)(!0, d), await a.toViewDirty(s), u == \"next\" ? e.state.viewPageN++ : e.state.viewPageN--) : i.tagName !== \"A\" && (this.compareStates(d, location.hash) ? (0, route_js_1.historySetState)(!1, d) : await a.toViewDirty(s));\n }), setTimeout(() => this.getDialogsUtils(), i);\n }\n static opendDialogsFromChangeUrl(e, t) {\n let n = e.replace(/.*?#/, \"#\"), r = t.replace(/.*?#/, \"#\");\n this.compareStates(n, r) && this.opendDialogsFromUrl();\n }\n static async getDialogsUtils() {\n let { TopDialogUtils: e } = await new Promise((resolve_1, reject_1) => { require([\"./utils-BAP3Hzmk.esm.js\"], resolve_1, reject_1); }).then(__importStar);\n return e;\n }\n static getDialog(e) {\n return e.closest(\".ui-dialog-content\");\n }\n static get$dialog(e) {\n return e.closest(\".ui-dialog-content\");\n }\n static getPage(e) {\n return e.closest(\"[data-view-page]\");\n }\n static get$page(e) {\n return e.closest(\"[data-view-page]\");\n }\n static get$pairPage(t) {\n let n = e.get$dialog(t), r = e.get$page(t).data(\"view-page\");\n return $(\"[data-view-page=\\\"\" + r + \"\\\"]\", n);\n }\n static getPairPage(t) {\n let r = e.getDialog(t);\n if (!r)\n return;\n let i = e.getPage(t)?.dataset.viewPage;\n return (0, dom_js_1.querySelectorAllArray)(r, `[data-view-page=\"${i}\"]`);\n }\n static close(e) {\n let t = $(\"#\" + e);\n if (t.dialog(\"instance\")) {\n t.dialog(\"close\");\n return;\n }\n let n = document.getElementById(e);\n n instanceof HTMLDialogElement && n.close();\n }\n static destroy(e) {\n let t = $(\"#\" + e);\n if (t.dialog(\"instance\")) {\n t.dialog(\"close\"), t.dialog(\"destroy\");\n return;\n }\n let n = document.getElementById(e);\n n instanceof HTMLDialogElement && n.close();\n }\n static genViewPageHash(e, t = \"next\") {\n let n = this.state.viewPageN;\n t == \"prev\" ? n-- : n++;\n let r = e.split(\"-\"), a = r.shift(), o = r.join(\"-\"), s = (0, route_js_1.genHash)(\"vpn\", n);\n return s = (0, route_js_1.genHash)(\"view-\" + a, o, s), s;\n }\n static compareStates(e, t) {\n let n = e.match(/[#&]view-[^&]+/g) || [], r = t.match(/[#&]view-[^&]+/g) || [];\n return !!(n.length !== r.length || n.filter((e, t) => e !== (r[t] || \"\")).length);\n }\n };\n exports.a = O;\n exports.i = A;\n k = A, (0, forms_3oS4Utyg_esm_js_1.K)(A, \"state\", {\n load: void 0,\n decoratorOnCreate: void 0,\n viewPageN: 0\n }), (0, forms_3oS4Utyg_esm_js_1.K)(A, \"inited\", !1), (0, forms_3oS4Utyg_esm_js_1.K)(A, \"opendDialogsFromUrl\", async () => {\n let e = Number((0, route_js_1.getHash)(\"vpn\")) || 0, r, i = /* @__PURE__ */ RegExp(\"view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)\", \"g\");\n for (; r = i.exec(location.hash);) {\n let t = \"next\";\n return e < k.state.viewPageN && (t = \"prev\"), (await k.getDialogsUtils()).toViewDirty(r[1], t);\n }\n return (0, dom_js_1.querySelectorAllArray)(document, \".ui-dialog-content[data-view-page-active]\").filter((e) => (0, dom_js_1.isVisible)(e)).forEach((e) => {\n let t = e.getAttribute(\"id\");\n if (!t)\n throw \"Диалоговое окно не содержит id\";\n (0, route_js_1.getHash)(\"view-\" + t) || $(e).dialog(\"close\");\n }), k.state.viewPageN = e, !0;\n });\n //#endregion\n //#region src/components/dialog/dialog/composables/dialogHandle.ts\n var j = class {\n constructor(t) {\n (0, forms_3oS4Utyg_esm_js_1.K)(this, \"id\", void 0), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"idAttr\", void 0), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"Component\", void 0), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"isMounted\", (0, vue_1.ref)(!1)), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"isReady\", (0, vue_1.ref)(!1)), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"isOpened\", (0, vue_1.ref)(!1)), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"pageActive\", (0, vue_1.ref)(\"\")), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"isLoadingPage\", (0, vue_1.ref)(!1)), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"pageActiveNext\", (0, vue_1.ref)(\"\")), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"props\", void 0), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"emit\", void 0), (0, forms_3oS4Utyg_esm_js_1.K)(this, \"onCloseOnce\", void 0), this.id = t.id, this.idAttr = \"dialog_\" + t.id, this.Component = (0, vue_1.markRaw)(t);\n }\n onMounted(e, t) {\n this.isMounted.value = !0, this.props = e.props, this.emit = t.emit;\n }\n async open(e = \"main\", t, n = [], r, i) {\n t && await this.setProps(t), r && (this.onCloseOnce = r), await (await A.getDialogsUtils()).toView(this.idAttr, e, n, i);\n }\n async openAsLink(e = \"main\", t, n = [], r, i) {\n t && await this.setProps(t), r && (this.onCloseOnce = r);\n let a = this.idAttr + \"-\" + e;\n (0, route_js_1.historySetState)(!1, A.genViewPageHash(a, i));\n }\n async close() {\n A.close(this.idAttr);\n }\n async destroy() {\n A.destroy(this.idAttr);\n }\n async setProps(e = {}) {\n this.isMounted || await (0, system_js_1.waitWhile)(() => !this.props);\n for (let t in this.props)\n this.props[t] = e[t];\n }\n needShowPage(e) {\n return this.isOpened.value ? this.pageActive.value === e || this.pageActiveNext.value === e : !1;\n }\n }, M = {\n class: \"top-dialogs\",\n style: { display: \"none\" }\n }, N = (0, vue_1.shallowReactive)(/* @__PURE__ */ new Map()), P = (e) => (e = e.replace(/^dialog_/, \"\"), N.get(e)), F = (e) => {\n if (!e?.id)\n throw console.log({ TopDialogComponent: e }), Error(\"Expected TopDialogComponent\");\n return N.has(e.id) || N.set(e.id, new j(e)), N.get(e.id);\n }, I = /* @__PURE__ */ (0, vue_1.defineComponent)({\n name: \"DialogWrapper\",\n __name: \"dialogs\",\n setup(e) {\n return (0, vue_1.onUnmounted)(() => {\n N.forEach((e) => e.destroy()), N.clear();\n }), (e, t) => ((0, vue_1.openBlock)(), (0, vue_1.createElementBlock)(\"div\", M, [((0, vue_1.openBlock)(!0), (0, vue_1.createElementBlock)(vue_1.Fragment, null, (0, vue_1.renderList)((0, vue_1.unref)(N), ([e, t]) => ((0, vue_1.openBlock)(), (0, vue_1.createBlock)((0, vue_1.resolveDynamicComponent)(t.Component), { key: e }))), 128))]));\n }\n });\n exports.r = P;\n exports.n = F;\n exports.t = I;\n});\n//# sourceMappingURL=dialogs-69JOByg2.esm.js.map\n","<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","import { genHash, getHash, historySetState } from '@/core/utils/route';\nimport type { ElTopDialog, ElTopDialogOpener, ElTopDialogPage, MoveDirection, TopDialogOptions } from './types';\nimport { isVisible, querySelectorAllArray } from '@/core/utils/dom';\nimport type { $el } from '@/components/types';\n\nexport abstract class TopDialogWorker {\n\tstatic state = {\n\t\tload: undefined as TopDialogOptions['load'] | undefined,\n\t\tdecoratorOnCreate: undefined as TopDialogOptions['decoratorOnCreate'] | undefined,\n\n\t\t/**\n\t\t * Порядковый номер перехода в диалоговых окнах\n\t\t *\n\t\t * Для расчета анимации Вперед / Назад\n\t\t */\n\t\tviewPageN: 0,\n\t};\n\n\tprivate static inited = false;\n\n\t/**\n\t * Инициировать события слежения за парамтерами url\n\t *\n\t * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу\n\t */\n\tstatic init(options?: TopDialogOptions) {\n\t\tif (this.inited) return;\n\t\tthis.inited = true;\n\n\t\tthis.state.load = options?.load;\n\t\tthis.state.decoratorOnCreate = options?.decoratorOnCreate;\n\n\t\tconst autoInitDelay = options?.autoInitDelay ?? 5000;\n\n\t\twindow.addEventListener('hashchange', (e) => {\n\t\t\tthis.opendDialogsFromChangeUrl(e.oldURL, e.newURL);\n\t\t});\n\n\t\tthis.opendDialogsFromChangeUrl('', location.href);\n\n\t\t/**\n\t\t * Сгенерировать ссылку для перехода к странице диалогового окна\n\t\t */\n\t\tdocument.addEventListener('mousedown', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener<HTMLAnchorElement>>('a[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// const toView = el.dataset.toView;\n\t\t\t// const viewName = toView.split('-')[0];\n\t\t\t// const $toDialog = $('#' + viewName);\n\t\t\t// const $modalLayers = $('> .modal-layer', $toDialog);\n\t\t\t// const $currentPage = $('> .active', $modalLayers);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\t// /**\n\t\t\t// * Данный алгоритм определения направления работает не корректно, так как для чтения свойства order менят состояние через getDialogsUtils()\n\t\t\t// */\n\t\t\t// if ($currentPage.length) {\n\t\t\t// \tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t//\n\t\t\t// \tconst TopDialogUtils = await this.getDialogsUtils();\n\t\t\t//\n\t\t\t// \tawait TopDialogUtils.updatePageVue(viewName, undefined, pageName);\n\t\t\t//\n\t\t\t// \tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\n\t\t\t// \tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\n\t\t\t// }\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tel.href = TopDialogWorker.genViewPageHash(el.dataset.toView, moveDirection);\n\t\t});\n\n\t\t/**\n\t\t * Осуществить переход по ссылке с учетом historyType\n\t\t */\n\t\tdocument.addEventListener('click', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener>('[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// Подождать генерацию ссылки\n\t\t\tif (el instanceof HTMLAnchorElement && el.href === '.') {\n\t\t\t\te.preventDefault();\n\n\t\t\t\tconst mouseEvent = new MouseEvent('mousedown', {\n\t\t\t\t\tbubbles: true,\n\t\t\t\t\tcancelable: true,\n\t\t\t\t\tview: window,\n\t\t\t\t});\n\n\t\t\t\tel.dispatchEvent(mouseEvent);\n\n\t\t\t\tsetTimeout(() => el.click());\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\tconst toView = el.dataset.toView;\n\t\t\tconst viewName = toView.split('-')[0];\n\n\t\t\tconst elDialog = TopDialogUtils.getElDialogById(viewName);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\tif (elDialog) {\n\t\t\t\tconst elModalLayers = querySelectorAllArray(elDialog, '.modal-layer');\n\t\t\t\tconst elCurrentPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\tconst elCurrentPage = el.querySelector<ElTopDialogPage>(':scope > .active');\n\n\t\t\t\t\tif (elCurrentPage) acc.push(elCurrentPage);\n\n\t\t\t\t\treturn acc;\n\t\t\t\t}, []);\n\n\t\t\t\tif (elCurrentPages.length) {\n\t\t\t\t\tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t\t\tconst elNextPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\t\tconst elNextPage = el?.querySelector<ElTopDialogPage>(`:scope > [data-view-page=\"${pageName}\"]`);\n\n\t\t\t\t\t\tif (elNextPage) acc.push(elNextPage);\n\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t}, []);\n\n\t\t\t\t\tif ((elNextPages[0]?.dataset.order ?? 0) < (elCurrentPages[0]?.dataset.order ?? 0)) moveDirection = 'prev';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, moveDirection);\n\n\t\t\tif (el instanceof HTMLAnchorElement) {\n\t\t\t\t// диалоговое окно еще не открыто, произвести переход по ссылке\n\t\t\t\tif (!elDialog || !isVisible(elDialog)) return;\n\n\t\t\t\t// в адресе уже указана эта страница, необходимо явно запросить ее открытие\n\t\t\t\tif (location.hash.indexOf(toView.replace('-', '=')) !== -1) {\n\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst replaceHistory = !!elDialog?.dataset.toViewReplace;\n\n\t\t\tif (replaceHistory) {\n\t\t\t\te.preventDefault();\n\n\t\t\t\thistorySetState(true, hash);\n\n\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\tif (moveDirection == 'next') {\n\t\t\t\t\tTopDialogWorker.state.viewPageN++;\n\t\t\t\t} else {\n\t\t\t\t\tTopDialogWorker.state.viewPageN--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (el.tagName !== 'A') {\n\t\t\t\t\tif (this.compareStates(hash, location.hash)) {\n\t\t\t\t\t\thistorySetState(false, hash);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetTimeout(() => this.getDialogsUtils(), autoInitDelay);\n\t}\n\n\tprivate static opendDialogsFromChangeUrl(oldUrl: string, newUrl: string) {\n\t\tconst oldHash = oldUrl.replace(/.*?#/, '#');\n\t\tconst newHash = newUrl.replace(/.*?#/, '#');\n\n\t\tconst dialogsStateChanged = this.compareStates(oldHash, newHash);\n\t\tif (dialogsStateChanged) void this.opendDialogsFromUrl();\n\t}\n\n\tstatic async getDialogsUtils() {\n\t\tconst { TopDialogUtils } = await import('./utils');\n\n\t\treturn TopDialogUtils;\n\t}\n\n\tstatic getDialog(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialog>('.ui-dialog-content');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getDialog()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$dialog($el: $el) {\n\t\treturn $el.closest('.ui-dialog-content');\n\t};\n\n\tstatic getPage(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialogPage>('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$page($el: $el) {\n\t\treturn $el.closest('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPairPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$pairPage($el: $el) {\n\t\tconst $dialog = TopDialogWorker.get$dialog($el);\n\n\t\tconst $page = TopDialogWorker.get$page($el);\n\t\tconst pageName = $page.data('view-page');\n\n\t\treturn $('[data-view-page=\"' + pageName + '\"]', $dialog);\n\t};\n\n\tstatic getPairPage(el: HTMLElement) {\n\t\tconst elDialog = TopDialogWorker.getDialog(el);\n\t\tif (!elDialog) return;\n\n\t\tconst elPage = TopDialogWorker.getPage(el);\n\t\tconst pageName = elPage?.dataset.viewPage;\n\n\t\treturn querySelectorAllArray(elDialog, `[data-view-page=\"${pageName}\"]`);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t */\n\tstatic close(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tstatic destroy(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\t\t\t$dialog.dialog('destroy');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Сгенерировать ссылку на страницу в диалоговом окне\n\t * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}\n\t * @param moveDirection\n\t */\n\tstatic genViewPageHash(toView: string, moveDirection: MoveDirection = 'next') {\n\t\tlet toViewPageN = this.state.viewPageN;\n\t\tif (moveDirection == 'prev') {\n\t\t\ttoViewPageN--;\n\t\t} else {\n\t\t\ttoViewPageN++;\n\t\t}\n\n\t\tconst viewNameAndPageLink = toView.split('-');\n\t\tconst viewName = viewNameAndPageLink.shift();\n\t\tconst pageLink = viewNameAndPageLink.join('-');\n\n\t\tlet hash = genHash('vpn', toViewPageN);\n\t\thash = genHash('view-' + viewName, pageLink, hash);\n\n\t\treturn hash;\n\t};\n\n\t/**\n\t * Сравнить версию открытых диалоговых окон\n\t * @returns вернет true, если состояния открытых окон изменилось\n\t */\n\tstatic compareStates(hash: string, hash2: string) {\n\t\tconst mathes = hash.match(/[#&]view-[^&]+/g) || [];\n\t\tconst mathes2 = hash2.match(/[#&]view-[^&]+/g) || [];\n\n\t\tif (mathes.length !== mathes2.length) return true;\n\n\t\tconst mathesChanged = mathes.filter((math, n) => {\n\t\t\tconst math2 = mathes2[n] || '';\n\n\t\t\treturn math !== math2;\n\t\t});\n\n\t\tif (mathesChanged.length) return true;\n\n\t\treturn false;\n\t};\n\n\tstatic opendDialogsFromUrl = async () => {\n\t\tconst toViewPageN = Number(getHash('vpn')) || 0;\n\n\t\t// Открыть диалоговое окно\n\t\tlet view: RegExpExecArray | null;\n\t\t// const regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)' + '(' + Math.random() + ')?', 'g'); // fix babel minify regexp\n\t\tconst regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)', 'g');\n\n\t\t// TODO: Цикл делает только одну операцию и выходит (возможно, оставлен специально с какой-то целью, если нет - заменить на if)\n\t\twhile (view = regexp.exec(location.hash)) {\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\t\t\tif (toViewPageN < this.state.viewPageN) moveDirection = 'prev';\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\treturn TopDialogUtils.toViewDirty(view[1], moveDirection);\n\t\t}\n\n\t\t// Закрыть ненужные view\n\t\tconst elDialogs = querySelectorAllArray(document, '.ui-dialog-content[data-view-page-active]') as HTMLDialogElement[];\n\t\telDialogs.filter((elDialog) => {\n\t\t\treturn isVisible(elDialog);\n\t\t}).forEach((elDialog) => {\n\t\t\tconst viewName = elDialog.getAttribute('id');\n\t\t\tif (!viewName) throw 'Диалоговое окно не содержит id';\n\t\t\tconst pageName = getHash('view-' + viewName);\n\t\t\tif (!pageName) {\n\t\t\t\tconst $dialog = $(elDialog);\n\n\t\t\t\t$dialog.dialog('close');\n\t\t\t}\n\t\t});\n\n\t\tthis.state.viewPageN = toViewPageN;\n\n\t\treturn true;\n\t};\n}\n","import { type ComponentInstance, type ComponentInternalInstance, markRaw, ref } from 'vue';\nimport { waitWhile } from '@/core/utils/system';\nimport TopDialog from '../dialog.vue';\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\nimport type { MoveDirection } from '@/components/dialog/lib/types';\nimport type { TopDialogComponent } from './types';\nimport { historySetState } from '@/core/utils/route';\n\n/**\n * Объект для работы с диалоговым окном\n *\n * Каждое окно уникально и может быть открыто одновременно только один раз\n *\n * Можно определить много окон, после чего с ними можно вести работу в любой части приложения\n */\nexport class TopDialogHandle<T extends TopDialogComponent> {\n\n\t/**\n\t * Индентификатор, определяется на уровне компонента TopDialogComponent\n\t *\n\t * Может использоваться в навигации для открытия нужных окон с нужными настройками\n\t */\n\tid: string;\n\n\t/**\n\t * ID, используемый в верстке диалогового окна\n\t */\n\tidAttr: string;\n\n\t/**\n\t * Пользовательский компонент диалогового окна\n\t */\n\tComponent: T;\n\n\t/**\n\t * Компонент инициирован\n\t *\n\t * Устанавливается после первого вызова useTopDialog()\n\t */\n\tisMounted = ref(false);\n\n\t/**\n\t * Компонент готов к использованию\n\t *\n\t * Используется для внутренних преобразований после отрисовки\n\t */\n\tisReady = ref(false);\n\n\t/**\n\t * Диалоговое окно открыто\n\t */\n\tisOpened = ref(false);\n\n\t/**\n\t * Имя активной страницы дилогового окна\n\t */\n\tpageActive = ref('');\n\n\t/**\n\t * Диалоговое окно находится в состоянии загрузки своей страницы\n\t */\n\tisLoadingPage = ref(false);\n\n\t/**\n\t * Следующая активная страница\n\t *\n\t * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию\n\t */\n\tpageActiveNext = ref('');\n\n\t/**\n\t * props компонента, доступны после инициализации\n\t */\n\tprops?: ComponentInstance<T>['$props'];\n\n\t/**\n\t * emit базового компонента `TopDialog`\n\t */\n\temit?: ComponentInstance<typeof TopDialog>['$emit'];\n\n\t/**\n\t * Одноразовое событие на закрытие диалогового окна\n\t *\n\t * Используется для привязки окна к сценариям использования\n\t */\n\tonCloseOnce?: (props: typeof this.props, pageName: string) => void;\n\n\tconstructor(TopDialogComponent: T) {\n\t\tthis.id = TopDialogComponent.id!;\n\t\tthis.idAttr = 'dialog_' + TopDialogComponent.id;\n\t\tthis.Component = markRaw(TopDialogComponent);\n\t}\n\n\t/**\n\t * Событие - компонент инициирован\n\t */\n\tonMounted(topDialogComponent: ComponentInternalInstance, topDialogBaseComponent: ComponentInternalInstance) {\n\t\tthis.isMounted.value = true;\n\t\tthis.props = topDialogComponent.props;\n\t\tthis.emit = topDialogBaseComponent.emit;\n\t}\n\n\t/**\n\t * Открыть диалоговое окно\n\t *\n\t * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента\n\t */\n\tasync open(pageName: string = 'main', props?: {}, args: [] = [], onCloseOnce?: typeof this.onCloseOnce, moveDirection?: MoveDirection) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst TopDialogUtils = await TopDialogWorker.getDialogsUtils();\n\n\t\tawait TopDialogUtils.toView(this.idAttr, pageName, args, moveDirection);\n\t};\n\n\t/**\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\n\t *\n\t * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader\n\t */\n\tasync openAsLink(\n\t\tpageName: string = 'main',\n\t\tprops?: {},\n\t\t_args: string[] = [],\n\t\tonCloseOnce?: typeof this.onCloseOnce,\n\t\tmoveDirection?: MoveDirection,\n\t) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst viewName = this.idAttr + '-' + pageName;\n\n\t\tconst hash = TopDialogWorker.genViewPageHash(viewName, moveDirection);\n\t\thistorySetState(false, hash);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t *\n\t * Не меняет состояние компонента диалогового окна\n\t */\n\tasync close() {\n\t\tTopDialogWorker.close(this.idAttr);\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tasync destroy() {\n\t\tTopDialogWorker.destroy(this.idAttr);\n\t}\n\n\t/**\n\t * Устанвоить props\n\t *\n\t * Полностью сбрасывается состояние props\n\t */\n\tasync setProps(props: ComponentInstance<T>['$props'] = {}) {\n\t\t// ожидание инициализации компонента\n\t\tif (!this.isMounted) {\n\t\t\tawait waitWhile(() => !this.props);\n\t\t}\n\n\t\tfor (const name in this.props) {\n\t\t\tthis.props[name] = props[name];\n\t\t}\n\t}\n\n\t/**\n\t * Проверить, есть ли необходимость отрисовки страницы диалогового окна\n\t */\n\tneedShowPage(pageName: string): boolean {\n\t\tif (!this.isOpened.value) return false;\n\n\t\treturn this.pageActive.value === pageName || this.pageActiveNext.value === pageName;\n\t}\n\n}\n","<script lang=\"ts\">\nimport { shallowReactive } from 'vue';\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\n\n/**\n * Словарь всех используемых диалоговых окон\n *\n * В других компонентах не использовать\n */\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\n\n/**\n * Получить компонент диалогового окна по id\n */\nexport const getDialogWorker = (id: string) => {\n\tid = id.replace(/^dialog_/, '');\n\n\treturn dialogsWorkers.get(id);\n};\n\n/**\n * Добавить компонент диалогового окна для использования\n */\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\n\tif (!TopDialogComponent?.id) {\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\n\n\t\tthrow new Error('Expected TopDialogComponent');\n\t}\n\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\n\t}\n\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\n};\n</script>\n\n<script setup lang=\"ts\">\nimport { onUnmounted } from 'vue';\n\ndefineOptions({\n\tname: 'DialogWrapper',\n});\n\nonUnmounted(() => {\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\n\tdialogsWorkers.clear();\n});\n</script>\n\n<template>\n\t<div class=\"top-dialogs\" style=\"display: none;\">\n\t\t<component\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\n\t\t\t:is=\"dialog.Component\"\n\t\t\t:key=\"dialogId\"\n\t\t/>\n\t</div>\n</template>\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { K as e } from "./forms-
|
|
1
|
+
import { K as e } from "./forms-3oS4Utyg.esm.js";
|
|
2
2
|
import { isVisible as t, querySelectorAllArray as n } from "../utils/dom.js";
|
|
3
3
|
import { waitWhile as r } from "../utils/system.js";
|
|
4
4
|
import { genHash as i, getHash as a, historySetState as o } from "../utils/route.js";
|
|
@@ -116,7 +116,7 @@ var D = [
|
|
|
116
116
|
this.compareStates(n, r) && this.opendDialogsFromUrl();
|
|
117
117
|
}
|
|
118
118
|
static async getDialogsUtils() {
|
|
119
|
-
let { TopDialogUtils: e } = await import("./utils-
|
|
119
|
+
let { TopDialogUtils: e } = await import("./utils-BAP3Hzmk.esm.js");
|
|
120
120
|
return e;
|
|
121
121
|
}
|
|
122
122
|
static getDialog(e) {
|
|
@@ -234,4 +234,4 @@ var j = class {
|
|
|
234
234
|
//#endregion
|
|
235
235
|
export { O as a, A as i, F as n, P as r, I as t };
|
|
236
236
|
|
|
237
|
-
//# sourceMappingURL=dialogs-
|
|
237
|
+
//# sourceMappingURL=dialogs-69JOByg2.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialogs-CMrERMI7.esm.js","names":[],"sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/lib/worker.ts","../../src/components/dialog/dialog/composables/dialogHandle.ts","../../src/components/dialog/dialog/dialogs/dialogs.vue","../../src/components/dialog/dialog/dialogs/dialogs.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","import { genHash, getHash, historySetState } from '@/core/utils/route';\nimport type { ElTopDialog, ElTopDialogOpener, ElTopDialogPage, MoveDirection, TopDialogOptions } from './types';\nimport { isVisible, querySelectorAllArray } from '@/core/utils/dom';\nimport type { $el } from '@/components/types';\n\nexport abstract class TopDialogWorker {\n\tstatic state = {\n\t\tload: undefined as TopDialogOptions['load'] | undefined,\n\t\tdecoratorOnCreate: undefined as TopDialogOptions['decoratorOnCreate'] | undefined,\n\n\t\t/**\n\t\t * Порядковый номер перехода в диалоговых окнах\n\t\t *\n\t\t * Для расчета анимации Вперед / Назад\n\t\t */\n\t\tviewPageN: 0,\n\t};\n\n\tprivate static inited = false;\n\n\t/**\n\t * Инициировать события слежения за парамтерами url\n\t *\n\t * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу\n\t */\n\tstatic init(options?: TopDialogOptions) {\n\t\tif (this.inited) return;\n\t\tthis.inited = true;\n\n\t\tthis.state.load = options?.load;\n\t\tthis.state.decoratorOnCreate = options?.decoratorOnCreate;\n\n\t\tconst autoInitDelay = options?.autoInitDelay ?? 5000;\n\n\t\twindow.addEventListener('hashchange', (e) => {\n\t\t\tthis.opendDialogsFromChangeUrl(e.oldURL, e.newURL);\n\t\t});\n\n\t\tthis.opendDialogsFromChangeUrl('', location.href);\n\n\t\t/**\n\t\t * Сгенерировать ссылку для перехода к странице диалогового окна\n\t\t */\n\t\tdocument.addEventListener('mousedown', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener<HTMLAnchorElement>>('a[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// const toView = el.dataset.toView;\n\t\t\t// const viewName = toView.split('-')[0];\n\t\t\t// const $toDialog = $('#' + viewName);\n\t\t\t// const $modalLayers = $('> .modal-layer', $toDialog);\n\t\t\t// const $currentPage = $('> .active', $modalLayers);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\t// /**\n\t\t\t// * Данный алгоритм определения направления работает не корректно, так как для чтения свойства order менят состояние через getDialogsUtils()\n\t\t\t// */\n\t\t\t// if ($currentPage.length) {\n\t\t\t// \tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t//\n\t\t\t// \tconst TopDialogUtils = await this.getDialogsUtils();\n\t\t\t//\n\t\t\t// \tawait TopDialogUtils.updatePageVue(viewName, undefined, pageName);\n\t\t\t//\n\t\t\t// \tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\n\t\t\t// \tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\n\t\t\t// }\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tel.href = TopDialogWorker.genViewPageHash(el.dataset.toView, moveDirection);\n\t\t});\n\n\t\t/**\n\t\t * Осуществить переход по ссылке с учетом historyType\n\t\t */\n\t\tdocument.addEventListener('click', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener>('[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// Подождать генерацию ссылки\n\t\t\tif (el instanceof HTMLAnchorElement && el.href === '.') {\n\t\t\t\te.preventDefault();\n\n\t\t\t\tconst mouseEvent = new MouseEvent('mousedown', {\n\t\t\t\t\tbubbles: true,\n\t\t\t\t\tcancelable: true,\n\t\t\t\t\tview: window,\n\t\t\t\t});\n\n\t\t\t\tel.dispatchEvent(mouseEvent);\n\n\t\t\t\tsetTimeout(() => el.click());\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\tconst toView = el.dataset.toView;\n\t\t\tconst viewName = toView.split('-')[0];\n\n\t\t\tconst elDialog = TopDialogUtils.getElDialogById(viewName);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\tif (elDialog) {\n\t\t\t\tconst elModalLayers = querySelectorAllArray(elDialog, '.modal-layer');\n\t\t\t\tconst elCurrentPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\tconst elCurrentPage = el.querySelector<ElTopDialogPage>(':scope > .active');\n\n\t\t\t\t\tif (elCurrentPage) acc.push(elCurrentPage);\n\n\t\t\t\t\treturn acc;\n\t\t\t\t}, []);\n\n\t\t\t\tif (elCurrentPages.length) {\n\t\t\t\t\tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t\t\tconst elNextPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\t\tconst elNextPage = el?.querySelector<ElTopDialogPage>(`:scope > [data-view-page=\"${pageName}\"]`);\n\n\t\t\t\t\t\tif (elNextPage) acc.push(elNextPage);\n\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t}, []);\n\n\t\t\t\t\tif ((elNextPages[0]?.dataset.order ?? 0) < (elCurrentPages[0]?.dataset.order ?? 0)) moveDirection = 'prev';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, moveDirection);\n\n\t\t\tif (el instanceof HTMLAnchorElement) {\n\t\t\t\t// диалоговое окно еще не открыто, произвести переход по ссылке\n\t\t\t\tif (!elDialog || !isVisible(elDialog)) return;\n\n\t\t\t\t// в адресе уже указана эта страница, необходимо явно запросить ее открытие\n\t\t\t\tif (location.hash.indexOf(toView.replace('-', '=')) !== -1) {\n\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst replaceHistory = !!elDialog?.dataset.toViewReplace;\n\n\t\t\tif (replaceHistory) {\n\t\t\t\te.preventDefault();\n\n\t\t\t\thistorySetState(true, hash);\n\n\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\tif (moveDirection == 'next') {\n\t\t\t\t\tTopDialogWorker.state.viewPageN++;\n\t\t\t\t} else {\n\t\t\t\t\tTopDialogWorker.state.viewPageN--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (el.tagName !== 'A') {\n\t\t\t\t\tif (this.compareStates(hash, location.hash)) {\n\t\t\t\t\t\thistorySetState(false, hash);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetTimeout(() => this.getDialogsUtils(), autoInitDelay);\n\t}\n\n\tprivate static opendDialogsFromChangeUrl(oldUrl: string, newUrl: string) {\n\t\tconst oldHash = oldUrl.replace(/.*?#/, '#');\n\t\tconst newHash = newUrl.replace(/.*?#/, '#');\n\n\t\tconst dialogsStateChanged = this.compareStates(oldHash, newHash);\n\t\tif (dialogsStateChanged) void this.opendDialogsFromUrl();\n\t}\n\n\tstatic async getDialogsUtils() {\n\t\tconst { TopDialogUtils } = await import('./utils');\n\n\t\treturn TopDialogUtils;\n\t}\n\n\tstatic getDialog(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialog>('.ui-dialog-content');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getDialog()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$dialog($el: $el) {\n\t\treturn $el.closest('.ui-dialog-content');\n\t};\n\n\tstatic getPage(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialogPage>('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$page($el: $el) {\n\t\treturn $el.closest('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPairPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$pairPage($el: $el) {\n\t\tconst $dialog = TopDialogWorker.get$dialog($el);\n\n\t\tconst $page = TopDialogWorker.get$page($el);\n\t\tconst pageName = $page.data('view-page');\n\n\t\treturn $('[data-view-page=\"' + pageName + '\"]', $dialog);\n\t};\n\n\tstatic getPairPage(el: HTMLElement) {\n\t\tconst elDialog = TopDialogWorker.getDialog(el);\n\t\tif (!elDialog) return;\n\n\t\tconst elPage = TopDialogWorker.getPage(el);\n\t\tconst pageName = elPage?.dataset.viewPage;\n\n\t\treturn querySelectorAllArray(elDialog, `[data-view-page=\"${pageName}\"]`);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t */\n\tstatic close(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tstatic destroy(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\t\t\t$dialog.dialog('destroy');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Сгенерировать ссылку на страницу в диалоговом окне\n\t * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}\n\t * @param moveDirection\n\t */\n\tstatic genViewPageHash(toView: string, moveDirection: MoveDirection = 'next') {\n\t\tlet toViewPageN = this.state.viewPageN;\n\t\tif (moveDirection == 'prev') {\n\t\t\ttoViewPageN--;\n\t\t} else {\n\t\t\ttoViewPageN++;\n\t\t}\n\n\t\tconst viewNameAndPageLink = toView.split('-');\n\t\tconst viewName = viewNameAndPageLink.shift();\n\t\tconst pageLink = viewNameAndPageLink.join('-');\n\n\t\tlet hash = genHash('vpn', toViewPageN);\n\t\thash = genHash('view-' + viewName, pageLink, hash);\n\n\t\treturn hash;\n\t};\n\n\t/**\n\t * Сравнить версию открытых диалоговых окон\n\t * @returns вернет true, если состояния открытых окон изменилось\n\t */\n\tstatic compareStates(hash: string, hash2: string) {\n\t\tconst mathes = hash.match(/[#&]view-[^&]+/g) || [];\n\t\tconst mathes2 = hash2.match(/[#&]view-[^&]+/g) || [];\n\n\t\tif (mathes.length !== mathes2.length) return true;\n\n\t\tconst mathesChanged = mathes.filter((math, n) => {\n\t\t\tconst math2 = mathes2[n] || '';\n\n\t\t\treturn math !== math2;\n\t\t});\n\n\t\tif (mathesChanged.length) return true;\n\n\t\treturn false;\n\t};\n\n\tstatic opendDialogsFromUrl = async () => {\n\t\tconst toViewPageN = Number(getHash('vpn')) || 0;\n\n\t\t// Открыть диалоговое окно\n\t\tlet view: RegExpExecArray | null;\n\t\t// const regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)' + '(' + Math.random() + ')?', 'g'); // fix babel minify regexp\n\t\tconst regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)', 'g');\n\n\t\t// TODO: Цикл делает только одну операцию и выходит (возможно, оставлен специально с какой-то целью, если нет - заменить на if)\n\t\twhile (view = regexp.exec(location.hash)) {\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\t\t\tif (toViewPageN < this.state.viewPageN) moveDirection = 'prev';\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\treturn TopDialogUtils.toViewDirty(view[1], moveDirection);\n\t\t}\n\n\t\t// Закрыть ненужные view\n\t\tconst elDialogs = querySelectorAllArray(document, '.ui-dialog-content[data-view-page-active]') as HTMLDialogElement[];\n\t\telDialogs.filter((elDialog) => {\n\t\t\treturn isVisible(elDialog);\n\t\t}).forEach((elDialog) => {\n\t\t\tconst viewName = elDialog.getAttribute('id');\n\t\t\tif (!viewName) throw 'Диалоговое окно не содержит id';\n\t\t\tconst pageName = getHash('view-' + viewName);\n\t\t\tif (!pageName) {\n\t\t\t\tconst $dialog = $(elDialog);\n\n\t\t\t\t$dialog.dialog('close');\n\t\t\t}\n\t\t});\n\n\t\tthis.state.viewPageN = toViewPageN;\n\n\t\treturn true;\n\t};\n}\n","import { type ComponentInstance, type ComponentInternalInstance, markRaw, ref } from 'vue';\nimport { waitWhile } from '@/core/utils/system';\nimport TopDialog from '../dialog.vue';\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\nimport type { MoveDirection } from '@/components/dialog/lib/types';\nimport type { TopDialogComponent } from './types';\nimport { historySetState } from '@/core/utils/route';\n\n/**\n * Объект для работы с диалоговым окном\n *\n * Каждое окно уникально и может быть открыто одновременно только один раз\n *\n * Можно определить много окон, после чего с ними можно вести работу в любой части приложения\n */\nexport class TopDialogHandle<T extends TopDialogComponent> {\n\n\t/**\n\t * Индентификатор, определяется на уровне компонента TopDialogComponent\n\t *\n\t * Может использоваться в навигации для открытия нужных окон с нужными настройками\n\t */\n\tid: string;\n\n\t/**\n\t * ID, используемый в верстке диалогового окна\n\t */\n\tidAttr: string;\n\n\t/**\n\t * Пользовательский компонент диалогового окна\n\t */\n\tComponent: T;\n\n\t/**\n\t * Компонент инициирован\n\t *\n\t * Устанавливается после первого вызова useTopDialog()\n\t */\n\tisMounted = ref(false);\n\n\t/**\n\t * Компонент готов к использованию\n\t *\n\t * Используется для внутренних преобразований после отрисовки\n\t */\n\tisReady = ref(false);\n\n\t/**\n\t * Диалоговое окно открыто\n\t */\n\tisOpened = ref(false);\n\n\t/**\n\t * Имя активной страницы дилогового окна\n\t */\n\tpageActive = ref('');\n\n\t/**\n\t * Диалоговое окно находится в состоянии загрузки своей страницы\n\t */\n\tisLoadingPage = ref(false);\n\n\t/**\n\t * Следующая активная страница\n\t *\n\t * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию\n\t */\n\tpageActiveNext = ref('');\n\n\t/**\n\t * props компонента, доступны после инициализации\n\t */\n\tprops?: ComponentInstance<T>['$props'];\n\n\t/**\n\t * emit базового компонента `TopDialog`\n\t */\n\temit?: ComponentInstance<typeof TopDialog>['$emit'];\n\n\t/**\n\t * Одноразовое событие на закрытие диалогового окна\n\t *\n\t * Используется для привязки окна к сценариям использования\n\t */\n\tonCloseOnce?: (props: typeof this.props, pageName: string) => void;\n\n\tconstructor(TopDialogComponent: T) {\n\t\tthis.id = TopDialogComponent.id!;\n\t\tthis.idAttr = 'dialog_' + TopDialogComponent.id;\n\t\tthis.Component = markRaw(TopDialogComponent);\n\t}\n\n\t/**\n\t * Событие - компонент инициирован\n\t */\n\tonMounted(topDialogComponent: ComponentInternalInstance, topDialogBaseComponent: ComponentInternalInstance) {\n\t\tthis.isMounted.value = true;\n\t\tthis.props = topDialogComponent.props;\n\t\tthis.emit = topDialogBaseComponent.emit;\n\t}\n\n\t/**\n\t * Открыть диалоговое окно\n\t *\n\t * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента\n\t */\n\tasync open(pageName: string = 'main', props?: {}, args: [] = [], onCloseOnce?: typeof this.onCloseOnce, moveDirection?: MoveDirection) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst TopDialogUtils = await TopDialogWorker.getDialogsUtils();\n\n\t\tawait TopDialogUtils.toView(this.idAttr, pageName, args, moveDirection);\n\t};\n\n\t/**\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\n\t *\n\t * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader\n\t */\n\tasync openAsLink(\n\t\tpageName: string = 'main',\n\t\tprops?: {},\n\t\t_args: string[] = [],\n\t\tonCloseOnce?: typeof this.onCloseOnce,\n\t\tmoveDirection?: MoveDirection,\n\t) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst viewName = this.idAttr + '-' + pageName;\n\n\t\tconst hash = TopDialogWorker.genViewPageHash(viewName, moveDirection);\n\t\thistorySetState(false, hash);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t *\n\t * Не меняет состояние компонента диалогового окна\n\t */\n\tasync close() {\n\t\tTopDialogWorker.close(this.idAttr);\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tasync destroy() {\n\t\tTopDialogWorker.destroy(this.idAttr);\n\t}\n\n\t/**\n\t * Устанвоить props\n\t *\n\t * Полностью сбрасывается состояние props\n\t */\n\tasync setProps(props: ComponentInstance<T>['$props'] = {}) {\n\t\t// ожидание инициализации компонента\n\t\tif (!this.isMounted) {\n\t\t\tawait waitWhile(() => !this.props);\n\t\t}\n\n\t\tfor (const name in this.props) {\n\t\t\tthis.props[name] = props[name];\n\t\t}\n\t}\n\n\t/**\n\t * Проверить, есть ли необходимость отрисовки страницы диалогового окна\n\t */\n\tneedShowPage(pageName: string): boolean {\n\t\tif (!this.isOpened.value) return false;\n\n\t\treturn this.pageActive.value === pageName || this.pageActiveNext.value === pageName;\n\t}\n\n}\n","<script lang=\"ts\">\nimport { shallowReactive } from 'vue';\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\n\n/**\n * Словарь всех используемых диалоговых окон\n *\n * В других компонентах не использовать\n */\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\n\n/**\n * Получить компонент диалогового окна по id\n */\nexport const getDialogWorker = (id: string) => {\n\tid = id.replace(/^dialog_/, '');\n\n\treturn dialogsWorkers.get(id);\n};\n\n/**\n * Добавить компонент диалогового окна для использования\n */\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\n\tif (!TopDialogComponent?.id) {\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\n\n\t\tthrow new Error('Expected TopDialogComponent');\n\t}\n\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\n\t}\n\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\n};\n</script>\n\n<script setup lang=\"ts\">\nimport { onUnmounted } from 'vue';\n\ndefineOptions({\n\tname: 'DialogWrapper',\n});\n\nonUnmounted(() => {\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\n\tdialogsWorkers.clear();\n});\n</script>\n\n<template>\n\t<div class=\"top-dialogs\" style=\"display: none;\">\n\t\t<component\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\n\t\t\t:is=\"dialog.Component\"\n\t\t\t:key=\"dialogId\"\n\t\t/>\n\t</div>\n</template>\n","<script lang=\"ts\">\nimport { shallowReactive } from 'vue';\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\n\n/**\n * Словарь всех используемых диалоговых окон\n *\n * В других компонентах не использовать\n */\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\n\n/**\n * Получить компонент диалогового окна по id\n */\nexport const getDialogWorker = (id: string) => {\n\tid = id.replace(/^dialog_/, '');\n\n\treturn dialogsWorkers.get(id);\n};\n\n/**\n * Добавить компонент диалогового окна для использования\n */\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\n\tif (!TopDialogComponent?.id) {\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\n\n\t\tthrow new Error('Expected TopDialogComponent');\n\t}\n\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\n\t}\n\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\n};\n</script>\n\n<script setup lang=\"ts\">\nimport { onUnmounted } from 'vue';\n\ndefineOptions({\n\tname: 'DialogWrapper',\n});\n\nonUnmounted(() => {\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\n\tdialogsWorkers.clear();\n});\n</script>\n\n<template>\n\t<div class=\"top-dialogs\" style=\"display: none;\">\n\t\t<component\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\n\t\t\t:is=\"dialog.Component\"\n\t\t\t:key=\"dialogId\"\n\t\t/>\n\t</div>\n</template>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dialogs-69JOByg2.esm.js","names":[],"sources":["../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/dialog/dialog.vue","../../src/components/dialog/lib/worker.ts","../../src/components/dialog/dialog/composables/dialogHandle.ts","../../src/components/dialog/dialog/dialogs/dialogs.vue","../../src/components/dialog/dialog/dialogs/dialogs.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","<script setup lang=\"ts\">\nimport type { ComponentInternalInstance } from 'vue';\nimport { getCurrentInstance, onMounted, provide, watch } from 'vue';\nimport { getDialogWorker } from './dialogs/dialogs.vue';\nimport type { Emits, Props, Slots } from './types';\n\nconst props = withDefaults(defineProps<Props>(), {\n\twidth: '600px',\n\theight: 'auto',\n\tmodal: true,\n\thistoryType: 'push',\n});\n\ndefineEmits<Emits>();\n\ndefineSlots<Slots>();\n\nconst dialog = getDialogWorker(props.id);\nif (!dialog) {\n\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog() / useAsyncTopDialog()');\n}\n\n/**\n * Для useTopDialogSelf()\n */\nprovide('dialogWorker', dialog);\n\n/**\n * Инициализация начального состояния TopDialogHandle\n */\nonMounted(() => {\n\tconst topDialogBaseComponent = getCurrentInstance() as ComponentInternalInstance;\n\tconst topDialogComponent = topDialogBaseComponent.parent;\n\n\tif (topDialogComponent?.parent?.type.name !== 'DialogWrapper') {\n\t\tthrow new Error('TopDialog cannot be used in a template, use useTopDialog()');\n\t}\n\n\tif (Array.isArray(topDialogComponent.subTree.children) && topDialogComponent.subTree.children.length !== 1) {\n\t\tthrow new Error('TopDialog can has only one root element');\n\t}\n\n\tdialog.onMounted(topDialogComponent, topDialogBaseComponent);\n});\n\nwatch(dialog.isOpened, () => {\n\tdialog.isReady.value = true;\n}, {\n\tflush: 'post',\n\tonce: true,\n});\n</script>\n\n<template>\n\t<div\n\t\t:id=\"dialog.idAttr\"\n\t\tclass=\"top-dialog\"\n\t\t:class=\"classes\"\n\t\t:style=\"{\n\t\t\t'--top-dialog-width': width,\n\t\t\t'--top-dialog-height': height,\n\t\t}\"\n\t\ttabindex=\"-1\"\n\t\t:data-view-page-active=\"dialog.pageActive.value\"\n\t\t:data-modal=\"modal\"\n\t\t:data-position=\"position\"\n\t>\n\t\t<div class=\"modal-layer modal-layer-header\"></div>\n\n\t\t<div class=\"modal-layer modal-layer-body\" :style=\"{'min-height': height + 'px'}\"></div>\n\n\t\t<slot name=\"default\"></slot>\n\t</div>\n</template>\n","import { genHash, getHash, historySetState } from '@/core/utils/route';\nimport type { ElTopDialog, ElTopDialogOpener, ElTopDialogPage, MoveDirection, TopDialogOptions } from './types';\nimport { isVisible, querySelectorAllArray } from '@/core/utils/dom';\nimport type { $el } from '@/components/types';\n\nexport abstract class TopDialogWorker {\n\tstatic state = {\n\t\tload: undefined as TopDialogOptions['load'] | undefined,\n\t\tdecoratorOnCreate: undefined as TopDialogOptions['decoratorOnCreate'] | undefined,\n\n\t\t/**\n\t\t * Порядковый номер перехода в диалоговых окнах\n\t\t *\n\t\t * Для расчета анимации Вперед / Назад\n\t\t */\n\t\tviewPageN: 0,\n\t};\n\n\tprivate static inited = false;\n\n\t/**\n\t * Инициировать события слежения за парамтерами url\n\t *\n\t * Если в параметрах есть запрос на открытие диалогового окна, TopDialog будет автоматически подключен на страницу\n\t */\n\tstatic init(options?: TopDialogOptions) {\n\t\tif (this.inited) return;\n\t\tthis.inited = true;\n\n\t\tthis.state.load = options?.load;\n\t\tthis.state.decoratorOnCreate = options?.decoratorOnCreate;\n\n\t\tconst autoInitDelay = options?.autoInitDelay ?? 5000;\n\n\t\twindow.addEventListener('hashchange', (e) => {\n\t\t\tthis.opendDialogsFromChangeUrl(e.oldURL, e.newURL);\n\t\t});\n\n\t\tthis.opendDialogsFromChangeUrl('', location.href);\n\n\t\t/**\n\t\t * Сгенерировать ссылку для перехода к странице диалогового окна\n\t\t */\n\t\tdocument.addEventListener('mousedown', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener<HTMLAnchorElement>>('a[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// const toView = el.dataset.toView;\n\t\t\t// const viewName = toView.split('-')[0];\n\t\t\t// const $toDialog = $('#' + viewName);\n\t\t\t// const $modalLayers = $('> .modal-layer', $toDialog);\n\t\t\t// const $currentPage = $('> .active', $modalLayers);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\t// /**\n\t\t\t// * Данный алгоритм определения направления работает не корректно, так как для чтения свойства order менят состояние через getDialogsUtils()\n\t\t\t// */\n\t\t\t// if ($currentPage.length) {\n\t\t\t// \tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t//\n\t\t\t// \tconst TopDialogUtils = await this.getDialogsUtils();\n\t\t\t//\n\t\t\t// \tawait TopDialogUtils.updatePageVue(viewName, undefined, pageName);\n\t\t\t//\n\t\t\t// \tconst $nextPage = $('> [data-view-page=\"' + pageName + '\"]', $modalLayers);\n\t\t\t// \tif ($nextPage.data('order') < $currentPage.data('order')) moveDirection = 'prev';\n\t\t\t// }\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tel.href = TopDialogWorker.genViewPageHash(el.dataset.toView, moveDirection);\n\t\t});\n\n\t\t/**\n\t\t * Осуществить переход по ссылке с учетом historyType\n\t\t */\n\t\tdocument.addEventListener('click', async (e) => {\n\t\t\tif (!(e.target instanceof HTMLElement)) return;\n\n\t\t\tconst elEventTarget = e.target;\n\n\t\t\tconst el = elEventTarget.closest<ElTopDialogOpener>('[data-to-view]');\n\t\t\tif (!el) return;\n\n\t\t\t// Подождать генерацию ссылки\n\t\t\tif (el instanceof HTMLAnchorElement && el.href === '.') {\n\t\t\t\te.preventDefault();\n\n\t\t\t\tconst mouseEvent = new MouseEvent('mousedown', {\n\t\t\t\t\tbubbles: true,\n\t\t\t\t\tcancelable: true,\n\t\t\t\t\tview: window,\n\t\t\t\t});\n\n\t\t\t\tel.dispatchEvent(mouseEvent);\n\n\t\t\t\tsetTimeout(() => el.click());\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\tconst toView = el.dataset.toView;\n\t\t\tconst viewName = toView.split('-')[0];\n\n\t\t\tconst elDialog = TopDialogUtils.getElDialogById(viewName);\n\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\n\t\t\tif (elDialog) {\n\t\t\t\tconst elModalLayers = querySelectorAllArray(elDialog, '.modal-layer');\n\t\t\t\tconst elCurrentPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\tconst elCurrentPage = el.querySelector<ElTopDialogPage>(':scope > .active');\n\n\t\t\t\t\tif (elCurrentPage) acc.push(elCurrentPage);\n\n\t\t\t\t\treturn acc;\n\t\t\t\t}, []);\n\n\t\t\t\tif (elCurrentPages.length) {\n\t\t\t\t\tconst pageName = toView.split('-')[1].split(':')[0];\n\t\t\t\t\tconst elNextPages = elModalLayers.reduce<ElTopDialogPage[]>((acc, el) => {\n\t\t\t\t\t\tconst elNextPage = el?.querySelector<ElTopDialogPage>(`:scope > [data-view-page=\"${pageName}\"]`);\n\n\t\t\t\t\t\tif (elNextPage) acc.push(elNextPage);\n\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t}, []);\n\n\t\t\t\t\tif ((elNextPages[0]?.dataset.order ?? 0) < (elCurrentPages[0]?.dataset.order ?? 0)) moveDirection = 'prev';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (el.dataset.action === 'top-dialog-close') moveDirection = 'prev';\n\n\t\t\tconst hash = TopDialogWorker.genViewPageHash(toView, moveDirection);\n\n\t\t\tif (el instanceof HTMLAnchorElement) {\n\t\t\t\t// диалоговое окно еще не открыто, произвести переход по ссылке\n\t\t\t\tif (!elDialog || !isVisible(elDialog)) return;\n\n\t\t\t\t// в адресе уже указана эта страница, необходимо явно запросить ее открытие\n\t\t\t\tif (location.hash.indexOf(toView.replace('-', '=')) !== -1) {\n\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst replaceHistory = !!elDialog?.dataset.toViewReplace;\n\n\t\t\tif (replaceHistory) {\n\t\t\t\te.preventDefault();\n\n\t\t\t\thistorySetState(true, hash);\n\n\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\n\t\t\t\tif (moveDirection == 'next') {\n\t\t\t\t\tTopDialogWorker.state.viewPageN++;\n\t\t\t\t} else {\n\t\t\t\t\tTopDialogWorker.state.viewPageN--;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (el.tagName !== 'A') {\n\t\t\t\t\tif (this.compareStates(hash, location.hash)) {\n\t\t\t\t\t\thistorySetState(false, hash);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tawait TopDialogUtils.toViewDirty(toView);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tsetTimeout(() => this.getDialogsUtils(), autoInitDelay);\n\t}\n\n\tprivate static opendDialogsFromChangeUrl(oldUrl: string, newUrl: string) {\n\t\tconst oldHash = oldUrl.replace(/.*?#/, '#');\n\t\tconst newHash = newUrl.replace(/.*?#/, '#');\n\n\t\tconst dialogsStateChanged = this.compareStates(oldHash, newHash);\n\t\tif (dialogsStateChanged) void this.opendDialogsFromUrl();\n\t}\n\n\tstatic async getDialogsUtils() {\n\t\tconst { TopDialogUtils } = await import('./utils');\n\n\t\treturn TopDialogUtils;\n\t}\n\n\tstatic getDialog(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialog>('.ui-dialog-content');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getDialog()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$dialog($el: $el) {\n\t\treturn $el.closest('.ui-dialog-content');\n\t};\n\n\tstatic getPage(el: HTMLElement) {\n\t\treturn el.closest<ElTopDialogPage>('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$page($el: $el) {\n\t\treturn $el.closest('[data-view-page]');\n\t};\n\n\t/**\n\t * todo: Переписать на сайте на this.getPairPage()\n\t *\n\t * @deprecated Для обратной совместимости\n\t */\n\tstatic get$pairPage($el: $el) {\n\t\tconst $dialog = TopDialogWorker.get$dialog($el);\n\n\t\tconst $page = TopDialogWorker.get$page($el);\n\t\tconst pageName = $page.data('view-page');\n\n\t\treturn $('[data-view-page=\"' + pageName + '\"]', $dialog);\n\t};\n\n\tstatic getPairPage(el: HTMLElement) {\n\t\tconst elDialog = TopDialogWorker.getDialog(el);\n\t\tif (!elDialog) return;\n\n\t\tconst elPage = TopDialogWorker.getPage(el);\n\t\tconst pageName = elPage?.dataset.viewPage;\n\n\t\treturn querySelectorAllArray(elDialog, `[data-view-page=\"${pageName}\"]`);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t */\n\tstatic close(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tstatic destroy(dialogId: string) {\n\t\tconst $dialog = $('#' + dialogId);\n\n\t\tif ($dialog.dialog('instance')) {\n\t\t\t$dialog.dialog('close');\n\t\t\t$dialog.dialog('destroy');\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst elDialog = document.getElementById(dialogId);\n\t\tif (!(elDialog instanceof HTMLDialogElement)) return;\n\n\t\telDialog.close();\n\t};\n\n\t/**\n\t * Сгенерировать ссылку на страницу в диалоговом окне\n\t * @param toView - указатель в формате: dialog_{{ dialogId }}={{ pageName }}:{{ args }}\n\t * @param moveDirection\n\t */\n\tstatic genViewPageHash(toView: string, moveDirection: MoveDirection = 'next') {\n\t\tlet toViewPageN = this.state.viewPageN;\n\t\tif (moveDirection == 'prev') {\n\t\t\ttoViewPageN--;\n\t\t} else {\n\t\t\ttoViewPageN++;\n\t\t}\n\n\t\tconst viewNameAndPageLink = toView.split('-');\n\t\tconst viewName = viewNameAndPageLink.shift();\n\t\tconst pageLink = viewNameAndPageLink.join('-');\n\n\t\tlet hash = genHash('vpn', toViewPageN);\n\t\thash = genHash('view-' + viewName, pageLink, hash);\n\n\t\treturn hash;\n\t};\n\n\t/**\n\t * Сравнить версию открытых диалоговых окон\n\t * @returns вернет true, если состояния открытых окон изменилось\n\t */\n\tstatic compareStates(hash: string, hash2: string) {\n\t\tconst mathes = hash.match(/[#&]view-[^&]+/g) || [];\n\t\tconst mathes2 = hash2.match(/[#&]view-[^&]+/g) || [];\n\n\t\tif (mathes.length !== mathes2.length) return true;\n\n\t\tconst mathesChanged = mathes.filter((math, n) => {\n\t\t\tconst math2 = mathes2[n] || '';\n\n\t\t\treturn math !== math2;\n\t\t});\n\n\t\tif (mathesChanged.length) return true;\n\n\t\treturn false;\n\t};\n\n\tstatic opendDialogsFromUrl = async () => {\n\t\tconst toViewPageN = Number(getHash('vpn')) || 0;\n\n\t\t// Открыть диалоговое окно\n\t\tlet view: RegExpExecArray | null;\n\t\t// const regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)' + '(' + Math.random() + ')?', 'g'); // fix babel minify regexp\n\t\tconst regexp = new RegExp('view-((\\\\w+)=([\\\\w-]+)(?::([\\\\w.:-]+))?)', 'g');\n\n\t\t// TODO: Цикл делает только одну операцию и выходит (возможно, оставлен специально с какой-то целью, если нет - заменить на if)\n\t\twhile (view = regexp.exec(location.hash)) {\n\t\t\tlet moveDirection: MoveDirection = 'next';\n\t\t\tif (toViewPageN < this.state.viewPageN) moveDirection = 'prev';\n\n\t\t\tconst TopDialogUtils = await this.getDialogsUtils();\n\n\t\t\treturn TopDialogUtils.toViewDirty(view[1], moveDirection);\n\t\t}\n\n\t\t// Закрыть ненужные view\n\t\tconst elDialogs = querySelectorAllArray(document, '.ui-dialog-content[data-view-page-active]') as HTMLDialogElement[];\n\t\telDialogs.filter((elDialog) => {\n\t\t\treturn isVisible(elDialog);\n\t\t}).forEach((elDialog) => {\n\t\t\tconst viewName = elDialog.getAttribute('id');\n\t\t\tif (!viewName) throw 'Диалоговое окно не содержит id';\n\t\t\tconst pageName = getHash('view-' + viewName);\n\t\t\tif (!pageName) {\n\t\t\t\tconst $dialog = $(elDialog);\n\n\t\t\t\t$dialog.dialog('close');\n\t\t\t}\n\t\t});\n\n\t\tthis.state.viewPageN = toViewPageN;\n\n\t\treturn true;\n\t};\n}\n","import { type ComponentInstance, type ComponentInternalInstance, markRaw, ref } from 'vue';\nimport { waitWhile } from '@/core/utils/system';\nimport TopDialog from '../dialog.vue';\nimport { TopDialogWorker } from '@/components/dialog/lib/worker';\nimport type { MoveDirection } from '@/components/dialog/lib/types';\nimport type { TopDialogComponent } from './types';\nimport { historySetState } from '@/core/utils/route';\n\n/**\n * Объект для работы с диалоговым окном\n *\n * Каждое окно уникально и может быть открыто одновременно только один раз\n *\n * Можно определить много окон, после чего с ними можно вести работу в любой части приложения\n */\nexport class TopDialogHandle<T extends TopDialogComponent> {\n\n\t/**\n\t * Индентификатор, определяется на уровне компонента TopDialogComponent\n\t *\n\t * Может использоваться в навигации для открытия нужных окон с нужными настройками\n\t */\n\tid: string;\n\n\t/**\n\t * ID, используемый в верстке диалогового окна\n\t */\n\tidAttr: string;\n\n\t/**\n\t * Пользовательский компонент диалогового окна\n\t */\n\tComponent: T;\n\n\t/**\n\t * Компонент инициирован\n\t *\n\t * Устанавливается после первого вызова useTopDialog()\n\t */\n\tisMounted = ref(false);\n\n\t/**\n\t * Компонент готов к использованию\n\t *\n\t * Используется для внутренних преобразований после отрисовки\n\t */\n\tisReady = ref(false);\n\n\t/**\n\t * Диалоговое окно открыто\n\t */\n\tisOpened = ref(false);\n\n\t/**\n\t * Имя активной страницы дилогового окна\n\t */\n\tpageActive = ref('');\n\n\t/**\n\t * Диалоговое окно находится в состоянии загрузки своей страницы\n\t */\n\tisLoadingPage = ref(false);\n\n\t/**\n\t * Следующая активная страница\n\t *\n\t * В один момент времени может потребоваться отобразить две страницы, чтобы воспроизвести анимацию\n\t */\n\tpageActiveNext = ref('');\n\n\t/**\n\t * props компонента, доступны после инициализации\n\t */\n\tprops?: ComponentInstance<T>['$props'];\n\n\t/**\n\t * emit базового компонента `TopDialog`\n\t */\n\temit?: ComponentInstance<typeof TopDialog>['$emit'];\n\n\t/**\n\t * Одноразовое событие на закрытие диалогового окна\n\t *\n\t * Используется для привязки окна к сценариям использования\n\t */\n\tonCloseOnce?: (props: typeof this.props, pageName: string) => void;\n\n\tconstructor(TopDialogComponent: T) {\n\t\tthis.id = TopDialogComponent.id!;\n\t\tthis.idAttr = 'dialog_' + TopDialogComponent.id;\n\t\tthis.Component = markRaw(TopDialogComponent);\n\t}\n\n\t/**\n\t * Событие - компонент инициирован\n\t */\n\tonMounted(topDialogComponent: ComponentInternalInstance, topDialogBaseComponent: ComponentInternalInstance) {\n\t\tthis.isMounted.value = true;\n\t\tthis.props = topDialogComponent.props;\n\t\tthis.emit = topDialogBaseComponent.emit;\n\t}\n\n\t/**\n\t * Открыть диалоговое окно\n\t *\n\t * Учтите, что props в диалоговом окне будут доступны не сразу, а только после инициализации vue компонента\n\t */\n\tasync open(pageName: string = 'main', props?: {}, args: [] = [], onCloseOnce?: typeof this.onCloseOnce, moveDirection?: MoveDirection) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst TopDialogUtils = await TopDialogWorker.getDialogsUtils();\n\n\t\tawait TopDialogUtils.toView(this.idAttr, pageName, args, moveDirection);\n\t};\n\n\t/**\n\t * Открыть диалоговое окно как ссылку, для хеш-навигации\n\t *\n\t * Диалоговые окна загружаются по имени, см. настройку плагина Core topDialogLoader\n\t */\n\tasync openAsLink(\n\t\tpageName: string = 'main',\n\t\tprops?: {},\n\t\t_args: string[] = [],\n\t\tonCloseOnce?: typeof this.onCloseOnce,\n\t\tmoveDirection?: MoveDirection,\n\t) {\n\t\tif (props) await this.setProps(props);\n\t\tif (onCloseOnce) this.onCloseOnce = onCloseOnce;\n\n\t\tconst viewName = this.idAttr + '-' + pageName;\n\n\t\tconst hash = TopDialogWorker.genViewPageHash(viewName, moveDirection);\n\t\thistorySetState(false, hash);\n\t};\n\n\t/**\n\t * Закрыть диалоговое окно\n\t *\n\t * Не меняет состояние компонента диалогового окна\n\t */\n\tasync close() {\n\t\tTopDialogWorker.close(this.idAttr);\n\t};\n\n\t/**\n\t * Размонтировать $.dialog\n\t */\n\tasync destroy() {\n\t\tTopDialogWorker.destroy(this.idAttr);\n\t}\n\n\t/**\n\t * Устанвоить props\n\t *\n\t * Полностью сбрасывается состояние props\n\t */\n\tasync setProps(props: ComponentInstance<T>['$props'] = {}) {\n\t\t// ожидание инициализации компонента\n\t\tif (!this.isMounted) {\n\t\t\tawait waitWhile(() => !this.props);\n\t\t}\n\n\t\tfor (const name in this.props) {\n\t\t\tthis.props[name] = props[name];\n\t\t}\n\t}\n\n\t/**\n\t * Проверить, есть ли необходимость отрисовки страницы диалогового окна\n\t */\n\tneedShowPage(pageName: string): boolean {\n\t\tif (!this.isOpened.value) return false;\n\n\t\treturn this.pageActive.value === pageName || this.pageActiveNext.value === pageName;\n\t}\n\n}\n","<script lang=\"ts\">\nimport { shallowReactive } from 'vue';\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\n\n/**\n * Словарь всех используемых диалоговых окон\n *\n * В других компонентах не использовать\n */\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\n\n/**\n * Получить компонент диалогового окна по id\n */\nexport const getDialogWorker = (id: string) => {\n\tid = id.replace(/^dialog_/, '');\n\n\treturn dialogsWorkers.get(id);\n};\n\n/**\n * Добавить компонент диалогового окна для использования\n */\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\n\tif (!TopDialogComponent?.id) {\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\n\n\t\tthrow new Error('Expected TopDialogComponent');\n\t}\n\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\n\t}\n\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\n};\n</script>\n\n<script setup lang=\"ts\">\nimport { onUnmounted } from 'vue';\n\ndefineOptions({\n\tname: 'DialogWrapper',\n});\n\nonUnmounted(() => {\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\n\tdialogsWorkers.clear();\n});\n</script>\n\n<template>\n\t<div class=\"top-dialogs\" style=\"display: none;\">\n\t\t<component\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\n\t\t\t:is=\"dialog.Component\"\n\t\t\t:key=\"dialogId\"\n\t\t/>\n\t</div>\n</template>\n","<script lang=\"ts\">\nimport { shallowReactive } from 'vue';\nimport { TopDialogHandle } from '@/components/dialog/dialog/composables/dialogHandle';\nimport type { TopDialogComponent } from '@/components/dialog/dialog/composables/types';\n\n/**\n * Словарь всех используемых диалоговых окон\n *\n * В других компонентах не использовать\n */\nconst dialogsWorkers = shallowReactive(new Map<string, TopDialogHandle<TopDialogComponent>>());\n\n/**\n * Получить компонент диалогового окна по id\n */\nexport const getDialogWorker = (id: string) => {\n\tid = id.replace(/^dialog_/, '');\n\n\treturn dialogsWorkers.get(id);\n};\n\n/**\n * Добавить компонент диалогового окна для использования\n */\nexport const addDialogWorker = <T extends TopDialogComponent>(TopDialogComponent: T): TopDialogHandle<T> => {\n\tif (!TopDialogComponent?.id) {\n\t\tconsole.log({ TopDialogComponent: TopDialogComponent });\n\n\t\tthrow new Error('Expected TopDialogComponent');\n\t}\n\n\tif (!dialogsWorkers.has(TopDialogComponent.id)) {\n\t\tdialogsWorkers.set(TopDialogComponent.id, new TopDialogHandle(TopDialogComponent));\n\t}\n\n\treturn dialogsWorkers.get(TopDialogComponent.id) as TopDialogHandle<T>;\n};\n</script>\n\n<script setup lang=\"ts\">\nimport { onUnmounted } from 'vue';\n\ndefineOptions({\n\tname: 'DialogWrapper',\n});\n\nonUnmounted(() => {\n\tdialogsWorkers.forEach(dialog => dialog.destroy());\n\tdialogsWorkers.clear();\n});\n</script>\n\n<template>\n\t<div class=\"top-dialogs\" style=\"display: none;\">\n\t\t<component\n\t\t\tv-for=\"[dialogId, dialog] in dialogsWorkers\"\n\t\t\t:is=\"dialog.Component\"\n\t\t\t:key=\"dialogId\"\n\t\t/>\n\t</div>\n</template>\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var __createBinding=this&&this.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),__importStar=this&&this.__importStar||(function(){var n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},n(e)};return function(r){if(r&&r.__esModule)return r;var i={};if(r!=null)for(var a=n(r),o=0;o<a.length;o++)a[o]!==`default`&&__createBinding(i,r,a[o]);return __setModuleDefault(i,r),i}})();define([`require`,`exports`,`vue`],function(e,t,r){"use strict";if(i===void 0)var i=window.Vue;Object.defineProperty(t,`__esModule`,{value:!0}),t.z=t.v=t.u=t.t=t.s=t.r=t.p=t.o=t.n=t.m=t.l=t.k=t.i=t.h=t.g=t.f=t.d=t.c=t.a=t.T=t.S=t.R=t.O=t.L=t.F=t.E=t.D=t.C=t.B=t.A=void 0,t.G=p,t.H=f,t.I=m,t.K=c,t.M=Fi,t.N=Ni,t.P=ke,t.U=u,t.V=d,t.W=l,t._=Z,t.b=wa,t.j=Li,t.w=Ca,t.x=Ta,t.y=Ea;function a(e){"@babel/helpers - typeof";return a=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},a(e)}function o(e,t){if(a(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(a(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function s(e){var t=o(e,`string`);return a(t)==`symbol`?t:t+``}function c(e,t,n){return(t=s(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function l(){return`devicePixelRatio`in window&&window.devicePixelRatio>1}function u(){return!!navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|IEMobile|Opera Mini/i)}function d(){return navigator.userAgent.indexOf(`Topvisor_App`)!=-1}function f(){return navigator.userAgent.indexOf(`Mac OS X`)!==-1}function p(){let e=/Chrome|Android/.test(navigator.userAgent),t=/Safari/.test(navigator.userAgent);return e&&t&&(t=!1),t}function m(){return f()?`⌘`:`Ctrl`}var ee=()=>$(document).scrollTop(),te=()=>$(document),h=()=>[document],g=()=>{let e=[[`iOS`,/(iPhone|iPad)/i],[`Android`,/(Android)/i],[`Windows Phone`,/(IEMobile)/i],[`Windows 3.11`,/Win16/i],[`Windows 95`,/(Windows 95)|(Win95)|(Windows_95)/i],[`Windows 98`,/(Windows 98)|(Win98)/i],[`Windows 2000`,/(Windows NT 5.0)|(Windows 2000)/i],[`Windows XP`,/(Windows NT 5.1)|(Windows XP)/i],[`Windows Server 2003`,/(Windows NT 5.2)/i],[`Windows Vista`,/(Windows NT 6.0)/i],[`Windows 7`,/(Windows NT 6.1)/i],[`Windows 8`,/(Windows NT 6.[23])|(Windows 8)/i],[`Windows 10`,/(Windows NT 10)/i],[`Windows NT 4.0`,/(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)/i],[`Windows ME`,/Windows ME/i],[`Windows`,/Windows/i],[`Open BSD`,/OpenBSD/i],[`Sun OS`,/SunOS/i],[`Linux`,/(Linux)|(X11)/i],[`Macintosh`,/(Mac_PowerPC)|(Macintosh)|(Mac OS X 10.4)|(Mac OS X 10.5)|(Mac OS X 10.6)/i],[`QNX`,/QNX/i],[`BeOS`,/BeOS/i],[`OS/2`,/OS\/2/i]],t=``;for(let n=0;n<e.length;n++)if(e[n][1].test(navigator.userAgent)){t=e[n][0];break}return t};t.B=ee,t.F=te,t.L=h,t.R=g,t.z=async()=>{let e=g();if(e===`Windows 10`){let t=await navigator?.userAgentData?.getHighEntropyValues([`platformVersion`]);t&&t.platformVersion>=`13`&&(e=`Windows 11`)}return e};function _(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}var ne=typeof global==`object`&&global&&global.Object===Object&&global,re=typeof self==`object`&&self&&self.Object===Object&&self,v=ne||re||Function(`return this`)(),ie=function(){return v.Date.now()},ae=/\s/;function oe(e){for(var t=e.length;t--&&ae.test(e.charAt(t)););return t}var se=/^\s+/;function ce(e){return e&&e.slice(0,oe(e)+1).replace(se,``)}var y=v.Symbol,le=Object.prototype,ue=le.hasOwnProperty,de=le.toString,b=y?y.toStringTag:void 0;function fe(e){var t=ue.call(e,b),n=e[b];try{e[b]=void 0;var r=!0}catch{}var i=de.call(e);return r&&(t?e[b]=n:delete e[b]),i}var pe=Object.prototype.toString;function me(e){return pe.call(e)}var he=`[object Null]`,ge=`[object Undefined]`,_e=y?y.toStringTag:void 0;function x(e){return e==null?e===void 0?ge:he:_e&&_e in Object(e)?fe(e):me(e)}function S(e){return typeof e==`object`&&!!e}var ve=`[object Symbol]`;function ye(e){return typeof e==`symbol`||S(e)&&x(e)==ve}var be=NaN,xe=/^[-+]0x[0-9a-f]+$/i,Se=/^0b[01]+$/i,Ce=/^0o[0-7]+$/i,we=parseInt;function Te(e){if(typeof e==`number`)return e;if(ye(e))return be;if(_(e)){var t=typeof e.valueOf==`function`?e.valueOf():e;e=_(t)?t+``:t}if(typeof e!=`string`)return e===0?e:+e;e=ce(e);var n=Se.test(e);return n||Ce.test(e)?we(e.slice(2),n?2:8):xe.test(e)?be:+e}var Ee=`Expected a function`,De=Math.max,Oe=Math.min;function ke(e,t,n){var r,i,a,o,s,c,l=0,u=!1,d=!1,f=!0;if(typeof e!=`function`)throw TypeError(Ee);t=Te(t)||0,_(n)&&(u=!!n.leading,d=`maxWait`in n,a=d?De(Te(n.maxWait)||0,t):a,f=`trailing`in n?!!n.trailing:f);function p(t){var n=r,a=i;return r=i=void 0,l=t,o=e.apply(a,n),o}function m(e){return l=e,s=setTimeout(h,t),u?p(e):o}function ee(e){var n=e-c,r=e-l,i=t-n;return d?Oe(i,a-r):i}function te(e){var n=e-c,r=e-l;return c===void 0||n>=t||n<0||d&&r>=a}function h(){var e=ie();if(te(e))return g(e);s=setTimeout(h,ee(e))}function g(e){return s=void 0,f&&r?p(e):(r=i=void 0,o)}function ne(){s!==void 0&&clearTimeout(s),l=0,r=c=i=s=void 0}function re(){return s===void 0?o:g(ie())}function v(){var e=ie(),n=te(e);if(r=arguments,i=this,c=e,n){if(s===void 0)return m(c);if(d)return clearTimeout(s),s=setTimeout(h,t),p(c)}return s===void 0&&(s=setTimeout(h,t)),o}return v.cancel=ne,v.flush=re,v}function Ae(){this.__data__=[],this.size=0}function C(e,t){return e===t||e!==e&&t!==t}function w(e,t){for(var n=e.length;n--;)if(C(e[n][0],t))return n;return-1}var je=Array.prototype.splice;function Me(e){var t=this.__data__,n=w(t,e);return n<0?!1:(n==t.length-1?t.pop():je.call(t,n,1),--this.size,!0)}function Ne(e){var t=this.__data__,n=w(t,e);return n<0?void 0:t[n][1]}function Pe(e){return w(this.__data__,e)>-1}function Fe(e,t){var n=this.__data__,r=w(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function T(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}T.prototype.clear=Ae,T.prototype.delete=Me,T.prototype.get=Ne,T.prototype.has=Pe,T.prototype.set=Fe;function Ie(){this.__data__=new T,this.size=0}function Le(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function Re(e){return this.__data__.get(e)}function ze(e){return this.__data__.has(e)}var Be=`[object AsyncFunction]`,Ve=`[object Function]`,He=`[object GeneratorFunction]`,Ue=`[object Proxy]`;function We(e){if(!_(e))return!1;var t=x(e);return t==Ve||t==He||t==Be||t==Ue}var Ge=v[`__core-js_shared__`],Ke=function(){var e=/[^.]+$/.exec(Ge&&Ge.keys&&Ge.keys.IE_PROTO||``);return e?`Symbol(src)_1.`+e:``}();function qe(e){return!!Ke&&Ke in e}var Je=Function.prototype.toString;function E(e){if(e!=null){try{return Je.call(e)}catch{}try{return e+``}catch{}}return``}var Ye=/[\\^$.*+?()[\]{}|]/g,Xe=/^\[object .+?Constructor\]$/,Ze=Function.prototype,Qe=Object.prototype,$e=Ze.toString,et=Qe.hasOwnProperty,tt=RegExp(`^`+$e.call(et).replace(Ye,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function nt(e){return!_(e)||qe(e)?!1:(We(e)?tt:Xe).test(E(e))}function rt(e,t){return e?.[t]}function D(e,t){var n=rt(e,t);return nt(n)?n:void 0}var O=D(v,`Map`),k=D(Object,`create`);function it(){this.__data__=k?k(null):{},this.size=0}function at(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}var ot=`__lodash_hash_undefined__`,st=Object.prototype.hasOwnProperty;function ct(e){var t=this.__data__;if(k){var n=t[e];return n===ot?void 0:n}return st.call(t,e)?t[e]:void 0}var lt=Object.prototype.hasOwnProperty;function ut(e){var t=this.__data__;return k?t[e]!==void 0:lt.call(t,e)}var dt=`__lodash_hash_undefined__`;function ft(e,t){var n=this.__data__;return this.size+=+!this.has(e),n[e]=k&&t===void 0?dt:t,this}function A(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}A.prototype.clear=it,A.prototype.delete=at,A.prototype.get=ct,A.prototype.has=ut,A.prototype.set=ft;function pt(){this.size=0,this.__data__={hash:new A,map:new(O||T),string:new A}}function mt(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}function j(e,t){var n=e.__data__;return mt(t)?n[typeof t==`string`?`string`:`hash`]:n.map}function ht(e){var t=j(this,e).delete(e);return this.size-=+!!t,t}function gt(e){return j(this,e).get(e)}function _t(e){return j(this,e).has(e)}function vt(e,t){var n=j(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}function M(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}M.prototype.clear=pt,M.prototype.delete=ht,M.prototype.get=gt,M.prototype.has=_t,M.prototype.set=vt;var yt=200;function bt(e,t){var n=this.__data__;if(n instanceof T){var r=n.__data__;if(!O||r.length<yt-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new M(r)}return n.set(e,t),this.size=n.size,this}function N(e){this.size=(this.__data__=new T(e)).size}N.prototype.clear=Ie,N.prototype.delete=Le,N.prototype.get=Re,N.prototype.has=ze,N.prototype.set=bt;function xt(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}var P=function(){try{var e=D(Object,`defineProperty`);return e({},``,{}),e}catch{}}();function St(e,t,n){t==`__proto__`&&P?P(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}var Ct=Object.prototype.hasOwnProperty;function wt(e,t,n){var r=e[t];(!(Ct.call(e,t)&&C(r,n))||n===void 0&&!(t in e))&&St(e,t,n)}function F(e,t,n,r){var i=!n;n||={};for(var a=-1,o=t.length;++a<o;){var s=t[a],c=r?r(n[s],e[s],s,n,e):void 0;c===void 0&&(c=e[s]),i?St(n,s,c):wt(n,s,c)}return n}function Tt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var Et=`[object Arguments]`;function Dt(e){return S(e)&&x(e)==Et}var Ot=Object.prototype,kt=Ot.hasOwnProperty,At=Ot.propertyIsEnumerable,jt=Dt(function(){return arguments}())?Dt:function(e){return S(e)&&kt.call(e,`callee`)&&!At.call(e,`callee`)},I=Array.isArray;function Mt(){return!1}var Nt=typeof t==`object`&&t&&!t.nodeType&&t,Pt=Nt&&typeof module==`object`&&module&&!module.nodeType&&module,Ft=Pt&&Pt.exports===Nt?v.Buffer:void 0,It=(Ft?Ft.isBuffer:void 0)||Mt,Lt=9007199254740991,Rt=/^(?:0|[1-9]\d*)$/;function zt(e,t){var n=typeof e;return t??=Lt,!!t&&(n==`number`||n!=`symbol`&&Rt.test(e))&&e>-1&&e%1==0&&e<t}var Bt=9007199254740991;function Vt(e){return typeof e==`number`&&e>-1&&e%1==0&&e<=Bt}var Ht=`[object Arguments]`,Ut=`[object Array]`,Wt=`[object Boolean]`,Gt=`[object Date]`,Kt=`[object Error]`,qt=`[object Function]`,Jt=`[object Map]`,Yt=`[object Number]`,Xt=`[object Object]`,Zt=`[object RegExp]`,Qt=`[object Set]`,$t=`[object String]`,en=`[object WeakMap]`,tn=`[object ArrayBuffer]`,nn=`[object DataView]`,rn=`[object Float32Array]`,an=`[object Float64Array]`,on=`[object Int8Array]`,sn=`[object Int16Array]`,cn=`[object Int32Array]`,ln=`[object Uint8Array]`,un=`[object Uint8ClampedArray]`,dn=`[object Uint16Array]`,fn=`[object Uint32Array]`,L={};L[rn]=L[an]=L[on]=L[sn]=L[cn]=L[ln]=L[un]=L[dn]=L[fn]=!0,L[Ht]=L[Ut]=L[tn]=L[Wt]=L[nn]=L[Gt]=L[Kt]=L[qt]=L[Jt]=L[Yt]=L[Xt]=L[Zt]=L[Qt]=L[$t]=L[en]=!1;function pn(e){return S(e)&&Vt(e.length)&&!!L[x(e)]}function mn(e){return function(t){return e(t)}}var hn=typeof t==`object`&&t&&!t.nodeType&&t,R=hn&&typeof module==`object`&&module&&!module.nodeType&&module,gn=R&&R.exports===hn&&ne.process,z=function(){try{return R&&R.require&&R.require(`util`).types||gn&&gn.binding&&gn.binding(`util`)}catch{}}(),_n=z&&z.isTypedArray,vn=_n?mn(_n):pn,yn=Object.prototype.hasOwnProperty;function bn(e,t){var n=I(e),r=!n&&jt(e),i=!n&&!r&&It(e),a=!n&&!r&&!i&&vn(e),o=n||r||i||a,s=o?Tt(e.length,String):[],c=s.length;for(var l in e)(t||yn.call(e,l))&&!(o&&(l==`length`||i&&(l==`offset`||l==`parent`)||a&&(l==`buffer`||l==`byteLength`||l==`byteOffset`)||zt(l,c)))&&s.push(l);return s}var xn=Object.prototype;function Sn(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||xn)}function Cn(e,t){return function(n){return e(t(n))}}var wn=Cn(Object.keys,Object),Tn=Object.prototype.hasOwnProperty;function En(e){if(!Sn(e))return wn(e);var t=[];for(var n in Object(e))Tn.call(e,n)&&n!=`constructor`&&t.push(n);return t}function B(e){return e!=null&&Vt(e.length)&&!We(e)}function Dn(e){return B(e)?bn(e):En(e)}function On(e,t){return e&&F(t,Dn(t),e)}function kn(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var An=Object.prototype.hasOwnProperty;function jn(e){if(!_(e))return kn(e);var t=Sn(e),n=[];for(var r in e)r==`constructor`&&(t||!An.call(e,r))||n.push(r);return n}function V(e){return B(e)?bn(e,!0):jn(e)}function Mn(e,t){return e&&F(t,V(t),e)}var Nn=typeof t==`object`&&t&&!t.nodeType&&t,Pn=Nn&&typeof module==`object`&&module&&!module.nodeType&&module,Fn=Pn&&Pn.exports===Nn?v.Buffer:void 0,In=Fn?Fn.allocUnsafe:void 0;function Ln(e,t){if(t)return e.slice();var n=e.length,r=In?In(n):new e.constructor(n);return e.copy(r),r}function Rn(e,t){var n=-1,r=e.length;for(t||=Array(r);++n<r;)t[n]=e[n];return t}function zn(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}function Bn(){return[]}var Vn=Object.prototype.propertyIsEnumerable,Hn=Object.getOwnPropertySymbols,Un=Hn?function(e){return e==null?[]:(e=Object(e),zn(Hn(e),function(t){return Vn.call(e,t)}))}:Bn;function Wn(e,t){return F(e,Un(e),t)}function Gn(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}var Kn=Cn(Object.getPrototypeOf,Object),qn=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)Gn(t,Un(e)),e=Kn(e);return t}:Bn;function Jn(e,t){return F(e,qn(e),t)}function Yn(e,t,n){var r=t(e);return I(e)?r:Gn(r,n(e))}function Xn(e){return Yn(e,Dn,Un)}function Zn(e){return Yn(e,V,qn)}var Qn=D(v,`DataView`),$n=D(v,`Promise`),er=D(v,`Set`),tr=D(v,`WeakMap`),nr=`[object Map]`,rr=`[object Object]`,ir=`[object Promise]`,ar=`[object Set]`,or=`[object WeakMap]`,sr=`[object DataView]`,cr=E(Qn),lr=E(O),ur=E($n),dr=E(er),fr=E(tr),H=x;(Qn&&H(new Qn(new ArrayBuffer(1)))!=sr||O&&H(new O)!=nr||$n&&H($n.resolve())!=ir||er&&H(new er)!=ar||tr&&H(new tr)!=or)&&(H=function(e){var t=x(e),n=t==rr?e.constructor:void 0,r=n?E(n):``;if(r)switch(r){case cr:return sr;case lr:return nr;case ur:return ir;case dr:return ar;case fr:return or}return t});var pr=H,mr=Object.prototype.hasOwnProperty;function hr(e){var t=e.length,n=new e.constructor(t);return t&&typeof e[0]==`string`&&mr.call(e,`index`)&&(n.index=e.index,n.input=e.input),n}var gr=v.Uint8Array;function _r(e){var t=new e.constructor(e.byteLength);return new gr(t).set(new gr(e)),t}function vr(e,t){var n=t?_r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}var yr=/\w*$/;function br(e){var t=new e.constructor(e.source,yr.exec(e));return t.lastIndex=e.lastIndex,t}var xr=y?y.prototype:void 0,Sr=xr?xr.valueOf:void 0;function Cr(e){return Sr?Object(Sr.call(e)):{}}function wr(e,t){var n=t?_r(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}var Tr=`[object Boolean]`,Er=`[object Date]`,Dr=`[object Map]`,Or=`[object Number]`,kr=`[object RegExp]`,Ar=`[object Set]`,jr=`[object String]`,Mr=`[object Symbol]`,Nr=`[object ArrayBuffer]`,Pr=`[object DataView]`,Fr=`[object Float32Array]`,Ir=`[object Float64Array]`,Lr=`[object Int8Array]`,Rr=`[object Int16Array]`,zr=`[object Int32Array]`,Br=`[object Uint8Array]`,Vr=`[object Uint8ClampedArray]`,Hr=`[object Uint16Array]`,Ur=`[object Uint32Array]`;function Wr(e,t,n){var r=e.constructor;switch(t){case Nr:return _r(e);case Tr:case Er:return new r(+e);case Pr:return vr(e,n);case Fr:case Ir:case Lr:case Rr:case zr:case Br:case Vr:case Hr:case Ur:return wr(e,n);case Dr:return new r;case Or:case jr:return new r(e);case kr:return br(e);case Ar:return new r;case Mr:return Cr(e)}}var Gr=Object.create,Kr=function(){function e(){}return function(t){if(!_(t))return{};if(Gr)return Gr(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function qr(e){return typeof e.constructor==`function`&&!Sn(e)?Kr(Kn(e)):{}}var Jr=`[object Map]`;function Yr(e){return S(e)&&pr(e)==Jr}var Xr=z&&z.isMap,Zr=Xr?mn(Xr):Yr,Qr=`[object Set]`;function $r(e){return S(e)&&pr(e)==Qr}var ei=z&&z.isSet,ti=ei?mn(ei):$r,ni=1,ri=2,ii=4,ai=`[object Arguments]`,oi=`[object Array]`,si=`[object Boolean]`,ci=`[object Date]`,li=`[object Error]`,ui=`[object Function]`,di=`[object GeneratorFunction]`,fi=`[object Map]`,pi=`[object Number]`,mi=`[object Object]`,hi=`[object RegExp]`,gi=`[object Set]`,_i=`[object String]`,vi=`[object Symbol]`,yi=`[object WeakMap]`,bi=`[object ArrayBuffer]`,xi=`[object DataView]`,Si=`[object Float32Array]`,Ci=`[object Float64Array]`,wi=`[object Int8Array]`,Ti=`[object Int16Array]`,Ei=`[object Int32Array]`,Di=`[object Uint8Array]`,Oi=`[object Uint8ClampedArray]`,ki=`[object Uint16Array]`,Ai=`[object Uint32Array]`,U={};U[ai]=U[oi]=U[bi]=U[xi]=U[si]=U[ci]=U[Si]=U[Ci]=U[wi]=U[Ti]=U[Ei]=U[fi]=U[pi]=U[mi]=U[hi]=U[gi]=U[_i]=U[vi]=U[Di]=U[Oi]=U[ki]=U[Ai]=!0,U[li]=U[ui]=U[yi]=!1;function W(e,t,n,r,i,a){var o,s=t&ni,c=t&ri,l=tⅈif(n&&(o=i?n(e,r,i,a):n(e)),o!==void 0)return o;if(!_(e))return e;var u=I(e);if(u){if(o=hr(e),!s)return Rn(e,o)}else{var d=pr(e),f=d==ui||d==di;if(It(e))return Ln(e,s);if(d==mi||d==ai||f&&!i){if(o=c||f?{}:qr(e),!s)return c?Jn(e,Mn(o,e)):Wn(e,On(o,e))}else{if(!U[d])return i?e:{};o=Wr(e,d,s)}}a||=new N;var p=a.get(e);if(p)return p;a.set(e,o),ti(e)?e.forEach(function(r){o.add(W(r,t,n,r,e,a))}):Zr(e)&&e.forEach(function(r,i){o.set(i,W(r,t,n,i,e,a))});var m=u?void 0:(l?c?Zn:Xn:c?V:Dn)(e);return xt(m||e,function(r,i){m&&(i=r,r=e[i]),wt(o,i,W(r,t,n,i,e,a))}),o}var ji=1,Mi=4;function Ni(e){return W(e,ji|Mi)}var Pi=`Expected a function`;function Fi(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(Pi);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(Fi.Cache||M),n}Fi.Cache=M;var Ii=`Expected a function`;function Li(e,t,n){var r=!0,i=!0;if(typeof e!=`function`)throw TypeError(Ii);return _(n)&&(r=`leading`in n?!!n.leading:r,i=`trailing`in n?!!n.trailing:i),ke(e,t,{leading:r,maxWait:t,trailing:i})}function Ri(e,t,n){(n!==void 0&&!C(e[t],n)||n===void 0&&!(t in e))&&St(e,t,n)}function zi(e){return function(t,n,r){for(var i=-1,a=Object(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(n(a[c],c,a)===!1)break}return t}}var Bi=zi();function Vi(e){return S(e)&&B(e)}var Hi=`[object Object]`,Ui=Function.prototype,Wi=Object.prototype,Gi=Ui.toString,Ki=Wi.hasOwnProperty,qi=Gi.call(Object);function Ji(e){if(!S(e)||x(e)!=Hi)return!1;var t=Kn(e);if(t===null)return!0;var n=Ki.call(t,`constructor`)&&t.constructor;return typeof n==`function`&&n instanceof n&&Gi.call(n)==qi}function Yi(e,t){if(!(t===`constructor`&&typeof e[t]==`function`)&&t!=`__proto__`)return e[t]}function Xi(e){return F(e,V(e))}function Zi(e,t,n,r,i,a,o){var s=Yi(e,n),c=Yi(t,n),l=o.get(c);if(l){Ri(e,n,l);return}var u=a?a(s,c,n+``,e,t,o):void 0,d=u===void 0;if(d){var f=I(c),p=!f&&It(c),m=!f&&!p&&vn(c);u=c,f||p||m?I(s)?u=s:Vi(s)?u=Rn(s):p?(d=!1,u=Ln(c,!0)):m?(d=!1,u=wr(c,!0)):u=[]:Ji(c)||jt(c)?(u=s,jt(s)?u=Xi(s):(!_(s)||We(s))&&(u=qr(c))):d=!1}d&&(o.set(c,u),i(u,c,r,a,o),o.delete(c)),Ri(e,n,u)}function Qi(e,t,n,r,i){e!==t&&Bi(t,function(a,o){if(i||=new N,_(a))Zi(e,t,o,n,Qi,r,i);else{var s=r?r(Yi(e,o),a,o+``,e,t,i):void 0;s===void 0&&(s=a),Ri(e,o,s)}},V)}function $i(e){return e}function ea(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}var ta=Math.max;function na(e,t,n){return t=ta(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,a=ta(r.length-t,0),o=Array(a);++i<a;)o[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=n(o),ea(e,this,s)}}function ra(e){return function(){return e}}var ia=P?function(e,t){return P(e,`toString`,{configurable:!0,enumerable:!1,value:ra(t),writable:!0})}:$i,aa=800,oa=16,sa=Date.now;function ca(e){var t=0,n=0;return function(){var r=sa(),i=oa-(r-n);if(n=r,i>0){if(++t>=aa)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var la=ca(ia);function ua(e,t){return la(na(e,t,$i),e+``)}function da(e,t,n){if(!_(n))return!1;var r=typeof t;return(r==`number`?B(n)&&zt(t,n.length):r==`string`&&t in n)?C(n[t],e):!1}function fa(e){return ua(function(t,n){var r=-1,i=n.length,a=i>1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=e.length>3&&typeof a==`function`?(i--,a):void 0,o&&da(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),t=Object(t);++r<i;){var s=n[r];s&&e(t,s,r,a)}return t})}var pa=fa(function(e,t,n){Qi(e,t,n)}),ma=100,G=new Map,K={width:window.innerWidth,height:window.innerHeight},ha=e=>{G.set(e,e)},ga=e=>{G.delete(e)},_a=ke(e=>{let t=e;t.topEvent={widthDiff:K.width-window.innerWidth,hightDiff:K.height-window.innerHeight},K.width=window.innerWidth,K.height=window.innerHeight,G.forEach(e=>e(t))},ma);t.A=pa,window.addEventListener(`resize`,_a);var va={addOnReize:ha,removeOnResize:ga},q={themeName:`light`,documentClassModificators:new Map,widthForMobile:900,dateFormat:`Y-m-d`,currency:`USD`,timezoneOffset:new Date().getTimezoneOffset()},ya={documentClassModificators:q.documentClassModificators,dateFormat:q.dateFormat,currency:q.currency,timezoneOffset:q.timezoneOffset,isMobile:!1,isMobileUA:!1,isRetina:!1,isApp:!1,isLandscape:!0,isPortrait:!1,size:0,isHidden:!1},ba=class{static async TopNotice(){await new Promise((t,n)=>{e([`./notice-CBraHnl2.amd`],t,n)}).then(__importStar)}static async TopPopup(){await new Promise((t,n)=>{e([`./popup--ITACA7I.amd`],t,n)}).then(__importStar)}static async TopDialog(){let{TopDialogWorker:t}=await new Promise((t,n)=>{e([`../core/app.amd`],t,n)}).then(__importStar);await t.getDialogsUtils()}},J,Y=class e{static _setState(){this.$=$,e.matchMediaIsMobile=window.matchMedia(`(max-width: ${e.widthForMobile}px)`),e.state.isMobileUA=u(),e.state.isRetina=l(),e.state.isApp=d(),e.useDocumentClassModificators(),e.useIsHidden(),e.setStateByWindowSize(),e.Events.addOnReize(e.onResize),e.onResize(),e.saveToCookie(),e.useCtrlClasses()}static useDocumentClassModificators(){(0,r.watch)(()=>[...e.state.documentClassModificators],(e,t)=>{let n=new Set;t?.forEach(([e,t])=>n.add(t)),e.forEach(([e,t])=>n.delete(t)),n.forEach(e=>document.documentElement.classList.remove(e)),e.forEach(([e,t])=>document.documentElement.classList.add(t))},{immediate:!0})}static useIsHidden(){document.addEventListener(`visibilitychange`,()=>{e.state.isHidden=document.hidden}),e.state.isHidden=document.hidden}static setStateByWindowSize(){e.state.isMobile=!!e.matchMediaIsMobile?.matches,e.state.isLandscape=window.innerWidth>window.innerHeight,e.state.isPortrait=!e.state.isLandscape,e.state.size=window.innerWidth>window.innerHeight?window.innerWidth:window.innerHeight,e.saveToCookie()}static onResize(){e.setStateByWindowSize()}static saveToCookie(){let t=[1,window.innerWidth,window.innerHeight,window.devicePixelRatio,Number(e.state.isMobile),Number(e.state.isRetina)];document.cookie=`device=`+t.join(`,`)+`; path=/;`}static useCtrlClasses(){let e=document.body.classList;document.addEventListener(`keydown`,t=>{(t.ctrlKey||t.metaKey)&&e.add(`top-body-press_ctrl`),t.altKey&&e.add(`top-body-press_alt`)}),document.addEventListener(`keyup`,()=>e.remove(`top-body-press_ctrl`,`top-body-press_alt`)),document.addEventListener(`keypress`,()=>e.remove(`top-body-press_ctrl`,`top-body-press_alt`)),window.addEventListener(`blur`,()=>e.remove(`top-body-press_ctrl`,`top-body-press_alt`))}};t.k=va,t.O=Y,J=Y,c(Y,`state`,(0,r.reactive)({...ya})),c(Y,`preloaders`,ba),c(Y,`widthForMobile`,q.widthForMobile),c(Y,`themeName`,q.themeName),c(Y,`matchMediaIsMobile`,void 0),c(Y,`$`,$),c(Y,`Events`,va),c(Y,`flags`,(0,r.reactive)({needLoadNotice:!1})),c(Y,`notice`,async(t,r,i)=>(J.flags.needLoadNotice=!0,(await new Promise((t,n)=>{e([`./notice-CBraHnl2.amd`],t,n)}).then(__importStar)).show(t,r,i))),c(Y,`insertCSSLinkToPage`,(e,t=!1)=>{let n=new Map;n.set(`::`,[]),e.forEach(e=>{let t=!1,r=!1;e.match(/\.m\./)&&(t=!0),e.match(/\.pc\./)&&(r=!0);let i=`${t}:${r}`;n.has(i)||n.set(`${t}:${r}`,[]),n.get(`${t}:${r}`).push(e)});let r=[];return n.forEach((e,n)=>{if(!e.length)return;let[i,a]=n.split(`:`).map(e=>e===`true`),o=`all`;i&&(o=`(max-width: `+J.widthForMobile+`px)`),a&&(o=`(min-width: `+J.widthForMobile+`px)`),J._insertToPage(e,o,t).forEach(e=>r.push(e))}),Promise.all(r)}),c(Y,`_insertToPage`,(e,t,n)=>{let r=[];return e.forEach(e=>{if(n){let t=new XMLHttpRequest;t.open(`GET`,e,!1),t.send()}let i=`topCSSLink-`+e.replace(/\W/g,`-`);if(window.hasOwnProperty(i))return;let a,o,s=new Promise((e,t)=>{a=e,o=t});r.push(s);let c=document.createElement(`link`);c.id=i,c.rel=`stylesheet`,c.media=t,c.href=e,c.onload=()=>a(),c.onerror=()=>o(),document.head.append(c)}),r}),c(Y,`insertStyleToPage`,(e,t=``)=>{let n=`all`;t===`m`&&(n=`(max-width: `+J.widthForMobile+`px)`),t===`pc`&&(n=`(min-width: `+J.widthForMobile+`px)`);let r=document.createElement(`style`);r.innerHTML=e,r.media=n,document.head.append(r)});var xa=(e,t)=>e.includes(`{{ `)?e.replace(/{{ (\$?\w+)(?:\.(\w+))? }}/g,(e,n,r)=>t[n]===void 0?e:typeof t[n]==`object`?!r||t[n][r]===void 0?e:String(t[n][r]):r?e:String(t[n])):e,Sa={install:(e,t)=>{let n=(t,n,r,i,a)=>{if(!e.config.globalProperties.$i18n[t][n])return``;let o=``;return i?o=a?e.config.globalProperties.$i18n[t][n]?.[i]?.[a]??``:e.config.globalProperties.$i18n[t][n]?.[i]??``:typeof e.config.globalProperties.$i18n[t][n]==`string`&&(o=e.config.globalProperties.$i18n[t][n]??``),o=xa(o+``,r),o};Object.setPrototypeOf(n,(0,r.reactive)(t.i18n)),e.config.globalProperties.$i18n=n,e.config.globalProperties.$i18nLang=(0,r.ref)(t.lang),e.config.globalProperties.i18n=e.config.globalProperties.$i18n,typeof window<`u`&&!window.requirejs&&(globalThis.$i18n=e.config.globalProperties.$i18n),e.provide(`$i18n`,e.config.globalProperties.$i18n),e.provide(`$i18nLang`,e.config.globalProperties.$i18nLang),e.provide(`i18n`,e.config.globalProperties.i18n)}},X=()=>!(0,r.getCurrentInstance)()&&window.mo?.user?.lang?requirejs(`i18n`).categories[mo.user.lang]:!(0,r.getCurrentInstance)()&&globalThis.$i18n?globalThis.$i18n:(0,r.inject)(`$i18n`);t.T=Sa,t.E=X,t.D=()=>!(0,r.getCurrentInstance)()&&window.mo?.user?.lang?(0,r.ref)(mo.user.lang):(0,r.inject)(`$i18nLang`),t.C=(e,t,n)=>{let r=X().Calendar;switch(new Date(e,--t,n).getDay()){case 0:return r.Dw_1+`.`;case 1:return r.Dw_2+`.`;case 2:return r.Dw_3+`.`;case 3:return r.Dw_4+`.`;case 4:return r.Dw_5+`.`;case 5:return r.Dw_6+`.`;case 6:return r.Dw_7+`.`;default:return``}},t.v=(e,t=!0,n=2)=>{let r=String(e.getFullYear()),i=String(e.getDate()).padStart(2,`0`),a=String(e.getMonth()+1).padStart(2,`0`),o=String(e.getHours()).padStart(2,`0`),s=String(e.getMinutes()).padStart(2,`0`),c=String(e.getSeconds()).padStart(2,`0`),l=r+`-`+a+`-`+i;return n>=1&&(l+=` `+o),n>=2&&(l+=`:`+s),n===3&&(l+=`:`+c),t&&(l=Z(l,n)),l};function Ca(e){if(e.indexOf(`T`)===-1){e.length==10&&(e+=` 00:00:00`);let t=Y.state.timezoneOffset>=0?`-`:`+`,n=Math.abs(Y.state.timezoneOffset)/60,r;if(Number.isInteger(n))r=t+n.toString().padStart(2,`0`)+`:00`;else{let e=Math.floor(n),i=Math.round((n-e)*60);r=t+e.toString().padStart(2,`0`)+`:`+i.toString().padStart(2,`0`)}e=e.replace(` `,`T`)+r}return new Date(e)}t.S=(e=new Date().getTime(),t=!0,n=0)=>wa(e,t,n,Y.state.timezoneOffset);function wa(e=new Date().getTime(),t=!0,n=0,r){let i=r?e+new Date().getTimezoneOffset()*60*1e3-r*60*1e3:e,a=new Date(i),o=a.getFullYear(),s=String(a.getMonth()+1).padStart(2,`0`),c=a.getDate().toString().padStart(2,`0`),l=a.getHours().toString().padStart(2,`0`),u=a.getMinutes().toString().padStart(2,`0`),d=a.getSeconds().toString().padStart(2,`0`);n===`auto`&&(n=0,a.getHours()&&(n=1),a.getMinutes()&&(n=2),a.getSeconds()&&(n=3));let f=o+`-`+s+`-`+c;return n&&(f+=` `),n>=1&&(f+=l),n>=2&&(f+=`:`+u),n>=3&&(f+=`:`+d),t&&(f=Z(r?f:a,n)),f}function Ta(e,t=!0){let n=new Date().getTimezoneOffset()/60*-1*60*60*1e3,r;r=e===void 0?new Date:new Date(e),r.setTime(r.getTime()-n+108e5);let i=String(r.getFullYear()),a=String(r.getDate()).padStart(2,`0`),o=String(r.getMonth()+1).padStart(2,`0`),s=String(r.getHours()).padStart(2,`0`),c=String(r.getMinutes()).padStart(2,`0`),l=String(r.getSeconds()).padStart(2,`0`),u=i+`-`+o+`-`+a+` `+s+`:`+c+`:`+l;return t&&(u=Z(u)),u}function Z(e,t=2,n,r){if(r||=X().Common.Not_date,typeof e==`string`&&(!e||e.substring(0,10)===`0000-00-00`)&&r&&r!==`0000-00-00`||!e)return r;n||=Y.state.dateFormat,n=n.toLowerCase().replace(`m`,`mm`).replace(`y`,`yy`).replace(`d`,`dd`);let i;if(e instanceof Date)i=e;else{let t=e.substring(0,10);if(t.length===7&&(t+=`-01`),t+=` 00:00`,t=t.replace(/-/g,`/`),i=new Date(t),isNaN(Number(i)))return r}let a=``;if(n){let e=String(i.getDate()).padStart(2,`0`),t=String(i.getMonth()+1).padStart(2,`0`),r=String(i.getFullYear());a=n.replace(`dd`,e).replace(`mm`,t).replace(`yy`,r)}if(t&&typeof e==`string`&&e.length>10||t&&e instanceof Date){let n=``;if(e instanceof Date)n=new Date().toLocaleTimeString(`en-US`,{hour12:!1,hour:`numeric`,minute:t>=2?`numeric`:void 0,second:t>=3?`numeric`:void 0});else switch(t){case 1:n=e.substring(11,13);break;case 2:n=e.substring(11,16);break;case 3:n=e.substring(11,19);break}a+=` `+n}return a=a.trim(),a}function Ea(e,t){if(t||=X().Common.Not_date,!e)return t;if(e.match(/\d\d\d\d-\d\d-\d\d/))return e;let n=Y.state.dateFormat.toLowerCase(),r=e.split(/\W/),i=n.split(/\W/),a=``,o=``,s=``;i.forEach((e,t)=>{switch(e){case`d`:a=r[t];break;case`m`:o=r[t];break;case`y`:s=r[t];break}});let c=s+`-`+o+`-`+a;return c.match(/\d\d\d\d-\d\d-\d\d/)||(console.info(`Неверный формат даты, будет возращена текущая дата, `+c),c=wa(new Date().getTime(),!1).substring(0,10)),c}var Da={class:`top-avatar`},Oa=[`src`,`title`],ka=[`title`],Aa=(0,r.defineComponent)({__name:`avatar`,props:{size:{default:64},image:{},nickname:{},isOnline:{type:Boolean},lastActiveTime:{},i18n:{default:()=>({Online:`Online`,LastSeen:`Last seen`})}},setup(e){(0,r.useCssVars)(e=>({v52a765e6:e.size+`px`}));let t=e,n=(0,r.computed)(()=>{if(t.isOnline)return t.i18n?.Online;if(t.lastActiveTime)return t.i18n?.LastSeen+`: `+Z(t.lastActiveTime,2)}),i=(0,r.computed)(()=>t.nickname?t.nickname+(n.value?`\n${n.value}`:``):n.value);return(t,a)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,Da,[(0,r.createElementVNode)(`img`,{class:`top-avatar_image`,src:e.image,title:i.value,alt:``},null,8,Oa),e.isOnline?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:`top-avatar_status`,title:n.value},null,8,ka)):(0,r.createCommentVNode)(``,!0)]))}}),ja=[`data-top-badge`],Ma={key:1,class:`top-ellipsis`},Na=(0,r.defineComponent)({__name:`button`,props:{color:{default:`blue`},styling:{default:``},size:{default:`s`},name:{},title:{},icon:{},icon2:{},href:{},badgeNumber:{},badgePosAfterText:{type:Boolean},disabled:{type:Boolean},isSubmit:{type:Boolean},isActive:{type:Boolean},isProgress:{type:Boolean},autoWidth:{type:Boolean}},setup(e){let t=e,n=(0,r.computed)(()=>t.href?`a`:`button`),i=(0,r.computed)(()=>t.isSubmit?`submit`:void 0);return(t,a)=>((0,r.openBlock)(),(0,r.createBlock)((0,r.resolveDynamicComponent)(n.value),{class:(0,r.normalizeClass)({"top-active":e.isActive,"top-disabled":e.disabled,"top-forms-focusable":!e.disabled,"top-button":!0,"top-button-progress":e.isProgress,[`top-size_${e.size}`]:!!e.size,[`top-color_${e.color}`]:!0,[`top-style_${e.styling}`]:!!e.styling,"top-button-autoWidth":e.autoWidth,"top-button-withoutText":!t.$slots.default}),name:e.name,title:e.title,href:e.href,type:i.value,"data-top-icon":e.icon||void 0,"data-top-icon2":e.icon2||void 0,disabled:e.disabled||void 0,inProgress:e.isProgress},{default:(0,r.withCtx)(()=>[e.badgeNumber?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,{key:0,"data-top-badge":e.badgeNumber,class:(0,r.normalizeClass)([`top-button_badge`,{"top-button_badge-afterText":e.badgePosAfterText}])},null,10,ja)):(0,r.createCommentVNode)(``,!0),t.$slots.default?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,Ma,[(0,r.renderSlot)(t.$slots,`default`,{},()=>[(0,r.createTextVNode)((0,r.toDisplayString)(e.icon?``:`Button`),1)])])):(0,r.createCommentVNode)(``,!0),(0,r.renderSlot)(t.$slots,`html`)]),_:3},8,[`class`,`name`,`title`,`href`,`type`,`data-top-icon`,`data-top-icon2`,`disabled`,`inProgress`]))}}),Pa={class:`top-caption`},Fa={class:`top-caption_text`},Ia=(0,r.defineComponent)({__name:`caption`,props:{text:{}},setup(e){return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`label`,Pa,[(0,r.createElementVNode)(`div`,Fa,[(0,r.renderSlot)(t.$slots,`text`,{},()=>[(0,r.createTextVNode)((0,r.toDisplayString)(e.text?e.text:`\xA0`),1)])]),(0,r.renderSlot)(t.$slots,`default`)]))}}),La={class:`top-forms-optionLabel`},Q=(0,r.defineComponent)({__name:`controlLabel`,props:{description:{},disabled:{type:Boolean}},setup(e){return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,La,[(0,r.createElementVNode)(`div`,{class:(0,r.normalizeClass)({"top-forms-optionLabel_title":!0,"top-forms-optionLabel_title-disabled":e.disabled})},[(0,r.renderSlot)(t.$slots,`default`)],2),e.description?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:0,class:(0,r.normalizeClass)([`top-forms-optionLabel_description`,{"top-forms-optionLabel_description-disabled":e.disabled}])},(0,r.toDisplayString)(e.description),3)):(0,r.createCommentVNode)(``,!0)]))}}),Ra=[`name`,`value`,`indeterminate`,`disabled`],za=(0,r.defineComponent)({__name:`checkbox`,props:(0,r.mergeModels)({modelValue:{type:[Boolean,Array,Set]},name:{},value:{},description:{},disabled:{type:Boolean},indeterminate:{type:Boolean},isError:{type:Boolean}},{modelValue:{type:[Boolean,Array,Set]},modelModifiers:{}}),emits:[`update:modelValue`],setup(e){let t=(0,r.useModel)(e,`modelValue`);return(n,i)=>{let a=(0,r.resolveDirective)(`top-focus`);return(0,r.openBlock)(),(0,r.createElementBlock)(`label`,{class:(0,r.normalizeClass)({"top-forms-optionWrapper":!0,"top-checkbox":!0,[`top-checkbox_`+e.name]:!!e.name,"top-disabled":e.disabled,"top-error":e.isError&&!e.disabled})},[(0,r.withDirectives)((0,r.createElementVNode)(`input`,{type:`checkbox`,class:(0,r.normalizeClass)({"top-forms-focusable":!e.disabled,"top-forms-option":!0,"top-checkbox_input":!0,"top-error":e.isError&&!e.disabled}),name:e.name,"onUpdate:modelValue":i[0]||=e=>t.value=e,value:e.value,indeterminate:e.indeterminate,disabled:e.disabled},null,10,Ra),[[a,e.isError,void 0,{onupdate:!0}],[r.vModelCheckbox,t.value]]),n.$slots.default?((0,r.openBlock)(),(0,r.createBlock)(Q,{key:0,description:e.description,disabled:e.disabled},{default:(0,r.withCtx)(()=>[(0,r.renderSlot)(n.$slots,`default`)]),_:3},8,[`description`,`disabled`])):(0,r.createCommentVNode)(``,!0)],2)}}}),Ba=[`title`],Va=(0,r.defineComponent)({__name:`hint`,props:{hint:{}},setup(e){return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`span`,{class:`top-hint`,"data-top-icon":``,title:e.hint},null,8,Ba))}}),Ha=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},Ua={},Wa={class:`top-loadbar`};t.g=Aa,t.h=Na,t.m=Ia,t.p=Q,t.f=za,t.d=Va,t.u=Ha;function Ga(e,t){return(0,r.openBlock)(),(0,r.createElementBlock)(`div`,Wa)}var Ka=Ha(Ua,[[`render`,Ga]]),qa=[`data-top-icon`,`data-top-icon2`],Ja=[`name`,`title`,`placeholder`,`disabled`,`readonly`,`data-1p-ignore`],Ya={key:2,class:`top-formsCaption`},Xa=(0,r.defineComponent)({inheritAttrs:!1,__name:`input`,props:{modelValue:{},name:{},disabled:{type:Boolean},readonly:{type:Boolean},modificator:{},size:{default:`s`},styling:{default:``},isError:{type:Boolean},isLoading:{type:Boolean},icon:{},icon2:{},addCleaner:{type:Boolean},title:{},captionType:{default:``}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,i=t,a=(0,r.computed)({get(){return n.modelValue},set(e){i(`update:modelValue`,e)}}),o=(0,r.computed)(()=>n.addCleaner&&!n.title||n.captionType!==``?``:n.title),s=e=>{n.modelValue&&e.stopPropagation(),i(`update:modelValue`,``)};return(t,n)=>{let i=(0,r.resolveDirective)(`top-focus`);return(0,r.openBlock)(),(0,r.createElementBlock)(`label`,{class:(0,r.normalizeClass)({"top-input":!0,[`top-size_`+e.size]:!0,"top-disabled":e.disabled,[`top-input-`+e.modificator]:!!e.modificator,"top-input-withCleaner":e.addCleaner&&a.value&&a.value!==`0000-00-00`,"top-formsCaptionWrapper":e.captionType!==``,"top-formsCaptionWrapper-always":e.captionType===`top`}),"data-top-icon":e.icon,"data-top-icon2":e.icon2},[e.isLoading?((0,r.openBlock)(),(0,r.createBlock)(Ka,{key:0})):(0,r.createCommentVNode)(``,!0),(0,r.withDirectives)((0,r.createElementVNode)(`input`,(0,r.mergeProps)({type:`text`,class:{"top-input_input":!0,[`top-input_input-`+e.modificator]:!!e.modificator,"top-forms-focusable":!e.disabled,"top-error":e.isError,[`top-style_${e.styling}`]:!!e.styling},autocomplete:`off_always`,name:e.name,"onUpdate:modelValue":n[0]||=e=>a.value=e,title:e.title,placeholder:o.value,disabled:e.disabled,readonly:e.readonly,onKeydown:n[1]||=(0,r.withKeys)(t=>e.addCleaner&&s(t),[`esc`]),"data-1p-ignore":t.$attrs.type!==`email`&&t.$attrs.type!==`password`},t.$attrs),null,16,Ja),[[i,e.isError,void 0,{onupdate:!0}],[r.vModelText,a.value]]),e.addCleaner&&a.value&&a.value!==`0000-00-00`?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,{key:1,class:`top-input_cleaner`,"data-top-icon":``,onClick:(0,r.withModifiers)(s,[`prevent`])})):(0,r.createCommentVNode)(``,!0),e.captionType===``?(0,r.createCommentVNode)(``,!0):((0,r.openBlock)(),(0,r.createElementBlock)(`span`,Ya,[e.captionType===`top`?(0,r.renderSlot)(t.$slots,`caption`,{key:0},()=>[(0,r.createTextVNode)((0,r.toDisplayString)(e.title),1)]):((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:1},[(0,r.createTextVNode)((0,r.toDisplayString)(e.title),1)],64))])),(0,r.renderSlot)(t.$slots,`default`)],10,qa)}}}),Za=[`value`],Qa=!!document.documentElement.ontouchstart&&!!document.createElement(`input`).showPicker,$a=e=>{},eo=(0,r.defineComponent)({__name:`inputDate`,props:{modelValue:{},name:{},disabled:{type:Boolean},readonly:{type:Boolean},modificator:{},size:{},styling:{},isError:{type:Boolean},isLoading:{type:Boolean},icon:{},icon2:{default:``},addCleaner:{type:Boolean},title:{},captionType:{}},emits:[`update:modelValue`],setup(t,{emit:i}){let a=X(),o=t,s=i;(0,r.onUnmounted)(()=>{l&&l.datepicker(`destroy`)});let c=(0,r.ref)(),l,u=(0,r.computed)({get(){return Z(o.modelValue,2,void 0,`0000-00-00`)},set(e){e=Ea(e,`0000-00-00`),s(`update:modelValue`,e)}}),d=e=>{$a(e)},f=e=>{let t=Z(Ea(e.target.value));if(!t||t===a.Common.Not_date||e.target.value!==t){e.target.value=u.value;return}u.value=e.target.value};async function p(t){let r=await new Promise((t,n)=>{e([`./datepicker-06ASYGz9.amd`],t,n)}).then(__importStar);$a=r.oninput,l=r.connectDatepicker(t.target,{onSelect:()=>f(t)}),l&&l.datepicker(`show`)}return(e,n)=>(0,r.unref)(Qa)?((0,r.openBlock)(),(0,r.createBlock)(Xa,(0,r.mergeProps)({key:0},e.$props,{modelValue:u.value,readonly:``,onClick:n[1]||=e=>c.value.showPicker()}),{default:(0,r.withCtx)(()=>[(0,r.createElementVNode)(`input`,{ref_key:`el`,ref:c,type:`date`,class:`top-input_input-date`,value:t.modelValue,onChange:n[0]||=e=>u.value=e.target.value,tabindex:`-1`},null,40,Za)]),_:1},16,[`modelValue`])):((0,r.openBlock)(),(0,r.createBlock)(Xa,(0,r.mergeProps)({key:1},e.$props,{modelValue:u.value,"onUpdate:modelValue":n[2]||=e=>e===``?u.value=``:``,onInput:(0,r.unref)(d),onFocusOnce:p,onChange:(0,r.unref)(f),modificator:`datepicker`}),null,16,[`modelValue`,`onInput`,`onChange`]))}}),to={class:`top-inputRange`},no=(0,r.defineComponent)({__name:`inputRange`,setup(e){return(e,t)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,to,[(0,r.renderSlot)(e.$slots,`from`),t[0]||=(0,r.createElementVNode)(`span`,{class:`top-inputRange_dash`},` — `,-1),(0,r.renderSlot)(e.$slots,`to`)]))}}),ro=[`name`,`value`,`disabled`],io=(0,r.defineComponent)({__name:`radio`,props:{modelValue:{},value:{},name:{},description:{},disabled:{type:Boolean},isError:{type:Boolean}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,i=t,a=(0,r.computed)({get(){return n.modelValue},set(e){i(`update:modelValue`,e)}});return(t,n)=>{let i=(0,r.resolveDirective)(`top-focus`);return(0,r.openBlock)(),(0,r.createElementBlock)(`label`,{class:(0,r.normalizeClass)({"top-forms-optionWrapper":!0,"top-radio":!0,[`top-radio_`+e.name]:e.name!==``,"top-disabled":e.disabled,"top-error":e.isError&&!e.disabled})},[(0,r.withDirectives)((0,r.createElementVNode)(`input`,{type:`radio`,class:(0,r.normalizeClass)({"top-forms-focusable":!e.disabled,"top-forms-option":!0,"top-radio_input":!0,"top-error":e.isError&&!e.disabled}),"onUpdate:modelValue":n[0]||=e=>a.value=e,name:e.name,value:e.value,disabled:e.disabled},null,10,ro),[[i,e.isError,void 0,{onupdate:!0}],[r.vModelRadio,a.value]]),t.$slots.default?((0,r.openBlock)(),(0,r.createBlock)(Q,{key:0,description:e.description,disabled:e.disabled},{default:(0,r.withCtx)(()=>[(0,r.renderSlot)(t.$slots,`default`)]),_:3},8,[`description`,`disabled`])):(0,r.createCommentVNode)(``,!0)],2)}}}),ao=[`name`,`value`,`disabled`],oo=(0,r.defineComponent)({__name:`switcher`,props:{modelValue:{type:[Boolean,Array,Set]},name:{},value:{},description:{},disabled:{type:Boolean},isError:{type:Boolean}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,i=t,a=(0,r.computed)({get(){return n.modelValue},set(e){i(`update:modelValue`,e)}});return(t,n)=>{let i=(0,r.resolveDirective)(`top-focus`);return(0,r.openBlock)(),(0,r.createElementBlock)(`label`,{class:(0,r.normalizeClass)({"top-forms-optionWrapper":!0,"top-checkboxSwitcher":!0,"top-disabled":e.disabled,"top-error":e.isError&&!e.disabled})},[(0,r.withDirectives)((0,r.createElementVNode)(`input`,{type:`checkbox`,class:(0,r.normalizeClass)({"top-forms-focusable":!e.disabled,"top-forms-option":!0,"top-checkboxSwitcher_input":!0,"top-error":e.isError&&!e.disabled}),"onUpdate:modelValue":n[0]||=e=>a.value=e,name:e.name,value:e.value,disabled:e.disabled},null,10,ao),[[i,e.isError,void 0,{onupdate:!0}],[r.vModelCheckbox,a.value]]),t.$slots.default?((0,r.openBlock)(),(0,r.createBlock)(Q,{key:0,description:e.description,disabled:e.disabled},{default:(0,r.withCtx)(()=>[(0,r.renderSlot)(t.$slots,`default`)]),_:3},8,[`description`,`disabled`])):(0,r.createCommentVNode)(``,!0)],2)}}}),so=[`name`,`placeholder`,`disabled`,`readonly`,`rows`,`maxlength`],co={key:0,class:`top-textarea_pseudoContent`},lo=(0,r.defineComponent)({inheritAttrs:!1,__name:`textarea`,props:{modelValue:{},name:{},placeholder:{},styling:{default:``},rows:{default:5},minHeight:{default:120},expandable:{type:Boolean},disabled:{type:Boolean},readonly:{type:Boolean},isError:{type:Boolean},hint:{},maxLength:{}},emits:[`update:modelValue`],setup(e,{emit:t}){(0,r.useCssVars)(e=>({v7e3a2156:e.minHeight+`px`}));let n=e,i=t,a=(0,r.computed)({get(){return n.modelValue},set(e){i(`update:modelValue`,e)}});return(t,n)=>{let i=(0,r.resolveDirective)(`top-focus`),o=(0,r.resolveDirective)(`top-tooltip`);return(0,r.openBlock)(),(0,r.createElementBlock)(`label`,{class:(0,r.normalizeClass)({"top-textarea":!0,[`top-textarea-`+e.name]:e.name,"top-disabled":e.disabled})},[(0,r.withDirectives)((0,r.createElementVNode)(`textarea`,(0,r.mergeProps)({type:`text`,class:{"top-forms-focusable":!e.disabled,"top-textarea_textarea":!0,"top-textarea_textarea-expandable":e.expandable,"top-error":e.isError,[`top-style_${e.styling}`]:!!e.styling},autocomplete:`off_always`,name:e.name,placeholder:e.placeholder,disabled:e.disabled,readonly:e.readonly,rows:e.expandable?void 0:e.rows,maxlength:e.maxLength},t.$attrs,{"onUpdate:modelValue":n[0]||=e=>a.value=e}),null,16,so),[[i,e.isError,void 0,{onupdate:!0}],[r.vModelText,a.value]]),e.expandable?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,co,(0,r.toDisplayString)(a.value+` `),1)):(0,r.createCommentVNode)(``,!0),e.hint?(0,r.withDirectives)(((0,r.openBlock)(),(0,r.createBlock)(Va,{key:1,class:`top-textarea_hint`,hint:e.hint},null,8,[`hint`])),[[o]]):(0,r.createCommentVNode)(``,!0),e.maxLength?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{key:2,class:(0,r.normalizeClass)([`top-textarea_counter`,{"top-textarea_counter-max":a.value.length>=e.maxLength}])},(0,r.toDisplayString)(a.value.length)+`/`+(0,r.toDisplayString)(e.maxLength),3)):(0,r.createCommentVNode)(``,!0)],2)}}}),uo=[`data-value`,`data-top-icon`,`data-top-icon2`],fo=[`name`,`disabled`],po=[`label`,`disabled`],ho=[`value`,`selected`,`disabled`],go=[`value`,`selected`,`disabled`],_o={key:1,class:`top-formsCaption`},vo=(0,r.defineComponent)({__name:`select`,props:(0,r.mergeModels)({modelValue:{type:[String,Number,Boolean]},options:{},name:{},disabled:{type:Boolean},icon:{},size:{default:`s`},styling:{default:``},addChanger:{type:Boolean},title:{},isError:{type:Boolean}},{modelValue:{type:[String,Number,Boolean],required:!0},modelModifiers:{}}),emits:(0,r.mergeModels)([`update:modelValue`],[`update:modelValue`]),setup(e){let t=e,n=(0,r.useModel)(e,`modelValue`),i=(0,r.computed)(()=>{let e=new Map;return t.options.forEach((t,n)=>{if(typeof t==`string`&&(t=o(n,t)),t.children){let n=new Map;t.children.forEach((e,t)=>{typeof e==`string`&&(e=o(t,e)),n.set(e.value,e)}),t={...t},t.children=n,e.set(t.value,t)}else e.set(t.value,t)}),e}),a=(0,r.computed)(()=>{let e=new Map;return i.value.forEach(t=>{if(!t.disabled){if(t.children){t.children.forEach(t=>{t.disabled||e.set(t.value,t)});return}e.set(t.value,t)}}),e}),o=(e,t)=>({value:e,title:t});(0,r.watch)([()=>t.modelValue,a],()=>{(n.value===null||n.value===void 0)&&a.value.size&&(console.warn(`Пожалуйста, не передавайте в компонент Select значения null и undefined`),n.value=a.value.keys().next().value)},{immediate:!0});let s=(0,r.computed)(()=>a.value.get(n.value)?.icon),c=()=>{let e=[...a.value.keys()];n.value=e[(e.indexOf(n.value)+1)%e.length]};return(t,o)=>{let l=(0,r.resolveDirective)(`top-focus`);return(0,r.openBlock)(),(0,r.createElementBlock)(`label`,{class:(0,r.normalizeClass)({"top-select":!0,[`top-select-`+e.name]:e.name,[`top-size_`+e.size]:!0,"top-formsCaptionWrapper":!!(e.title||t.$slots.caption),"top-select-error":e.isError,"top-disabled":e.disabled}),"data-value":n.value,"data-top-icon":e.icon,"data-top-icon2":s.value},[(0,r.withDirectives)(((0,r.openBlock)(),(0,r.createElementBlock)(`select`,{class:(0,r.normalizeClass)({"top-forms-focusable":!e.disabled,"top-select_select":!0,"top-as-selector":!0,"top-error":e.isError,[`top-style_${e.styling}`]:!!e.styling}),name:e.name,disabled:e.disabled,"onUpdate:modelValue":o[0]||=e=>n.value=e},[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(i.value,([e,t])=>((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,null,[t.children?((0,r.openBlock)(),(0,r.createElementBlock)(`optgroup`,{key:`group_`+e,label:t.title,disabled:t.disabled},[((0,r.openBlock)(!0),(0,r.createElementBlock)(r.Fragment,null,(0,r.renderList)(t.children,([e,t])=>((0,r.openBlock)(),(0,r.createElementBlock)(`option`,{key:String(e),value:e,selected:e===n.value,disabled:t.disabled},(0,r.toDisplayString)(t.title),9,ho))),128))],8,po)):((0,r.openBlock)(),(0,r.createElementBlock)(`option`,{key:e?String(e):void 0,value:e,selected:e===n.value,disabled:t.disabled},(0,r.toDisplayString)(t.title),9,go))],64))),256))],10,fo)),[[l,e.isError,void 0,{onupdate:!0}],[r.vModelSelect,n.value]]),e.addChanger&&a.value.size&&!e.disabled?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,{key:0,class:`top-changer`,onClick:c})):(0,r.createCommentVNode)(``,!0),e.title||t.$slots.caption?((0,r.openBlock)(),(0,r.createElementBlock)(`span`,_o,[(0,r.renderSlot)(t.$slots,`caption`,{},()=>[(0,r.createTextVNode)((0,r.toDisplayString)(e.title),1)])])):(0,r.createCommentVNode)(``,!0)],10,uo)}}}),yo=(0,r.defineComponent)({__name:`preloader`,props:{type:{}},setup(e){return(t,n)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)({[`top-preloader-`+e.type]:!0})},[e.type===`circles`?((0,r.openBlock)(),(0,r.createElementBlock)(r.Fragment,{key:0},(0,r.renderList)([1,2,3],e=>(0,r.createElementVNode)(`i`)),64)):(0,r.createCommentVNode)(``,!0)],2))}});t.l=Ka,t.c=Xa,t.s=eo,t.o=no,t.a=io,t.i=oo,t.r=lo,t.n=vo,t.t=yo});
|
|
2
|
+
//# sourceMappingURL=forms-3oS4Utyg.amd.js.map
|