@topvisor/ui 1.5.0-updates.0 → 1.5.0-updates.5
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 +2 -0
- package/.chunks/api-CawzY1Cw.amd.js.map +1 -0
- package/.chunks/api-CawzY1Cw.esm.js +208 -0
- package/.chunks/api-CawzY1Cw.esm.js.map +1 -0
- package/.chunks/app-CCX-gNqz.amd.js +2 -0
- package/.chunks/app-CCX-gNqz.amd.js.map +1 -0
- package/.chunks/app-CCX-gNqz.esm.js +396 -0
- package/.chunks/app-CCX-gNqz.esm.js.map +1 -0
- package/.chunks/datepicker-BTkZOq7d.amd.js +2 -0
- package/.chunks/datepicker-BTkZOq7d.amd.js.map +1 -0
- package/.chunks/datepicker-BTkZOq7d.esm.js +38 -0
- package/.chunks/datepicker-BTkZOq7d.esm.js.map +1 -0
- package/.chunks/dialog-DeM4SApg.amd.js +2 -0
- package/.chunks/dialog-DeM4SApg.amd.js.map +1 -0
- package/.chunks/dialog-DeM4SApg.esm.js +117 -0
- package/.chunks/dialog-DeM4SApg.esm.js.map +1 -0
- package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.amd.js +2 -0
- package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.amd.js.map +1 -0
- package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.esm.js +169 -0
- package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.esm.js.map +1 -0
- package/.chunks/dialogs-CMrERMI7.amd.js +2 -0
- package/.chunks/dialogs-CMrERMI7.amd.js.map +1 -0
- package/.chunks/dialogs-CMrERMI7.esm.js +237 -0
- package/.chunks/dialogs-CMrERMI7.esm.js.map +1 -0
- package/.chunks/field-CjkpGeA7.amd.js +2 -0
- package/.chunks/field-CjkpGeA7.amd.js.map +1 -0
- package/.chunks/field-CjkpGeA7.esm.js +16 -0
- package/.chunks/field-CjkpGeA7.esm.js.map +1 -0
- package/.chunks/forms-CbUt-6Ff.amd.js +2 -0
- package/.chunks/forms-CbUt-6Ff.amd.js.map +1 -0
- package/.chunks/forms-CbUt-6Ff.esm.js +1991 -0
- package/.chunks/forms-CbUt-6Ff.esm.js.map +1 -0
- package/.chunks/formsExt-CrTmBhja.amd.js +2 -0
- package/.chunks/formsExt-CrTmBhja.amd.js.map +1 -0
- package/.chunks/formsExt-CrTmBhja.esm.js +807 -0
- package/.chunks/formsExt-CrTmBhja.esm.js.map +1 -0
- package/.chunks/lazy-CGswTOPj.amd.js +2 -0
- package/.chunks/lazy-CGswTOPj.amd.js.map +1 -0
- package/.chunks/lazy-CGswTOPj.esm.js +68 -0
- package/.chunks/lazy-CGswTOPj.esm.js.map +1 -0
- package/.chunks/mocker-CwZe-g4N.amd.js +2 -0
- package/.chunks/mocker-CwZe-g4N.amd.js.map +1 -0
- package/.chunks/mocker-CwZe-g4N.esm.js +45 -0
- package/.chunks/mocker-CwZe-g4N.esm.js.map +1 -0
- package/.chunks/notice-CslVdVNm.amd.js +4 -0
- package/.chunks/notice-CslVdVNm.amd.js.map +1 -0
- package/.chunks/notice-CslVdVNm.esm.js +191 -0
- package/.chunks/notice-CslVdVNm.esm.js.map +1 -0
- package/.chunks/popup-DrByVU-k.amd.js +2 -0
- package/.chunks/popup-DrByVU-k.amd.js.map +1 -0
- package/.chunks/popup-DrByVU-k.esm.js +444 -0
- package/.chunks/popup-DrByVU-k.esm.js.map +1 -0
- package/.chunks/popup-dNrN-eKi.amd.js +2 -0
- package/.chunks/popup-dNrN-eKi.amd.js.map +1 -0
- package/.chunks/popup-dNrN-eKi.esm.js +323 -0
- package/.chunks/popup-dNrN-eKi.esm.js.map +1 -0
- package/.chunks/punycode.es6-B-5kB2YI.amd.js +2 -0
- package/.chunks/{punycode.es6-CgGegfA_.es.js.map → punycode.es6-B-5kB2YI.amd.js.map} +1 -1
- package/.chunks/punycode.es6-B-5kB2YI.esm.js +105 -0
- package/.chunks/punycode.es6-B-5kB2YI.esm.js.map +1 -0
- package/.chunks/store-DuQpSSLL.amd.js +2 -0
- package/.chunks/{store-CX_6ZXhO.es.js.map → store-DuQpSSLL.amd.js.map} +1 -1
- package/.chunks/store-DuQpSSLL.esm.js +27 -0
- package/.chunks/store-DuQpSSLL.esm.js.map +1 -0
- package/.chunks/utils-BwiXsV0S.amd.js +2 -0
- package/.chunks/utils-BwiXsV0S.amd.js.map +1 -0
- package/.chunks/utils-BwiXsV0S.esm.js +43 -0
- package/.chunks/utils-BwiXsV0S.esm.js.map +1 -0
- package/.chunks/utils-Dd0MZgyw.amd.js +2 -0
- package/.chunks/utils-Dd0MZgyw.amd.js.map +1 -0
- package/.chunks/utils-Dd0MZgyw.esm.js +287 -0
- package/.chunks/utils-Dd0MZgyw.esm.js.map +1 -0
- package/.chunks/worker-Db8YrEHo.amd.js +2 -0
- package/.chunks/worker-Db8YrEHo.amd.js.map +1 -0
- package/.chunks/worker-Db8YrEHo.esm.js +100 -0
- package/.chunks/worker-Db8YrEHo.esm.js.map +1 -0
- package/api/additional.amd.js +2 -2
- package/api/additional.amd.js.map +1 -1
- package/api/additional.js +70 -66
- package/api/additional.js.map +1 -1
- package/api/index.amd.js +2 -2
- package/api/index.amd.js.map +1 -1
- package/api/index.js +3 -285
- package/assets/charts.css +1 -1
- package/assets/core.css +1 -1
- package/assets/dialog_regionSelectorRegions.css +1 -1
- package/assets/extra.css +1 -1
- package/assets/forms.css +1 -1
- package/assets/formsExt.css +1 -0
- package/assets/layout.css +1 -1
- package/assets/notice.css +1 -1
- package/assets/popup.css +1 -0
- package/assets/project.css +1 -1
- package/assets/tabs.css +1 -1
- package/assets/tabsView.css +1 -1
- package/assets/themes/dark-th.css +1 -1
- package/assets/themes/dark.css +1 -1
- package/assets/themes/light.css +1 -1
- package/autoload-css-manifest.amd.json +79 -0
- package/autoload-css-manifest.json +90 -0
- package/charts/charts.amd.js +2 -2
- package/charts/charts.amd.js.map +1 -1
- package/charts/charts.js +146 -174
- package/charts/charts.js.map +1 -1
- package/core/app.amd.js +2 -2
- package/core/app.amd.js.map +1 -1
- package/core/app.js +5 -213
- package/dialog/dialog.amd.js +2 -2
- package/dialog/dialog.amd.js.map +1 -1
- package/dialog/dialog.js +4 -60
- package/extra/extra.amd.js +2 -2
- package/extra/extra.amd.js.map +1 -1
- package/extra/extra.js +73 -69
- package/extra/extra.js.map +1 -1
- package/forms/forms.amd.js +2 -2
- package/forms/forms.amd.js.map +1 -1
- package/forms/forms.js +2 -19
- package/forms/helpers.amd.js +2 -2
- package/forms/helpers.amd.js.map +1 -1
- package/forms/helpers.js +0 -2
- package/formsExt/formsExt.amd.js +2 -2
- package/formsExt/formsExt.amd.js.map +1 -1
- package/formsExt/formsExt.js +2 -373
- package/icomoon/demo-files/demo.amd.js +2 -0
- package/icomoon/demo-files/demo.amd.js.map +1 -0
- package/icomoon/demo.amd.js +2 -0
- package/icomoon/demo.amd.js.map +1 -0
- package/layout/layout.amd.js +2 -2
- package/layout/layout.amd.js.map +1 -1
- package/layout/layout.js +41 -57
- package/layout/layout.js.map +1 -1
- package/package.json +1 -1
- package/popup/popup.amd.js +2 -2
- package/popup/popup.amd.js.map +1 -1
- package/popup/popup.js +2 -282
- package/popup/worker.amd.js +2 -2
- package/popup/worker.amd.js.map +1 -1
- package/popup/worker.js +2 -144
- package/project/project.amd.js +2 -2
- package/project/project.amd.js.map +1 -1
- package/project/project.js +1666 -1643
- package/project/project.js.map +1 -1
- package/src/src/components/project/groupSelector/folders/types.d.ts +1 -1
- package/src/src/components/project/groupSelector/folders/utils.d.ts +35 -400
- package/src/src/components/project/groupSelector/groupSelector.vue.d.ts +1 -1
- package/src/src/components/project/groupSelector/groups/types.d.ts +1 -1
- package/src/src/components/project/groupSelector/groups/utils.d.ts +44 -757
- package/src/src/components/project/projectSelector/utils.d.ts +40 -39
- package/tabs/tabs.amd.js +2 -2
- package/tabs/tabs.amd.js.map +1 -1
- package/tabs/tabs.js +63 -77
- package/tabs/tabs.js.map +1 -1
- package/tabsView/tabsView.amd.js +2 -2
- package/tabsView/tabsView.amd.js.map +1 -1
- package/tabsView/tabsView.js +245 -288
- package/tabsView/tabsView.js.map +1 -1
- package/utils/check.amd.js +2 -2
- package/utils/check.amd.js.map +1 -1
- package/utils/check.js +15 -19
- package/utils/check.js.map +1 -1
- package/utils/clipboard.amd.js +6 -6
- package/utils/clipboard.amd.js.map +1 -1
- package/utils/clipboard.js +26 -31
- package/utils/clipboard.js.map +1 -1
- package/utils/date.amd.js +2 -2
- package/utils/date.amd.js.map +1 -1
- package/utils/date.js +2 -12
- package/utils/device.amd.js +2 -2
- package/utils/device.amd.js.map +1 -1
- package/utils/device.js +2 -15
- package/utils/dom.amd.js +2 -2
- package/utils/dom.amd.js.map +1 -1
- package/utils/dom.js +53 -67
- package/utils/dom.js.map +1 -1
- package/utils/image.amd.js +3 -3
- package/utils/image.amd.js.map +1 -1
- package/utils/image.js +12 -22
- package/utils/image.js.map +1 -1
- package/utils/keyboard.amd.js +2 -2
- package/utils/keyboard.amd.js.map +1 -1
- package/utils/keyboard.js +10 -11
- package/utils/keyboard.js.map +1 -1
- package/utils/lodash.amd.js +2 -2
- package/utils/lodash.amd.js.map +1 -1
- package/utils/lodash.js +2 -9
- package/utils/number.amd.js +2 -2
- package/utils/number.amd.js.map +1 -1
- package/utils/number.js +12 -12
- package/utils/number.js.map +1 -1
- package/utils/price.amd.js +2 -2
- package/utils/price.amd.js.map +1 -1
- package/utils/price.js +14 -9
- package/utils/price.js.map +1 -1
- package/utils/route.amd.js +2 -2
- package/utils/route.amd.js.map +1 -1
- package/utils/route.js +33 -37
- package/utils/route.js.map +1 -1
- package/utils/scroll.amd.js +2 -2
- package/utils/scroll.amd.js.map +1 -1
- package/utils/scroll.js +39 -43
- package/utils/scroll.js.map +1 -1
- package/utils/searchers.amd.js +2 -2
- package/utils/searchers.amd.js.map +1 -1
- package/utils/searchers.js +128 -133
- package/utils/searchers.js.map +1 -1
- package/utils/store.amd.js +2 -2
- package/utils/store.amd.js.map +1 -1
- package/utils/store.js +2 -7
- package/utils/string.amd.js +2 -2
- package/utils/string.amd.js.map +1 -1
- package/utils/string.js +120 -147
- package/utils/string.js.map +1 -1
- package/utils/system.amd.js +2 -2
- package/utils/system.amd.js.map +1 -1
- package/utils/system.js +25 -28
- package/utils/system.js.map +1 -1
- package/utils/url.amd.js +3 -3
- package/utils/url.amd.js.map +1 -1
- package/utils/url.js +36 -47
- package/utils/url.js.map +1 -1
- package/.chunks/core-Dgj_YGWh.es.js +0 -268
- package/.chunks/core-Dgj_YGWh.es.js.map +0 -1
- package/.chunks/core-DzDFXOdI.amd.js +0 -2
- package/.chunks/core-DzDFXOdI.amd.js.map +0 -1
- package/.chunks/datepicker-oa8ZwRhq.amd.js +0 -2
- package/.chunks/datepicker-oa8ZwRhq.amd.js.map +0 -1
- package/.chunks/datepicker-qToxk2nN.es.js +0 -41
- package/.chunks/datepicker-qToxk2nN.es.js.map +0 -1
- package/.chunks/dialog_regionSelectorRegions-CZ0tMVSq.amd.js +0 -2
- package/.chunks/dialog_regionSelectorRegions-CZ0tMVSq.amd.js.map +0 -1
- package/.chunks/dialog_regionSelectorRegions-qDW2Ejsv.es.js +0 -180
- package/.chunks/dialog_regionSelectorRegions-qDW2Ejsv.es.js.map +0 -1
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BBix_8WK.amd.js +0 -2
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BBix_8WK.amd.js.map +0 -1
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CJ97l1ST.es.js +0 -323
- package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CJ97l1ST.es.js.map +0 -1
- package/.chunks/field-Cvv0SRcJ.amd.js +0 -2
- package/.chunks/field-Cvv0SRcJ.amd.js.map +0 -1
- package/.chunks/field-CyyFzM-Y.es.js +0 -16
- package/.chunks/field-CyyFzM-Y.es.js.map +0 -1
- package/.chunks/forms-DDNzqU6o.amd.js +0 -3
- package/.chunks/forms-DDNzqU6o.amd.js.map +0 -1
- package/.chunks/forms-DtC-EKJL.es.js +0 -2053
- package/.chunks/forms-DtC-EKJL.es.js.map +0 -1
- package/.chunks/index-DLUtoTUg.amd.js +0 -2
- package/.chunks/index-DLUtoTUg.amd.js.map +0 -1
- package/.chunks/index-DkQWJkMc.es.js +0 -54
- package/.chunks/index-DkQWJkMc.es.js.map +0 -1
- package/.chunks/lazy-DDNqYkXn.amd.js +0 -2
- package/.chunks/lazy-DDNqYkXn.amd.js.map +0 -1
- package/.chunks/lazy-HKSyLh72.es.js +0 -75
- package/.chunks/lazy-HKSyLh72.es.js.map +0 -1
- package/.chunks/notice-BvQl911b.es.js +0 -191
- package/.chunks/notice-BvQl911b.es.js.map +0 -1
- package/.chunks/notice-CJ3WOTCM.amd.js +0 -4
- package/.chunks/notice-CJ3WOTCM.amd.js.map +0 -1
- package/.chunks/page.vue_vue_type_script_setup_true_lang-Dd5-B4Ss.es.js +0 -139
- package/.chunks/page.vue_vue_type_script_setup_true_lang-Dd5-B4Ss.es.js.map +0 -1
- package/.chunks/page.vue_vue_type_script_setup_true_lang-fl6-Ql4d.amd.js +0 -2
- package/.chunks/page.vue_vue_type_script_setup_true_lang-fl6-Ql4d.amd.js.map +0 -1
- package/.chunks/policy.vue_vue_type_style_index_0_lang-Bv3LwNDC.es.js +0 -519
- package/.chunks/policy.vue_vue_type_style_index_0_lang-Bv3LwNDC.es.js.map +0 -1
- package/.chunks/policy.vue_vue_type_style_index_0_lang-Da7rztT5.amd.js +0 -2
- package/.chunks/policy.vue_vue_type_style_index_0_lang-Da7rztT5.amd.js.map +0 -1
- package/.chunks/popup-OuDglAOF.es.js +0 -470
- package/.chunks/popup-OuDglAOF.es.js.map +0 -1
- package/.chunks/popup-yXIpyok3.amd.js +0 -2
- package/.chunks/popup-yXIpyok3.amd.js.map +0 -1
- package/.chunks/popupHint.vue_vue_type_style_index_0_lang-Bu_HvFoW.amd.js +0 -2
- package/.chunks/popupHint.vue_vue_type_style_index_0_lang-Bu_HvFoW.amd.js.map +0 -1
- package/.chunks/popupHint.vue_vue_type_style_index_0_lang-DAQIAxvu.es.js +0 -209
- package/.chunks/popupHint.vue_vue_type_style_index_0_lang-DAQIAxvu.es.js.map +0 -1
- package/.chunks/punycode.es6-CNOnFR2-.amd.js +0 -2
- package/.chunks/punycode.es6-CNOnFR2-.amd.js.map +0 -1
- package/.chunks/punycode.es6-CgGegfA_.es.js +0 -134
- package/.chunks/store-CX_6ZXhO.es.js +0 -29
- package/.chunks/store-YRW59xEF.amd.js +0 -2
- package/.chunks/store-YRW59xEF.amd.js.map +0 -1
- package/.chunks/utils-BNzP9anP.es.js +0 -78
- package/.chunks/utils-BNzP9anP.es.js.map +0 -1
- package/.chunks/utils-CWn_G7OO.amd.js +0 -2
- package/.chunks/utils-CWn_G7OO.amd.js.map +0 -1
- package/.chunks/utils-DIviuVEw.amd.js +0 -2
- package/.chunks/utils-DIviuVEw.amd.js.map +0 -1
- package/.chunks/utils-Dma85ehT.es.js +0 -288
- package/.chunks/utils-Dma85ehT.es.js.map +0 -1
- package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CX_BOcVY.es.js +0 -39
- package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CX_BOcVY.es.js.map +0 -1
- package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CkOmb3VD.amd.js +0 -2
- package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CkOmb3VD.amd.js.map +0 -1
- package/api/index.js.map +0 -1
- package/assets/policy.css +0 -1
- package/assets/popupHint.css +0 -1
- package/core/app.js.map +0 -1
- package/dialog/dialog.js.map +0 -1
- package/forms/forms.js.map +0 -1
- package/forms/helpers.js.map +0 -1
- package/formsExt/formsExt.js.map +0 -1
- package/popup/popup.js.map +0 -1
- package/popup/worker.js.map +0 -1
- package/src/src/components/project/groupSelector/utils.d.ts +0 -37
- package/utils/date.js.map +0 -1
- package/utils/device.js.map +0 -1
- package/utils/lodash.js.map +0 -1
- package/utils/store.js.map +0 -1
package/utils/dom.js
CHANGED
|
@@ -1,80 +1,66 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
//#region src/core/utils/dom.ts
|
|
2
|
+
function e(e, t, ...n) {
|
|
3
|
+
let r = document.createElement(e);
|
|
4
|
+
for (let e in t) e.indexOf("on") === 0 ? r[e] = t[e] : r.setAttribute(e, t[e]);
|
|
5
|
+
return n.forEach((e) => {
|
|
6
|
+
typeof e == "string" ? r.insertAdjacentHTML("beforeend", e) : r.append(e);
|
|
7
|
+
}), r;
|
|
8
8
|
}
|
|
9
|
-
function
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return !!(e.width || e.height);
|
|
9
|
+
function t(e) {
|
|
10
|
+
if (!e) return !1;
|
|
11
|
+
let t = e.getBoundingClientRect();
|
|
12
|
+
return !!(t.width || t.height);
|
|
14
13
|
}
|
|
15
|
-
function
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
function n(e) {
|
|
15
|
+
let t = e.getBoundingClientRect();
|
|
16
|
+
return {
|
|
17
|
+
top: t.top + window.scrollY,
|
|
18
|
+
left: t.left + window.scrollX
|
|
19
|
+
};
|
|
21
20
|
}
|
|
22
|
-
function
|
|
23
|
-
|
|
21
|
+
function r(e, t) {
|
|
22
|
+
return window.getComputedStyle(e).getPropertyValue(t);
|
|
24
23
|
}
|
|
25
|
-
function
|
|
26
|
-
|
|
24
|
+
function i(e, t) {
|
|
25
|
+
return parseInt(r(e, t));
|
|
27
26
|
}
|
|
28
|
-
function a(
|
|
29
|
-
|
|
30
|
-
|
|
27
|
+
function a(e, t) {
|
|
28
|
+
let n = document.createElement(t);
|
|
29
|
+
return e.after(n), n.append(e), n;
|
|
31
30
|
}
|
|
32
|
-
function
|
|
33
|
-
|
|
31
|
+
function o(e, n) {
|
|
32
|
+
return l(e, n).find(t) || null;
|
|
34
33
|
}
|
|
35
|
-
function
|
|
36
|
-
|
|
34
|
+
function s(e, n) {
|
|
35
|
+
return l(e, n).findLast(t) || null;
|
|
37
36
|
}
|
|
38
|
-
function
|
|
39
|
-
|
|
37
|
+
function c(e, n) {
|
|
38
|
+
return l(e, n).filter(t);
|
|
40
39
|
}
|
|
41
|
-
function
|
|
42
|
-
|
|
40
|
+
function l(e, t) {
|
|
41
|
+
return e ? [...e.querySelectorAll(t)] : [];
|
|
43
42
|
}
|
|
44
|
-
function
|
|
45
|
-
|
|
46
|
-
return t.topData || (t.topData = {}), n && (t.topData[e] = n), n === null && delete t.topData[e], t.topData[e];
|
|
43
|
+
function u(e, t = "common", n = void 0) {
|
|
44
|
+
if (e) return e.topData ||= {}, n && (e.topData[t] = n), n === null && delete e.topData[t], e.topData[t];
|
|
47
45
|
}
|
|
48
|
-
function
|
|
49
|
-
|
|
46
|
+
function d(e) {
|
|
47
|
+
e && delete e.topData;
|
|
50
48
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
49
|
+
var f = {
|
|
50
|
+
genEl: e,
|
|
51
|
+
isVisible: t,
|
|
52
|
+
offset: n,
|
|
53
|
+
css: r,
|
|
54
|
+
cssNumber: i,
|
|
55
|
+
wrap: a,
|
|
56
|
+
querySelectorVisible: o,
|
|
57
|
+
querySelectorVisibleLast: s,
|
|
58
|
+
querySelectorAllVisible: c,
|
|
59
|
+
querySelectorAllArray: l,
|
|
60
|
+
storage: u,
|
|
61
|
+
storageClear: d
|
|
64
62
|
};
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
c as genEl,
|
|
70
|
-
i as isVisible,
|
|
71
|
-
l as offset,
|
|
72
|
-
u as querySelectorAllArray,
|
|
73
|
-
g as querySelectorAllVisible,
|
|
74
|
-
d as querySelectorVisible,
|
|
75
|
-
p as querySelectorVisibleLast,
|
|
76
|
-
b as storage,
|
|
77
|
-
y as storageClear,
|
|
78
|
-
a as wrap
|
|
79
|
-
};
|
|
80
|
-
//# sourceMappingURL=dom.js.map
|
|
63
|
+
//#endregion
|
|
64
|
+
export { r as css, i as cssNumber, f as default, e as genEl, t as isVisible, n as offset, l as querySelectorAllArray, c as querySelectorAllVisible, o as querySelectorVisible, s as querySelectorVisibleLast, u as storage, d as storageClear, a as wrap };
|
|
65
|
+
|
|
66
|
+
//# sourceMappingURL=dom.js.map
|
package/utils/dom.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom.js","sources":["../../src/core/utils/dom.ts"],"sourcesContent":["/**\n * Работа с Document Object Model (DOM)\n * @packageDocumentation\n */\n\n/**\n * Создать элемент\n * @param tagName\n * @param attrs - атрибуты\n * @param elsChildrens\n * @returns - созданный элемент\n */\nexport function genEl(tagName: string, attrs?: Record<string, string>, ...elsChildrens: HTMLElement[] | string[]): HTMLElement {\n\tconst el: any = document.createElement(tagName);\n\n\tfor (const name in attrs) {\n\t\tif (name.indexOf('on') === 0) {\n\t\t\t// events\n\t\t\tel[name] = attrs[name];\n\t\t} else {\n\t\t\tel.setAttribute(name, attrs[name]);\n\t\t}\n\t}\n\n\telsChildrens.forEach((elChildren: HTMLElement | string) => {\n\t\tif (typeof (elChildren) === 'string') {\n\t\t\tel.insertAdjacentHTML('beforeend', elChildren);\n\t\t} else {\n\t\t\tel.append(elChildren);\n\t\t}\n\t});\n\n\treturn el;\n}\n\n/**\n * Проверить видимость элемента\n * @param el\n * @returns - вернет true, если элемент считается видимым\n */\nexport function isVisible(el?: HTMLElement): boolean {\n\tif (!el) {\n\t\treturn false;\n\t}\n\n\tconst boundingClientRect = el.getBoundingClientRect();\n\treturn !!(boundingClientRect.width || boundingClientRect.height);\n}\n\n/**\n * Получить координаты элемента относительно документа\n * @param el\n * @returns - координаты элемента относительно документа\n */\nexport function offset(el: HTMLElement): { top: number, left: number } {\n\tconst boundingClientRect = el.getBoundingClientRect();\n\n\treturn {\n\t\ttop: boundingClientRect.top + window.scrollY,\n\t\tleft: boundingClientRect.left + window.scrollX,\n\t};\n}\n\n/**\n * Получить значение css свойства элемента\n *\n * @param el\n * @param property - имя свойства\n * @return - значение css стиля\n */\nexport function css(el: HTMLElement, property: string): string {\n\treturn window.getComputedStyle(el).getPropertyValue(property);\n}\n\n/**\n * Получить значение css свойства целочисленного типа\n *\n * @param el\n * @param property - имя свойства\n * @return - значение css стиля\n */\nexport function cssNumber(el: HTMLElement, property: string): number {\n\treturn parseInt(css(el, property));\n}\n\n/**\n * Обернуть элемент и вернуть только что созданный элемент\n * @param el - элемент, который требуется обернуть\n * @param tagName - имя тега элемента, в который треубется обернуть элемент\n */\nexport function wrap(el: HTMLElement, tagName: string): HTMLElement {\n\tconst elWrapper = document.createElement(tagName);\n\tel.after(elWrapper);\n\n\telWrapper.append(el);\n\n\treturn elWrapper;\n}\n\n/**\n * Найти и вернуть первый видимый элемент\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorVisible(el: HTMLElement, selectors: string): HTMLElement | null {\n\treturn querySelectorAllArray(el, selectors).find(isVisible) || null;\n}\n\n/**\n * Найти и вернуть последний видимый элемент\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorVisibleLast(el: HTMLElement, selectors: string): HTMLElement | null {\n\treturn querySelectorAllArray(el, selectors).findLast(isVisible) || null;\n}\n\n/**\n * Найти видимые элементы\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorAllVisible(el: HTMLElement | Document, selectors: string): HTMLElement[] {\n\treturn querySelectorAllArray(el, selectors).filter(isVisible);\n}\n\n/**\n * Найти элементы и вернуть в виде массива\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorAllArray<El extends HTMLElement = HTMLElement>(el: HTMLElement | Document, selectors: string) {\n\tif (!el) {\n\t\treturn [];\n\t}\n\n\treturn [...el.querySelectorAll<El>(selectors)];\n}\n\n/**\n * Хранилище данных элемента\n * @param el\n * @param contextName - контекст, обычно используется имя компонента\n * @param contextData - установить объект с данными, предыдущие данные будут заменены, установите null для удаления данных\n * @returns - вернет объект контекста или undefined, если данные контекста не найдены\n */\nexport function storage(\n\tel?: HTMLElement & { topData?: any },\n\tcontextName: string = 'common',\n\tcontextData: object | null | undefined = undefined,\n): any | undefined {\n\tif (!el) {\n\t\treturn;\n\t}\n\n\tif (!el.topData) {\n\t\tel.topData = {};\n\t}\n\n\tif (contextData) {\n\t\tel.topData[contextName] = contextData;\n\t}\n\n\tif (contextData === null) {\n\t\tdelete el.topData[contextName];\n\t}\n\n\treturn el.topData[contextName];\n}\n\n/**\n * Очистить хранилище элемента\n */\nexport function storageClear(el?: HTMLElement & { topData?: any }): void {\n\tif (!el) {\n\t\treturn;\n\t}\n\n\tdelete el.topData;\n}\n\nexport default {\n\tgenEl,\n\tisVisible,\n\toffset,\n\tcss,\n\tcssNumber,\n\twrap,\n\tquerySelectorVisible,\n\tquerySelectorVisibleLast,\n\tquerySelectorAllVisible,\n\tquerySelectorAllArray,\n\tstorage,\n\tstorageClear,\n};\n"],"
|
|
1
|
+
{"version":3,"file":"dom.js","names":[],"sources":["../../src/core/utils/dom.ts"],"sourcesContent":["/**\n * Работа с Document Object Model (DOM)\n * @packageDocumentation\n */\n\n/**\n * Создать элемент\n * @param tagName\n * @param attrs - атрибуты\n * @param elsChildrens\n * @returns - созданный элемент\n */\nexport function genEl(tagName: string, attrs?: Record<string, string>, ...elsChildrens: HTMLElement[] | string[]): HTMLElement {\n\tconst el: any = document.createElement(tagName);\n\n\tfor (const name in attrs) {\n\t\tif (name.indexOf('on') === 0) {\n\t\t\t// events\n\t\t\tel[name] = attrs[name];\n\t\t} else {\n\t\t\tel.setAttribute(name, attrs[name]);\n\t\t}\n\t}\n\n\telsChildrens.forEach((elChildren: HTMLElement | string) => {\n\t\tif (typeof (elChildren) === 'string') {\n\t\t\tel.insertAdjacentHTML('beforeend', elChildren);\n\t\t} else {\n\t\t\tel.append(elChildren);\n\t\t}\n\t});\n\n\treturn el;\n}\n\n/**\n * Проверить видимость элемента\n * @param el\n * @returns - вернет true, если элемент считается видимым\n */\nexport function isVisible(el?: HTMLElement): boolean {\n\tif (!el) {\n\t\treturn false;\n\t}\n\n\tconst boundingClientRect = el.getBoundingClientRect();\n\treturn !!(boundingClientRect.width || boundingClientRect.height);\n}\n\n/**\n * Получить координаты элемента относительно документа\n * @param el\n * @returns - координаты элемента относительно документа\n */\nexport function offset(el: HTMLElement): { top: number, left: number } {\n\tconst boundingClientRect = el.getBoundingClientRect();\n\n\treturn {\n\t\ttop: boundingClientRect.top + window.scrollY,\n\t\tleft: boundingClientRect.left + window.scrollX,\n\t};\n}\n\n/**\n * Получить значение css свойства элемента\n *\n * @param el\n * @param property - имя свойства\n * @return - значение css стиля\n */\nexport function css(el: HTMLElement, property: string): string {\n\treturn window.getComputedStyle(el).getPropertyValue(property);\n}\n\n/**\n * Получить значение css свойства целочисленного типа\n *\n * @param el\n * @param property - имя свойства\n * @return - значение css стиля\n */\nexport function cssNumber(el: HTMLElement, property: string): number {\n\treturn parseInt(css(el, property));\n}\n\n/**\n * Обернуть элемент и вернуть только что созданный элемент\n * @param el - элемент, который требуется обернуть\n * @param tagName - имя тега элемента, в который треубется обернуть элемент\n */\nexport function wrap(el: HTMLElement, tagName: string): HTMLElement {\n\tconst elWrapper = document.createElement(tagName);\n\tel.after(elWrapper);\n\n\telWrapper.append(el);\n\n\treturn elWrapper;\n}\n\n/**\n * Найти и вернуть первый видимый элемент\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorVisible(el: HTMLElement, selectors: string): HTMLElement | null {\n\treturn querySelectorAllArray(el, selectors).find(isVisible) || null;\n}\n\n/**\n * Найти и вернуть последний видимый элемент\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorVisibleLast(el: HTMLElement, selectors: string): HTMLElement | null {\n\treturn querySelectorAllArray(el, selectors).findLast(isVisible) || null;\n}\n\n/**\n * Найти видимые элементы\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorAllVisible(el: HTMLElement | Document, selectors: string): HTMLElement[] {\n\treturn querySelectorAllArray(el, selectors).filter(isVisible);\n}\n\n/**\n * Найти элементы и вернуть в виде массива\n * @param el - корневой элемент поиска\n * @param selectors - см. параметр selectors в Document.querySelectorAll()\n */\nexport function querySelectorAllArray<El extends HTMLElement = HTMLElement>(el: HTMLElement | Document, selectors: string) {\n\tif (!el) {\n\t\treturn [];\n\t}\n\n\treturn [...el.querySelectorAll<El>(selectors)];\n}\n\n/**\n * Хранилище данных элемента\n * @param el\n * @param contextName - контекст, обычно используется имя компонента\n * @param contextData - установить объект с данными, предыдущие данные будут заменены, установите null для удаления данных\n * @returns - вернет объект контекста или undefined, если данные контекста не найдены\n */\nexport function storage(\n\tel?: HTMLElement & { topData?: any },\n\tcontextName: string = 'common',\n\tcontextData: object | null | undefined = undefined,\n): any | undefined {\n\tif (!el) {\n\t\treturn;\n\t}\n\n\tif (!el.topData) {\n\t\tel.topData = {};\n\t}\n\n\tif (contextData) {\n\t\tel.topData[contextName] = contextData;\n\t}\n\n\tif (contextData === null) {\n\t\tdelete el.topData[contextName];\n\t}\n\n\treturn el.topData[contextName];\n}\n\n/**\n * Очистить хранилище элемента\n */\nexport function storageClear(el?: HTMLElement & { topData?: any }): void {\n\tif (!el) {\n\t\treturn;\n\t}\n\n\tdelete el.topData;\n}\n\nexport default {\n\tgenEl,\n\tisVisible,\n\toffset,\n\tcss,\n\tcssNumber,\n\twrap,\n\tquerySelectorVisible,\n\tquerySelectorVisibleLast,\n\tquerySelectorAllVisible,\n\tquerySelectorAllArray,\n\tstorage,\n\tstorageClear,\n};\n"],"mappings":";AAYA,SAAgB,EAAM,GAAiB,GAAgC,GAAG,GAAqD;CAC9H,IAAM,IAAU,SAAS,cAAc,EAAQ;AAE/C,MAAK,IAAM,KAAQ,EAClB,CAAI,EAAK,QAAQ,KAAK,KAAK,IAE1B,EAAG,KAAQ,EAAM,KAEjB,EAAG,aAAa,GAAM,EAAM,GAAM;AAYpC,QARA,EAAa,SAAS,MAAqC;AAC1D,EAAI,OAAQ,KAAgB,WAC3B,EAAG,mBAAmB,aAAa,EAAW,GAE9C,EAAG,OAAO,EAAW;GAErB,EAEK;;AAQR,SAAgB,EAAU,GAA2B;AACpD,KAAI,CAAC,EACJ,QAAO;CAGR,IAAM,IAAqB,EAAG,uBAAuB;AACrD,QAAO,CAAC,EAAE,EAAmB,SAAS,EAAmB;;AAQ1D,SAAgB,EAAO,GAAgD;CACtE,IAAM,IAAqB,EAAG,uBAAuB;AAErD,QAAO;EACN,KAAK,EAAmB,MAAM,OAAO;EACrC,MAAM,EAAmB,OAAO,OAAO;EACvC;;AAUF,SAAgB,EAAI,GAAiB,GAA0B;AAC9D,QAAO,OAAO,iBAAiB,EAAG,CAAC,iBAAiB,EAAS;;AAU9D,SAAgB,EAAU,GAAiB,GAA0B;AACpE,QAAO,SAAS,EAAI,GAAI,EAAS,CAAC;;AAQnC,SAAgB,EAAK,GAAiB,GAA8B;CACnE,IAAM,IAAY,SAAS,cAAc,EAAQ;AAKjD,QAJA,EAAG,MAAM,EAAU,EAEnB,EAAU,OAAO,EAAG,EAEb;;AAQR,SAAgB,EAAqB,GAAiB,GAAuC;AAC5F,QAAO,EAAsB,GAAI,EAAU,CAAC,KAAK,EAAU,IAAI;;AAQhE,SAAgB,EAAyB,GAAiB,GAAuC;AAChG,QAAO,EAAsB,GAAI,EAAU,CAAC,SAAS,EAAU,IAAI;;AAQpE,SAAgB,EAAwB,GAA4B,GAAkC;AACrG,QAAO,EAAsB,GAAI,EAAU,CAAC,OAAO,EAAU;;AAQ9D,SAAgB,EAA4D,GAA4B,GAAmB;AAK1H,QAJK,IAIE,CAAC,GAAG,EAAG,iBAAqB,EAAU,CAAC,GAHtC,EAAE;;AAaX,SAAgB,EACf,GACA,IAAsB,UACtB,IAAyC,KAAA,GACvB;AACb,OAgBL,QAZA,AACC,EAAG,YAAU,EAAE,EAGZ,MACH,EAAG,QAAQ,KAAe,IAGvB,MAAgB,QACnB,OAAO,EAAG,QAAQ,IAGZ,EAAG,QAAQ;;AAMnB,SAAgB,EAAa,GAA4C;AACnE,MAIL,OAAO,EAAG;;AAGX,IAAA,IAAe;CACd;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA"}
|
package/utils/image.amd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
define([
|
|
1
|
+
define([`require`,`exports`,`../.chunks/punycode.es6-B-5kB2YI.amd.js`],function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.genFaviconImgHtml=t.downloadImageFromString=void 0,t.downloadImageFromString=(e,t=`download`)=>{let n=document.createElement(`a`);n.download=t,n.href=e,n.click()},t.genFaviconImgHtml=(e,t)=>{let r=32;return t&&(r=120),e=e.replace(/^\w+:\/\/|^www\.|\/.*/g,``),e=n.t.toASCII(e),`<img src="https://favicon.yandex.net/favicon/`+e+`?size=`+r+`" class="top-favicon empty"
|
|
2
2
|
onload="
|
|
3
3
|
var that = this;
|
|
4
4
|
$.ajax({
|
|
@@ -8,5 +8,5 @@ define(["require","exports","../.chunks/punycode.es6-CNOnFR2-.amd"],(function(s,
|
|
|
8
8
|
error:function(){ }
|
|
9
9
|
});
|
|
10
10
|
"
|
|
11
|
-
|
|
12
|
-
//# sourceMappingURL=image.amd.js.map
|
|
11
|
+
alt="">`}});
|
|
12
|
+
//# sourceMappingURL=image.amd.js.map
|
package/utils/image.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["utils/image.js","../../src/core/utils/image.ts"],"names":["exports","n","t","punycode_es6_B_5kB2YI_esm_js_1"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,0CAA0C,CAAE,SAAU,EAAS,EAAS,EAAgC,CAClI,aCWS,OAA2B,eAAsCA,EAAqB,aAAA,CAAA,MAAA,GAAA,CAAA,CAClG,EAAU,kBAAuB,EAAI,wBAAA,IAAA,GDDlC,EAAQ,yBCYmC,EAAA,EAA2B,aAAA,CACrE,IAAO,EAAA,SAAA,cAAA,IAAA,CACP,EAAA,SAAc,EAElB,EAAA,KAAU,EAAA,EAAQ,OAAA,EDff,EAAQ,mBALA,EAAG,IAAM,CACb,IAAI,EAAI,GACR,OAAOC,IAAM,EAAI,KAAM,EAAIC,EAAE,QAAQ,yBAA0B,GAAG,CAAE,EAAIC,EAA+B,EAAE,QAAQD,EAAE,CAAE,gDAAmDA,EAAI,SAAW,EAAI;;;;;;;;;;aAIjM","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/punycode.es6-B-5kB2YI.esm.js\"], function (require, exports, punycode_es6_B_5kB2YI_esm_js_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.genFaviconImgHtml = exports.downloadImageFromString = void 0;\n //#region src/core/utils/image.ts\n var t = (e, t = \"download\") => {\n let n = document.createElement(\"a\");\n n.download = t, n.href = e, n.click();\n }, n = (t, n) => {\n let r = 32;\n return n && (r = 120), t = t.replace(/^\\w+:\\/\\/|^www\\.|\\/.*/g, \"\"), t = punycode_es6_B_5kB2YI_esm_js_1.t.toASCII(t), \"<img src=\\\"https://favicon.yandex.net/favicon/\" + t + \"?size=\" + r + \"\\\" class=\\\"top-favicon empty\\\" \\n\t\tonload=\\\"\\n\t\t\tvar that = this;\\n\t\t\t$.ajax({\\n\t\t\t\ttype:'get',\\n\t\t\t\turl:this.src,\\n\t\t\t\tsuccess:function(res){ if(res.length > 100) that.className='top-favicon'; },\\n\t\t\t\terror:function(){ }\\n\t\t\t});\\n\t\t\\\"\\n\t alt=\\\"\\\">\";\n };\n exports.downloadImageFromString = t;\n exports.genFaviconImgHtml = n;\n});\n//# sourceMappingURL=image.js.map\n","/**\n * Работа с изображениями\n * @packageDocumentation\n */\n\nimport punycode from 'punycode';\n\n/**\n * Скачать изображение, переданное в виде строки\n * @param imageStr - адресс картинки\n * @param imageName - имя файла при загрузке, по умолчанию download\n */\nexport const downloadImageFromString = (imageStr: string, imageName: string = 'download'): void => {\n\tconst a = document.createElement('a');\n\ta.download = imageName;\n\ta.href = imageStr;\n\ta.click();\n};\n\n/**\n * Сгенерировать html картинку с фавиконкой сайта\n * @param url - адрес сайта\n * @param isBig - если true, картинка будет 120px, иначе 32px\n */\nexport const genFaviconImgHtml = (url: string, isBig: boolean): string => {\n\tlet size = 32;\n\tif (isBig) size = 120;\n\n\turl = url.replace(/^\\w+:\\/\\/|^www\\.|\\/.*/g, '');\n\turl = punycode.toASCII(url);\n\n\tconst onloadAttr = `\n\t\tonload=\"\n\t\t\tvar that = this;\n\t\t\t$.ajax({\n\t\t\t\ttype:'get',\n\t\t\t\turl:this.src,\n\t\t\t\tsuccess:function(res){ if(res.length > 100) that.className='top-favicon'; },\n\t\t\t\terror:function(){ }\n\t\t\t});\n\t\t\"\n\t`;\n\n\t//\treturn '<img src=\"https://www.google.com/s2/favicons?domain=' + url + '\" class=\"top-favicon empty\"> ' + onloadAttr + '>';\n\treturn '<img src=\"https://favicon.yandex.net/favicon/' + url + '?size=' + size + '\" class=\"top-favicon empty\" ' + onloadAttr + ' alt=\"\">';\n};\n"]}
|
package/utils/image.js
CHANGED
|
@@ -1,23 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
onload="
|
|
9
|
-
var that = this;
|
|
10
|
-
$.ajax({
|
|
11
|
-
type:'get',
|
|
12
|
-
url:this.src,
|
|
13
|
-
success:function(res){ if(res.length > 100) that.className='top-favicon'; },
|
|
14
|
-
error:function(){ }
|
|
15
|
-
});
|
|
16
|
-
"
|
|
17
|
-
` + ' alt="">';
|
|
1
|
+
import { t as e } from "../.chunks/punycode.es6-B-5kB2YI.esm.js";
|
|
2
|
+
//#region src/core/utils/image.ts
|
|
3
|
+
var t = (e, t = "download") => {
|
|
4
|
+
let n = document.createElement("a");
|
|
5
|
+
n.download = t, n.href = e, n.click();
|
|
6
|
+
}, n = (t, n) => {
|
|
7
|
+
let r = 32;
|
|
8
|
+
return n && (r = 120), t = t.replace(/^\w+:\/\/|^www\.|\/.*/g, ""), t = e.toASCII(t), "<img src=\"https://favicon.yandex.net/favicon/" + t + "?size=" + r + "\" class=\"top-favicon empty\" \n onload=\"\n var that = this;\n $.ajax({\n type:'get',\n url:this.src,\n success:function(res){ if(res.length > 100) that.className='top-favicon'; },\n error:function(){ }\n });\n \"\n alt=\"\">";
|
|
18
9
|
};
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
//# sourceMappingURL=image.js.map
|
|
10
|
+
//#endregion
|
|
11
|
+
export { t as downloadImageFromString, n as genFaviconImgHtml };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=image.js.map
|
package/utils/image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.js","sources":["../../src/core/utils/image.ts"],"sourcesContent":["/**\n * Работа с изображениями\n * @packageDocumentation\n */\n\nimport punycode from 'punycode';\n\n/**\n * Скачать изображение, переданное в виде строки\n * @param imageStr - адресс картинки\n * @param imageName - имя файла при загрузке, по умолчанию download\n */\nexport const downloadImageFromString = (imageStr: string, imageName: string = 'download'): void => {\n\tconst a = document.createElement('a');\n\ta.download = imageName;\n\ta.href = imageStr;\n\ta.click();\n};\n\n/**\n * Сгенерировать html картинку с фавиконкой сайта\n * @param url - адрес сайта\n * @param isBig - если true, картинка будет 120px, иначе 32px\n */\nexport const genFaviconImgHtml = (url: string, isBig: boolean): string => {\n\tlet size = 32;\n\tif (isBig) size = 120;\n\n\turl = url.replace(/^\\w+:\\/\\/|^www\\.|\\/.*/g, '');\n\turl = punycode.toASCII(url);\n\n\tconst onloadAttr = `\n\t\tonload=\"\n\t\t\tvar that = this;\n\t\t\t$.ajax({\n\t\t\t\ttype:'get',\n\t\t\t\turl:this.src,\n\t\t\t\tsuccess:function(res){ if(res.length > 100) that.className='top-favicon'; },\n\t\t\t\terror:function(){ }\n\t\t\t});\n\t\t\"\n\t`;\n\n\t//\treturn '<img src=\"https://www.google.com/s2/favicons?domain=' + url + '\" class=\"top-favicon empty\"> ' + onloadAttr + '>';\n\treturn '<img src=\"https://favicon.yandex.net/favicon/' + url + '?size=' + size + '\" class=\"top-favicon empty\" ' + onloadAttr + ' alt=\"\">';\n};\n"],"
|
|
1
|
+
{"version":3,"file":"image.js","names":[],"sources":["../../src/core/utils/image.ts"],"sourcesContent":["/**\n * Работа с изображениями\n * @packageDocumentation\n */\n\nimport punycode from 'punycode';\n\n/**\n * Скачать изображение, переданное в виде строки\n * @param imageStr - адресс картинки\n * @param imageName - имя файла при загрузке, по умолчанию download\n */\nexport const downloadImageFromString = (imageStr: string, imageName: string = 'download'): void => {\n\tconst a = document.createElement('a');\n\ta.download = imageName;\n\ta.href = imageStr;\n\ta.click();\n};\n\n/**\n * Сгенерировать html картинку с фавиконкой сайта\n * @param url - адрес сайта\n * @param isBig - если true, картинка будет 120px, иначе 32px\n */\nexport const genFaviconImgHtml = (url: string, isBig: boolean): string => {\n\tlet size = 32;\n\tif (isBig) size = 120;\n\n\turl = url.replace(/^\\w+:\\/\\/|^www\\.|\\/.*/g, '');\n\turl = punycode.toASCII(url);\n\n\tconst onloadAttr = `\n\t\tonload=\"\n\t\t\tvar that = this;\n\t\t\t$.ajax({\n\t\t\t\ttype:'get',\n\t\t\t\turl:this.src,\n\t\t\t\tsuccess:function(res){ if(res.length > 100) that.className='top-favicon'; },\n\t\t\t\terror:function(){ }\n\t\t\t});\n\t\t\"\n\t`;\n\n\t//\treturn '<img src=\"https://www.google.com/s2/favicons?domain=' + url + '\" class=\"top-favicon empty\"> ' + onloadAttr + '>';\n\treturn '<img src=\"https://favicon.yandex.net/favicon/' + url + '?size=' + size + '\" class=\"top-favicon empty\" ' + onloadAttr + ' alt=\"\">';\n};\n"],"mappings":";;AAYA,IAAa,KAA2B,GAAkB,IAAoB,eAAqB;CAClG,IAAM,IAAI,SAAS,cAAc,IAAI;AAGrC,CAFA,EAAE,WAAW,GACb,EAAE,OAAO,GACT,EAAE,OAAO;GAQG,KAAqB,GAAa,MAA2B;CACzE,IAAI,IAAO;AAmBX,QAlBI,MAAO,IAAO,MAElB,IAAM,EAAI,QAAQ,0BAA0B,GAAG,EAC/C,IAAM,EAAS,QAAQ,EAAI,EAepB,mDAAkD,IAAM,WAAW,IAAA"}
|
package/utils/keyboard.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([
|
|
2
|
-
//# sourceMappingURL=keyboard.amd.js.map
|
|
1
|
+
define([`require`,`exports`],function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.invertKeyboardLayout=void 0,t.invertKeyboardLayout=e=>{let t=`qwertyuiop[]asdfghjkl;'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL;"ZXCVBNM<>?`,n=`йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДжЭЯЧСМИТЬБЮ,`,r,i=e.split(``);return i.forEach((e,a)=>{r=t.indexOf(e),r===-1?(r=n.indexOf(e),r!==-1&&(i[a]=t[r])):i[a]=n[r]}),e=i.join(``),e}});
|
|
2
|
+
//# sourceMappingURL=keyboard.amd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["utils/keyboard.js","../../src/core/utils/keyboard.ts"],"names":["exports"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAU,CAAE,SAAU,EAAS,EAAS,CCQ9C,aACZ,OAAW,eAAAA,EAAA,aAAA,CAAA,MAAA,GAAA,CAAA,CAkBX,EAbM,qBAAyC,IAAA,GDH5C,EAAQ,qBCcI,GAAQ,CDnBhB,IAAI,EAAI,qEAAuE,EAAI,qEAAsE,EAAG,EAAI,EAAE,MAAM,GAAG,CAC3K,OAAO,EAAE,SAAS,EAAG,IAAM,CACvB,EAAI,EAAE,QAAQ,EAAE,CAAE,IAAM,IAAM,EAAI,EAAE,QAAQ,EAAE,CAAE,IAAM,KAAO,EAAE,GAAK,EAAE,KAAO,EAAE,GAAK,EAAE,IACxF,CAAE,EAAI,EAAE,KAAK,GAAG,CAAE,IAG1B","sourcesContent":["define([\"require\", \"exports\"], function (require, exports) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.invertKeyboardLayout = void 0;\n //#region src/core/utils/keyboard.ts\n var e = (e) => {\n let t = \"qwertyuiop[]asdfghjkl;'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL;\\\"ZXCVBNM<>?\", n = \"йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДжЭЯЧСМИТЬБЮ,\", r, i = e.split(\"\");\n return i.forEach((e, a) => {\n r = t.indexOf(e), r === -1 ? (r = n.indexOf(e), r !== -1 && (i[a] = t[r])) : i[a] = n[r];\n }), e = i.join(\"\"), e;\n };\n exports.invertKeyboardLayout = e;\n});\n//# sourceMappingURL=keyboard.js.map\n","/**\n * Утилиты для работы с устройствами ввода\n * @packageDocumentation\n */\n\n/**\n * Перевод строки в другую раскладку\n */\nexport const invertKeyboardLayout = (string: string): string => {\n\tconst a1 = 'qwertyuiop[]asdfghjkl;\\'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL;\"ZXCVBNM<>?';\n\tconst a2 = 'йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДжЭЯЧСМИТЬБЮ,';\n\tlet indexFinded: number;\n\n\tconst chars: Array<string> = string.split('');\n\tchars.forEach((char: string, index: number) => {\n\t\tindexFinded = a1.indexOf(char);\n\t\tif (indexFinded !== -1) {\n\t\t\tchars[index] = a2[indexFinded];\n\t\t} else {\n\t\t\tindexFinded = a2.indexOf(char);\n\t\t\tif (indexFinded !== -1) {\n\t\t\t\tchars[index] = a1[indexFinded];\n\t\t\t}\n\t\t}\n\t});\n\tstring = chars.join('');\n\n\treturn string;\n};\n"]}
|
package/utils/keyboard.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}), n = o.join(""), n;
|
|
1
|
+
//#region src/core/utils/keyboard.ts
|
|
2
|
+
var e = (e) => {
|
|
3
|
+
let t = "qwertyuiop[]asdfghjkl;'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL;\"ZXCVBNM<>?", n = "йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДжЭЯЧСМИТЬБЮ,", r, i = e.split("");
|
|
4
|
+
return i.forEach((e, a) => {
|
|
5
|
+
r = t.indexOf(e), r === -1 ? (r = n.indexOf(e), r !== -1 && (i[a] = t[r])) : i[a] = n[r];
|
|
6
|
+
}), e = i.join(""), e;
|
|
8
7
|
};
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
//# sourceMappingURL=keyboard.js.map
|
|
8
|
+
//#endregion
|
|
9
|
+
export { e as invertKeyboardLayout };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=keyboard.js.map
|
package/utils/keyboard.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboard.js","sources":["../../src/core/utils/keyboard.ts"],"sourcesContent":["/**\n * Утилиты для работы с устройствами ввода\n * @packageDocumentation\n */\n\n/**\n * Перевод строки в другую раскладку\n */\nexport const invertKeyboardLayout = (string: string): string => {\n\tconst a1 = 'qwertyuiop[]asdfghjkl;\\'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL;\"ZXCVBNM<>?';\n\tconst a2 = 'йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДжЭЯЧСМИТЬБЮ,';\n\tlet indexFinded: number;\n\n\tconst chars: Array<string> = string.split('');\n\tchars.forEach((char: string, index: number) => {\n\t\tindexFinded = a1.indexOf(char);\n\t\tif (indexFinded !== -1) {\n\t\t\tchars[index] = a2[indexFinded];\n\t\t} else {\n\t\t\tindexFinded = a2.indexOf(char);\n\t\t\tif (indexFinded !== -1) {\n\t\t\t\tchars[index] = a1[indexFinded];\n\t\t\t}\n\t\t}\n\t});\n\tstring = chars.join('');\n\n\treturn string;\n};\n"],"
|
|
1
|
+
{"version":3,"file":"keyboard.js","names":[],"sources":["../../src/core/utils/keyboard.ts"],"sourcesContent":["/**\n * Утилиты для работы с устройствами ввода\n * @packageDocumentation\n */\n\n/**\n * Перевод строки в другую раскладку\n */\nexport const invertKeyboardLayout = (string: string): string => {\n\tconst a1 = 'qwertyuiop[]asdfghjkl;\\'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL;\"ZXCVBNM<>?';\n\tconst a2 = 'йцукенгшщзхъфывапролджэячсмитьбю.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДжЭЯЧСМИТЬБЮ,';\n\tlet indexFinded: number;\n\n\tconst chars: Array<string> = string.split('');\n\tchars.forEach((char: string, index: number) => {\n\t\tindexFinded = a1.indexOf(char);\n\t\tif (indexFinded !== -1) {\n\t\t\tchars[index] = a2[indexFinded];\n\t\t} else {\n\t\t\tindexFinded = a2.indexOf(char);\n\t\t\tif (indexFinded !== -1) {\n\t\t\t\tchars[index] = a1[indexFinded];\n\t\t\t}\n\t\t}\n\t});\n\tstring = chars.join('');\n\n\treturn string;\n};\n"],"mappings":";AAQA,IAAa,KAAwB,MAA2B;CAC/D,IAAM,IAAK,uEACL,IAAK,sEACP,GAEE,IAAuB,EAAO,MAAM,GAAG;AAc7C,QAbA,EAAM,SAAS,GAAc,MAAkB;AAE9C,EADA,IAAc,EAAG,QAAQ,EAAK,EAC1B,MAAgB,MAGnB,IAAc,EAAG,QAAQ,EAAK,EAC1B,MAAgB,OACnB,EAAM,KAAS,EAAG,OAJnB,EAAM,KAAS,EAAG;GAOlB,EACF,IAAS,EAAM,KAAK,GAAG,EAEhB"}
|
package/utils/lodash.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([
|
|
2
|
-
//# sourceMappingURL=lodash.amd.js.map
|
|
1
|
+
define([`require`,`exports`,`../.chunks/forms-CbUt-6Ff.amd.js`],function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.throttle=t.merge=t.memoize=t.debounce=t.cloneDeep=void 0,Object.defineProperty(t,`merge`,{enumerable:!0,get:function(){return n.A}}),Object.defineProperty(t,`memoize`,{enumerable:!0,get:function(){return n.M}}),Object.defineProperty(t,`cloneDeep`,{enumerable:!0,get:function(){return n.N}}),Object.defineProperty(t,`debounce`,{enumerable:!0,get:function(){return n.P}}),Object.defineProperty(t,`throttle`,{enumerable:!0,get:function(){return n.j}})});
|
|
2
|
+
//# sourceMappingURL=lodash.amd.js.map
|
package/utils/lodash.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["utils/lodash.js"],"names":["exports","forms_CbUt_6Ff_esm_js_1"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,mCAAmC,CAAE,SAAU,EAAS,EAAS,EAAyB,CACpH,aACA,OAAO,eAAeA,EAAS,aAAc,CAAE,MAAO,GAAM,CAAC,CAC7D,EAAQ,SAAW,EAAQ,MAAQ,EAAQ,QAAU,EAAQ,SAAW,EAAQ,UAAY,IAAK,GACjG,OAAO,eAAeA,EAAS,QAAS,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,GAAM,CAAC,CACrH,OAAO,eAAeD,EAAS,UAAW,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,GAAM,CAAC,CACvH,OAAO,eAAeD,EAAS,YAAa,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,GAAM,CAAC,CACzH,OAAO,eAAeD,EAAS,WAAY,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,GAAM,CAAC,CACxH,OAAO,eAAeD,EAAS,WAAY,CAAE,WAAY,GAAM,IAAK,UAAY,CAAE,OAAOC,EAAwB,GAAM,CAAC,EAC1H","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/forms-CbUt-6Ff.esm.js\"], function (require, exports, forms_CbUt_6Ff_esm_js_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.throttle = exports.merge = exports.memoize = exports.debounce = exports.cloneDeep = void 0;\n Object.defineProperty(exports, \"merge\", { enumerable: true, get: function () { return forms_CbUt_6Ff_esm_js_1.A; } });\n Object.defineProperty(exports, \"memoize\", { enumerable: true, get: function () { return forms_CbUt_6Ff_esm_js_1.M; } });\n Object.defineProperty(exports, \"cloneDeep\", { enumerable: true, get: function () { return forms_CbUt_6Ff_esm_js_1.N; } });\n Object.defineProperty(exports, \"debounce\", { enumerable: true, get: function () { return forms_CbUt_6Ff_esm_js_1.P; } });\n Object.defineProperty(exports, \"throttle\", { enumerable: true, get: function () { return forms_CbUt_6Ff_esm_js_1.j; } });\n});\n"]}
|
package/utils/lodash.js
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
3
|
-
a as cloneDeep,
|
|
4
|
-
s as debounce,
|
|
5
|
-
m as memoize,
|
|
6
|
-
r as merge,
|
|
7
|
-
t as throttle
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=lodash.js.map
|
|
1
|
+
import { A as e, M as t, N as n, P as r, j as i } from "../.chunks/forms-CbUt-6Ff.esm.js";
|
|
2
|
+
export { n as cloneDeep, r as debounce, t as memoize, e as merge, i as throttle };
|
package/utils/number.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([
|
|
2
|
-
//# sourceMappingURL=number.amd.js.map
|
|
1
|
+
define([`require`,`exports`],function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.randomBySeed=t.percentOfNumber=void 0,t.percentOfNumber=(e,t=100,n=0)=>{if(e===`--`)return e;let r=t*1?e/t:0;return r*=100,r=!n&&r<1?Math.round(r*10**2)/10**2:Math.round(r*10**n)/10**n,r},t.randomBySeed=e=>{let t=Math.sin(e)*1e4;return t-Math.floor(t)}});
|
|
2
|
+
//# sourceMappingURL=number.amd.js.map
|
package/utils/number.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["utils/number.js","../../src/core/utils/number.ts"],"names":["exports"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAU,CAAE,SAAU,EAAS,EAAS,CCW9C,aACZ,OAAa,eAAaA,EAAA,aAAA,CAAA,MAAA,GAAA,CAAA,CAE1B,EAAe,aAA0B,EAAA,gBAAA,IAAA,GDAtC,EAAQ,iBCkBiB,EAAiB,EAAA,IAAA,EAAA,IAAA,CACzC,GAAI,IAAS,KAEN,OAAK,ED3BT,IAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EACxB,MAAO,IAAK,IAAK,EAAI,CAAC,GAAK,EAAI,EAAI,KAAK,MAAM,EAAI,IAAM,EAAE,CAAG,IAAM,EAAI,KAAK,MAAM,EAAI,IAAM,EAAE,CAAG,IAAM,EAAG,GAM9G,EAAQ,aALA,GAAM,CACV,IAAI,EAAI,KAAK,IAAI,EAAE,CAAG,IACtB,OAAO,EAAI,KAAK,MAAM,EAAE,GAI9B","sourcesContent":["define([\"require\", \"exports\"], function (require, exports) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.randomBySeed = exports.percentOfNumber = void 0;\n //#region src/core/utils/number.ts\n var e = (e, t = 100, n = 0) => {\n if (e === \"--\")\n return e;\n let r = t * 1 ? e / t : 0;\n return r *= 100, r = !n && r < 1 ? Math.round(r * 10 ** 2) / 10 ** 2 : Math.round(r * 10 ** n) / 10 ** n, r;\n }, t = (e) => {\n let t = Math.sin(e) * 1e4;\n return t - Math.floor(t);\n };\n exports.percentOfNumber = e;\n exports.randomBySeed = t;\n});\n//# sourceMappingURL=number.js.map\n","/**\n * Работа с числами\n * @packageDocumentation\n */\n\n/**\n * Посчитать процент от числа (сколько процентов составляет part от full)\n * @param part - первое число\n * @param full - второе число\n * @param precision - точность (колличество знаков после запятой)\n */\nexport const percentOfNumber = (part: '--' | number, full: number = 100, precision: number = 0): '--' | number => {\n\tif (part === '--') return part;\n\n\tlet percent = (full * 1) ? part / full : 0;\n\tpercent *= 100;\n\n\t// если десятичные знаки не выводятся и число при округлении может дать ноль, то округляем в большую сторону\n\tif (!precision && percent < 1) {\n\t\tpercent = Math.round(percent * (Math.pow(10, 2))) / (Math.pow(10, 2));\n\t} else {\n\t\tpercent = Math.round(percent * (Math.pow(10, precision))) / (Math.pow(10, precision));\n\t}\n\n\treturn percent;\n};\n\n/**\n * Генерация псевдорандомного числа\n *\n * Детерменированная функция по параметру seed\n */\nexport const randomBySeed = (seed: number) => {\n\tlet x = Math.sin(seed) * 10000;\n\n\treturn x - Math.floor(x);\n};\n"]}
|
package/utils/number.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
//#region src/core/utils/number.ts
|
|
2
|
+
var e = (e, t = 100, n = 0) => {
|
|
3
|
+
if (e === "--") return e;
|
|
4
|
+
let r = t * 1 ? e / t : 0;
|
|
5
|
+
return r *= 100, r = !n && r < 1 ? Math.round(r * 10 ** 2) / 10 ** 2 : Math.round(r * 10 ** n) / 10 ** n, r;
|
|
6
|
+
}, t = (e) => {
|
|
7
|
+
let t = Math.sin(e) * 1e4;
|
|
8
|
+
return t - Math.floor(t);
|
|
8
9
|
};
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
//# sourceMappingURL=number.js.map
|
|
10
|
+
//#endregion
|
|
11
|
+
export { e as percentOfNumber, t as randomBySeed };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=number.js.map
|
package/utils/number.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number.js","sources":["../../src/core/utils/number.ts"],"sourcesContent":["/**\n * Работа с числами\n * @packageDocumentation\n */\n\n/**\n * Посчитать процент от числа (сколько процентов составляет part от full)\n * @param part - первое число\n * @param full - второе число\n * @param precision - точность (колличество знаков после запятой)\n */\nexport const percentOfNumber = (part: '--' | number, full: number = 100, precision: number = 0): '--' | number => {\n\tif (part === '--') return part;\n\n\tlet percent = (full * 1) ? part / full : 0;\n\tpercent *= 100;\n\n\t// если десятичные знаки не выводятся и число при округлении может дать ноль, то округляем в большую сторону\n\tif (!precision && percent < 1) {\n\t\tpercent = Math.round(percent * (Math.pow(10, 2))) / (Math.pow(10, 2));\n\t} else {\n\t\tpercent = Math.round(percent * (Math.pow(10, precision))) / (Math.pow(10, precision));\n\t}\n\n\treturn percent;\n};\n\n/**\n * Генерация псевдорандомного числа\n *\n * Детерменированная функция по параметру seed\n */\nexport const randomBySeed = (seed: number) => {\n\tlet x = Math.sin(seed) * 10000;\n\n\treturn x - Math.floor(x);\n};\n"],"
|
|
1
|
+
{"version":3,"file":"number.js","names":[],"sources":["../../src/core/utils/number.ts"],"sourcesContent":["/**\n * Работа с числами\n * @packageDocumentation\n */\n\n/**\n * Посчитать процент от числа (сколько процентов составляет part от full)\n * @param part - первое число\n * @param full - второе число\n * @param precision - точность (колличество знаков после запятой)\n */\nexport const percentOfNumber = (part: '--' | number, full: number = 100, precision: number = 0): '--' | number => {\n\tif (part === '--') return part;\n\n\tlet percent = (full * 1) ? part / full : 0;\n\tpercent *= 100;\n\n\t// если десятичные знаки не выводятся и число при округлении может дать ноль, то округляем в большую сторону\n\tif (!precision && percent < 1) {\n\t\tpercent = Math.round(percent * (Math.pow(10, 2))) / (Math.pow(10, 2));\n\t} else {\n\t\tpercent = Math.round(percent * (Math.pow(10, precision))) / (Math.pow(10, precision));\n\t}\n\n\treturn percent;\n};\n\n/**\n * Генерация псевдорандомного числа\n *\n * Детерменированная функция по параметру seed\n */\nexport const randomBySeed = (seed: number) => {\n\tlet x = Math.sin(seed) * 10000;\n\n\treturn x - Math.floor(x);\n};\n"],"mappings":";AAWA,IAAa,KAAmB,GAAqB,IAAe,KAAK,IAAoB,MAAqB;AACjH,KAAI,MAAS,KAAM,QAAO;CAE1B,IAAI,IAAW,IAAO,IAAK,IAAO,IAAO;AAUzC,QATA,KAAW,KAGX,AAGC,IAHG,CAAC,KAAa,IAAU,IACjB,KAAK,MAAM,IAAoB,MAAI,EAAI,GAAa,MAAI,IAExD,KAAK,MAAM,IAAoB,MAAI,EAAY,GAAa,MAAI,GAGpE;GAQK,KAAgB,MAAiB;CAC7C,IAAI,IAAI,KAAK,IAAI,EAAK,GAAG;AAEzB,QAAO,IAAI,KAAK,MAAM,EAAE"}
|
package/utils/price.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([
|
|
2
|
-
//# sourceMappingURL=price.amd.js.map
|
|
1
|
+
define([`require`,`exports`,`../.chunks/forms-CbUt-6Ff.amd.js`],function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.genPrice=void 0,t.genPrice=(e,t,r=n.O.state.currency)=>{t??=(0,n.D)().value;let i=e.toLocaleString(t,{style:`currency`,currency:r,maximumFractionDigits:2});return i=i.replace(`,`,`.`),i}});
|
|
2
|
+
//# sourceMappingURL=price.amd.js.map
|
package/utils/price.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["utils/price.js","../../src/core/utils/price.ts"],"names":["exports","forms_CbUt_6Ff_esm_js_1","a","n","r","i"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,mCAAmC,CAAE,SAAU,EAAS,EAAS,EAAyB,CACpH,aCeS,OAAY,eAAsEA,EAAM,aAAqB,CAAA,MAAA,GAAA,CAAA,CACzH,EAA6B,SAAA,IAAA,GDH1B,EAAQ,UCKoC,EAAA,EAAA,EAAAC,EAAA,EAAA,MAAA,WAAA,CAAY,KAAA,EAAAA,EAAA,IAAA,CAAA,MAAU,IAAAC,EAAAC,EAAA,eAAuBC,EAAA,CAAI,MAAA,WACvF,SAAeC,EDVb,sBAAuB,EAC1B,CAAC,CACF,MAAO,GAAIH,EAAE,QAAQ,IAAK,IAAI,CAAEA,IAGtC","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/forms-CbUt-6Ff.esm.js\"], function (require, exports, forms_CbUt_6Ff_esm_js_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.genPrice = void 0;\n //#region src/core/utils/price.ts\n var n = (n, r, i = forms_CbUt_6Ff_esm_js_1.O.state.currency) => {\n r ??= (0, forms_CbUt_6Ff_esm_js_1.D)().value;\n let a = n.toLocaleString(r, {\n style: \"currency\",\n currency: i,\n maximumFractionDigits: 2\n });\n return a = a.replace(\",\", \".\"), a;\n };\n exports.genPrice = n;\n});\n//# sourceMappingURL=price.js.map\n","/**\n * Работа с ценами\n * @packageDocumentation\n */\n\nimport type { Lang } from '@/core/plugins/i18n';\nimport { useI18nLang } from '@/core/plugins/i18n';\nimport Core from '@/core/core/core';\n\n/**\n * Сгенерировать строку с суммой и валютой\n * @param sum - сумма\n * @param lang - язык, берётся из профиля, если не задано\n * @param currency - валюта, берётся из профиля, если не задано\n * @returns строка с языкозависимым представлением числа sum и знаком валюты\n */\nexport const genPrice = (sum: number, lang?: Lang, currency: typeof Core.state.currency = Core.state.currency): string => {\n\tlang = lang ?? useI18nLang().value;\n\n\tlet sumStr = sum.toLocaleString(lang, { style: 'currency', currency, maximumFractionDigits: 2 });\n\tsumStr = sumStr.replace(',', '.');\n\n\treturn sumStr;\n};\n"]}
|
package/utils/price.js
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { D as e, O as t } from "../.chunks/forms-CbUt-6Ff.esm.js";
|
|
2
|
+
//#region src/core/utils/price.ts
|
|
3
|
+
var n = (n, r, i = t.state.currency) => {
|
|
4
|
+
r ??= e().value;
|
|
5
|
+
let a = n.toLocaleString(r, {
|
|
6
|
+
style: "currency",
|
|
7
|
+
currency: i,
|
|
8
|
+
maximumFractionDigits: 2
|
|
9
|
+
});
|
|
10
|
+
return a = a.replace(",", "."), a;
|
|
6
11
|
};
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
//# sourceMappingURL=price.js.map
|
|
12
|
+
//#endregion
|
|
13
|
+
export { n as genPrice };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=price.js.map
|
package/utils/price.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"price.js","sources":["../../src/core/utils/price.ts"],"sourcesContent":["/**\n * Работа с ценами\n * @packageDocumentation\n */\n\nimport type { Lang } from '@/core/plugins/i18n';\nimport { useI18nLang } from '@/core/plugins/i18n';\nimport Core from '@/core/core/core';\n\n/**\n * Сгенерировать строку с суммой и валютой\n * @param sum - сумма\n * @param lang - язык, берётся из профиля, если не задано\n * @param currency - валюта, берётся из профиля, если не задано\n * @returns строка с языкозависимым представлением числа sum и знаком валюты\n */\nexport const genPrice = (sum: number, lang?: Lang, currency: typeof Core.state.currency = Core.state.currency): string => {\n\tlang = lang ?? useI18nLang().value;\n\n\tlet sumStr = sum.toLocaleString(lang, { style: 'currency', currency, maximumFractionDigits: 2 });\n\tsumStr = sumStr.replace(',', '.');\n\n\treturn sumStr;\n};\n"],"
|
|
1
|
+
{"version":3,"file":"price.js","names":[],"sources":["../../src/core/utils/price.ts"],"sourcesContent":["/**\n * Работа с ценами\n * @packageDocumentation\n */\n\nimport type { Lang } from '@/core/plugins/i18n';\nimport { useI18nLang } from '@/core/plugins/i18n';\nimport Core from '@/core/core/core';\n\n/**\n * Сгенерировать строку с суммой и валютой\n * @param sum - сумма\n * @param lang - язык, берётся из профиля, если не задано\n * @param currency - валюта, берётся из профиля, если не задано\n * @returns строка с языкозависимым представлением числа sum и знаком валюты\n */\nexport const genPrice = (sum: number, lang?: Lang, currency: typeof Core.state.currency = Core.state.currency): string => {\n\tlang = lang ?? useI18nLang().value;\n\n\tlet sumStr = sum.toLocaleString(lang, { style: 'currency', currency, maximumFractionDigits: 2 });\n\tsumStr = sumStr.replace(',', '.');\n\n\treturn sumStr;\n};\n"],"mappings":";;AAgBA,IAAa,KAAY,GAAa,GAAa,IAAuC,EAAK,MAAM,aAAqB;AACzH,OAAe,GAAa,CAAC;CAE7B,IAAI,IAAS,EAAI,eAAe,GAAM;EAAE,OAAO;EAAY;EAAU,uBAAuB;EAAG,CAAC;AAGhG,QAFA,IAAS,EAAO,QAAQ,KAAK,IAAI,EAE1B"}
|
package/utils/route.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define([
|
|
2
|
-
//# sourceMappingURL=route.amd.js.map
|
|
1
|
+
define([`require`,`exports`],function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.setHashs=t.setHash=t.historySetState=t.getHash=t.genHash=t.delHash=void 0;var n=function(e,t=location.hash){let n=RegExp(`[#?&]`+e+`=([^&]*)`),r=t.match(n);return!r||r.length!=2?``:(r[1]=decodeURIComponent(r[1]),r[1]=r[1].replace(/\+/g,` `),r[1])},r=function(e,t,n=!0){let r=a(e,t);s(!!n,r)},i=function(e,t,n=!0){r(e,null,n)},a=function(e,t,n=location.hash){let r=RegExp(`&?`+e+`=[^&]*`,`g`);return n=n.replace(r,``),t!==null&&(t=(t+``).replace(` `,`%20`),n=n.replace(r,`&`+e+`=`+t),n.indexOf(`&`+e+`=`)==-1&&(n+=`&`+e+`=`+t)),n=n.replace(/&+/g,`&`),n=n.replace(/^(#)?&|&$/g,`$1`),n=`#`+n,n=n.replace(/^#+/,`#`),n===`#`&&(n=``),n},o=function(e,t){e instanceof Map&&(e=Object.fromEntries(e)),t===void 0&&(t=!0);let n=location.hash;for(let t in e){let r=RegExp(`&?`+t+`=[^&]*`,`g`);n=n.replace(r,``),e[t]!==null&&(e[t]=(e[t]+``).replace(` `,`%20`),n+=`&`+t+`=`+e[t])}n=n.replace(/&+/g,`&`),n=n.replace(/^(#)?&|&$/g,`$1`),n=`#`+n,n=n.replace(/^#+/,`#`),n===`#`&&(n=``),s(!!t,n)},s=(e=!1,t)=>{if(t===location.hash)return;let n=location.href,r=location.href.replace(/#.*/,``)+t;e?history.replaceState(history.state,``,r):history.pushState(history.state,``,r);let i=new HashChangeEvent(`hashchange`,{oldURL:n,newURL:r});window.dispatchEvent(i)};t.getHash=n,t.setHash=r,t.delHash=i,t.genHash=a,t.setHashs=o,t.historySetState=s});
|
|
2
|
+
//# sourceMappingURL=route.amd.js.map
|
package/utils/route.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"sources":["utils/route.js","../../src/core/utils/route.ts"],"names":["exports","e","t","i","r","a","n"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAU,CAAE,SAAU,EAAS,EAAS,CCQ9C,aACZ,OAAe,eAAiBA,EAAO,aACZ,CAAA,MAAS,GAAA,CAAA,CAMpC,EALK,SAAe,EAAoB,QAElC,EAAK,gBAA4B,EACjC,QAAc,EAAQ,QAErB,EAAM,QAAA,IAAA,GAOb,IAAIC,EAAe,SAAY,EAAA,EAAA,SAAA,KAAA,CAGR,IAEM,EAAA,OAAA,QAAA,EAAA,WAAA,CAAA,EAAA,EAAA,MAAA,EAAA,CAOP,MAAA,CAAU,GAAc,EAAe,QAAoC,EAAA,IAAA,EAAA,GAAA,mBAAA,EAAA,GAAA,CAAA,EAAA,GAAA,EAAA,GAAA,QAAA,MAAA,IAAA,CAAA,EAAA,KACnFC,EAAA,SAAmB,EAAA,EAAA,EAAA,CAAA,EAAA,CAMX,IAAAC,EAAUC,EAAA,EAAc,EAA+B,CACvEC,EAAS,CAAA,CAAA,EAAAF,EAAO,EAmBtBG,EAjBA,SAA4B,EAAQ,EAAI,EAEpC,CAAA,EAAA,CAqBmBJ,EAAA,EAAA,KAAoDE,EAAA,EACvEA,EAAA,SAAgB,EAAK,EAAO,EAAA,SAAO,KAAY,CAG/C,IAAO,EAAA,OAAS,KAAA,EAAA,SAAA,IAAA,CAEf,MAAc,GAAM,EAAA,QAAA,EAAA,GAAA,CAAA,IAAA,OAAA,GAAA,EAAA,IAAA,QAAA,IAAA,MAAA,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,IAAA,EAAA,IAAA,EAAA,KAAA,GAAA,IAAA,EAAA,IAAA,IAAA,EAAA,EAAA,QAAA,MAAA,IAAA,CAAA,EAAA,EAAA,QAAA,aAAA,KAAA,CAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,MAAA,IAAA,CAAA,IAAA,MAAA,EAAA,IAAA,GAClBD,EAAS,SAAO,EAAO,EAAA,CACjB,aAAY,MAEf,EAAU,OAAA,YACC,EAAA,EAAQ,IAAI,IAAA,KAAa,EAAA,CAAA,GD7DvC,IAAI,EAAI,SAAS,KCkEZ,IAAA,IAAQ,KAAO,EAAA,CAuBuB,IAAO,EAAA,OAAuB,KAAA,EAAA,SAAA,IAAA,CAGnE,EAAA,EAAA,QAAe,EAAA,GAAA,CAAA,EAAA,KAAA,OAAA,EAAA,IAAA,EAAA,GAAA,IAAA,QAAA,IAAA,MAAA,CAAA,GAAA,IAAA,EAAA,IAAA,EAAA,IAO3B,EAAA,EAAQ,QAAA,MAAa,IAAA,CAAQ,EAAA,EAAO,QAAQ,aAEpC,KAAU,CAAA,EAAA,IAAQ,EAAO,EAAI,EAAI,QAAA,MAAA,IAAA,CAAA,IAAA,MAAA,EAAA,IAAAE,EAAA,CAAA,CAAA,EAAA,EAAA,EAIpCA,GAAQ,EAAI,CAAA,EAAA,IAAA,CACT,GAAA,IAAA,SAAA,KACA,OACP,IAAA,EAAA,SAAA,KAAA,EAAA,SAAA,KAAA,QAAA,MAAA,GAAA,CAAA,EAEK,EAAA,QAAA,aAAoB,QAAA,MAAA,GAAA,EAAA,CAAA,QAAA,UAAA,QAAA,MAAA,GAAA,EAAA,CDnGpB,IAAI,EAAI,IAAI,gBAAgB,aAAc,CACtC,OAAQ,EACR,OAAQ,EACX,CAAC,CACF,OAAO,cAAc,EAAE,EAE3B,EAAQ,QAAUJ,EAClB,EAAQ,QAAUC,EAClB,EAAQ,QAAUI,EAClB,EAAQ,QAAUF,EAClB,EAAQ,SAAWD,EACnB,EAAQ,gBAAkBE,GAC5B","sourcesContent":["define([\"require\", \"exports\"], function (require, exports) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.setHashs = exports.setHash = exports.historySetState = exports.getHash = exports.genHash = exports.delHash = void 0;\n //#region src/core/utils/route.ts\n var e = function (e, t = location.hash) {\n let n = RegExp(\"[#?&]\" + e + \"=([^&]*)\"), r = t.match(n);\n return !r || r.length != 2 ? \"\" : (r[1] = decodeURIComponent(r[1]), r[1] = r[1].replace(/\\+/g, \" \"), r[1]);\n }, t = function (e, t, n = !0) {\n let i = r(e, t);\n a(!!n, i);\n }, n = function (e, n, r = !0) {\n t(e, null, r);\n }, r = function (e, t, n = location.hash) {\n let r = RegExp(\"&?\" + e + \"=[^&]*\", \"g\");\n return n = n.replace(r, \"\"), t !== null && (t = (t + \"\").replace(\" \", \"%20\"), n = n.replace(r, \"&\" + e + \"=\" + t), n.indexOf(\"&\" + e + \"=\") == -1 && (n += \"&\" + e + \"=\" + t)), n = n.replace(/&+/g, \"&\"), n = n.replace(/^(#)?&|&$/g, \"$1\"), n = \"#\" + n, n = n.replace(/^#+/, \"#\"), n === \"#\" && (n = \"\"), n;\n }, i = function (e, t) {\n e instanceof Map && (e = Object.fromEntries(e)), t === void 0 && (t = !0);\n let n = location.hash;\n for (let t in e) {\n let r = RegExp(\"&?\" + t + \"=[^&]*\", \"g\");\n n = n.replace(r, \"\"), e[t] !== null && (e[t] = (e[t] + \"\").replace(\" \", \"%20\"), n += \"&\" + t + \"=\" + e[t]);\n }\n n = n.replace(/&+/g, \"&\"), n = n.replace(/^(#)?&|&$/g, \"$1\"), n = \"#\" + n, n = n.replace(/^#+/, \"#\"), n === \"#\" && (n = \"\"), a(!!t, n);\n }, a = (e = !1, t) => {\n if (t === location.hash)\n return;\n let n = location.href, r = location.href.replace(/#.*/, \"\") + t;\n e ? history.replaceState(history.state, \"\", r) : history.pushState(history.state, \"\", r);\n let i = new HashChangeEvent(\"hashchange\", {\n oldURL: n,\n newURL: r\n });\n window.dispatchEvent(i);\n };\n exports.getHash = e;\n exports.setHash = t;\n exports.delHash = n;\n exports.genHash = r;\n exports.setHashs = i;\n exports.historySetState = a;\n});\n//# sourceMappingURL=route.js.map\n","/**\n * Управление навигацией страницы, работа с hash параметрами страницы\n * @packageDocumentation\n */\n\n/**\n * Получить значение хэш параметра страницы\n */\nexport const getHash = function (name: string, locationHash: string = location.hash): string {\n\tconst re = new RegExp('[#?&]' + name + '=([^&]*)');\n\tconst value = locationHash.match(re);\n\tif (!value || value.length != 2) return '';\n\n\tvalue[1] = decodeURIComponent(value[1]);\n\tvalue[1] = value[1].replace(/\\+/g, ' ');\n\n\treturn value[1];\n};\n\n/**\n * Установить значение в хэш параметр страницы\n */\nexport const setHash = function (name: string, value: string | number | null, replaceState: boolean = true): void {\n\tlet hash = genHash(name, value);\n\n\tif (replaceState) {\n\t\thistorySetState(true, hash);\n\t} else {\n\t\thistorySetState(false, hash);\n\t}\n};\n\n/**\n * Удалить значение из хэш параметра страницы\n */\nexport const delHash = function (name: string, value: string, replaceState: boolean = true): void {\n\tsetHash(name, null, replaceState);\n};\n\n/**\n * Сгенерировать новое значение для хэш параметра страницы с указанным параметром\n */\nexport const genHash = function (name: string, value: string | number | null, locationHash: string = location.hash): string {\n\tconst re = new RegExp('&?' + name + '=[^&]*', 'g');\n\n\tlocationHash = locationHash.replace(re, '');\n\n\tif (value !== null) {\n\t\tvalue = (value + '').replace(' ', '%20');\n\t\tlocationHash = locationHash.replace(re, '&' + name + '=' + value);\n\n\t\tif (locationHash.indexOf('&' + name + '=') == -1) locationHash += '&' + name + '=' + value;\n\t}\n\n\tlocationHash = locationHash.replace(/&+/g, '&');\n\tlocationHash = locationHash.replace(/^(#)?&|&$/g, '$1');\n\n\tlocationHash = '#' + locationHash;\n\tlocationHash = locationHash.replace(/^#+/, '#');\n\n\tif (locationHash === '#') locationHash = '';\n\n\treturn locationHash;\n};\n\n/**\n * Установить значения в хэш параметр страницы\n */\nexport const setHashs = function (data: Map<string, string> | object | any, replaceState: boolean): void {\n\tif (data instanceof Map) data = Object.fromEntries(data);\n\n\tif (replaceState === undefined) replaceState = true;\n\tlet hash = location.hash;\n\n\tfor (const name in data) {\n\t\tconst re = new RegExp('&?' + name + '=[^&]*', 'g');\n\t\thash = hash.replace(re, '');\n\n\t\tif (data[name] !== null) {\n\t\t\tdata[name] = (data[name] + '').replace(' ', '%20');\n\t\t\thash += '&' + name + '=' + data[name];\n\t\t}\n\t}\n\n\thash = hash.replace(/&+/g, '&');\n\thash = hash.replace(/^(#)?&|&$/g, '$1');\n\n\thash = '#' + hash;\n\thash = hash.replace(/^#+/, '#');\n\n\tif (hash === '#') hash = '';\n\n\tif (replaceState) {\n\t\thistorySetState(true, hash);\n\t} else {\n\t\thistorySetState(false, hash);\n\t}\n};\n\n/**\n * Установть позицию в истории вкладки браузера\n *\n * @see history.replaceState\n * @see history.pushState\n *\n * @todo Объединить с historyPushState() из @/component/vue/app/spa\n */\nexport const historySetState = (replace: boolean = false, hash: string): void => {\n\t// дедупликация хеш навигации\n\t// необходима так как js слушает нативную навигацию и если состояние уже устанолено, оно не должно повторно устанавливаться из js\n\tif (hash === location.hash) return;\n\n\tconst oldURL = location.href;\n\n\tconst url = location.href.replace(/#.*/, '') + hash;\n\n\tif (replace) {\n\t\thistory.replaceState(history.state, '', url);\n\t} else {\n\t\thistory.pushState(history.state, '', url);\n\t}\n\n\t// имитация hashchange, так как при работе с history, он не будет вызван автоматически\n\tconst event = new HashChangeEvent('hashchange', {\n\t\toldURL: oldURL,\n\t\tnewURL: url,\n\t});\n\n\twindow.dispatchEvent(event);\n};\n"]}
|