@topvisor/ui 0.9.6 → 0.9.8

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 (100) hide show
  1. package/.chunks/{datepicker-2f8eb2f7.amd.js → datepicker-7w3ISMUW.amd.js} +3 -3
  2. package/.chunks/datepicker-7w3ISMUW.amd.js.map +1 -0
  3. package/.chunks/{datepicker-a62ae260.es.js → datepicker-KB2i-H67.es.js} +2 -2
  4. package/.chunks/{datepicker-a62ae260.es.js.map → datepicker-KB2i-H67.es.js.map} +1 -1
  5. package/.chunks/forms-AZXCfF-R.amd.js +3 -0
  6. package/.chunks/forms-AZXCfF-R.amd.js.map +1 -0
  7. package/.chunks/{forms-260b848a.es.js → forms-iL1swNCF.es.js} +368 -370
  8. package/.chunks/forms-iL1swNCF.es.js.map +1 -0
  9. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-Mk92KW3C.es.js +154 -0
  10. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-Mk92KW3C.es.js.map +1 -0
  11. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-cBt2MlyL.amd.js +2 -0
  12. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-cBt2MlyL.amd.js.map +1 -0
  13. package/.chunks/{popup-3a721019.amd.js → popup-8sqqRRR_.amd.js} +8 -2
  14. package/.chunks/popup-8sqqRRR_.amd.js.map +1 -0
  15. package/.chunks/{popup-90783ce2.es.js → popup-gLJT9tg6.es.js} +8 -2
  16. package/.chunks/popup-gLJT9tg6.es.js.map +1 -0
  17. package/assets/forms.css +1 -1
  18. package/assets/light.css +1 -1
  19. package/assets/tabsView.css +1 -1
  20. package/core/core.amd.js +1 -1
  21. package/core/core.js +1 -1
  22. package/forms/forms.amd.js +1 -1
  23. package/forms/forms.js +1 -1
  24. package/formsExt/formsExt.amd.js +1 -1
  25. package/formsExt/formsExt.js +1 -1
  26. package/package.json +2 -5
  27. package/popup/popup.amd.js +1 -1
  28. package/popup/popup.amd.js.map +1 -1
  29. package/popup/popup.js +7 -146
  30. package/popup/popup.js.map +1 -1
  31. package/popup/worker.amd.js +1 -1
  32. package/popup/worker.js +2 -2
  33. package/src/components/forms/avatar/avatar.stories.d.ts +1 -1
  34. package/src/components/forms/avatar/avatar.vue.d.ts +1 -1
  35. package/src/components/forms/button/button.d.ts +2 -2
  36. package/src/components/forms/button/button.vue.d.ts +1 -1
  37. package/src/components/forms/checkbox/checkbox.d.ts +1 -4
  38. package/src/components/forms/checkbox/checkbox.stories.d.ts +8 -32
  39. package/src/components/forms/checkbox/checkbox.vue.d.ts +41 -15
  40. package/src/components/forms/controlLabel/controlLabel.vue.d.ts +1 -1
  41. package/src/components/forms/hint/hint.stories.d.ts +2 -2
  42. package/src/components/forms/hint/hint.vue.d.ts +1 -1
  43. package/src/components/forms/input/input.d.ts +2 -2
  44. package/src/components/forms/input/input.vue.d.ts +1 -1
  45. package/src/components/forms/inputDate/inputDate.d.ts +2 -2
  46. package/src/components/forms/inputDate/inputDate.stories.d.ts +1 -1
  47. package/src/components/forms/inputDate/inputDate.vue.d.ts +1 -1
  48. package/src/components/forms/inputRange/inputRange.vue.d.ts +1 -1
  49. package/src/components/forms/radio/radio.vue.d.ts +1 -1
  50. package/src/components/forms/select/select.d.ts +2 -2
  51. package/src/components/forms/select/select.stories.d.ts +1 -1
  52. package/src/components/forms/select/select.vue.d.ts +1 -1
  53. package/src/components/forms/switcher/switcher.vue.d.ts +1 -1
  54. package/src/components/forms/textarea/textarea.stories.d.ts +1 -1
  55. package/src/components/forms/textarea/textarea.vue.d.ts +1 -1
  56. package/src/components/formsExt/editArea/editArea.d.ts +1 -1
  57. package/src/components/formsExt/editArea/editArea.stories.d.ts +1 -1
  58. package/src/components/formsExt/editArea/editArea.vue.d.ts +1 -1
  59. package/src/components/formsExt/editInput/editInput.d.ts +2 -2
  60. package/src/components/formsExt/editInput/editInput.vue.d.ts +1 -1
  61. package/src/components/formsExt/radioGroup/radioGroup.d.ts +2 -2
  62. package/src/components/formsExt/radioGroup/radioGroup.stories.d.ts +1 -1
  63. package/src/components/formsExt/radioGroup/radioGroup.vue.d.ts +1 -1
  64. package/src/components/popup/popup/listItem.vue.d.ts +1 -1
  65. package/src/components/popup/popup/opener.vue.d.ts +1 -1
  66. package/src/components/popup/popup/popup.stories.d.ts +79 -0
  67. package/src/components/popup/popup/popup.vue.d.ts +2 -1
  68. package/src/components/tabs/tabs/content.vue.d.ts +1 -1
  69. package/src/components/tabs/tabs/tab.vue.d.ts +1 -1
  70. package/src/components/tabs/tabs/tabs.stories.d.ts +2 -2
  71. package/src/components/tabs/tabs/tabs.vue.d.ts +1 -1
  72. package/src/components/tabsView/tabsView/_MenuItem.stories.d.ts +132 -31
  73. package/src/components/tabsView/tabsView/_MenuTitle.stories.d.ts +19 -1
  74. package/src/components/tabsView/tabsView/menu.vue.d.ts +1 -1
  75. package/src/components/tabsView/tabsView/menuDelimeter.vue.d.ts +1 -1
  76. package/src/components/tabsView/tabsView/menuItem.vue.d.ts +18 -1
  77. package/src/components/tabsView/tabsView/menuTitle.vue.d.ts +1 -1
  78. package/src/components/tabsView/tabsView/tabsView.d.ts +49 -24
  79. package/src/components/tabsView/tabsView/tabsView.stories.d.ts +95 -54
  80. package/src/components/tabsView/tabsView/tabsView.vue.d.ts +4 -2
  81. package/src/components/tabsView/tabsView.d.ts +0 -1
  82. package/src/core/core/core.d.ts +1 -1
  83. package/tabs/tabs.amd.js +1 -1
  84. package/tabs/tabs.js +1 -1
  85. package/tabsView/tabsView.amd.js +1 -1
  86. package/tabsView/tabsView.amd.js.map +1 -1
  87. package/tabsView/tabsView.js +146 -123
  88. package/tabsView/tabsView.js.map +1 -1
  89. package/utils/date.amd.js +1 -1
  90. package/utils/date.js +1 -1
  91. package/utils/device.amd.js +1 -1
  92. package/utils/device.js +1 -1
  93. package/.chunks/datepicker-2f8eb2f7.amd.js.map +0 -1
  94. package/.chunks/forms-2250b8db.amd.js +0 -3
  95. package/.chunks/forms-2250b8db.amd.js.map +0 -1
  96. package/.chunks/forms-260b848a.es.js.map +0 -1
  97. package/.chunks/popup-3a721019.amd.js.map +0 -1
  98. package/.chunks/popup-90783ce2.es.js.map +0 -1
  99. package/src/components/tabsView/tabsView/content.vue.d.ts +0 -19
  100. /package/assets/{popup.css → listItem.css} +0 -0
