@ttdk-design-system/library-vue 0.0.0-stage → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AI_GUIDE.md +6518 -0
- package/README.md +104 -2
- package/llms.txt +6518 -0
- package/package.json +1097 -4
- package/src/core/index.ts +2 -0
- package/src/core/tailwind-preset.cjs +62 -0
- package/src/core/tailwind-preset.ts +85 -0
- package/src/core/theme/tokens.css +663 -0
- package/src/core/types.ts +836 -0
- package/src/index.ts +17 -0
- package/src/tailwind-preset.cjs +62 -0
- package/src/tailwind-preset.ts +85 -0
- package/src/types.ts +1 -0
- package/src/web/accordion/AI_GUIDE.md +149 -0
- package/src/web/accordion/accordion.css +1 -0
- package/src/web/accordion/accordion.vue +432 -0
- package/src/web/accordion/accordion.vue.d.ts +227 -0
- package/src/web/accordion/index.ts +3 -0
- package/src/web/accordion/manifest.json +351 -0
- package/src/web/alert/AI_GUIDE.md +139 -0
- package/src/web/alert/alert.css +1 -0
- package/src/web/alert/alert.vue +290 -0
- package/src/web/alert/alert.vue.d.ts +154 -0
- package/src/web/alert/index.ts +3 -0
- package/src/web/alert/manifest.json +240 -0
- package/src/web/avatar/AI_GUIDE.md +118 -0
- package/src/web/avatar/avatar.css +1 -0
- package/src/web/avatar/avatar.vue +217 -0
- package/src/web/avatar/avatar.vue.d.ts +135 -0
- package/src/web/avatar/index.ts +3 -0
- package/src/web/avatar/manifest.json +195 -0
- package/src/web/badge/AI_GUIDE.md +94 -0
- package/src/web/badge/badge.css +1 -0
- package/src/web/badge/badge.vue +135 -0
- package/src/web/badge/badge.vue.d.ts +108 -0
- package/src/web/badge/index.ts +3 -0
- package/src/web/badge/manifest.json +141 -0
- package/src/web/banner/AI_GUIDE.md +130 -0
- package/src/web/banner/banner.css +1 -0
- package/src/web/banner/banner.vue +303 -0
- package/src/web/banner/banner.vue.d.ts +162 -0
- package/src/web/banner/index.ts +3 -0
- package/src/web/banner/manifest.json +240 -0
- package/src/web/breadcrumb/AI_GUIDE.md +120 -0
- package/src/web/breadcrumb/breadcrumb.css +1 -0
- package/src/web/breadcrumb/breadcrumb.vue +313 -0
- package/src/web/breadcrumb/breadcrumb.vue.d.ts +139 -0
- package/src/web/breadcrumb/index.ts +3 -0
- package/src/web/breadcrumb/manifest.json +225 -0
- package/src/web/button/AI_GUIDE.md +121 -0
- package/src/web/button/button.css +1 -0
- package/src/web/button/button.vue +283 -0
- package/src/web/button/button.vue.d.ts +147 -0
- package/src/web/button/index.ts +3 -0
- package/src/web/button/manifest.json +177 -0
- package/src/web/calendar/AI_GUIDE.md +151 -0
- package/src/web/calendar/calendar.css +1 -0
- package/src/web/calendar/calendar.vue +1536 -0
- package/src/web/calendar/calendar.vue.d.ts +261 -0
- package/src/web/calendar/index.ts +3 -0
- package/src/web/calendar/manifest.json +470 -0
- package/src/web/card/AI_GUIDE.md +133 -0
- package/src/web/card/card.css +1 -0
- package/src/web/card/card.vue +423 -0
- package/src/web/card/card.vue.d.ts +232 -0
- package/src/web/card/index.ts +3 -0
- package/src/web/card/manifest.json +357 -0
- package/src/web/checkbox/AI_GUIDE.md +146 -0
- package/src/web/checkbox/checkbox.css +1 -0
- package/src/web/checkbox/checkbox.vue +304 -0
- package/src/web/checkbox/checkbox.vue.d.ts +189 -0
- package/src/web/checkbox/index.ts +3 -0
- package/src/web/checkbox/manifest.json +294 -0
- package/src/web/chip/AI_GUIDE.md +186 -0
- package/src/web/chip/chip.css +1 -0
- package/src/web/chip/chip.vue +220 -0
- package/src/web/chip/chip.vue.d.ts +140 -0
- package/src/web/chip/index.ts +3 -0
- package/src/web/chip/manifest.json +186 -0
- package/src/web/dropdown/AI_GUIDE.md +167 -0
- package/src/web/dropdown/dropdown.css +1 -0
- package/src/web/dropdown/dropdown.vue +1257 -0
- package/src/web/dropdown/dropdown.vue.d.ts +381 -0
- package/src/web/dropdown/index.ts +3 -0
- package/src/web/dropdown/manifest.json +576 -0
- package/src/web/flex/AI_GUIDE.md +113 -0
- package/src/web/flex/flex-item.vue +94 -0
- package/src/web/flex/flex-item.vue.d.ts +84 -0
- package/src/web/flex/flex.css +1 -0
- package/src/web/flex/flex.vue +103 -0
- package/src/web/flex/flex.vue.d.ts +92 -0
- package/src/web/flex/index.ts +5 -0
- package/src/web/flex/manifest.json +162 -0
- package/src/web/form/index.ts +7 -0
- package/src/web/grid/AI_GUIDE.md +112 -0
- package/src/web/grid/grid-item.vue +109 -0
- package/src/web/grid/grid-item.vue.d.ts +99 -0
- package/src/web/grid/grid.css +1 -0
- package/src/web/grid/grid.vue +94 -0
- package/src/web/grid/grid.vue.d.ts +84 -0
- package/src/web/grid/index.ts +5 -0
- package/src/web/grid/manifest.json +153 -0
- package/src/web/index.ts +86 -0
- package/src/web/input/AI_GUIDE.md +159 -0
- package/src/web/input/index.ts +3 -0
- package/src/web/input/input.css +1 -0
- package/src/web/input/input.vue +521 -0
- package/src/web/input/input.vue.d.ts +274 -0
- package/src/web/input/manifest.json +465 -0
- package/src/web/input-number/AI_GUIDE.md +164 -0
- package/src/web/input-number/index.ts +3 -0
- package/src/web/input-number/input-number.css +1 -0
- package/src/web/input-number/input-number.vue +1153 -0
- package/src/web/input-number/input-number.vue.d.ts +343 -0
- package/src/web/input-number/manifest.json +575 -0
- package/src/web/modal/AI_GUIDE.md +171 -0
- package/src/web/modal/index.ts +3 -0
- package/src/web/modal/manifest.json +375 -0
- package/src/web/modal/modal.css +1 -0
- package/src/web/modal/modal.vue +344 -0
- package/src/web/modal/modal.vue.d.ts +64 -0
- package/src/web/pagination/AI_GUIDE.md +148 -0
- package/src/web/pagination/index.ts +21 -0
- package/src/web/pagination/manifest.json +432 -0
- package/src/web/pagination/pagination-content.vue +42 -0
- package/src/web/pagination/pagination-content.vue.d.ts +28 -0
- package/src/web/pagination/pagination-ellipsis.vue +55 -0
- package/src/web/pagination/pagination-ellipsis.vue.d.ts +28 -0
- package/src/web/pagination/pagination-first.vue +161 -0
- package/src/web/pagination/pagination-first.vue.d.ts +67 -0
- package/src/web/pagination/pagination-item.vue +42 -0
- package/src/web/pagination/pagination-item.vue.d.ts +28 -0
- package/src/web/pagination/pagination-last.vue +161 -0
- package/src/web/pagination/pagination-last.vue.d.ts +67 -0
- package/src/web/pagination/pagination-link.vue +118 -0
- package/src/web/pagination/pagination-link.vue.d.ts +61 -0
- package/src/web/pagination/pagination-next.vue +160 -0
- package/src/web/pagination/pagination-next.vue.d.ts +68 -0
- package/src/web/pagination/pagination-previous.vue +160 -0
- package/src/web/pagination/pagination-previous.vue.d.ts +68 -0
- package/src/web/pagination/pagination.css +1 -0
- package/src/web/pagination/pagination.vue +730 -0
- package/src/web/pagination/pagination.vue.d.ts +247 -0
- package/src/web/popover/AI_GUIDE.md +163 -0
- package/src/web/popover/index.ts +3 -0
- package/src/web/popover/manifest.json +396 -0
- package/src/web/popover/popover.css +1 -0
- package/src/web/popover/popover.vue +579 -0
- package/src/web/popover/popover.vue.d.ts +83 -0
- package/src/web/radio/AI_GUIDE.md +155 -0
- package/src/web/radio/index.ts +3 -0
- package/src/web/radio/manifest.json +294 -0
- package/src/web/radio/radio.css +1 -0
- package/src/web/radio/radio.vue +288 -0
- package/src/web/radio/radio.vue.d.ts +182 -0
- package/src/web/selectbox/AI_GUIDE.md +216 -0
- package/src/web/selectbox/index.ts +3 -0
- package/src/web/selectbox/manifest.json +477 -0
- package/src/web/selectbox/selectbox.css +1 -0
- package/src/web/selectbox/selectbox.vue +1024 -0
- package/src/web/selectbox/selectbox.vue.d.ts +300 -0
- package/src/web/sonner/AI_GUIDE.md +98 -0
- package/src/web/sonner/index.ts +114 -0
- package/src/web/sonner/manifest.json +132 -0
- package/src/web/sonner/sonner.css +1 -0
- package/src/web/sonner/sonner.vue +180 -0
- package/src/web/sonner/sonner.vue.d.ts +113 -0
- package/src/web/table/AI_GUIDE.md +145 -0
- package/src/web/table/index.ts +34 -0
- package/src/web/table/manifest.json +168 -0
- package/src/web/table/table-body.vue +42 -0
- package/src/web/table/table-body.vue.d.ts +28 -0
- package/src/web/table/table-caption.vue +42 -0
- package/src/web/table/table-caption.vue.d.ts +28 -0
- package/src/web/table/table-cell.vue +71 -0
- package/src/web/table/table-cell.vue.d.ts +49 -0
- package/src/web/table/table-empty.vue +105 -0
- package/src/web/table/table-empty.vue.d.ts +57 -0
- package/src/web/table/table-footer.vue +42 -0
- package/src/web/table/table-footer.vue.d.ts +28 -0
- package/src/web/table/table-head.vue +78 -0
- package/src/web/table/table-head.vue.d.ts +50 -0
- package/src/web/table/table-header.vue +42 -0
- package/src/web/table/table-header.vue.d.ts +28 -0
- package/src/web/table/table-row.vue +70 -0
- package/src/web/table/table-row.vue.d.ts +44 -0
- package/src/web/table/table.css +1 -0
- package/src/web/table/table.vue +298 -0
- package/src/web/table/table.vue.d.ts +119 -0
- package/src/web/tabs/AI_GUIDE.md +150 -0
- package/src/web/tabs/index.ts +2 -0
- package/src/web/tabs/manifest.json +315 -0
- package/src/web/tabs/tabs.css +1 -0
- package/src/web/tabs/tabs.vue +164 -0
- package/src/web/tabs/tabs.vue.d.ts +60 -0
- package/src/web/text/AI_GUIDE.md +129 -0
- package/src/web/text/index.ts +2 -0
- package/src/web/text/manifest.json +195 -0
- package/src/web/text/text.css +1 -0
- package/src/web/text/text.vue +195 -0
- package/src/web/text/text.vue.d.ts +161 -0
- package/src/web/textarea/AI_GUIDE.md +141 -0
- package/src/web/textarea/index.ts +3 -0
- package/src/web/textarea/manifest.json +438 -0
- package/src/web/textarea/textarea.css +1 -0
- package/src/web/textarea/textarea.vue +458 -0
- package/src/web/textarea/textarea.vue.d.ts +265 -0
- package/src/web/tooltip/AI_GUIDE.md +110 -0
- package/src/web/tooltip/index.ts +3 -0
- package/src/web/tooltip/manifest.json +222 -0
- package/src/web/tooltip/tooltip.css +1 -0
- package/src/web/tooltip/tooltip.vue +417 -0
- package/src/web/tooltip/tooltip.vue.d.ts +150 -0
- package/src/webview/bottomsheet/AI_GUIDE.md +141 -0
- package/src/webview/bottomsheet/bottomsheet.css +1 -0
- package/src/webview/bottomsheet/bottomsheet.vue +441 -0
- package/src/webview/bottomsheet/bottomsheet.vue.d.ts +178 -0
- package/src/webview/bottomsheet/index.ts +4 -0
- package/src/webview/bottomsheet/manifest.json +377 -0
- package/src/webview/button/AI_GUIDE.md +79 -0
- package/src/webview/button/button-ios.css +1 -0
- package/src/webview/button/button-ios.vue +138 -0
- package/src/webview/button/button-ios.vue.d.ts +102 -0
- package/src/webview/button/button-material.css +1 -0
- package/src/webview/button/button-material.vue +138 -0
- package/src/webview/button/button-material.vue.d.ts +102 -0
- package/src/webview/button/index.ts +7 -0
- package/src/webview/button/manifest.json +148 -0
- package/src/webview/index.ts +7 -0
- package/tailwind-preset.cjs +62 -0
- package/tailwind-preset.js +62 -0
- package/ttdk-manifest.json +10188 -0
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div
|
|
3
|
+
:class="`ttdk-grid-item ${className || ''}`.trim()"
|
|
4
|
+
:style="{
|
|
5
|
+
...buildGridItemVars(props),
|
|
6
|
+
...buildUiVars(ui),
|
|
7
|
+
...(typeof style === 'object' ? style : {}),
|
|
8
|
+
}"
|
|
9
|
+
>
|
|
10
|
+
<slot />
|
|
11
|
+
</div>
|
|
12
|
+
</template>
|
|
13
|
+
|
|
14
|
+
<script setup lang="ts">
|
|
15
|
+
import { buildGridItemVars, buildUiVars, UiProps } from "../../core/types";
|
|
16
|
+
|
|
17
|
+
export interface GridItemBreakpointProps {
|
|
18
|
+
/**
|
|
19
|
+
* Jumlah kolom yang ditempati item ini (grid-column).
|
|
20
|
+
* Nilai angka N (misal: 6 atau 12) otomatis dikonversi ke 'span N / span N'.
|
|
21
|
+
* Nilai string (misal: "span 4", "1 / -1", "auto").
|
|
22
|
+
*/
|
|
23
|
+
col?: number | string;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Posisi awal garis kolom (grid-column-start).
|
|
27
|
+
*/
|
|
28
|
+
colStart?: number | string;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Posisi akhir garis kolom (grid-column-end).
|
|
32
|
+
*/
|
|
33
|
+
colEnd?: number | string;
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Jumlah baris yang ditempati item ini (grid-row).
|
|
37
|
+
* Nilai angka N otomatis dikonversi ke 'span N / span N'.
|
|
38
|
+
*/
|
|
39
|
+
row?: number | string;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Posisi awal garis baris (grid-row-start).
|
|
43
|
+
*/
|
|
44
|
+
rowStart?: number | string;
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Posisi akhir garis baris (grid-row-end).
|
|
48
|
+
*/
|
|
49
|
+
rowEnd?: number | string;
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Perataan horizontal item di dalam sel grid (justify-self).
|
|
53
|
+
*/
|
|
54
|
+
justifySelf?: "auto" | "start" | "center" | "end" | "stretch";
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Urutan tampilan item di dalam grid (order).
|
|
58
|
+
*/
|
|
59
|
+
order?: number | string;
|
|
60
|
+
}
|
|
61
|
+
export interface GridItemProps extends GridItemBreakpointProps {
|
|
62
|
+
/**
|
|
63
|
+
* Override pada breakpoint sm (min-width: 640px).
|
|
64
|
+
*/
|
|
65
|
+
sm?: GridItemBreakpointProps;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Override pada breakpoint md (min-width: 768px).
|
|
69
|
+
*/
|
|
70
|
+
md?: GridItemBreakpointProps;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Override pada breakpoint lg (min-width: 1024px).
|
|
74
|
+
*/
|
|
75
|
+
lg?: GridItemBreakpointProps;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Override pada breakpoint xl (min-width: 1280px).
|
|
79
|
+
*/
|
|
80
|
+
xl?: GridItemBreakpointProps;
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Override pada breakpoint xxl / 2xl (min-width: 1536px).
|
|
84
|
+
*/
|
|
85
|
+
xxl?: GridItemBreakpointProps;
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Kustomisasi visual granular root kontainer (UiProps).
|
|
89
|
+
*/
|
|
90
|
+
ui?: UiProps;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Class CSS kustom.
|
|
94
|
+
*/
|
|
95
|
+
className?: string;
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Style kustom inline.
|
|
99
|
+
*/
|
|
100
|
+
style?: any;
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Konten di dalam item grid.
|
|
104
|
+
*/
|
|
105
|
+
children?: any;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
const props = defineProps<GridItemProps>();
|
|
109
|
+
</script>
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
// Auto-generated by TTDK Design System Vue Type Generator
|
|
3
|
+
import type { DefineComponent } from "vue";
|
|
4
|
+
import { buildGridItemVars, buildUiVars, UiProps } from "../../core/types";
|
|
5
|
+
|
|
6
|
+
export interface GridItemBreakpointProps {
|
|
7
|
+
/**
|
|
8
|
+
* Jumlah kolom yang ditempati item ini (grid-column).
|
|
9
|
+
* Nilai angka N (misal: 6 atau 12) otomatis dikonversi ke 'span N / span N'.
|
|
10
|
+
* Nilai string (misal: "span 4", "1 / -1", "auto").
|
|
11
|
+
*/
|
|
12
|
+
col?: number | string;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Posisi awal garis kolom (grid-column-start).
|
|
16
|
+
*/
|
|
17
|
+
colStart?: number | string;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Posisi akhir garis kolom (grid-column-end).
|
|
21
|
+
*/
|
|
22
|
+
colEnd?: number | string;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Jumlah baris yang ditempati item ini (grid-row).
|
|
26
|
+
* Nilai angka N otomatis dikonversi ke 'span N / span N'.
|
|
27
|
+
*/
|
|
28
|
+
row?: number | string;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Posisi awal garis baris (grid-row-start).
|
|
32
|
+
*/
|
|
33
|
+
rowStart?: number | string;
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Posisi akhir garis baris (grid-row-end).
|
|
37
|
+
*/
|
|
38
|
+
rowEnd?: number | string;
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Perataan horizontal item di dalam sel grid (justify-self).
|
|
42
|
+
*/
|
|
43
|
+
justifySelf?: "auto" | "start" | "center" | "end" | "stretch";
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Urutan tampilan item di dalam grid (order).
|
|
47
|
+
*/
|
|
48
|
+
order?: number | string;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export interface GridItemProps extends GridItemBreakpointProps {
|
|
52
|
+
/**
|
|
53
|
+
* Override pada breakpoint sm (min-width: 640px).
|
|
54
|
+
*/
|
|
55
|
+
sm?: GridItemBreakpointProps;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Override pada breakpoint md (min-width: 768px).
|
|
59
|
+
*/
|
|
60
|
+
md?: GridItemBreakpointProps;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Override pada breakpoint lg (min-width: 1024px).
|
|
64
|
+
*/
|
|
65
|
+
lg?: GridItemBreakpointProps;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Override pada breakpoint xl (min-width: 1280px).
|
|
69
|
+
*/
|
|
70
|
+
xl?: GridItemBreakpointProps;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Override pada breakpoint xxl / 2xl (min-width: 1536px).
|
|
74
|
+
*/
|
|
75
|
+
xxl?: GridItemBreakpointProps;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Kustomisasi visual granular root kontainer (UiProps).
|
|
79
|
+
*/
|
|
80
|
+
ui?: UiProps;
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Class CSS kustom.
|
|
84
|
+
*/
|
|
85
|
+
className?: string;
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Style kustom inline.
|
|
89
|
+
*/
|
|
90
|
+
style?: any;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Konten di dalam item grid.
|
|
94
|
+
*/
|
|
95
|
+
children?: any;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
declare const component: DefineComponent<GridItemProps>;
|
|
99
|
+
export default component;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ttdk-grid{box-sizing:border-box;grid-template-columns:var(--ttdk-grid-template-columns,repeat(1, minmax(0, 1fr)));grid-template-rows:var(--ttdk-grid-template-rows,auto);gap:var(--ttdk-grid-gap,0);justify-content:var(--ttdk-grid-justify-content,normal);align-content:var(--ttdk-grid-align-content,normal);display:grid}.ttdk-grid-item{box-sizing:border-box;grid-column:var(--ttdk-grid-item-col,auto);grid-row:var(--ttdk-grid-item-row,auto);justify-self:var(--ttdk-grid-item-justify-self,auto);order:var(--ttdk-grid-item-order,0);min-width:0}@media (width>=640px){.ttdk-grid{grid-template-columns:var(--ttdk-grid-template-columns-sm,var(--ttdk-grid-template-columns,repeat(1, minmax(0, 1fr))));grid-template-rows:var(--ttdk-grid-template-rows-sm,var(--ttdk-grid-template-rows,auto));gap:var(--ttdk-grid-gap-sm,var(--ttdk-grid-gap,0));justify-content:var(--ttdk-grid-justify-content-sm,var(--ttdk-grid-justify-content,normal));align-content:var(--ttdk-grid-align-content-sm,var(--ttdk-grid-align-content,normal))}.ttdk-grid-item{grid-column:var(--ttdk-grid-item-col-sm,var(--ttdk-grid-item-col,auto));grid-row:var(--ttdk-grid-item-row-sm,var(--ttdk-grid-item-row,auto));justify-self:var(--ttdk-grid-item-justify-self-sm,var(--ttdk-grid-item-justify-self,auto));order:var(--ttdk-grid-item-order-sm,var(--ttdk-grid-item-order,0))}}@media (width>=768px){.ttdk-grid{grid-template-columns:var(--ttdk-grid-template-columns-md,var(--ttdk-grid-template-columns-sm,var(--ttdk-grid-template-columns,repeat(1, minmax(0, 1fr)))));grid-template-rows:var(--ttdk-grid-template-rows-md,var(--ttdk-grid-template-rows-sm,var(--ttdk-grid-template-rows,auto)));gap:var(--ttdk-grid-gap-md,var(--ttdk-grid-gap-sm,var(--ttdk-grid-gap,0)));justify-content:var(--ttdk-grid-justify-content-md,var(--ttdk-grid-justify-content-sm,var(--ttdk-grid-justify-content,normal)));align-content:var(--ttdk-grid-align-content-md,var(--ttdk-grid-align-content-sm,var(--ttdk-grid-align-content,normal)))}.ttdk-grid-item{grid-column:var(--ttdk-grid-item-col-md,var(--ttdk-grid-item-col-sm,var(--ttdk-grid-item-col,auto)));grid-row:var(--ttdk-grid-item-row-md,var(--ttdk-grid-item-row-sm,var(--ttdk-grid-item-row,auto)));justify-self:var(--ttdk-grid-item-justify-self-md,var(--ttdk-grid-item-justify-self-sm,var(--ttdk-grid-item-justify-self,auto)));order:var(--ttdk-grid-item-order-md,var(--ttdk-grid-item-order-sm,var(--ttdk-grid-item-order,0)))}}@media (width>=1024px){.ttdk-grid{grid-template-columns:var(--ttdk-grid-template-columns-lg,var(--ttdk-grid-template-columns-md,var(--ttdk-grid-template-columns-sm,var(--ttdk-grid-template-columns,repeat(1, minmax(0, 1fr))))));grid-template-rows:var(--ttdk-grid-template-rows-lg,var(--ttdk-grid-template-rows-md,var(--ttdk-grid-template-rows-sm,var(--ttdk-grid-template-rows,auto))));gap:var(--ttdk-grid-gap-lg,var(--ttdk-grid-gap-md,var(--ttdk-grid-gap-sm,var(--ttdk-grid-gap,0))));justify-content:var(--ttdk-grid-justify-content-lg,var(--ttdk-grid-justify-content-md,var(--ttdk-grid-justify-content-sm,var(--ttdk-grid-justify-content,normal))));align-content:var(--ttdk-grid-align-content-lg,var(--ttdk-grid-align-content-md,var(--ttdk-grid-align-content-sm,var(--ttdk-grid-align-content,normal))))}.ttdk-grid-item{grid-column:var(--ttdk-grid-item-col-lg,var(--ttdk-grid-item-col-md,var(--ttdk-grid-item-col-sm,var(--ttdk-grid-item-col,auto))));grid-row:var(--ttdk-grid-item-row-lg,var(--ttdk-grid-item-row-md,var(--ttdk-grid-item-row-sm,var(--ttdk-grid-item-row,auto))));justify-self:var(--ttdk-grid-item-justify-self-lg,var(--ttdk-grid-item-justify-self-md,var(--ttdk-grid-item-justify-self-sm,var(--ttdk-grid-item-justify-self,auto))));order:var(--ttdk-grid-item-order-lg,var(--ttdk-grid-item-order-md,var(--ttdk-grid-item-order-sm,var(--ttdk-grid-item-order,0))))}}@media (width>=1280px){.ttdk-grid{grid-template-columns:var(--ttdk-grid-template-columns-xl,var(--ttdk-grid-template-columns-lg,var(--ttdk-grid-template-columns-md,var(--ttdk-grid-template-columns-sm,var(--ttdk-grid-template-columns,repeat(1, minmax(0, 1fr)))))));grid-template-rows:var(--ttdk-grid-template-rows-xl,var(--ttdk-grid-template-rows-lg,var(--ttdk-grid-template-rows-md,var(--ttdk-grid-template-rows-sm,var(--ttdk-grid-template-rows,auto)))));gap:var(--ttdk-grid-gap-xl,var(--ttdk-grid-gap-lg,var(--ttdk-grid-gap-md,var(--ttdk-grid-gap-sm,var(--ttdk-grid-gap,0)))));justify-content:var(--ttdk-grid-justify-content-xl,var(--ttdk-grid-justify-content-lg,var(--ttdk-grid-justify-content-md,var(--ttdk-grid-justify-content-sm,var(--ttdk-grid-justify-content,normal)))));align-content:var(--ttdk-grid-align-content-xl,var(--ttdk-grid-align-content-lg,var(--ttdk-grid-align-content-md,var(--ttdk-grid-align-content-sm,var(--ttdk-grid-align-content,normal)))))}.ttdk-grid-item{grid-column:var(--ttdk-grid-item-col-xl,var(--ttdk-grid-item-col-lg,var(--ttdk-grid-item-col-md,var(--ttdk-grid-item-col-sm,var(--ttdk-grid-item-col,auto)))));grid-row:var(--ttdk-grid-item-row-xl,var(--ttdk-grid-item-row-lg,var(--ttdk-grid-item-row-md,var(--ttdk-grid-item-row-sm,var(--ttdk-grid-item-row,auto)))));justify-self:var(--ttdk-grid-item-justify-self-xl,var(--ttdk-grid-item-justify-self-lg,var(--ttdk-grid-item-justify-self-md,var(--ttdk-grid-item-justify-self-sm,var(--ttdk-grid-item-justify-self,auto)))));order:var(--ttdk-grid-item-order-xl,var(--ttdk-grid-item-order-lg,var(--ttdk-grid-item-order-md,var(--ttdk-grid-item-order-sm,var(--ttdk-grid-item-order,0)))))}}@media (width>=1536px){.ttdk-grid{grid-template-columns:var(--ttdk-grid-template-columns-2xl,var(--ttdk-grid-template-columns-xl,var(--ttdk-grid-template-columns-lg,var(--ttdk-grid-template-columns-md,var(--ttdk-grid-template-columns-sm,var(--ttdk-grid-template-columns,repeat(1, minmax(0, 1fr))))))));grid-template-rows:var(--ttdk-grid-template-rows-2xl,var(--ttdk-grid-template-rows-xl,var(--ttdk-grid-template-rows-lg,var(--ttdk-grid-template-rows-md,var(--ttdk-grid-template-rows-sm,var(--ttdk-grid-template-rows,auto))))));gap:var(--ttdk-grid-gap-2xl,var(--ttdk-grid-gap-xl,var(--ttdk-grid-gap-lg,var(--ttdk-grid-gap-md,var(--ttdk-grid-gap-sm,var(--ttdk-grid-gap,0))))));justify-content:var(--ttdk-grid-justify-content-2xl,var(--ttdk-grid-justify-content-xl,var(--ttdk-grid-justify-content-lg,var(--ttdk-grid-justify-content-md,var(--ttdk-grid-justify-content-sm,var(--ttdk-grid-justify-content,normal))))));align-content:var(--ttdk-grid-align-content-2xl,var(--ttdk-grid-align-content-xl,var(--ttdk-grid-align-content-lg,var(--ttdk-grid-align-content-md,var(--ttdk-grid-align-content-sm,var(--ttdk-grid-align-content,normal))))))}.ttdk-grid-item{grid-column:var(--ttdk-grid-item-col-2xl,var(--ttdk-grid-item-col-xl,var(--ttdk-grid-item-col-lg,var(--ttdk-grid-item-col-md,var(--ttdk-grid-item-col-sm,var(--ttdk-grid-item-col,auto))))));grid-row:var(--ttdk-grid-item-row-2xl,var(--ttdk-grid-item-row-xl,var(--ttdk-grid-item-row-lg,var(--ttdk-grid-item-row-md,var(--ttdk-grid-item-row-sm,var(--ttdk-grid-item-row,auto))))));justify-self:var(--ttdk-grid-item-justify-self-2xl,var(--ttdk-grid-item-justify-self-xl,var(--ttdk-grid-item-justify-self-lg,var(--ttdk-grid-item-justify-self-md,var(--ttdk-grid-item-justify-self-sm,var(--ttdk-grid-item-justify-self,auto))))));order:var(--ttdk-grid-item-order-2xl,var(--ttdk-grid-item-order-xl,var(--ttdk-grid-item-order-lg,var(--ttdk-grid-item-order-md,var(--ttdk-grid-item-order-sm,var(--ttdk-grid-item-order,0))))))}}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div
|
|
3
|
+
:class="`ttdk-grid ${className || ''}`.trim()"
|
|
4
|
+
:style="{
|
|
5
|
+
...buildGridVars(props),
|
|
6
|
+
...buildUiVars(ui),
|
|
7
|
+
...(typeof style === 'object' ? style : {}),
|
|
8
|
+
}"
|
|
9
|
+
>
|
|
10
|
+
<slot />
|
|
11
|
+
</div>
|
|
12
|
+
</template>
|
|
13
|
+
|
|
14
|
+
<script setup lang="ts">
|
|
15
|
+
import { buildGridVars, buildUiVars, UiProps } from "../../core/types";
|
|
16
|
+
|
|
17
|
+
export interface GridBreakpointProps {
|
|
18
|
+
/**
|
|
19
|
+
* Jumlah atau pola template kolom pada grid (grid-template-columns).
|
|
20
|
+
* Nilai angka (misal: 3 atau 12) otomatis dikonversi ke repeat(N, minmax(0, 1fr)).
|
|
21
|
+
* Nilai string (misal: "200px 1fr 2fr", "repeat(4, 1fr)").
|
|
22
|
+
*/
|
|
23
|
+
templateColumns?: string | number;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Jumlah atau pola template baris pada grid (grid-template-rows).
|
|
27
|
+
*/
|
|
28
|
+
templateRows?: string | number;
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Jarak celah antar baris dan kolom (gap).
|
|
32
|
+
* Nilai angka (misal: 16) atau string (misal: "16px", "1rem", "var(--ttdk-spacing-16)").
|
|
33
|
+
*/
|
|
34
|
+
gap?: string | number;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Distribusi horizontal keseluruhan grid container (justify-content).
|
|
38
|
+
*/
|
|
39
|
+
justifyContent?: "start" | "center" | "end" | "around" | "between" | "evenly";
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Distribusi vertikal baris di dalam grid container (align-content).
|
|
43
|
+
*/
|
|
44
|
+
alignContent?: "evenly" | "around" | "between" | "center" | "start" | "end";
|
|
45
|
+
}
|
|
46
|
+
export interface GridProps extends GridBreakpointProps {
|
|
47
|
+
/**
|
|
48
|
+
* Override pada breakpoint sm (min-width: 640px).
|
|
49
|
+
*/
|
|
50
|
+
sm?: GridBreakpointProps;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Override pada breakpoint md (min-width: 768px).
|
|
54
|
+
*/
|
|
55
|
+
md?: GridBreakpointProps;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Override pada breakpoint lg (min-width: 1024px).
|
|
59
|
+
*/
|
|
60
|
+
lg?: GridBreakpointProps;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Override pada breakpoint xl (min-width: 1280px).
|
|
64
|
+
*/
|
|
65
|
+
xl?: GridBreakpointProps;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Override pada breakpoint xxl / 2xl (min-width: 1536px).
|
|
69
|
+
*/
|
|
70
|
+
xxl?: GridBreakpointProps;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Kustomisasi visual granular root kontainer (UiProps).
|
|
74
|
+
*/
|
|
75
|
+
ui?: UiProps;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Class CSS kustom.
|
|
79
|
+
*/
|
|
80
|
+
className?: string;
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Style kustom inline.
|
|
84
|
+
*/
|
|
85
|
+
style?: any;
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Konten anak di dalam Grid (<GridItem>).
|
|
89
|
+
*/
|
|
90
|
+
children?: any;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
const props = defineProps<GridProps>();
|
|
94
|
+
</script>
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
// Auto-generated by TTDK Design System Vue Type Generator
|
|
3
|
+
import type { DefineComponent } from "vue";
|
|
4
|
+
import { buildGridVars, buildUiVars, UiProps } from "../../core/types";
|
|
5
|
+
|
|
6
|
+
export interface GridBreakpointProps {
|
|
7
|
+
/**
|
|
8
|
+
* Jumlah atau pola template kolom pada grid (grid-template-columns).
|
|
9
|
+
* Nilai angka (misal: 3 atau 12) otomatis dikonversi ke repeat(N, minmax(0, 1fr)).
|
|
10
|
+
* Nilai string (misal: "200px 1fr 2fr", "repeat(4, 1fr)").
|
|
11
|
+
*/
|
|
12
|
+
templateColumns?: string | number;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Jumlah atau pola template baris pada grid (grid-template-rows).
|
|
16
|
+
*/
|
|
17
|
+
templateRows?: string | number;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Jarak celah antar baris dan kolom (gap).
|
|
21
|
+
* Nilai angka (misal: 16) atau string (misal: "16px", "1rem", "var(--ttdk-spacing-16)").
|
|
22
|
+
*/
|
|
23
|
+
gap?: string | number;
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Distribusi horizontal keseluruhan grid container (justify-content).
|
|
27
|
+
*/
|
|
28
|
+
justifyContent?: "start" | "center" | "end" | "around" | "between" | "evenly";
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Distribusi vertikal baris di dalam grid container (align-content).
|
|
32
|
+
*/
|
|
33
|
+
alignContent?: "evenly" | "around" | "between" | "center" | "start" | "end";
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface GridProps extends GridBreakpointProps {
|
|
37
|
+
/**
|
|
38
|
+
* Override pada breakpoint sm (min-width: 640px).
|
|
39
|
+
*/
|
|
40
|
+
sm?: GridBreakpointProps;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Override pada breakpoint md (min-width: 768px).
|
|
44
|
+
*/
|
|
45
|
+
md?: GridBreakpointProps;
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Override pada breakpoint lg (min-width: 1024px).
|
|
49
|
+
*/
|
|
50
|
+
lg?: GridBreakpointProps;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Override pada breakpoint xl (min-width: 1280px).
|
|
54
|
+
*/
|
|
55
|
+
xl?: GridBreakpointProps;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Override pada breakpoint xxl / 2xl (min-width: 1536px).
|
|
59
|
+
*/
|
|
60
|
+
xxl?: GridBreakpointProps;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Kustomisasi visual granular root kontainer (UiProps).
|
|
64
|
+
*/
|
|
65
|
+
ui?: UiProps;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Class CSS kustom.
|
|
69
|
+
*/
|
|
70
|
+
className?: string;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Style kustom inline.
|
|
74
|
+
*/
|
|
75
|
+
style?: any;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Konten anak di dalam Grid (<GridItem>).
|
|
79
|
+
*/
|
|
80
|
+
children?: any;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
declare const component: DefineComponent<GridProps>;
|
|
84
|
+
export default component;
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@ttdk-design-system/grid",
|
|
3
|
+
"component": "Grid",
|
|
4
|
+
"folder": "grid",
|
|
5
|
+
"description": "TTDK Grid component with multi-theme support.",
|
|
6
|
+
"stylesheets": [
|
|
7
|
+
{
|
|
8
|
+
"theme": "common",
|
|
9
|
+
"file": "grid.css",
|
|
10
|
+
"importPath": "web/grid/grid.css"
|
|
11
|
+
}
|
|
12
|
+
],
|
|
13
|
+
"props": {
|
|
14
|
+
"sm": {
|
|
15
|
+
"name": "sm",
|
|
16
|
+
"type": "GridBreakpointProps",
|
|
17
|
+
"optional": true,
|
|
18
|
+
"default": null,
|
|
19
|
+
"description": "Override pada breakpoint sm (min-width: 640px).",
|
|
20
|
+
"example": null,
|
|
21
|
+
"param": null
|
|
22
|
+
},
|
|
23
|
+
"md": {
|
|
24
|
+
"name": "md",
|
|
25
|
+
"type": "GridBreakpointProps",
|
|
26
|
+
"optional": true,
|
|
27
|
+
"default": null,
|
|
28
|
+
"description": "Override pada breakpoint md (min-width: 768px).",
|
|
29
|
+
"example": null,
|
|
30
|
+
"param": null
|
|
31
|
+
},
|
|
32
|
+
"lg": {
|
|
33
|
+
"name": "lg",
|
|
34
|
+
"type": "GridBreakpointProps",
|
|
35
|
+
"optional": true,
|
|
36
|
+
"default": null,
|
|
37
|
+
"description": "Override pada breakpoint lg (min-width: 1024px).",
|
|
38
|
+
"example": null,
|
|
39
|
+
"param": null
|
|
40
|
+
},
|
|
41
|
+
"xl": {
|
|
42
|
+
"name": "xl",
|
|
43
|
+
"type": "GridBreakpointProps",
|
|
44
|
+
"optional": true,
|
|
45
|
+
"default": null,
|
|
46
|
+
"description": "Override pada breakpoint xl (min-width: 1280px).",
|
|
47
|
+
"example": null,
|
|
48
|
+
"param": null
|
|
49
|
+
},
|
|
50
|
+
"xxl": {
|
|
51
|
+
"name": "xxl",
|
|
52
|
+
"type": "GridBreakpointProps",
|
|
53
|
+
"optional": true,
|
|
54
|
+
"default": null,
|
|
55
|
+
"description": "Override pada breakpoint xxl / 2xl (min-width: 1536px).",
|
|
56
|
+
"example": null,
|
|
57
|
+
"param": null
|
|
58
|
+
},
|
|
59
|
+
"ui": {
|
|
60
|
+
"name": "ui",
|
|
61
|
+
"type": "UiProps",
|
|
62
|
+
"optional": true,
|
|
63
|
+
"default": null,
|
|
64
|
+
"description": "Kustomisasi visual granular root kontainer (UiProps).",
|
|
65
|
+
"example": null,
|
|
66
|
+
"param": null
|
|
67
|
+
},
|
|
68
|
+
"className": {
|
|
69
|
+
"name": "className",
|
|
70
|
+
"type": "string",
|
|
71
|
+
"optional": true,
|
|
72
|
+
"default": null,
|
|
73
|
+
"description": "Class CSS kustom.",
|
|
74
|
+
"example": null,
|
|
75
|
+
"param": null
|
|
76
|
+
},
|
|
77
|
+
"style": {
|
|
78
|
+
"name": "style",
|
|
79
|
+
"type": "any",
|
|
80
|
+
"optional": true,
|
|
81
|
+
"default": null,
|
|
82
|
+
"description": "Style kustom inline.",
|
|
83
|
+
"example": null,
|
|
84
|
+
"param": null
|
|
85
|
+
},
|
|
86
|
+
"children": {
|
|
87
|
+
"name": "children",
|
|
88
|
+
"type": "any",
|
|
89
|
+
"optional": true,
|
|
90
|
+
"default": null,
|
|
91
|
+
"description": "Konten anak di dalam Grid (<GridItem>).",
|
|
92
|
+
"example": null,
|
|
93
|
+
"param": null
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
"subInterfaces": {
|
|
97
|
+
"GridBreakpointProps": {
|
|
98
|
+
"templateColumns": {
|
|
99
|
+
"name": "templateColumns",
|
|
100
|
+
"type": "string | number",
|
|
101
|
+
"optional": true,
|
|
102
|
+
"default": null,
|
|
103
|
+
"description": "Jumlah atau pola template kolom pada grid (grid-template-columns). Nilai angka (misal: 3 atau 12) otomatis dikonversi ke repeat(N, minmax(0, 1fr)). Nilai string (misal: \"200px 1fr 2fr\", \"repeat(4, 1fr)\").",
|
|
104
|
+
"example": null,
|
|
105
|
+
"param": null
|
|
106
|
+
},
|
|
107
|
+
"templateRows": {
|
|
108
|
+
"name": "templateRows",
|
|
109
|
+
"type": "string | number",
|
|
110
|
+
"optional": true,
|
|
111
|
+
"default": null,
|
|
112
|
+
"description": "Jumlah atau pola template baris pada grid (grid-template-rows).",
|
|
113
|
+
"example": null,
|
|
114
|
+
"param": null
|
|
115
|
+
},
|
|
116
|
+
"gap": {
|
|
117
|
+
"name": "gap",
|
|
118
|
+
"type": "string | number",
|
|
119
|
+
"optional": true,
|
|
120
|
+
"default": null,
|
|
121
|
+
"description": "Jarak celah antar baris dan kolom (gap). Nilai angka (misal: 16) atau string (misal: \"16px\", \"1rem\", \"var(--ttdk-spacing-16)\").",
|
|
122
|
+
"example": null,
|
|
123
|
+
"param": null
|
|
124
|
+
},
|
|
125
|
+
"justifyContent": {
|
|
126
|
+
"name": "justifyContent",
|
|
127
|
+
"type": "'start' | 'center' | 'end' | 'around' | 'between' | 'evenly'",
|
|
128
|
+
"optional": true,
|
|
129
|
+
"default": null,
|
|
130
|
+
"description": "Distribusi horizontal keseluruhan grid container (justify-content).",
|
|
131
|
+
"example": null,
|
|
132
|
+
"param": null
|
|
133
|
+
},
|
|
134
|
+
"alignContent": {
|
|
135
|
+
"name": "alignContent",
|
|
136
|
+
"type": "'evenly' | 'around' | 'between' | 'center' | 'start' | 'end'",
|
|
137
|
+
"optional": true,
|
|
138
|
+
"default": null,
|
|
139
|
+
"description": "Distribusi vertikal baris di dalam grid container (align-content).",
|
|
140
|
+
"example": null,
|
|
141
|
+
"param": null
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
"supportedFrameworks": [
|
|
146
|
+
"react",
|
|
147
|
+
"vue",
|
|
148
|
+
"svelte"
|
|
149
|
+
],
|
|
150
|
+
"themes": [
|
|
151
|
+
"tw"
|
|
152
|
+
]
|
|
153
|
+
}
|
package/src/web/index.ts
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TTDK Design System — Web Module (VUE)
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
export { default as Accordion } from './accordion/accordion.vue';
|
|
6
|
+
export * from './accordion';
|
|
7
|
+
|
|
8
|
+
export { default as Alert } from './alert/alert.vue';
|
|
9
|
+
export * from './alert';
|
|
10
|
+
|
|
11
|
+
export { default as Avatar } from './avatar/avatar.vue';
|
|
12
|
+
export * from './avatar';
|
|
13
|
+
|
|
14
|
+
export { default as Badge } from './badge/badge.vue';
|
|
15
|
+
export * from './badge';
|
|
16
|
+
|
|
17
|
+
export { default as Banner } from './banner/banner.vue';
|
|
18
|
+
export * from './banner';
|
|
19
|
+
|
|
20
|
+
export { default as Breadcrumb } from './breadcrumb/breadcrumb.vue';
|
|
21
|
+
export * from './breadcrumb';
|
|
22
|
+
|
|
23
|
+
export { default as Button } from './button/button.vue';
|
|
24
|
+
export * from './button';
|
|
25
|
+
|
|
26
|
+
export { default as Calendar } from './calendar/calendar.vue';
|
|
27
|
+
export * from './calendar';
|
|
28
|
+
|
|
29
|
+
export { default as Card } from './card/card.vue';
|
|
30
|
+
export * from './card';
|
|
31
|
+
|
|
32
|
+
export { default as Checkbox } from './checkbox/checkbox.vue';
|
|
33
|
+
export * from './checkbox';
|
|
34
|
+
|
|
35
|
+
export { default as Chip } from './chip/chip.vue';
|
|
36
|
+
export * from './chip';
|
|
37
|
+
|
|
38
|
+
export { default as Dropdown } from './dropdown/dropdown.vue';
|
|
39
|
+
export * from './dropdown';
|
|
40
|
+
|
|
41
|
+
export { default as Flex } from './flex/flex.vue';
|
|
42
|
+
export * from './flex';
|
|
43
|
+
|
|
44
|
+
export { default as Grid } from './grid/grid.vue';
|
|
45
|
+
export * from './grid';
|
|
46
|
+
|
|
47
|
+
export { default as Input } from './input/input.vue';
|
|
48
|
+
export * from './input';
|
|
49
|
+
|
|
50
|
+
export { default as InputNumber } from './input-number/input-number.vue';
|
|
51
|
+
export * from './input-number';
|
|
52
|
+
|
|
53
|
+
export { default as Modal } from './modal/modal.vue';
|
|
54
|
+
export * from './modal';
|
|
55
|
+
|
|
56
|
+
export { default as Pagination, PaginationContent, PaginationItem, PaginationLink, PaginationPrevious, PaginationNext, PaginationFirst, PaginationLast, PaginationEllipsis } from './pagination';
|
|
57
|
+
export * from './pagination';
|
|
58
|
+
|
|
59
|
+
export { default as Popover } from './popover/popover.vue';
|
|
60
|
+
export * from './popover';
|
|
61
|
+
|
|
62
|
+
export { default as Radio } from './radio/radio.vue';
|
|
63
|
+
export * from './radio';
|
|
64
|
+
|
|
65
|
+
export { default as Selectbox } from './selectbox/selectbox.vue';
|
|
66
|
+
export * from './selectbox';
|
|
67
|
+
|
|
68
|
+
export { default as Sonner, default as Toaster, toast } from './sonner';
|
|
69
|
+
export * from './sonner';
|
|
70
|
+
|
|
71
|
+
export { default as Table, default as DataTable, TableHeader, TableBody, TableFooter, TableRow, TableHead, TableCell, TableCaption, TableEmpty } from './table';
|
|
72
|
+
export type { TableProps, TableUiProps } from './table/table.vue';
|
|
73
|
+
export * from './table';
|
|
74
|
+
|
|
75
|
+
export { default as Tabs } from './tabs/tabs.vue';
|
|
76
|
+
export * from './tabs';
|
|
77
|
+
|
|
78
|
+
export { default as Text } from './text/text.vue';
|
|
79
|
+
export * from './text';
|
|
80
|
+
|
|
81
|
+
export { default as Textarea } from './textarea/textarea.vue';
|
|
82
|
+
export * from './textarea';
|
|
83
|
+
|
|
84
|
+
export { default as Tooltip } from './tooltip/tooltip.vue';
|
|
85
|
+
export * from './tooltip';
|
|
86
|
+
|