@topvisor/ui 1.5.0-updates.0 → 1.5.0-updates.1

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.
Files changed (298) hide show
  1. package/.chunks/api-CawzY1Cw.amd.js +2 -0
  2. package/.chunks/api-CawzY1Cw.amd.js.map +1 -0
  3. package/.chunks/api-CawzY1Cw.esm.js +208 -0
  4. package/.chunks/api-CawzY1Cw.esm.js.map +1 -0
  5. package/.chunks/app-CCX-gNqz.amd.js +2 -0
  6. package/.chunks/app-CCX-gNqz.amd.js.map +1 -0
  7. package/.chunks/app-CCX-gNqz.esm.js +396 -0
  8. package/.chunks/app-CCX-gNqz.esm.js.map +1 -0
  9. package/.chunks/datepicker-BTkZOq7d.amd.js +2 -0
  10. package/.chunks/datepicker-BTkZOq7d.amd.js.map +1 -0
  11. package/.chunks/datepicker-BTkZOq7d.esm.js +38 -0
  12. package/.chunks/datepicker-BTkZOq7d.esm.js.map +1 -0
  13. package/.chunks/dialog-DeM4SApg.amd.js +2 -0
  14. package/.chunks/dialog-DeM4SApg.amd.js.map +1 -0
  15. package/.chunks/dialog-DeM4SApg.esm.js +117 -0
  16. package/.chunks/dialog-DeM4SApg.esm.js.map +1 -0
  17. package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.amd.js +2 -0
  18. package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.amd.js.map +1 -0
  19. package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.esm.js +169 -0
  20. package/.chunks/dialog_regionSelectorRegions-CYrmaDt3.esm.js.map +1 -0
  21. package/.chunks/dialogs-CMrERMI7.amd.js +2 -0
  22. package/.chunks/dialogs-CMrERMI7.amd.js.map +1 -0
  23. package/.chunks/dialogs-CMrERMI7.esm.js +237 -0
  24. package/.chunks/dialogs-CMrERMI7.esm.js.map +1 -0
  25. package/.chunks/field-CjkpGeA7.amd.js +2 -0
  26. package/.chunks/field-CjkpGeA7.amd.js.map +1 -0
  27. package/.chunks/field-CjkpGeA7.esm.js +16 -0
  28. package/.chunks/field-CjkpGeA7.esm.js.map +1 -0
  29. package/.chunks/forms-CbUt-6Ff.amd.js +2 -0
  30. package/.chunks/forms-CbUt-6Ff.amd.js.map +1 -0
  31. package/.chunks/forms-CbUt-6Ff.esm.js +1991 -0
  32. package/.chunks/forms-CbUt-6Ff.esm.js.map +1 -0
  33. package/.chunks/formsExt-CrTmBhja.amd.js +2 -0
  34. package/.chunks/formsExt-CrTmBhja.amd.js.map +1 -0
  35. package/.chunks/formsExt-CrTmBhja.esm.js +807 -0
  36. package/.chunks/formsExt-CrTmBhja.esm.js.map +1 -0
  37. package/.chunks/lazy-CGswTOPj.amd.js +2 -0
  38. package/.chunks/lazy-CGswTOPj.amd.js.map +1 -0
  39. package/.chunks/lazy-CGswTOPj.esm.js +68 -0
  40. package/.chunks/lazy-CGswTOPj.esm.js.map +1 -0
  41. package/.chunks/mocker-CwZe-g4N.amd.js +2 -0
  42. package/.chunks/mocker-CwZe-g4N.amd.js.map +1 -0
  43. package/.chunks/mocker-CwZe-g4N.esm.js +45 -0
  44. package/.chunks/mocker-CwZe-g4N.esm.js.map +1 -0
  45. package/.chunks/notice-CslVdVNm.amd.js +4 -0
  46. package/.chunks/notice-CslVdVNm.amd.js.map +1 -0
  47. package/.chunks/notice-CslVdVNm.esm.js +191 -0
  48. package/.chunks/notice-CslVdVNm.esm.js.map +1 -0
  49. package/.chunks/popup-DrByVU-k.amd.js +2 -0
  50. package/.chunks/popup-DrByVU-k.amd.js.map +1 -0
  51. package/.chunks/popup-DrByVU-k.esm.js +444 -0
  52. package/.chunks/popup-DrByVU-k.esm.js.map +1 -0
  53. package/.chunks/popup-dNrN-eKi.amd.js +2 -0
  54. package/.chunks/popup-dNrN-eKi.amd.js.map +1 -0
  55. package/.chunks/popup-dNrN-eKi.esm.js +323 -0
  56. package/.chunks/popup-dNrN-eKi.esm.js.map +1 -0
  57. package/.chunks/punycode.es6-B-5kB2YI.amd.js +2 -0
  58. package/.chunks/{punycode.es6-CgGegfA_.es.js.map → punycode.es6-B-5kB2YI.amd.js.map} +1 -1
  59. package/.chunks/punycode.es6-B-5kB2YI.esm.js +105 -0
  60. package/.chunks/punycode.es6-B-5kB2YI.esm.js.map +1 -0
  61. package/.chunks/store-DuQpSSLL.amd.js +2 -0
  62. package/.chunks/{store-CX_6ZXhO.es.js.map → store-DuQpSSLL.amd.js.map} +1 -1
  63. package/.chunks/store-DuQpSSLL.esm.js +27 -0
  64. package/.chunks/store-DuQpSSLL.esm.js.map +1 -0
  65. package/.chunks/utils-BwiXsV0S.amd.js +2 -0
  66. package/.chunks/utils-BwiXsV0S.amd.js.map +1 -0
  67. package/.chunks/utils-BwiXsV0S.esm.js +43 -0
  68. package/.chunks/utils-BwiXsV0S.esm.js.map +1 -0
  69. package/.chunks/utils-Dd0MZgyw.amd.js +2 -0
  70. package/.chunks/utils-Dd0MZgyw.amd.js.map +1 -0
  71. package/.chunks/utils-Dd0MZgyw.esm.js +287 -0
  72. package/.chunks/utils-Dd0MZgyw.esm.js.map +1 -0
  73. package/.chunks/worker-Db8YrEHo.amd.js +2 -0
  74. package/.chunks/worker-Db8YrEHo.amd.js.map +1 -0
  75. package/.chunks/worker-Db8YrEHo.esm.js +100 -0
  76. package/.chunks/worker-Db8YrEHo.esm.js.map +1 -0
  77. package/api/additional.amd.js +2 -2
  78. package/api/additional.amd.js.map +1 -1
  79. package/api/additional.js +70 -66
  80. package/api/additional.js.map +1 -1
  81. package/api/index.amd.js +2 -2
  82. package/api/index.amd.js.map +1 -1
  83. package/api/index.js +3 -285
  84. package/assets/charts.css +1 -1
  85. package/assets/core.css +1 -1
  86. package/assets/dialog_regionSelectorRegions.css +1 -1
  87. package/assets/extra.css +1 -1
  88. package/assets/forms.css +1 -1
  89. package/assets/formsExt.css +1 -0
  90. package/assets/layout.css +1 -1
  91. package/assets/notice.css +1 -1
  92. package/assets/popup.css +1 -0
  93. package/assets/project.css +1 -1
  94. package/assets/tabs.css +1 -1
  95. package/assets/tabsView.css +1 -1
  96. package/assets/themes/dark-th.css +1 -1
  97. package/assets/themes/dark.css +1 -1
  98. package/assets/themes/light.css +1 -1
  99. package/autoload-css-manifest.amd.json +79 -0
  100. package/autoload-css-manifest.json +90 -0
  101. package/charts/charts.amd.js +2 -2
  102. package/charts/charts.amd.js.map +1 -1
  103. package/charts/charts.js +146 -174
  104. package/charts/charts.js.map +1 -1
  105. package/core/app.amd.js +2 -2
  106. package/core/app.amd.js.map +1 -1
  107. package/core/app.js +5 -213
  108. package/dialog/dialog.amd.js +2 -2
  109. package/dialog/dialog.amd.js.map +1 -1
  110. package/dialog/dialog.js +4 -60
  111. package/extra/extra.amd.js +2 -2
  112. package/extra/extra.amd.js.map +1 -1
  113. package/extra/extra.js +73 -69
  114. package/extra/extra.js.map +1 -1
  115. package/forms/forms.amd.js +2 -2
  116. package/forms/forms.amd.js.map +1 -1
  117. package/forms/forms.js +2 -19
  118. package/forms/helpers.amd.js +2 -2
  119. package/forms/helpers.amd.js.map +1 -1
  120. package/forms/helpers.js +0 -2
  121. package/formsExt/formsExt.amd.js +2 -2
  122. package/formsExt/formsExt.amd.js.map +1 -1
  123. package/formsExt/formsExt.js +2 -373
  124. package/icomoon/demo-files/demo.amd.js +2 -0
  125. package/icomoon/demo-files/demo.amd.js.map +1 -0
  126. package/icomoon/demo.amd.js +2 -0
  127. package/icomoon/demo.amd.js.map +1 -0
  128. package/layout/layout.amd.js +2 -2
  129. package/layout/layout.amd.js.map +1 -1
  130. package/layout/layout.js +41 -57
  131. package/layout/layout.js.map +1 -1
  132. package/package.json +1 -1
  133. package/popup/popup.amd.js +2 -2
  134. package/popup/popup.amd.js.map +1 -1
  135. package/popup/popup.js +2 -282
  136. package/popup/worker.amd.js +2 -2
  137. package/popup/worker.amd.js.map +1 -1
  138. package/popup/worker.js +2 -144
  139. package/project/project.amd.js +2 -2
  140. package/project/project.amd.js.map +1 -1
  141. package/project/project.js +1684 -1642
  142. package/project/project.js.map +1 -1
  143. package/tabs/tabs.amd.js +2 -2
  144. package/tabs/tabs.amd.js.map +1 -1
  145. package/tabs/tabs.js +63 -77
  146. package/tabs/tabs.js.map +1 -1
  147. package/tabsView/tabsView.amd.js +2 -2
  148. package/tabsView/tabsView.amd.js.map +1 -1
  149. package/tabsView/tabsView.js +245 -288
  150. package/tabsView/tabsView.js.map +1 -1
  151. package/utils/check.amd.js +2 -2
  152. package/utils/check.amd.js.map +1 -1
  153. package/utils/check.js +15 -19
  154. package/utils/check.js.map +1 -1
  155. package/utils/clipboard.amd.js +6 -6
  156. package/utils/clipboard.amd.js.map +1 -1
  157. package/utils/clipboard.js +26 -31
  158. package/utils/clipboard.js.map +1 -1
  159. package/utils/date.amd.js +2 -2
  160. package/utils/date.amd.js.map +1 -1
  161. package/utils/date.js +2 -12
  162. package/utils/device.amd.js +2 -2
  163. package/utils/device.amd.js.map +1 -1
  164. package/utils/device.js +2 -15
  165. package/utils/dom.amd.js +2 -2
  166. package/utils/dom.amd.js.map +1 -1
  167. package/utils/dom.js +53 -67
  168. package/utils/dom.js.map +1 -1
  169. package/utils/image.amd.js +3 -3
  170. package/utils/image.amd.js.map +1 -1
  171. package/utils/image.js +12 -22
  172. package/utils/image.js.map +1 -1
  173. package/utils/keyboard.amd.js +2 -2
  174. package/utils/keyboard.amd.js.map +1 -1
  175. package/utils/keyboard.js +10 -11
  176. package/utils/keyboard.js.map +1 -1
  177. package/utils/lodash.amd.js +2 -2
  178. package/utils/lodash.amd.js.map +1 -1
  179. package/utils/lodash.js +2 -9
  180. package/utils/number.amd.js +2 -2
  181. package/utils/number.amd.js.map +1 -1
  182. package/utils/number.js +12 -12
  183. package/utils/number.js.map +1 -1
  184. package/utils/price.amd.js +2 -2
  185. package/utils/price.amd.js.map +1 -1
  186. package/utils/price.js +14 -9
  187. package/utils/price.js.map +1 -1
  188. package/utils/route.amd.js +2 -2
  189. package/utils/route.amd.js.map +1 -1
  190. package/utils/route.js +33 -37
  191. package/utils/route.js.map +1 -1
  192. package/utils/scroll.amd.js +2 -2
  193. package/utils/scroll.amd.js.map +1 -1
  194. package/utils/scroll.js +39 -43
  195. package/utils/scroll.js.map +1 -1
  196. package/utils/searchers.amd.js +2 -2
  197. package/utils/searchers.amd.js.map +1 -1
  198. package/utils/searchers.js +128 -133
  199. package/utils/searchers.js.map +1 -1
  200. package/utils/store.amd.js +2 -2
  201. package/utils/store.amd.js.map +1 -1
  202. package/utils/store.js +2 -7
  203. package/utils/string.amd.js +2 -2
  204. package/utils/string.amd.js.map +1 -1
  205. package/utils/string.js +120 -147
  206. package/utils/string.js.map +1 -1
  207. package/utils/system.amd.js +2 -2
  208. package/utils/system.amd.js.map +1 -1
  209. package/utils/system.js +25 -28
  210. package/utils/system.js.map +1 -1
  211. package/utils/url.amd.js +3 -3
  212. package/utils/url.amd.js.map +1 -1
  213. package/utils/url.js +36 -47
  214. package/utils/url.js.map +1 -1
  215. package/.chunks/core-Dgj_YGWh.es.js +0 -268
  216. package/.chunks/core-Dgj_YGWh.es.js.map +0 -1
  217. package/.chunks/core-DzDFXOdI.amd.js +0 -2
  218. package/.chunks/core-DzDFXOdI.amd.js.map +0 -1
  219. package/.chunks/datepicker-oa8ZwRhq.amd.js +0 -2
  220. package/.chunks/datepicker-oa8ZwRhq.amd.js.map +0 -1
  221. package/.chunks/datepicker-qToxk2nN.es.js +0 -41
  222. package/.chunks/datepicker-qToxk2nN.es.js.map +0 -1
  223. package/.chunks/dialog_regionSelectorRegions-CZ0tMVSq.amd.js +0 -2
  224. package/.chunks/dialog_regionSelectorRegions-CZ0tMVSq.amd.js.map +0 -1
  225. package/.chunks/dialog_regionSelectorRegions-qDW2Ejsv.es.js +0 -180
  226. package/.chunks/dialog_regionSelectorRegions-qDW2Ejsv.es.js.map +0 -1
  227. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BBix_8WK.amd.js +0 -2
  228. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-BBix_8WK.amd.js.map +0 -1
  229. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CJ97l1ST.es.js +0 -323
  230. package/.chunks/dialogs.vue_vue_type_script_setup_true_lang-CJ97l1ST.es.js.map +0 -1
  231. package/.chunks/field-Cvv0SRcJ.amd.js +0 -2
  232. package/.chunks/field-Cvv0SRcJ.amd.js.map +0 -1
  233. package/.chunks/field-CyyFzM-Y.es.js +0 -16
  234. package/.chunks/field-CyyFzM-Y.es.js.map +0 -1
  235. package/.chunks/forms-DDNzqU6o.amd.js +0 -3
  236. package/.chunks/forms-DDNzqU6o.amd.js.map +0 -1
  237. package/.chunks/forms-DtC-EKJL.es.js +0 -2053
  238. package/.chunks/forms-DtC-EKJL.es.js.map +0 -1
  239. package/.chunks/index-DLUtoTUg.amd.js +0 -2
  240. package/.chunks/index-DLUtoTUg.amd.js.map +0 -1
  241. package/.chunks/index-DkQWJkMc.es.js +0 -54
  242. package/.chunks/index-DkQWJkMc.es.js.map +0 -1
  243. package/.chunks/lazy-DDNqYkXn.amd.js +0 -2
  244. package/.chunks/lazy-DDNqYkXn.amd.js.map +0 -1
  245. package/.chunks/lazy-HKSyLh72.es.js +0 -75
  246. package/.chunks/lazy-HKSyLh72.es.js.map +0 -1
  247. package/.chunks/notice-BvQl911b.es.js +0 -191
  248. package/.chunks/notice-BvQl911b.es.js.map +0 -1
  249. package/.chunks/notice-CJ3WOTCM.amd.js +0 -4
  250. package/.chunks/notice-CJ3WOTCM.amd.js.map +0 -1
  251. package/.chunks/page.vue_vue_type_script_setup_true_lang-Dd5-B4Ss.es.js +0 -139
  252. package/.chunks/page.vue_vue_type_script_setup_true_lang-Dd5-B4Ss.es.js.map +0 -1
  253. package/.chunks/page.vue_vue_type_script_setup_true_lang-fl6-Ql4d.amd.js +0 -2
  254. package/.chunks/page.vue_vue_type_script_setup_true_lang-fl6-Ql4d.amd.js.map +0 -1
  255. package/.chunks/policy.vue_vue_type_style_index_0_lang-Bv3LwNDC.es.js +0 -519
  256. package/.chunks/policy.vue_vue_type_style_index_0_lang-Bv3LwNDC.es.js.map +0 -1
  257. package/.chunks/policy.vue_vue_type_style_index_0_lang-Da7rztT5.amd.js +0 -2
  258. package/.chunks/policy.vue_vue_type_style_index_0_lang-Da7rztT5.amd.js.map +0 -1
  259. package/.chunks/popup-OuDglAOF.es.js +0 -470
  260. package/.chunks/popup-OuDglAOF.es.js.map +0 -1
  261. package/.chunks/popup-yXIpyok3.amd.js +0 -2
  262. package/.chunks/popup-yXIpyok3.amd.js.map +0 -1
  263. package/.chunks/popupHint.vue_vue_type_style_index_0_lang-Bu_HvFoW.amd.js +0 -2
  264. package/.chunks/popupHint.vue_vue_type_style_index_0_lang-Bu_HvFoW.amd.js.map +0 -1
  265. package/.chunks/popupHint.vue_vue_type_style_index_0_lang-DAQIAxvu.es.js +0 -209
  266. package/.chunks/popupHint.vue_vue_type_style_index_0_lang-DAQIAxvu.es.js.map +0 -1
  267. package/.chunks/punycode.es6-CNOnFR2-.amd.js +0 -2
  268. package/.chunks/punycode.es6-CNOnFR2-.amd.js.map +0 -1
  269. package/.chunks/punycode.es6-CgGegfA_.es.js +0 -134
  270. package/.chunks/store-CX_6ZXhO.es.js +0 -29
  271. package/.chunks/store-YRW59xEF.amd.js +0 -2
  272. package/.chunks/store-YRW59xEF.amd.js.map +0 -1
  273. package/.chunks/utils-BNzP9anP.es.js +0 -78
  274. package/.chunks/utils-BNzP9anP.es.js.map +0 -1
  275. package/.chunks/utils-CWn_G7OO.amd.js +0 -2
  276. package/.chunks/utils-CWn_G7OO.amd.js.map +0 -1
  277. package/.chunks/utils-DIviuVEw.amd.js +0 -2
  278. package/.chunks/utils-DIviuVEw.amd.js.map +0 -1
  279. package/.chunks/utils-Dma85ehT.es.js +0 -288
  280. package/.chunks/utils-Dma85ehT.es.js.map +0 -1
  281. package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CX_BOcVY.es.js +0 -39
  282. package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CX_BOcVY.es.js.map +0 -1
  283. package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CkOmb3VD.amd.js +0 -2
  284. package/.chunks/widgetInput.vue_vue_type_script_setup_true_lang-CkOmb3VD.amd.js.map +0 -1
  285. package/api/index.js.map +0 -1
  286. package/assets/policy.css +0 -1
  287. package/assets/popupHint.css +0 -1
  288. package/core/app.js.map +0 -1
  289. package/dialog/dialog.js.map +0 -1
  290. package/forms/forms.js.map +0 -1
  291. package/forms/helpers.js.map +0 -1
  292. package/formsExt/formsExt.js.map +0 -1
  293. package/popup/popup.js.map +0 -1
  294. package/popup/worker.js.map +0 -1
  295. package/utils/date.js.map +0 -1
  296. package/utils/device.js.map +0 -1
  297. package/utils/lodash.js.map +0 -1
  298. package/utils/store.js.map +0 -1
