@vanduo-oss/framework 1.3.9 → 1.4.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/README.md +89 -42
- package/css/components/affix.css +12 -12
- package/css/components/alerts.css +70 -70
- package/css/components/avatar.css +78 -78
- package/css/components/badges.css +67 -67
- package/css/components/breadcrumbs.css +32 -32
- package/css/components/bubble.css +40 -40
- package/css/components/button-group.css +2 -2
- package/css/components/buttons.css +157 -157
- package/css/components/cards.css +79 -79
- package/css/components/chips.css +50 -50
- package/css/components/code-snippet.css +132 -132
- package/css/components/collapsible.css +67 -67
- package/css/components/collections.css +68 -68
- package/css/components/datepicker.css +54 -54
- package/css/components/doc-search.css +96 -103
- package/css/components/doc-tabs.css +11 -11
- package/css/components/draggable.css +77 -77
- package/css/components/dropdown.css +50 -50
- package/css/components/expanding-cards.css +1 -1
- package/css/components/fab.css +61 -61
- package/css/components/flow.css +55 -55
- package/css/components/footer.css +62 -62
- package/css/components/forms.css +437 -425
- package/css/components/image-box.css +50 -54
- package/css/components/modals.css +51 -51
- package/css/components/music-player.css +150 -150
- package/css/components/navbar.css +80 -80
- package/css/components/pagination.css +51 -51
- package/css/components/preloader.css +19 -19
- package/css/components/progress.css +20 -20
- package/css/components/rating.css +19 -19
- package/css/components/ripple.css +10 -10
- package/css/components/sidenav.css +72 -72
- package/css/components/skeleton.css +17 -16
- package/css/components/spinner.css +33 -33
- package/css/components/spotlight.css +33 -33
- package/css/components/stepper.css +39 -39
- package/css/components/suggest.css +37 -37
- package/css/components/tabs.css +60 -60
- package/css/components/theme-customizer.css +154 -154
- package/css/components/timeline.css +50 -50
- package/css/components/timepicker.css +29 -29
- package/css/components/toast.css +53 -53
- package/css/components/tooltips.css +78 -78
- package/css/components/transfer.css +37 -37
- package/css/components/tree.css +28 -28
- package/css/components/waypoint.css +12 -12
- package/css/core/colors.css +640 -640
- package/css/core/grid.css +127 -132
- package/css/core/helpers.css +349 -349
- package/css/core/tokens.css +133 -67
- package/css/core/typography.css +105 -103
- package/css/effects/morph.css +21 -21
- package/css/effects/parallax.css +6 -6
- package/css/utilities/color-utilities.css +273 -273
- package/css/utilities/media.css +4 -4
- package/css/utilities/shadow.css +75 -75
- package/css/utilities/table.css +64 -64
- package/css/utilities/transitions.css +53 -41
- package/css/vanduo.css +14 -35
- package/dist/build-info.json +3 -3
- package/dist/vanduo.cjs.js +947 -307
- package/dist/vanduo.cjs.js.map +3 -3
- package/dist/vanduo.cjs.min.js +7 -7
- package/dist/vanduo.cjs.min.js.map +3 -3
- package/dist/vanduo.css +9650 -9656
- package/dist/vanduo.css.map +1 -1
- package/dist/vanduo.esm.js +947 -307
- package/dist/vanduo.esm.js.map +3 -3
- package/dist/vanduo.esm.min.js +7 -7
- package/dist/vanduo.esm.min.js.map +3 -3
- package/dist/vanduo.js +947 -307
- package/dist/vanduo.js.map +3 -3
- package/dist/vanduo.min.css +2 -2
- package/dist/vanduo.min.css.map +1 -1
- package/dist/vanduo.min.js +7 -7
- package/dist/vanduo.min.js.map +3 -3
- package/js/components/affix.js +4 -4
- package/js/components/bubble.js +3 -3
- package/js/components/code-snippet.js +129 -5
- package/js/components/collapsible.js +2 -3
- package/js/components/datepicker.js +2 -2
- package/js/components/doc-search.js +69 -11
- package/js/components/draggable.js +4 -4
- package/js/components/dropdown.js +2 -3
- package/js/components/expanding-cards.js +2 -2
- package/js/components/flow.js +2 -2
- package/js/components/font-switcher.js +23 -13
- package/js/components/glass.js +2 -2
- package/js/components/grid.js +19 -8
- package/js/components/image-box.js +51 -12
- package/js/components/lazy-load.js +81 -9
- package/js/components/modals.js +28 -12
- package/js/components/morph.js +3 -3
- package/js/components/music-player.js +13 -13
- package/js/components/navbar.js +3 -3
- package/js/components/pagination.js +2 -3
- package/js/components/parallax.js +9 -10
- package/js/components/preloader.js +15 -6
- package/js/components/rating.js +2 -2
- package/js/components/ripple.js +2 -2
- package/js/components/select.js +2 -3
- package/js/components/sidenav.js +43 -14
- package/js/components/spotlight.js +2 -2
- package/js/components/stepper.js +2 -2
- package/js/components/suggest.js +9 -3
- package/js/components/tabs.js +2 -2
- package/js/components/theme-customizer.js +155 -25
- package/js/components/theme-switcher.js +27 -16
- package/js/components/timeline.js +41 -12
- package/js/components/timepicker.js +2 -2
- package/js/components/toast.js +1 -1
- package/js/components/tooltips.js +4 -4
- package/js/components/transfer.js +2 -2
- package/js/components/tree.js +2 -2
- package/js/components/validate.js +2 -2
- package/js/components/vd-hex.js +10 -6
- package/js/components/waypoint.js +2 -2
- package/js/utils/helpers.js +7 -4
- package/js/utils/lifecycle.js +158 -83
- package/js/vanduo.js +203 -34
- package/package.json +2 -1
- package/css/core/vd-aliases.css +0 -60
package/css/components/tabs.css
CHANGED
|
@@ -5,32 +5,32 @@
|
|
|
5
5
|
|
|
6
6
|
:root {
|
|
7
7
|
/* Tab Sizing (Fibonacci pairs: x/y ratio ~ phi) */
|
|
8
|
-
--tab-padding-x: 1.3125rem; /* 21px - fib */
|
|
9
|
-
--tab-padding-y: 0.8125rem; /* 13px - fib */
|
|
10
|
-
--tab-padding-x-sm: 0.8125rem; /* 13px - fib */
|
|
11
|
-
--tab-padding-y-sm: 0.5rem; /* 8px - fib */
|
|
12
|
-
--tab-padding-x-lg: 2.125rem; /* 34px - fib */
|
|
13
|
-
--tab-padding-y-lg: 1.3125rem; /* 21px - fib */
|
|
14
|
-
--tab-gap: 0;
|
|
15
|
-
--tab-border-width: 2px; /* fib(2) */
|
|
8
|
+
--vd-tab-padding-x: 1.3125rem; /* 21px - fib */
|
|
9
|
+
--vd-tab-padding-y: 0.8125rem; /* 13px - fib */
|
|
10
|
+
--vd-tab-padding-x-sm: 0.8125rem; /* 13px - fib */
|
|
11
|
+
--vd-tab-padding-y-sm: 0.5rem; /* 8px - fib */
|
|
12
|
+
--vd-tab-padding-x-lg: 2.125rem; /* 34px - fib */
|
|
13
|
+
--vd-tab-padding-y-lg: 1.3125rem; /* 21px - fib */
|
|
14
|
+
--vd-tab-gap: 0;
|
|
15
|
+
--vd-tab-border-width: 2px; /* fib(2) */
|
|
16
16
|
|
|
17
17
|
/* Tab Colors */
|
|
18
|
-
--tab-text: var(--text-secondary);
|
|
19
|
-
--tab-text-hover: var(--text-primary);
|
|
20
|
-
--tab-text-active: var(--color-primary);
|
|
21
|
-
--tab-border: var(--border-color);
|
|
22
|
-
--tab-border-active: var(--color-primary);
|
|
23
|
-
--tab-bg-hover: var(--bg-secondary);
|
|
18
|
+
--vd-tab-text: var(--vd-text-secondary);
|
|
19
|
+
--vd-tab-text-hover: var(--vd-text-primary);
|
|
20
|
+
--vd-tab-text-active: var(--vd-color-primary);
|
|
21
|
+
--vd-tab-border: var(--vd-border-color);
|
|
22
|
+
--vd-tab-border-active: var(--vd-color-primary);
|
|
23
|
+
--vd-tab-bg-hover: var(--vd-bg-secondary);
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
/* Dark Theme Overrides */
|
|
27
27
|
[data-theme="dark"] {
|
|
28
|
-
--tab-bg-hover: var(--color-gray-800);
|
|
28
|
+
--vd-tab-bg-hover: var(--vd-color-gray-800);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
@media (prefers-color-scheme: dark) {
|
|
32
32
|
:root:not([data-theme]) {
|
|
33
|
-
--tab-bg-hover: var(--color-gray-800);
|
|
33
|
+
--vd-tab-bg-hover: var(--vd-color-gray-800);
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -45,11 +45,11 @@
|
|
|
45
45
|
.vd-tab-list {
|
|
46
46
|
display: flex;
|
|
47
47
|
flex-wrap: wrap;
|
|
48
|
-
gap: var(--tab-gap);
|
|
48
|
+
gap: var(--vd-tab-gap);
|
|
49
49
|
padding: 0;
|
|
50
50
|
margin: 0;
|
|
51
51
|
list-style: none;
|
|
52
|
-
border-bottom: 1px solid var(--tab-border);
|
|
52
|
+
border-bottom: 1px solid var(--vd-tab-border);
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
/* Tab Item */
|
|
@@ -62,41 +62,41 @@
|
|
|
62
62
|
display: inline-flex;
|
|
63
63
|
align-items: center;
|
|
64
64
|
gap: 0.5rem;
|
|
65
|
-
padding: var(--tab-padding-y) var(--tab-padding-x);
|
|
66
|
-
font-size: var(--font-size-base);
|
|
67
|
-
font-weight: var(--font-weight-medium);
|
|
68
|
-
color: var(--tab-text);
|
|
65
|
+
padding: var(--vd-tab-padding-y) var(--vd-tab-padding-x);
|
|
66
|
+
font-size: var(--vd-font-size-base);
|
|
67
|
+
font-weight: var(--vd-font-weight-medium);
|
|
68
|
+
color: var(--vd-tab-text);
|
|
69
69
|
text-decoration: none;
|
|
70
70
|
background: transparent;
|
|
71
71
|
border: none;
|
|
72
|
-
border-bottom: var(--tab-border-width) solid transparent;
|
|
72
|
+
border-bottom: var(--vd-tab-border-width) solid transparent;
|
|
73
73
|
cursor: pointer;
|
|
74
74
|
transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
|
|
75
75
|
white-space: nowrap;
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
.vd-tab-link:hover {
|
|
79
|
-
color: var(--tab-text-hover);
|
|
80
|
-
background-color: var(--tab-bg-hover);
|
|
79
|
+
color: var(--vd-tab-text-hover);
|
|
80
|
+
background-color: var(--vd-tab-bg-hover);
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
.vd-tab-link:focus-visible {
|
|
84
|
-
outline: 2px solid var(--color-primary);
|
|
84
|
+
outline: 2px solid var(--vd-color-primary);
|
|
85
85
|
outline-offset: -2px;
|
|
86
86
|
}
|
|
87
87
|
|
|
88
88
|
/* Active Tab */
|
|
89
89
|
.vd-tab-link.is-active,
|
|
90
90
|
.vd-tab-item.is-active .vd-tab-link {
|
|
91
|
-
color: var(--tab-text-active);
|
|
92
|
-
border-bottom-color: var(--tab-border-active);
|
|
91
|
+
color: var(--vd-tab-text-active);
|
|
92
|
+
border-bottom-color: var(--vd-tab-border-active);
|
|
93
93
|
}
|
|
94
94
|
|
|
95
95
|
/* Disabled Tab */
|
|
96
96
|
.vd-tab-link.disabled,
|
|
97
97
|
.vd-tab-link:disabled,
|
|
98
98
|
.vd-tab-item.disabled .vd-tab-link {
|
|
99
|
-
color: var(--text-muted);
|
|
99
|
+
color: var(--vd-text-muted);
|
|
100
100
|
cursor: not-allowed;
|
|
101
101
|
pointer-events: none;
|
|
102
102
|
}
|
|
@@ -127,31 +127,31 @@
|
|
|
127
127
|
|
|
128
128
|
/* Tab Variants - Boxed */
|
|
129
129
|
.vd-tabs-boxed .vd-tab-list {
|
|
130
|
-
background-color: var(--bg-secondary);
|
|
130
|
+
background-color: var(--vd-bg-secondary);
|
|
131
131
|
padding: 0.25rem;
|
|
132
|
-
border-radius: var(--btn-border-radius);
|
|
132
|
+
border-radius: var(--vd-btn-border-radius);
|
|
133
133
|
border-bottom: none;
|
|
134
134
|
gap: 0.25rem;
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
.vd-tabs-boxed .vd-tab-link {
|
|
138
|
-
border-radius: var(--btn-border-radius);
|
|
138
|
+
border-radius: var(--vd-btn-border-radius);
|
|
139
139
|
border-bottom: none;
|
|
140
140
|
}
|
|
141
141
|
|
|
142
142
|
.vd-tabs-boxed .vd-tab-link:hover {
|
|
143
|
-
background-color: var(--color-gray-200);
|
|
143
|
+
background-color: var(--vd-color-gray-200);
|
|
144
144
|
}
|
|
145
145
|
|
|
146
146
|
.vd-tabs-boxed .vd-tab-link.is-active,
|
|
147
147
|
.vd-tabs-boxed .vd-tab-item.is-active .vd-tab-link {
|
|
148
|
-
background-color: var(--bg-primary);
|
|
149
|
-
color: var(--text-primary);
|
|
150
|
-
box-shadow: var(--shadow-sm);
|
|
148
|
+
background-color: var(--vd-bg-primary);
|
|
149
|
+
color: var(--vd-text-primary);
|
|
150
|
+
box-shadow: var(--vd-shadow-sm);
|
|
151
151
|
}
|
|
152
152
|
|
|
153
153
|
[data-theme="dark"] .vd-tabs-boxed .vd-tab-link:hover {
|
|
154
|
-
background-color: var(--color-gray-700);
|
|
154
|
+
background-color: var(--vd-color-gray-700);
|
|
155
155
|
}
|
|
156
156
|
|
|
157
157
|
/* Tab Variants - Pills */
|
|
@@ -161,20 +161,20 @@
|
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
.vd-tabs-pills .vd-tab-link {
|
|
164
|
-
border-radius: var(--btn-border-radius);
|
|
164
|
+
border-radius: var(--vd-btn-border-radius);
|
|
165
165
|
border-bottom: none;
|
|
166
166
|
}
|
|
167
167
|
|
|
168
168
|
.vd-tabs-pills .vd-tab-link.is-active,
|
|
169
169
|
.vd-tabs-pills .vd-tab-item.is-active .vd-tab-link {
|
|
170
|
-
background-color: var(--color-primary);
|
|
171
|
-
color: var(--color-white);
|
|
170
|
+
background-color: var(--vd-color-primary);
|
|
171
|
+
color: var(--vd-color-white);
|
|
172
172
|
}
|
|
173
173
|
|
|
174
174
|
/* Tab Variants - Bordered */
|
|
175
175
|
.vd-tabs-bordered .vd-tab-list {
|
|
176
|
-
border: 1px solid var(--tab-border);
|
|
177
|
-
border-radius: var(--btn-border-radius) var(--btn-border-radius) 0 0;
|
|
176
|
+
border: 1px solid var(--vd-tab-border);
|
|
177
|
+
border-radius: var(--vd-btn-border-radius) var(--vd-btn-border-radius) 0 0;
|
|
178
178
|
border-bottom: none;
|
|
179
179
|
}
|
|
180
180
|
|
|
@@ -186,22 +186,22 @@
|
|
|
186
186
|
|
|
187
187
|
.vd-tabs-bordered .vd-tab-link.is-active,
|
|
188
188
|
.vd-tabs-bordered .vd-tab-item.is-active .vd-tab-link {
|
|
189
|
-
border-color: var(--tab-border);
|
|
190
|
-
background-color: var(--bg-primary);
|
|
191
|
-
border-bottom-color: var(--bg-primary);
|
|
192
|
-
border-radius: var(--btn-border-radius) var(--btn-border-radius) 0 0;
|
|
189
|
+
border-color: var(--vd-tab-border);
|
|
190
|
+
background-color: var(--vd-bg-primary);
|
|
191
|
+
border-bottom-color: var(--vd-bg-primary);
|
|
192
|
+
border-radius: var(--vd-btn-border-radius) var(--vd-btn-border-radius) 0 0;
|
|
193
193
|
}
|
|
194
194
|
|
|
195
195
|
.vd-tabs-bordered .vd-tab-content {
|
|
196
|
-
border: 1px solid var(--tab-border);
|
|
196
|
+
border: 1px solid var(--vd-tab-border);
|
|
197
197
|
border-top: none;
|
|
198
|
-
border-radius: 0 0 var(--btn-border-radius) var(--btn-border-radius);
|
|
198
|
+
border-radius: 0 0 var(--vd-btn-border-radius) var(--vd-btn-border-radius);
|
|
199
199
|
padding: 1rem;
|
|
200
200
|
}
|
|
201
201
|
|
|
202
202
|
/* Tab Variants - Underline Only */
|
|
203
203
|
.vd-tabs-underline .vd-tab-list {
|
|
204
|
-
border-bottom: 2px solid var(--tab-border);
|
|
204
|
+
border-bottom: 2px solid var(--vd-tab-border);
|
|
205
205
|
}
|
|
206
206
|
|
|
207
207
|
.vd-tabs-underline .vd-tab-link {
|
|
@@ -210,13 +210,13 @@
|
|
|
210
210
|
|
|
211
211
|
/* Tab Sizes */
|
|
212
212
|
.vd-tabs-sm .vd-tab-link {
|
|
213
|
-
padding: var(--tab-padding-y-sm) var(--tab-padding-x-sm);
|
|
214
|
-
font-size: var(--font-size-sm);
|
|
213
|
+
padding: var(--vd-tab-padding-y-sm) var(--vd-tab-padding-x-sm);
|
|
214
|
+
font-size: var(--vd-font-size-sm);
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
.vd-tabs-lg .vd-tab-link {
|
|
218
|
-
padding: var(--tab-padding-y-lg) var(--tab-padding-x-lg);
|
|
219
|
-
font-size: var(--font-size-lg);
|
|
218
|
+
padding: var(--vd-tab-padding-y-lg) var(--vd-tab-padding-x-lg);
|
|
219
|
+
font-size: var(--vd-font-size-lg);
|
|
220
220
|
}
|
|
221
221
|
|
|
222
222
|
/* Full Width Tabs */
|
|
@@ -251,7 +251,7 @@
|
|
|
251
251
|
.vd-tabs-vertical .vd-tab-list {
|
|
252
252
|
flex-direction: column;
|
|
253
253
|
border-bottom: none;
|
|
254
|
-
border-right: 1px solid var(--tab-border);
|
|
254
|
+
border-right: 1px solid var(--vd-tab-border);
|
|
255
255
|
width: auto;
|
|
256
256
|
flex-shrink: 0;
|
|
257
257
|
}
|
|
@@ -265,14 +265,14 @@
|
|
|
265
265
|
box-sizing: border-box;
|
|
266
266
|
width: 100%;
|
|
267
267
|
border-bottom: none;
|
|
268
|
-
border-right: var(--tab-border-width) solid transparent;
|
|
268
|
+
border-right: var(--vd-tab-border-width) solid transparent;
|
|
269
269
|
justify-content: flex-start;
|
|
270
270
|
}
|
|
271
271
|
|
|
272
272
|
.vd-tabs-vertical .vd-tab-link.is-active,
|
|
273
273
|
.vd-tabs-vertical .vd-tab-item.is-active .vd-tab-link {
|
|
274
274
|
border-bottom-color: transparent;
|
|
275
|
-
border-right-color: var(--tab-border-active);
|
|
275
|
+
border-right-color: var(--vd-tab-border-active);
|
|
276
276
|
}
|
|
277
277
|
|
|
278
278
|
.vd-tabs-vertical .vd-tab-content {
|
|
@@ -297,15 +297,15 @@
|
|
|
297
297
|
height: 1.25rem;
|
|
298
298
|
padding: 0 0.375rem;
|
|
299
299
|
font-size: 0.75rem;
|
|
300
|
-
font-weight: var(--font-weight-semibold);
|
|
300
|
+
font-weight: var(--vd-font-weight-semibold);
|
|
301
301
|
line-height: 1;
|
|
302
|
-
background-color: var(--color-gray-200);
|
|
302
|
+
background-color: var(--vd-color-gray-200);
|
|
303
303
|
border-radius: 9999px;
|
|
304
304
|
}
|
|
305
305
|
|
|
306
306
|
.vd-tab-link.is-active .vd-tab-badge {
|
|
307
|
-
background-color: var(--color-primary-alpha-20);
|
|
308
|
-
color: var(--color-primary);
|
|
307
|
+
background-color: var(--vd-color-primary-alpha-20);
|
|
308
|
+
color: var(--vd-color-primary);
|
|
309
309
|
}
|
|
310
310
|
|
|
311
311
|
/* Scrollable Tabs (for many tabs) */
|