@topvisor/ui 0.9.7 → 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 (82) hide show
  1. package/.chunks/datepicker-7w3ISMUW.amd.js +234 -0
  2. package/.chunks/datepicker-7w3ISMUW.amd.js.map +1 -0
  3. package/.chunks/datepicker-KB2i-H67.es.js +275 -0
  4. package/.chunks/datepicker-KB2i-H67.es.js.map +1 -0
  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-dneLtREE.es.js → forms-iL1swNCF.es.js} +367 -369
  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-2azH2gGP.amd.js → popup-8sqqRRR_.amd.js} +384 -378
  14. package/.chunks/popup-8sqqRRR_.amd.js.map +1 -0
  15. package/.chunks/{popup-GFcVEZf5.es.js → popup-gLJT9tg6.es.js} +429 -423
  16. package/.chunks/popup-gLJT9tg6.es.js.map +1 -0
  17. package/README.md +80 -80
  18. package/assets/forms.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/forms/helpers.amd.js.map +1 -1
  25. package/forms/helpers.js.map +1 -1
  26. package/formsExt/formsExt.amd.js +1 -1
  27. package/formsExt/formsExt.amd.js.map +1 -1
  28. package/formsExt/formsExt.js +1 -1
  29. package/formsExt/formsExt.js.map +1 -1
  30. package/icomoon/demo-files/demo.css +161 -161
  31. package/icomoon/demo-files/demo.js +30 -30
  32. package/icomoon/demo.html +2945 -2945
  33. package/icomoon/fonts/Topvisor-2.svg +232 -232
  34. package/icomoon/style.css +647 -647
  35. package/package.json +19 -19
  36. package/popup/popup.amd.js +1 -1
  37. package/popup/popup.js +2 -2
  38. package/popup/worker.amd.js +1 -1
  39. package/popup/worker.amd.js.map +1 -1
  40. package/popup/worker.js +2 -2
  41. package/popup/worker.js.map +1 -1
  42. package/require/css.amd.js +11 -11
  43. package/src/components/forms/checkbox/checkbox.d.ts +1 -4
  44. package/src/components/forms/checkbox/checkbox.stories.d.ts +8 -32
  45. package/src/components/forms/checkbox/checkbox.vue.d.ts +41 -15
  46. package/src/components/popup/popup/popup.stories.d.ts +79 -0
  47. package/src/components/popup/popup/popup.vue.d.ts +1 -0
  48. package/src/components/tabsView/tabsView/_MenuItem.stories.d.ts +132 -31
  49. package/src/components/tabsView/tabsView/_MenuTitle.stories.d.ts +19 -1
  50. package/src/components/tabsView/tabsView/menuItem.vue.d.ts +18 -1
  51. package/src/components/tabsView/tabsView/tabsView.d.ts +48 -23
  52. package/src/components/tabsView/tabsView/tabsView.stories.d.ts +95 -54
  53. package/src/components/tabsView/tabsView/tabsView.vue.d.ts +3 -1
  54. package/src/components/tabsView/tabsView.d.ts +0 -1
  55. package/tabs/tabs.amd.js +1 -1
  56. package/tabs/tabs.js +1 -1
  57. package/tabsView/tabsView.amd.js +1 -1
  58. package/tabsView/tabsView.amd.js.map +1 -1
  59. package/tabsView/tabsView.js +145 -122
  60. package/tabsView/tabsView.js.map +1 -1
  61. package/utils/css.amd.js.map +1 -1
  62. package/utils/css.js.map +1 -1
  63. package/utils/date.amd.js +1 -1
  64. package/utils/date.js +1 -1
  65. package/utils/device.amd.js +1 -1
  66. package/utils/device.js +1 -1
  67. package/utils/dom.amd.js.map +1 -1
  68. package/utils/dom.js.map +1 -1
  69. package/.chunks/datepicker-0tFN0clU.amd.js +0 -234
  70. package/.chunks/datepicker-0tFN0clU.amd.js.map +0 -1
  71. package/.chunks/datepicker-8geHBNBn.es.js +0 -275
  72. package/.chunks/datepicker-8geHBNBn.es.js.map +0 -1
  73. package/.chunks/forms-dneLtREE.es.js.map +0 -1
  74. package/.chunks/forms-hIalWiGK.amd.js +0 -3
  75. package/.chunks/forms-hIalWiGK.amd.js.map +0 -1
  76. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-bLJ0dcPn.amd.js +0 -2
  77. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-bLJ0dcPn.amd.js.map +0 -1
  78. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-qWOlkuQ3.es.js +0 -148
  79. package/.chunks/listItem.vue_vue_type_script_setup_true_lang-qWOlkuQ3.es.js.map +0 -1
  80. package/.chunks/popup-2azH2gGP.amd.js.map +0 -1
  81. package/.chunks/popup-GFcVEZf5.es.js.map +0 -1
  82. package/src/components/tabsView/tabsView/content.vue.d.ts +0 -19