package/utils/route.js CHANGED
@@ -1,38 +1,34 @@
1
- const i = function(n, t = location.hash) {
2
- const e = new RegExp("[#?&]" + n + "=([^&]*)"), r = t.match(e);
3
- return !r || r.length != 2 ? "" : (r[1] = decodeURIComponent(r[1]), r[1] = r[1].replace(/\+/g, " "), r[1]);
4
- }, f = function(n, t, e = !0) {
5
- let r = p(n, t);
6
- s(!!e, r);
7
- }, l = function(n, t, e = !0) {
8
- f(n, null, e);
9
- }, p = function(n, t, e = location.hash) {
10
- const r = new RegExp("&?" + n + "=[^&]*", "g");
11
- return e = e.replace(r, ""), t !== null && (t = (t + "").replace(" ", "%20"), e = e.replace(r, "&" + n + "=" + t), e.indexOf("&" + n + "=") == -1 && (e += "&" + n + "=" + t)), e = e.replace(/&+/g, "&"), e = e.replace(/^(#)?&|&$/g, "$1"), e = "#" + e, e = e.replace(/^#+/, "#"), e === "#" && (e = ""), e;
12
- }, u = function(n, t) {
13
- n instanceof Map && (n = Object.fromEntries(n)), t === void 0 && (t = !0);
14
- let e = location.hash;
15
- for (const r in n) {
16
- const c = new RegExp("&?" + r + "=[^&]*", "g");
17
- e = e.replace(c, ""), n[r] !== null && (n[r] = (n[r] + "").replace(" ", "%20"), e += "&" + r + "=" + n[r]);
18
- }
19
- e = e.replace(/&+/g, "&"), e = e.replace(/^(#)?&|&$/g, "$1"), e = "#" + e, e = e.replace(/^#+/, "#"), e === "#" && (e = ""), s(!!t, e);
20
- }, s = (n = !1, t) => {
21
- if (t === location.hash) return;
22
- const e = location.href, r = location.href.replace(/#.*/, "") + t;
23
- n ? history.replaceState(history.state, "", r) : history.pushState(history.state, "", r);
24
- const c = new HashChangeEvent("hashchange", {
25
- oldURL: e,
26
- newURL: r
27
- });
28
- window.dispatchEvent(c);
1
+ //#region src/core/utils/route.ts
2
+ var e = function(e, t = location.hash) {
3
+ let n = RegExp("[#?&]" + e + "=([^&]*)"), r = t.match(n);
4
+ return !r || r.length != 2 ? "" : (r[1] = decodeURIComponent(r[1]), r[1] = r[1].replace(/\+/g, " "), r[1]);
5
+ }, t = function(e, t, n = !0) {
6
+ let i = r(e, t);
7
+ a(!!n, i);
8
+ }, n = function(e, n, r = !0) {
9
+ t(e, null, r);
10
+ }, r = function(e, t, n = location.hash) {
11
+ let r = RegExp("&?" + e + "=[^&]*", "g");
12
+ 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;
13
+ }, i = function(e, t) {
14
+ e instanceof Map && (e = Object.fromEntries(e)), t === void 0 && (t = !0);
15
+ let n = location.hash;
16
+ for (let t in e) {
17
+ let r = RegExp("&?" + t + "=[^&]*", "g");
18
+ n = n.replace(r, ""), e[t] !== null && (e[t] = (e[t] + "").replace(" ", "%20"), n += "&" + t + "=" + e[t]);
19
+ }
20
+ n = n.replace(/&+/g, "&"), n = n.replace(/^(#)?&|&$/g, "$1"), n = "#" + n, n = n.replace(/^#+/, "#"), n === "#" && (n = ""), a(!!t, n);
21
+ }, a = (e = !1, t) => {
22
+ if (t === location.hash) return;
23
+ let n = location.href, r = location.href.replace(/#.*/, "") + t;
24
+ e ? history.replaceState(history.state, "", r) : history.pushState(history.state, "", r);
25
+ let i = new HashChangeEvent("hashchange", {
26
+ oldURL: n,
27
+ newURL: r
28
+ });
29
+ window.dispatchEvent(i);
29
30
  };
30
- export {
31
- l as delHash,
32
- p as genHash,
33
- i as getHash,
34
- s as historySetState,
35
- f as setHash,
36
- u as setHashs
37
- };
38
- //# sourceMappingURL=route.js.map
31
+ //#endregion
32
+ export { n as delHash, r as genHash, e as getHash, a as historySetState, t as setHash, i as setHashs };
33
+
34
+ //# sourceMappingURL=route.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"route.js","sources":["../../src/core/utils/route.ts"],"sourcesContent":["/**\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"],"names":["getHash","name","locationHash","re","value","setHash","replaceState","hash","genHash","historySetState","delHash","setHashs","data","replace","oldURL","url","event"],"mappings":"AAQO,MAAMA,IAAU,SAAUC,GAAcC,IAAuB,SAAS,MAAc;AAC5F,QAAMC,IAAK,IAAI,OAAO,UAAUF,IAAO,UAAU,GAC3CG,IAAQF,EAAa,MAAMC,CAAE;AACnC,SAAI,CAACC,KAASA,EAAM,UAAU,IAAU,MAExCA,EAAM,CAAC,IAAI,mBAAmBA,EAAM,CAAC,CAAC,GACtCA,EAAM,CAAC,IAAIA,EAAM,CAAC,EAAE,QAAQ,OAAO,GAAG,GAE/BA,EAAM,CAAC;AACf,GAKaC,IAAU,SAAUJ,GAAcG,GAA+BE,IAAwB,IAAY;AACjH,MAAIC,IAAOC,EAAQP,GAAMG,CAAK;AAE9B,EACCK,EADG,EAAAH,GACmBC,CAAI;AAI5B,GAKaG,IAAU,SAAUT,GAAcG,GAAeE,IAAwB,IAAY;AACjG,EAAAD,EAAQJ,GAAM,MAAMK,CAAY;AACjC,GAKaE,IAAU,SAAUP,GAAcG,GAA+BF,IAAuB,SAAS,MAAc;AAC3H,QAAMC,IAAK,IAAI,OAAO,OAAOF,IAAO,UAAU,GAAG;AAEjD,SAAAC,IAAeA,EAAa,QAAQC,GAAI,EAAE,GAEtCC,MAAU,SACbA,KAASA,IAAQ,IAAI,QAAQ,KAAK,KAAK,GACvCF,IAAeA,EAAa,QAAQC,GAAI,MAAMF,IAAO,MAAMG,CAAK,GAE5DF,EAAa,QAAQ,MAAMD,IAAO,GAAG,KAAK,OAAIC,KAAgB,MAAMD,IAAO,MAAMG,KAGtFF,IAAeA,EAAa,QAAQ,OAAO,GAAG,GAC9CA,IAAeA,EAAa,QAAQ,cAAc,IAAI,GAEtDA,IAAe,MAAMA,GACrBA,IAAeA,EAAa,QAAQ,OAAO,GAAG,GAE1CA,MAAiB,QAAKA,IAAe,KAElCA;AACR,GAKaS,IAAW,SAAUC,GAA0CN,GAA6B;AACxG,EAAIM,aAAgB,QAAKA,IAAO,OAAO,YAAYA,CAAI,IAEnDN,MAAiB,WAAWA,IAAe;AAC/C,MAAIC,IAAO,SAAS;AAEpB,aAAWN,KAAQW,GAAM;AACxB,UAAMT,IAAK,IAAI,OAAO,OAAOF,IAAO,UAAU,GAAG;AACjD,IAAAM,IAAOA,EAAK,QAAQJ,GAAI,EAAE,GAEtBS,EAAKX,CAAI,MAAM,SAClBW,EAAKX,CAAI,KAAKW,EAAKX,CAAI,IAAI,IAAI,QAAQ,KAAK,KAAK,GACjDM,KAAQ,MAAMN,IAAO,MAAMW,EAAKX,CAAI;AAAA,EAEtC;AAEA,EAAAM,IAAOA,EAAK,QAAQ,OAAO,GAAG,GAC9BA,IAAOA,EAAK,QAAQ,cAAc,IAAI,GAEtCA,IAAO,MAAMA,GACbA,IAAOA,EAAK,QAAQ,OAAO,GAAG,GAE1BA,MAAS,QAAKA,IAAO,KAGxBE,EADG,EAAAH,GACmBC,CAAI;AAI5B,GAUaE,IAAkB,CAACI,IAAmB,IAAON,MAAuB;AAGhF,MAAIA,MAAS,SAAS,KAAM;AAE5B,QAAMO,IAAS,SAAS,MAElBC,IAAM,SAAS,KAAK,QAAQ,OAAO,EAAE,IAAIR;AAE/C,EAAIM,IACH,QAAQ,aAAa,QAAQ,OAAO,IAAIE,CAAG,IAE3C,QAAQ,UAAU,QAAQ,OAAO,IAAIA,CAAG;AAIzC,QAAMC,IAAQ,IAAI,gBAAgB,cAAc;AAAA,IAC/C,QAAAF;AAAA,IACA,QAAQC;AAAA,EAAA,CACR;AAED,SAAO,cAAcC,CAAK;AAC3B;"}
1
+ {"version":3,"file":"route.js","names":[],"sources":["../../src/core/utils/route.ts"],"sourcesContent":["/**\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"],"mappings":";AAQA,IAAa,IAAU,SAAU,GAAc,IAAuB,SAAS,MAAc;CAC5F,IAAM,IAAS,OAAO,UAAU,IAAO,WAAW,EAC5C,IAAQ,EAAa,MAAM,EAAG;AAMpC,QALI,CAAC,KAAS,EAAM,UAAU,IAAU,MAExC,EAAM,KAAK,mBAAmB,EAAM,GAAG,EACvC,EAAM,KAAK,EAAM,GAAG,QAAQ,OAAO,IAAI,EAEhC,EAAM;GAMD,IAAU,SAAU,GAAc,GAA+B,IAAwB,IAAY;CACjH,IAAI,IAAO,EAAQ,GAAM,EAAM;AAE/B,CACC,EADG,KACmB,EAEM;GAOjB,IAAU,SAAU,GAAc,GAAe,IAAwB,IAAY;AACjG,GAAQ,GAAM,MAAM,EAAa;GAMrB,IAAU,SAAU,GAAc,GAA+B,IAAuB,SAAS,MAAc;CAC3H,IAAM,IAAS,OAAO,OAAO,IAAO,UAAU,IAAI;AAmBlD,QAjBA,IAAe,EAAa,QAAQ,GAAI,GAAG,EAEvC,MAAU,SACb,KAAS,IAAQ,IAAI,QAAQ,KAAK,MAAM,EACxC,IAAe,EAAa,QAAQ,GAAI,MAAM,IAAO,MAAM,EAAM,EAE7D,EAAa,QAAQ,MAAM,IAAO,IAAI,IAAI,OAAI,KAAgB,MAAM,IAAO,MAAM,KAGtF,IAAe,EAAa,QAAQ,OAAO,IAAI,EAC/C,IAAe,EAAa,QAAQ,cAAc,KAAK,EAEvD,IAAe,MAAM,GACrB,IAAe,EAAa,QAAQ,OAAO,IAAI,EAE3C,MAAiB,QAAK,IAAe,KAElC;GAMK,IAAW,SAAU,GAA0C,GAA6B;AAGxG,CAFI,aAAgB,QAAK,IAAO,OAAO,YAAY,EAAK,GAEpD,MAAiB,KAAA,MAAW,IAAe;CAC/C,IAAI,IAAO,SAAS;AAEpB,MAAK,IAAM,KAAQ,GAAM;EACxB,IAAM,IAAS,OAAO,OAAO,IAAO,UAAU,IAAI;AAGlD,EAFA,IAAO,EAAK,QAAQ,GAAI,GAAG,EAEvB,EAAK,OAAU,SAClB,EAAK,MAAS,EAAK,KAAQ,IAAI,QAAQ,KAAK,MAAM,EAClD,KAAQ,MAAM,IAAO,MAAM,EAAK;;AAYlC,CARA,IAAO,EAAK,QAAQ,OAAO,IAAI,EAC/B,IAAO,EAAK,QAAQ,cAAc,KAAK,EAEvC,IAAO,MAAM,GACb,IAAO,EAAK,QAAQ,OAAO,IAAI,EAE3B,MAAS,QAAK,IAAO,KAGxB,EADG,KACmB,EAEM;GAYjB,KAAmB,IAAmB,IAAO,MAAuB;AAGhF,KAAI,MAAS,SAAS,KAAM;CAE5B,IAAM,IAAS,SAAS,MAElB,IAAM,SAAS,KAAK,QAAQ,OAAO,GAAG,GAAG;AAE/C,CAAI,IACH,QAAQ,aAAa,QAAQ,OAAO,IAAI,EAAI,GAE5C,QAAQ,UAAU,QAAQ,OAAO,IAAI,EAAI;CAI1C,IAAM,IAAQ,IAAI,gBAAgB,cAAc;EACvC;EACR,QAAQ;EACR,CAAC;AAEF,QAAO,cAAc,EAAM"}
@@ -1,2 +1,2 @@
1
- define(["require","exports","./dom.amd"],(function(g,s,i){"use strict";if(typeof d>"u")var d=window.Vue;const n=t=>{if(!t||!t.parentElement||!t.offsetHeight)return;if(window.dialogs){const o=t.closest(".ui-dialog");o?.getBoundingClientRect()&&o?.getBoundingClientRect().bottom>document.documentElement.clientHeight&&setTimeout(window.dialogs.onWindowResize)}const e=t.scrollHeight>t.offsetHeight;if(e?(t.parentElement.classList.add("has_scroll_container"),t.classList.add("has_scroll")):(t.parentElement.classList.remove("has_scroll_container"),t.classList.remove("has_scroll")),e){const o=i.offset(t).top-i.offset(t.parentElement).top;t.style.setProperty("--scroll-offset-top",o+"px");const r=t.offsetHeight;t.style.setProperty("--scroll-height",r+"px"),t.scrollTop>0?t.classList.add("has_scroll-started"):t.classList.remove("has_scroll-started"),t.scrollTop>=t.scrollHeight-t.offsetHeight?t.classList.add("has_scroll-finished"):t.classList.remove("has_scroll-finished")}};let c;window.ResizeObserver&&(c=new ResizeObserver(t=>{t.forEach(e=>n(e.target))}));const l=t=>{if(!t)return;if(Array.isArray(t)){t.forEach(o=>l(o));return}const e=t;e.dataset.scrollShadowInited||(e.dataset.scrollShadowInited="true",e.onscroll=()=>n(e),c?.observe(e))},f=t=>{c?.unobserve(t)},h=()=>a(),a=(t=document.documentElement)=>{const e=t.clientHeight,o=t.scrollHeight,r=t.scrollTop;if(o&&r&&e){const u=o-e;return Math.floor(r/u*100)}return 100};s.amountScrolled=h,s.connectScrollShadow=l,s.genHasScroll=n,s.getScrollPercent=a,s.unconnectScrollShadow=f,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})}));
2
- //# sourceMappingURL=scroll.amd.js.map
1
+ define([`require`,`exports`,`./dom.amd.js`],function(e,t,n){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.unconnectScrollShadow=t.getScrollPercent=t.genHasScroll=t.connectScrollShadow=t.amountScrolled=void 0;var r=e=>{if(!e||!e.parentElement||!e.offsetHeight)return;if(window.dialogs){let t=e.closest(`.ui-dialog`);t?.getBoundingClientRect()&&t?.getBoundingClientRect().bottom>document.documentElement.clientHeight&&setTimeout(window.dialogs.onWindowResize)}let t=e.scrollHeight>e.offsetHeight;if(t?(e.parentElement.classList.add(`has_scroll_container`),e.classList.add(`has_scroll`)):(e.parentElement.classList.remove(`has_scroll_container`),e.classList.remove(`has_scroll`)),t){let t=(0,n.offset)(e).top-(0,n.offset)(e.parentElement).top;e.style.setProperty(`--scroll-offset-top`,t+`px`);let r=e.offsetHeight;e.style.setProperty(`--scroll-height`,r+`px`),e.scrollTop>0?e.classList.add(`has_scroll-started`):e.classList.remove(`has_scroll-started`),e.scrollTop>=e.scrollHeight-e.offsetHeight?e.classList.add(`has_scroll-finished`):e.classList.remove(`has_scroll-finished`)}},i;t.genHasScroll=r,window.ResizeObserver&&(i=new ResizeObserver(e=>{e.forEach(e=>r(e.target))}));var a=e=>{if(!e)return;if(Array.isArray(e)){e.forEach(e=>a(e));return}let t=e;t.dataset.scrollShadowInited||(t.dataset.scrollShadowInited=`true`,t.onscroll=()=>r(t),i?.observe(t))},o=e=>{i?.unobserve(e)},s=()=>c(),c=(e=document.documentElement)=>{let t=e.clientHeight,n=e.scrollHeight,r=e.scrollTop;if(n&&r&&t){let e=n-t;return Math.floor(r/e*100)}return 100};t.connectScrollShadow=a,t.unconnectScrollShadow=o,t.amountScrolled=s,t.getScrollPercent=c});
2
+ //# sourceMappingURL=scroll.amd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll.amd.js","sources":["../../src/core/utils/scroll.ts"],"sourcesContent":["/**\n * Информация о скролле, фичи для скролла\n * @packageDocumentation\n */\n\nimport { offset } from '@/core/utils/dom';\n\n/**\n * Добавить классы модификаторов тени в зависимости от скролла элемента\n *\n * @todo Сделать приватной\n */\nexport const genHasScroll = (el: HTMLElement): void => {\n\tif (!el) return;\n\tif (!el.parentElement) return;\n\tif (!el.offsetHeight) return;\n\n\t// Диалоги не вынесены в UI\n\tif (window['dialogs']) {\n\t\tconst elDialog = el.closest('.ui-dialog');\n\t\tif (elDialog?.getBoundingClientRect() && elDialog?.getBoundingClientRect().bottom > document.documentElement.clientHeight) {\n\t\t\tsetTimeout(window['dialogs'].onWindowResize);\n\t\t}\n\t}\n\n\tconst hasScroll = (el.scrollHeight > el.offsetHeight);\n\tif (hasScroll) {\n\t\tel.parentElement.classList.add('has_scroll_container');\n\t\tel.classList.add('has_scroll');\n\t} else {\n\t\tel.parentElement.classList.remove('has_scroll_container');\n\t\tel.classList.remove('has_scroll');\n\t}\n\n\tif (hasScroll) {\n\t\tconst top: number = offset(el).top - offset(el.parentElement).top;\n\t\tel.style.setProperty('--scroll-offset-top', top + 'px');\n\n\t\tconst height = el.offsetHeight;\n\t\tel.style.setProperty('--scroll-height', height + 'px');\n\n\t\tif (el.scrollTop > 0) {\n\t\t\tel.classList.add('has_scroll-started');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-started');\n\t\t}\n\n\t\tif (el.scrollTop >= el.scrollHeight - el.offsetHeight) {\n\t\t\tel.classList.add('has_scroll-finished');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-finished');\n\t\t}\n\t}\n};\n\nlet scrollShadowResizeObserver: ResizeObserver;\nif (window.ResizeObserver) {\n\tscrollShadowResizeObserver = new ResizeObserver((entries) => {\n\t\tentries.forEach((entry) => genHasScroll(entry.target as HTMLElement));\n\t});\n}\n\n/**\n * Добавить отображение тени при появлении скролла у элемента\n *\n * Будут добавлены события для усатновки модификаторов тени в зависимости от скролла элемента\n *\n * Модификаторы:\n * - top-scrollShadow\n * - top-scrollShadow-started\n * - top-scrollShadow-finished\n */\nexport const connectScrollShadow = (els: HTMLElement | HTMLElement[]) => {\n\tif (!els) return;\n\n\tif (Array.isArray(els)) {\n\t\tels.forEach((el) => connectScrollShadow(el));\n\n\t\treturn;\n\t}\n\n\tconst el = els;\n\n\tif (el.dataset.scrollShadowInited) return;\n\tel.dataset.scrollShadowInited = 'true';\n\n\tel.onscroll = () => genHasScroll(el);\n\n\tscrollShadowResizeObserver?.observe(el);\n};\n\nexport const unconnectScrollShadow = (el: HTMLElement) => {\n\tscrollShadowResizeObserver?.unobserve(el);\n};\n\n/**\n * Посчитать глубину скролла (процент на сколько проскроллена страница)\n *\n * @deprecated\n */\nexport const amountScrolled = (): number => {\n\treturn getScrollPercent();\n};\n\n/**\n * Получить прогресс скролла в процентах\n */\nexport const getScrollPercent = (el: HTMLElement = document.documentElement): number => {\n\tconst clientHeight = el.clientHeight;\n\tconst scrollHeight = el.scrollHeight;\n\tconst scrollTop = el.scrollTop;\n\n\tif (scrollHeight && scrollTop && clientHeight) {\n\t\tconst trackLength = scrollHeight - clientHeight;\n\n\t\treturn Math.floor(scrollTop / trackLength * 100);\n\t}\n\n\treturn 100;\n};\n"],"names":["genHasScroll","el","elDialog","top","utils_dom","height","scrollShadowResizeObserver","entries","entry","connectScrollShadow","els","unconnectScrollShadow","amountScrolled","getScrollPercent","clientHeight","scrollHeight","scrollTop","trackLength"],"mappings":"wGAYO,MAAAA,EAAAC,GAAA,CAGN,OADA,CAAAA,EAAA,eACA,CAAAA,EAAA,aAAA,OAGA,GAAA,OAAA,QAAA,iCAECC,GAAA,sBAAA,GAAAA,GAAA,sBAAA,EAAA,OAAA,SAAA,gBAAA,0JAQAD,EAAA,UAAA,IAAA,YAAA,6DAGAA,EAAA,UAAA,OAAA,YAAA,MAIA,MAAAE,EAAAC,EAAA,OAAAH,CAAA,EAAA,IAAAG,EAAA,OAAAH,EAAA,aAAA,EAAA,sDAGA,MAAAI,EAAAJ,EAAA,2DAGAA,EAAA,UAAA,EACCA,EAAA,UAAA,IAAA,oBAAA,EAEAA,EAAA,UAAA,OAAA,oBAAA,EAGDA,EAAA,WAAAA,EAAA,aAAAA,EAAA,aACCA,EAAA,UAAA,IAAA,qBAAA,EAEAA,EAAA,UAAA,OAAA,qBAAA,EAGH,EAEA,IAAAK,0BAECA,EAAA,IAAA,eAAAC,GAAA,CACCA,EAAA,QAAAC,GAAAR,EAAAQ,EAAA,MAAA,CAAA,CAAoE,CAAA,GAc/D,MAAAC,EAAAC,GAAA,cAGN,GAAA,MAAA,QAAAA,CAAA,EAAA,qCAQAT,EAAA,QAAA,qBACAA,EAAA,QAAA,mBAAA,2BAIAK,GAAA,QAAAL,CAAA,EACD,EAEOU,EAAAV,GAAA,CACNK,GAAA,UAAAL,CAAA,CACD,EAOOW,EAAA,QAOAC,EAAA,CAAAZ,EAAA,SAAA,kBAAA,CACN,MAAAa,EAAAb,EAAA,aACAc,EAAAd,EAAA,aACAe,EAAAf,EAAA,UAEA,GAAAc,GAAAC,GAAAF,EAAA,CACC,MAAAG,EAAAF,EAAAD,6BAKD,MAAA,IACD"}
1
+ {"version":3,"sources":["utils/scroll.js","../../src/core/utils/scroll.ts"],"names":["exports","t","e","n","dom_js_1","r","i","a","o"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,eAAW,CAAE,SAAU,EAAS,EAAS,EAAU,CAC7E,aCWS,OAAgB,eAA0BA,EAAA,aAAA,CAAA,MAAA,GAAA,CAAA,CAGtD,EADK,sBACG,EAAA,iBAAc,EAAA,aAAA,EAAA,oBAAA,EAAA,eAAA,IAAA,GAIrB,IAAMC,EAAc,GAAA,CACN,GAAA,CAAAA,GAAA,CAAAA,EAAA,eAAqC,CAAAA,EAAA,aDbzC,OCkBL,GAAgB,OAAA,QAAkB,CAEpC,IAAAC,EAAAD,EAAA,QAAc,aAAc,CAQJC,GAAI,uBAAgB,EAAeA,GAAA,uBAAA,CAAA,OAAA,SAAA,gBAAA,cAAA,WAAA,OAAA,QAAA,eAAA,CAGxD,IAAYC,EAAAF,EAAA,aAAAA,EAAA,aACf,GAAME,GAAAF,EAAA,cAAY,UAAmB,IAAS,uBAGhD,CAAGA,EAAA,UAAU,IAAI,aAAA,GAAAA,EAAqB,cAEzB,UAAO,OAAA,uBAGd,CAAAA,EAAA,UAAgB,OAAA,aAAkB,EAAAE,EACxC,CDlCS,IAAIA,GAAK,EAAGC,EAAS,QAAQH,EAAE,CAAC,KAAO,EAAGG,EAAS,QAAQH,EAAE,cAAc,CAAC,ICyCpFA,EAAA,MAAA,YAAA,sBAAAE,EAAA,KAAA,CACO,IAAA,EAAAF,EAAA,aAEQA,EAAA,MAAuB,YAA6B,kBAAA,EAAA,KAAA,CAAAA,EAAA,UAAA,EAAAA,EAAA,UAAA,IAAA,qBAAA,CAAAA,EAAA,UAAA,OAAA,qBAAA,CAAAA,EAAA,WAAAA,EAAA,aAAAA,EAAA,aAAAA,EAAA,UAAA,IAAA,sBAAA,CAAAA,EAAA,UAAA,OAAA,sBAAA,GAc1DE,EACZ,EAAU,aAAAF,EAEV,OAAU,iBAAc,EAAA,IAAA,eAAA,GAAA,CACnB,EAAA,QAAgB,GAAwBA,EAAA,EAAA,OAAA,CAAA,EAE5C,EDtDE,IAAII,EAAK,GAAM,CCyDZ,GAAK,CAAA,EAEI,OAQsB,GAAA,MAAoB,QAAA,EAAA,CAAA,CAC7B,EAAU,QAAG,GAAAA,EAAA,EAAA,CAAA,CAQ7B,OAYR,IAAgBC,EAAa,EAC1BA,EAAc,QAAe,qBAAA,EAAA,QAAA,mBAAA,OAAA,EAAA,aAAAL,EAAAK,EAAA,CAAAH,GAAA,QAAAG,EAAA,GAEnCA,EAAO,GAAK,CDjFNH,GAAG,UAAU,EAAE,ECoFtBI,MAAOC,GAAA,CAAAA,GAAA,EAAA,SAAA,kBAAA,CDlFA,IAAI,EAAI,EAAE,aAAc,EAAI,EAAE,aAAc,EAAI,EAAE,UAClD,GAAI,GAAK,GAAK,EAAG,CACb,IAAI,EAAI,EAAI,EACZ,OAAO,KAAK,MAAM,EAAI,EAAI,IAAI,CAElC,MAAO,MAEX,EAAQ,oBAAsBH,EAC9B,EAAQ,sBAAwBC,EAChC,EAAQ,eAAiBC,EACzB,EAAQ,iBAAmBC,GAC7B","sourcesContent":["define([\"require\", \"exports\", \"./dom.js\"], function (require, exports, dom_js_1) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.unconnectScrollShadow = exports.getScrollPercent = exports.genHasScroll = exports.connectScrollShadow = exports.amountScrolled = void 0;\n //#region src/core/utils/scroll.ts\n var t = (t) => {\n if (!t || !t.parentElement || !t.offsetHeight)\n return;\n if (window.dialogs) {\n let e = t.closest(\".ui-dialog\");\n e?.getBoundingClientRect() && e?.getBoundingClientRect().bottom > document.documentElement.clientHeight && setTimeout(window.dialogs.onWindowResize);\n }\n let n = t.scrollHeight > t.offsetHeight;\n if (n ? (t.parentElement.classList.add(\"has_scroll_container\"), t.classList.add(\"has_scroll\")) : (t.parentElement.classList.remove(\"has_scroll_container\"), t.classList.remove(\"has_scroll\")), n) {\n let n = (0, dom_js_1.offset)(t).top - (0, dom_js_1.offset)(t.parentElement).top;\n t.style.setProperty(\"--scroll-offset-top\", n + \"px\");\n let r = t.offsetHeight;\n t.style.setProperty(\"--scroll-height\", r + \"px\"), t.scrollTop > 0 ? t.classList.add(\"has_scroll-started\") : t.classList.remove(\"has_scroll-started\"), t.scrollTop >= t.scrollHeight - t.offsetHeight ? t.classList.add(\"has_scroll-finished\") : t.classList.remove(\"has_scroll-finished\");\n }\n }, n;\n exports.genHasScroll = t;\n window.ResizeObserver && (n = new ResizeObserver((e) => {\n e.forEach((e) => t(e.target));\n }));\n var r = (e) => {\n if (!e)\n return;\n if (Array.isArray(e)) {\n e.forEach((e) => r(e));\n return;\n }\n let i = e;\n i.dataset.scrollShadowInited || (i.dataset.scrollShadowInited = \"true\", i.onscroll = () => t(i), n?.observe(i));\n }, i = (e) => {\n n?.unobserve(e);\n }, a = () => o(), o = (e = document.documentElement) => {\n let t = e.clientHeight, n = e.scrollHeight, r = e.scrollTop;\n if (n && r && t) {\n let e = n - t;\n return Math.floor(r / e * 100);\n }\n return 100;\n };\n exports.connectScrollShadow = r;\n exports.unconnectScrollShadow = i;\n exports.amountScrolled = a;\n exports.getScrollPercent = o;\n});\n//# sourceMappingURL=scroll.js.map\n","/**\n * Информация о скролле, фичи для скролла\n * @packageDocumentation\n */\n\nimport { offset } from '@/core/utils/dom';\n\n/**\n * Добавить классы модификаторов тени в зависимости от скролла элемента\n *\n * @todo Сделать приватной\n */\nexport const genHasScroll = (el: HTMLElement): void => {\n\tif (!el) return;\n\tif (!el.parentElement) return;\n\tif (!el.offsetHeight) return;\n\n\t// Диалоги не вынесены в UI\n\tif (window['dialogs']) {\n\t\tconst elDialog = el.closest('.ui-dialog');\n\t\tif (elDialog?.getBoundingClientRect() && elDialog?.getBoundingClientRect().bottom > document.documentElement.clientHeight) {\n\t\t\tsetTimeout(window['dialogs'].onWindowResize);\n\t\t}\n\t}\n\n\tconst hasScroll = (el.scrollHeight > el.offsetHeight);\n\tif (hasScroll) {\n\t\tel.parentElement.classList.add('has_scroll_container');\n\t\tel.classList.add('has_scroll');\n\t} else {\n\t\tel.parentElement.classList.remove('has_scroll_container');\n\t\tel.classList.remove('has_scroll');\n\t}\n\n\tif (hasScroll) {\n\t\tconst top: number = offset(el).top - offset(el.parentElement).top;\n\t\tel.style.setProperty('--scroll-offset-top', top + 'px');\n\n\t\tconst height = el.offsetHeight;\n\t\tel.style.setProperty('--scroll-height', height + 'px');\n\n\t\tif (el.scrollTop > 0) {\n\t\t\tel.classList.add('has_scroll-started');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-started');\n\t\t}\n\n\t\tif (el.scrollTop >= el.scrollHeight - el.offsetHeight) {\n\t\t\tel.classList.add('has_scroll-finished');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-finished');\n\t\t}\n\t}\n};\n\nlet scrollShadowResizeObserver: ResizeObserver;\nif (window.ResizeObserver) {\n\tscrollShadowResizeObserver = new ResizeObserver((entries) => {\n\t\tentries.forEach((entry) => genHasScroll(entry.target as HTMLElement));\n\t});\n}\n\n/**\n * Добавить отображение тени при появлении скролла у элемента\n *\n * Будут добавлены события для усатновки модификаторов тени в зависимости от скролла элемента\n *\n * Модификаторы:\n * - top-scrollShadow\n * - top-scrollShadow-started\n * - top-scrollShadow-finished\n */\nexport const connectScrollShadow = (els: HTMLElement | HTMLElement[]) => {\n\tif (!els) return;\n\n\tif (Array.isArray(els)) {\n\t\tels.forEach((el) => connectScrollShadow(el));\n\n\t\treturn;\n\t}\n\n\tconst el = els;\n\n\tif (el.dataset.scrollShadowInited) return;\n\tel.dataset.scrollShadowInited = 'true';\n\n\tel.onscroll = () => genHasScroll(el);\n\n\tscrollShadowResizeObserver?.observe(el);\n};\n\nexport const unconnectScrollShadow = (el: HTMLElement) => {\n\tscrollShadowResizeObserver?.unobserve(el);\n};\n\n/**\n * Посчитать глубину скролла (процент на сколько проскроллена страница)\n *\n * @deprecated\n */\nexport const amountScrolled = (): number => {\n\treturn getScrollPercent();\n};\n\n/**\n * Получить прогресс скролла в процентах\n */\nexport const getScrollPercent = (el: HTMLElement = document.documentElement): number => {\n\tconst clientHeight = el.clientHeight;\n\tconst scrollHeight = el.scrollHeight;\n\tconst scrollTop = el.scrollTop;\n\n\tif (scrollHeight && scrollTop && clientHeight) {\n\t\tconst trackLength = scrollHeight - clientHeight;\n\n\t\treturn Math.floor(scrollTop / trackLength * 100);\n\t}\n\n\treturn 100;\n};\n"]}
package/utils/scroll.js CHANGED
@@ -1,45 +1,41 @@
1
- import { offset as n } from "./dom.js";
2
- const c = (t) => {
3
- if (!t || !t.parentElement || !t.offsetHeight) return;
4
- if (window.dialogs) {
5
- const s = t.closest(".ui-dialog");
6
- s?.getBoundingClientRect() && s?.getBoundingClientRect().bottom > document.documentElement.clientHeight && setTimeout(window.dialogs.onWindowResize);
7
- }
8
- const o = t.scrollHeight > t.offsetHeight;
9
- if (o ? (t.parentElement.classList.add("has_scroll_container"), t.classList.add("has_scroll")) : (t.parentElement.classList.remove("has_scroll_container"), t.classList.remove("has_scroll")), o) {
10
- const s = n(t).top - n(t.parentElement).top;
11
- t.style.setProperty("--scroll-offset-top", s + "px");
12
- const e = t.offsetHeight;
13
- t.style.setProperty("--scroll-height", e + "px"), t.scrollTop > 0 ? t.classList.add("has_scroll-started") : t.classList.remove("has_scroll-started"), t.scrollTop >= t.scrollHeight - t.offsetHeight ? t.classList.add("has_scroll-finished") : t.classList.remove("has_scroll-finished");
14
- }
15
- };
16
- let r;
17
- window.ResizeObserver && (r = new ResizeObserver((t) => {
18
- t.forEach((o) => c(o.target));
1
+ import { offset as e } from "./dom.js";
2
+ //#region src/core/utils/scroll.ts
3
+ var t = (t) => {
4
+ if (!t || !t.parentElement || !t.offsetHeight) return;
5
+ if (window.dialogs) {
6
+ let e = t.closest(".ui-dialog");
7
+ e?.getBoundingClientRect() && e?.getBoundingClientRect().bottom > document.documentElement.clientHeight && setTimeout(window.dialogs.onWindowResize);
8
+ }
9
+ let n = t.scrollHeight > t.offsetHeight;
10
+ if (n ? (t.parentElement.classList.add("has_scroll_container"), t.classList.add("has_scroll")) : (t.parentElement.classList.remove("has_scroll_container"), t.classList.remove("has_scroll")), n) {
11
+ let n = e(t).top - e(t.parentElement).top;
12
+ t.style.setProperty("--scroll-offset-top", n + "px");
13
+ let r = t.offsetHeight;
14
+ t.style.setProperty("--scroll-height", r + "px"), t.scrollTop > 0 ? t.classList.add("has_scroll-started") : t.classList.remove("has_scroll-started"), t.scrollTop >= t.scrollHeight - t.offsetHeight ? t.classList.add("has_scroll-finished") : t.classList.remove("has_scroll-finished");
15
+ }
16
+ }, n;
17
+ window.ResizeObserver && (n = new ResizeObserver((e) => {
18
+ e.forEach((e) => t(e.target));
19
19
  }));
20
- const l = (t) => {
21
- if (!t) return;
22
- if (Array.isArray(t)) {
23
- t.forEach((s) => l(s));
24
- return;
25
- }
26
- const o = t;
27
- o.dataset.scrollShadowInited || (o.dataset.scrollShadowInited = "true", o.onscroll = () => c(o), r?.observe(o));
28
- }, h = (t) => {
29
- r?.unobserve(t);
30
- }, f = () => a(), a = (t = document.documentElement) => {
31
- const o = t.clientHeight, s = t.scrollHeight, e = t.scrollTop;
32
- if (s && e && o) {
33
- const i = s - o;
34
- return Math.floor(e / i * 100);
35
- }
36
- return 100;
37
- };
38
- export {
39
- f as amountScrolled,
40
- l as connectScrollShadow,
41
- c as genHasScroll,
42
- a as getScrollPercent,
43
- h as unconnectScrollShadow
20
+ var r = (e) => {
21
+ if (!e) return;
22
+ if (Array.isArray(e)) {
23
+ e.forEach((e) => r(e));
24
+ return;
25
+ }
26
+ let i = e;
27
+ i.dataset.scrollShadowInited || (i.dataset.scrollShadowInited = "true", i.onscroll = () => t(i), n?.observe(i));
28
+ }, i = (e) => {
29
+ n?.unobserve(e);
30
+ }, a = () => o(), o = (e = document.documentElement) => {
31
+ let t = e.clientHeight, n = e.scrollHeight, r = e.scrollTop;
32
+ if (n && r && t) {
33
+ let e = n - t;
34
+ return Math.floor(r / e * 100);
35
+ }
36
+ return 100;
44
37
  };
45
- //# sourceMappingURL=scroll.js.map
38
+ //#endregion
39
+ export { a as amountScrolled, r as connectScrollShadow, t as genHasScroll, o as getScrollPercent, i as unconnectScrollShadow };
40
+
41
+ //# sourceMappingURL=scroll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll.js","sources":["../../src/core/utils/scroll.ts"],"sourcesContent":["/**\n * Информация о скролле, фичи для скролла\n * @packageDocumentation\n */\n\nimport { offset } from '@/core/utils/dom';\n\n/**\n * Добавить классы модификаторов тени в зависимости от скролла элемента\n *\n * @todo Сделать приватной\n */\nexport const genHasScroll = (el: HTMLElement): void => {\n\tif (!el) return;\n\tif (!el.parentElement) return;\n\tif (!el.offsetHeight) return;\n\n\t// Диалоги не вынесены в UI\n\tif (window['dialogs']) {\n\t\tconst elDialog = el.closest('.ui-dialog');\n\t\tif (elDialog?.getBoundingClientRect() && elDialog?.getBoundingClientRect().bottom > document.documentElement.clientHeight) {\n\t\t\tsetTimeout(window['dialogs'].onWindowResize);\n\t\t}\n\t}\n\n\tconst hasScroll = (el.scrollHeight > el.offsetHeight);\n\tif (hasScroll) {\n\t\tel.parentElement.classList.add('has_scroll_container');\n\t\tel.classList.add('has_scroll');\n\t} else {\n\t\tel.parentElement.classList.remove('has_scroll_container');\n\t\tel.classList.remove('has_scroll');\n\t}\n\n\tif (hasScroll) {\n\t\tconst top: number = offset(el).top - offset(el.parentElement).top;\n\t\tel.style.setProperty('--scroll-offset-top', top + 'px');\n\n\t\tconst height = el.offsetHeight;\n\t\tel.style.setProperty('--scroll-height', height + 'px');\n\n\t\tif (el.scrollTop > 0) {\n\t\t\tel.classList.add('has_scroll-started');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-started');\n\t\t}\n\n\t\tif (el.scrollTop >= el.scrollHeight - el.offsetHeight) {\n\t\t\tel.classList.add('has_scroll-finished');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-finished');\n\t\t}\n\t}\n};\n\nlet scrollShadowResizeObserver: ResizeObserver;\nif (window.ResizeObserver) {\n\tscrollShadowResizeObserver = new ResizeObserver((entries) => {\n\t\tentries.forEach((entry) => genHasScroll(entry.target as HTMLElement));\n\t});\n}\n\n/**\n * Добавить отображение тени при появлении скролла у элемента\n *\n * Будут добавлены события для усатновки модификаторов тени в зависимости от скролла элемента\n *\n * Модификаторы:\n * - top-scrollShadow\n * - top-scrollShadow-started\n * - top-scrollShadow-finished\n */\nexport const connectScrollShadow = (els: HTMLElement | HTMLElement[]) => {\n\tif (!els) return;\n\n\tif (Array.isArray(els)) {\n\t\tels.forEach((el) => connectScrollShadow(el));\n\n\t\treturn;\n\t}\n\n\tconst el = els;\n\n\tif (el.dataset.scrollShadowInited) return;\n\tel.dataset.scrollShadowInited = 'true';\n\n\tel.onscroll = () => genHasScroll(el);\n\n\tscrollShadowResizeObserver?.observe(el);\n};\n\nexport const unconnectScrollShadow = (el: HTMLElement) => {\n\tscrollShadowResizeObserver?.unobserve(el);\n};\n\n/**\n * Посчитать глубину скролла (процент на сколько проскроллена страница)\n *\n * @deprecated\n */\nexport const amountScrolled = (): number => {\n\treturn getScrollPercent();\n};\n\n/**\n * Получить прогресс скролла в процентах\n */\nexport const getScrollPercent = (el: HTMLElement = document.documentElement): number => {\n\tconst clientHeight = el.clientHeight;\n\tconst scrollHeight = el.scrollHeight;\n\tconst scrollTop = el.scrollTop;\n\n\tif (scrollHeight && scrollTop && clientHeight) {\n\t\tconst trackLength = scrollHeight - clientHeight;\n\n\t\treturn Math.floor(scrollTop / trackLength * 100);\n\t}\n\n\treturn 100;\n};\n"],"names":["genHasScroll","el","elDialog","hasScroll","top","offset","height","scrollShadowResizeObserver","entries","entry","connectScrollShadow","els","unconnectScrollShadow","amountScrolled","getScrollPercent","clientHeight","scrollHeight","scrollTop","trackLength"],"mappings":";AAYO,MAAMA,IAAe,CAACC,MAA0B;AAGtD,MAFI,CAACA,KACD,CAACA,EAAG,iBACJ,CAACA,EAAG,aAAc;AAGtB,MAAI,OAAO,SAAY;AACtB,UAAMC,IAAWD,EAAG,QAAQ,YAAY;AACxC,IAAIC,GAAU,2BAA2BA,GAAU,wBAAwB,SAAS,SAAS,gBAAgB,gBAC5G,WAAW,OAAO,QAAW,cAAc;AAAA,EAE7C;AAEA,QAAMC,IAAaF,EAAG,eAAeA,EAAG;AASxC,MARIE,KACHF,EAAG,cAAc,UAAU,IAAI,sBAAsB,GACrDA,EAAG,UAAU,IAAI,YAAY,MAE7BA,EAAG,cAAc,UAAU,OAAO,sBAAsB,GACxDA,EAAG,UAAU,OAAO,YAAY,IAG7BE,GAAW;AACd,UAAMC,IAAcC,EAAOJ,CAAE,EAAE,MAAMI,EAAOJ,EAAG,aAAa,EAAE;AAC9D,IAAAA,EAAG,MAAM,YAAY,uBAAuBG,IAAM,IAAI;AAEtD,UAAME,IAASL,EAAG;AAClB,IAAAA,EAAG,MAAM,YAAY,mBAAmBK,IAAS,IAAI,GAEjDL,EAAG,YAAY,IAClBA,EAAG,UAAU,IAAI,oBAAoB,IAErCA,EAAG,UAAU,OAAO,oBAAoB,GAGrCA,EAAG,aAAaA,EAAG,eAAeA,EAAG,eACxCA,EAAG,UAAU,IAAI,qBAAqB,IAEtCA,EAAG,UAAU,OAAO,qBAAqB;AAAA,EAE3C;AACD;AAEA,IAAIM;AACA,OAAO,mBACVA,IAA6B,IAAI,eAAe,CAACC,MAAY;AAC5D,EAAAA,EAAQ,QAAQ,CAACC,MAAUT,EAAaS,EAAM,MAAqB,CAAC;AACrE,CAAC;AAaK,MAAMC,IAAsB,CAACC,MAAqC;AACxE,MAAI,CAACA,EAAK;AAEV,MAAI,MAAM,QAAQA,CAAG,GAAG;AACvB,IAAAA,EAAI,QAAQ,CAACV,MAAOS,EAAoBT,CAAE,CAAC;AAE3C;AAAA,EACD;AAEA,QAAMA,IAAKU;AAEX,EAAIV,EAAG,QAAQ,uBACfA,EAAG,QAAQ,qBAAqB,QAEhCA,EAAG,WAAW,MAAMD,EAAaC,CAAE,GAEnCM,GAA4B,QAAQN,CAAE;AACvC,GAEaW,IAAwB,CAACX,MAAoB;AACzD,EAAAM,GAA4B,UAAUN,CAAE;AACzC,GAOaY,IAAiB,MACtBC,EAAA,GAMKA,IAAmB,CAACb,IAAkB,SAAS,oBAA4B;AACvF,QAAMc,IAAed,EAAG,cAClBe,IAAef,EAAG,cAClBgB,IAAYhB,EAAG;AAErB,MAAIe,KAAgBC,KAAaF,GAAc;AAC9C,UAAMG,IAAcF,IAAeD;AAEnC,WAAO,KAAK,MAAME,IAAYC,IAAc,GAAG;AAAA,EAChD;AAEA,SAAO;AACR;"}
1
+ {"version":3,"file":"scroll.js","names":[],"sources":["../../src/core/utils/scroll.ts"],"sourcesContent":["/**\n * Информация о скролле, фичи для скролла\n * @packageDocumentation\n */\n\nimport { offset } from '@/core/utils/dom';\n\n/**\n * Добавить классы модификаторов тени в зависимости от скролла элемента\n *\n * @todo Сделать приватной\n */\nexport const genHasScroll = (el: HTMLElement): void => {\n\tif (!el) return;\n\tif (!el.parentElement) return;\n\tif (!el.offsetHeight) return;\n\n\t// Диалоги не вынесены в UI\n\tif (window['dialogs']) {\n\t\tconst elDialog = el.closest('.ui-dialog');\n\t\tif (elDialog?.getBoundingClientRect() && elDialog?.getBoundingClientRect().bottom > document.documentElement.clientHeight) {\n\t\t\tsetTimeout(window['dialogs'].onWindowResize);\n\t\t}\n\t}\n\n\tconst hasScroll = (el.scrollHeight > el.offsetHeight);\n\tif (hasScroll) {\n\t\tel.parentElement.classList.add('has_scroll_container');\n\t\tel.classList.add('has_scroll');\n\t} else {\n\t\tel.parentElement.classList.remove('has_scroll_container');\n\t\tel.classList.remove('has_scroll');\n\t}\n\n\tif (hasScroll) {\n\t\tconst top: number = offset(el).top - offset(el.parentElement).top;\n\t\tel.style.setProperty('--scroll-offset-top', top + 'px');\n\n\t\tconst height = el.offsetHeight;\n\t\tel.style.setProperty('--scroll-height', height + 'px');\n\n\t\tif (el.scrollTop > 0) {\n\t\t\tel.classList.add('has_scroll-started');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-started');\n\t\t}\n\n\t\tif (el.scrollTop >= el.scrollHeight - el.offsetHeight) {\n\t\t\tel.classList.add('has_scroll-finished');\n\t\t} else {\n\t\t\tel.classList.remove('has_scroll-finished');\n\t\t}\n\t}\n};\n\nlet scrollShadowResizeObserver: ResizeObserver;\nif (window.ResizeObserver) {\n\tscrollShadowResizeObserver = new ResizeObserver((entries) => {\n\t\tentries.forEach((entry) => genHasScroll(entry.target as HTMLElement));\n\t});\n}\n\n/**\n * Добавить отображение тени при появлении скролла у элемента\n *\n * Будут добавлены события для усатновки модификаторов тени в зависимости от скролла элемента\n *\n * Модификаторы:\n * - top-scrollShadow\n * - top-scrollShadow-started\n * - top-scrollShadow-finished\n */\nexport const connectScrollShadow = (els: HTMLElement | HTMLElement[]) => {\n\tif (!els) return;\n\n\tif (Array.isArray(els)) {\n\t\tels.forEach((el) => connectScrollShadow(el));\n\n\t\treturn;\n\t}\n\n\tconst el = els;\n\n\tif (el.dataset.scrollShadowInited) return;\n\tel.dataset.scrollShadowInited = 'true';\n\n\tel.onscroll = () => genHasScroll(el);\n\n\tscrollShadowResizeObserver?.observe(el);\n};\n\nexport const unconnectScrollShadow = (el: HTMLElement) => {\n\tscrollShadowResizeObserver?.unobserve(el);\n};\n\n/**\n * Посчитать глубину скролла (процент на сколько проскроллена страница)\n *\n * @deprecated\n */\nexport const amountScrolled = (): number => {\n\treturn getScrollPercent();\n};\n\n/**\n * Получить прогресс скролла в процентах\n */\nexport const getScrollPercent = (el: HTMLElement = document.documentElement): number => {\n\tconst clientHeight = el.clientHeight;\n\tconst scrollHeight = el.scrollHeight;\n\tconst scrollTop = el.scrollTop;\n\n\tif (scrollHeight && scrollTop && clientHeight) {\n\t\tconst trackLength = scrollHeight - clientHeight;\n\n\t\treturn Math.floor(scrollTop / trackLength * 100);\n\t}\n\n\treturn 100;\n};\n"],"mappings":";;AAYA,IAAa,KAAgB,MAA0B;AAGtD,KAFI,CAAC,KACD,CAAC,EAAG,iBACJ,CAAC,EAAG,aAAc;AAGtB,KAAI,OAAO,SAAY;EACtB,IAAM,IAAW,EAAG,QAAQ,aAAa;AACzC,EAAI,GAAU,uBAAuB,IAAI,GAAU,uBAAuB,CAAC,SAAS,SAAS,gBAAgB,gBAC5G,WAAW,OAAO,QAAW,eAAe;;CAI9C,IAAM,IAAa,EAAG,eAAe,EAAG;AASxC,KARI,KACH,EAAG,cAAc,UAAU,IAAI,uBAAuB,EACtD,EAAG,UAAU,IAAI,aAAa,KAE9B,EAAG,cAAc,UAAU,OAAO,uBAAuB,EACzD,EAAG,UAAU,OAAO,aAAa,GAG9B,GAAW;EACd,IAAM,IAAc,EAAO,EAAG,CAAC,MAAM,EAAO,EAAG,cAAc,CAAC;AAC9D,IAAG,MAAM,YAAY,uBAAuB,IAAM,KAAK;EAEvD,IAAM,IAAS,EAAG;AASlB,EARA,EAAG,MAAM,YAAY,mBAAmB,IAAS,KAAK,EAElD,EAAG,YAAY,IAClB,EAAG,UAAU,IAAI,qBAAqB,GAEtC,EAAG,UAAU,OAAO,qBAAqB,EAGtC,EAAG,aAAa,EAAG,eAAe,EAAG,eACxC,EAAG,UAAU,IAAI,sBAAsB,GAEvC,EAAG,UAAU,OAAO,sBAAsB;;GAKzC;AACA,OAAO,mBACV,IAA6B,IAAI,gBAAgB,MAAY;AAC5D,GAAQ,SAAS,MAAU,EAAa,EAAM,OAAsB,CAAC;EACpE;AAaH,IAAa,KAAuB,MAAqC;AACxE,KAAI,CAAC,EAAK;AAEV,KAAI,MAAM,QAAQ,EAAI,EAAE;AACvB,IAAI,SAAS,MAAO,EAAoB,EAAG,CAAC;AAE5C;;CAGD,IAAM,IAAK;AAEP,GAAG,QAAQ,uBACf,EAAG,QAAQ,qBAAqB,QAEhC,EAAG,iBAAiB,EAAa,EAAG,EAEpC,GAA4B,QAAQ,EAAG;GAG3B,KAAyB,MAAoB;AACzD,IAA4B,UAAU,EAAG;GAQ7B,UACL,GAAkB,EAMb,KAAoB,IAAkB,SAAS,oBAA4B;CACvF,IAAM,IAAe,EAAG,cAClB,IAAe,EAAG,cAClB,IAAY,EAAG;AAErB,KAAI,KAAgB,KAAa,GAAc;EAC9C,IAAM,IAAc,IAAe;AAEnC,SAAO,KAAK,MAAM,IAAY,IAAc,IAAI;;AAGjD,QAAO"}
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-DDNzqU6o.amd","../.chunks/core-DzDFXOdI.amd","vue","../.chunks/dialogs.vue_vue_type_script_setup_true_lang-BBix_8WK.amd"],(function(b,c,g,f,r,d){"use strict";if(typeof r>"u")var r=window.Vue;const s={0:"Yandex",20:"Yandex.com",21:"Yandex.com.tr",1:"Google",4:"YouTube",5:"Bing",7:"Seznam",8:"AppStore",9:"GooglePlay",101:"VK",102:"Facebook",103:"Twitter"},t=a=>{let e="";switch(typeof a=="string"&&(a=Number(a)),a){case 0:e="";break;case 20:case 21:e="";break;case 1:e="";break;case 2:e="";break;case 3:e="";break;case 4:e="";break;case 5:e="";break;case 6:e="";break;case 7:e="";break;case 8:e="";break;case 9:e="";break;case null:e="";break}return e},n=a=>{let e="";switch(typeof a=="string"&&(a=Number(a)),a%10){case 0:e="";break;case 1:e="";break;case 2:e="";break}return e},i=(a,e)=>{switch(typeof a=="string"&&(a=Number(a)),a*1){case 1:case 4:case 5:case 6:case 8:case 9:return e}return""},u=(a,e,k)=>{switch(e*1){case 0:switch(k*1){case 2:a=`"${a}"`;break;case 3:a=`"!${a}"`;break;case 5:a=`"[${a}]"`;break;case 6:a=`"[!${a}]"`;break}break;case 1:a=`[${a}]`;break}return a},o=(a,e)=>{switch(e===null&&(e=6),a){case 1:e=3;break;case 2:e=2;break;case 5:e>1&&(e=1);break;default:[1,2,3,5,6].includes(e)||(e=3)}return e};c.genVolumeLabel=u,c.getDeviceGIcon=n,c.getLangLabel=i,c.getSearcherGIcon=t,c.prepareVolumeType=o,c.searchersNames=s,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})}));
2
- //# sourceMappingURL=searchers.amd.js.map
1
+ define([`require`,`exports`,`../.chunks/app-CCX-gNqz.amd.js`],function(e,t){"use strict";Object.defineProperty(t,`__esModule`,{value:!0}),t.searchersNames=t.prepareVolumeType=t.getSearcherGIcon=t.getLangLabel=t.getDeviceGIcon=t.genVolumeLabel=void 0,t.searchersNames={0:`Yandex`,20:`Yandex.com`,21:`Yandex.com.tr`,1:`Google`,4:`YouTube`,5:`Bing`,7:`Seznam`,8:`AppStore`,9:`GooglePlay`,101:`VK`,102:`Facebook`,103:`Twitter`},t.getSearcherGIcon=e=>{let t=``;switch(typeof e==`string`&&(e=Number(e)),e){case 0:t=``;break;case 20:case 21:t=``;break;case 1:t=``;break;case 2:t=``;break;case 3:t=``;break;case 4:t=``;break;case 5:t=``;break;case 6:t=``;break;case 7:t=``;break;case 8:t=``;break;case 9:t=``;break;case null:t=``;break}return t},t.getDeviceGIcon=e=>{let t=``;switch(typeof e==`string`&&(e=Number(e)),e%10){case 0:t=``;break;case 1:t=``;break;case 2:t=``;break}return t},t.getLangLabel=(e,t)=>{switch(typeof e==`string`&&(e=Number(e)),e*1){case 1:case 4:case 5:case 6:case 8:case 9:return t}return``},t.genVolumeLabel=(e,t,n)=>{switch(t*1){case 0:switch(n*1){case 2:e=`"${e}"`;break;case 3:e=`"!${e}"`;break;case 5:e=`"[${e}]"`;break;case 6:e=`"[!${e}]"`;break}break;case 1:e=`[${e}]`;break}return e},t.prepareVolumeType=(e,t)=>{switch(t===null&&(t=6),e){case 1:t=3;break;case 2:t=2;break;case 5:t>1&&(t=1);break;default:[1,2,3,5,6].includes(t)||(t=3)}return t}});
2
+ //# sourceMappingURL=searchers.amd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"searchers.amd.js","sources":["../../src/core/utils/searchers.ts"],"sourcesContent":["import { useI18nLang } from '@/core/app';\n\n/**\n * Вспомогательный класс для работы с разными Поисковиками\n */\nexport const searchersNames = {\n\t0: 'Yandex',\n\t20: 'Yandex.com',\n\t21: 'Yandex.com.tr',\n\t1: 'Google',\n\t4: 'YouTube',\n\t5: 'Bing',\n\t7: 'Seznam',\n\t8: 'AppStore',\n\t9: 'GooglePlay',\n\t101: 'VK',\n\t102: 'Facebook',\n\t103: 'Twitter',\n};\n\n/**\n * Получить иконку ПС\n * @param searcherKey - цифра или строка с цифрой обозначающая ПС. Если null вернется иконка с глобусом\n */\nexport const getSearcherGIcon = (searcherKey: number | string | undefined): string => {\n\tlet icon = '';\n\n\tif (typeof searcherKey === 'string') searcherKey = Number(searcherKey);\n\n\tswitch (searcherKey) {\n\t\tcase 0:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 20:\n\t\tcase 21:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 6:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 7:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 8:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 9:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase null:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t}\n\n\treturn icon;\n};\n\n/**\n * Получить иконку устройства (ПК, планшет, смартфон)\n */\nexport const getDeviceGIcon = (device: number | string): string => {\n\tlet icon = '';\n\n\tif (typeof device === 'string') device = Number(device);\n\n\tswitch (device % 10) {\n\t\tcase 0:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t}\n\n\treturn icon;\n};\n\n/**\n * Получить иконку языка\n */\nexport const getLangLabel = (searcherKey: number | string, lang: string) => {\n\tif (typeof searcherKey === 'string') searcherKey = Number(searcherKey);\n\n\tswitch (searcherKey * 1) {\n\t\tcase 1:\n\t\tcase 4:\n\t\tcase 5:\n\t\tcase 6:\n\t\tcase 8:\n\t\tcase 9:\n\t\t\treturn lang;\n\t}\n\n\treturn '';\n};\n\n/**\n * Сгенерировать заголовок типа частоты\n */\nexport const genVolumeLabel = (label: string, searcherKey: 0 | 1, volumeType: 1 | 2 | 3 | 5 | 6): string => {\n\tswitch (searcherKey * 1) {\n\t\t// Яндекс\n\t\tcase 0:\n\t\t\tswitch (volumeType * 1) {\n\t\t\t\tcase 2:\n\t\t\t\t\tlabel = `\"${label}\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 3:\n\t\t\t\t\tlabel = `\"!${label}\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 5:\n\t\t\t\t\tlabel = `\"[${label}]\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 6:\n\t\t\t\t\tlabel = `\"[!${label}]\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tbreak;\n\t\t// Google\n\t\tcase 1:\n\t\t\tlabel = `[${label}]`;\n\n\t\t\tbreak;\n\t}\n\n\treturn label;\n};\n\n/**\n * Проверить значение частоты, вернуть правильное значение частоты\n */\nexport const prepareVolumeType = (searcherKey: number, volumeType: number): number => {\n\t// по умолчанию выбрана сама точная частота\n\tif (volumeType === null) volumeType = 6;\n\n\tswitch (searcherKey) {\n\t\tcase 1:\n\t\t\tvolumeType = 3;\n\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tvolumeType = 2;\n\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tif (volumeType > 1) volumeType = 1;\n\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tif (![1, 2, 3, 5, 6].includes(volumeType)) volumeType = 3;\n\t}\n\n\treturn volumeType;\n};\n"],"names":["searchersNames","getSearcherGIcon","searcherKey","icon","getDeviceGIcon","device","getLangLabel","lang","genVolumeLabel","label","volumeType","prepareVolumeType"],"mappings":"6OAKO,MAAAA,EAAA,8IAWD,IAAA,SAEN,EAMOC,EAAAC,GAAA,UAKN,yCAAAA,EAAA,CAAqB,IAAA,eAInB,IAAA,IACI,IAAA,gBAIJ,IAAA,eAIA,IAAA,eAIA,IAAA,eAIA,IAAA,eAIA,IAAA,eAIA,IAAA,eAIA,IAAA,eAIA,IAAA,eAIA,IAAA,eAIA,KAAA,gBAIA,CAGF,OAAAC,CACD,EAKOC,EAAAC,GAAA,yDAKe,IAAA,eAInB,IAAA,eAIA,IAAA,cAIA,CAGF,OAAAF,CACD,EAKOG,EAAA,CAAAJ,EAAAK,IAAA,+CAGmB,IAAA,GACnB,IAAA,GACA,IAAA,GACA,IAAA,GACA,IAAA,GACA,IAAA,GAEJ,OAAAA,CAAO,CAGT,MAAA,EACD,EAKOC,EAAA,CAAAC,EAAAP,EAAAQ,IAAA,aACmB,IAAA,eAGC,IAAA,oBAItB,IAAA,qBAIA,IAAA,sBAIA,IAAA,sBAIA,OAEF,IAAA,mBAKA,CAGF,OAAAD,CACD,EAKOE,EAAA,CAAAT,EAAAQ,IAAA,CAIN,OAFAA,IAAA,OAAAA,EAAA,GAEAR,EAAA,CAAqB,IAAA,aAInB,IAAA,aAIA,IAAA,GAEAQ,EAAA,IAAAA,EAAA,+CAIwD,CAG1D,OAAAA,CACD"}
1
+ {"version":3,"sources":["utils/searchers.js","../../src/core/utils/searchers.ts"],"names":["exports"],"mappings":"AAAA,OAAO,CAAC,UAAW,UAAW,iCAAiC,CAAE,SAAU,EAAS,EAAS,CACzF,aCIS,OAAiB,eAAAA,EAAA,aAAA,CAAA,MAAA,GAAA,CAAA,CAC1B,EAAA,eAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,eAAA,IAAA,GD0HA,EAAQ,eCxHP,CACD,EAAA,SACA,GAAA,aACA,GAAA,gBACA,EAAA,SACA,EAAA,UACA,EAAA,OACE,EAAA,SACA,EAAA,WACA,EAAA,aAO2B,IAAA,KAC5B,IAAO,WAIX,IAFI,UAGH,CDmGE,EAAQ,iBCnGL,GAAA,CACG,IAAA,EAAA,GAEP,OAAA,OAAA,GAAA,WAAA,EAAA,OAAA,EAAA,EAAA,EAAA,CACI,IAAA,GACA,EAAA,IACG,MAEP,IAAA,IACI,IAAA,IACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MDvBS,KAAK,KC0BT,EAAA,IAM2D,MAKlE,OAFI,GDwCD,EAAQ,eCrCL,GAAA,CACG,IAAA,EAAA,GAEP,OAAA,OAAA,GAAA,WAAA,EAAA,OAAA,EAAA,EAAA,EAAA,GAAA,CACI,IAAA,GACG,EAAA,IAEP,MACI,IAAA,GACG,EAAA,IAEP,MDnCS,IAAK,GCsCT,EAAA,IAMmD,MAIpD,OAAA,GDcH,EAAQ,cCbL,EAAA,IAAA,CACA,OAAA,OAAA,GAAA,WAAA,EAAA,OAAA,EAAA,EAAA,EAAA,EAAA,CACA,IAAA,GACA,IAAA,GAEJ,IAAO,GD5CE,IAAK,GC+CT,IAAA,GAMsC,IAAoB,GAA0C,OAAA,EAGrG,MAAA,IDHH,EAAQ,gBCID,EAAa,EAArB,IAAA,CACC,OAAK,EAAA,EAAL,CACS,IAAU,GAElB,OAAA,EAAA,EAAA,CACI,IAAA,GACe,EAAA,IAAA,EAAA,GAEnB,MACI,IAAA,GACe,EAAA,KAAA,EAAA,GAEnB,MACI,IAAA,GACgB,EAAA,KAAA,EAAA,IAEpB,MDvDe,IAAK,GCyDtB,EAAA,MAAA,EAAA,IAEI,MAGJ,MDzDS,IAAK,GC4DT,EAAA,IAAA,EAAA,GAM+C,MAKhD,OAAA,GDxCH,EAAQ,mBCyCI,EAAA,IAAA,CAEb,OAAA,IAAA,OAAA,EAAA,GAAA,EAAA,CACI,IAAA,GACS,EAAA,EAEb,MACI,IAAA,GACgB,EAAa,EAEjC,MAEK,IAAA,GAAC,EAAA,IAAA,EAAA,GAAG,MAAG,QAAA,CAAG,EAAG,EAAuB,EDhE5B,ECmER,EDjEK,CAAC,SAAS,EAAE,GAAK,EAAI,GAE1B,OAAO,IAQb","sourcesContent":["define([\"require\", \"exports\", \"../.chunks/app-CCX-gNqz.esm.js\"], function (require, exports) {\n \"use strict\";\n Object.defineProperty(exports, \"__esModule\", { value: true });\n exports.searchersNames = exports.prepareVolumeType = exports.getSearcherGIcon = exports.getLangLabel = exports.getDeviceGIcon = exports.genVolumeLabel = void 0;\n //#region src/core/utils/searchers.ts\n var e = {\n 0: \"Yandex\",\n 20: \"Yandex.com\",\n 21: \"Yandex.com.tr\",\n 1: \"Google\",\n 4: \"YouTube\",\n 5: \"Bing\",\n 7: \"Seznam\",\n 8: \"AppStore\",\n 9: \"GooglePlay\",\n 101: \"VK\",\n 102: \"Facebook\",\n 103: \"Twitter\"\n }, t = (e) => {\n let t = \"\";\n switch (typeof e == \"string\" && (e = Number(e)), e) {\n case 0:\n t = \"\";\n break;\n case 20:\n case 21:\n t = \"\";\n break;\n case 1:\n t = \"\";\n break;\n case 2:\n t = \"\";\n break;\n case 3:\n t = \"\";\n break;\n case 4:\n t = \"\";\n break;\n case 5:\n t = \"\";\n break;\n case 6:\n t = \"\";\n break;\n case 7:\n t = \"\";\n break;\n case 8:\n t = \"\";\n break;\n case 9:\n t = \"\";\n break;\n case null:\n t = \"\";\n break;\n }\n return t;\n }, n = (e) => {\n let t = \"\";\n switch (typeof e == \"string\" && (e = Number(e)), e % 10) {\n case 0:\n t = \"\";\n break;\n case 1:\n t = \"\";\n break;\n case 2:\n t = \"\";\n break;\n }\n return t;\n }, r = (e, t) => {\n switch (typeof e == \"string\" && (e = Number(e)), e * 1) {\n case 1:\n case 4:\n case 5:\n case 6:\n case 8:\n case 9: return t;\n }\n return \"\";\n }, i = (e, t, n) => {\n switch (t * 1) {\n case 0:\n switch (n * 1) {\n case 2:\n e = `\"${e}\"`;\n break;\n case 3:\n e = `\"!${e}\"`;\n break;\n case 5:\n e = `\"[${e}]\"`;\n break;\n case 6:\n e = `\"[!${e}]\"`;\n break;\n }\n break;\n case 1:\n e = `[${e}]`;\n break;\n }\n return e;\n }, a = (e, t) => {\n switch (t === null && (t = 6), e) {\n case 1:\n t = 3;\n break;\n case 2:\n t = 2;\n break;\n case 5:\n t > 1 && (t = 1);\n break;\n default: [\n 1,\n 2,\n 3,\n 5,\n 6\n ].includes(t) || (t = 3);\n }\n return t;\n };\n exports.searchersNames = e;\n exports.getSearcherGIcon = t;\n exports.getDeviceGIcon = n;\n exports.getLangLabel = r;\n exports.genVolumeLabel = i;\n exports.prepareVolumeType = a;\n});\n//# sourceMappingURL=searchers.js.map\n","import { useI18nLang } from '@/core/app';\n\n/**\n * Вспомогательный класс для работы с разными Поисковиками\n */\nexport const searchersNames = {\n\t0: 'Yandex',\n\t20: 'Yandex.com',\n\t21: 'Yandex.com.tr',\n\t1: 'Google',\n\t4: 'YouTube',\n\t5: 'Bing',\n\t7: 'Seznam',\n\t8: 'AppStore',\n\t9: 'GooglePlay',\n\t101: 'VK',\n\t102: 'Facebook',\n\t103: 'Twitter',\n};\n\n/**\n * Получить иконку ПС\n * @param searcherKey - цифра или строка с цифрой обозначающая ПС. Если null вернется иконка с глобусом\n */\nexport const getSearcherGIcon = (searcherKey: number | string | undefined): string => {\n\tlet icon = '';\n\n\tif (typeof searcherKey === 'string') searcherKey = Number(searcherKey);\n\n\tswitch (searcherKey) {\n\t\tcase 0:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 20:\n\t\tcase 21:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 6:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 7:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 8:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 9:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase null:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t}\n\n\treturn icon;\n};\n\n/**\n * Получить иконку устройства (ПК, планшет, смартфон)\n */\nexport const getDeviceGIcon = (device: number | string): string => {\n\tlet icon = '';\n\n\tif (typeof device === 'string') device = Number(device);\n\n\tswitch (device % 10) {\n\t\tcase 0:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\ticon = '';\n\n\t\t\tbreak;\n\t}\n\n\treturn icon;\n};\n\n/**\n * Получить иконку языка\n */\nexport const getLangLabel = (searcherKey: number | string, lang: string) => {\n\tif (typeof searcherKey === 'string') searcherKey = Number(searcherKey);\n\n\tswitch (searcherKey * 1) {\n\t\tcase 1:\n\t\tcase 4:\n\t\tcase 5:\n\t\tcase 6:\n\t\tcase 8:\n\t\tcase 9:\n\t\t\treturn lang;\n\t}\n\n\treturn '';\n};\n\n/**\n * Сгенерировать заголовок типа частоты\n */\nexport const genVolumeLabel = (label: string, searcherKey: 0 | 1, volumeType: 1 | 2 | 3 | 5 | 6): string => {\n\tswitch (searcherKey * 1) {\n\t\t// Яндекс\n\t\tcase 0:\n\t\t\tswitch (volumeType * 1) {\n\t\t\t\tcase 2:\n\t\t\t\t\tlabel = `\"${label}\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 3:\n\t\t\t\t\tlabel = `\"!${label}\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 5:\n\t\t\t\t\tlabel = `\"[${label}]\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t\tcase 6:\n\t\t\t\t\tlabel = `\"[!${label}]\"`;\n\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tbreak;\n\t\t// Google\n\t\tcase 1:\n\t\t\tlabel = `[${label}]`;\n\n\t\t\tbreak;\n\t}\n\n\treturn label;\n};\n\n/**\n * Проверить значение частоты, вернуть правильное значение частоты\n */\nexport const prepareVolumeType = (searcherKey: number, volumeType: number): number => {\n\t// по умолчанию выбрана сама точная частота\n\tif (volumeType === null) volumeType = 6;\n\n\tswitch (searcherKey) {\n\t\tcase 1:\n\t\t\tvolumeType = 3;\n\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tvolumeType = 2;\n\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tif (volumeType > 1) volumeType = 1;\n\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tif (![1, 2, 3, 5, 6].includes(volumeType)) volumeType = 3;\n\t}\n\n\treturn volumeType;\n};\n"]}
@@ -1,134 +1,129 @@
1
- import "../.chunks/forms-DtC-EKJL.es.js";
2
- import "../.chunks/core-Dgj_YGWh.es.js";
3
- import "vue";
4
- import "../.chunks/dialogs.vue_vue_type_script_setup_true_lang-CJ97l1ST.es.js";
5
- const k = {
6
- 0: "Yandex",
7
- 20: "Yandex.com",
8
- 21: "Yandex.com.tr",
9
- 1: "Google",
10
- 4: "YouTube",
11
- 5: "Bing",
12
- 7: "Seznam",
13
- 8: "AppStore",
14
- 9: "GooglePlay",
15
- 101: "VK",
16
- 102: "Facebook",
17
- 103: "Twitter"
18
- }, i = (e) => {
19
- let a = "";
20
- switch (typeof e == "string" && (e = Number(e)), e) {
21
- case 0:
22
- a = "";
23
- break;
24
- case 20:
25
- case 21:
26
- a = "";
27
- break;
28
- case 1:
29
- a = "";
30
- break;
31
- case 2:
32
- a = "";
33
- break;
34
- case 3:
35
- a = "";
36
- break;
37
- case 4:
38
- a = "";
39
- break;
40
- case 5:
41
- a = "";
42
- break;
43
- case 6:
44
- a = "";
45
- break;
46
- case 7:
47
- a = "";
48
- break;
49
- case 8:
50
- a = "";
51
- break;
52
- case 9:
53
- a = "";
54
- break;
55
- case null:
56
- a = "";
57
- break;
58
- }
59
- return a;
60
- }, o = (e) => {
61
- let a = "";
62
- switch (typeof e == "string" && (e = Number(e)), e % 10) {
63
- case 0:
64
- a = "";
65
- break;
66
- case 1:
67
- a = "";
68
- break;
69
- case 2:
70
- a = "";
71
- break;
72
- }
73
- return a;
74
- }, b = (e, a) => {
75
- switch (typeof e == "string" && (e = Number(e)), e * 1) {
76
- case 1:
77
- case 4:
78
- case 5:
79
- case 6:
80
- case 8:
81
- case 9:
82
- return a;
83
- }
84
- return "";
85
- }, g = (e, a, c) => {
86
- switch (a * 1) {
87
- // Яндекс
88
- case 0:
89
- switch (c * 1) {
90
- case 2:
91
- e = `"${e}"`;
92
- break;
93
- case 3:
94
- e = `"!${e}"`;
95
- break;
96
- case 5:
97
- e = `"[${e}]"`;
98
- break;
99
- case 6:
100
- e = `"[!${e}]"`;
101
- break;
102
- }
103
- break;
104
- // Google
105
- case 1:
106
- e = `[${e}]`;
107
- break;
108
- }
109
- return e;
110
- }, f = (e, a) => {
111
- switch (a === null && (a = 6), e) {
112
- case 1:
113
- a = 3;
114
- break;
115
- case 2:
116
- a = 2;
117
- break;
118
- case 5:
119
- a > 1 && (a = 1);
120
- break;
121
- default:
122
- [1, 2, 3, 5, 6].includes(a) || (a = 3);
123
- }
124
- return a;
1
+ import "../.chunks/app-CCX-gNqz.esm.js";
2
+ //#region src/core/utils/searchers.ts
3
+ var e = {
4
+ 0: "Yandex",
5
+ 20: "Yandex.com",
6
+ 21: "Yandex.com.tr",
7
+ 1: "Google",
8
+ 4: "YouTube",
9
+ 5: "Bing",
10
+ 7: "Seznam",
11
+ 8: "AppStore",
12
+ 9: "GooglePlay",
13
+ 101: "VK",
14
+ 102: "Facebook",
15
+ 103: "Twitter"
16
+ }, t = (e) => {
17
+ let t = "";
18
+ switch (typeof e == "string" && (e = Number(e)), e) {
19
+ case 0:
20
+ t = "";
21
+ break;
22
+ case 20:
23
+ case 21:
24
+ t = "";
25
+ break;
26
+ case 1:
27
+ t = "";
28
+ break;
29
+ case 2:
30
+ t = "";
31
+ break;
32
+ case 3:
33
+ t = "";
34
+ break;
35
+ case 4:
36
+ t = "";
37
+ break;
38
+ case 5:
39
+ t = "";
40
+ break;
41
+ case 6:
42
+ t = "";
43
+ break;
44
+ case 7:
45
+ t = "";
46
+ break;
47
+ case 8:
48
+ t = "";
49
+ break;
50
+ case 9:
51
+ t = "";
52
+ break;
53
+ case null:
54
+ t = "";
55
+ break;
56
+ }
57
+ return t;
58
+ }, n = (e) => {
59
+ let t = "";
60
+ switch (typeof e == "string" && (e = Number(e)), e % 10) {
61
+ case 0:
62
+ t = "";
63
+ break;
64
+ case 1:
65
+ t = "";
66
+ break;
67
+ case 2:
68
+ t = "";
69
+ break;
70
+ }
71
+ return t;
72
+ }, r = (e, t) => {
73
+ switch (typeof e == "string" && (e = Number(e)), e * 1) {
74
+ case 1:
75
+ case 4:
76
+ case 5:
77
+ case 6:
78
+ case 8:
79
+ case 9: return t;
80
+ }
81
+ return "";
82
+ }, i = (e, t, n) => {
83
+ switch (t * 1) {
84
+ case 0:
85
+ switch (n * 1) {
86
+ case 2:
87
+ e = `"${e}"`;
88
+ break;
89
+ case 3:
90
+ e = `"!${e}"`;
91
+ break;
92
+ case 5:
93
+ e = `"[${e}]"`;
94
+ break;
95
+ case 6:
96
+ e = `"[!${e}]"`;
97
+ break;
98
+ }
99
+ break;
100
+ case 1:
101
+ e = `[${e}]`;
102
+ break;
103
+ }
104
+ return e;
105
+ }, a = (e, t) => {
106
+ switch (t === null && (t = 6), e) {
107
+ case 1:
108
+ t = 3;
109
+ break;
110
+ case 2:
111
+ t = 2;
112
+ break;
113
+ case 5:
114
+ t > 1 && (t = 1);
115
+ break;
116
+ default: [
117
+ 1,
118
+ 2,
119
+ 3,
120
+ 5,
121
+ 6
122
+ ].includes(t) || (t = 3);
123
+ }
124
+ return t;
125
125
  };
126
- export {
127
- g as genVolumeLabel,
128
- o as getDeviceGIcon,
129
- b as getLangLabel,
130
- i as getSearcherGIcon,
131
- f as prepareVolumeType,
132
- k as searchersNames
133
- };
134
- //# sourceMappingURL=searchers.js.map
126
+ //#endregion
127
+ export { i as genVolumeLabel, n as getDeviceGIcon, r as getLangLabel, t as getSearcherGIcon, a as prepareVolumeType, e as searchersNames };
128
+
129
+ //# sourceMappingURL=searchers.js.map