@topvisor/ui 0.9.5 → 0.9.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.chunks/datepicker-0tFN0clU.amd.js +234 -0
- package/.chunks/datepicker-0tFN0clU.amd.js.map +1 -0
- package/.chunks/datepicker-8geHBNBn.es.js +275 -0
- package/.chunks/datepicker-8geHBNBn.es.js.map +1 -0
- package/.chunks/{forms-9516aa6c.es.js → forms-dneLtREE.es.js} +16 -15
- package/.chunks/forms-dneLtREE.es.js.map +1 -0
- package/.chunks/forms-hIalWiGK.amd.js +3 -0
- package/.chunks/forms-hIalWiGK.amd.js.map +1 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-bLJ0dcPn.amd.js +2 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-bLJ0dcPn.amd.js.map +1 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-qWOlkuQ3.es.js +148 -0
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-qWOlkuQ3.es.js.map +1 -0
- package/.chunks/{popup-d96418da.amd.js → popup-2azH2gGP.amd.js} +378 -378
- package/.chunks/popup-2azH2gGP.amd.js.map +1 -0
- package/.chunks/{popup-70a8c892.es.js → popup-GFcVEZf5.es.js} +423 -423
- package/.chunks/popup-GFcVEZf5.es.js.map +1 -0
- package/README.md +80 -80
- package/assets/core.css +1 -1
- package/assets/forms.css +1 -1
- package/assets/light.css +1 -1
- package/core/core.amd.js +1 -1
- package/core/core.js +1 -1
- package/forms/forms.amd.js +1 -1
- package/forms/forms.js +1 -1
- package/forms/helpers.amd.js +1 -1
- package/forms/helpers.amd.js.map +1 -1
- package/forms/helpers.js +2 -2
- package/forms/helpers.js.map +1 -1
- package/formsExt/formsExt.amd.js +1 -1
- package/formsExt/formsExt.amd.js.map +1 -1
- package/formsExt/formsExt.js +1 -1
- package/formsExt/formsExt.js.map +1 -1
- package/icomoon/demo-files/demo.css +161 -161
- package/icomoon/demo-files/demo.js +30 -30
- package/icomoon/demo.html +2945 -2945
- package/icomoon/fonts/Topvisor-2.svg +232 -232
- package/icomoon/style.css +647 -647
- package/package.json +19 -22
- package/popup/popup.amd.js +1 -1
- package/popup/popup.amd.js.map +1 -1
- package/popup/popup.js +7 -146
- package/popup/popup.js.map +1 -1
- package/popup/worker.amd.js +1 -1
- package/popup/worker.amd.js.map +1 -1
- package/popup/worker.js +2 -2
- package/popup/worker.js.map +1 -1
- package/require/css.amd.js +11 -11
- package/src/components/forms/avatar/avatar.stories.d.ts +1 -1
- package/src/components/forms/avatar/avatar.vue.d.ts +1 -1
- package/src/components/forms/button/button.d.ts +2 -2
- package/src/components/forms/button/button.stories.d.ts +6 -1
- package/src/components/forms/button/button.vue.d.ts +2 -1
- package/src/components/forms/checkbox/checkbox.vue.d.ts +1 -1
- package/src/components/forms/controlLabel/controlLabel.vue.d.ts +1 -1
- package/src/components/forms/helpers.d.ts +1 -1
- package/src/components/forms/hint/hint.stories.d.ts +2 -2
- package/src/components/forms/hint/hint.vue.d.ts +1 -1
- package/src/components/forms/input/input.d.ts +2 -2
- package/src/components/forms/input/input.vue.d.ts +1 -1
- package/src/components/forms/inputDate/inputDate.d.ts +2 -2
- package/src/components/forms/inputDate/inputDate.stories.d.ts +1 -1
- package/src/components/forms/inputDate/inputDate.vue.d.ts +1 -1
- package/src/components/forms/inputRange/inputRange.vue.d.ts +1 -1
- package/src/components/forms/radio/radio.vue.d.ts +1 -1
- package/src/components/forms/select/select.d.ts +2 -2
- package/src/components/forms/select/select.stories.d.ts +1 -1
- package/src/components/forms/select/select.vue.d.ts +1 -1
- package/src/components/forms/switcher/switcher.vue.d.ts +1 -1
- package/src/components/forms/textarea/textarea.stories.d.ts +1 -1
- package/src/components/forms/textarea/textarea.vue.d.ts +1 -1
- package/src/components/formsExt/editArea/editArea.d.ts +1 -1
- package/src/components/formsExt/editArea/editArea.stories.d.ts +1 -1
- package/src/components/formsExt/editArea/editArea.vue.d.ts +1 -1
- package/src/components/formsExt/editInput/editInput.d.ts +2 -2
- package/src/components/formsExt/editInput/editInput.vue.d.ts +1 -1
- package/src/components/formsExt/radioGroup/radioGroup.d.ts +2 -2
- package/src/components/formsExt/radioGroup/radioGroup.stories.d.ts +1 -1
- package/src/components/formsExt/radioGroup/radioGroup.vue.d.ts +1 -1
- package/src/components/popup/popup/listItem.vue.d.ts +1 -1
- package/src/components/popup/popup/opener.vue.d.ts +1 -1
- package/src/components/popup/popup/popup.stories.d.ts +1 -0
- package/src/components/popup/popup/popup.vue.d.ts +1 -1
- package/src/components/tabs/tabs/content.vue.d.ts +1 -1
- package/src/components/tabs/tabs/tab.vue.d.ts +1 -1
- package/src/components/tabs/tabs/tabs.stories.d.ts +3 -2
- package/src/components/tabs/tabs/tabs.vue.d.ts +1 -1
- package/src/components/tabsView/tabsView/content.vue.d.ts +1 -1
- package/src/components/tabsView/tabsView/menu.vue.d.ts +1 -1
- package/src/components/tabsView/tabsView/menuDelimeter.vue.d.ts +1 -1
- package/src/components/tabsView/tabsView/menuItem.vue.d.ts +1 -1
- package/src/components/tabsView/tabsView/menuTitle.vue.d.ts +1 -1
- package/src/components/tabsView/tabsView/tabsView.d.ts +1 -1
- package/src/components/tabsView/tabsView/tabsView.vue.d.ts +1 -1
- package/src/core/core/core.d.ts +1 -1
- package/tabs/tabs.amd.js +1 -1
- package/tabs/tabs.js +1 -1
- package/tabsView/tabsView.amd.js +1 -1
- package/tabsView/tabsView.amd.js.map +1 -1
- package/tabsView/tabsView.js +27 -27
- package/tabsView/tabsView.js.map +1 -1
- package/utils/css.amd.js.map +1 -1
- package/utils/css.js.map +1 -1
- package/utils/date.amd.js +1 -1
- package/utils/date.js +1 -1
- package/utils/device.amd.js +1 -1
- package/utils/device.js +1 -1
- package/utils/dom.amd.js.map +1 -1
- package/utils/dom.js.map +1 -1
- package/.chunks/datepicker-78c2af5a.es.js +0 -275
- package/.chunks/datepicker-78c2af5a.es.js.map +0 -1
- package/.chunks/datepicker-cc0011e1.amd.js +0 -234
- package/.chunks/datepicker-cc0011e1.amd.js.map +0 -1
- package/.chunks/forms-9516aa6c.es.js.map +0 -1
- package/.chunks/forms-9972aba2.amd.js +0 -3
- package/.chunks/forms-9972aba2.amd.js.map +0 -1
- package/.chunks/popup-70a8c892.es.js.map +0 -1
- package/.chunks/popup-d96418da.amd.js.map +0 -1
- /package/assets/{popup.css → listItem.css} +0 -0
package/package.json
CHANGED
|
@@ -1,22 +1,19 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@topvisor/ui",
|
|
3
|
-
"private": false,
|
|
4
|
-
"version": "0.9.
|
|
5
|
-
"type": "module",
|
|
6
|
-
"description": "Topvisor UI-kit Vue",
|
|
7
|
-
"author": "Topvisor",
|
|
8
|
-
"keywords": [
|
|
9
|
-
"topvisor",
|
|
10
|
-
"vue",
|
|
11
|
-
"ui framework",
|
|
12
|
-
"component framework",
|
|
13
|
-
"component library"
|
|
14
|
-
],
|
|
15
|
-
"license": "MIT",
|
|
16
|
-
"peerDependencies": {
|
|
17
|
-
"vue": "^3.
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
"@topvisor/ui": "^0.9.2"
|
|
21
|
-
}
|
|
22
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@topvisor/ui",
|
|
3
|
+
"private": false,
|
|
4
|
+
"version": "0.9.7",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"description": "Topvisor UI-kit Vue",
|
|
7
|
+
"author": "Topvisor",
|
|
8
|
+
"keywords": [
|
|
9
|
+
"topvisor",
|
|
10
|
+
"vue",
|
|
11
|
+
"ui framework",
|
|
12
|
+
"component framework",
|
|
13
|
+
"component library"
|
|
14
|
+
],
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"peerDependencies": {
|
|
17
|
+
"vue": "^3.4.6"
|
|
18
|
+
}
|
|
19
|
+
}
|
package/popup/popup.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-
|
|
1
|
+
define(["require","exports","../.chunks/listItem.vue_vue_type_script_setup_true_lang-bLJ0dcPn.amd","vue","../.chunks/forms-hIalWiGK.amd","./worker.amd","../utils/dom.amd"],function(i,e,o,u,n,d,m){"use strict";if(typeof u>"u")var u=window.Vue;e.Popup=o._sfc_main,e.PopupListItem=o._sfc_main$2,e.PopupOpener=o._sfc_main$1,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=popup.amd.js.map
|
package/popup/popup.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popup.amd.js","sources":[
|
|
1
|
+
{"version":3,"file":"popup.amd.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/popup/popup.js
CHANGED
|
@@ -1,150 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
1
|
+
import { _ as a, b as e, a as s } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-qWOlkuQ3.es.js";
|
|
2
|
+
import "vue";
|
|
3
|
+
import "../.chunks/forms-dneLtREE.es.js";
|
|
4
|
+
import "./worker.js";
|
|
5
5
|
import "../utils/dom.js";
|
|
6
|
-
const $ = ["../assets/popup.css"].map((r) => import.meta.resolve(r));
|
|
7
|
-
await C($);
|
|
8
|
-
const E = /* @__PURE__ */ y({
|
|
9
|
-
__name: "opener",
|
|
10
|
-
props: {
|
|
11
|
-
id: {},
|
|
12
|
-
pos: { default: "3" },
|
|
13
|
-
notch: { type: Boolean, default: !0 },
|
|
14
|
-
openByHover: { type: Boolean },
|
|
15
|
-
posBy: { default: "fixed" }
|
|
16
|
-
},
|
|
17
|
-
setup(r) {
|
|
18
|
-
const o = r, s = o.id || Math.random() + "";
|
|
19
|
-
let n;
|
|
20
|
-
function c(t) {
|
|
21
|
-
setTimeout(() => {
|
|
22
|
-
n = t.nextElementSibling, n && a(n);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
k(() => {
|
|
26
|
-
n && a(n);
|
|
27
|
-
});
|
|
28
|
-
function a(t) {
|
|
29
|
-
t.dataset.topPopup = "vue-" + s, t.dataset.topPopupId = s, t.dataset.topPopupP = o.pos, t.dataset.topPopupPosBy = o.posBy, t.dataset.topPopupNotch = o.notch ? "true" : "", t.dataset.topPopupOpenByHover = o.openByHover ? "true" : "";
|
|
30
|
-
}
|
|
31
|
-
return (t, P) => (p(), l(h, null, [
|
|
32
|
-
I("template", { ref: c }),
|
|
33
|
-
i(t.$slots, "default")
|
|
34
|
-
], 64));
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
const L = {
|
|
38
|
-
key: 0,
|
|
39
|
-
class: "top-popup_header"
|
|
40
|
-
}, R = {
|
|
41
|
-
key: 0,
|
|
42
|
-
class: "top-as-a closer"
|
|
43
|
-
}, U = {
|
|
44
|
-
key: 1,
|
|
45
|
-
class: "top-popup_content"
|
|
46
|
-
}, w = {
|
|
47
|
-
key: 2,
|
|
48
|
-
class: "top-popup_content"
|
|
49
|
-
}, D = {
|
|
50
|
-
key: 3,
|
|
51
|
-
class: "top-popup_footer"
|
|
52
|
-
}, q = /* @__PURE__ */ y({
|
|
53
|
-
__name: "popup",
|
|
54
|
-
props: {
|
|
55
|
-
id: { default: "" },
|
|
56
|
-
class: {},
|
|
57
|
-
pos: { default: "3" },
|
|
58
|
-
notch: { type: Boolean, default: !0 },
|
|
59
|
-
openByHover: { type: Boolean },
|
|
60
|
-
posBy: { default: "fixed" }
|
|
61
|
-
},
|
|
62
|
-
emits: ["open", "close"],
|
|
63
|
-
setup(r, { emit: o }) {
|
|
64
|
-
const s = r, n = o, c = s.id || Math.random() + "", a = b(null), d = {
|
|
65
|
-
onOpen: async (e) => {
|
|
66
|
-
e.elPopupInner.innerText = "", a.value = e.elPopupInner, d.opened = !0, d.popup = e, n("open");
|
|
67
|
-
},
|
|
68
|
-
onClose: (e) => {
|
|
69
|
-
a.value = null, d.opened = !1, d.popup = null, n("close");
|
|
70
|
-
},
|
|
71
|
-
classRef: g(s, "class"),
|
|
72
|
-
opened: !1,
|
|
73
|
-
popup: null
|
|
74
|
-
};
|
|
75
|
-
return B.regVueComponent(c, d), H(() => {
|
|
76
|
-
B.unregVueComponent(c);
|
|
77
|
-
}), (e, W) => (p(), l(h, null, [
|
|
78
|
-
e.$slots.opener ? (p(), f(E, {
|
|
79
|
-
key: 0,
|
|
80
|
-
id: m(c),
|
|
81
|
-
pos: e.pos,
|
|
82
|
-
posBy: e.posBy,
|
|
83
|
-
notch: e.notch,
|
|
84
|
-
openByHover: e.openByHover
|
|
85
|
-
}, {
|
|
86
|
-
default: v(() => [
|
|
87
|
-
i(e.$slots, "opener")
|
|
88
|
-
]),
|
|
89
|
-
_: 3
|
|
90
|
-
}, 8, ["id", "pos", "posBy", "notch", "openByHover"])) : u("", !0),
|
|
91
|
-
a.value ? (p(), f(S, {
|
|
92
|
-
key: 1,
|
|
93
|
-
to: a.value
|
|
94
|
-
}, [
|
|
95
|
-
e.$slots.header || m(_).state.isMobile ? (p(), l("div", L, [
|
|
96
|
-
m(_).state.isMobile ? (p(), l("span", R, N(d.popup.options.i18n.Close), 1)) : u("", !0),
|
|
97
|
-
i(e.$slots, "header")
|
|
98
|
-
])) : u("", !0),
|
|
99
|
-
e.$slots.content ? (p(), l("div", U, [
|
|
100
|
-
i(e.$slots, "content")
|
|
101
|
-
])) : u("", !0),
|
|
102
|
-
e.$slots.contentList ? (p(), l("ul", w, [
|
|
103
|
-
i(e.$slots, "contentList")
|
|
104
|
-
])) : u("", !0),
|
|
105
|
-
e.$slots.footer ? (p(), l("div", D, [
|
|
106
|
-
i(e.$slots, "footer")
|
|
107
|
-
])) : u("", !0)
|
|
108
|
-
], 8, ["to"])) : u("", !0)
|
|
109
|
-
], 64));
|
|
110
|
-
}
|
|
111
|
-
}), G = /* @__PURE__ */ y({
|
|
112
|
-
inheritAttrs: !1,
|
|
113
|
-
__name: "listItem",
|
|
114
|
-
props: {
|
|
115
|
-
type: { default: "button" },
|
|
116
|
-
closeByClick: { type: Boolean, default: !0 }
|
|
117
|
-
},
|
|
118
|
-
setup(r) {
|
|
119
|
-
const o = r;
|
|
120
|
-
return (s, n) => (p(), l("li", {
|
|
121
|
-
class: T({
|
|
122
|
-
"top-popup_liNoSelectable": o.type !== "button"
|
|
123
|
-
})
|
|
124
|
-
}, [
|
|
125
|
-
(p(), f(M(s.$attrs.href ? "a" : "div"), V({
|
|
126
|
-
class: {
|
|
127
|
-
"top-popup_listItem": !0,
|
|
128
|
-
"top-popup_listItem-button": o.type === "button",
|
|
129
|
-
// оформления кнопки
|
|
130
|
-
a: o.type === "button",
|
|
131
|
-
// оформления кнопки, deprecated
|
|
132
|
-
"top-popup_listItem-title": o.type === "title",
|
|
133
|
-
"top-popup_listItem-delimiter": o.type === "delimiter",
|
|
134
|
-
"top-popup-noCloser": !s.closeByClick
|
|
135
|
-
}
|
|
136
|
-
}, s.$attrs), {
|
|
137
|
-
default: v(() => [
|
|
138
|
-
i(s.$slots, "default")
|
|
139
|
-
]),
|
|
140
|
-
_: 3
|
|
141
|
-
}, 16, ["class"]))
|
|
142
|
-
], 2));
|
|
143
|
-
}
|
|
144
|
-
});
|
|
145
6
|
export {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
7
|
+
a as Popup,
|
|
8
|
+
e as PopupListItem,
|
|
9
|
+
s as PopupOpener
|
|
149
10
|
};
|
|
150
11
|
//# sourceMappingURL=popup.js.map
|
package/popup/popup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popup.js","sources":[
|
|
1
|
+
{"version":3,"file":"popup.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|
package/popup/worker.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/forms-
|
|
1
|
+
define(["require","exports","../.chunks/forms-hIalWiGK.amd","../utils/dom.amd","vue"],function(require,exports,forms,utils_dom,vue){"use strict";if(typeof vue>"u")var vue=window.Vue;class WorkerEvents{static init(){document.addEventListener("mouseover",t=>{var o;(o=t.target.dataset)!=null&&o.topPopupOpenByHover&&t.target.click()}),document.addEventListener("scroll",()=>{forms.Core.isMobile||Worker$1.getAll().forEach(t=>Worker$1.close(t))}),forms.Events.addOnReize(t=>{forms.Core.state.isMobile&&t.topEvent.widthDiff&&Worker$1.getAll().forEach(o=>Worker$1.close(o))}),document.addEventListener("click",this.onclick)}static async onclick(t){var s,r,a,p;let o;switch(!0){case!!((s=t.target.dataset)!=null&&s.topPopup):o=t.target;break;case!!((r=t.target.parentElement)!=null&&r.dataset.topPopup):o=t.target.parentElement;break;case!!((p=(a=t.target.parentElement)==null?void 0:a.parentElement)!=null&&p.dataset.topPopup):o=t.target.parentElement.parentElement;break}o&&(o.dataset.topPopupDisabled||o.dataset.topPopupOpened||(t.preventDefault(),await Worker$1.openByOpener(o)))}}let decoratorBeforeOpen,decoratorAfterOpen,decoratorIsIgnoreOuterClick,i18n={Close:"Close"};class Worker{static noClose=!1;static vueConnectors=new Map;static onInitApp(e){decoratorBeforeOpen=e==null?void 0:e.decoratorBeforeOpen,decoratorAfterOpen=e==null?void 0:e.decoratorAfterOpen,decoratorIsIgnoreOuterClick=e==null?void 0:e.decoratorIsIgnoreOuterClick,i18n=e==null?void 0:e.i18n}static getPopup(e){return utils_dom.default.storage(e,"Popup")}static getAll(){return utils_dom.default.querySelectorAllArray(document,".top-popup-wrapper")}static getAllVisible(){return utils_dom.default.querySelectorAllVisible(document,".top-popup-wrapper")}static async openByOpener(e){const t={};return t.popup=e.dataset.topPopup,e.dataset.topPopupP&&(t.p=parseInt(e.dataset.topPopupP)),e.dataset.topPopupNotch&&(t.notch=e.dataset.topPopupNotch),e.dataset.topPopupClass&&(t.class=e.dataset.topPopupClass),e.dataset.topPopupPosBy&&(t.posBy=e.dataset.topPopupPosBy),e.dataset.topPopupFront&&(t.frontSelector=e.dataset.topPopupFront),e.dataset.topPopupInvertX&&(t.invertX=e.dataset.topPopupInvertX),e.dataset.topPopupOpenByHover&&(t.openByHover=e.dataset.topPopupOpenByHover),e.dataset.topPopupUseOriginal&&(t.useOriginal=e.dataset.topPopupUseOriginal),await Worker.open(e,t)}static async open(elOpener,options){elOpener.dataset.topPopupOpened="opened";const{default:Popup}=await new Promise((e,t)=>require(["../.chunks/popup-2azH2gGP.amd"],e,t));if(typeof jQuery=="function"){const $elOpener=jQuery(elOpener);if($elOpener.data("aftershow")){let afterShow=$elOpener.data("aftershow");typeof afterShow=="string"&&(afterShow=eval(afterShow.replace(/\W/g,""))),$elOpener.one("aftershow.top-menu-popup",afterShow)}if($elOpener.data("afterclose")){let afterclose=$elOpener.data("afterclose");typeof afterclose=="string"&&(afterclose=eval(afterclose.replace(/\W/g,""))),$elOpener.one("afterclose.top-menu-popup",afterclose)}}return options.isFullScreen=forms.Core.state.isMobile,options.i18n=i18n,await new Popup(elOpener,options)}static close(e){const t=Worker.getPopup(e);t&&t.close()}static recalcPosition(e){const t=Worker.getPopup(e);t&&(t.recalcPosition(),HelperCommon.genHasScroll($(t.elPopupBody)))}static scrollToActive(e){if(!utils_dom.default.querySelectorVisible(e,"ul.top-popup_content > li > .top-active"))return;const o=e.querySelector("ul.top-popup_content"),s=utils_dom.default.querySelectorAllVisible(e,"ul.top-popup_content > li");e.classList.add("top-popup-wrapper-no_animate"),setTimeout(()=>e.classList.remove("top-popup-wrapper-no_animate"),100);let r=100;for(const p of s){if(p.querySelector(":scope > .top-active"))break;r+=p.offsetHeight}const a=o.offsetHeight;r>a?o.scrollTop=r-a:o.scrollTop=0}static decoratorBeforeOpen(e){decoratorBeforeOpen&&decoratorBeforeOpen(e)}static decoratorAfterOpen(e){decoratorAfterOpen&&decoratorAfterOpen(e)}static decoratorIsIgnoreOuterClick(e){return decoratorIsIgnoreOuterClick?decoratorIsIgnoreOuterClick(e):!1}static regVueComponent(e,t){if(Worker.vueConnectors.get(e))throw"Vue component Popup use duplicated id: "+e;Worker.vueConnectors.set(e,t)}static unregVueComponent(e){Worker.vueConnectors.delete(e)}}WorkerEvents.init(Worker,forms.Core);const Worker$1=Worker;exports.PopupWorker=Worker$1,exports.default=Worker$1,Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
2
2
|
//# sourceMappingURL=worker.amd.js.map
|
package/popup/worker.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.amd.js","sources":["../../src/components/popup/lib/worker.globalEvents.js","../../src/components/popup/lib/worker.js"],"sourcesContent":["import Core from '@/core/core/core';\r\nimport Events from '@/core/core/events';\r\nimport Worker from '@/components/popup/lib/worker';\r\n\r\n/**\r\n * Глобальные события, для реализации Popup\r\n */\r\nclass WorkerEvents {\r\n\tstatic init () {\r\n\t\t// автоматическое открытие при наведении мыши, событие глобальное, так как инициализация popup отложена\r\n\t\tdocument.addEventListener('mouseover', (e) => {\r\n\t\t\tif (!e.target.dataset?.topPopupOpenByHover) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\te.target.click();\r\n\t\t});\r\n\r\n\t\t// при скролле страницы убирать закрыть Popup\r\n\t\tdocument.addEventListener('scroll', () => {\r\n\t\t\tif (Core.isMobile) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\r\n\t\t});\r\n\r\n\t\tEvents.addOnReize(e => {\r\n\t\t\t// закрыть popup при повороте экрана телефона\r\n\t\t\t// если была отображена ПК версия, она будет закрыта\r\n\t\t\tif (Core.state.isMobile && e.topEvent.widthDiff) {\r\n\t\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tdocument.addEventListener('click', this.onclick);\r\n\t}\r\n\r\n\t/**\r\n\t * Глобальный обработчик кликов\r\n\t * обрабатывает клики на открытие Popup\r\n\t * @param {Event} e\r\n\t */\r\n\tstatic async onclick (e) {\r\n\t\tlet elOpener;\r\n\r\n\t\tswitch (true) {\r\n\t\t\tcase !!e.target.dataset?.topPopup:\r\n\t\t\t\telOpener = e.target;\r\n\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase !!e.target.parentElement?.dataset.topPopup:\r\n\t\t\t\telOpener = e.target.parentElement;\r\n\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase !!e.target.parentElement?.parentElement?.dataset.topPopup:\r\n\t\t\t\telOpener = e.target.parentElement.parentElement;\r\n\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tif (!elOpener) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupDisabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// меню уже открыто\r\n\t\tif (elOpener.dataset.topPopupOpened) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\te.preventDefault();\r\n\r\n\t\tawait Worker.openByOpener(elOpener);\r\n\t}\r\n}\r\n\r\nexport default WorkerEvents;\r\n","import Core from '@/core/core/core';\r\nimport DOM from '@/core/utils/dom';\r\nimport GlobalEvents from '@/components/popup/lib/worker.globalEvents';\r\n\r\nlet decoratorBeforeOpen;\r\nlet decoratorAfterOpen;\r\nlet decoratorIsIgnoreOuterClick;\r\nlet i18n = {\r\n\tClose: 'Close',\r\n};\r\n\r\nclass Worker {\r\n\r\n\t// глобальное выключение закрытия меню, используется при различных оверлеях\r\n\tstatic noClose = false;\r\n\r\n\tstatic vueConnectors = new Map();\r\n\r\n\t/**\r\n\t * Вызывается при инициализаци приложения\r\n\t * устанавливает глобальные статические декортаоры для компонента Popup\r\n\t * @param {{\r\n\t * \tdecoratorBeforeOpen: (object) => void\r\n\t * \tdecoratorAfterOpen: (object) => void,\r\n\t * \tdecoratorIsIgnoreOuterClick: (e) => void,\r\n\t * \ti18n: {Close: string}\r\n\t * }} options\r\n\t */\r\n\tstatic onInitApp (options) {\r\n\t\tdecoratorBeforeOpen = options?.decoratorBeforeOpen;\r\n\t\tdecoratorAfterOpen = options?.decoratorAfterOpen;\r\n\t\tdecoratorIsIgnoreOuterClick = options?.decoratorIsIgnoreOuterClick;\r\n\t\ti18n = options?.i18n;\r\n\t}\r\n\r\n\t// вернуть объект компонента popup, привязанный к элементу\r\n\tstatic getPopup (elPopup) {\r\n\t\treturn DOM.storage(elPopup, 'Popup');\r\n\t}\r\n\r\n\tstatic getAll () {\r\n\t\treturn DOM.querySelectorAllArray(document, '.top-popup-wrapper');\r\n\t}\r\n\r\n\tstatic getAllVisible () {\r\n\t\treturn DOM.querySelectorAllVisible(document, '.top-popup-wrapper');\r\n\t}\r\n\r\n\t/**\r\n\t * Открть Popup от указанного elOpener\r\n\t * @param {Element} elOpener - элемент, который должен вызвать открытие Popup\r\n\t */\r\n\tstatic async openByOpener (elOpener) {\r\n\t\tconst options = {};\r\n\r\n\t\toptions.popup = elOpener.dataset.topPopup;\r\n\r\n\t\tif (elOpener.dataset.topPopupP) {\r\n\t\t\toptions.p = parseInt(elOpener.dataset.topPopupP);\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupNotch) {\r\n\t\t\toptions.notch = elOpener.dataset.topPopupNotch;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupClass) {\r\n\t\t\toptions.class = elOpener.dataset.topPopupClass;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupPosBy) {\r\n\t\t\toptions.posBy = elOpener.dataset.topPopupPosBy;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupFront) {\r\n\t\t\toptions.frontSelector = elOpener.dataset.topPopupFront;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupInvertX) {\r\n\t\t\toptions.invertX = elOpener.dataset.topPopupInvertX;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupOpenByHover) {\r\n\t\t\toptions.openByHover = elOpener.dataset.topPopupOpenByHover;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupUseOriginal) {\r\n\t\t\toptions.useOriginal = elOpener.dataset.topPopupUseOriginal;\r\n\t\t}\r\n\r\n\t\treturn await Worker.open(elOpener, options);\r\n\t}\r\n\r\n\t/**\r\n\t * Создать и открыть Popup\r\n\t * @param {Element} elOpener - элемент, вызвавший открытие Popup\r\n\t * @param {object} options - опции Popup\r\n\t */\r\n\tstatic async open (elOpener, options) {\r\n\t\telOpener.dataset.topPopupOpened = 'opened';\r\n\r\n\t\tconst { default: Popup } = await import('./popup');\r\n\r\n\t\tif (typeof (jQuery) === 'function') {\r\n\t\t\tconst $elOpener = jQuery(elOpener);\r\n\r\n\t\t\t// deprecated, используется aftershow.top-menu-popup\r\n\t\t\tif ($elOpener.data('aftershow')) {\r\n\t\t\t\tlet afterShow = $elOpener.data('aftershow');\r\n\t\t\t\tif (typeof (afterShow) == 'string') {\r\n\t\t\t\t\tafterShow = eval(afterShow.replace(/\\W/g, ''));\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$elOpener.one('aftershow.top-menu-popup', afterShow);\r\n\t\t\t}\r\n\r\n\t\t\t// deprecated, используется afterclose.top-menu-popup\r\n\t\t\tif ($elOpener.data('afterclose')) {\r\n\t\t\t\tlet afterclose = $elOpener.data('afterclose');\r\n\t\t\t\tif (typeof (afterclose) == 'string') {\r\n\t\t\t\t\tafterclose = eval(afterclose.replace(/\\W/g, ''));\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$elOpener.one('afterclose.top-menu-popup', afterclose);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\toptions.isFullScreen = Core.state.isMobile;\r\n\t\toptions.i18n = i18n;\r\n\r\n\t\treturn await new Popup(elOpener, options);\r\n\t}\r\n\r\n\tstatic close (elPopup) {\r\n\t\tconst popup = Worker.getPopup(elPopup);\r\n\t\tif (popup) {\r\n\t\t\tpopup.close();\r\n\t\t}\r\n\t}\r\n\r\n\tstatic recalcPosition (elPopup) {\r\n\t\tconst popup = Worker.getPopup(elPopup);\r\n\t\tif (popup) {\r\n\t\t\tpopup.recalcPosition();\r\n\r\n\t\t\t// контроль за состоянием тени скролла\r\n\t\t\t// вызывать после имзенения высоты скролла popup.elPopupBody\r\n\t\t\tHelperCommon.genHasScroll($(popup.elPopupBody));\r\n\t\t}\r\n\t}\r\n\r\n\t// скролл к активному элементу списка\r\n\tstatic scrollToActive (elPopup) {\r\n\t\tconst elItemActive = DOM.querySelectorVisible(elPopup, 'ul.top-popup_content > li > .top-active');\r\n\t\tif (!elItemActive) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst elUl = elPopup.querySelector('ul.top-popup_content');\r\n\t\tconst elsLi = DOM.querySelectorAllVisible(elPopup, 'ul.top-popup_content > li');\r\n\r\n\t\telPopup.classList.add('top-popup-wrapper-no_animate');\r\n\t\tsetTimeout(() => elPopup.classList.remove('top-popup-wrapper-no_animate'), 100);\r\n\r\n\t\tlet top = 100;\r\n\t\tfor (const elLi of elsLi) {\r\n\t\t\tif (elLi.querySelector(':scope > .top-active')) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\ttop += elLi.offsetHeight;\r\n\t\t}\r\n\r\n\t\tconst heightWrapper = elUl.offsetHeight;\r\n\t\tif (top > heightWrapper) {\r\n\t\t\telUl.scrollTop = top - heightWrapper;\r\n\t\t} else {\r\n\t\t\telUl.scrollTop = 0;\r\n\t\t}\r\n\t}\r\n\r\n\tstatic decoratorBeforeOpen (popup) {\r\n\t\tif (decoratorBeforeOpen) {\r\n\t\t\tdecoratorBeforeOpen(popup);\r\n\t\t}\r\n\t};\r\n\r\n\tstatic decoratorAfterOpen (popup) {\r\n\t\tif (decoratorAfterOpen) {\r\n\t\t\tdecoratorAfterOpen(popup);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Определитель того, что клик вне Popup нужно игнорировать\r\n\t * @returns {boolean} - игнорировать клик, то есть не закрывать Popup\r\n\t */\r\n\tstatic decoratorIsIgnoreOuterClick (e) {\r\n\t\tif (decoratorIsIgnoreOuterClick) {\r\n\t\t\treturn decoratorIsIgnoreOuterClick(e);\r\n\t\t}\r\n\r\n\t\treturn false;\r\n\t}\r\n\r\n\t/**\r\n\t * Зарегистрировать Vue компонент\r\n\t *\r\n\t * Каждый экземляр Popup регистрируется в словаре vueConnectors для последующего доступа из js\r\n\t * @param {string} id\r\n\t * @param {any} vueConnector\r\n\t */\r\n\tstatic regVueComponent (id, vueConnector) {\r\n\t\tif (Worker.vueConnectors.get(id)) {\r\n\t\t\tthrow 'Vue component Popup use duplicated id: ' + id;\r\n\t\t}\r\n\r\n\t\tWorker.vueConnectors.set(id, vueConnector);\r\n\t}\r\n\r\n\t/**\r\n\t * Снять с регистрации Vue компонент\r\n\t * @param {string} id\r\n\t */\r\n\tstatic unregVueComponent (id) {\r\n\t\tWorker.vueConnectors.delete(id);\r\n\t}\r\n\r\n}\r\n\r\nGlobalEvents.init(Worker, Core);\r\n\r\nexport default Worker;\r\n"],"names":["e","elPopup","elOpener","_d","_c","options","popup","top","elLi","elsLi","heightWrapper","elUl","id","vueConnector","GlobalEvents"],"mappings":"sLAOA,MAAA,YAAA,kHAQAA,EAAA,OAAA,MAAA,CACA,CAAA,EAGA,SAAA,iBAAA,SAAA,IAAA,CACA,MAAA,KAAA,UAIA,SAAA,OAAA,EAAA,QAAAC,GAAA,SAAA,MAAAA,CAAA,CAAA,CACA,CAAA,EAEA,MAAA,OAAA,WAAAD,GAAA,CAGA,MAAA,KAAA,MAAA,UAAAA,EAAA,SAAA,WACA,SAAA,OAAA,EAAA,QAAAC,GAAA,SAAA,MAAAA,CAAA,CAAA,CAEA,CAAA,kDAUA,aAAA,QAAAD,EAAA,mBAGA,OAAA,GAAA,gDAEAE,EAAAF,EAAA,OAEA,mEAGAE,EAAAF,EAAA,OAAA,cAEA,MAEA,IAAA,CAAA,GAAAG,GAAAC,EAAAJ,EAAA,OAAA,gBAAA,YAAAI,EAAA,gBAAA,MAAAD,EAAA,QAAA,iDAGA,UAOAD,EAAA,QAAA,kBAKAA,EAAA,QAAA,iBAIAF,EAAA,eAAA,EAEA,MAAA,SAAA,aAAAE,CAAA,IAEA,CC5EA,IAAA,oBACA,mBACA,4BACA,KAAA,cAEA,EAEA,MAAA,MAAA,CAGA,OAAA,QAAA,GAEA,OAAA,cAAA,IAAA,IAYA,OAAA,UAAAG,EAAA,CACA,oBAAAA,GAAA,YAAAA,EAAA,oBACA,mBAAAA,GAAA,YAAAA,EAAA,mBACA,4BAAAA,GAAA,YAAAA,EAAA,4BACA,KAAAA,GAAA,YAAAA,EAAA,KAIA,OAAA,SAAAJ,EAAA,kPAgBA,aAAA,aAAAC,EAAA,CACA,MAAAG,EAAA,CAAA,oCAIAH,EAAA,QAAA,YACAG,EAAA,EAAA,SAAAH,EAAA,QAAA,SAAA,GAGAA,EAAA,QAAA,iDAIAA,EAAA,QAAA,iDAIAA,EAAA,QAAA,iDAIAA,EAAA,QAAA,yDAIAA,EAAA,QAAA,uDAIAA,EAAA,QAAA,mEAIAA,EAAA,QAAA,0FAYA,aAAA,KAAA,SAAA,QAAA,CACA,SAAA,QAAA,eAAA,uGAIA,GAAA,OAAA,QAAA,WAAA,CACA,MAAA,UAAA,OAAA,QAAA,EAGA,GAAA,UAAA,KAAA,WAAA,EAAA,2CAEA,OAAA,WAAA,WACA,UAAA,KAAA,UAAA,QAAA,MAAA,EAAA,CAAA,uDAOA,GAAA,UAAA,KAAA,YAAA,EAAA,6CAEA,OAAA,YAAA,WACA,WAAA,KAAA,WAAA,QAAA,MAAA,EAAA,CAAA,gHAQA,QAAA,KAAA,uCAKA,OAAA,MAAAD,EAAA,+BAGAK,EAAA,MAAA,EAIA,OAAA,eAAAL,EAAA,gCAGAK,EAAA,eAAA,+CASA,OAAA,eAAAL,EAAA,yFAGA,kLAOA,WAAA,IAAAA,EAAA,UAAA,OAAA,8BAAA,EAAA,GAAA,EAEA,IAAAM,EAAA,IACA,UAAAC,KAAAC,EAAA,CACA,GAAAD,EAAA,cAAA,sBAAA,EACA,MAGAD,GAAAC,EAAA,aAGA,MAAAE,EAAAC,EAAA,aACAJ,EAAAG,EACAC,EAAA,UAAAJ,EAAAG,EAEAC,EAAA,UAAA,EAIA,OAAA,oBAAAL,EAAA,sBAEA,oBAAAA,CAAA,EAIA,OAAA,mBAAAA,EAAA,qBAEA,mBAAAA,CAAA,EAQA,OAAA,4BAAA,EAAA,oCAEA,4BAAA,CAAA,KAaA,OAAA,gBAAAM,EAAAC,EAAA,gCAEA,KAAA,0CAAAD,gCAUA,OAAA,kBAAAA,EAAA,iCAMAE,aAAAA,KAAAA,OAAAA,MAAAA,IAAAA,EAEA,MAAA,SAAA"}
|
|
1
|
+
{"version":3,"file":"worker.amd.js","sources":["../../src/components/popup/lib/worker.globalEvents.js","../../src/components/popup/lib/worker.js"],"sourcesContent":["import Core from '@/core/core/core';\nimport Events from '@/core/core/events';\nimport Worker from '@/components/popup/lib/worker';\n\n/**\n * Глобальные события, для реализации Popup\n */\nclass WorkerEvents {\n\tstatic init () {\n\t\t// автоматическое открытие при наведении мыши, событие глобальное, так как инициализация popup отложена\n\t\tdocument.addEventListener('mouseover', (e) => {\n\t\t\tif (!e.target.dataset?.topPopupOpenByHover) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\te.target.click();\n\t\t});\n\n\t\t// при скролле страницы убирать закрыть Popup\n\t\tdocument.addEventListener('scroll', () => {\n\t\t\tif (Core.isMobile) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\n\t\t});\n\n\t\tEvents.addOnReize(e => {\n\t\t\t// закрыть popup при повороте экрана телефона\n\t\t\t// если была отображена ПК версия, она будет закрыта\n\t\t\tif (Core.state.isMobile && e.topEvent.widthDiff) {\n\t\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\n\t\t\t}\n\t\t});\n\n\t\tdocument.addEventListener('click', this.onclick);\n\t}\n\n\t/**\n\t * Глобальный обработчик кликов\n\t * обрабатывает клики на открытие Popup\n\t * @param {Event} e\n\t */\n\tstatic async onclick (e) {\n\t\tlet elOpener;\n\n\t\tswitch (true) {\n\t\t\tcase !!e.target.dataset?.topPopup:\n\t\t\t\telOpener = e.target;\n\n\t\t\t\tbreak;\n\n\t\t\tcase !!e.target.parentElement?.dataset.topPopup:\n\t\t\t\telOpener = e.target.parentElement;\n\n\t\t\t\tbreak;\n\n\t\t\tcase !!e.target.parentElement?.parentElement?.dataset.topPopup:\n\t\t\t\telOpener = e.target.parentElement.parentElement;\n\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif (!elOpener) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupDisabled) {\n\t\t\treturn;\n\t\t}\n\n\t\t// меню уже открыто\n\t\tif (elOpener.dataset.topPopupOpened) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\n\t\tawait Worker.openByOpener(elOpener);\n\t}\n}\n\nexport default WorkerEvents;\n","import Core from '@/core/core/core';\nimport DOM from '@/core/utils/dom';\nimport GlobalEvents from '@/components/popup/lib/worker.globalEvents';\n\nlet decoratorBeforeOpen;\nlet decoratorAfterOpen;\nlet decoratorIsIgnoreOuterClick;\nlet i18n = {\n\tClose: 'Close',\n};\n\nclass Worker {\n\n\t// глобальное выключение закрытия меню, используется при различных оверлеях\n\tstatic noClose = false;\n\n\tstatic vueConnectors = new Map();\n\n\t/**\n\t * Вызывается при инициализаци приложения\n\t * устанавливает глобальные статические декортаоры для компонента Popup\n\t * @param {{\n\t * \tdecoratorBeforeOpen: (object) => void\n\t * \tdecoratorAfterOpen: (object) => void,\n\t * \tdecoratorIsIgnoreOuterClick: (e) => void,\n\t * \ti18n: {Close: string}\n\t * }} options\n\t */\n\tstatic onInitApp (options) {\n\t\tdecoratorBeforeOpen = options?.decoratorBeforeOpen;\n\t\tdecoratorAfterOpen = options?.decoratorAfterOpen;\n\t\tdecoratorIsIgnoreOuterClick = options?.decoratorIsIgnoreOuterClick;\n\t\ti18n = options?.i18n;\n\t}\n\n\t// вернуть объект компонента popup, привязанный к элементу\n\tstatic getPopup (elPopup) {\n\t\treturn DOM.storage(elPopup, 'Popup');\n\t}\n\n\tstatic getAll () {\n\t\treturn DOM.querySelectorAllArray(document, '.top-popup-wrapper');\n\t}\n\n\tstatic getAllVisible () {\n\t\treturn DOM.querySelectorAllVisible(document, '.top-popup-wrapper');\n\t}\n\n\t/**\n\t * Открть Popup от указанного elOpener\n\t * @param {Element} elOpener - элемент, который должен вызвать открытие Popup\n\t */\n\tstatic async openByOpener (elOpener) {\n\t\tconst options = {};\n\n\t\toptions.popup = elOpener.dataset.topPopup;\n\n\t\tif (elOpener.dataset.topPopupP) {\n\t\t\toptions.p = parseInt(elOpener.dataset.topPopupP);\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupNotch) {\n\t\t\toptions.notch = elOpener.dataset.topPopupNotch;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupClass) {\n\t\t\toptions.class = elOpener.dataset.topPopupClass;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupPosBy) {\n\t\t\toptions.posBy = elOpener.dataset.topPopupPosBy;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupFront) {\n\t\t\toptions.frontSelector = elOpener.dataset.topPopupFront;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupInvertX) {\n\t\t\toptions.invertX = elOpener.dataset.topPopupInvertX;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupOpenByHover) {\n\t\t\toptions.openByHover = elOpener.dataset.topPopupOpenByHover;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupUseOriginal) {\n\t\t\toptions.useOriginal = elOpener.dataset.topPopupUseOriginal;\n\t\t}\n\n\t\treturn await Worker.open(elOpener, options);\n\t}\n\n\t/**\n\t * Создать и открыть Popup\n\t * @param {Element} elOpener - элемент, вызвавший открытие Popup\n\t * @param {object} options - опции Popup\n\t */\n\tstatic async open (elOpener, options) {\n\t\telOpener.dataset.topPopupOpened = 'opened';\n\n\t\tconst { default: Popup } = await import('./popup');\n\n\t\tif (typeof (jQuery) === 'function') {\n\t\t\tconst $elOpener = jQuery(elOpener);\n\n\t\t\t// deprecated, используется aftershow.top-menu-popup\n\t\t\tif ($elOpener.data('aftershow')) {\n\t\t\t\tlet afterShow = $elOpener.data('aftershow');\n\t\t\t\tif (typeof (afterShow) == 'string') {\n\t\t\t\t\tafterShow = eval(afterShow.replace(/\\W/g, ''));\n\t\t\t\t}\n\n\t\t\t\t$elOpener.one('aftershow.top-menu-popup', afterShow);\n\t\t\t}\n\n\t\t\t// deprecated, используется afterclose.top-menu-popup\n\t\t\tif ($elOpener.data('afterclose')) {\n\t\t\t\tlet afterclose = $elOpener.data('afterclose');\n\t\t\t\tif (typeof (afterclose) == 'string') {\n\t\t\t\t\tafterclose = eval(afterclose.replace(/\\W/g, ''));\n\t\t\t\t}\n\n\t\t\t\t$elOpener.one('afterclose.top-menu-popup', afterclose);\n\t\t\t}\n\t\t}\n\n\t\toptions.isFullScreen = Core.state.isMobile;\n\t\toptions.i18n = i18n;\n\n\t\treturn await new Popup(elOpener, options);\n\t}\n\n\tstatic close (elPopup) {\n\t\tconst popup = Worker.getPopup(elPopup);\n\t\tif (popup) {\n\t\t\tpopup.close();\n\t\t}\n\t}\n\n\tstatic recalcPosition (elPopup) {\n\t\tconst popup = Worker.getPopup(elPopup);\n\t\tif (popup) {\n\t\t\tpopup.recalcPosition();\n\n\t\t\t// контроль за состоянием тени скролла\n\t\t\t// вызывать после имзенения высоты скролла popup.elPopupBody\n\t\t\tHelperCommon.genHasScroll($(popup.elPopupBody));\n\t\t}\n\t}\n\n\t// скролл к активному элементу списка\n\tstatic scrollToActive (elPopup) {\n\t\tconst elItemActive = DOM.querySelectorVisible(elPopup, 'ul.top-popup_content > li > .top-active');\n\t\tif (!elItemActive) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elUl = elPopup.querySelector('ul.top-popup_content');\n\t\tconst elsLi = DOM.querySelectorAllVisible(elPopup, 'ul.top-popup_content > li');\n\n\t\telPopup.classList.add('top-popup-wrapper-no_animate');\n\t\tsetTimeout(() => elPopup.classList.remove('top-popup-wrapper-no_animate'), 100);\n\n\t\tlet top = 100;\n\t\tfor (const elLi of elsLi) {\n\t\t\tif (elLi.querySelector(':scope > .top-active')) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\ttop += elLi.offsetHeight;\n\t\t}\n\n\t\tconst heightWrapper = elUl.offsetHeight;\n\t\tif (top > heightWrapper) {\n\t\t\telUl.scrollTop = top - heightWrapper;\n\t\t} else {\n\t\t\telUl.scrollTop = 0;\n\t\t}\n\t}\n\n\tstatic decoratorBeforeOpen (popup) {\n\t\tif (decoratorBeforeOpen) {\n\t\t\tdecoratorBeforeOpen(popup);\n\t\t}\n\t};\n\n\tstatic decoratorAfterOpen (popup) {\n\t\tif (decoratorAfterOpen) {\n\t\t\tdecoratorAfterOpen(popup);\n\t\t}\n\t};\n\n\t/**\n\t * Определитель того, что клик вне Popup нужно игнорировать\n\t * @returns {boolean} - игнорировать клик, то есть не закрывать Popup\n\t */\n\tstatic decoratorIsIgnoreOuterClick (e) {\n\t\tif (decoratorIsIgnoreOuterClick) {\n\t\t\treturn decoratorIsIgnoreOuterClick(e);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t * Зарегистрировать Vue компонент\n\t *\n\t * Каждый экземляр Popup регистрируется в словаре vueConnectors для последующего доступа из js\n\t * @param {string} id\n\t * @param {any} vueConnector\n\t */\n\tstatic regVueComponent (id, vueConnector) {\n\t\tif (Worker.vueConnectors.get(id)) {\n\t\t\tthrow 'Vue component Popup use duplicated id: ' + id;\n\t\t}\n\n\t\tWorker.vueConnectors.set(id, vueConnector);\n\t}\n\n\t/**\n\t * Снять с регистрации Vue компонент\n\t * @param {string} id\n\t */\n\tstatic unregVueComponent (id) {\n\t\tWorker.vueConnectors.delete(id);\n\t}\n\n}\n\nGlobalEvents.init(Worker, Core);\n\nexport default Worker;\n"],"names":["e","elPopup","elOpener","_d","_c","options","popup","top","elLi","elsLi","heightWrapper","elUl","id","vueConnector","GlobalEvents"],"mappings":"sLAOA,MAAA,YAAA,kHAQAA,EAAA,OAAA,MAAA,CACA,CAAA,EAGA,SAAA,iBAAA,SAAA,IAAA,CACA,MAAA,KAAA,UAIA,SAAA,OAAA,EAAA,QAAAC,GAAA,SAAA,MAAAA,CAAA,CAAA,CACA,CAAA,EAEA,MAAA,OAAA,WAAAD,GAAA,CAGA,MAAA,KAAA,MAAA,UAAAA,EAAA,SAAA,WACA,SAAA,OAAA,EAAA,QAAAC,GAAA,SAAA,MAAAA,CAAA,CAAA,CAEA,CAAA,kDAUA,aAAA,QAAAD,EAAA,mBAGA,OAAA,GAAA,gDAEAE,EAAAF,EAAA,OAEA,mEAGAE,EAAAF,EAAA,OAAA,cAEA,MAEA,IAAA,CAAA,GAAAG,GAAAC,EAAAJ,EAAA,OAAA,gBAAA,YAAAI,EAAA,gBAAA,MAAAD,EAAA,QAAA,iDAGA,UAOAD,EAAA,QAAA,kBAKAA,EAAA,QAAA,iBAIAF,EAAA,eAAA,EAEA,MAAA,SAAA,aAAAE,CAAA,IAEA,CC5EA,IAAA,oBACA,mBACA,4BACA,KAAA,cAEA,EAEA,MAAA,MAAA,CAGA,OAAA,QAAA,GAEA,OAAA,cAAA,IAAA,IAYA,OAAA,UAAAG,EAAA,CACA,oBAAAA,GAAA,YAAAA,EAAA,oBACA,mBAAAA,GAAA,YAAAA,EAAA,mBACA,4BAAAA,GAAA,YAAAA,EAAA,4BACA,KAAAA,GAAA,YAAAA,EAAA,KAIA,OAAA,SAAAJ,EAAA,kPAgBA,aAAA,aAAAC,EAAA,CACA,MAAAG,EAAA,CAAA,oCAIAH,EAAA,QAAA,YACAG,EAAA,EAAA,SAAAH,EAAA,QAAA,SAAA,GAGAA,EAAA,QAAA,iDAIAA,EAAA,QAAA,iDAIAA,EAAA,QAAA,iDAIAA,EAAA,QAAA,yDAIAA,EAAA,QAAA,uDAIAA,EAAA,QAAA,mEAIAA,EAAA,QAAA,0FAYA,aAAA,KAAA,SAAA,QAAA,CACA,SAAA,QAAA,eAAA,uGAIA,GAAA,OAAA,QAAA,WAAA,CACA,MAAA,UAAA,OAAA,QAAA,EAGA,GAAA,UAAA,KAAA,WAAA,EAAA,2CAEA,OAAA,WAAA,WACA,UAAA,KAAA,UAAA,QAAA,MAAA,EAAA,CAAA,uDAOA,GAAA,UAAA,KAAA,YAAA,EAAA,6CAEA,OAAA,YAAA,WACA,WAAA,KAAA,WAAA,QAAA,MAAA,EAAA,CAAA,gHAQA,QAAA,KAAA,uCAKA,OAAA,MAAAD,EAAA,+BAGAK,EAAA,MAAA,EAIA,OAAA,eAAAL,EAAA,gCAGAK,EAAA,eAAA,+CASA,OAAA,eAAAL,EAAA,yFAGA,kLAOA,WAAA,IAAAA,EAAA,UAAA,OAAA,8BAAA,EAAA,GAAA,EAEA,IAAAM,EAAA,IACA,UAAAC,KAAAC,EAAA,CACA,GAAAD,EAAA,cAAA,sBAAA,EACA,MAGAD,GAAAC,EAAA,aAGA,MAAAE,EAAAC,EAAA,aACAJ,EAAAG,EACAC,EAAA,UAAAJ,EAAAG,EAEAC,EAAA,UAAA,EAIA,OAAA,oBAAAL,EAAA,sBAEA,oBAAAA,CAAA,EAIA,OAAA,mBAAAA,EAAA,qBAEA,mBAAAA,CAAA,EAQA,OAAA,4BAAA,EAAA,oCAEA,4BAAA,CAAA,KAaA,OAAA,gBAAAM,EAAAC,EAAA,gCAEA,KAAA,0CAAAD,gCAUA,OAAA,kBAAAA,EAAA,iCAMAE,aAAAA,KAAAA,OAAAA,MAAAA,IAAAA,EAEA,MAAA,SAAA"}
|
package/popup/worker.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as Core, E as Events } from "../.chunks/forms-
|
|
1
|
+
import { C as Core, E as Events } from "../.chunks/forms-dneLtREE.es.js";
|
|
2
2
|
import DOM from "../utils/dom.js";
|
|
3
3
|
import "vue";
|
|
4
4
|
class WorkerEvents {
|
|
@@ -79,7 +79,7 @@ class Worker {
|
|
|
79
79
|
*/
|
|
80
80
|
static async open(elOpener, options) {
|
|
81
81
|
elOpener.dataset.topPopupOpened = "opened";
|
|
82
|
-
const { default: Popup } = await import("../.chunks/popup-
|
|
82
|
+
const { default: Popup } = await import("../.chunks/popup-GFcVEZf5.es.js");
|
|
83
83
|
if (typeof jQuery == "function") {
|
|
84
84
|
const $elOpener = jQuery(elOpener);
|
|
85
85
|
if ($elOpener.data("aftershow")) {
|
package/popup/worker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sources":["../../src/components/popup/lib/worker.globalEvents.js","../../src/components/popup/lib/worker.js"],"sourcesContent":["import Core from '@/core/core/core';\r\nimport Events from '@/core/core/events';\r\nimport Worker from '@/components/popup/lib/worker';\r\n\r\n/**\r\n * Глобальные события, для реализации Popup\r\n */\r\nclass WorkerEvents {\r\n\tstatic init () {\r\n\t\t// автоматическое открытие при наведении мыши, событие глобальное, так как инициализация popup отложена\r\n\t\tdocument.addEventListener('mouseover', (e) => {\r\n\t\t\tif (!e.target.dataset?.topPopupOpenByHover) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\te.target.click();\r\n\t\t});\r\n\r\n\t\t// при скролле страницы убирать закрыть Popup\r\n\t\tdocument.addEventListener('scroll', () => {\r\n\t\t\tif (Core.isMobile) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\r\n\t\t});\r\n\r\n\t\tEvents.addOnReize(e => {\r\n\t\t\t// закрыть popup при повороте экрана телефона\r\n\t\t\t// если была отображена ПК версия, она будет закрыта\r\n\t\t\tif (Core.state.isMobile && e.topEvent.widthDiff) {\r\n\t\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tdocument.addEventListener('click', this.onclick);\r\n\t}\r\n\r\n\t/**\r\n\t * Глобальный обработчик кликов\r\n\t * обрабатывает клики на открытие Popup\r\n\t * @param {Event} e\r\n\t */\r\n\tstatic async onclick (e) {\r\n\t\tlet elOpener;\r\n\r\n\t\tswitch (true) {\r\n\t\t\tcase !!e.target.dataset?.topPopup:\r\n\t\t\t\telOpener = e.target;\r\n\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase !!e.target.parentElement?.dataset.topPopup:\r\n\t\t\t\telOpener = e.target.parentElement;\r\n\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase !!e.target.parentElement?.parentElement?.dataset.topPopup:\r\n\t\t\t\telOpener = e.target.parentElement.parentElement;\r\n\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tif (!elOpener) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupDisabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// меню уже открыто\r\n\t\tif (elOpener.dataset.topPopupOpened) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\te.preventDefault();\r\n\r\n\t\tawait Worker.openByOpener(elOpener);\r\n\t}\r\n}\r\n\r\nexport default WorkerEvents;\r\n","import Core from '@/core/core/core';\r\nimport DOM from '@/core/utils/dom';\r\nimport GlobalEvents from '@/components/popup/lib/worker.globalEvents';\r\n\r\nlet decoratorBeforeOpen;\r\nlet decoratorAfterOpen;\r\nlet decoratorIsIgnoreOuterClick;\r\nlet i18n = {\r\n\tClose: 'Close',\r\n};\r\n\r\nclass Worker {\r\n\r\n\t// глобальное выключение закрытия меню, используется при различных оверлеях\r\n\tstatic noClose = false;\r\n\r\n\tstatic vueConnectors = new Map();\r\n\r\n\t/**\r\n\t * Вызывается при инициализаци приложения\r\n\t * устанавливает глобальные статические декортаоры для компонента Popup\r\n\t * @param {{\r\n\t * \tdecoratorBeforeOpen: (object) => void\r\n\t * \tdecoratorAfterOpen: (object) => void,\r\n\t * \tdecoratorIsIgnoreOuterClick: (e) => void,\r\n\t * \ti18n: {Close: string}\r\n\t * }} options\r\n\t */\r\n\tstatic onInitApp (options) {\r\n\t\tdecoratorBeforeOpen = options?.decoratorBeforeOpen;\r\n\t\tdecoratorAfterOpen = options?.decoratorAfterOpen;\r\n\t\tdecoratorIsIgnoreOuterClick = options?.decoratorIsIgnoreOuterClick;\r\n\t\ti18n = options?.i18n;\r\n\t}\r\n\r\n\t// вернуть объект компонента popup, привязанный к элементу\r\n\tstatic getPopup (elPopup) {\r\n\t\treturn DOM.storage(elPopup, 'Popup');\r\n\t}\r\n\r\n\tstatic getAll () {\r\n\t\treturn DOM.querySelectorAllArray(document, '.top-popup-wrapper');\r\n\t}\r\n\r\n\tstatic getAllVisible () {\r\n\t\treturn DOM.querySelectorAllVisible(document, '.top-popup-wrapper');\r\n\t}\r\n\r\n\t/**\r\n\t * Открть Popup от указанного elOpener\r\n\t * @param {Element} elOpener - элемент, который должен вызвать открытие Popup\r\n\t */\r\n\tstatic async openByOpener (elOpener) {\r\n\t\tconst options = {};\r\n\r\n\t\toptions.popup = elOpener.dataset.topPopup;\r\n\r\n\t\tif (elOpener.dataset.topPopupP) {\r\n\t\t\toptions.p = parseInt(elOpener.dataset.topPopupP);\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupNotch) {\r\n\t\t\toptions.notch = elOpener.dataset.topPopupNotch;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupClass) {\r\n\t\t\toptions.class = elOpener.dataset.topPopupClass;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupPosBy) {\r\n\t\t\toptions.posBy = elOpener.dataset.topPopupPosBy;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupFront) {\r\n\t\t\toptions.frontSelector = elOpener.dataset.topPopupFront;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupInvertX) {\r\n\t\t\toptions.invertX = elOpener.dataset.topPopupInvertX;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupOpenByHover) {\r\n\t\t\toptions.openByHover = elOpener.dataset.topPopupOpenByHover;\r\n\t\t}\r\n\r\n\t\tif (elOpener.dataset.topPopupUseOriginal) {\r\n\t\t\toptions.useOriginal = elOpener.dataset.topPopupUseOriginal;\r\n\t\t}\r\n\r\n\t\treturn await Worker.open(elOpener, options);\r\n\t}\r\n\r\n\t/**\r\n\t * Создать и открыть Popup\r\n\t * @param {Element} elOpener - элемент, вызвавший открытие Popup\r\n\t * @param {object} options - опции Popup\r\n\t */\r\n\tstatic async open (elOpener, options) {\r\n\t\telOpener.dataset.topPopupOpened = 'opened';\r\n\r\n\t\tconst { default: Popup } = await import('./popup');\r\n\r\n\t\tif (typeof (jQuery) === 'function') {\r\n\t\t\tconst $elOpener = jQuery(elOpener);\r\n\r\n\t\t\t// deprecated, используется aftershow.top-menu-popup\r\n\t\t\tif ($elOpener.data('aftershow')) {\r\n\t\t\t\tlet afterShow = $elOpener.data('aftershow');\r\n\t\t\t\tif (typeof (afterShow) == 'string') {\r\n\t\t\t\t\tafterShow = eval(afterShow.replace(/\\W/g, ''));\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$elOpener.one('aftershow.top-menu-popup', afterShow);\r\n\t\t\t}\r\n\r\n\t\t\t// deprecated, используется afterclose.top-menu-popup\r\n\t\t\tif ($elOpener.data('afterclose')) {\r\n\t\t\t\tlet afterclose = $elOpener.data('afterclose');\r\n\t\t\t\tif (typeof (afterclose) == 'string') {\r\n\t\t\t\t\tafterclose = eval(afterclose.replace(/\\W/g, ''));\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$elOpener.one('afterclose.top-menu-popup', afterclose);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\toptions.isFullScreen = Core.state.isMobile;\r\n\t\toptions.i18n = i18n;\r\n\r\n\t\treturn await new Popup(elOpener, options);\r\n\t}\r\n\r\n\tstatic close (elPopup) {\r\n\t\tconst popup = Worker.getPopup(elPopup);\r\n\t\tif (popup) {\r\n\t\t\tpopup.close();\r\n\t\t}\r\n\t}\r\n\r\n\tstatic recalcPosition (elPopup) {\r\n\t\tconst popup = Worker.getPopup(elPopup);\r\n\t\tif (popup) {\r\n\t\t\tpopup.recalcPosition();\r\n\r\n\t\t\t// контроль за состоянием тени скролла\r\n\t\t\t// вызывать после имзенения высоты скролла popup.elPopupBody\r\n\t\t\tHelperCommon.genHasScroll($(popup.elPopupBody));\r\n\t\t}\r\n\t}\r\n\r\n\t// скролл к активному элементу списка\r\n\tstatic scrollToActive (elPopup) {\r\n\t\tconst elItemActive = DOM.querySelectorVisible(elPopup, 'ul.top-popup_content > li > .top-active');\r\n\t\tif (!elItemActive) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst elUl = elPopup.querySelector('ul.top-popup_content');\r\n\t\tconst elsLi = DOM.querySelectorAllVisible(elPopup, 'ul.top-popup_content > li');\r\n\r\n\t\telPopup.classList.add('top-popup-wrapper-no_animate');\r\n\t\tsetTimeout(() => elPopup.classList.remove('top-popup-wrapper-no_animate'), 100);\r\n\r\n\t\tlet top = 100;\r\n\t\tfor (const elLi of elsLi) {\r\n\t\t\tif (elLi.querySelector(':scope > .top-active')) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\ttop += elLi.offsetHeight;\r\n\t\t}\r\n\r\n\t\tconst heightWrapper = elUl.offsetHeight;\r\n\t\tif (top > heightWrapper) {\r\n\t\t\telUl.scrollTop = top - heightWrapper;\r\n\t\t} else {\r\n\t\t\telUl.scrollTop = 0;\r\n\t\t}\r\n\t}\r\n\r\n\tstatic decoratorBeforeOpen (popup) {\r\n\t\tif (decoratorBeforeOpen) {\r\n\t\t\tdecoratorBeforeOpen(popup);\r\n\t\t}\r\n\t};\r\n\r\n\tstatic decoratorAfterOpen (popup) {\r\n\t\tif (decoratorAfterOpen) {\r\n\t\t\tdecoratorAfterOpen(popup);\r\n\t\t}\r\n\t};\r\n\r\n\t/**\r\n\t * Определитель того, что клик вне Popup нужно игнорировать\r\n\t * @returns {boolean} - игнорировать клик, то есть не закрывать Popup\r\n\t */\r\n\tstatic decoratorIsIgnoreOuterClick (e) {\r\n\t\tif (decoratorIsIgnoreOuterClick) {\r\n\t\t\treturn decoratorIsIgnoreOuterClick(e);\r\n\t\t}\r\n\r\n\t\treturn false;\r\n\t}\r\n\r\n\t/**\r\n\t * Зарегистрировать Vue компонент\r\n\t *\r\n\t * Каждый экземляр Popup регистрируется в словаре vueConnectors для последующего доступа из js\r\n\t * @param {string} id\r\n\t * @param {any} vueConnector\r\n\t */\r\n\tstatic regVueComponent (id, vueConnector) {\r\n\t\tif (Worker.vueConnectors.get(id)) {\r\n\t\t\tthrow 'Vue component Popup use duplicated id: ' + id;\r\n\t\t}\r\n\r\n\t\tWorker.vueConnectors.set(id, vueConnector);\r\n\t}\r\n\r\n\t/**\r\n\t * Снять с регистрации Vue компонент\r\n\t * @param {string} id\r\n\t */\r\n\tstatic unregVueComponent (id) {\r\n\t\tWorker.vueConnectors.delete(id);\r\n\t}\r\n\r\n}\r\n\r\nGlobalEvents.init(Worker, Core);\r\n\r\nexport default Worker;\r\n"],"names":["e","_a","Worker","elPopup","elOpener","_b","_d","_c","options","popup","elUl","elsLi","top","elLi","heightWrapper","id","vueConnector","GlobalEvents"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker.js","sources":["../../src/components/popup/lib/worker.globalEvents.js","../../src/components/popup/lib/worker.js"],"sourcesContent":["import Core from '@/core/core/core';\nimport Events from '@/core/core/events';\nimport Worker from '@/components/popup/lib/worker';\n\n/**\n * Глобальные события, для реализации Popup\n */\nclass WorkerEvents {\n\tstatic init () {\n\t\t// автоматическое открытие при наведении мыши, событие глобальное, так как инициализация popup отложена\n\t\tdocument.addEventListener('mouseover', (e) => {\n\t\t\tif (!e.target.dataset?.topPopupOpenByHover) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\te.target.click();\n\t\t});\n\n\t\t// при скролле страницы убирать закрыть Popup\n\t\tdocument.addEventListener('scroll', () => {\n\t\t\tif (Core.isMobile) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\n\t\t});\n\n\t\tEvents.addOnReize(e => {\n\t\t\t// закрыть popup при повороте экрана телефона\n\t\t\t// если была отображена ПК версия, она будет закрыта\n\t\t\tif (Core.state.isMobile && e.topEvent.widthDiff) {\n\t\t\t\tWorker.getAll().forEach(elPopup => Worker.close(elPopup));\n\t\t\t}\n\t\t});\n\n\t\tdocument.addEventListener('click', this.onclick);\n\t}\n\n\t/**\n\t * Глобальный обработчик кликов\n\t * обрабатывает клики на открытие Popup\n\t * @param {Event} e\n\t */\n\tstatic async onclick (e) {\n\t\tlet elOpener;\n\n\t\tswitch (true) {\n\t\t\tcase !!e.target.dataset?.topPopup:\n\t\t\t\telOpener = e.target;\n\n\t\t\t\tbreak;\n\n\t\t\tcase !!e.target.parentElement?.dataset.topPopup:\n\t\t\t\telOpener = e.target.parentElement;\n\n\t\t\t\tbreak;\n\n\t\t\tcase !!e.target.parentElement?.parentElement?.dataset.topPopup:\n\t\t\t\telOpener = e.target.parentElement.parentElement;\n\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif (!elOpener) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupDisabled) {\n\t\t\treturn;\n\t\t}\n\n\t\t// меню уже открыто\n\t\tif (elOpener.dataset.topPopupOpened) {\n\t\t\treturn;\n\t\t}\n\n\t\te.preventDefault();\n\n\t\tawait Worker.openByOpener(elOpener);\n\t}\n}\n\nexport default WorkerEvents;\n","import Core from '@/core/core/core';\nimport DOM from '@/core/utils/dom';\nimport GlobalEvents from '@/components/popup/lib/worker.globalEvents';\n\nlet decoratorBeforeOpen;\nlet decoratorAfterOpen;\nlet decoratorIsIgnoreOuterClick;\nlet i18n = {\n\tClose: 'Close',\n};\n\nclass Worker {\n\n\t// глобальное выключение закрытия меню, используется при различных оверлеях\n\tstatic noClose = false;\n\n\tstatic vueConnectors = new Map();\n\n\t/**\n\t * Вызывается при инициализаци приложения\n\t * устанавливает глобальные статические декортаоры для компонента Popup\n\t * @param {{\n\t * \tdecoratorBeforeOpen: (object) => void\n\t * \tdecoratorAfterOpen: (object) => void,\n\t * \tdecoratorIsIgnoreOuterClick: (e) => void,\n\t * \ti18n: {Close: string}\n\t * }} options\n\t */\n\tstatic onInitApp (options) {\n\t\tdecoratorBeforeOpen = options?.decoratorBeforeOpen;\n\t\tdecoratorAfterOpen = options?.decoratorAfterOpen;\n\t\tdecoratorIsIgnoreOuterClick = options?.decoratorIsIgnoreOuterClick;\n\t\ti18n = options?.i18n;\n\t}\n\n\t// вернуть объект компонента popup, привязанный к элементу\n\tstatic getPopup (elPopup) {\n\t\treturn DOM.storage(elPopup, 'Popup');\n\t}\n\n\tstatic getAll () {\n\t\treturn DOM.querySelectorAllArray(document, '.top-popup-wrapper');\n\t}\n\n\tstatic getAllVisible () {\n\t\treturn DOM.querySelectorAllVisible(document, '.top-popup-wrapper');\n\t}\n\n\t/**\n\t * Открть Popup от указанного elOpener\n\t * @param {Element} elOpener - элемент, который должен вызвать открытие Popup\n\t */\n\tstatic async openByOpener (elOpener) {\n\t\tconst options = {};\n\n\t\toptions.popup = elOpener.dataset.topPopup;\n\n\t\tif (elOpener.dataset.topPopupP) {\n\t\t\toptions.p = parseInt(elOpener.dataset.topPopupP);\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupNotch) {\n\t\t\toptions.notch = elOpener.dataset.topPopupNotch;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupClass) {\n\t\t\toptions.class = elOpener.dataset.topPopupClass;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupPosBy) {\n\t\t\toptions.posBy = elOpener.dataset.topPopupPosBy;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupFront) {\n\t\t\toptions.frontSelector = elOpener.dataset.topPopupFront;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupInvertX) {\n\t\t\toptions.invertX = elOpener.dataset.topPopupInvertX;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupOpenByHover) {\n\t\t\toptions.openByHover = elOpener.dataset.topPopupOpenByHover;\n\t\t}\n\n\t\tif (elOpener.dataset.topPopupUseOriginal) {\n\t\t\toptions.useOriginal = elOpener.dataset.topPopupUseOriginal;\n\t\t}\n\n\t\treturn await Worker.open(elOpener, options);\n\t}\n\n\t/**\n\t * Создать и открыть Popup\n\t * @param {Element} elOpener - элемент, вызвавший открытие Popup\n\t * @param {object} options - опции Popup\n\t */\n\tstatic async open (elOpener, options) {\n\t\telOpener.dataset.topPopupOpened = 'opened';\n\n\t\tconst { default: Popup } = await import('./popup');\n\n\t\tif (typeof (jQuery) === 'function') {\n\t\t\tconst $elOpener = jQuery(elOpener);\n\n\t\t\t// deprecated, используется aftershow.top-menu-popup\n\t\t\tif ($elOpener.data('aftershow')) {\n\t\t\t\tlet afterShow = $elOpener.data('aftershow');\n\t\t\t\tif (typeof (afterShow) == 'string') {\n\t\t\t\t\tafterShow = eval(afterShow.replace(/\\W/g, ''));\n\t\t\t\t}\n\n\t\t\t\t$elOpener.one('aftershow.top-menu-popup', afterShow);\n\t\t\t}\n\n\t\t\t// deprecated, используется afterclose.top-menu-popup\n\t\t\tif ($elOpener.data('afterclose')) {\n\t\t\t\tlet afterclose = $elOpener.data('afterclose');\n\t\t\t\tif (typeof (afterclose) == 'string') {\n\t\t\t\t\tafterclose = eval(afterclose.replace(/\\W/g, ''));\n\t\t\t\t}\n\n\t\t\t\t$elOpener.one('afterclose.top-menu-popup', afterclose);\n\t\t\t}\n\t\t}\n\n\t\toptions.isFullScreen = Core.state.isMobile;\n\t\toptions.i18n = i18n;\n\n\t\treturn await new Popup(elOpener, options);\n\t}\n\n\tstatic close (elPopup) {\n\t\tconst popup = Worker.getPopup(elPopup);\n\t\tif (popup) {\n\t\t\tpopup.close();\n\t\t}\n\t}\n\n\tstatic recalcPosition (elPopup) {\n\t\tconst popup = Worker.getPopup(elPopup);\n\t\tif (popup) {\n\t\t\tpopup.recalcPosition();\n\n\t\t\t// контроль за состоянием тени скролла\n\t\t\t// вызывать после имзенения высоты скролла popup.elPopupBody\n\t\t\tHelperCommon.genHasScroll($(popup.elPopupBody));\n\t\t}\n\t}\n\n\t// скролл к активному элементу списка\n\tstatic scrollToActive (elPopup) {\n\t\tconst elItemActive = DOM.querySelectorVisible(elPopup, 'ul.top-popup_content > li > .top-active');\n\t\tif (!elItemActive) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst elUl = elPopup.querySelector('ul.top-popup_content');\n\t\tconst elsLi = DOM.querySelectorAllVisible(elPopup, 'ul.top-popup_content > li');\n\n\t\telPopup.classList.add('top-popup-wrapper-no_animate');\n\t\tsetTimeout(() => elPopup.classList.remove('top-popup-wrapper-no_animate'), 100);\n\n\t\tlet top = 100;\n\t\tfor (const elLi of elsLi) {\n\t\t\tif (elLi.querySelector(':scope > .top-active')) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\ttop += elLi.offsetHeight;\n\t\t}\n\n\t\tconst heightWrapper = elUl.offsetHeight;\n\t\tif (top > heightWrapper) {\n\t\t\telUl.scrollTop = top - heightWrapper;\n\t\t} else {\n\t\t\telUl.scrollTop = 0;\n\t\t}\n\t}\n\n\tstatic decoratorBeforeOpen (popup) {\n\t\tif (decoratorBeforeOpen) {\n\t\t\tdecoratorBeforeOpen(popup);\n\t\t}\n\t};\n\n\tstatic decoratorAfterOpen (popup) {\n\t\tif (decoratorAfterOpen) {\n\t\t\tdecoratorAfterOpen(popup);\n\t\t}\n\t};\n\n\t/**\n\t * Определитель того, что клик вне Popup нужно игнорировать\n\t * @returns {boolean} - игнорировать клик, то есть не закрывать Popup\n\t */\n\tstatic decoratorIsIgnoreOuterClick (e) {\n\t\tif (decoratorIsIgnoreOuterClick) {\n\t\t\treturn decoratorIsIgnoreOuterClick(e);\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t * Зарегистрировать Vue компонент\n\t *\n\t * Каждый экземляр Popup регистрируется в словаре vueConnectors для последующего доступа из js\n\t * @param {string} id\n\t * @param {any} vueConnector\n\t */\n\tstatic regVueComponent (id, vueConnector) {\n\t\tif (Worker.vueConnectors.get(id)) {\n\t\t\tthrow 'Vue component Popup use duplicated id: ' + id;\n\t\t}\n\n\t\tWorker.vueConnectors.set(id, vueConnector);\n\t}\n\n\t/**\n\t * Снять с регистрации Vue компонент\n\t * @param {string} id\n\t */\n\tstatic unregVueComponent (id) {\n\t\tWorker.vueConnectors.delete(id);\n\t}\n\n}\n\nGlobalEvents.init(Worker, Core);\n\nexport default Worker;\n"],"names":["e","_a","Worker","elPopup","elOpener","_b","_d","_c","options","popup","elUl","elsLi","top","elLi","heightWrapper","id","vueConnector","GlobalEvents"],"mappings":"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"}
|
package/require/css.amd.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Плагин requirejs для подгрузки css файлов
|
|
3
|
-
*/
|
|
4
|
-
define({
|
|
5
|
-
load: (name, req, onload) => {
|
|
6
|
-
req(['../utils/css.amd'], ({ insertToPage }) => {
|
|
7
|
-
let cssURL = req.toUrl(name);
|
|
8
|
-
|
|
9
|
-
insertToPage([cssURL]).then(onload).catch(onload.error);
|
|
10
|
-
});
|
|
11
|
-
},
|
|
1
|
+
/**
|
|
2
|
+
* Плагин requirejs для подгрузки css файлов
|
|
3
|
+
*/
|
|
4
|
+
define({
|
|
5
|
+
load: (name, req, onload) => {
|
|
6
|
+
req(['../utils/css.amd'], ({ insertToPage }) => {
|
|
7
|
+
let cssURL = req.toUrl(name);
|
|
8
|
+
|
|
9
|
+
insertToPage([cssURL]).then(onload).catch(onload.error);
|
|
10
|
+
});
|
|
11
|
+
},
|
|
12
12
|
});
|
|
@@ -24,7 +24,7 @@ declare const meta: {
|
|
|
24
24
|
lastActiveTime: {
|
|
25
25
|
type: import("vue").PropType<string>;
|
|
26
26
|
};
|
|
27
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
27
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
28
28
|
image: {
|
|
29
29
|
type: import("vue").PropType<string>;
|
|
30
30
|
required: true;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Props } from './avatar';
|
|
2
2
|
declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
|
|
3
3
|
size: number;
|
|
4
|
-
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
4
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
|
|
5
5
|
size: number;
|
|
6
6
|
}>>>, {
|
|
7
7
|
size: import("./avatar").Size;
|
|
@@ -188,6 +188,7 @@ declare const meta: {
|
|
|
188
188
|
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
189
189
|
$slots: {
|
|
190
190
|
default?(_: {}): any;
|
|
191
|
+
html?(_: {}): any;
|
|
191
192
|
};
|
|
192
193
|
});
|
|
193
194
|
tags: string[];
|
|
@@ -205,7 +206,11 @@ declare const meta: {
|
|
|
205
206
|
};
|
|
206
207
|
};
|
|
207
208
|
type Story = StoryObj<typeof meta>;
|
|
208
|
-
export declare const Playground: {
|
|
209
|
+
export declare const Playground: {
|
|
210
|
+
args: {
|
|
211
|
+
default: string;
|
|
212
|
+
};
|
|
213
|
+
};
|
|
209
214
|
export declare const Overview: Story;
|
|
210
215
|
export declare const Regular: {
|
|
211
216
|
args: {
|
|
@@ -3,7 +3,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
3
3
|
color: string;
|
|
4
4
|
styling: string;
|
|
5
5
|
size: string;
|
|
6
|
-
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
6
|
+
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
|
|
7
7
|
color: string;
|
|
8
8
|
styling: string;
|
|
9
9
|
size: string;
|
|
@@ -13,6 +13,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
13
13
|
styling: import("./button").Style;
|
|
14
14
|
}, {}>, {
|
|
15
15
|
default?(_: {}): any;
|
|
16
|
+
html?(_: {}): any;
|
|
16
17
|
}>;
|
|
17
18
|
export default _default;
|
|
18
19
|
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Props } from './checkbox';
|
|
2
2
|
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
3
3
|
"update:modelValue": (value: boolean | string[] | Set<string>) => void;
|
|
4
|
-
}, string, import("vue").
|
|
4
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
|
|
5
5
|
"onUpdate:modelValue"?: ((value: boolean | string[] | Set<string>) => any) | undefined;
|
|
6
6
|
}, {}, {}>, {
|
|
7
7
|
default?(_: {}): any;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Props } from './controlLabel';
|
|
2
|
-
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
2
|
+
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
|
|
3
3
|
default?(_: {}): any;
|
|
4
4
|
}>;
|
|
5
5
|
export default _default;
|
|
@@ -9,7 +9,7 @@ declare const meta: {
|
|
|
9
9
|
type: import("vue").PropType<string>;
|
|
10
10
|
required: true;
|
|
11
11
|
};
|
|
12
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
12
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
13
13
|
hint: {
|
|
14
14
|
type: import("vue").PropType<string>;
|
|
15
15
|
required: true;
|
|
@@ -76,7 +76,7 @@ export declare const Tooltip: {
|
|
|
76
76
|
type: import("vue").PropType<string>;
|
|
77
77
|
required: true;
|
|
78
78
|
};
|
|
79
|
-
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
79
|
+
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
80
80
|
hint: {
|
|
81
81
|
type: import("vue").PropType<string>;
|
|
82
82
|
required: true;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Props } from './hint';
|
|
2
|
-
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
2
|
+
declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
|
|
3
3
|
export default _default;
|
|
4
4
|
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
5
5
|
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Size } from '
|
|
2
|
-
import { sizes } from '
|
|
1
|
+
import type { Size } from '../helpers';
|
|
2
|
+
import { sizes } from '../helpers';
|
|
3
3
|
export interface Props {
|
|
4
4
|
modelValue: string;
|
|
5
5
|
name?: string;
|
|
@@ -4,7 +4,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
4
4
|
captionType: string;
|
|
5
5
|
}>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
6
6
|
"update:modelValue": (value: string) => void;
|
|
7
|
-
}, string, import("vue").
|
|
7
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
|
|
8
8
|
size: string;
|
|
9
9
|
captionType: string;
|
|
10
10
|
}>>> & {
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { Props, Emits } from '
|
|
2
|
-
export * from '
|
|
1
|
+
import type { Props, Emits } from '../input/input';
|
|
2
|
+
export * from '../input/input';
|
|
3
3
|
export type { Props, Emits };
|