@topvisor/ui 1.3.5-4 → 1.3.5-popupFromInput.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/.chunks/{core-BS_ygt0h.amd.js → core-DcLw0dEO.amd.js} +2 -2
  2. package/.chunks/{core-BS_ygt0h.amd.js.map → core-DcLw0dEO.amd.js.map} +1 -1
  3. package/.chunks/{core-DF7fuQev.es.js → core-DpTLGhiK.es.js} +4 -4
  4. package/.chunks/{core-DF7fuQev.es.js.map → core-DpTLGhiK.es.js.map} +1 -1
  5. package/.chunks/{datepicker-BYLW8X5k.amd.js → datepicker-Bq_z2paN.amd.js} +2 -2
  6. package/.chunks/{datepicker-BYLW8X5k.amd.js.map → datepicker-Bq_z2paN.amd.js.map} +1 -1
  7. package/.chunks/{datepicker-BVIBaChw.es.js → datepicker-CGGp0VnN.es.js} +2 -2
  8. package/.chunks/{datepicker-BVIBaChw.es.js.map → datepicker-CGGp0VnN.es.js.map} +1 -1
  9. package/.chunks/{dialog_selectorRegions-D5DOxBQO.es.js → dialog_selectorRegions-BtAADQHf.es.js} +4 -4
  10. package/.chunks/{dialog_selectorRegions-D5DOxBQO.es.js.map → dialog_selectorRegions-BtAADQHf.es.js.map} +1 -1
  11. package/.chunks/{dialog_selectorRegions-CaR2-Qo2.amd.js → dialog_selectorRegions-DCrHvHDs.amd.js} +2 -2
  12. package/.chunks/{dialog_selectorRegions-CaR2-Qo2.amd.js.map → dialog_selectorRegions-DCrHvHDs.amd.js.map} +1 -1
  13. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-B5rYBKgA.amd.js → dialogs.vue_vue_type_script_setup_true_lang-Bf0wXalT.amd.js} +2 -2
  14. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-B5rYBKgA.amd.js.map → dialogs.vue_vue_type_script_setup_true_lang-Bf0wXalT.amd.js.map} +1 -1
  15. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-CPByl0SB.es.js → dialogs.vue_vue_type_script_setup_true_lang-DCVIoEeY.es.js} +2 -2
  16. package/.chunks/{dialogs.vue_vue_type_script_setup_true_lang-CPByl0SB.es.js.map → dialogs.vue_vue_type_script_setup_true_lang-DCVIoEeY.es.js.map} +1 -1
  17. package/.chunks/{forms-BrdvrjiZ.es.js → forms-BhbgRJ5I.es.js} +5 -5
  18. package/.chunks/{forms-BrdvrjiZ.es.js.map → forms-BhbgRJ5I.es.js.map} +1 -1
  19. package/.chunks/{forms-CzUjrBXG.amd.js → forms-CNcrvkYD.amd.js} +3 -3
  20. package/.chunks/{forms-CzUjrBXG.amd.js.map → forms-CNcrvkYD.amd.js.map} +1 -1
  21. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-QvP1d9jN.amd.js +2 -0
  22. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-QvP1d9jN.amd.js.map +1 -0
  23. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-xvzbyqai.es.js +196 -0
  24. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-xvzbyqai.es.js.map +1 -0
  25. package/.chunks/{menu.vue_vue_type_style_index_0_lang-jnHbXDIR.amd.js → menu.vue_vue_type_style_index_0_lang-C3Rr6ZyL.amd.js} +2 -2
  26. package/.chunks/{menu.vue_vue_type_style_index_0_lang-jnHbXDIR.amd.js.map → menu.vue_vue_type_style_index_0_lang-C3Rr6ZyL.amd.js.map} +1 -1
  27. package/.chunks/{menu.vue_vue_type_style_index_0_lang-BNr8VcFM.es.js → menu.vue_vue_type_style_index_0_lang-dOeZ7an1.es.js} +2 -2
  28. package/.chunks/{menu.vue_vue_type_style_index_0_lang-BNr8VcFM.es.js.map → menu.vue_vue_type_style_index_0_lang-dOeZ7an1.es.js.map} +1 -1
  29. package/.chunks/{notice-CzWMWg_D.amd.js → notice-BpLsm6Zh.amd.js} +2 -2
  30. package/.chunks/{notice-CzWMWg_D.amd.js.map → notice-BpLsm6Zh.amd.js.map} +1 -1
  31. package/.chunks/{notice-BPgkjMG1.es.js → notice-CpPhDTUb.es.js} +2 -2
  32. package/.chunks/{notice-BPgkjMG1.es.js.map → notice-CpPhDTUb.es.js.map} +1 -1
  33. package/.chunks/opener.vue_vue_type_script_setup_true_lang-DRzrTv7Q.es.js +36 -0
  34. package/.chunks/opener.vue_vue_type_script_setup_true_lang-DRzrTv7Q.es.js.map +1 -0
  35. package/.chunks/opener.vue_vue_type_script_setup_true_lang-gNZhYkDf.amd.js +2 -0
  36. package/.chunks/opener.vue_vue_type_script_setup_true_lang-gNZhYkDf.amd.js.map +1 -0
  37. package/.chunks/{page.vue_vue_type_script_setup_true_lang-XMwkQHNU.es.js → page.vue_vue_type_script_setup_true_lang-9abPBMpd.es.js} +4 -4
  38. package/.chunks/{page.vue_vue_type_script_setup_true_lang-XMwkQHNU.es.js.map → page.vue_vue_type_script_setup_true_lang-9abPBMpd.es.js.map} +1 -1
  39. package/.chunks/{page.vue_vue_type_script_setup_true_lang-C-BJRiFc.amd.js → page.vue_vue_type_script_setup_true_lang-B-1LEQAz.amd.js} +2 -2
  40. package/.chunks/{page.vue_vue_type_script_setup_true_lang-C-BJRiFc.amd.js.map → page.vue_vue_type_script_setup_true_lang-B-1LEQAz.amd.js.map} +1 -1
  41. package/.chunks/{popup-do4HUI7u.es.js → popup-BJj9BJP5.es.js} +116 -90
  42. package/.chunks/popup-BJj9BJP5.es.js.map +1 -0
  43. package/.chunks/popup-CfXISjhC.amd.js +2 -0
  44. package/.chunks/popup-CfXISjhC.amd.js.map +1 -0
  45. package/.chunks/{utils-BgVG2kmp.amd.js → utils-5uxIj2CI.amd.js} +2 -2
  46. package/.chunks/{utils-BgVG2kmp.amd.js.map → utils-5uxIj2CI.amd.js.map} +1 -1
  47. package/.chunks/{utils-BqT8hS8L.amd.js → utils-Bg_su8b-.amd.js} +2 -2
  48. package/.chunks/{utils-BqT8hS8L.amd.js.map → utils-Bg_su8b-.amd.js.map} +1 -1
  49. package/.chunks/{utils-B6aJagiK.es.js → utils-D58EUoHa.es.js} +3 -3
  50. package/.chunks/{utils-B6aJagiK.es.js.map → utils-D58EUoHa.es.js.map} +1 -1
  51. package/.chunks/{utils-DyhMNhnz.es.js → utils-UBgfsQ8v.es.js} +2 -2
  52. package/.chunks/{utils-DyhMNhnz.es.js.map → utils-UBgfsQ8v.es.js.map} +1 -1
  53. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-Bo064qPK.es.js → widgetInput.vue_vue_type_script_setup_true_lang-CSD2uMSW.es.js} +2 -2
  54. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-Bo064qPK.es.js.map → widgetInput.vue_vue_type_script_setup_true_lang-CSD2uMSW.es.js.map} +1 -1
  55. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-CVsiIZz5.amd.js → widgetInput.vue_vue_type_script_setup_true_lang-D6SVtg2Q.amd.js} +2 -2
  56. package/.chunks/{widgetInput.vue_vue_type_script_setup_true_lang-CVsiIZz5.amd.js.map → widgetInput.vue_vue_type_script_setup_true_lang-D6SVtg2Q.amd.js.map} +1 -1
  57. package/assets/listItem.css +1 -1
  58. package/charts/charts.amd.js +1 -1
  59. package/charts/charts.js +1 -1
  60. package/core/app.amd.js +1 -1
  61. package/core/app.js +5 -5
  62. package/dialog/dialog.amd.js +1 -1
  63. package/dialog/dialog.js +2 -2
  64. package/forms/forms.amd.js +1 -1
  65. package/forms/forms.js +1 -1
  66. package/formsExt/formsExt.amd.js +1 -1
  67. package/formsExt/formsExt.amd.js.map +1 -1
  68. package/formsExt/formsExt.js +280 -293
  69. package/formsExt/formsExt.js.map +1 -1
  70. package/layout/layout.amd.js +1 -1
  71. package/layout/layout.js +1 -1
  72. package/package.json +1 -1
  73. package/popup/popup.amd.js +1 -1
  74. package/popup/popup.amd.js.map +1 -1
  75. package/popup/popup.js +39 -34
  76. package/popup/popup.js.map +1 -1
  77. package/popup/worker.amd.js +1 -1
  78. package/popup/worker.amd.js.map +1 -1
  79. package/popup/worker.js +24 -20
  80. package/popup/worker.js.map +1 -1
  81. package/project/project.amd.js +1 -1
  82. package/project/project.amd.js.map +1 -1
  83. package/project/project.js +26 -25
  84. package/project/project.js.map +1 -1
  85. package/src/components/forms/input/input.vue.d.ts +1 -1
  86. package/src/components/forms/input/types.d.ts +1 -1
  87. package/src/components/forms/inputDate/inputDate.vue.d.ts +1 -1
  88. package/src/components/popup/lib/popup.d.ts +14 -2
  89. package/src/components/popup/lib/worker.d.ts +1 -1
  90. package/src/components/popup/popup/opener/opener.vue.d.ts +17 -0
  91. package/src/components/popup/popup/opener/types.d.ts +51 -0
  92. package/src/components/popup/popup/opener.vue.d.ts +0 -1
  93. package/src/components/popup/popup/types.d.ts +1 -45
  94. package/src/components/project/tagSelector/utils/el.d.ts +1 -1
  95. package/tabsView/tabsView.amd.js +1 -1
  96. package/tabsView/tabsView.js +2 -2
  97. package/utils/clipboard.amd.js +1 -1
  98. package/utils/clipboard.js +1 -1
  99. package/utils/date.amd.js +1 -1
  100. package/utils/date.js +1 -1
  101. package/utils/device.amd.js +1 -1
  102. package/utils/device.js +1 -1
  103. package/utils/lodash.amd.js +1 -1
  104. package/utils/lodash.js +1 -1
  105. package/utils/price.amd.js +1 -1
  106. package/utils/price.js +1 -1
  107. package/utils/searchers.amd.js +1 -1
  108. package/utils/searchers.js +3 -3
  109. package/utils/string.amd.js +1 -1
  110. package/utils/string.js +1 -1
  111. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-DZ6ExJKC.es.js +0 -192
  112. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-DZ6ExJKC.es.js.map +0 -1
  113. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-_sniT1lq.amd.js +0 -2
  114. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-_sniT1lq.amd.js.map +0 -1
  115. package/.chunks/popup-UOJ-t8-v.amd.js +0 -2
  116. package/.chunks/popup-UOJ-t8-v.amd.js.map +0 -1
  117. package/.chunks/popup-do4HUI7u.es.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { default as Component } from '../../component';
