@destyler/tabs 0.0.3 → 0.0.4

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.
@@ -1,4 +1,511 @@
1
- export { DestylerTabsContent, DestylerTabsContentProps, DestylerTabsIndicator, DestylerTabsIndicatorProps, DestylerTabsList, DestylerTabsListProps, DestylerTabsRoot, DestylerTabsRootProps, DestylerTabsTrigger, DestylerTabsTriggerProps } from './index.cjs';
2
- import 'vue';
3
- import '@destyler/primitive';
4
- import '@destyler/shared';
1
+ import * as vue from 'vue';
2
+ import { PropType, Ref } from 'vue';
3
+ import * as _destyler_primitive from '@destyler/primitive';
4
+ import { Direction, DataOrientation, ExtractPublicPropTypes } from '@destyler/shared';
5
+
6
+ declare const tabsRootProps: {
7
+ /**
8
+ * The controlled value of the tab to activate. Can be bind as `v-model`.
9
+ */
10
+ readonly modelValue: {
11
+ readonly type: PropType<string>;
12
+ readonly required: false;
13
+ };
14
+ /**
15
+ * The value of the tab that should be active when initially rendered. Use when you do not need to control the state of the tabs
16
+ */
17
+ readonly defaultValue: {
18
+ readonly type: PropType<string>;
19
+ readonly required: false;
20
+ };
21
+ /**
22
+ * Whether a tab is activated automatically or manually.
23
+ *
24
+ * @default automatic
25
+ */
26
+ readonly activationMode: {
27
+ readonly type: PropType<"automatic" | "manual">;
28
+ readonly required: false;
29
+ readonly default: "automatic";
30
+ };
31
+ /**
32
+ * The reading direction of the combobox when applicable.
33
+ */
34
+ readonly dir: {
35
+ readonly type: PropType<Direction>;
36
+ readonly required: false;
37
+ };
38
+ /**
39
+ * The orientation the tabs are layed out.
40
+ * Mainly so arrow navigation is done accordingly (left & right vs. up & down)
41
+ *
42
+ * @default horizontal
43
+ */
44
+ readonly orientation: {
45
+ readonly type: PropType<DataOrientation>;
46
+ readonly required: false;
47
+ readonly default: "horizontal";
48
+ };
49
+ readonly as: {
50
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
51
+ readonly required: false;
52
+ readonly default: "div";
53
+ };
54
+ readonly asChild: {
55
+ readonly type: PropType<boolean>;
56
+ readonly required: false;
57
+ readonly default: false;
58
+ };
59
+ };
60
+ type TabsRootProps = ExtractPublicPropTypes<typeof tabsRootProps>;
61
+ declare const tabsRootEmits: {
62
+ /**
63
+ * Event handler called when the value changes
64
+ */
65
+ 'update:modelValue': (_value: string | number) => boolean;
66
+ };
67
+ interface TabsRootContext {
68
+ modelValue: Ref<string | undefined>;
69
+ changeModelValue: (value: string) => void;
70
+ orientation: Ref<DataOrientation>;
71
+ dir: Ref<Direction>;
72
+ activationMode: 'automatic' | 'manual';
73
+ baseId: string;
74
+ tabsList: Ref<HTMLElement | undefined>;
75
+ }
76
+ declare const TabsRoot: vue.DefineComponent<{
77
+ /**
78
+ * The controlled value of the tab to activate. Can be bind as `v-model`.
79
+ */
80
+ readonly modelValue: {
81
+ readonly type: PropType<string>;
82
+ readonly required: false;
83
+ };
84
+ /**
85
+ * The value of the tab that should be active when initially rendered. Use when you do not need to control the state of the tabs
86
+ */
87
+ readonly defaultValue: {
88
+ readonly type: PropType<string>;
89
+ readonly required: false;
90
+ };
91
+ /**
92
+ * Whether a tab is activated automatically or manually.
93
+ *
94
+ * @default automatic
95
+ */
96
+ readonly activationMode: {
97
+ readonly type: PropType<"automatic" | "manual">;
98
+ readonly required: false;
99
+ readonly default: "automatic";
100
+ };
101
+ /**
102
+ * The reading direction of the combobox when applicable.
103
+ */
104
+ readonly dir: {
105
+ readonly type: PropType<Direction>;
106
+ readonly required: false;
107
+ };
108
+ /**
109
+ * The orientation the tabs are layed out.
110
+ * Mainly so arrow navigation is done accordingly (left & right vs. up & down)
111
+ *
112
+ * @default horizontal
113
+ */
114
+ readonly orientation: {
115
+ readonly type: PropType<DataOrientation>;
116
+ readonly required: false;
117
+ readonly default: "horizontal";
118
+ };
119
+ readonly as: {
120
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
121
+ readonly required: false;
122
+ readonly default: "div";
123
+ };
124
+ readonly asChild: {
125
+ readonly type: PropType<boolean>;
126
+ readonly required: false;
127
+ readonly default: false;
128
+ };
129
+ }, {
130
+ dir: vue.ComputedRef<Direction>;
131
+ orientation: Ref<DataOrientation>;
132
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
133
+ /**
134
+ * Event handler called when the value changes
135
+ */
136
+ 'update:modelValue': (_value: string | number) => boolean;
137
+ }, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
138
+ /**
139
+ * The controlled value of the tab to activate. Can be bind as `v-model`.
140
+ */
141
+ readonly modelValue: {
142
+ readonly type: PropType<string>;
143
+ readonly required: false;
144
+ };
145
+ /**
146
+ * The value of the tab that should be active when initially rendered. Use when you do not need to control the state of the tabs
147
+ */
148
+ readonly defaultValue: {
149
+ readonly type: PropType<string>;
150
+ readonly required: false;
151
+ };
152
+ /**
153
+ * Whether a tab is activated automatically or manually.
154
+ *
155
+ * @default automatic
156
+ */
157
+ readonly activationMode: {
158
+ readonly type: PropType<"automatic" | "manual">;
159
+ readonly required: false;
160
+ readonly default: "automatic";
161
+ };
162
+ /**
163
+ * The reading direction of the combobox when applicable.
164
+ */
165
+ readonly dir: {
166
+ readonly type: PropType<Direction>;
167
+ readonly required: false;
168
+ };
169
+ /**
170
+ * The orientation the tabs are layed out.
171
+ * Mainly so arrow navigation is done accordingly (left & right vs. up & down)
172
+ *
173
+ * @default horizontal
174
+ */
175
+ readonly orientation: {
176
+ readonly type: PropType<DataOrientation>;
177
+ readonly required: false;
178
+ readonly default: "horizontal";
179
+ };
180
+ readonly as: {
181
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
182
+ readonly required: false;
183
+ readonly default: "div";
184
+ };
185
+ readonly asChild: {
186
+ readonly type: PropType<boolean>;
187
+ readonly required: false;
188
+ readonly default: false;
189
+ };
190
+ }>> & {
191
+ "onUpdate:modelValue"?: ((_value: string | number) => any) | undefined;
192
+ }, {
193
+ readonly activationMode: "automatic" | "manual";
194
+ readonly orientation: DataOrientation;
195
+ readonly as: _destyler_primitive.AsTag | vue.Component;
196
+ readonly asChild: boolean;
197
+ }, {}>;
198
+
199
+ declare const tabsContentProps: {
200
+ /**
201
+ * A unique value that associates the content with a trigger.
202
+ */
203
+ readonly value: {
204
+ readonly type: PropType<string>;
205
+ readonly required: true;
206
+ };
207
+ /**
208
+ * Used to force mounting when more control is needed. Useful when
209
+ * controlling animation with Vue animation libraries.
210
+ */
211
+ readonly forceMount: {
212
+ readonly type: PropType<boolean>;
213
+ readonly required: false;
214
+ };
215
+ readonly as: {
216
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
217
+ readonly required: false;
218
+ readonly default: "div";
219
+ };
220
+ readonly asChild: {
221
+ readonly type: PropType<boolean>;
222
+ readonly required: false;
223
+ readonly default: false;
224
+ };
225
+ };
226
+ type TabsContentProps = ExtractPublicPropTypes<typeof tabsContentProps>;
227
+ declare const TabsContent: vue.DefineComponent<{
228
+ /**
229
+ * A unique value that associates the content with a trigger.
230
+ */
231
+ readonly value: {
232
+ readonly type: PropType<string>;
233
+ readonly required: true;
234
+ };
235
+ /**
236
+ * Used to force mounting when more control is needed. Useful when
237
+ * controlling animation with Vue animation libraries.
238
+ */
239
+ readonly forceMount: {
240
+ readonly type: PropType<boolean>;
241
+ readonly required: false;
242
+ };
243
+ readonly as: {
244
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
245
+ readonly required: false;
246
+ readonly default: "div";
247
+ };
248
+ readonly asChild: {
249
+ readonly type: PropType<boolean>;
250
+ readonly required: false;
251
+ readonly default: false;
252
+ };
253
+ }, {
254
+ forwardRef: (ref: Element | vue.ComponentPublicInstance | null) => void;
255
+ rootContext: TabsRootContext;
256
+ triggerId: vue.ComputedRef<string>;
257
+ contentId: vue.ComputedRef<string>;
258
+ isSelected: vue.ComputedRef<boolean>;
259
+ isMountAnimationPreventedRef: vue.Ref<boolean>;
260
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
261
+ /**
262
+ * A unique value that associates the content with a trigger.
263
+ */
264
+ readonly value: {
265
+ readonly type: PropType<string>;
266
+ readonly required: true;
267
+ };
268
+ /**
269
+ * Used to force mounting when more control is needed. Useful when
270
+ * controlling animation with Vue animation libraries.
271
+ */
272
+ readonly forceMount: {
273
+ readonly type: PropType<boolean>;
274
+ readonly required: false;
275
+ };
276
+ readonly as: {
277
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
278
+ readonly required: false;
279
+ readonly default: "div";
280
+ };
281
+ readonly asChild: {
282
+ readonly type: PropType<boolean>;
283
+ readonly required: false;
284
+ readonly default: false;
285
+ };
286
+ }>>, {
287
+ readonly as: _destyler_primitive.AsTag | vue.Component;
288
+ readonly asChild: boolean;
289
+ }, {}>;
290
+
291
+ declare const tabsIndicatorProps: {
292
+ /**
293
+ * @default button
294
+ */
295
+ readonly as: {
296
+ readonly default: "button";
297
+ readonly type: vue.PropType<_destyler_primitive.AsTag | vue.Component>;
298
+ readonly required: false;
299
+ };
300
+ readonly asChild: {
301
+ readonly type: vue.PropType<boolean>;
302
+ readonly required: false;
303
+ readonly default: false;
304
+ };
305
+ };
306
+ type TabsIndicatorProps = ExtractPublicPropTypes<typeof tabsIndicatorProps>;
307
+ declare const TabsIndicator: vue.DefineComponent<{
308
+ /**
309
+ * @default button
310
+ */
311
+ readonly as: {
312
+ readonly default: "button";
313
+ readonly type: vue.PropType<_destyler_primitive.AsTag | vue.Component>;
314
+ readonly required: false;
315
+ };
316
+ readonly asChild: {
317
+ readonly type: vue.PropType<boolean>;
318
+ readonly required: false;
319
+ readonly default: false;
320
+ };
321
+ }, {
322
+ indicatorStyle: vue.Ref<{
323
+ size: number | null;
324
+ position: number | null;
325
+ }>;
326
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
327
+ /**
328
+ * @default button
329
+ */
330
+ readonly as: {
331
+ readonly default: "button";
332
+ readonly type: vue.PropType<_destyler_primitive.AsTag | vue.Component>;
333
+ readonly required: false;
334
+ };
335
+ readonly asChild: {
336
+ readonly type: vue.PropType<boolean>;
337
+ readonly required: false;
338
+ readonly default: false;
339
+ };
340
+ }>>, {
341
+ readonly as: _destyler_primitive.AsTag | vue.Component;
342
+ readonly asChild: boolean;
343
+ }, {}>;
344
+
345
+ declare const tabsListProps: {
346
+ /**
347
+ * When `true`, keyboard navigation will loop from last tab to first, and vice versa.
348
+ */
349
+ readonly loop: {
350
+ readonly type: PropType<boolean>;
351
+ readonly required: false;
352
+ readonly default: true;
353
+ };
354
+ readonly as: {
355
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
356
+ readonly required: false;
357
+ readonly default: "div";
358
+ };
359
+ readonly asChild: {
360
+ readonly type: PropType<boolean>;
361
+ readonly required: false;
362
+ readonly default: false;
363
+ };
364
+ };
365
+ type TabsListProps = ExtractPublicPropTypes<typeof tabsListProps>;
366
+ declare const TabsList: vue.DefineComponent<{
367
+ /**
368
+ * When `true`, keyboard navigation will loop from last tab to first, and vice versa.
369
+ */
370
+ readonly loop: {
371
+ readonly type: PropType<boolean>;
372
+ readonly required: false;
373
+ readonly default: true;
374
+ };
375
+ readonly as: {
376
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
377
+ readonly required: false;
378
+ readonly default: "div";
379
+ };
380
+ readonly asChild: {
381
+ readonly type: PropType<boolean>;
382
+ readonly required: false;
383
+ readonly default: false;
384
+ };
385
+ }, {
386
+ forwardRef: (ref: Element | vue.ComponentPublicInstance | null) => void;
387
+ loop: vue.Ref<boolean>;
388
+ context: TabsRootContext;
389
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
390
+ /**
391
+ * When `true`, keyboard navigation will loop from last tab to first, and vice versa.
392
+ */
393
+ readonly loop: {
394
+ readonly type: PropType<boolean>;
395
+ readonly required: false;
396
+ readonly default: true;
397
+ };
398
+ readonly as: {
399
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
400
+ readonly required: false;
401
+ readonly default: "div";
402
+ };
403
+ readonly asChild: {
404
+ readonly type: PropType<boolean>;
405
+ readonly required: false;
406
+ readonly default: false;
407
+ };
408
+ }>>, {
409
+ readonly as: _destyler_primitive.AsTag | vue.Component;
410
+ readonly asChild: boolean;
411
+ readonly loop: boolean;
412
+ }, {}>;
413
+
414
+ declare const tabsTriggerProps: {
415
+ /**
416
+ * @default button
417
+ */
418
+ readonly as: {
419
+ readonly default: "button";
420
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
421
+ readonly required: false;
422
+ };
423
+ /**
424
+ * A unique value that associates the trigger with a content.
425
+ */
426
+ readonly value: {
427
+ readonly type: PropType<string>;
428
+ readonly required: true;
429
+ };
430
+ /**
431
+ * When `true`, prevents the user from interacting with the tab.
432
+ */
433
+ readonly disabled: {
434
+ readonly type: PropType<boolean>;
435
+ readonly required: false;
436
+ };
437
+ readonly asChild: {
438
+ readonly type: PropType<boolean>;
439
+ readonly required: false;
440
+ readonly default: false;
441
+ };
442
+ };
443
+ type TabsTriggerProps = ExtractPublicPropTypes<typeof tabsTriggerProps>;
444
+ declare const TabsTrigger: vue.DefineComponent<{
445
+ /**
446
+ * @default button
447
+ */
448
+ readonly as: {
449
+ readonly default: "button";
450
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
451
+ readonly required: false;
452
+ };
453
+ /**
454
+ * A unique value that associates the trigger with a content.
455
+ */
456
+ readonly value: {
457
+ readonly type: PropType<string>;
458
+ readonly required: true;
459
+ };
460
+ /**
461
+ * When `true`, prevents the user from interacting with the tab.
462
+ */
463
+ readonly disabled: {
464
+ readonly type: PropType<boolean>;
465
+ readonly required: false;
466
+ };
467
+ readonly asChild: {
468
+ readonly type: PropType<boolean>;
469
+ readonly required: false;
470
+ readonly default: false;
471
+ };
472
+ }, {
473
+ forwardRef: (ref: Element | vue.ComponentPublicInstance | null) => void;
474
+ rootContext: TabsRootContext;
475
+ triggerId: vue.ComputedRef<string>;
476
+ contentId: vue.ComputedRef<string>;
477
+ isSelected: vue.ComputedRef<boolean>;
478
+ }, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {}, string, vue.PublicProps, Readonly<vue.ExtractPropTypes<{
479
+ /**
480
+ * @default button
481
+ */
482
+ readonly as: {
483
+ readonly default: "button";
484
+ readonly type: PropType<_destyler_primitive.AsTag | vue.Component>;
485
+ readonly required: false;
486
+ };
487
+ /**
488
+ * A unique value that associates the trigger with a content.
489
+ */
490
+ readonly value: {
491
+ readonly type: PropType<string>;
492
+ readonly required: true;
493
+ };
494
+ /**
495
+ * When `true`, prevents the user from interacting with the tab.
496
+ */
497
+ readonly disabled: {
498
+ readonly type: PropType<boolean>;
499
+ readonly required: false;
500
+ };
501
+ readonly asChild: {
502
+ readonly type: PropType<boolean>;
503
+ readonly required: false;
504
+ readonly default: false;
505
+ };
506
+ }>>, {
507
+ readonly as: _destyler_primitive.AsTag | vue.Component;
508
+ readonly asChild: boolean;
509
+ }, {}>;
510
+
511
+ export { TabsContent, type TabsContentProps, TabsIndicator, type TabsIndicatorProps, TabsList, type TabsListProps, TabsRoot, type TabsRootProps, TabsTrigger, type TabsTriggerProps, tabsContentProps, tabsIndicatorProps, tabsListProps, tabsRootEmits, tabsRootProps, tabsTriggerProps };