@@ -1,5 +1,5 @@
1
1
  import type { PropsMenuTitle } from './tabsView';
2
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<PropsMenuTitle>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<PropsMenuTitle>>>, {}, {}>, {
2
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<PropsMenuTitle>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<PropsMenuTitle>>>, {}, {}>, {
3
3
  default?(_: {}): any;
4
4
  }>;
5
5
  export default _default;
@@ -1,9 +1,41 @@
1
- import type { State as StateManagerState } from '../../../components/stateManager';
1
+ import type { Component } from 'vue';
2
+ import type { State as StateManagerState } from '../../stateManager';
3
+ export interface State extends StateManagerState {
4
+ /**
5
+ * Если true - меню будет скрыто в popup под кнопку, которая его открывает, на кнопке будет текст активного элемента меню
6
+ */
7
+ showMenuInPopup: Props['showMenuInPopup'];
8
+ /**
9
+ * Если true - меню будет отображено в свернутом режиме без текста у кнопок
10
+ */
11
+ isShort: boolean;
12
+ /**
13
+ * Имя активной вкладки
14
+ */
15
+ activeItemName: Props['modelValue'];
16
+ /**
17
+ * Vue компонент активной вкладки
18
+ */
19
+ component?: PropsMenuItem['component'];
20
+ /**
21
+ * Если false - контент вкладки будет без отступов и скролла (по умолчанию true).
22
+ * Задается через PropsMenuItems.scrollable активного пункта меню.
23
+ */
24
+ scrollable?: PropsMenuItem['scrollable'];
25
+ }
2
26
  export interface Props {
3
27
  /**
4
28
  * Имя активной вкладки
5
29
  */
6
30
  modelValue: string;
31
+ /**
32
+ * Указывает на то, что компоеннт испоьзуется в основной области документа
33
+ *
34
+ * Если установлен в true - отображает меню в режиме sticky, для настройки можно использовать css переменную --top-tabsView-top
35
+ *
36
+ * Если установлен в true - добавляет документу глобальный модификатор .top-hasTabsViewPageMod
37
+ */
38
+ pageMod?: boolean;
7
39
  /**
8
40
  * Если true - меню будет скрыто в popup под кнопку, которая его открывает
9
41
  *
@@ -19,20 +51,6 @@ export interface Props {
19
51
  */
20
52
  keyForSaveState?: string;
21
53
  }
22
- export interface State extends StateManagerState {
23
- /**
24
- * Если true - меню будет скрыто в popup под кнопку, которая его открывает, на кнопке будет текст активного элемента меню
25
- */
26
- showMenuInPopup: Props['showMenuInPopup'];
27
- /**
28
- * Если true - меню будет отображено в свернутом режиме без текста у кнопок
29
- */
30
- isShort: boolean;
31
- /**
32
- * Имя активной вкладки
33
- */
34
- activeItemName: Props['modelValue'];
35
- }
36
54
  export interface Emits {
37
55
  (e: 'update:modelValue', value: Props['modelValue']): void;
38
56
  }
@@ -53,17 +71,24 @@ export interface PropsMenuItem {
53
71
  href?: string;
54
72
  icon?: string;
55
73
  disabled?: boolean;
56
- }
57
- export interface MenuItem {
58
- title?: string;
59
- icon?: PropsMenuItem['icon'];
74
+ /**
75
+ * Vue компонент вкладки
76
+ */
77
+ component?: Component;
78
+ /**
79
+ * Состояние скролла для вкладки
80
+ */
81
+ scrollable?: boolean;
60
82
  }
61
83
  export interface PropsMenuTitle {
62
84
  isSubtitle?: boolean;
63
85
  }
64
- export interface PropsContent {
65
- /**
66
- * Имя активной вкладки, должно быть уникально для каждого пункта меню в пределах одного компонента
67
- */
68
- name: Props['modelValue'];
86
+ /**
87
+ * Для activeMenuItem
88
+ */
89
+ export interface MenuItem {
90
+ title?: string;
91
+ icon?: PropsMenuItem['icon'];
92
+ component?: PropsMenuItem['component'];
93
+ scrollable?: PropsMenuItem['scrollable'];
69
94
  }
@@ -7,11 +7,15 @@ declare const meta: {
7
7
  };
8
8
  showMenuInPopup: {
9
9
  type: import("vue").PropType<boolean>;
10
+ default: undefined;
10
11
  };
11
12
  isShortable: {
12
13
  type: import("vue").PropType<boolean>;
13
14
  default: boolean;
14
15
  };
16
+ pageMod: {
17
+ type: import("vue").PropType<boolean>;
18
+ };
15
19
  keyForSaveState: {
16
20
  type: import("vue").PropType<string>;
17
21
  };
@@ -26,17 +30,22 @@ declare const meta: {
26
30
  };
27
31
  showMenuInPopup: {
28
32
  type: import("vue").PropType<boolean>;
33
+ default: undefined;
29
34
  };
30
35
  isShortable: {
31
36
  type: import("vue").PropType<boolean>;
32
37
  default: boolean;
33
38
  };
39
+ pageMod: {
40
+ type: import("vue").PropType<boolean>;
41
+ };
34
42
  keyForSaveState: {
35
43
  type: import("vue").PropType<string>;
36
44
  };
37
45
  }>> & {
38
46
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
39
47
  }, {
48
+ showMenuInPopup: boolean;
40
49
  isShortable: boolean;
41
50
  }, true, {}, {}, {
42
51
  P: {};
@@ -52,17 +61,22 @@ declare const meta: {
52
61
  };
53
62
  showMenuInPopup: {
54
63
  type: import("vue").PropType<boolean>;
64
+ default: undefined;
55
65
  };
56
66
  isShortable: {
57
67
  type: import("vue").PropType<boolean>;
58
68
  default: boolean;
59
69
  };
70
+ pageMod: {
71
+ type: import("vue").PropType<boolean>;
72
+ };
60
73
  keyForSaveState: {
61
74
  type: import("vue").PropType<string>;
62
75
  };
63
76
  }>> & {
64
77
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
65
78
  }, {}, {}, {}, {}, {
79
+ showMenuInPopup: boolean;
66
80
  isShortable: boolean;
67
81
  }>;
68
82
  __isFragment?: undefined;
@@ -75,11 +89,15 @@ declare const meta: {
75
89
  };
76
90
  showMenuInPopup: {
77
91
  type: import("vue").PropType<boolean>;
92
+ default: undefined;
78
93
  };
79
94
  isShortable: {
80
95
  type: import("vue").PropType<boolean>;
81
96
  default: boolean;
82
97
  };
98
+ pageMod: {
99
+ type: import("vue").PropType<boolean>;
100
+ };
83
101
  keyForSaveState: {
84
102
  type: import("vue").PropType<string>;
85
103
  };
@@ -88,11 +106,11 @@ declare const meta: {
88
106
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
89
107
  "update:modelValue": (value: string) => void;
90
108
  }, string, {
109
+ showMenuInPopup: boolean;
91
110
  isShortable: boolean;
92
111
  }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
93
112
  $slots: {
94
113
  menu?(_: {}): any;
95
- contents?(_: {}): any;
96
114
  };
97
115
  });