2
- import { OpenerProps } from '../popup/types';
2
+ import { OpenerProps } from '../popup/opener/types';
3
3
  export interface PopupOptions {
4
4
  popup?: string;
5
5
  id?: string;
@@ -9,6 +9,7 @@ export interface PopupOptions {
9
9
  posBy?: 'left' | 'right' | 'fixed' | Element;
10
10
  frontSelector?: string;
11
11
  invertX?: boolean;
12
+ openByFocus?: boolean;
12
13
  openByHover?: boolean;
13
14
  useOriginal?: boolean;
14
15
  transitionDuration?: number;
@@ -35,6 +36,13 @@ export declare class TopLibPopup<T extends Record<string, any> | undefined = und
35
36
  elPopupBody: HTMLElement | undefined | null;
36
37
  elPopupFooter: HTMLElement | undefined | null;
37
38
  elFront: HTMLElement | undefined | null;
39
+ /**
40
+ * Для openerIsInput фокусировка срабатывает при входе в поле ввода
41
+ *
42
+ * Фкусировка на сам Popup не производится
43
+ *
44
+ * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Reference/Roles/combobox_role
45
+ */
38
46
  openerIsInput: boolean;
39
47
  popupParent: TopLibPopup | undefined;
40
48
  $: JQuery<HTMLElement> | undefined;
@@ -66,9 +74,13 @@ export declare class TopLibPopup<T extends Record<string, any> | undefined = und
66
74
  */
67
75
  private onMousedown;
68
76
  /**
69
- * Закрыть другие Popup при фокусе на элемент формы в текущем
77
+ * Произошла фокусировка на этот popup
70
78
  */
71
79
  private onFocus;
80
+ /**
81
+ * Закрыть другие Popup при фокусе на элемент формы в текущем
82
+ */
83
+ private onFocusCloseOthers;
72
84
  /**
73
85
  * Закрыть Popup при отведении мыши
74
86
  */
@@ -1,5 +1,5 @@
1
1
  import { TopLibPopup } from './popup';
2
- import { OpenerProps } from '../popup/types';
2
+ import { OpenerProps } from '../popup/opener/types';
3
3
  export type Options = {
4
4
  /**
5
5
  * Глобальное событие, которое будет вызвано перед открытием TopPopup
@@ -0,0 +1,17 @@
1
+ import { OpenerProps } from './types';
2
+ import { VNodeProps, AllowedComponentProps, ComponentCustomProps, PublicProps, ShallowUnwrapRef, VNode } from 'vue';
3
+ declare const _default: <T extends Record<string, any> | undefined = undefined>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
+ props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, never> & OpenerProps<T> & Partial<{}>> & PublicProps;
5
+ expose(exposed: ShallowUnwrapRef<{}>): void;
6
+ attrs: any;
7
+ slots: {
8
+ default?(_: {}): any;
9
+ };
10
+ emit: {};
11
+ }>) => VNode & {
12
+ __ctx?: Awaited<typeof __VLS_setup>;
13
+ };
14
+ export default _default;
15
+ type __VLS_PrettifyLocal<T> = {
16
+ [K in keyof T]: T[K];
17
+ } & {};
@@ -0,0 +1,51 @@
1
+ export interface OpenerProps<T extends Record<string, any> | undefined = undefined> {
2
+ /**
3
+ * id компонента Popup, который необходимо открыть
4
+ */
5
+ id: string;
6
+ /**
7
+ * Положение Popup относительно кнопки, которая его открывает
8
+ *
9
+ * - 0 - по коориднатам кнопки
10
+ * - 1 - top
11
+ * - 2 - right
12
+ * - 3 - botton
13
+ * - 4 - left
14
+ */
15
+ pos?: '0' | '1' | '2' | '3' | '4';
16
+ /**
17
+ * Добавить клювик
18
+ */
19
+ notch?: boolean;
20
+ /**
21
+ * Открывать / закрывать при фокусировке
22
+ *
23
+ * @remarks Рекомендуется включать при использовании поля ввода
24
+ */
25
+ openByFocus?: boolean;
26
+ /**
27
+ * Открывать / закрывать при наведении / отведении мыши
28
+ */
29
+ openByHover?: boolean;
30
+ /**
31
+ * Способ привязки позиционирования меню
32
+ *
33
+ * left/right - левый/правый край родителя
34
+ *
35
+ * fixed - по документу
36
+ */
37
+ posBy?: 'fixed' | 'left' | 'right';
38
+ data?: T;
39
+ }
40
+ export declare const pos: {
41
+ readonly 0: "0";
42
+ readonly 1: "1";
43
+ readonly 2: "2";
44
+ readonly 3: "3";
45
+ readonly 4: "4";
46
+ };
47
+ export declare const posBy: {
48
+ readonly fixed: "fixed";
49
+ readonly left: "left";
50
+ readonly right: "right";
51
+ };
@@ -1,4 +1,3 @@
1
- import { OpenerProps } from './types';
2
1
  import { VNodeProps, AllowedComponentProps, ComponentCustomProps, PublicProps, ShallowUnwrapRef, VNode } from 'vue';
3
2
  declare const _default: <T extends Record<string, any> | undefined = undefined>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
4
3
  props: __VLS_PrettifyLocal<Pick<Partial<{}> & Omit<{} & VNodeProps & AllowedComponentProps & ComponentCustomProps, never>, never> & OpenerProps<T> & Partial<{}>> & PublicProps;
@@ -1,3 +1,4 @@
1
+ import { OpenerProps } from './opener/types';
1
2
  export interface Props<T extends Record<string, any> | undefined = undefined> extends OpenerProps<T> {
2
3
  /**
3
4
  * Уникальный id компонента
@@ -49,39 +50,6 @@ export type Emits<T extends Record<string, any> | undefined = undefined> = {
49
50
  */
50
51
  scrollContentList: [e: Event];
51
52
  };
52
- export interface OpenerProps<T extends Record<string, any> | undefined = undefined> {
53
- /**
54
- * id компонента Popup, который необходимо открыть
55
- */
56
- id: string;
57
- /**
58
- * Положение Popup относительно кнопки, которая его открывает
59
- *
60
- * - 0 - по коориднатам кнопки
61
- * - 1 - top
62
- * - 2 - right
63
- * - 3 - botton
64
- * - 4 - left
65
- */
66
- pos?: '0' | '1' | '2' | '3' | '4';
67
- /**
68
- * Добавить клювик
69
- */
70
- notch?: boolean;
71
- /**
72
- * Открывать / закрывать при наведении / отведении мыши
73
- */
74
- openByHover?: boolean;
75
- /**
76
- * Способ привязки позиционирования меню
77
- *
78
- * left/right - левый/правый край родителя
79
- *
80
- * fixed - по документу
81
- */
82
- posBy?: 'fixed' | 'left' | 'right';
83
- data?: T;
84
- }
85
53
  export interface ListItemProps {
86
54
  /**
87
55
  * Тип элемента списка
@@ -97,15 +65,3 @@ export interface ListItemProps {
97
65
  */
98
66
  closeByClick?: boolean;
99
67
  }
100
- export declare const pos: {
101
- readonly 0: "0";
102
- readonly 1: "1";
103
- readonly 2: "2";
104
- readonly 3: "3";
105
- readonly 4: "4";
106
- };
107
- export declare const posBy: {
108
- readonly fixed: "fixed";
109
- readonly left: "left";
110
- readonly right: "right";
111
- };
@@ -1,5 +1,5 @@
1
1
  import { Ref } from 'vue';
2
- import { OpenerProps as PopupOpenerProps } from '../../../popup/popup/types';
2
+ import { OpenerProps as PopupOpenerProps } from '../../../popup/popup/opener/types';
3
3
  import { Props as TagSelectorOpenerProps } from '../popupOpener/types';
4
4
  /**
5
5
  * Сгенерировать элемент для открытия popup с выбором тегов
@@ -1,2 +1,2 @@
1
- define(["require","exports","vue","../.chunks/forms-CzUjrBXG.amd","../utils/route.amd","../.chunks/store-YRW59xEF.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-_sniT1lq.amd","../.chunks/popupHint.vue_vue_type_style_index_0_lang-Cce9ZdtW.amd","../utils/system.amd","../require/css.amd!../assets/tabsView.css","../require/css.amd!../assets/popupHint.css"],(function(J,h,e,m,f,w,_,G,L){"use strict";if(typeof e>"u")var e=window.Vue;const b=(o,n)=>`top:${String(o)}:${n}`,g={loadLocalStorge:(o,n)=>{if(!n.$id)return;const t=b(o,n.$id);try{const a=JSON.parse(localStorage.getItem(t));typeof a==typeof n[o]&&(n[o]=a)}catch{console.warn(new Error(`В localStorage[${t}] не корректный json`))}},addSaverLocalStorge:(o,n)=>{if(!n.$id)return;const t=b(o,n.$id);e.watch(()=>n[o],()=>{localStorage.setItem(t,JSON.stringify(n[o]))},{immediate:!0})}},k=new Set;addEventListener("popstate",o=>{k.forEach(n=>n(o))});const V=Symbol(),E=(o,n)=>{const t=w.defineStore(V,()=>{const a=e.computed(()=>o.showMenuInPopup??m.Core.state.isMobile),i=e.computed(()=>o.pageMod),u=e.ref(!1),r=e.ref(void 0),l=e.ref(!0);return{showMenuInPopup:a,pageMod:i,isShort:u,activeItemName:n,component:r,scrollable:l}},o.idState);if(o.isShortable){const a="isShort";g.loadLocalStorge(a,t),g.addSaverLocalStorge(a,t)}if(t.$id){const a=i=>{n.value=f.getHash(t.$id)};k.add(a)}return t},S=()=>w.useStore(V),P={key:1,class:"top-ellipsis"},v=e.defineComponent({__name:"menuItem",props:{name:{},href:{},icon:{},disabled:{type:Boolean},component:{default:void 0},scrollable:{type:Boolean,default:!0}},setup(o){const n=o,t=S(),a=e.computed(()=>n.name&&t.$id?f.genHash(t.$id,n.name):n.href),i=e.computed(()=>t.showMenuInPopup?_._sfc_main$2:a?"a":"button"),u=r=>{!n.href&&a.value&&r.preventDefault(),n.name&&(t.activeItemName=n.name)};return(r,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.value),{target:"_self",class:e.normalizeClass({"top-tabsView_menuItem":!e.unref(t).showMenuInPopup,"top-active":r.name&&e.unref(t).activeItemName===r.name,"top-disabled":r.disabled,"top-spa-disabled":!0}),href:a.value,"data-top-icon":r.icon||void 0,disabled:r.disabled||void 0,onClick:u},{default:e.withCtx(()=>[e.unref(t).showMenuInPopup?e.renderSlot(r.$slots,"default",{key:0}):r.$slots.default&&!e.unref(t).isShort?(e.openBlock(),e.createElementBlock("span",P,[e.renderSlot(r.$slots,"default")])):e.createCommentVNode("",!0)]),_:3},8,["class","href","data-top-icon","disabled"]))}}),B=o=>(o==null?void 0:o.name)==="AsyncComponentWrapper"&&!(o!=null&&o.__asyncResolved),T=async(o,n)=>{(o==null?void 0:o.name)==="AsyncComponentWrapper"&&(o!=null&&o.__asyncResolved||(o.__asyncLoader(),await L.sleepWhile(()=>n()&&B(o),200)))},z={class:"top-tabsView_menuOpener"},H=["data-top-icon"],R={class:"top-ellipsis"},O={class:"top-tabsView_menuList"},D={key:0,class:"top-tabsView_menuFooter"},j=e.defineComponent({__name:"menu",props:e.mergeModels({isShortable:{type:Boolean},isLoading:{type:Boolean}},{isLoading:{},isLoadingModifiers:{}}),emits:["update:isLoading"],setup(o){const n=e.useModel(o,"isLoading"),t=S(),a=e.useSlots(),i=new Map,u=()=>{if(!a.default)return;const c=a.default({}).find(s=>s.key==="_menu");c&&r(c.children)},r=c=>{c.forEach(s=>{var I,$,N,C;if(s.type.__name&&s.type.__name!==v.__name)return;if(!s.type.__name&&typeof s.children=="object"){r(s.children);return}if(!((I=s.props)!=null&&I.name)||($=s.props)!=null&&$.disabled)return;const M={title:((C=(N=s.children).default)==null?void 0:C.call(N)[0].children).trim(),icon:s.props.icon,component:s.props.component?e.markRaw(s.props.component):v.props.component.default,scrollable:s.props.scrollable??v.props.scrollable.default};i.set(s.props.name,M)})},l=e.ref(null);let d=0;e.watch(()=>t.activeItemName,async()=>{const c=++d;if(i.size===0&&u(),i.size===0){t.activeItemName="";return}if(l.value=i.get(t.activeItemName)??null,!l.value&&t.$id){const s=f.getHash(t.$id);if(l.value=i.get(s)??null,l.value){t.activeItemName=s;return}}if(!l.value){t.activeItemName=i.keys().next().value;return}if(l.value.component===t.component){n.value=!1;return}t.$id&&f.setHash(t.$id,t.activeItemName,!1),n.value=!0,await T(l.value.component,()=>c===d),c===d&&(t.scrollable=l.value.scrollable,t.component=l.value.component,l.value&&!t.component&&console.warn(`Компонент вкладки ${t.activeItemName} не найден. Добавьте props.component для пункта меню ${t.activeItemName}.`))},{immediate:!0});const p=e.ref();let y;return e.onMounted(()=>{y=new ResizeObserver(()=>{p.value.parentElement.style.setProperty("--top-tabsView-contents-offset-top",p.value.offsetHeight+"px")}),y.observe(p.value)}),e.onUnmounted(()=>{y.disconnect()}),(c,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:p,class:e.normalizeClass({"top-tabsView_menu":!0,"top-tabsView_menu-inPopup_0":!e.unref(t).showMenuInPopup,"top-tabsView_menu-inPopup_1":e.unref(t).showMenuInPopup,"top-tabsView_menu-short":e.unref(t).isShort&&!e.unref(t).showMenuInPopup})},[e.unref(t).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(_._sfc_main),{key:0},{opener:e.withCtx(()=>[e.createElementVNode("div",z,[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-tabsView_menuOpenerActiveItem","data-top-icon":l.value.icon},[e.createElementVNode("span",R,e.toDisplayString(l.value.title),1)],8,H)):e.createCommentVNode("",!0),s[1]||(s[1]=e.createElementVNode("div",{class:"top-tabsView_menuOpenerIcon","data-top-icon":""},null,-1))])]),contentList:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",O,[e.renderSlot(c.$slots,"default")]),c.isShortable?(e.openBlock(),e.createElementBlock("div",D,[c.isShortable?(e.openBlock(),e.createBlock(v,{key:0,icon:e.unref(t).isShort?"":"",onClick:s[0]||(s[0]=M=>e.unref(t).isShort=!e.unref(t).isShort)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t).isShort?"":"Свернуть"),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],64))],2))}}),K=e.defineComponent({__name:"tabsView",props:e.mergeModels({modelValue:{},pageMod:{type:Boolean},showMenuInPopup:{type:Boolean,default:void 0},isShortable:{type:Boolean,default:!1},idState:{}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const n=o,t=e.useModel(o,"modelValue"),a=E(n,t),i=Math.random();n.pageMod&&m.Core.state.documentClassModificators.set(i,"top-hasTabsViewPageMod"),e.onUnmounted(()=>{n.pageMod&&m.Core.state.documentClassModificators.delete(i),a.$id&&f.delHash(a.$id,a.activeItemName,!0)});const u=e.ref(),r=e.ref(!1);return e.watch([u,()=>a.component],()=>{r.value=B(a.component)},{immediate:!0}),(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tabsView":!0,"top-tabsView-pageMod":n.pageMod,"top-tabsView-inPopup":e.unref(a).showMenuInPopup})},[e.createVNode(j,{isShortable:l.isShortable,isLoading:r.value,"onUpdate:isLoading":d[0]||(d[0]=p=>r.value=p)},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"menu")]),_:3},8,["isShortable","isLoading"]),e.createElementVNode("div",{class:e.normalizeClass({"top-tabsView_contents":!0,"top-tabsView_contents-isLoading":r.value,"top-tabsView_contents-noScrollable":!e.unref(a).scrollable})},[r.value?(e.openBlock(),e.createBlock(m.TopLoadbar,{key:0})):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.KeepAlive,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(a).component),{ref_key:"componentRef",ref:u},null,512))],1024))],2)],2))}}),q={},A={class:"top-tabsView_menuDelimeter"};function F(o,n){return e.openBlock(),e.createElementBlock("div",A)}const U=m._export_sfc(q,[["render",F]]),W=e.defineComponent({__name:"menuTitle",props:{isSubtitle:{type:Boolean}},setup(o){const n=S();return(t,a)=>e.unref(n).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(_._sfc_main$2),{key:0,type:"title"},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3})):e.unref(n).isShort?(e.openBlock(),e.createBlock(U,{key:1})):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass({"top-tabsView_menuTitle":!0,"top-tabsView_menuTitle-subtitle":t.isSubtitle})},[e.renderSlot(t.$slots,"default")],2))}});h.TopTabsView=K,h.TopTabsViewMenuItem=v,h.TopTabsViewMenuTitle=W,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})}));
1
+ define(["require","exports","vue","../.chunks/forms-CNcrvkYD.amd","../utils/route.amd","../.chunks/store-YRW59xEF.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-QvP1d9jN.amd","../.chunks/popupHint.vue_vue_type_style_index_0_lang-Cce9ZdtW.amd","../utils/system.amd","../require/css.amd!../assets/tabsView.css","../require/css.amd!../assets/popupHint.css"],(function(J,h,e,m,f,g,_,G,L){"use strict";if(typeof e>"u")var e=window.Vue;const w=(o,n)=>`top:${String(o)}:${n}`,b={loadLocalStorge:(o,n)=>{if(!n.$id)return;const t=w(o,n.$id);try{const a=JSON.parse(localStorage.getItem(t));typeof a==typeof n[o]&&(n[o]=a)}catch{console.warn(new Error(`В localStorage[${t}] не корректный json`))}},addSaverLocalStorge:(o,n)=>{if(!n.$id)return;const t=w(o,n.$id);e.watch(()=>n[o],()=>{localStorage.setItem(t,JSON.stringify(n[o]))},{immediate:!0})}},k=new Set;addEventListener("popstate",o=>{k.forEach(n=>n(o))});const V=Symbol(),E=(o,n)=>{const t=g.defineStore(V,()=>{const a=e.computed(()=>o.showMenuInPopup??m.Core.state.isMobile),i=e.computed(()=>o.pageMod),u=e.ref(!1),r=e.ref(void 0),l=e.ref(!0);return{showMenuInPopup:a,pageMod:i,isShort:u,activeItemName:n,component:r,scrollable:l}},o.idState);if(o.isShortable){const a="isShort";b.loadLocalStorge(a,t),b.addSaverLocalStorge(a,t)}if(t.$id){const a=i=>{n.value=f.getHash(t.$id)};k.add(a)}return t},S=()=>g.useStore(V),P={key:1,class:"top-ellipsis"},v=e.defineComponent({__name:"menuItem",props:{name:{},href:{},icon:{},disabled:{type:Boolean},component:{default:void 0},scrollable:{type:Boolean,default:!0}},setup(o){const n=o,t=S(),a=e.computed(()=>n.name&&t.$id?f.genHash(t.$id,n.name):n.href),i=e.computed(()=>t.showMenuInPopup?_._sfc_main$1:a?"a":"button"),u=r=>{!n.href&&a.value&&r.preventDefault(),n.name&&(t.activeItemName=n.name)};return(r,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.value),{target:"_self",class:e.normalizeClass({"top-tabsView_menuItem":!e.unref(t).showMenuInPopup,"top-active":r.name&&e.unref(t).activeItemName===r.name,"top-disabled":r.disabled,"top-spa-disabled":!0}),href:a.value,"data-top-icon":r.icon||void 0,disabled:r.disabled||void 0,onClick:u},{default:e.withCtx(()=>[e.unref(t).showMenuInPopup?e.renderSlot(r.$slots,"default",{key:0}):r.$slots.default&&!e.unref(t).isShort?(e.openBlock(),e.createElementBlock("span",P,[e.renderSlot(r.$slots,"default")])):e.createCommentVNode("",!0)]),_:3},8,["class","href","data-top-icon","disabled"]))}}),B=o=>(o==null?void 0:o.name)==="AsyncComponentWrapper"&&!(o!=null&&o.__asyncResolved),T=async(o,n)=>{(o==null?void 0:o.name)==="AsyncComponentWrapper"&&(o!=null&&o.__asyncResolved||(o.__asyncLoader(),await L.sleepWhile(()=>n()&&B(o),200)))},z={class:"top-tabsView_menuOpener"},H=["data-top-icon"],R={class:"top-ellipsis"},O={class:"top-tabsView_menuList"},D={key:0,class:"top-tabsView_menuFooter"},K=e.defineComponent({__name:"menu",props:e.mergeModels({isShortable:{type:Boolean},isLoading:{type:Boolean}},{isLoading:{},isLoadingModifiers:{}}),emits:["update:isLoading"],setup(o){const n=e.useModel(o,"isLoading"),t=S(),a=e.useSlots(),i=new Map,u=()=>{if(!a.default)return;const c=a.default({}).find(s=>s.key==="_menu");c&&r(c.children)},r=c=>{c.forEach(s=>{var I,$,N,C;if(s.type.__name&&s.type.__name!==v.__name)return;if(!s.type.__name&&typeof s.children=="object"){r(s.children);return}if(!((I=s.props)!=null&&I.name)||($=s.props)!=null&&$.disabled)return;const M={title:((C=(N=s.children).default)==null?void 0:C.call(N)[0].children).trim(),icon:s.props.icon,component:s.props.component?e.markRaw(s.props.component):v.props.component.default,scrollable:s.props.scrollable??v.props.scrollable.default};i.set(s.props.name,M)})},l=e.ref(null);let d=0;e.watch(()=>t.activeItemName,async()=>{const c=++d;if(i.size===0&&u(),i.size===0){t.activeItemName="";return}if(l.value=i.get(t.activeItemName)??null,!l.value&&t.$id){const s=f.getHash(t.$id);if(l.value=i.get(s)??null,l.value){t.activeItemName=s;return}}if(!l.value){t.activeItemName=i.keys().next().value;return}if(l.value.component===t.component){n.value=!1;return}t.$id&&f.setHash(t.$id,t.activeItemName,!1),n.value=!0,await T(l.value.component,()=>c===d),c===d&&(t.scrollable=l.value.scrollable,t.component=l.value.component,l.value&&!t.component&&console.warn(`Компонент вкладки ${t.activeItemName} не найден. Добавьте props.component для пункта меню ${t.activeItemName}.`))},{immediate:!0});const p=e.ref();let y;return e.onMounted(()=>{y=new ResizeObserver(()=>{p.value.parentElement.style.setProperty("--top-tabsView-contents-offset-top",p.value.offsetHeight+"px")}),y.observe(p.value)}),e.onUnmounted(()=>{y.disconnect()}),(c,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:p,class:e.normalizeClass({"top-tabsView_menu":!0,"top-tabsView_menu-inPopup_0":!e.unref(t).showMenuInPopup,"top-tabsView_menu-inPopup_1":e.unref(t).showMenuInPopup,"top-tabsView_menu-short":e.unref(t).isShort&&!e.unref(t).showMenuInPopup})},[e.unref(t).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(_._sfc_main),{key:0},{opener:e.withCtx(()=>[e.createElementVNode("div",z,[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-tabsView_menuOpenerActiveItem","data-top-icon":l.value.icon},[e.createElementVNode("span",R,e.toDisplayString(l.value.title),1)],8,H)):e.createCommentVNode("",!0),s[1]||(s[1]=e.createElementVNode("div",{class:"top-tabsView_menuOpenerIcon","data-top-icon":""},null,-1))])]),contentList:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",O,[e.renderSlot(c.$slots,"default")]),c.isShortable?(e.openBlock(),e.createElementBlock("div",D,[c.isShortable?(e.openBlock(),e.createBlock(v,{key:0,icon:e.unref(t).isShort?"":"",onClick:s[0]||(s[0]=M=>e.unref(t).isShort=!e.unref(t).isShort)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(t).isShort?"":"Свернуть"),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],64))],2))}}),j=e.defineComponent({__name:"tabsView",props:e.mergeModels({modelValue:{},pageMod:{type:Boolean},showMenuInPopup:{type:Boolean,default:void 0},isShortable:{type:Boolean,default:!1},idState:{}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(o){const n=o,t=e.useModel(o,"modelValue"),a=E(n,t),i=Math.random();n.pageMod&&m.Core.state.documentClassModificators.set(i,"top-hasTabsViewPageMod"),e.onUnmounted(()=>{n.pageMod&&m.Core.state.documentClassModificators.delete(i),a.$id&&f.delHash(a.$id,a.activeItemName,!0)});const u=e.ref(),r=e.ref(!1);return e.watch([u,()=>a.component],()=>{r.value=B(a.component)},{immediate:!0}),(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tabsView":!0,"top-tabsView-pageMod":n.pageMod,"top-tabsView-inPopup":e.unref(a).showMenuInPopup})},[e.createVNode(K,{isShortable:l.isShortable,isLoading:r.value,"onUpdate:isLoading":d[0]||(d[0]=p=>r.value=p)},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"menu")]),_:3},8,["isShortable","isLoading"]),e.createElementVNode("div",{class:e.normalizeClass({"top-tabsView_contents":!0,"top-tabsView_contents-isLoading":r.value,"top-tabsView_contents-noScrollable":!e.unref(a).scrollable})},[r.value?(e.openBlock(),e.createBlock(m.TopLoadbar,{key:0})):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.KeepAlive,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(a).component),{ref_key:"componentRef",ref:u},null,512))],1024))],2)],2))}}),q={},A={class:"top-tabsView_menuDelimeter"};function F(o,n){return e.openBlock(),e.createElementBlock("div",A)}const U=m._export_sfc(q,[["render",F]]),W=e.defineComponent({__name:"menuTitle",props:{isSubtitle:{type:Boolean}},setup(o){const n=S();return(t,a)=>e.unref(n).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(_._sfc_main$1),{key:0,type:"title"},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3})):e.unref(n).isShort?(e.openBlock(),e.createBlock(U,{key:1})):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass({"top-tabsView_menuTitle":!0,"top-tabsView_menuTitle-subtitle":t.isSubtitle})},[e.renderSlot(t.$slots,"default")],2))}});h.TopTabsView=j,h.TopTabsViewMenuItem=v,h.TopTabsViewMenuTitle=W,Object.defineProperty(h,Symbol.toStringTag,{value:"Module"})}));
2
2
  //# sourceMappingURL=tabsView.amd.js.map
@@ -4,10 +4,10 @@
4
4
  _autoloadCSSCore.insertCSSLinkToPage(fileNames, true);
5
5
 
6
6
  import { watch as k, computed as I, ref as f, defineComponent as M, createBlock as m, openBlock as l, resolveDynamicComponent as O, normalizeClass as S, unref as i, withCtx as b, renderSlot as v, createElementBlock as p, createCommentVNode as y, mergeModels as z, useModel as D, useSlots as U, onMounted as q, onUnmounted as H, createElementVNode as g, toDisplayString as C, Fragment as G, createTextVNode as Q, markRaw as X, createVNode as Y, KeepAlive as Z } from "vue";
7
- import { C as V, T as x, g as ee } from "../.chunks/forms-BrdvrjiZ.es.js";
7
+ import { C as V, T as x, g as ee } from "../.chunks/forms-BhbgRJ5I.es.js";
8
8
  import { getHash as K, genHash as te, setHash as oe, delHash as ae } from "../utils/route.js";
9
9
  import { u as se, d as ne } from "../.chunks/store-CX_6ZXhO.es.js";
10
- import { b as A, _ as ie } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-DZ6ExJKC.es.js";
10
+ import { a as A, _ as ie } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-xvzbyqai.es.js";
11
11
  /* empty css */
12
12
  import { sleepWhile as re } from "../utils/system.js";
13
13
  const j = (t, o) => `top:${String(t)}:${o}`, le = (t, o) => {
@@ -1,4 +1,4 @@
1
- define(["require","exports","../.chunks/forms-CzUjrBXG.amd"],(function(l,t,e){"use strict";if(typeof r>"u")var r=window.Vue;async function a(o,n=!1){let i=!1;return navigator.clipboard&&(await navigator.clipboard.writeText(o),i=!0,n&&e.Core.notice(e.useI18n().Common.Copied_to_clipboard+"","info")),i}async function u(o){let n=!1;e.isSafari()||(n=await a(o));const i='<a href="'+o+'" target="_blank">'+o+"</a>",c=e.useI18n().Common.Copied_to_clipboard+`:
1
+ define(["require","exports","../.chunks/forms-CNcrvkYD.amd"],(function(l,t,e){"use strict";if(typeof r>"u")var r=window.Vue;async function a(o,n=!1){let i=!1;return navigator.clipboard&&(await navigator.clipboard.writeText(o),i=!0,n&&e.Core.notice(e.useI18n().Common.Copied_to_clipboard+"","info")),i}async function u(o){let n=!1;e.isSafari()||(n=await a(o));const i='<a href="'+o+'" target="_blank">'+o+"</a>",c=e.useI18n().Common.Copied_to_clipboard+`:
2
2
  `+i;if(n)e.Core.notice(c,"info");else{if(!navigator.clipboard){e.Core.notice(e.useI18n().Common.Cannot_copied_to_clipboard+`:
3
3
  `+e.useI18n().Common.Copy_guest_link_manually+`
4
4
  `+i,"error");return}const d={onclick:()=>a(o).then(()=>e.Core.notice(c,"info")),default:e.useI18n().Common.Copy+"",class:"copy"};await e.Core.notice(e.useI18n().Common.Guest_link_created+`
@@ -1,4 +1,4 @@
1
- import { C as t, u as a, b as s } from "../.chunks/forms-BrdvrjiZ.es.js";
1
+ import { C as t, u as a, b as s } from "../.chunks/forms-BhbgRJ5I.es.js";
2
2
  async function r(o, e = !1) {
3
3
  let i = !1;
4
4
  return navigator.clipboard && (await navigator.clipboard.writeText(o), i = !0, e && t.notice(a().Common.Copied_to_clipboard + "", "info")), i;
package/utils/date.amd.js CHANGED
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-CzUjrBXG.amd"],(function(n,e,t){"use strict";if(typeof a>"u")var a=window.Vue;e.dateFormat=t.dateFormat,e.dateToString=t.dateToString,e.dateUnformat=t.dateUnformat,e.genDate=t.genDate,e.genDateMoscow=t.genDateMoscow,e.genUserDate=t.genUserDate,e.getDayOfWeek=t.getDayOfWeek,e.stringToDate=t.stringToDate,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
1
+ define(["require","exports","../.chunks/forms-CNcrvkYD.amd"],(function(n,e,t){"use strict";if(typeof a>"u")var a=window.Vue;e.dateFormat=t.dateFormat,e.dateToString=t.dateToString,e.dateUnformat=t.dateUnformat,e.genDate=t.genDate,e.genDateMoscow=t.genDateMoscow,e.genUserDate=t.genUserDate,e.getDayOfWeek=t.getDayOfWeek,e.stringToDate=t.stringToDate,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
2
2
  //# sourceMappingURL=date.amd.js.map
package/utils/date.js CHANGED
@@ -1,4 +1,4 @@
1
- import { e as t, K as s, P as o, N as r, O as g, M as n, J as D, L as d } from "../.chunks/forms-BrdvrjiZ.es.js";
1
+ import { e as t, K as s, P as o, N as r, O as g, M as n, J as D, L as d } from "../.chunks/forms-BhbgRJ5I.es.js";
2
2
  export {
3
3
  t as dateFormat,
4
4
  s as dateToString,
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-CzUjrBXG.amd"],(function(a,e,i){"use strict";if(typeof l>"u")var l=window.Vue;e.get$scroll=i.get$scroll,e.getCommandKeyLabel=i.getCommandKeyLabel,e.getElsScroll=i.getElsScroll,e.getOS=i.getOS,e.getOSAsync=i.getOSAsync,e.getScrollTop=i.getScrollTop,e.isApp=i.isApp,e.isMacOS=i.isMacOS,e.isMobile=i.isMobile,e.isRetina=i.isRetina,e.isSafari=i.isSafari,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
1
+ define(["require","exports","../.chunks/forms-CNcrvkYD.amd"],(function(a,e,i){"use strict";if(typeof l>"u")var l=window.Vue;e.get$scroll=i.get$scroll,e.getCommandKeyLabel=i.getCommandKeyLabel,e.getElsScroll=i.getElsScroll,e.getOS=i.getOS,e.getOSAsync=i.getOSAsync,e.getScrollTop=i.getScrollTop,e.isApp=i.isApp,e.isMacOS=i.isMacOS,e.isMobile=i.isMobile,e.isRetina=i.isRetina,e.isSafari=i.isSafari,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
2
2
  //# sourceMappingURL=device.amd.js.map
package/utils/device.js CHANGED
@@ -1,4 +1,4 @@
1
- import { z as e, x as l, A as t, B as i, D as o, y as g, v as r, w as S, t as c, s as p, b } from "../.chunks/forms-BrdvrjiZ.es.js";
1
+ import { z as e, x as l, A as t, B as i, D as o, y as g, v as r, w as S, t as c, s as p, b } from "../.chunks/forms-BhbgRJ5I.es.js";
2
2
  export {
3
3
  e as get$scroll,
4
4
  l as getCommandKeyLabel,
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-CzUjrBXG.amd"],(function(u,e,n){"use strict";if(typeof i>"u")var i=window.Vue;e.cloneDeep=n.cloneDeep,e.debounce=n.debounce,e.memoize=n.memoize,e.merge=n.merge,e.throttle=n.throttle,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
1
+ define(["require","exports","../.chunks/forms-CNcrvkYD.amd"],(function(u,e,n){"use strict";if(typeof i>"u")var i=window.Vue;e.cloneDeep=n.cloneDeep,e.debounce=n.debounce,e.memoize=n.memoize,e.merge=n.merge,e.throttle=n.throttle,Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
2
2
  //# sourceMappingURL=lodash.amd.js.map
package/utils/lodash.js CHANGED
@@ -1,4 +1,4 @@
1
- import { F as a, d as s, G as m, I as r, H as t } from "../.chunks/forms-BrdvrjiZ.es.js";
1
+ import { F as a, d as s, G as m, I as r, H as t } from "../.chunks/forms-BhbgRJ5I.es.js";
2
2
  export {
3
3
  a as cloneDeep,
4
4
  s as debounce,
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-CzUjrBXG.amd"],(function(a,t,i){"use strict";if(typeof n>"u")var n=window.Vue;const u=(c,e,o=i.Core.state.currency)=>{e=e??i.useI18nLang().value;let r=c.toLocaleString(e,{style:"currency",currency:o,maximumFractionDigits:2});return r=r.replace(",","."),r};t.genPrice=u,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})}));
1
+ define(["require","exports","../.chunks/forms-CNcrvkYD.amd"],(function(a,t,i){"use strict";if(typeof n>"u")var n=window.Vue;const u=(c,e,o=i.Core.state.currency)=>{e=e??i.useI18nLang().value;let r=c.toLocaleString(e,{style:"currency",currency:o,maximumFractionDigits:2});return r=r.replace(",","."),r};t.genPrice=u,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})}));
2
2
  //# sourceMappingURL=price.amd.js.map
package/utils/price.js CHANGED
@@ -1,4 +1,4 @@
1
- import { C as a, a as o } from "../.chunks/forms-BrdvrjiZ.es.js";
1
+ import { C as a, a as o } from "../.chunks/forms-BhbgRJ5I.es.js";
2
2
  const i = (t, e, c = a.state.currency) => {
3
3
  e = e ?? o().value;
4
4
  let r = t.toLocaleString(e, { style: "currency", currency: c, maximumFractionDigits: 2 });
@@ -1,2 +1,2 @@
1
- define(["require","exports","../.chunks/forms-CzUjrBXG.amd","../.chunks/core-BS_ygt0h.amd","vue","../.chunks/dialogs.vue_vue_type_script_setup_true_lang-B5rYBKgA.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"})}));
1
+ define(["require","exports","../.chunks/forms-CNcrvkYD.amd","../.chunks/core-DcLw0dEO.amd","vue","../.chunks/dialogs.vue_vue_type_script_setup_true_lang-Bf0wXalT.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
2
  //# sourceMappingURL=searchers.amd.js.map
@@ -1,7 +1,7 @@
1
- import "../.chunks/forms-BrdvrjiZ.es.js";
2
- import "../.chunks/core-DF7fuQev.es.js";
1
+ import "../.chunks/forms-BhbgRJ5I.es.js";
2
+ import "../.chunks/core-DpTLGhiK.es.js";
3
3
  import "vue";
4
- import "../.chunks/dialogs.vue_vue_type_script_setup_true_lang-CPByl0SB.es.js";
4
+ import "../.chunks/dialogs.vue_vue_type_script_setup_true_lang-DCVIoEeY.es.js";
5
5
  const k = {
6
6
  0: "Yandex",
7
7
  20: "Yandex.com",
@@ -1,2 +1,2 @@
1
- define(["require","exports","./check.amd","../.chunks/forms-CzUjrBXG.amd"],(function(N,c,h,u){"use strict";if(typeof p>"u")var p=window.Vue;const i=new RegExp(`^[^a-zа-я0-9_%#!?.:'"«»[\\](){} \\r\\n\\t<>&/+-]`,"i"),s=e=>{var a;const l=(a=e==null?void 0:e[0])==null?void 0:a.match(i);return{icon:l?e[0]:null,content:l?e.substring(1):e}},f=e=>{e+="";let l=0;if(!e.length)return l;for(let a=0;a<e.length;a++){const n=e.charCodeAt(a);l=(l<<5)-l+n,l=l&l}return l<0&&(l*=-1),l},d=e=>/^\w+:\/\/([\w-]+\.)+[\w-]+(:\d+)?(\/|$)/.test(e),g=e=>{let l=e+"";l=l.replace("-","–");let a=l.split("."),n=a[0],o=a.length>1?"."+a[1]:"";if(n.replace(/[+–]/,"").length<=4)return l;const r=/(\d+)(\d{3})/;for(;r.test(n);)n=n.replace(r,"$1 $2");return n+o},m=e=>e===void 0?"":e.replace(/\r\n|\r|\n/g,"<br>"),w=e=>typeof e=="string"&&e.trim()!==""&&!isNaN(Number(e)),C=(e,l=2,a=1e3,n="")=>{if(w(e))e=Number(e);else return String(e);const o=Math.pow(10,l);let r;return Math.abs(e)>Math.pow(a,3)?r=Math.round(e/Math.pow(a,3)*o)/o+" <small>G"+n+"</small>":Math.abs(e)>Math.pow(a,2)?r=Math.round(e/Math.pow(a,2)*o)/o+" <small>M"+n+"</small>":Math.abs(e)>a?r=Math.round(e/a*o)/o+" <small>K"+n+"</small>":r=Math.round(e*o)/o+"",r=r.replace(/^(-?\d+)(\d{3})/,"$1 $2"),r},M=(e,l,a=1)=>{if(e==null)return"";if(e+="",l==null||e.length<=l)return e;if(a===0)e=e.substr(e.length-l,l),e="..."+e;else if(a===1){const n=e.substr(0,l/2),o=e.substr(e.length-l/2,Math.ceil(l/2));e=n+"..."+o}else a===2&&(e=e.substr(0,l),e=e+"...");return e},b=(e,l,a,n)=>{if(u.useI18nLang().value==="en")return e===1?a:l;const o=e%100,r=e%10;return o>=5&&o<=20||r===0?l:r===1?a:r>=2&&r<=4?n:r>=5&&r<=9?l:n},E=e=>{if(u.useI18nLang().value!="ru"||e=="")return e;const l=e.split(" ");return $.map(l,function(a,n){a=a+"а",a=a.replace("оа","о"),a=a.replace("аяа","ой"),a=a.replace("шийа","шого"),a=a.replace("ыйа","ого"),a=a.replace("йа","я"),a=a.replace("ьа","я"),a=a.replace("яа","и"),a=a.replace("оваа","овой"),a=a.replace("аа","ы"),a=a.replace("кия","кого"),a=a.replace("каи","кой"),l[n]=a}),e=l.join(" "),e},R=e=>{const l={а:"a",б:"b",в:"v",г:"g",д:"d",е:"e",ё:"e",ж:"j",з:"z",и:"i",й:"i",к:"k",л:"l",м:"m",н:"n",о:"o",п:"p",р:"r",с:"s",т:"t",у:"u",ф:"f",х:"h",ц:"c",ч:"ch",ш:"sh",щ:"shch",ъ:"",ы:"y",ь:"",э:"e",ю:"u",я:"ya"},a=e.split(" ");return $.map(a,function(n,o){const r=[];for(let t=0;t<n.length;++t)r.push(l[n[t]]||l[n[t].toLowerCase()]==null&&n[t]||l[n[t].toLowerCase()].replace(/^(.)/,function(I){return I.toUpperCase()}));a[o]=r.join("")}),e=a.join(" "),e},k=e=>(e=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;"),e),A=(e,l)=>{let a=null;switch(l.operator){case"CONTAINS":case"REGEXP":try{let n=l.values[0];l.operator!="REGEXP"&&(n=n.replace(/([()\[\]])/g,"\\$1")),a=new RegExp("("+n+")","gi")}catch{return e}break}return e=e.replace(a,'<b class="found">$1</b>'),e},L=e=>{var l;return(l=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:l.map(a=>a.toLowerCase()).join("_")},S=e=>`/controller/file/?src=${"/cloud/common/flags/"+e.toUpperCase()+".svg"}`,y=e=>{const l=h.getDomainRegexp(),a="(([\\/?\\w&=%+#;:-]*(\\.\\w+)?))*",n=new RegExp(`(^|[\\s>(),])([a-z0-9а-яё_.]+@${l}${a})`,"gui");e=e.replace(n,'$1<a href="mailto:$2" target="_blank" rel="noopener">↑[$2]↓</a>');const o=new RegExp(`(^|[\\s>(),])(https?://)?(${l}${a})`,"gui");return e=e.replace(o,'$1<a href="√$2$3" target="_blank" rel="nofollow noopener">$2$3</a>'),e=e.replaceAll("√http","http"),e=e.replaceAll("√","http://"),e=e.replaceAll(/(↑\[|]↓)/g,""),e},v=e=>e.charAt(0).toUpperCase()+e.slice(1),T=(e=20)=>{const l="AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1234567890";let a="";for(let n=0;n<e;n++)a+=l[Math.floor(Math.random()*l.length)];return a};c.REGEXP_START_SYMBOL_ICON=i,c.addCommasWhite=g,c.addLinkTags=y,c.camelToSnakeCase=L,c.ellipsis=M,c.extractIconAndContent=s,c.genFlagLinkByCountryCode=S,c.genIntHash=f,c.getRandomHash=T,c.highlightHtml=A,c.htmlspecialchars=k,c.isUrl=d,c.nl2br=m,c.numberEnding=b,c.numberWithWord=C,c.rusToLatin=R,c.toCapitalize=v,c.toRoditPadej=E,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})}));
1
+ define(["require","exports","./check.amd","../.chunks/forms-CNcrvkYD.amd"],(function(N,c,h,u){"use strict";if(typeof p>"u")var p=window.Vue;const i=new RegExp(`^[^a-zа-я0-9_%#!?.:'"«»[\\](){} \\r\\n\\t<>&/+-]`,"i"),s=e=>{var a;const l=(a=e==null?void 0:e[0])==null?void 0:a.match(i);return{icon:l?e[0]:null,content:l?e.substring(1):e}},f=e=>{e+="";let l=0;if(!e.length)return l;for(let a=0;a<e.length;a++){const n=e.charCodeAt(a);l=(l<<5)-l+n,l=l&l}return l<0&&(l*=-1),l},d=e=>/^\w+:\/\/([\w-]+\.)+[\w-]+(:\d+)?(\/|$)/.test(e),g=e=>{let l=e+"";l=l.replace("-","–");let a=l.split("."),n=a[0],o=a.length>1?"."+a[1]:"";if(n.replace(/[+–]/,"").length<=4)return l;const r=/(\d+)(\d{3})/;for(;r.test(n);)n=n.replace(r,"$1 $2");return n+o},m=e=>e===void 0?"":e.replace(/\r\n|\r|\n/g,"<br>"),w=e=>typeof e=="string"&&e.trim()!==""&&!isNaN(Number(e)),C=(e,l=2,a=1e3,n="")=>{if(w(e))e=Number(e);else return String(e);const o=Math.pow(10,l);let r;return Math.abs(e)>Math.pow(a,3)?r=Math.round(e/Math.pow(a,3)*o)/o+" <small>G"+n+"</small>":Math.abs(e)>Math.pow(a,2)?r=Math.round(e/Math.pow(a,2)*o)/o+" <small>M"+n+"</small>":Math.abs(e)>a?r=Math.round(e/a*o)/o+" <small>K"+n+"</small>":r=Math.round(e*o)/o+"",r=r.replace(/^(-?\d+)(\d{3})/,"$1 $2"),r},M=(e,l,a=1)=>{if(e==null)return"";if(e+="",l==null||e.length<=l)return e;if(a===0)e=e.substr(e.length-l,l),e="..."+e;else if(a===1){const n=e.substr(0,l/2),o=e.substr(e.length-l/2,Math.ceil(l/2));e=n+"..."+o}else a===2&&(e=e.substr(0,l),e=e+"...");return e},b=(e,l,a,n)=>{if(u.useI18nLang().value==="en")return e===1?a:l;const o=e%100,r=e%10;return o>=5&&o<=20||r===0?l:r===1?a:r>=2&&r<=4?n:r>=5&&r<=9?l:n},E=e=>{if(u.useI18nLang().value!="ru"||e=="")return e;const l=e.split(" ");return $.map(l,function(a,n){a=a+"а",a=a.replace("оа","о"),a=a.replace("аяа","ой"),a=a.replace("шийа","шого"),a=a.replace("ыйа","ого"),a=a.replace("йа","я"),a=a.replace("ьа","я"),a=a.replace("яа","и"),a=a.replace("оваа","овой"),a=a.replace("аа","ы"),a=a.replace("кия","кого"),a=a.replace("каи","кой"),l[n]=a}),e=l.join(" "),e},R=e=>{const l={а:"a",б:"b",в:"v",г:"g",д:"d",е:"e",ё:"e",ж:"j",з:"z",и:"i",й:"i",к:"k",л:"l",м:"m",н:"n",о:"o",п:"p",р:"r",с:"s",т:"t",у:"u",ф:"f",х:"h",ц:"c",ч:"ch",ш:"sh",щ:"shch",ъ:"",ы:"y",ь:"",э:"e",ю:"u",я:"ya"},a=e.split(" ");return $.map(a,function(n,o){const r=[];for(let t=0;t<n.length;++t)r.push(l[n[t]]||l[n[t].toLowerCase()]==null&&n[t]||l[n[t].toLowerCase()].replace(/^(.)/,function(I){return I.toUpperCase()}));a[o]=r.join("")}),e=a.join(" "),e},k=e=>(e=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;"),e),A=(e,l)=>{let a=null;switch(l.operator){case"CONTAINS":case"REGEXP":try{let n=l.values[0];l.operator!="REGEXP"&&(n=n.replace(/([()\[\]])/g,"\\$1")),a=new RegExp("("+n+")","gi")}catch{return e}break}return e=e.replace(a,'<b class="found">$1</b>'),e},L=e=>{var l;return(l=e.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:l.map(a=>a.toLowerCase()).join("_")},S=e=>`/controller/file/?src=${"/cloud/common/flags/"+e.toUpperCase()+".svg"}`,y=e=>{const l=h.getDomainRegexp(),a="(([\\/?\\w&=%+#;:-]*(\\.\\w+)?))*",n=new RegExp(`(^|[\\s>(),])([a-z0-9а-яё_.]+@${l}${a})`,"gui");e=e.replace(n,'$1<a href="mailto:$2" target="_blank" rel="noopener">↑[$2]↓</a>');const o=new RegExp(`(^|[\\s>(),])(https?://)?(${l}${a})`,"gui");return e=e.replace(o,'$1<a href="√$2$3" target="_blank" rel="nofollow noopener">$2$3</a>'),e=e.replaceAll("√http","http"),e=e.replaceAll("√","http://"),e=e.replaceAll(/(↑\[|]↓)/g,""),e},v=e=>e.charAt(0).toUpperCase()+e.slice(1),T=(e=20)=>{const l="AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1234567890";let a="";for(let n=0;n<e;n++)a+=l[Math.floor(Math.random()*l.length)];return a};c.REGEXP_START_SYMBOL_ICON=i,c.addCommasWhite=g,c.addLinkTags=y,c.camelToSnakeCase=L,c.ellipsis=M,c.extractIconAndContent=s,c.genFlagLinkByCountryCode=S,c.genIntHash=f,c.getRandomHash=T,c.highlightHtml=A,c.htmlspecialchars=k,c.isUrl=d,c.nl2br=m,c.numberEnding=b,c.numberWithWord=C,c.rusToLatin=R,c.toCapitalize=v,c.toRoditPadej=E,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})}));
2
2
  //# sourceMappingURL=string.amd.js.map
package/utils/string.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { getDomainRegexp as u } from "./check.js";
2
- import { a as n } from "../.chunks/forms-BrdvrjiZ.es.js";
2
+ import { a as n } from "../.chunks/forms-BhbgRJ5I.es.js";
3
3
  const s = new RegExp(`^[^a-zа-я0-9_%#!?.:'"«»[\\](){} \\r\\n\\t<>&/+-]`, "i"), g = (e) => {
4
4
  var a;
5
5
  const l = (a = e == null ? void 0 : e[0]) == null ? void 0 : a.match(s);
@@ -1,192 +0,0 @@
1
-
2
- import { Core as _autoloadCSSCore } from '../core/app.js';
3
- const fileNames = ['../assets/listItem.css'].map(fileName => import.meta.resolve(fileName));
4
- _autoloadCSSCore.insertCSSLinkToPage(fileNames, true);
5
-
6
- import { defineComponent as k, onUpdated as H, createElementBlock as l, openBlock as s, Fragment as B, createElementVNode as P, renderSlot as a, ref as $, toRef as b, watch as T, onUnmounted as w, resolveDirective as M, createBlock as _, createCommentVNode as r, unref as A, withCtx as g, Teleport as N, withDirectives as L, toDisplayString as R, createVNode as O, normalizeClass as E, resolveDynamicComponent as U, mergeProps as W } from "vue";
7
- import { f as z } from "./forms-BrdvrjiZ.es.js";
8
- import { TopPopupWorker as I } from "../popup/worker.js";
9
- const F = /* @__PURE__ */ k({
10
- __name: "opener",
11
- props: {
12
- id: {},
13
- pos: { default: "3" },
14
- notch: { type: Boolean, default: !0 },
15
- openByHover: { type: Boolean },
16
- posBy: { default: "fixed" },
17
- data: {}
18
- },
19
- setup(c) {
20
- const p = c, e = p.id || Math.random() + "";
21
- let n;
22
- function y(t) {
23
- setTimeout(() => {
24
- n = t.nextElementSibling, n && i(n);
25
- });
26
- }
27
- H(() => {
28
- n && i(n);
29
- });
30
- function i(t) {
31
- t.dataset.topPopup = "#" + e, t.dataset.topPopupId = e, t.dataset.topPopupPos = p.pos, t.dataset.topPopupPosBy = p.posBy, t.dataset.topPopupNotch = p.notch ? "true" : "", t.dataset.topPopupOpenByHover = p.openByHover ? "true" : "", t.__TopPopupOpenerProps = p;
32
- }
33
- return (t, f) => (s(), l(B, null, [
34
- P("template", { ref: y }),
35
- a(t.$slots, "default")
36
- ], 64));
37
- }
38
- }), j = {
39
- key: 0,
40
- class: "top-popup_header"
41
- }, q = {
42
- key: 0,
43
- class: "top-as-a closer"
44
- }, G = {
45
- key: 1,
46
- class: "top-popup_widget"
47
- }, J = {
48
- key: 2,
49
- class: "top-popup_content"
50
- }, K = {
51
- key: 4,
52
- class: "top-popup_footer"
53
- }, Q = ["href"], to = /* @__PURE__ */ k({
54
- __name: "popup",
55
- props: {
56
- id: { default: "" },
57
- class: {},
58
- transitionDuration: {},
59
- footerSupportLink: {},
60
- pos: { default: "3" },
61
- notch: { type: Boolean, default: !0 },
62
- openByHover: { type: Boolean },
63
- posBy: { default: "fixed" },
64
- data: {}
65
- },
66
- emits: ["open", "close", "scrollContentList"],
67
- setup(c, { expose: p, emit: e }) {
68
- const n = c, y = e, i = n.id || "top-popup-id-" + Math.random(), t = {
69
- id: i,
70
- popup: void 0
71
- };
72
- p(t);
73
- const f = $(null), h = $(null), u = $(), m = {
74
- onOpen: async (o) => {
75
- o.elPopup && (f.value = o.elPopup), o.elPopupInner && (o.elPopupInner.innerText = "", h.value = o.elPopupInner), m.opened = !0, m.popup = o, t.popup = o, u.value = o.el.__TopPopupOpenerProps.data, y("open", { elPopup: o.elPopup, elPopupOpener: o.el, data: u.value });
76
- },
77
- onClose: (o) => {
78
- h.value = null, m.opened = !1, m.popup = void 0, u.value = void 0, y("close", { elPopup: o.elPopup, elPopupOpener: o.el, data: o.el.__TopPopupOpenerProps.data });
79
- },
80
- classRef: b(n, "class"),
81
- opened: !1,
82
- popup: void 0,
83
- transitionDurationRef: b(n, "transitionDuration")
84
- };
85
- return T(() => n.class, (o, d) => {
86
- if (!f.value) return;
87
- const v = (o == null ? void 0 : o.split(" ")) ?? [], S = ((d == null ? void 0 : d.split(" ")) ?? []).filter((D) => !v.includes(D));
88
- f.value.classList.remove(...S), f.value.classList.add(...v);
89
- }), I.regVueComponent(i, m), w(() => {
90
- I.unregVueComponent(i);
91
- }), (o, d) => {
92
- const v = M("top-scroll-shadow");
93
- return s(), l(B, null, [
94
- o.$slots.opener ? (s(), _(F, {
95
- key: 0,
96
- id: A(i),
97
- pos: o.pos,
98
- posBy: o.posBy,
99
- notch: o.notch,
100
- openByHover: o.$core.state.isMobile || o.$core.state.isMobileUA ? !1 : o.openByHover
101
- }, {
102
- default: g(() => [
103
- a(o.$slots, "opener")
104
- ]),
105
- _: 3
106
- }, 8, ["id", "pos", "posBy", "notch", "openByHover"])) : r("", !0),
107
- h.value ? (s(), _(N, {
108
- key: 1,
109
- to: h.value
110
- }, [
111
- o.$slots.header || o.$core.state.isMobile ? (s(), l("div", j, [
112
- o.$core.state.isMobile ? (s(), l("span", q, R(o.$i18n.Common.Close), 1)) : r("", !0),
113
- a(o.$slots, "header", { data: u.value })
114
- ])) : r("", !0),
115
- o.$slots.widget ? (s(), l("div", G, [
116
- a(o.$slots, "widget")
117
- ])) : r("", !0),
118
- o.$slots.content ? L((s(), l("div", J, [
119
- a(o.$slots, "content", { data: u.value })
120
- ])), [
121
- [v]
122
- ]) : r("", !0),
123
- o.$slots.contentList ? L((s(), l("ul", {
124
- key: 3,
125
- class: "top-popup_content",
126
- onScroll: d[0] || (d[0] = (C) => o.$emit("scrollContentList", C))
127
- }, [
128
- a(o.$slots, "contentList", { data: u.value })
129
- ], 32)), [
130
- [v]
131
- ]) : r("", !0),
132
- o.$slots.footer || o.footerSupportLink ? (s(), l("div", K, [
133
- o.footerSupportLink ? (s(), l("a", {
134
- key: 0,
135
- class: "top-popup_footerSupportLink",
136
- href: o.footerSupportLink,
137
- target: "_blank"
138
- }, [
139
- O(z, { hint: "" })
140
- ], 8, Q)) : r("", !0),
141
- a(o.$slots, "footer", { data: u.value })
142
- ])) : r("", !0)
143
- ], 8, ["to"])) : r("", !0)
144
- ], 64);
145
- };
146
- }
147
- }), X = { class: "top-popup_listItemActionsLabel top-ellipsis1" }, Y = { class: "top-popup_listItemActions" }, so = /* @__PURE__ */ k({
148
- inheritAttrs: !1,
149
- __name: "listItem",
150
- props: {
151
- type: { default: "button" },
152
- closeByClick: { type: Boolean, default: !0 }
153
- },
154
- setup(c) {
155
- const p = c;
156
- return (e, n) => (s(), l("li", {
157
- class: E({
158
- "top-popup_liNoSelectable": p.type !== "button"
159
- })
160
- }, [
161
- (s(), _(U(e.$attrs.href ? "a" : "div"), W({
162
- class: {
163
- "top-popup_listItem": !0,
164
- ["top-popup_listItem-" + p.type]: !!p.type,
165
- "top-popup_liastItem-withActions": e.$slots.actions,
166
- "top-popup-noCloser": !e.closeByClick,
167
- a: p.type === "button"
168
- // оформления кнопки, deprecated
169
- }
170
- }, e.$attrs), {
171
- default: g(() => [
172
- e.$slots.actions ? (s(), l(B, { key: 0 }, [
173
- P("div", X, [
174
- a(e.$slots, "default")
175
- ]),
176
- P("div", Y, [
177
- a(e.$slots, "actions")
178
- ])
179
- ], 64)) : a(e.$slots, "default", { key: 1 })
180
- ]),
181
- _: 3
182
- }, 16, ["class"])),
183
- a(e.$slots, "buttons")
184
- ], 2));
185
- }
186
- });
187
- export {
188
- to as _,
189
- F as a,
190
- so as b
191
- };
192
- //# sourceMappingURL=listItem.vue_vue_type_script_setup_true_lang-DZ6ExJKC.es.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"listItem.vue_vue_type_script_setup_true_lang-DZ6ExJKC.es.js","sources":["../../src/components/popup/popup/opener.vue","../../src/components/popup/popup/popup.vue","../../src/components/popup/popup/listItem.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUpdated } from 'vue';\nimport type { OpenerProps } from './types';\n\nconst props = withDefaults(defineProps<OpenerProps<T>>(), {\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst id = props.id || Math.random() + '';\n\nlet elOpener: Element;\n\n/**\n * Необычная функция для проброски props внутрь элемента слота\n *\n * @param el - вспомогательный элемент для доступа к элементам слота\n */\nfunction render(el: any) {\n\tsetTimeout(() => {\n\t\telOpener = el.nextElementSibling;\n\n\t\tif (elOpener) {\n\t\t\trenderOpener(elOpener);\n\t\t}\n\t});\n}\n\nonUpdated(() => {\n\tif (elOpener) {\n\t\trenderOpener(elOpener);\n\t}\n});\n\nfunction renderOpener(elOpener: any) {\n\t/**\n\t * topPopup - необходимый атрибут для всез Popup\n\t *\n\t * Для Vue вместо него используется атрибут topPopupId\n\t */\n\telOpener.dataset.topPopup = '#' + id;\n\n\telOpener.dataset.topPopupId = id;\n\telOpener.dataset.topPopupPos = props.pos;\n\telOpener.dataset.topPopupPosBy = props.posBy;\n\telOpener.dataset.topPopupNotch = props.notch ? 'true' : '';\n\telOpener.dataset.topPopupOpenByHover = props.openByHover ? 'true' : '';\n\telOpener.__TopPopupOpenerProps = props;\n}\n</script>\n\n<template>\n\t<template :ref=\"render\"></template>\n\n\t<!-- @slot элемент для открытия Popup -->\n\t<slot></slot>\n</template>\n\n<!-- Использует общий deprecated класс .btn -->\n<style>\nh3[data-top-popup],\ndiv[data-top-popup],\ni[data-top-popup]:not(.btn),\nb[data-top-popup]:not(.btn) {\n\tcursor: pointer;\n\tuser-select: none;\n\tfont-style: normal;\n\ttext-decoration: none;\n\tdisplay: inline-flex;\n\talign-items: center;\n}\n\n[data-top-popup][data-top-popup-disabled] {\n\tpointer-events: none;\n\tcursor: auto !important;\n}\n\ni[contenteditable] {\n\tcursor: text !important;\n}\n</style>\n","<script setup lang=\"ts\" generic=\"T extends Record<string, any> | undefined = undefined\">\nimport { onUnmounted, ref, toRef, watch } from 'vue';\nimport TopHint from '@/components/forms/hint/hint.vue';\nimport type { TopLibPopup } from '@/components/popup/lib/popup';\nimport type { Emits, Props } from './types';\nimport Opener from './opener.vue';\nimport Worker from '@/components/popup/lib/worker';\n\nconst props = withDefaults(defineProps<Props<T>>(), {\n\tid: '',\n\tpos: '3',\n\tnotch: true,\n\tposBy: 'fixed',\n});\n\nconst emit = defineEmits<Emits<T>>();\n\nconst id = props.id || 'top-popup-id-' + Math.random() + '';\n\nconst expose = {\n\tid,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n};\n\ndefineExpose(expose);\n\nconst elPopupRef = ref<HTMLElement | null>(null);\nconst elPopupInnerRef = ref<HTMLElement | null>(null);\n\nconst data = ref<T>();\n\n// см. lib/popup\nconst onOpen = async (popup: TopLibPopup<T>) => {\n\tif (popup.elPopup) elPopupRef.value = popup.elPopup;\n\n\tif (popup.elPopupInner) {\n\t\tpopup.elPopupInner.innerText = '';\n\n\t\telPopupInnerRef.value = popup.elPopupInner;\n\t}\n\n\tvueConnector.opened = true;\n\tvueConnector.popup = popup;\n\n\texpose.popup = popup;\n\n\tdata.value = popup.el.__TopPopupOpenerProps.data;\n\n\temit('open', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: data.value });\n};\n\n// см. lib/popup\nconst onClose = (popup: TopLibPopup<T>) => {\n\telPopupInnerRef.value = null;\n\n\tvueConnector.opened = false;\n\tvueConnector.popup = undefined;\n\n\tdata.value = undefined;\n\n\temit('close', { elPopup: popup.elPopup!, elPopupOpener: popup.el, data: popup.el.__TopPopupOpenerProps.data });\n};\n\nconst vueConnector = {\n\tonOpen,\n\tonClose,\n\tclassRef: toRef(props, 'class'),\n\topened: false,\n\tpopup: undefined as TopLibPopup<T> | undefined,\n\ttransitionDurationRef: toRef(props, 'transitionDuration'),\n};\n\nwatch(() => props.class, (newValue, oldValue) => {\n\tif (!elPopupRef.value) return;\n\n\tconst newClasses = newValue?.split(' ') ?? [];\n\tconst oldClasses = oldValue?.split(' ') ?? [];\n\n\tconst delClasses = oldClasses.filter((oldClass) => !newClasses.includes(oldClass));\n\n\telPopupRef.value.classList.remove(...delClasses);\n\telPopupRef.value.classList.add(...newClasses);\n});\n\nWorker.regVueComponent(id, vueConnector);\n\nonUnmounted(() => {\n\tWorker.unregVueComponent(id);\n});\n</script>\n\n<template>\n\t<Opener\n\t\tv-if=\"$slots.opener\"\n\t\t:id=\"id\"\n\t\t:pos=\"pos\"\n\t\t:posBy=\"posBy\"\n\t\t:notch=\"notch\"\n\t\t:openByHover=\"($core.state.isMobile || $core.state.isMobileUA) ? false : openByHover\"\n\t>\n\t\t<!-- @slot элемент для открытия Popup -->\n\t\t<slot name=\"opener\"></slot>\n\t</Opener>\n\n\t<!-- Это шаблон для компонента Popup, сам Popup генерируется в js и может находиться где угодно -->\n\t<!-- elPopupInnerRef будет установлен только после открытия и будет сброшен сразу после закрытия Popup -->\n\t<teleport\n\t\tv-if=\"elPopupInnerRef\"\n\t\t:to=\"elPopupInnerRef\"\n\t>\n\t\t<div\n\t\t\tv-if=\"$slots.header || $core.state.isMobile\"\n\t\t\tclass=\"top-popup_header\"\n\t\t>\n\t\t\t<span\n\t\t\t\tv-if=\"$core.state.isMobile\"\n\t\t\t\tclass=\"top-as-a closer\"\n\t\t\t>\n\t\t\t\t{{ $i18n.Common.Close }}\n\t\t\t</span>\n\n\t\t\t<!-- @slot Шапка -->\n\t\t\t<slot name=\"header\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.widget\"\n\t\t\tclass=\"top-popup_widget\"\n\t\t>\n\t\t\t<!-- @slot Виджет -->\n\t\t\t<slot name=\"widget\"></slot>\n\t\t</div>\n\n\t\t<div\n\t\t\tv-if=\"$slots.content\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в свободной форме -->\n\t\t\t<slot name=\"content\" :data=\"data\"></slot>\n\t\t</div>\n\n\t\t<ul\n\t\t\tv-if=\"$slots.contentList\"\n\t\t\tclass=\"top-popup_content\"\n\t\t\t@scroll=\"$emit('scrollContentList', $event)\"\n\t\t\tv-top-scroll-shadow\n\t\t>\n\t\t\t<!-- @slot Контент в виде списка, для вставки элементов списка используйте компонент popup/listItem -->\n\t\t\t<slot name=\"contentList\" :data=\"data\"></slot>\n\t\t</ul>\n\n\t\t<div\n\t\t\tv-if=\"$slots.footer || footerSupportLink\"\n\t\t\tclass=\"top-popup_footer\"\n\t\t>\n\t\t\t<a\n\t\t\t\tv-if=\"footerSupportLink\"\n\t\t\t\tclass=\"top-popup_footerSupportLink\"\n\t\t\t\t:href=\"footerSupportLink\"\n\t\t\t\ttarget=\"_blank\"\n\t\t\t>\n\t\t\t\t<TopHint hint=\"\"/>\n\t\t\t</a>\n\n\t\t\t<!-- @slot Футер -->\n\t\t\t<slot name=\"footer\" :data=\"data\"></slot>\n\t\t</div>\n\t</teleport>\n</template>\n\n<style>\n.top-popup_footerSupportLink {\n\tmargin-right: auto;\n}\n</style>\n","<script setup lang=\"ts\">\nimport type { ListItemProps } from './types';\n\ndefineOptions({\n\tinheritAttrs: false,\n});\n\nconst props = withDefaults(defineProps<ListItemProps>(), {\n\ttype: 'button',\n\tcloseByClick: true,\n});\n</script>\n\n<template>\n\t<li\n\t\t:class=\"{\n\t\t'top-popup_liNoSelectable': props.type !== 'button'\n\t}\"\n\t>\n\t\t<component\n\t\t\t:is=\"$attrs.href ? 'a' : 'div'\"\n\t\t\t:class=\"{\n\t\t\t\t'top-popup_listItem': true,\n\t\t\t\t['top-popup_listItem-' + props.type]: !!props.type,\n\t\t\t\t'top-popup_liastItem-withActions': $slots.actions,\n\t\t\t\t'top-popup-noCloser': !closeByClick,\n\n\t\t\t\t'a': props.type === 'button', // оформления кнопки, deprecated\n\t\t\t}\"\n\t\t\t:=$attrs\n\t\t>\n\t\t\t<template v-if=\"$slots.actions\">\n\t\t\t\t<div class=\"top-popup_listItemActionsLabel top-ellipsis1\">\n\t\t\t\t\t<slot></slot>\n\t\t\t\t</div>\n\n\t\t\t\t<div class=\"top-popup_listItemActions\">\n\t\t\t\t\t<slot name=\"actions\"></slot>\n\t\t\t\t</div>\n\t\t\t</template>\n\n\t\t\t<template v-else>\n\t\t\t\t<slot></slot>\n\t\t\t</template>\n\t\t</component>\n\n\t\t<slot name=\"buttons\"></slot>\n\t</li>\n</template>\n"],"names":["props","__props","id","elOpener","render","el","renderOpener","onUpdated","_createElementVNode","_renderSlot","_ctx","emit","__emit","expose","__expose","elPopupRef","ref","elPopupInnerRef","data","vueConnector","popup","toRef","watch","newValue","oldValue","newClasses","delClasses","oldClass","Worker","onUnmounted","$slots","_createBlock","Opener","_unref","pos","posBy","notch","$core","openByHover","_Teleport","_openBlock","_createElementBlock","_hoisted_1","_hoisted_2","_toDisplayString","$i18n","_hoisted_3","_withDirectives","_hoisted_4","_cache","$event","$emit","footerSupportLink","_hoisted_5","_createVNode","TopHint","_normalizeClass","_resolveDynamicComponent","$attrs","_mergeProps","closeByClick","_Fragment"],"mappings":"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"}