@@ -1,32 +1,51 @@
1
1
  declare const meta: {
2
2
  component: {
3
3
  new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
4
- name: {
4
+ icon: {
5
5
  type: import("vue").PropType<string>;
6
6
  };
7
- href: {
7
+ component: {
8
+ type: import("vue").PropType<import("vue").Component>;
9
+ default: undefined;
10
+ };
11
+ name: {
8
12
  type: import("vue").PropType<string>;
9
13
  };
10
- icon: {
14
+ href: {
11
15
  type: import("vue").PropType<string>;
12
16
  };
13
17
  disabled: {
14
18
  type: import("vue").PropType<boolean>;
15
19
  };
20
+ scrollable: {
21
+ type: import("vue").PropType<boolean>;
22
+ default: boolean;
23
+ };
16
24
  }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
17
- name: {
25
+ icon: {
18
26
  type: import("vue").PropType<string>;
19
27
  };
20
- href: {
28
+ component: {
29
+ type: import("vue").PropType<import("vue").Component>;
30
+ default: undefined;
31
+ };
32
+ name: {
21
33
  type: import("vue").PropType<string>;
22
34
  };
23
- icon: {
35
+ href: {
24
36
  type: import("vue").PropType<string>;
25
37
  };
26
38
  disabled: {
27
39
  type: import("vue").PropType<boolean>;
28
40
  };
29
- }>>, {}, true, {}, {}, {
41
+ scrollable: {
42
+ type: import("vue").PropType<boolean>;
43
+ default: boolean;
44
+ };
45
+ }>>, {
46
+ component: import("vue").Component;
47
+ scrollable: boolean;
48
+ }, true, {}, {}, {
30
49
  P: {};
31
50
  B: {};
32
51
  D: {};
@@ -34,36 +53,58 @@ declare const meta: {
34
53
  M: {};
35
54
  Defaults: {};
36
55
  }, Readonly<import("vue").ExtractPropTypes<{
37
- name: {
56
+ icon: {
38
57
  type: import("vue").PropType<string>;
39
58
  };
40
- href: {
59
+ component: {
60
+ type: import("vue").PropType<import("vue").Component>;
61
+ default: undefined;
62
+ };
63
+ name: {
41
64
  type: import("vue").PropType<string>;
42
65
  };
43
- icon: {
66
+ href: {
44
67
  type: import("vue").PropType<string>;
45
68
  };
46
69
  disabled: {
47
70
  type: import("vue").PropType<boolean>;
48
71
  };
49
- }>>, {}, {}, {}, {}, {}>;
72
+ scrollable: {
73
+ type: import("vue").PropType<boolean>;
74
+ default: boolean;
75
+ };
76
+ }>>, {}, {}, {}, {}, {
77
+ component: import("vue").Component;
78
+ scrollable: boolean;
79
+ }>;
50
80
  __isFragment?: undefined;
51
81
  __isTeleport?: undefined;
52
82
  __isSuspense?: undefined;
53
83
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
54
- name: {
84
+ icon: {
55
85
  type: import("vue").PropType<string>;
56
86
  };
57
- href: {
87
+ component: {
88
+ type: import("vue").PropType<import("vue").Component>;
89
+ default: undefined;
90
+ };
91
+ name: {
58
92
  type: import("vue").PropType<string>;
59
93
  };
60
- icon: {
94
+ href: {
61
95
  type: import("vue").PropType<string>;
62
96
  };
63
97
  disabled: {
64
98
  type: import("vue").PropType<boolean>;
65
99
  };
66
- }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
100
+ scrollable: {
101
+ type: import("vue").PropType<boolean>;
102
+ default: boolean;
103
+ };
104
+ }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
105
+ component: import("vue").Component;
106
+ scrollable: boolean;
107
+ }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
67
108
  $slots: {
68
109
  default?(_: {}): any;
69
110
  };
@@ -76,6 +117,7 @@ export declare const MenuItem: {
76
117
  href: string;
77
118
  icon: string;
78
119
  disabled: false;
120
+ scrollable: true;
79
121
  default: string;
80
122
  };
81
123
  render: (args: any) => {
@@ -88,11 +130,15 @@ export declare const MenuItem: {
88
130
  };
89
131
  showMenuInPopup: {
90
132
  type: import("vue").PropType<boolean>;
133
+ default: undefined;
91
134
  };
92
135
  isShortable: {
93
136
  type: import("vue").PropType<boolean>;
94
137
  default: boolean;
95
138
  };
139
+ pageMod: {
140
+ type: import("vue").PropType<boolean>;
141
+ };
96
142
  keyForSaveState: {
97
143
  type: import("vue").PropType<string>;
98
144
  };
@@ -107,17 +153,22 @@ export declare const MenuItem: {
107
153
  };
108
154
  showMenuInPopup: {
109
155
  type: import("vue").PropType<boolean>;
156
+ default: undefined;
110
157
  };
111
158
  isShortable: {
112
159
  type: import("vue").PropType<boolean>;
113
160
  default: boolean;
114
161
  };
162
+ pageMod: {
163
+ type: import("vue").PropType<boolean>;
164
+ };
115
165
  keyForSaveState: {
116
166
  type: import("vue").PropType<string>;
117
167
  };
118
168
  }>> & {
119
169
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
120
170
  }, {
171
+ showMenuInPopup: boolean;
121
172
  isShortable: boolean;
122
173
  }, true, {}, {}, {
123
174
  P: {};
@@ -133,17 +184,22 @@ export declare const MenuItem: {
133
184
  };
134
185
  showMenuInPopup: {
135
186
  type: import("vue").PropType<boolean>;
187
+ default: undefined;
136
188
  };
137
189
  isShortable: {
138
190
  type: import("vue").PropType<boolean>;
139
191
  default: boolean;
140
192
  };
193
+ pageMod: {
194
+ type: import("vue").PropType<boolean>;
195
+ };
141
196
  keyForSaveState: {
142
197
  type: import("vue").PropType<string>;
143
198
  };
144
199
  }>> & {
145
200
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
146
201
  }, {}, {}, {}, {}, {
202
+ showMenuInPopup: boolean;
147
203
  isShortable: boolean;
148
204
  }>;
149
205
  __isFragment?: undefined;
@@ -156,11 +212,15 @@ export declare const MenuItem: {
156
212
  };
157
213
  showMenuInPopup: {
158
214
  type: import("vue").PropType<boolean>;
215
+ default: undefined;
159
216
  };
160
217
  isShortable: {
161
218
  type: import("vue").PropType<boolean>;
162
219
  default: boolean;
163
220
  };
221
+ pageMod: {
222
+ type: import("vue").PropType<boolean>;
223
+ };
164
224
  keyForSaveState: {
165
225
  type: import("vue").PropType<string>;
166
226
  };
@@ -169,41 +229,60 @@ export declare const MenuItem: {
169
229
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
170
230
  "update:modelValue": (value: string) => void;
171
231
  }, string, {
232
+ showMenuInPopup: boolean;
172
233
  isShortable: boolean;
173
234
  }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
174
235
  $slots: {
175
236
  menu?(_: {}): any;
176
- contents?(_: {}): any;
177
237
  };
178
238
  });
179
239
  TabsViewMenuItem: {
180
240
  new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
181
- name: {
241
+ icon: {
182
242
  type: import("vue").PropType<string>;
183
243
  };
184
- href: {
244
+ component: {
245
+ type: import("vue").PropType<import("vue").Component>;
246
+ default: undefined;
247
+ };
248
+ name: {
185
249
  type: import("vue").PropType<string>;
186
250
  };
187
- icon: {
251
+ href: {
188
252
  type: import("vue").PropType<string>;
189
253
  };
190
254
  disabled: {
191
255
  type: import("vue").PropType<boolean>;
192
256
  };
257
+ scrollable: {
258
+ type: import("vue").PropType<boolean>;
259
+ default: boolean;
260
+ };
193
261
  }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
194
- name: {
262
+ icon: {
195
263
  type: import("vue").PropType<string>;
196
264
  };
197
- href: {
265
+ component: {
266
+ type: import("vue").PropType<import("vue").Component>;
267
+ default: undefined;
268
+ };
269
+ name: {
198
270
  type: import("vue").PropType<string>;
199
271
  };
200
- icon: {
272
+ href: {
201
273
  type: import("vue").PropType<string>;
202
274
  };
203
275
  disabled: {
204
276
  type: import("vue").PropType<boolean>;
205
277
  };
206
- }>>, {}, true, {}, {}, {
278
+ scrollable: {
279
+ type: import("vue").PropType<boolean>;
280
+ default: boolean;
281
+ };
282
+ }>>, {
283
+ component: import("vue").Component;
284
+ scrollable: boolean;
285
+ }, true, {}, {}, {
207
286
  P: {};
208
287
  B: {};
209
288
  D: {};
@@ -211,36 +290,58 @@ export declare const MenuItem: {
211
290
  M: {};
212
291
  Defaults: {};
213
292
  }, Readonly<import("vue").ExtractPropTypes<{
214
- name: {
293
+ icon: {
215
294
  type: import("vue").PropType<string>;
216
295
  };
217
- href: {
296
+ component: {
297
+ type: import("vue").PropType<import("vue").Component>;
298
+ default: undefined;
299
+ };
300
+ name: {
218
301
  type: import("vue").PropType<string>;
219
302
  };
220
- icon: {
303
+ href: {
221
304
  type: import("vue").PropType<string>;
222
305
  };
223
306
  disabled: {
224
307
  type: import("vue").PropType<boolean>;
225
308
  };
226
- }>>, {}, {}, {}, {}, {}>;
309
+ scrollable: {
310
+ type: import("vue").PropType<boolean>;
311
+ default: boolean;
312
+ };
313
+ }>>, {}, {}, {}, {}, {
314
+ component: import("vue").Component;
315
+ scrollable: boolean;
316
+ }>;
227
317
  __isFragment?: undefined;
228
318
  __isTeleport?: undefined;
229
319
  __isSuspense?: undefined;
230
320
  } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
231
- name: {
321
+ icon: {
232
322
  type: import("vue").PropType<string>;
233
323
  };
234
- href: {
324
+ component: {
325
+ type: import("vue").PropType<import("vue").Component>;
326
+ default: undefined;
327
+ };
328
+ name: {
235
329
  type: import("vue").PropType<string>;
236
330
  };
237
- icon: {
331
+ href: {
238
332
  type: import("vue").PropType<string>;
239
333
  };
240
334
  disabled: {
241
335
  type: import("vue").PropType<boolean>;
242
336
  };
243
- }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
337
+ scrollable: {
338
+ type: import("vue").PropType<boolean>;
339
+ default: boolean;
340
+ };
341
+ }>>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
342
+ component: import("vue").Component;
343
+ scrollable: boolean;
344
+ }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
244
345
  $slots: {
245
346
  default?(_: {}): any;
246
347
  };
@@ -49,11 +49,15 @@ export declare const MenuTitle: {
49
49
  };
50
50
  showMenuInPopup: {
51
51
  type: import("vue").PropType<boolean>;
52
+ default: undefined;
52
53
  };
53
54
  isShortable: {
54
55
  type: import("vue").PropType<boolean>;
55
56
  default: boolean;
56
57
  };
58
+ pageMod: {
59
+ type: import("vue").PropType<boolean>;
60
+ };
57
61
  keyForSaveState: {
58
62
  type: import("vue").PropType<string>;
59
63
  };
@@ -68,17 +72,22 @@ export declare const MenuTitle: {
68
72
  };
69
73
  showMenuInPopup: {
70
74
  type: import("vue").PropType<boolean>;
75
+ default: undefined;
71
76
  };
72
77
  isShortable: {
73
78
  type: import("vue").PropType<boolean>;
74
79
  default: boolean;
75
80
  };
81
+ pageMod: {
82
+ type: import("vue").PropType<boolean>;
83
+ };
76
84
  keyForSaveState: {
77
85
  type: import("vue").PropType<string>;
78
86
  };
79
87
  }>> & {
80
88
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
81
89
  }, {
90
+ showMenuInPopup: boolean;
82
91
  isShortable: boolean;
83
92
  }, true, {}, {}, {
84
93
  P: {};
@@ -94,17 +103,22 @@ export declare const MenuTitle: {
94
103
  };
95
104
  showMenuInPopup: {
96
105
  type: import("vue").PropType<boolean>;
106
+ default: undefined;
97
107
  };
98
108
  isShortable: {
99
109
  type: import("vue").PropType<boolean>;
100
110
  default: boolean;
101
111
  };
112
+ pageMod: {
113
+ type: import("vue").PropType<boolean>;
114
+ };
102
115
  keyForSaveState: {
103
116
  type: import("vue").PropType<string>;
104
117
  };
105
118
  }>> & {
106
119
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
107
120
  }, {}, {}, {}, {}, {
121
+ showMenuInPopup: boolean;
108
122
  isShortable: boolean;
109
123
  }>;
110
124
  __isFragment?: undefined;
@@ -117,11 +131,15 @@ export declare const MenuTitle: {
117
131
  };
118
132
  showMenuInPopup: {
119
133
  type: import("vue").PropType<boolean>;
134
+ default: undefined;
120
135
  };
121
136
  isShortable: {
122
137
  type: import("vue").PropType<boolean>;
123
138
  default: boolean;
124
139
  };
140
+ pageMod: {
141
+ type: import("vue").PropType<boolean>;
142
+ };
125
143
  keyForSaveState: {
126
144
  type: import("vue").PropType<string>;
127
145
  };
@@ -130,11 +148,11 @@ export declare const MenuTitle: {
130
148
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
131
149
  "update:modelValue": (value: string) => void;
132
150
  }, string, {
151
+ showMenuInPopup: boolean;
133
152
  isShortable: boolean;
134
153
  }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
135
154
  $slots: {
136
155
  menu?(_: {}): any;
137
- contents?(_: {}): any;
138
156
  };
139
157
  });
140
158
  TabsViewMenuTitle: {
@@ -1,5 +1,14 @@
1
1
  import type { PropsMenuItem } from './tabsView';
2
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<PropsMenuItem>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<PropsMenuItem>>>, {}, {}>, {
2
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PropsMenuItem>, {
3
+ scrollable: boolean;
4
+ component: undefined;
5
+ }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<PropsMenuItem>, {
6
+ scrollable: boolean;
7
+ component: undefined;
8
+ }>>>, {
9
+ component: import("vue").Component;
10
+ scrollable: boolean;
11
+ }, {}>, {
3
12
  default?(_: {}): any;
4
13
  }>;
5
14
  export default _default;
@@ -12,6 +21,14 @@ type __VLS_TypePropsToRuntimeProps<T> = {
12
21
  required: true;
13
22
  };
14
23
  };
24
+ type __VLS_WithDefaults<P, D> = {
25
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
26
+ default: D[K];
27
+ }> : P[K];
28
+ };
29
+ type __VLS_Prettify<T> = {
30
+ [K in keyof T]: T[K];
31
+ } & {};
15
32
  type __VLS_WithTemplateSlots<T, S> = T & {
16
33
  new (): {
17
34
  $slots: S;
@@ -1,9 +1,41 @@
1
+ import type { Component } from 'vue';
1
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
  }