98
116
  tags: string[];
@@ -121,11 +139,15 @@ export declare const Overview: {
121
139
  };
122
140
  showMenuInPopup: {
123
141
  type: import("vue").PropType<boolean>;
142
+ default: undefined;
124
143
  };
125
144
  isShortable: {
126
145
  type: import("vue").PropType<boolean>;
127
146
  default: boolean;
128
147
  };
148
+ pageMod: {
149
+ type: import("vue").PropType<boolean>;
150
+ };
129
151
  keyForSaveState: {
130
152
  type: import("vue").PropType<string>;
131
153
  };
@@ -140,17 +162,22 @@ export declare const Overview: {
140
162
  };
141
163
  showMenuInPopup: {
142
164
  type: import("vue").PropType<boolean>;
165
+ default: undefined;
143
166
  };
144
167
  isShortable: {
145
168
  type: import("vue").PropType<boolean>;
146
169
  default: boolean;
147
170
  };
171
+ pageMod: {
172
+ type: import("vue").PropType<boolean>;
173
+ };
148
174
  keyForSaveState: {
149
175
  type: import("vue").PropType<string>;
150
176
  };
151
177
  }>> & {
152
178
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
153
179
  }, {
180
+ showMenuInPopup: boolean;
154
181
  isShortable: boolean;
155
182
  }, true, {}, {}, {
156
183
  P: {};
@@ -166,17 +193,22 @@ export declare const Overview: {
166
193
  };
167
194
  showMenuInPopup: {
168
195
  type: import("vue").PropType<boolean>;
196
+ default: undefined;
169
197
  };
170
198
  isShortable: {
171
199
  type: import("vue").PropType<boolean>;
172
200
  default: boolean;
173
201
  };
202
+ pageMod: {
203
+ type: import("vue").PropType<boolean>;
204
+ };
174
205
  keyForSaveState: {
175
206
  type: import("vue").PropType<string>;
176
207
  };
177
208
  }>> & {
178
209
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
179
210
  }, {}, {}, {}, {}, {
211
+ showMenuInPopup: boolean;
180
212
  isShortable: boolean;
181
213
  }>;
182
214
  __isFragment?: undefined;
@@ -189,11 +221,15 @@ export declare const Overview: {
189
221
  };
190
222
  showMenuInPopup: {
191
223
  type: import("vue").PropType<boolean>;
224
+ default: undefined;
192
225
  };
193
226
  isShortable: {
194
227
  type: import("vue").PropType<boolean>;
195
228
  default: boolean;
196
229
  };
230
+ pageMod: {
231
+ type: import("vue").PropType<boolean>;
232
+ };
197
233
  keyForSaveState: {
198
234
  type: import("vue").PropType<string>;
199
235
  };
@@ -202,41 +238,60 @@ export declare const Overview: {
202
238
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
203
239
  "update:modelValue": (value: string) => void;
204
240
  }, string, {
241
+ showMenuInPopup: boolean;
205
242
  isShortable: boolean;
206
243
  }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
