@urbicon-ui/blocks 6.9.0 → 6.10.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/dist/primitives/JourneyTimeline/JourneyTimeline.svelte +178 -95
- package/dist/primitives/JourneyTimeline/index.d.ts +71 -36
- package/dist/primitives/JourneyTimeline/journey-timeline.variants.d.ts +174 -27
- package/dist/primitives/JourneyTimeline/journey-timeline.variants.js +223 -69
- package/dist/primitives/Tab/tab.variants.d.ts +8 -8
- package/package.json +3 -3
|
@@ -1,95 +1,139 @@
|
|
|
1
1
|
import { tv } from '../../utils/variants.js';
|
|
2
2
|
export const journeyTimelineVariants = tv({
|
|
3
3
|
slots: {
|
|
4
|
-
// Root wrapper.
|
|
5
|
-
|
|
6
|
-
// connector is hidden in both orientations — nothing to connect onward to.
|
|
7
|
-
base: 'w-full [&_[data-journey-node]:last-child_[data-journey-connector]]:hidden',
|
|
4
|
+
// Root wrapper. Hosts the rail and — in panel mode — the shared readout.
|
|
5
|
+
base: 'w-full',
|
|
8
6
|
// The ordered list of nodes. `flex-col` vertical, `flex-row` horizontal.
|
|
9
7
|
rail: 'flex list-none m-0 p-0',
|
|
10
|
-
// A single node <li>.
|
|
8
|
+
// A single node <li>. Vertical: grid of [meta?] [marker column] [content];
|
|
9
|
+
// horizontal: flex row of trigger + connector group.
|
|
11
10
|
node: 'group/node',
|
|
12
|
-
//
|
|
13
|
-
//
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
'
|
|
17
|
-
'transition-
|
|
18
|
-
'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 focus-visible:ring-offset-2 focus-visible:ring-offset-surface-base'
|
|
11
|
+
// Chronicle-axis column (vertical): right-aligned, tabular — times, dates,
|
|
12
|
+
// versions. Rendered only when any node provides `meta` (or a meta snippet).
|
|
13
|
+
metaColumn: 'shrink-0 text-right',
|
|
14
|
+
meta: [
|
|
15
|
+
'font-mono tabular-nums leading-tight text-text-tertiary',
|
|
16
|
+
'transition-colors duration-[var(--blocks-duration-fast)]'
|
|
19
17
|
],
|
|
20
|
-
// The
|
|
18
|
+
// The spine: marker + connector line. Vertical: a narrow column the line
|
|
19
|
+
// grows down inside; horizontal: a full-width row the line grows right in.
|
|
20
|
+
markerColumn: 'flex items-center',
|
|
21
|
+
// The status dot. Deliberately small — the line is the protagonist, the
|
|
22
|
+
// dots are punctuation (contrast: Stepper's large glyph discs).
|
|
21
23
|
marker: [
|
|
22
|
-
'
|
|
23
|
-
'transition-[
|
|
24
|
+
'box-border shrink-0 rounded-commit border-2',
|
|
25
|
+
'transition-[background-color,border-color,box-shadow] duration-[var(--blocks-duration-fast)]'
|
|
24
26
|
],
|
|
25
|
-
//
|
|
26
|
-
//
|
|
27
|
-
// column (a thin vertical line) instead of *across* it (a fat block).
|
|
28
|
-
connectorColumn: 'flex flex-col shrink-0 items-center',
|
|
29
|
-
// The connecting line between markers.
|
|
27
|
+
// The connecting line. Drawn with borders so `connectorStyle` can switch
|
|
28
|
+
// solid/dashed/dotted — the connector carries meaning, not just geometry.
|
|
30
29
|
connector: [
|
|
31
|
-
'
|
|
32
|
-
'transition-[
|
|
30
|
+
'border-border-default',
|
|
31
|
+
'transition-[border-color] duration-[var(--blocks-duration-normal)]'
|
|
32
|
+
],
|
|
33
|
+
// Content cell (vertical): card + segment label.
|
|
34
|
+
content: 'min-w-0',
|
|
35
|
+
// The focus surface around header + inline detail. Transparent at rest,
|
|
36
|
+
// elevated card when focused inline, selected tint when focused in panel
|
|
37
|
+
// mode — never a bare full-width grey block.
|
|
38
|
+
card: [
|
|
39
|
+
'rounded-contain border border-transparent',
|
|
40
|
+
'transition-[background-color,border-color,box-shadow] duration-[var(--blocks-duration-normal)] ease-[var(--blocks-ease-gentle)]'
|
|
33
41
|
],
|
|
34
|
-
//
|
|
35
|
-
|
|
42
|
+
// The interactive header — title + subtitle. A <button> for focusable
|
|
43
|
+
// nodes, a plain <div> for pure waypoints (focusable === false).
|
|
44
|
+
trigger: [
|
|
45
|
+
'flex w-full appearance-none flex-col items-start gap-0.5 border-0 bg-transparent p-0 text-left',
|
|
46
|
+
'rounded-contain',
|
|
47
|
+
'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/50 focus-visible:ring-offset-2 focus-visible:ring-offset-surface-base'
|
|
48
|
+
],
|
|
49
|
+
labelGroup: 'flex min-w-0 flex-col',
|
|
36
50
|
title: [
|
|
37
|
-
'font-medium leading-tight
|
|
51
|
+
'font-medium leading-tight',
|
|
38
52
|
'transition-colors duration-[var(--blocks-duration-fast)]'
|
|
39
53
|
],
|
|
40
|
-
subtitle: 'text-text-tertiary leading-tight mt-0.5
|
|
41
|
-
//
|
|
42
|
-
|
|
54
|
+
subtitle: 'text-text-tertiary leading-tight mt-0.5',
|
|
55
|
+
// Label for the stretch between two nodes (duration, transport, gap…).
|
|
56
|
+
segment: 'text-text-quaternary leading-tight',
|
|
43
57
|
// Grid-rows collapse wrapper (0fr → 1fr). Reduced-motion safe: the duration
|
|
44
58
|
// token collapses to 1ms under prefers-reduced-motion (interaction.css).
|
|
45
59
|
detail: [
|
|
46
60
|
'grid',
|
|
47
61
|
'transition-[grid-template-rows] duration-[var(--blocks-duration-normal)] ease-[var(--blocks-ease-smooth)]'
|
|
48
62
|
],
|
|
49
|
-
detailInner: '
|
|
63
|
+
detailInner: 'min-h-0 overflow-hidden',
|
|
50
64
|
detailContent: 'text-text-secondary',
|
|
51
|
-
//
|
|
52
|
-
panel:
|
|
65
|
+
// The stable readout (detail="panel" and every horizontal timeline).
|
|
66
|
+
panel: [
|
|
67
|
+
'text-text-secondary border border-border-default bg-surface-elevated rounded-contain',
|
|
68
|
+
'shadow-[var(--blocks-shadow-md)]'
|
|
69
|
+
]
|
|
53
70
|
},
|
|
54
71
|
variants: {
|
|
55
72
|
orientation: {
|
|
56
73
|
vertical: {
|
|
57
|
-
rail: 'flex-col'
|
|
74
|
+
rail: 'flex-col',
|
|
75
|
+
node: 'grid',
|
|
76
|
+
markerColumn: 'flex-col',
|
|
77
|
+
connector: 'my-1 w-0 min-h-3 flex-1 border-l-2',
|
|
78
|
+
segment: 'flex items-center'
|
|
58
79
|
},
|
|
59
80
|
horizontal: {
|
|
60
|
-
// Column layout so the shared
|
|
81
|
+
// Column layout so the shared panel sits below the rail.
|
|
61
82
|
base: 'flex flex-col',
|
|
62
83
|
rail: 'flex-row items-start',
|
|
63
|
-
//
|
|
64
|
-
node
|
|
65
|
-
|
|
66
|
-
|
|
84
|
+
// Stacked station: meta row above the spine, label pill below. Every
|
|
85
|
+
// node but the last stretches so the spine distributes the stations.
|
|
86
|
+
node: 'flex flex-col [&:not(:last-child)]:flex-1',
|
|
87
|
+
// Visual order is meta → spine → labels, but the DOM keeps the trigger
|
|
88
|
+
// before the spine so a segment label is read *after* its node.
|
|
89
|
+
metaColumn: 'order-1 text-left',
|
|
90
|
+
markerColumn: 'order-2 w-full flex-row',
|
|
91
|
+
// Shrink-to-fit pill around the labels only — the marker sits on the
|
|
92
|
+
// spine above, so the whole rail reads as stations on one line.
|
|
93
|
+
trigger: 'order-3 w-auto self-start',
|
|
94
|
+
connector: 'h-0 min-w-3 flex-1 border-t-2',
|
|
95
|
+
// Segment labels sit *in* the line (line — label — line); they widen
|
|
96
|
+
// the gap instead of overlapping the next station's marker.
|
|
97
|
+
segment: 'shrink-0 whitespace-nowrap',
|
|
98
|
+
panel: 'mt-4 w-full'
|
|
67
99
|
}
|
|
68
100
|
},
|
|
69
101
|
size: {
|
|
70
102
|
sm: {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
103
|
+
meta: 'text-[11px]',
|
|
104
|
+
marker: 'size-2.5',
|
|
105
|
+
node: 'gap-x-2.5',
|
|
106
|
+
card: '-mx-1.5 px-1.5 py-1.5',
|
|
74
107
|
title: 'text-xs',
|
|
75
108
|
subtitle: 'text-[11px]',
|
|
76
|
-
|
|
109
|
+
segment: 'text-[11px]',
|
|
110
|
+
content: 'pb-4',
|
|
111
|
+
detailContent: 'text-xs pt-2',
|
|
112
|
+
panel: 'p-3 text-xs'
|
|
77
113
|
},
|
|
78
114
|
md: {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
115
|
+
meta: 'text-xs',
|
|
116
|
+
marker: 'size-3',
|
|
117
|
+
node: 'gap-x-3',
|
|
118
|
+
card: '-mx-2 px-2 py-2',
|
|
82
119
|
title: 'text-sm',
|
|
83
120
|
subtitle: 'text-xs',
|
|
84
|
-
|
|
121
|
+
segment: 'text-xs',
|
|
122
|
+
content: 'pb-5',
|
|
123
|
+
detailContent: 'text-sm pt-2.5',
|
|
124
|
+
panel: 'p-4 text-sm'
|
|
85
125
|
},
|
|
86
126
|
lg: {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
127
|
+
meta: 'text-sm',
|
|
128
|
+
marker: 'size-3.5',
|
|
129
|
+
node: 'gap-x-3.5',
|
|
130
|
+
card: '-mx-2.5 px-2.5 py-2.5',
|
|
90
131
|
title: 'text-base',
|
|
91
132
|
subtitle: 'text-sm',
|
|
92
|
-
|
|
133
|
+
segment: 'text-sm',
|
|
134
|
+
content: 'pb-6',
|
|
135
|
+
detailContent: 'text-base pt-3',
|
|
136
|
+
panel: 'p-5 text-base'
|
|
93
137
|
}
|
|
94
138
|
},
|
|
95
139
|
// Marker colour + title tone per journey status. Mirrors the semantic intent
|
|
@@ -97,71 +141,178 @@ export const journeyTimelineVariants = tv({
|
|
|
97
141
|
// Progress and Stepper.
|
|
98
142
|
status: {
|
|
99
143
|
complete: {
|
|
100
|
-
marker: '
|
|
144
|
+
marker: 'bg-success border-success',
|
|
145
|
+
title: 'text-text-primary'
|
|
101
146
|
},
|
|
102
147
|
active: {
|
|
103
|
-
marker: '
|
|
148
|
+
marker: 'bg-primary border-primary ring-4 ring-primary/15',
|
|
104
149
|
title: 'text-text-primary'
|
|
105
150
|
},
|
|
106
151
|
pending: {
|
|
107
|
-
marker: '
|
|
152
|
+
marker: 'bg-surface-base border-border-strong',
|
|
153
|
+
title: 'text-text-secondary'
|
|
108
154
|
},
|
|
109
155
|
blocked: {
|
|
110
|
-
marker: '
|
|
156
|
+
marker: 'bg-danger border-danger',
|
|
111
157
|
title: 'text-danger'
|
|
112
158
|
},
|
|
113
159
|
skipped: {
|
|
114
|
-
marker: '
|
|
160
|
+
marker: 'bg-surface-subtle border-border-subtle opacity-80',
|
|
115
161
|
title: 'text-text-tertiary'
|
|
116
162
|
}
|
|
117
163
|
},
|
|
118
|
-
// The currently
|
|
164
|
+
// The currently focused node. Distinct from DOM focus (focus-visible ring).
|
|
119
165
|
focused: {
|
|
120
166
|
true: {
|
|
121
|
-
|
|
122
|
-
title: 'text-text-primary
|
|
167
|
+
meta: 'text-text-primary',
|
|
168
|
+
title: 'font-semibold text-text-primary'
|
|
123
169
|
},
|
|
124
170
|
false: {}
|
|
125
171
|
},
|
|
126
172
|
// Focusable nodes react to hover + show a pointer; pure waypoints do not.
|
|
127
173
|
interactive: {
|
|
128
174
|
true: {
|
|
129
|
-
trigger: 'cursor-pointer
|
|
175
|
+
trigger: 'cursor-pointer'
|
|
130
176
|
},
|
|
131
177
|
false: {
|
|
132
178
|
trigger: 'cursor-default'
|
|
133
179
|
}
|
|
134
180
|
},
|
|
135
|
-
// The connector
|
|
136
|
-
|
|
181
|
+
// The connector leaving a completed node reads as "travelled".
|
|
182
|
+
travelled: {
|
|
137
183
|
true: {
|
|
138
|
-
connector: '
|
|
184
|
+
connector: 'border-success'
|
|
139
185
|
},
|
|
140
186
|
false: {}
|
|
187
|
+
},
|
|
188
|
+
// Per-node line style — solid ride, dashed/dotted transfer or gap.
|
|
189
|
+
connectorStyle: {
|
|
190
|
+
solid: { connector: 'border-solid' },
|
|
191
|
+
dashed: { connector: 'border-dashed' },
|
|
192
|
+
dotted: { connector: 'border-dotted' }
|
|
193
|
+
},
|
|
194
|
+
// Where the focused detail lives (vertical only; horizontal is always panel).
|
|
195
|
+
detail: {
|
|
196
|
+
inline: {},
|
|
197
|
+
panel: {}
|
|
198
|
+
},
|
|
199
|
+
// Whether the chronicle axis (meta rail) is rendered — adds the grid column.
|
|
200
|
+
withMeta: {
|
|
201
|
+
true: { node: 'grid-cols-[auto_auto_minmax(0,1fr)]' },
|
|
202
|
+
false: { node: 'grid-cols-[auto_minmax(0,1fr)]' }
|
|
141
203
|
}
|
|
142
204
|
},
|
|
143
205
|
compoundVariants: [
|
|
144
|
-
//
|
|
206
|
+
// Size geometry that only applies to one orientation. Vertical: fixed
|
|
207
|
+
// meta/marker column widths + baseline offsets that align dot and title;
|
|
208
|
+
// horizontal: spine gaps + the label pill's optical left edge (-mx
|
|
209
|
+
// compensates px so title, marker and meta share one left line).
|
|
210
|
+
{
|
|
211
|
+
orientation: 'vertical',
|
|
212
|
+
size: 'sm',
|
|
213
|
+
class: {
|
|
214
|
+
metaColumn: 'w-10 pt-1.5',
|
|
215
|
+
markerColumn: 'w-3.5',
|
|
216
|
+
marker: 'mt-2',
|
|
217
|
+
segment: 'mt-1.5 gap-1'
|
|
218
|
+
}
|
|
219
|
+
},
|
|
145
220
|
{
|
|
146
221
|
orientation: 'vertical',
|
|
222
|
+
size: 'md',
|
|
223
|
+
class: {
|
|
224
|
+
metaColumn: 'w-12 pt-2',
|
|
225
|
+
markerColumn: 'w-4',
|
|
226
|
+
marker: 'mt-2.5',
|
|
227
|
+
segment: 'mt-2 gap-1.5'
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
orientation: 'vertical',
|
|
232
|
+
size: 'lg',
|
|
233
|
+
class: {
|
|
234
|
+
metaColumn: 'w-14 pt-2.5',
|
|
235
|
+
markerColumn: 'w-5',
|
|
236
|
+
marker: 'mt-3',
|
|
237
|
+
segment: 'mt-2.5 gap-2'
|
|
238
|
+
}
|
|
239
|
+
},
|
|
240
|
+
// The fixed spine height keeps every marker on one line whether or not the
|
|
241
|
+
// station's outgoing segment carries a (taller) text label. The metaColumn
|
|
242
|
+
// min-height is the same guarantee for the chronicle row: it holds even
|
|
243
|
+
// when a consumer `meta` snippet renders nothing for some stations.
|
|
244
|
+
{
|
|
245
|
+
orientation: 'horizontal',
|
|
246
|
+
size: 'sm',
|
|
147
247
|
class: {
|
|
148
|
-
|
|
248
|
+
node: 'gap-y-0.5',
|
|
249
|
+
metaColumn: 'min-h-3.5',
|
|
250
|
+
markerColumn: 'h-4 gap-1 pr-1',
|
|
251
|
+
trigger: '-mx-1.5 px-1.5 py-1'
|
|
149
252
|
}
|
|
150
253
|
},
|
|
151
|
-
// Horizontal connector geometry: a thin line filling the gap to the next marker.
|
|
152
254
|
{
|
|
153
255
|
orientation: 'horizontal',
|
|
256
|
+
size: 'md',
|
|
257
|
+
class: {
|
|
258
|
+
node: 'gap-y-1',
|
|
259
|
+
metaColumn: 'min-h-4',
|
|
260
|
+
markerColumn: 'h-4 gap-1.5 pr-1.5',
|
|
261
|
+
trigger: '-mx-2 px-2 py-1.5'
|
|
262
|
+
}
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
orientation: 'horizontal',
|
|
266
|
+
size: 'lg',
|
|
267
|
+
class: {
|
|
268
|
+
node: 'gap-y-1',
|
|
269
|
+
metaColumn: 'min-h-4.5',
|
|
270
|
+
markerColumn: 'h-5 gap-2 pr-2',
|
|
271
|
+
trigger: '-mx-2.5 px-2.5 py-2'
|
|
272
|
+
}
|
|
273
|
+
},
|
|
274
|
+
// Vertical + panel: two-column layout on wide viewports; on narrow ones the
|
|
275
|
+
// readout docks to the viewport bottom while the rail scrolls behind it.
|
|
276
|
+
{
|
|
277
|
+
orientation: 'vertical',
|
|
278
|
+
detail: 'panel',
|
|
154
279
|
class: {
|
|
155
|
-
|
|
280
|
+
base: 'sm:grid sm:grid-cols-[minmax(0,1fr)_minmax(16rem,20rem)] sm:items-start sm:gap-x-6',
|
|
281
|
+
panel: 'max-sm:sticky max-sm:bottom-4 max-sm:z-[var(--z-docked)] max-sm:mt-4 sm:sticky sm:top-4'
|
|
156
282
|
}
|
|
157
283
|
},
|
|
158
|
-
//
|
|
284
|
+
// Focused inline node: the elevated card — the focus IS a surface change,
|
|
285
|
+
// not a grey backdrop.
|
|
159
286
|
{
|
|
160
|
-
|
|
287
|
+
detail: 'inline',
|
|
288
|
+
focused: true,
|
|
289
|
+
class: {
|
|
290
|
+
card: 'border-border-default bg-surface-elevated shadow-[var(--blocks-shadow-md)]'
|
|
291
|
+
}
|
|
292
|
+
},
|
|
293
|
+
// Focused row while the detail lives in the panel: quiet selected tint.
|
|
294
|
+
{
|
|
295
|
+
orientation: 'vertical',
|
|
296
|
+
detail: 'panel',
|
|
161
297
|
focused: true,
|
|
162
298
|
class: {
|
|
163
|
-
|
|
299
|
+
card: 'bg-surface-selected'
|
|
164
300
|
}
|
|
301
|
+
},
|
|
302
|
+
{ orientation: 'horizontal', focused: true, class: { trigger: 'bg-surface-selected' } },
|
|
303
|
+
// Hover affordance only on non-focused interactive nodes (a focused inline
|
|
304
|
+
// card must not flicker back to the hover tint).
|
|
305
|
+
{
|
|
306
|
+
orientation: 'vertical',
|
|
307
|
+
interactive: true,
|
|
308
|
+
focused: false,
|
|
309
|
+
class: { card: 'hover:bg-surface-hover' }
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
orientation: 'horizontal',
|
|
313
|
+
interactive: true,
|
|
314
|
+
focused: false,
|
|
315
|
+
class: { trigger: 'hover:bg-surface-hover' }
|
|
165
316
|
}
|
|
166
317
|
],
|
|
167
318
|
defaultVariants: {
|
|
@@ -170,6 +321,9 @@ export const journeyTimelineVariants = tv({
|
|
|
170
321
|
status: 'pending',
|
|
171
322
|
focused: false,
|
|
172
323
|
interactive: true,
|
|
173
|
-
|
|
324
|
+
travelled: false,
|
|
325
|
+
connectorStyle: 'solid',
|
|
326
|
+
detail: 'inline',
|
|
327
|
+
withMeta: false
|
|
174
328
|
}
|
|
175
329
|
});
|
|
@@ -62,7 +62,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
62
62
|
};
|
|
63
63
|
}> | undefined) => {
|
|
64
64
|
base: (props?: ({
|
|
65
|
-
variant?: "line" | "
|
|
65
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
66
66
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
67
67
|
size?: "sm" | "md" | "lg" | undefined;
|
|
68
68
|
fullWidth?: boolean | undefined;
|
|
@@ -72,7 +72,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
72
72
|
className?: string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | /*elided*/ any | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined;
|
|
73
73
|
}) | undefined) => string;
|
|
74
74
|
list: (props?: ({
|
|
75
|
-
variant?: "line" | "
|
|
75
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
76
76
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
77
77
|
size?: "sm" | "md" | "lg" | undefined;
|
|
78
78
|
fullWidth?: boolean | undefined;
|
|
@@ -82,7 +82,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
82
82
|
className?: string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | /*elided*/ any | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined;
|
|
83
83
|
}) | undefined) => string;
|
|
84
84
|
trigger: (props?: ({
|
|
85
|
-
variant?: "line" | "
|
|
85
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
86
86
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
87
87
|
size?: "sm" | "md" | "lg" | undefined;
|
|
88
88
|
fullWidth?: boolean | undefined;
|
|
@@ -92,7 +92,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
92
92
|
className?: string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | /*elided*/ any | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined;
|
|
93
93
|
}) | undefined) => string;
|
|
94
94
|
icon: (props?: ({
|
|
95
|
-
variant?: "line" | "
|
|
95
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
96
96
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
97
97
|
size?: "sm" | "md" | "lg" | undefined;
|
|
98
98
|
fullWidth?: boolean | undefined;
|
|
@@ -102,7 +102,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
102
102
|
className?: string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | /*elided*/ any | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined;
|
|
103
103
|
}) | undefined) => string;
|
|
104
104
|
label: (props?: ({
|
|
105
|
-
variant?: "line" | "
|
|
105
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
106
106
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
107
107
|
size?: "sm" | "md" | "lg" | undefined;
|
|
108
108
|
fullWidth?: boolean | undefined;
|
|
@@ -112,7 +112,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
112
112
|
className?: string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | /*elided*/ any | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined;
|
|
113
113
|
}) | undefined) => string;
|
|
114
114
|
badge: (props?: ({
|
|
115
|
-
variant?: "line" | "
|
|
115
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
116
116
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
117
117
|
size?: "sm" | "md" | "lg" | undefined;
|
|
118
118
|
fullWidth?: boolean | undefined;
|
|
@@ -122,7 +122,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
122
122
|
className?: string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | /*elided*/ any | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined;
|
|
123
123
|
}) | undefined) => string;
|
|
124
124
|
panel: (props?: ({
|
|
125
|
-
variant?: "line" | "
|
|
125
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
126
126
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
127
127
|
size?: "sm" | "md" | "lg" | undefined;
|
|
128
128
|
fullWidth?: boolean | undefined;
|
|
@@ -132,7 +132,7 @@ export declare const tabVariants: (props?: import("../../utils/variants.js").TVP
|
|
|
132
132
|
className?: string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | (string | false | /*elided*/ any | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined)[] | null | undefined;
|
|
133
133
|
}) | undefined) => string;
|
|
134
134
|
indicator: (props?: ({
|
|
135
|
-
variant?: "line" | "
|
|
135
|
+
variant?: "line" | "solid" | "pills" | "enclosed" | undefined;
|
|
136
136
|
orientation?: "horizontal" | "vertical" | undefined;
|
|
137
137
|
size?: "sm" | "md" | "lg" | undefined;
|
|
138
138
|
fullWidth?: boolean | undefined;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@urbicon-ui/blocks",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.10.1",
|
|
4
4
|
"description": "Svelte 5 UI component library with Tailwind CSS 4, OKLCH design tokens and zero runtime dependencies",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -91,8 +91,8 @@
|
|
|
91
91
|
"@sveltejs/package": "^2.5.8",
|
|
92
92
|
"@sveltejs/vite-plugin-svelte": "^7.0.0",
|
|
93
93
|
"@tailwindcss/vite": "^4.3.1",
|
|
94
|
-
"@urbicon-ui/i18n": "6.
|
|
95
|
-
"@urbicon-ui/shared-types": "6.
|
|
94
|
+
"@urbicon-ui/i18n": "6.10.1",
|
|
95
|
+
"@urbicon-ui/shared-types": "6.10.1",
|
|
96
96
|
"prettier": "^3.8.4",
|
|
97
97
|
"prettier-plugin-svelte": "^4.1.1",
|
|
98
98
|
"prettier-plugin-tailwindcss": "^0.8.0",
|