207
244
  $slots: {
208
245
  menu?(_: {}): any;
209
- contents?(_: {}): any;
210
246
  };
211
247
  });
212
248
  TabsViewMenuItem: {
213
249
  new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
214
- name: {
250
+ icon: {
215
251
  type: import("vue").PropType<string>;
216
252
  };
217
- href: {
253
+ component: {
254
+ type: import("vue").PropType<import("vue").Component>;
255
+ default: undefined;
256
+ };
257
+ name: {
218
258
  type: import("vue").PropType<string>;
219
259
  };
220
- icon: {
260
+ href: {
221
261
  type: import("vue").PropType<string>;
222
262
  };
223
263
  disabled: {
224
264
  type: import("vue").PropType<boolean>;
225
265
  };
266
+ scrollable: {
267
+ type: import("vue").PropType<boolean>;
268
+ default: boolean;
269
+ };
226
270
  }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
227
- name: {
271
+ icon: {
228
272
  type: import("vue").PropType<string>;
229
273
  };
230
- href: {
274
+ component: {
275
+ type: import("vue").PropType<import("vue").Component>;
276
+ default: undefined;
277
+ };
278
+ name: {
231
279
  type: import("vue").PropType<string>;
232
280
  };
233
- icon: {
281
+ href: {
234
282
  type: import("vue").PropType<string>;
235
283
  };
236
284
  disabled: {
237
285
  type: import("vue").PropType<boolean>;
238
286
  };
239
- }>>, {}, true, {}, {}, {
287
+ scrollable: {
288
+ type: import("vue").PropType<boolean>;
289
+ default: boolean;
290
+ };
291
+ }>>, {
292
+ component: import("vue").Component;
293
+ scrollable: boolean;
294
+ }, true, {}, {}, {
240
295
  P: {};
241
296
  B: {};
242
297
  D: {};
@@ -244,36 +299,58 @@ export declare const Overview: {
244
299
  M: {};
245
300
  Defaults: {};
246
301
  }, Readonly<import("vue").ExtractPropTypes<{
247
- name: {
302
+ icon: {
248
303
  type: import("vue").PropType<string>;
249
304
  };
250
- href: {
305
+ component: {
306
+ type: import("vue").PropType<import("vue").Component>;
307
+ default: undefined;
308
+ };
309
+ name: {
251
310
  type: import("vue").PropType<string>;
252
311
  };
253
- icon: {
312
+ href: {
254
313
  type: import("vue").PropType<string>;
255
314
  };
256
315
  disabled: {
257
316
  type: import("vue").PropType<boolean>;
258
317
  };
259
- }>>, {}, {}, {}, {}, {}>;
318
+ scrollable: {
319
+ type: import("vue").PropType<boolean>;
320
+ default: boolean;
321
+ };
322
+ }>>, {}, {}, {}, {}, {
323
+ component: import("vue").Component;
324
+ scrollable: boolean;
325
+ }>;
260
326
  __isFragment?: undefined;
261
327
  __isTeleport?: undefined;
262
328
  __isSuspense?: undefined;
263
329
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
264
- name: {
330
+ icon: {
265
331
  type: import("vue").PropType<string>;
266
332
  };
267
- href: {
333
+ component: {
334
+ type: import("vue").PropType<import("vue").Component>;
335
+ default: undefined;
336
+ };
337
+ name: {
268
338
  type: import("vue").PropType<string>;
269
339
  };
270
- icon: {
340
+ href: {
271
341
  type: import("vue").PropType<string>;
272
342
  };
273
343
  disabled: {
274
344
  type: import("vue").PropType<boolean>;
275
345
  };
276
- }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
346
+ scrollable: {
347
+ type: import("vue").PropType<boolean>;
348
+ default: boolean;
349
+ };
350
+ }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
351
+ component: import("vue").Component;
352
+ scrollable: boolean;
353
+ }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
277
354
  $slots: {
278
355
  default?(_: {}): any;
279
356
  };
@@ -311,46 +388,10 @@ export declare const Overview: {
311
388
  default?(_: {}): any;
312
389
  };
313
390
  });
314
- TabsViewContent: {
315
- new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
316
- name: {
317
- type: import("vue").PropType<string>;
318
- required: true;
319
- };
320
- }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
321
- name: {
322
- type: import("vue").PropType<string>;
323
- required: true;
324
- };
325
- }>>, {}, true, {}, {}, {
326
- P: {};
327
- B: {};
328
- D: {};
329
- C: {};
330
- M: {};
331
- Defaults: {};
332
- }, Readonly<import("vue").ExtractPropTypes<{
333
- name: {
334
- type: import("vue").PropType<string>;
335
- required: true;
336
- };
337
- }>>, {}, {}, {}, {}, {}>;
338
- __isFragment?: undefined;
339
- __isTeleport?: undefined;
340
- __isSuspense?: undefined;
341
- } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
342
- name: {
343
- type: import("vue").PropType<string>;
344
- required: true;
345
- };
346
- }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
347
- $slots: {
348
- default?(_: {}): any;
349
- };
350
- });
351
391
  };
352
392
  setup(this: void): {
353
393
  args: any;
394
+ componentByName: Map<any, any>;
354
395
  };
355
396
  template: string;
356
397
  };
@@ -1,17 +1,19 @@
1
1
  import type { Props } from './tabsView';
2
2
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
3
+ showMenuInPopup: undefined;
3
4
  isShortable: boolean;
4
5
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
5
6
  "update:modelValue": (value: string) => void;
6
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
7
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
8
+ showMenuInPopup: undefined;
7
9
  isShortable: boolean;
8
10
  }>>> & {
9
11
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
10
12
  }, {
13
+ showMenuInPopup: boolean;
11
14
  isShortable: boolean;
12
15
  }, {}>, {
13
16
  menu?(_: {}): any;
14
- contents?(_: {}): any;
15
17
  }>;
16
18
  export default _default;
17
19
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -1,4 +1,3 @@
1
1
  export { default as TabsView } from './tabsView/tabsView.vue';
2
2
  export { default as TabsViewMenuItem } from './tabsView/menuItem.vue';
3
3
  export { default as TabsViewMenuTitle } from './tabsView/menuTitle.vue';
4
- export { default as TabsViewContent } from './tabsView/content.vue';
@@ -1,4 +1,4 @@
1
- import Page from '../../core/core/page';
1
+ import Page from './page';
2
2
  declare class Core {
3
3
  /**
4
4
  * Настройки словаря
package/tabs/tabs.amd.js CHANGED
@@ -1,2 +1,2 @@
1
- define(["require","exports","vue","../.chunks/forms-2250b8db.amd","../require/css.amd!../assets/tabs.css"],function(k,s,e,o){"use strict";if(typeof e>"u")var e=window.Vue;const l={class:e.normalizeClass({"top-tabs":!0})},d={key:0,class:"top-tabs_header"},c={class:"top-tabs_contents"},r=e.defineComponent({__name:"tabs",props:{id:{}},setup(a){return(t,n)=>(e.openBlock(),e.createElementBlock("div",l,[e.renderSlot(t.$slots,"buttons"),t.$slots.header?(e.openBlock(),e.createElementBlock("div",d,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("",!0),e.createElementVNode("div",c,[e.renderSlot(t.$slots,"contents")])]))}}),b={$style:{"top-tabs":"top-tabs","top-tabs_header":"top-tabs_header","top-tabs_contents":"top-tabs_contents","top-tabs_tabInput":"top-tabs_tabInput","top-tabs_content":"top-tabs_content"}},p=o._export_sfc(r,[["__cssModules",b]]),_=["id","name","value","checked","disabled"],i=["for"],u=e.defineComponent({__name:"tab",props:{tabsId:{},name:{},title:{},active:{type:Boolean},disabled:{type:Boolean}},setup(a){return(t,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("input",{type:"radio",class:"top-tabs_tabInput top-unvisible",id:t.tabsId+t.name,name:t.tabsId,value:t.name,checked:t.active,disabled:t.disabled},null,8,_),e.createElementVNode("label",{class:e.normalizeClass({"top-tabs_tabLabel":!0,"top-forms-focusable":!0,"top-disabled":t.disabled}),for:t.tabsId+t.name},[e.renderSlot(t.$slots,"default")],10,i)],64))}}),m={$style:{"top-tabs_tabLabel":"top-tabs_tabLabel","top-tabs_tabInput":"top-tabs_tabInput","top-disabled":"top-disabled"}},f=o._export_sfc(u,[["__cssModules",m]]),$=["data-tabs-name"],h=e.defineComponent({__name:"content",props:{name:{}},setup(a){return(t,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tabs_content":!0}),"data-tabs-name":t.name},[e.renderSlot(t.$slots,"default")],8,$))}}),y={$style:{"top-tabs_content":"top-tabs_content"}},v=o._export_sfc(h,[["__cssModules",y]]);s.Tabs=p,s.TabsContent=v,s.TabsTab=f,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","vue","../.chunks/forms-AZXCfF-R.amd","../require/css.amd!../assets/tabs.css"],function(k,s,e,o){"use strict";if(typeof e>"u")var e=window.Vue;const l={class:e.normalizeClass({"top-tabs":!0})},d={key:0,class:"top-tabs_header"},c={class:"top-tabs_contents"},r=e.defineComponent({__name:"tabs",props:{id:{}},setup(a){return(t,n)=>(e.openBlock(),e.createElementBlock("div",l,[e.renderSlot(t.$slots,"buttons"),t.$slots.header?(e.openBlock(),e.createElementBlock("div",d,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("",!0),e.createElementVNode("div",c,[e.renderSlot(t.$slots,"contents")])]))}}),b={$style:{"top-tabs":"top-tabs","top-tabs_header":"top-tabs_header","top-tabs_contents":"top-tabs_contents","top-tabs_tabInput":"top-tabs_tabInput","top-tabs_content":"top-tabs_content"}},p=o._export_sfc(r,[["__cssModules",b]]),_=["id","name","value","checked","disabled"],i=["for"],u=e.defineComponent({__name:"tab",props:{tabsId:{},name:{},title:{},active:{type:Boolean},disabled:{type:Boolean}},setup(a){return(t,n)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("input",{type:"radio",class:"top-tabs_tabInput top-unvisible",id:t.tabsId+t.name,name:t.tabsId,value:t.name,checked:t.active,disabled:t.disabled},null,8,_),e.createElementVNode("label",{class:e.normalizeClass({"top-tabs_tabLabel":!0,"top-forms-focusable":!0,"top-disabled":t.disabled}),for:t.tabsId+t.name},[e.renderSlot(t.$slots,"default")],10,i)],64))}}),m={$style:{"top-tabs_tabLabel":"top-tabs_tabLabel","top-tabs_tabInput":"top-tabs_tabInput","top-disabled":"top-disabled"}},f=o._export_sfc(u,[["__cssModules",m]]),$=["data-tabs-name"],h=e.defineComponent({__name:"content",props:{name:{}},setup(a){return(t,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tabs_content":!0}),"data-tabs-name":t.name},[e.renderSlot(t.$slots,"default")],8,$))}}),y={$style:{"top-tabs_content":"top-tabs_content"}},v=o._export_sfc(h,[["__cssModules",y]]);s.Tabs=p,s.TabsContent=v,s.TabsTab=f,Object.defineProperty(s,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=tabs.amd.js.map
package/tabs/tabs.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { insertToPage as c } from "../utils/css.js";
2
2
  import { defineComponent as b, openBlock as a, createElementBlock as o, renderSlot as s, createCommentVNode as _, createElementVNode as n, normalizeClass as l, Fragment as i } from "vue";
3
- import { _ as p } from "../.chunks/forms-260b848a.es.js";
3
+ import { _ as p } from "../.chunks/forms-iL1swNCF.es.js";
4
4
  const r = ["../assets/tabs.css"].map((e) => import.meta.resolve(e));
5
5
  await c(r);
6
6
  const u = {
@@ -1,2 +1,2 @@
1
- define(["require","exports","vue","../popup/popup.amd","../.chunks/forms-2250b8db.amd","../popup/worker.amd","../utils/dom.amd","../require/css.amd!../assets/tabsView.css"],function(Y,c,e,d,u,Z,x){"use strict";if(typeof e>"u")var e=window.Vue;const S=(o,t)=>(e.provide(o,t),t),y=o=>{const t=e.inject(o);if(!t)throw Error("Попытка использовать tabsView state до его инициализации");return t},w=(o,t)=>`top:tabsView:${String(o)}:${t}`,p={init:S,use:y,loadLocalStorge:(o,t)=>{if(!t.key)return;const n=w(o,t.key);try{const s=JSON.parse(localStorage.getItem(n));typeof s==typeof t[o]&&(t[o]=s)}catch{console.warn(new Error(`В localStorage[${n}] не корректный json`))}},addSaverLocalStorge:(o,t)=>{if(!t.key)return;const n=w(o,t.key);e.watch(e.toRef(t,o),()=>{localStorage.setItem(n,JSON.stringify(t[o]))},{immediate:!0})}},f=Symbol(),k=(o,t)=>{const n=e.reactive({key:o.keyForSaveState,showMenuInPopup:o.showMenuInPopup,isShort:!1,activeItemName:e.computed({get(){return o.modelValue},set(s){t("update:modelValue",s)}})});return v(o,n),p.init(f,n)},m=()=>p.use(f),v=(o,t)=>{if(o.isShortable){const n="isShort";p.loadLocalStorge(n,t),p.addSaverLocalStorge(n,t)}},I={key:1,class:"top-ellipsis"},$=e.defineComponent({__name:"menuItem",props:{name:{},href:{},icon:{},disabled:{type:Boolean}},setup(o){const t=o,n=e.computed(()=>s.showMenuInPopup?d.PopupListItem:t.href?"a":"button"),s=m();return(a,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{class:e.normalizeClass({"top-tabsView_menuItem":!e.unref(s).showMenuInPopup,"top-active":a.name&&e.unref(s).activeItemName===a.name,"top-disabled":a.disabled}),href:a.href,"data-top-icon":a.icon||void 0,disabled:a.disabled||void 0,onClick:l[0]||(l[0]=i=>a.name?e.unref(s).activeItemName=a.name:null)},{default:e.withCtx(()=>[e.unref(s).showMenuInPopup?e.renderSlot(a.$slots,"default",{key:0}):a.$slots.default&&!e.unref(s).isShort?(e.openBlock(),e.createElementBlock("span",I,[e.renderSlot(a.$slots,"default")])):e.createCommentVNode("",!0)]),_:3},8,["class","href","data-top-icon","disabled"]))}}),M={$style:{"top-tabsView_menuItem":"top-tabsView_menuItem","top-active":"top-active","top-forms-option":"top-forms-option","top-formsCaption":"top-formsCaption","top-disabled":"top-disabled"}},_=u._export_sfc($,[["__cssModules",M]]),B={class:"top-tabsView_menuOpener"},g=["data-top-icon"],P={class:"top-ellipsis"},C=e.createElementVNode("div",{class:"top-tabsView_menuOpenerIcon","data-top-icon":""},null,-1),N={class:"top-tabsView_menuList"},E={class:"top-tabsView_menuFooter"},T=e.defineComponent({__name:"menu",props:{isShortable:{type:Boolean}},setup(o){const t=m(),n=e.useSlots(),s=new Map,a=e.computed(()=>{let i=s.get(t.activeItemName);return i||(l(),s.get(t.activeItemName)||null)}),l=()=>{if(!n.default)return;const i=n.default().find(r=>r.key==="_menu");i&&i.children.forEach(r=>{var V,h;if(r.type.__name!==_.__name||!r.props.name)return;const b={title:((h=(V=r.children).default)==null?void 0:h.call(V)[0].children).trim(),icon:r.props.icon};s.set(r.props.name,b)})};return(i,r)=>(e.openBlock(),e.createElementBlock("div",{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(d.Popup),{key:0},{opener:e.withCtx(()=>[e.createElementVNode("div",B,[a.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-tabsView_menuOpenerActiveItem","data-top-icon":a.value.icon},[e.createElementVNode("span",P,e.toDisplayString(a.value.title),1)],8,g)):e.createCommentVNode("",!0),C])]),contentList:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:3})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",N,[e.renderSlot(i.$slots,"default")]),e.createElementVNode("div",E,[i.isShortable?(e.openBlock(),e.createBlock(_,{key:0,icon:e.unref(t).isShort?"":"",onClick:r[0]||(r[0]=b=>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)])],64))],2))}}),L={$style:{"top-tabsView_menu-inPopup_0":"top-tabsView_menu-inPopup_0","top-tabsView_menu-inPopup_1":"top-tabsView_menu-inPopup_1","top-tabsView_menu-short":"top-tabsView_menu-short","top-tabsView_menu":"top-tabsView_menu","top-tabsView_menuOpener":"top-tabsView_menuOpener","top-tabsView_menuOpenerIcon":"top-tabsView_menuOpenerIcon","top-tabsView_menuOpenerActiveItem":"top-tabsView_menuOpenerActiveItem","top-tabsView_menuList":"top-tabsView_menuList","top-tabsView_menuFooter":"top-tabsView_menuFooter","top-tabsView_menuItem":"top-tabsView_menuItem"}},O=u._export_sfc(T,[["__cssModules",L]]),D={class:"top-tabsView_contents"},F=e.defineComponent({__name:"tabsView",props:{modelValue:{},showMenuInPopup:{type:Boolean},isShortable:{type:Boolean,default:!1},keyForSaveState:{}},emits:["update:modelValue"],setup(o,{emit:t}){const n=o,a=k(n,t);return e.watchEffect(()=>{a.showMenuInPopup=n.showMenuInPopup??u.Core.state.isMobile}),(l,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tabsView":!0,"top-tabsView-inPopup":e.unref(a).showMenuInPopup})},[e.createVNode(O,{isShortable:l.isShortable},{default:e.withCtx(()=>[e.renderSlot(l.$slots,"menu")]),_:3},8,["isShortable"]),e.createElementVNode("div",D,[e.renderSlot(l.$slots,"contents")])],2))}}),j={$style:{"top-tabsView":"top-tabsView","top-tabsView-inPopup":"top-tabsView-inPopup","top-tabsView_contents":"top-tabsView_contents"}},z=u._export_sfc(F,[["__cssModules",j]]),K={"top-tabsView_menuDelimeter":"top-tabsView_menuDelimeter"},q={},A={class:"top-tabsView_menuDelimeter"};function J(o,t){return e.openBlock(),e.createElementBlock("div",A)}const R={$style:K},G=u._export_sfc(q,[["render",J],["__cssModules",R]]),H=e.defineComponent({__name:"menuTitle",props:{isSubtitle:{type:Boolean}},setup(o){const t=m();return(n,s)=>e.unref(t).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(d.PopupListItem),{key:0,type:"title"},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3})):e.unref(t).isShort?(e.openBlock(),e.createBlock(G,{key:1})):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass({"top-tabsView_menuTitle":!0,"top-tabsView_menuTitle-subtitle":n.isSubtitle})},[e.renderSlot(n.$slots,"default")],2))}}),Q={$style:{"top-tabsView_menuTitle":"top-tabsView_menuTitle","top-tabsView_menuTitle-subtitle":"top-tabsView_menuTitle-subtitle"}},U=u._export_sfc(H,[["__cssModules",Q]]),W={key:0,class:"top-tabsView_content"},X=e.defineComponent({__name:"content",props:{name:{}},setup(o){const t=m();return(n,s)=>e.unref(t).activeItemName===n.name?(e.openBlock(),e.createElementBlock("div",W,[e.renderSlot(n.$slots,"default")])):e.createCommentVNode("",!0)}});c.TabsView=z,c.TabsViewContent=X,c.TabsViewMenuItem=_,c.TabsViewMenuTitle=U,Object.defineProperty(c,Symbol.toStringTag,{value:"Module"})});
1
+ define(["require","exports","vue","../.chunks/listItem.vue_vue_type_script_setup_true_lang-cBt2MlyL.amd","../.chunks/forms-AZXCfF-R.amd","../popup/worker.amd","../utils/dom.amd","../require/css.amd!../assets/tabsView.css"],function(Q,u,e,d,c,W,X){"use strict";if(typeof e>"u")var e=window.Vue;const S=(o,t)=>(e.provide(o,t),t),y=o=>{const t=e.inject(o);if(!t)throw Error("Попытка использовать tabsView state до его инициализации");return t},w=(o,t)=>`top:tabsView:${String(o)}:${t}`,m={init:S,use:y,loadLocalStorge:(o,t)=>{if(!t.key)return;const n=w(o,t.key);try{const s=JSON.parse(localStorage.getItem(n));typeof s==typeof t[o]&&(t[o]=s)}catch{console.warn(new Error(`В localStorage[${n}] не корректный json`))}},addSaverLocalStorge:(o,t)=>{if(!t.key)return;const n=w(o,t.key);e.watch(e.toRef(t,o),()=>{localStorage.setItem(n,JSON.stringify(t[o]))},{immediate:!0})}},f=Symbol(),v=(o,t)=>{const n=e.reactive({key:o.keyForSaveState,showMenuInPopup:o.showMenuInPopup,isShort:!1,activeItemName:e.computed({get(){return o.modelValue},set(s){t("update:modelValue",s)}}),component:void 0,scrollable:!0});return k(o,n),m.init(f,n)},_=()=>m.use(f),k=(o,t)=>{if(o.isShortable){const n="isShort";m.loadLocalStorge(n,t),m.addSaverLocalStorge(n,t)}},M={key:1,class:"top-ellipsis"},I=e.defineComponent({__name:"menuItem",props:{name:{},href:{},icon:{},disabled:{type:Boolean},component:{default:void 0},scrollable:{type:Boolean,default:!0}},setup(o){const t=o,n=e.computed(()=>s.showMenuInPopup?d._sfc_main$2:t.href?"a":"button"),s=_();return(a,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value),{class:e.normalizeClass({"top-tabsView_menuItem":!e.unref(s).showMenuInPopup,"top-active":a.name&&e.unref(s).activeItemName===a.name,"top-disabled":a.disabled}),href:a.href,"data-top-icon":a.icon||void 0,disabled:a.disabled||void 0,onClick:l[0]||(l[0]=r=>a.name?e.unref(s).activeItemName=a.name:null)},{default:e.withCtx(()=>[e.unref(s).showMenuInPopup?e.renderSlot(a.$slots,"default",{key:0}):a.$slots.default&&!e.unref(s).isShort?(e.openBlock(),e.createElementBlock("span",M,[e.renderSlot(a.$slots,"default")])):e.createCommentVNode("",!0)]),_:3},8,["class","href","data-top-icon","disabled"]))}}),$={$style:{"top-tabsView_menuItem":"top-tabsView_menuItem","top-active":"top-active","top-forms-option":"top-forms-option","top-formsCaption":"top-formsCaption","top-disabled":"top-disabled"}},p=c._export_sfc(I,[["__cssModules",$]]),g={class:"top-tabsView_menuOpener"},B=["data-top-icon"],P={class:"top-ellipsis"},N=e.createElementVNode("div",{class:"top-tabsView_menuOpenerIcon","data-top-icon":""},null,-1),E={class:"top-tabsView_menuList"},T={class:"top-tabsView_menuFooter"},C=e.defineComponent({__name:"menu",props:{isShortable:{type:Boolean}},setup(o){const t=_(),n=e.useSlots(),s=new Map,a=()=>{if(!n.default)return;const r=n.default().find(i=>i.key==="_menu");r&&r.children.forEach(i=>{var V,h;if(i.type.__name!==p.__name||!i.props.name||i.props.disabled)return;const b={title:((h=(V=i.children).default)==null?void 0:h.call(V)[0].children).trim(),icon:i.props.icon,component:i.props.component?e.markRaw(i.props.component):p.props.component.default,scrollable:i.props.scrollable??p.props.scrollable.default};s.set(i.props.name,b)})},l=e.ref(null);return e.watch(()=>t.activeItemName,()=>{if(s.size===0&&a(),s.size===0){t.activeItemName="";return}if(l.value=s.get(t.activeItemName)??null,!l.value){t.activeItemName=s.keys().next().value;return}t.scrollable=l.value.scrollable,t.component=l.value.component,l.value&&!t.component&&console.warn(`Компонент вкладки ${t.activeItemName} не найден. Добавьте props.component для пункта меню ${t.activeItemName}.`)},{immediate:!0}),(r,i)=>(e.openBlock(),e.createElementBlock("div",{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(d._sfc_main),{key:0},{opener:e.withCtx(()=>[e.createElementVNode("div",g,[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-tabsView_menuOpenerActiveItem","data-top-icon":l.value.icon},[e.createElementVNode("span",P,e.toDisplayString(l.value.title),1)],8,B)):e.createCommentVNode("",!0),N])]),contentList:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:3})):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",E,[e.renderSlot(r.$slots,"default")]),e.createElementVNode("div",T,[r.isShortable?(e.openBlock(),e.createBlock(p,{key:0,icon:e.unref(t).isShort?"":"",onClick:i[0]||(i[0]=b=>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)])],64))],2))}}),L={$style:{"top-tabsView-pageMod":"top-tabsView-pageMod","top-tabsView_menu":"top-tabsView_menu","top-tabsView_menu-inPopup_0":"top-tabsView_menu-inPopup_0","top-tabsView_menu-inPopup_1":"top-tabsView_menu-inPopup_1","top-tabsView_menu-short":"top-tabsView_menu-short","top-tabsView_menuOpener":"top-tabsView_menuOpener","top-tabsView_menuOpenerIcon":"top-tabsView_menuOpenerIcon","top-tabsView_menuOpenerActiveItem":"top-tabsView_menuOpenerActiveItem","top-tabsView_menuList":"top-tabsView_menuList","top-tabsView_menuFooter":"top-tabsView_menuFooter","top-tabsView_menuItem":"top-tabsView_menuItem"}},O=c._export_sfc(C,[["__cssModules",L]]),D=e.defineComponent({__name:"tabsView",props:{modelValue:{},pageMod:{type:Boolean},showMenuInPopup:{type:Boolean,default:void 0},isShortable:{type:Boolean,default:!1},keyForSaveState:{}},emits:["update:modelValue"],setup(o,{emit:t}){const n=o,a=v(n,t);e.watchEffect(()=>{a.showMenuInPopup=n.showMenuInPopup??c.Core.state.isMobile});const l=(r=!1)=>{document.documentElement.classList.toggle("top-hasTabsViewPageMod",r)};return e.watch(()=>n.pageMod,()=>l(n.pageMod),{immediate:!0}),e.onUnmounted(()=>{l()}),(r,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-tabsView":!0,"top-tabsView-pageMod":r.pageMod&&!e.unref(a).showMenuInPopup,"top-tabsView-inPopup":e.unref(a).showMenuInPopup})},[e.createVNode(O,{isShortable:r.isShortable},{default:e.withCtx(()=>[e.renderSlot(r.$slots,"menu")]),_:3},8,["isShortable"]),e.createElementVNode("div",{class:e.normalizeClass({"top-tabsView_contents":!0,"top-tabsView_contents-noScrollable":!e.unref(a).scrollable})},[(e.openBlock(),e.createBlock(e.KeepAlive,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(a).component)))],1024))],2)],2))}}),z={$style:{"top-tabsView":"top-tabsView","top-tabsView-inPopup":"top-tabsView-inPopup","top-tabsView_contents":"top-tabsView_contents","top-tabsView_contents-noScrollable":"top-tabsView_contents-noScrollable"}},F=c._export_sfc(D,[["__cssModules",z]]),K={"top-tabsView_menuDelimeter":"top-tabsView_menuDelimeter"},j={},A={class:"top-tabsView_menuDelimeter"};function q(o,t){return e.openBlock(),e.createElementBlock("div",A)}const J={$style:K},R=c._export_sfc(j,[["render",q],["__cssModules",J]]),G=e.defineComponent({__name:"menuTitle",props:{isSubtitle:{type:Boolean}},setup(o){const t=_();return(n,s)=>e.unref(t).showMenuInPopup?(e.openBlock(),e.createBlock(e.unref(d._sfc_main$2),{key:0,type:"title"},{default:e.withCtx(()=>[e.renderSlot(n.$slots,"default")]),_:3})):e.unref(t).isShort?(e.openBlock(),e.createBlock(R,{key:1})):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass({"top-tabsView_menuTitle":!0,"top-tabsView_menuTitle-subtitle":n.isSubtitle})},[e.renderSlot(n.$slots,"default")],2))}}),U={$style:{"top-tabsView_menuTitle":"top-tabsView_menuTitle","top-tabsView_menuTitle-subtitle":"top-tabsView_menuTitle-subtitle"}},H=c._export_sfc(G,[["__cssModules",U]]);u.TabsView=F,u.TabsViewMenuItem=p,u.TabsViewMenuTitle=H,Object.defineProperty(u,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=tabsView.amd.js.map