@dashforge/tw 1.1.1 → 1.2.0
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/CHANGELOG.md +113 -0
- package/README.md +45 -0
- package/dist/index.esm.js +3985 -476
- package/dist/src/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/src/components/Accordion/accordion.types.d.ts +7 -0
- package/dist/src/components/Accordion/accordion.types.d.ts.map +1 -1
- package/dist/src/components/Alert/Alert.d.ts +1 -1
- package/dist/src/components/Alert/Alert.d.ts.map +1 -1
- package/dist/src/components/Alert/alert.types.d.ts +17 -0
- package/dist/src/components/Alert/alert.types.d.ts.map +1 -1
- package/dist/src/components/AppShell/AppShell.d.ts.map +1 -1
- package/dist/src/components/AppShell/appShell.types.d.ts +7 -0
- package/dist/src/components/AppShell/appShell.types.d.ts.map +1 -1
- package/dist/src/components/Autocomplete/Autocomplete.d.ts.map +1 -1
- package/dist/src/components/Autocomplete/autocomplete.types.d.ts +47 -1
- package/dist/src/components/Autocomplete/autocomplete.types.d.ts.map +1 -1
- package/dist/src/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/src/components/Avatar/avatar.types.d.ts +17 -1
- package/dist/src/components/Avatar/avatar.types.d.ts.map +1 -1
- package/dist/src/components/Badge/Badge.d.ts.map +1 -1
- package/dist/src/components/Badge/badge.types.d.ts +27 -2
- package/dist/src/components/Badge/badge.types.d.ts.map +1 -1
- package/dist/src/components/Box/Box.d.ts.map +1 -1
- package/dist/src/components/Box/box.types.d.ts +64 -1
- package/dist/src/components/Box/box.types.d.ts.map +1 -1
- package/dist/src/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/dist/src/components/Breadcrumbs/breadcrumbs.types.d.ts +26 -1
- package/dist/src/components/Breadcrumbs/breadcrumbs.types.d.ts.map +1 -1
- package/dist/src/components/Button/Button.d.ts.map +1 -1
- package/dist/src/components/Button/button.types.d.ts +53 -1
- package/dist/src/components/Button/button.types.d.ts.map +1 -1
- package/dist/src/components/Calendar/Calendar.d.ts.map +1 -1
- package/dist/src/components/Calendar/calendar.types.d.ts +16 -0
- package/dist/src/components/Calendar/calendar.types.d.ts.map +1 -1
- package/dist/src/components/Card/Card.d.ts.map +1 -1
- package/dist/src/components/Card/card.types.d.ts +17 -0
- package/dist/src/components/Card/card.types.d.ts.map +1 -1
- package/dist/src/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/src/components/Checkbox/checkbox.types.d.ts +19 -1
- package/dist/src/components/Checkbox/checkbox.types.d.ts.map +1 -1
- package/dist/src/components/Chip/Chip.d.ts.map +1 -1
- package/dist/src/components/Chip/chip.types.d.ts +40 -1
- package/dist/src/components/Chip/chip.types.d.ts.map +1 -1
- package/dist/src/components/ConfirmDialog/ConfirmDialog.d.ts.map +1 -1
- package/dist/src/components/ConfirmDialog/confirmDialog.types.d.ts +30 -2
- package/dist/src/components/ConfirmDialog/confirmDialog.types.d.ts.map +1 -1
- package/dist/src/components/Container/Container.d.ts.map +1 -1
- package/dist/src/components/Container/container.types.d.ts +29 -1
- package/dist/src/components/Container/container.types.d.ts.map +1 -1
- package/dist/src/components/DataGrid/DataGrid.d.ts +1 -1
- package/dist/src/components/DataGrid/DataGrid.d.ts.map +1 -1
- package/dist/src/components/DataGrid/dataGrid.types.d.ts +124 -10
- package/dist/src/components/DataGrid/dataGrid.types.d.ts.map +1 -1
- package/dist/src/components/DatePicker/DatePicker.d.ts +1 -1
- package/dist/src/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/src/components/DatePicker/datePicker.types.d.ts +18 -0
- package/dist/src/components/DatePicker/datePicker.types.d.ts.map +1 -1
- package/dist/src/components/DateRangePicker/DateRangePicker.d.ts +1 -1
- package/dist/src/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
- package/dist/src/components/DateRangePicker/dateRangePicker.types.d.ts +18 -0
- package/dist/src/components/DateRangePicker/dateRangePicker.types.d.ts.map +1 -1
- package/dist/src/components/DateTimePicker/DateTimePicker.d.ts +1 -1
- package/dist/src/components/DateTimePicker/DateTimePicker.d.ts.map +1 -1
- package/dist/src/components/DateTimePicker/dateTimePicker.types.d.ts +20 -0
- package/dist/src/components/DateTimePicker/dateTimePicker.types.d.ts.map +1 -1
- package/dist/src/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/src/components/Dialog/dialog.types.d.ts +25 -1
- package/dist/src/components/Dialog/dialog.types.d.ts.map +1 -1
- package/dist/src/components/Divider/Divider.d.ts.map +1 -1
- package/dist/src/components/Divider/divider.types.d.ts +37 -1
- package/dist/src/components/Divider/divider.types.d.ts.map +1 -1
- package/dist/src/components/Drawer/Drawer.d.ts +21 -0
- package/dist/src/components/Drawer/Drawer.d.ts.map +1 -0
- package/dist/src/components/Drawer/drawer.types.d.ts +311 -0
- package/dist/src/components/Drawer/drawer.types.d.ts.map +1 -0
- package/dist/src/components/Drawer/drawer.variants.d.ts +177 -0
- package/dist/src/components/Drawer/drawer.variants.d.ts.map +1 -0
- package/dist/src/components/Grid/Grid.d.ts.map +1 -1
- package/dist/src/components/Grid/grid.types.d.ts +16 -0
- package/dist/src/components/Grid/grid.types.d.ts.map +1 -1
- package/dist/src/components/IconButton/IconButton.d.ts.map +1 -1
- package/dist/src/components/IconButton/iconButton.types.d.ts +40 -1
- package/dist/src/components/IconButton/iconButton.types.d.ts.map +1 -1
- package/dist/src/components/LeftNav/LeftNav.d.ts.map +1 -1
- package/dist/src/components/LeftNav/leftNav.types.d.ts +26 -6
- package/dist/src/components/LeftNav/leftNav.types.d.ts.map +1 -1
- package/dist/src/components/Link/Link.d.ts +15 -0
- package/dist/src/components/Link/Link.d.ts.map +1 -0
- package/dist/src/components/Link/link.types.d.ts +169 -0
- package/dist/src/components/Link/link.types.d.ts.map +1 -0
- package/dist/src/components/Link/link.variants.d.ts +107 -0
- package/dist/src/components/Link/link.variants.d.ts.map +1 -0
- package/dist/src/components/Menu/Menu.d.ts +1 -1
- package/dist/src/components/Menu/Menu.d.ts.map +1 -1
- package/dist/src/components/Menu/menu.types.d.ts +20 -0
- package/dist/src/components/Menu/menu.types.d.ts.map +1 -1
- package/dist/src/components/NumberField/NumberField.d.ts.map +1 -1
- package/dist/src/components/NumberField/numberField.types.d.ts +47 -1
- package/dist/src/components/NumberField/numberField.types.d.ts.map +1 -1
- package/dist/src/components/OTPField/OTPField.d.ts.map +1 -1
- package/dist/src/components/OTPField/otpField.types.d.ts +35 -1
- package/dist/src/components/OTPField/otpField.types.d.ts.map +1 -1
- package/dist/src/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/src/components/Pagination/pagination.types.d.ts +26 -1
- package/dist/src/components/Pagination/pagination.types.d.ts.map +1 -1
- package/dist/src/components/Popover/Popover.d.ts.map +1 -1
- package/dist/src/components/Popover/popover.types.d.ts +29 -0
- package/dist/src/components/Popover/popover.types.d.ts.map +1 -1
- package/dist/src/components/Progress/Progress.d.ts +20 -0
- package/dist/src/components/Progress/Progress.d.ts.map +1 -0
- package/dist/src/components/Progress/progress.types.d.ts +200 -0
- package/dist/src/components/Progress/progress.types.d.ts.map +1 -0
- package/dist/src/components/Progress/progress.variants.d.ts +224 -0
- package/dist/src/components/Progress/progress.variants.d.ts.map +1 -0
- package/dist/src/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/src/components/RadioGroup/radioGroup.types.d.ts +25 -1
- package/dist/src/components/RadioGroup/radioGroup.types.d.ts.map +1 -1
- package/dist/src/components/Select/Select.d.ts +14 -0
- package/dist/src/components/Select/Select.d.ts.map +1 -0
- package/dist/src/components/Select/select.types.d.ts +272 -0
- package/dist/src/components/Select/select.types.d.ts.map +1 -0
- package/dist/src/components/Select/select.variants.d.ts +204 -0
- package/dist/src/components/Select/select.variants.d.ts.map +1 -0
- package/dist/src/components/Skeleton/Skeleton.d.ts.map +1 -1
- package/dist/src/components/Skeleton/skeleton.types.d.ts +25 -1
- package/dist/src/components/Skeleton/skeleton.types.d.ts.map +1 -1
- package/dist/src/components/Slider/Slider.d.ts +15 -0
- package/dist/src/components/Slider/Slider.d.ts.map +1 -0
- package/dist/src/components/Slider/slider.types.d.ts +268 -0
- package/dist/src/components/Slider/slider.types.d.ts.map +1 -0
- package/dist/src/components/Slider/slider.variants.d.ts +313 -0
- package/dist/src/components/Slider/slider.variants.d.ts.map +1 -0
- package/dist/src/components/Snackbar/Snackbar.d.ts.map +1 -1
- package/dist/src/components/Snackbar/snackbar.types.d.ts +29 -5
- package/dist/src/components/Snackbar/snackbar.types.d.ts.map +1 -1
- package/dist/src/components/Spinner/Spinner.d.ts.map +1 -1
- package/dist/src/components/Spinner/spinner.types.d.ts +22 -2
- package/dist/src/components/Spinner/spinner.types.d.ts.map +1 -1
- package/dist/src/components/Stack/Stack.d.ts.map +1 -1
- package/dist/src/components/Stack/stack.types.d.ts +53 -2
- package/dist/src/components/Stack/stack.types.d.ts.map +1 -1
- package/dist/src/components/Stack/stack.variants.d.ts +23 -0
- package/dist/src/components/Stack/stack.variants.d.ts.map +1 -1
- package/dist/src/components/Stepper/Step.d.ts +30 -0
- package/dist/src/components/Stepper/Step.d.ts.map +1 -0
- package/dist/src/components/Stepper/Stepper.d.ts +15 -0
- package/dist/src/components/Stepper/Stepper.d.ts.map +1 -0
- package/dist/src/components/Stepper/StepperContext.d.ts +8 -0
- package/dist/src/components/Stepper/StepperContext.d.ts.map +1 -0
- package/dist/src/components/Stepper/stepper.types.d.ts +358 -0
- package/dist/src/components/Stepper/stepper.types.d.ts.map +1 -0
- package/dist/src/components/Stepper/stepper.variants.d.ts +253 -0
- package/dist/src/components/Stepper/stepper.variants.d.ts.map +1 -0
- package/dist/src/components/Stepper/useStep.d.ts +53 -0
- package/dist/src/components/Stepper/useStep.d.ts.map +1 -0
- package/dist/src/components/Switch/Switch.d.ts.map +1 -1
- package/dist/src/components/Switch/switch.types.d.ts +44 -1
- package/dist/src/components/Switch/switch.types.d.ts.map +1 -1
- package/dist/src/components/Table/Table.d.ts +1 -1
- package/dist/src/components/Table/Table.d.ts.map +1 -1
- package/dist/src/components/Table/table.types.d.ts +103 -8
- package/dist/src/components/Table/table.types.d.ts.map +1 -1
- package/dist/src/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/src/components/Tabs/tabs.types.d.ts +26 -1
- package/dist/src/components/Tabs/tabs.types.d.ts.map +1 -1
- package/dist/src/components/TextField/TextField.d.ts.map +1 -1
- package/dist/src/components/TextField/textField.types.d.ts +30 -1
- package/dist/src/components/TextField/textField.types.d.ts.map +1 -1
- package/dist/src/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/src/components/Textarea/textarea.types.d.ts +51 -1
- package/dist/src/components/Textarea/textarea.types.d.ts.map +1 -1
- package/dist/src/components/TimePicker/TimePicker.d.ts +1 -1
- package/dist/src/components/TimePicker/TimePicker.d.ts.map +1 -1
- package/dist/src/components/TimePicker/timePicker.types.d.ts +18 -0
- package/dist/src/components/TimePicker/timePicker.types.d.ts.map +1 -1
- package/dist/src/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/src/components/Tooltip/tooltip.types.d.ts +30 -0
- package/dist/src/components/Tooltip/tooltip.types.d.ts.map +1 -1
- package/dist/src/components/TopBar/TopBar.d.ts.map +1 -1
- package/dist/src/components/TopBar/topBar.types.d.ts +25 -1
- package/dist/src/components/TopBar/topBar.types.d.ts.map +1 -1
- package/dist/src/components/Typography/Typography.d.ts.map +1 -1
- package/dist/src/components/Typography/typography.types.d.ts +47 -1
- package/dist/src/components/Typography/typography.types.d.ts.map +1 -1
- package/dist/src/components/Typography/typography.variants.d.ts +2 -2
- package/dist/src/components/Typography/typography.variants.d.ts.map +1 -1
- package/dist/src/hooks/useStandaloneFieldWarning.d.ts +38 -0
- package/dist/src/hooks/useStandaloneFieldWarning.d.ts.map +1 -0
- package/dist/src/index.d.ts +61 -41
- package/dist/src/index.d.ts.map +1 -1
- package/package.json +6 -5
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import { type VariantProps } from 'tailwind-variants';
|
|
2
|
+
/**
|
|
3
|
+
* `<Drawer>` variant recipe — edge-anchored sliding panel.
|
|
4
|
+
*
|
|
5
|
+
* Slots:
|
|
6
|
+
* - `overlay` — backdrop (rendered only when `variant='temporary'`)
|
|
7
|
+
* - `content` — the drawer panel itself (positioned + sized)
|
|
8
|
+
* - `header` — top region holding title + close button
|
|
9
|
+
* - `title` — the accessible heading
|
|
10
|
+
* - `closeButton` — the `×` button (top-right of header)
|
|
11
|
+
* - `body` — main scrollable content region
|
|
12
|
+
* - `footer` — bottom action bar (rendered when `footer` prop is set)
|
|
13
|
+
* - `resizeHandle` — drag handle on the free edge (rendered when `resize=true`)
|
|
14
|
+
*
|
|
15
|
+
* Axes:
|
|
16
|
+
* - `position` — which viewport edge the drawer anchors to. Drives the
|
|
17
|
+
* translate direction on open/close + which side gets a
|
|
18
|
+
* border.
|
|
19
|
+
* - `size` — bounded-axis preset (width for left/right, height for
|
|
20
|
+
* top/bottom). Applied programmatically in `Drawer.tsx`
|
|
21
|
+
* because the same size name maps to a different axis
|
|
22
|
+
* depending on `position`.
|
|
23
|
+
* - `variant` — `'temporary'` (modal, backdrop, focus trap, scroll
|
|
24
|
+
* lock) or `'persistent'` (non-modal, no backdrop,
|
|
25
|
+
* coexists with the surrounding content).
|
|
26
|
+
*
|
|
27
|
+
* Motion is gated by `prefers-reduced-motion`: slide animations collapse
|
|
28
|
+
* to instantaneous appear/disappear for users who opt out.
|
|
29
|
+
*/
|
|
30
|
+
export declare const drawerVariants: import("tailwind-variants").TVReturnType<{
|
|
31
|
+
position: {
|
|
32
|
+
right: {
|
|
33
|
+
content: string[];
|
|
34
|
+
resizeHandle: string;
|
|
35
|
+
};
|
|
36
|
+
left: {
|
|
37
|
+
content: string[];
|
|
38
|
+
resizeHandle: string;
|
|
39
|
+
};
|
|
40
|
+
top: {
|
|
41
|
+
content: string[];
|
|
42
|
+
resizeHandle: string;
|
|
43
|
+
};
|
|
44
|
+
bottom: {
|
|
45
|
+
content: string[];
|
|
46
|
+
resizeHandle: string;
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
variant: {
|
|
50
|
+
temporary: {};
|
|
51
|
+
persistent: {};
|
|
52
|
+
sticky: {};
|
|
53
|
+
};
|
|
54
|
+
size: {
|
|
55
|
+
sm: {};
|
|
56
|
+
md: {};
|
|
57
|
+
lg: {};
|
|
58
|
+
full: {};
|
|
59
|
+
};
|
|
60
|
+
}, {
|
|
61
|
+
overlay: string[];
|
|
62
|
+
content: string[];
|
|
63
|
+
header: string[];
|
|
64
|
+
title: string;
|
|
65
|
+
closeButton: string[];
|
|
66
|
+
body: string;
|
|
67
|
+
footer: string[];
|
|
68
|
+
resizeHandle: string[];
|
|
69
|
+
}, undefined, {
|
|
70
|
+
position: {
|
|
71
|
+
right: {
|
|
72
|
+
content: string[];
|
|
73
|
+
resizeHandle: string;
|
|
74
|
+
};
|
|
75
|
+
left: {
|
|
76
|
+
content: string[];
|
|
77
|
+
resizeHandle: string;
|
|
78
|
+
};
|
|
79
|
+
top: {
|
|
80
|
+
content: string[];
|
|
81
|
+
resizeHandle: string;
|
|
82
|
+
};
|
|
83
|
+
bottom: {
|
|
84
|
+
content: string[];
|
|
85
|
+
resizeHandle: string;
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
variant: {
|
|
89
|
+
temporary: {};
|
|
90
|
+
persistent: {};
|
|
91
|
+
sticky: {};
|
|
92
|
+
};
|
|
93
|
+
size: {
|
|
94
|
+
sm: {};
|
|
95
|
+
md: {};
|
|
96
|
+
lg: {};
|
|
97
|
+
full: {};
|
|
98
|
+
};
|
|
99
|
+
}, {
|
|
100
|
+
overlay: string[];
|
|
101
|
+
content: string[];
|
|
102
|
+
header: string[];
|
|
103
|
+
title: string;
|
|
104
|
+
closeButton: string[];
|
|
105
|
+
body: string;
|
|
106
|
+
footer: string[];
|
|
107
|
+
resizeHandle: string[];
|
|
108
|
+
}, import("tailwind-variants").TVReturnType<{
|
|
109
|
+
position: {
|
|
110
|
+
right: {
|
|
111
|
+
content: string[];
|
|
112
|
+
resizeHandle: string;
|
|
113
|
+
};
|
|
114
|
+
left: {
|
|
115
|
+
content: string[];
|
|
116
|
+
resizeHandle: string;
|
|
117
|
+
};
|
|
118
|
+
top: {
|
|
119
|
+
content: string[];
|
|
120
|
+
resizeHandle: string;
|
|
121
|
+
};
|
|
122
|
+
bottom: {
|
|
123
|
+
content: string[];
|
|
124
|
+
resizeHandle: string;
|
|
125
|
+
};
|
|
126
|
+
};
|
|
127
|
+
variant: {
|
|
128
|
+
temporary: {};
|
|
129
|
+
persistent: {};
|
|
130
|
+
sticky: {};
|
|
131
|
+
};
|
|
132
|
+
size: {
|
|
133
|
+
sm: {};
|
|
134
|
+
md: {};
|
|
135
|
+
lg: {};
|
|
136
|
+
full: {};
|
|
137
|
+
};
|
|
138
|
+
}, {
|
|
139
|
+
overlay: string[];
|
|
140
|
+
content: string[];
|
|
141
|
+
header: string[];
|
|
142
|
+
title: string;
|
|
143
|
+
closeButton: string[];
|
|
144
|
+
body: string;
|
|
145
|
+
footer: string[];
|
|
146
|
+
resizeHandle: string[];
|
|
147
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
148
|
+
export type DrawerVariants = VariantProps<typeof drawerVariants>;
|
|
149
|
+
/**
|
|
150
|
+
* Size presets. Each entry maps a size name to a Tailwind class for
|
|
151
|
+
* both the horizontal axis (used by left/right drawers → width) and the
|
|
152
|
+
* vertical axis (used by top/bottom drawers → height).
|
|
153
|
+
*
|
|
154
|
+
* `full` uses `w-screen` / `h-screen` for a full-viewport drawer — the
|
|
155
|
+
* mobile-fullscreen pattern.
|
|
156
|
+
*
|
|
157
|
+
* Values in px (approximate):
|
|
158
|
+
* sm → 256 (w-64) / 192 (h-48)
|
|
159
|
+
* md → 320 (w-80) / 288 (h-72)
|
|
160
|
+
* lg → 384 (w-96) / 384 (h-96)
|
|
161
|
+
* full → 100vw / 100vh
|
|
162
|
+
*/
|
|
163
|
+
export declare const DRAWER_SIZE_PRESETS: Record<NonNullable<DrawerVariants['size']>, {
|
|
164
|
+
x: string;
|
|
165
|
+
y: string;
|
|
166
|
+
xPx: number;
|
|
167
|
+
yPx: number;
|
|
168
|
+
}>;
|
|
169
|
+
/**
|
|
170
|
+
* Whether a position places the drawer on a horizontal edge (left/right),
|
|
171
|
+
* in which case the bounded axis is width — versus a vertical edge
|
|
172
|
+
* (top/bottom), where the bounded axis is height. Used everywhere the
|
|
173
|
+
* component needs to decide whether to work with `w-*` classes and `x`
|
|
174
|
+
* axis coordinates, or `h-*` and `y`.
|
|
175
|
+
*/
|
|
176
|
+
export declare function isHorizontalDrawer(position: NonNullable<DrawerVariants['position']>): boolean;
|
|
177
|
+
//# sourceMappingURL=drawer.variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawer.variants.d.ts","sourceRoot":"","sources":["../../../../src/components/Drawer/drawer.variants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CA0IzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,CAAC;AAEjE;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CACtC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EACnC;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAMnD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,WAAW,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,GAChD,OAAO,CAET"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../../../../src/components/Grid/Grid.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../../../../src/components/Grid/Grid.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,SAAS,EAKV,MAAM,iBAAiB,CAAC;AAEzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,eAAO,MAAM,IAAI,mGAsHhB,CAAC"}
|
|
@@ -99,5 +99,21 @@ interface GridCommonProps extends Omit<HTMLAttributes<HTMLDivElement>, 'classNam
|
|
|
99
99
|
* `<Grid>` props — discriminated union: container OR item, never both.
|
|
100
100
|
*/
|
|
101
101
|
export type GridProps = (GridContainerProps | GridItemProps) & GridCommonProps;
|
|
102
|
+
/**
|
|
103
|
+
* Subset of `<Grid container>` props theme-configurable via
|
|
104
|
+
* `theme.components.Grid.defaults` (Option C).
|
|
105
|
+
*
|
|
106
|
+
* Only container-role axes are exposed — item breakpoints (`xs`, `sm`,
|
|
107
|
+
* `md`, `lg`, `xl`) are per-instance responsive layout choices and are
|
|
108
|
+
* intentionally excluded.
|
|
109
|
+
*/
|
|
110
|
+
export type GridVariantProps = Pick<GridContainerProps, 'cols' | 'spacing' | 'spacingX' | 'spacingY' | 'autoFlow'>;
|
|
111
|
+
declare module '@dashforge/tw-tokens' {
|
|
112
|
+
interface TWComponentDefaults {
|
|
113
|
+
Grid?: {
|
|
114
|
+
defaults?: Partial<GridVariantProps>;
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
}
|
|
102
118
|
export {};
|
|
103
119
|
//# sourceMappingURL=grid.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid.types.d.ts","sourceRoot":"","sources":["../../../../src/components/Grid/grid.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEzD;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AACH,MAAM,MAAM,OAAO,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAChD,MAAM,GACN,MAAM,CAAC;AAEX;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACvB,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,SAAS,EAAE,IAAI,CAAC;IAChB,qCAAqC;IACrC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC9B,4DAA4D;IAC5D,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,CAAC;CAChE;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,0DAA0D;IAC1D,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;CACd;AAED;;;GAGG;AACH,UAAU,eAAgB,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC;IACjF,gFAAgF;IAChF,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,kBAAkB,GAAG,aAAa,CAAC,GAAG,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"grid.types.d.ts","sourceRoot":"","sources":["../../../../src/components/Grid/grid.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEzD;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AACH,MAAM,MAAM,OAAO,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAChD,MAAM,GACN,MAAM,CAAC;AAEX;;;;GAIG;AACH,MAAM,MAAM,eAAe,GACvB,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,SAAS,EAAE,IAAI,CAAC;IAChB,qCAAqC;IACrC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAC9B,4DAA4D;IAC5D,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,CAAC;CAChE;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,0DAA0D;IAC1D,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,oCAAoC;IACpC,EAAE,CAAC,EAAE,OAAO,CAAC;CACd;AAED;;;GAGG;AACH,UAAU,eAAgB,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,WAAW,CAAC;IACjF,gFAAgF;IAChF,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,kBAAkB,GAAG,aAAa,CAAC,GAAG,eAAe,CAAC;AAE/E;;;;;;;GAOG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,kBAAkB,EAClB,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAC1D,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,mBAAmB;QAC3B,IAAI,CAAC,EAAE;YACL,QAAQ,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACtC,CAAC;KACH;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../../src/components/IconButton/IconButton.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IconButton.d.ts","sourceRoot":"","sources":["../../../../src/components/IconButton/IconButton.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAY7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,UAAU,+GAkFtB,CAAC"}
|
|
@@ -3,6 +3,19 @@ import type { ClassValue } from 'tailwind-variants';
|
|
|
3
3
|
import type { Engine } from '@dashforge/ui-core';
|
|
4
4
|
import type { AccessRequirement } from '@dashforge/rbac';
|
|
5
5
|
import type { ButtonVariants } from '../Button/button.variants.js';
|
|
6
|
+
/**
|
|
7
|
+
* Subset of `<IconButton>` props theme-configurable via
|
|
8
|
+
* `theme.components.IconButton.defaults` (Option C). Same variant axes
|
|
9
|
+
* as `<Button>` since IconButton reuses `buttonVariants`.
|
|
10
|
+
*/
|
|
11
|
+
export type IconButtonVariantProps = Pick<ButtonVariants, 'variant' | 'color' | 'size' | 'loading'>;
|
|
12
|
+
declare module '@dashforge/tw-tokens' {
|
|
13
|
+
interface TWComponentDefaults {
|
|
14
|
+
IconButton?: {
|
|
15
|
+
defaults?: Partial<IconButtonVariantProps>;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
6
19
|
/**
|
|
7
20
|
* Props for `<IconButton>`.
|
|
8
21
|
*
|
|
@@ -50,7 +63,33 @@ import type { ButtonVariants } from '../Button/button.variants.js';
|
|
|
50
63
|
* </IconButton>
|
|
51
64
|
* ```
|
|
52
65
|
*/
|
|
53
|
-
export interface IconButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'color' | 'children'
|
|
66
|
+
export interface IconButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'color' | 'children'> {
|
|
67
|
+
/**
|
|
68
|
+
* Semantic intent role — same axis as `<Button>`, though the
|
|
69
|
+
* default here is `'neutral'` (icon-only surfaces usually deserve
|
|
70
|
+
* a subtler default variant than solid + primary).
|
|
71
|
+
* @default 'neutral'
|
|
72
|
+
*/
|
|
73
|
+
color?: ButtonVariants['color'];
|
|
74
|
+
/**
|
|
75
|
+
* Visual treatment. Same axis as `<Button>`; default is `'ghost'`
|
|
76
|
+
* because icon-only actions are typically secondary.
|
|
77
|
+
* @default 'ghost'
|
|
78
|
+
*/
|
|
79
|
+
variant?: ButtonVariants['variant'];
|
|
80
|
+
/**
|
|
81
|
+
* Square hit-area tier — matches Button's height scale so a
|
|
82
|
+
* `<Button size="md">` and `<IconButton size="md">` align in the
|
|
83
|
+
* same row.
|
|
84
|
+
* @default 'md'
|
|
85
|
+
*/
|
|
86
|
+
size?: ButtonVariants['size'];
|
|
87
|
+
/**
|
|
88
|
+
* When `true`, replace the icon with a `<Spinner>`, short-circuit
|
|
89
|
+
* clicks, and set `aria-busy="true"`.
|
|
90
|
+
* @default false
|
|
91
|
+
*/
|
|
92
|
+
loading?: ButtonVariants['loading'];
|
|
54
93
|
/**
|
|
55
94
|
* The icon — typically an SVG element from the consumer's icon
|
|
56
95
|
* library (Lucide / Phosphor / Tabler / inline SVG). A single
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iconButton.types.d.ts","sourceRoot":"","sources":["../../../../src/components/IconButton/iconButton.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,WAAW,eACf,SAAQ,IAAI,CACR,oBAAoB,CAAC,iBAAiB,CAAC,EACvC,OAAO,GAAG,UAAU,CACrB,
|
|
1
|
+
{"version":3,"file":"iconButton.types.d.ts","sourceRoot":"","sources":["../../../../src/components/IconButton/iconButton.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,cAAc,EACd,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CACzC,CAAC;AAEF,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,mBAAmB;QAC3B,UAAU,CAAC,EAAE;YACX,QAAQ,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;SAC5C,CAAC;KACH;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,WAAW,eACf,SAAQ,IAAI,CACR,oBAAoB,CAAC,iBAAiB,CAAC,EACvC,OAAO,GAAG,UAAU,CACrB;IACH;;;;;OAKG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAEhC;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAEpC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IAE9B;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;IAEpC;;;;OAIG;IACH,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAE1C;;;OAGG;IACH,EAAE,CAAC,EAAE,UAAU,CAAC;CACjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LeftNav.d.ts","sourceRoot":"","sources":["../../../../src/components/LeftNav/LeftNav.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LeftNav.d.ts","sourceRoot":"","sources":["../../../../src/components/LeftNav/LeftNav.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAIV,YAAY,EACb,MAAM,oBAAoB,CAAC;AAiN5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,2CAqF1C"}
|
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
import type { ReactNode, ComponentType, AnchorHTMLAttributes, Ref } from 'react';
|
|
2
2
|
import type { AccessRequirement } from '@dashforge/rbac';
|
|
3
3
|
import type { LeftNavVariants } from './leftNav.variants.js';
|
|
4
|
+
/**
|
|
5
|
+
* Subset of `<LeftNav>` props theme-configurable via
|
|
6
|
+
* `theme.components.LeftNav.defaults` (Option C).
|
|
7
|
+
*/
|
|
8
|
+
export type LeftNavVariantProps = Pick<LeftNavVariants, 'width' | 'collapsed'>;
|
|
9
|
+
declare module '@dashforge/tw-tokens' {
|
|
10
|
+
interface TWComponentDefaults {
|
|
11
|
+
LeftNav?: {
|
|
12
|
+
defaults?: Partial<LeftNavVariantProps>;
|
|
13
|
+
slotProps?: LeftNavSlotProps;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
}
|
|
4
17
|
/**
|
|
5
18
|
* One row in the LeftNav. May be either a clickable item OR a group
|
|
6
19
|
* (a header that owns nested children, optionally collapsible).
|
|
@@ -105,15 +118,22 @@ export interface LeftNavSlotProps {
|
|
|
105
118
|
* component renders the actual nav content and exposes a `collapsed`
|
|
106
119
|
* prop for the icon-only "rail" rendering.
|
|
107
120
|
*/
|
|
108
|
-
export interface LeftNavProps
|
|
121
|
+
export interface LeftNavProps {
|
|
122
|
+
/**
|
|
123
|
+
* Expanded-mode width tier — sm:w-48, md:w-60, lg:w-72.
|
|
124
|
+
* @default 'md'
|
|
125
|
+
*/
|
|
126
|
+
width?: LeftNavVariants['width'];
|
|
127
|
+
/**
|
|
128
|
+
* Rail mode — icons only, labels visually hidden but kept in DOM
|
|
129
|
+
* for a11y (`sr-only`). Group children collapse under a caret.
|
|
130
|
+
* @default false
|
|
131
|
+
*/
|
|
132
|
+
collapsed?: LeftNavVariants['collapsed'];
|
|
133
|
+
/** Nav items — a mix of `LeftNavItem` and `LeftNavGroup`. */
|
|
109
134
|
items: LeftNavNode[];
|
|
110
135
|
/** Currently-active item id (highlight + `aria-current="page"`). */
|
|
111
136
|
activeId?: string;
|
|
112
|
-
/**
|
|
113
|
-
* Icon-only rail mode. When `true`, labels and group children are
|
|
114
|
-
* visually hidden (kept for screen readers via `sr-only`).
|
|
115
|
-
*/
|
|
116
|
-
collapsed?: boolean;
|
|
117
137
|
/** Fired when the user clicks the collapse-toggle button. */
|
|
118
138
|
onCollapseChange?: (collapsed: boolean) => void;
|
|
119
139
|
/** Fired when a group's expanded state changes (controlled or not). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leftNav.types.d.ts","sourceRoot":"","sources":["../../../../src/components/LeftNav/leftNav.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,aAAa,EACb,oBAAoB,EACpB,GAAG,EACJ,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,YAAY,CAAC;AAErD,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,kEAAkE;IAClE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kEAAkE;IAClE,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAC9C,oBAAoB,CAAC,iBAAiB,CAAC,GAAG;IACxC,GAAG,CAAC,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;CAC9B,CACF,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,KAAK,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/B,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,UAAU,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAClC,SAAS,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,SAAS,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,KAAK,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/B,WAAW,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,aAAa,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,MAAM,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,cAAc,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"leftNav.types.d.ts","sourceRoot":"","sources":["../../../../src/components/LeftNav/leftNav.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { LinkProps } from './link.types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Dashforge TW `<Link>` — token-driven anchor primitive.
|
|
4
|
+
*
|
|
5
|
+
* Every visual axis (color / underline / weight / size) is
|
|
6
|
+
* theme-configurable via `theme.components.Link.defaults` (Option C),
|
|
7
|
+
* so a DS "Link is primary + semibold + uppercase" specification lives
|
|
8
|
+
* in the theme, not in every JSX call site. A bare `<Link>text</Link>`
|
|
9
|
+
* inherits that identity everywhere.
|
|
10
|
+
*
|
|
11
|
+
* See {@link LinkProps} for the full API surface and the router-
|
|
12
|
+
* integration example via `asChild`.
|
|
13
|
+
*/
|
|
14
|
+
export declare const Link: import("react").ForwardRefExoticComponent<LinkProps & import("react").RefAttributes<HTMLAnchorElement>>;
|
|
15
|
+
//# sourceMappingURL=Link.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Link.d.ts","sourceRoot":"","sources":["../../../../src/components/Link/Link.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,IAAI,yGAqGf,CAAC"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import type { AnchorHTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import type { LinkVariants } from './link.variants.js';
|
|
3
|
+
/**
|
|
4
|
+
* Subset of `<Link>` props theme-configurable via
|
|
5
|
+
* `theme.components.Link.defaults` (Option C).
|
|
6
|
+
*/
|
|
7
|
+
export type LinkVariantProps = Pick<LinkVariants, 'color' | 'underline' | 'weight' | 'size'>;
|
|
8
|
+
/**
|
|
9
|
+
* Per-slot override map. Each entry accepts a `{ className?: string }`
|
|
10
|
+
* merged via `tailwind-merge` at render time.
|
|
11
|
+
*
|
|
12
|
+
* Slots:
|
|
13
|
+
* - `root` — the `<a>` (or, with `asChild`, the polymorphic
|
|
14
|
+
* host). `sx` is a shortcut for `slotProps.root.className`.
|
|
15
|
+
* - `startIcon` — the leading icon wrapper (`<span>` inline-flex).
|
|
16
|
+
* - `endIcon` — the trailing icon wrapper (`<span>` inline-flex).
|
|
17
|
+
*/
|
|
18
|
+
export interface LinkSlotProps {
|
|
19
|
+
root?: {
|
|
20
|
+
className?: string;
|
|
21
|
+
};
|
|
22
|
+
startIcon?: {
|
|
23
|
+
className?: string;
|
|
24
|
+
};
|
|
25
|
+
endIcon?: {
|
|
26
|
+
className?: string;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
declare module '@dashforge/tw-tokens' {
|
|
30
|
+
interface TWComponentDefaults {
|
|
31
|
+
Link?: {
|
|
32
|
+
defaults?: Partial<LinkVariantProps>;
|
|
33
|
+
slotProps?: LinkSlotProps;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Props for `<Link>` — the token-driven anchor primitive.
|
|
39
|
+
*
|
|
40
|
+
* Every visual axis is opt-in AND `theme.components.Link.defaults`
|
|
41
|
+
* configurable, so a DS that says "Link is primary + semibold +
|
|
42
|
+
* uppercase" writes it once in the theme and bare `<Link>text</Link>`
|
|
43
|
+
* renders that identity everywhere. No hardcoded design language
|
|
44
|
+
* inside the component.
|
|
45
|
+
*
|
|
46
|
+
* Precedence (lowest → highest):
|
|
47
|
+
* 1. `defaultVariants` in `linkVariants` (primary / hover / normal / md).
|
|
48
|
+
* 2. `theme.components.Link.defaults`.
|
|
49
|
+
* 3. Instance props (`<Link color="danger">`).
|
|
50
|
+
* 4. `sx` (tailwind-merge, last).
|
|
51
|
+
*
|
|
52
|
+
* @example Minimal
|
|
53
|
+
* ```tsx
|
|
54
|
+
* <Link href="/dashboard">Go to dashboard</Link>
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @example Theme-driven DS identity (Option C)
|
|
58
|
+
* ```tsx
|
|
59
|
+
* patchTheme({
|
|
60
|
+
* components: {
|
|
61
|
+
* Link: {
|
|
62
|
+
* defaults: { color: 'primary', weight: 'semibold', underline: 'always', size: 'sm' },
|
|
63
|
+
* },
|
|
64
|
+
* },
|
|
65
|
+
* });
|
|
66
|
+
* // then anywhere:
|
|
67
|
+
* <Link href="/x">go to page</Link>
|
|
68
|
+
* ```
|
|
69
|
+
*
|
|
70
|
+
* @example With optional icons
|
|
71
|
+
* ```tsx
|
|
72
|
+
* <Link href="/docs" endIcon={<ChevronRight size={14} />}>Read docs</Link>
|
|
73
|
+
* <Link href="/logo" startIcon={<img src="https://s3.example.com/logo.svg" width={16} alt="" />}>Brand</Link>
|
|
74
|
+
* ```
|
|
75
|
+
*
|
|
76
|
+
* @example External — no auto-glyph; the dev owns the visual affordance
|
|
77
|
+
* ```tsx
|
|
78
|
+
* <Link href="https://external.example.com" external endIcon={<ExternalLinkIcon size={12} />}>
|
|
79
|
+
* Docs
|
|
80
|
+
* </Link>
|
|
81
|
+
* ```
|
|
82
|
+
*
|
|
83
|
+
* @example Router integration via `asChild` (Radix Slot pattern)
|
|
84
|
+
* ```tsx
|
|
85
|
+
* <Link asChild color="primary" underline="hover">
|
|
86
|
+
* <NextLink to="/settings">Settings</NextLink>
|
|
87
|
+
* </Link>
|
|
88
|
+
* // The <NextLink> receives Link's classes directly — no wrapping <a>.
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
export interface LinkProps extends Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'className' | 'color'> {
|
|
92
|
+
/**
|
|
93
|
+
* Color intent. `inherit` opts out for links on coloured surfaces.
|
|
94
|
+
* @default (theme.components.Link.defaults.color ?? 'primary')
|
|
95
|
+
*/
|
|
96
|
+
color?: LinkVariants['color'];
|
|
97
|
+
/**
|
|
98
|
+
* Underline behavior. `always` for prose, `hover` for buttons/nav,
|
|
99
|
+
* `none` for icon-heavy links where the underline would be visual noise.
|
|
100
|
+
* @default (theme.components.Link.defaults.underline ?? 'hover')
|
|
101
|
+
*/
|
|
102
|
+
underline?: LinkVariants['underline'];
|
|
103
|
+
/**
|
|
104
|
+
* Font weight override. Matches Typography's `weight`.
|
|
105
|
+
* @default (theme.components.Link.defaults.weight ?? 'normal')
|
|
106
|
+
*/
|
|
107
|
+
weight?: LinkVariants['weight'];
|
|
108
|
+
/**
|
|
109
|
+
* Font size step. Matches Typography's caption / body / subtitle scale.
|
|
110
|
+
* @default (theme.components.Link.defaults.size ?? 'md')
|
|
111
|
+
*/
|
|
112
|
+
size?: LinkVariants['size'];
|
|
113
|
+
/**
|
|
114
|
+
* Icon rendered BEFORE the link text. Accepts any `ReactNode` —
|
|
115
|
+
* a lucide/Radix icon, an inline `<svg>`, an `<img src="...">`
|
|
116
|
+
* (S3 / CDN URL included). Ignored when `asChild` is true (the
|
|
117
|
+
* consumer child renders its own content).
|
|
118
|
+
*/
|
|
119
|
+
startIcon?: ReactNode;
|
|
120
|
+
/**
|
|
121
|
+
* Icon rendered AFTER the link text. Same acceptance as `startIcon`.
|
|
122
|
+
* Common uses: chevron, external-link glyph, download icon. Ignored
|
|
123
|
+
* when `asChild` is true.
|
|
124
|
+
*/
|
|
125
|
+
endIcon?: ReactNode;
|
|
126
|
+
/**
|
|
127
|
+
* When true, applies `target="_blank"` + `rel="noopener noreferrer"`
|
|
128
|
+
* on the rendered `<a>`. Consumer-supplied `target` / `rel` on the
|
|
129
|
+
* same instance are honoured (not overwritten).
|
|
130
|
+
*
|
|
131
|
+
* **Does NOT append any visual glyph** — the caller owns that choice.
|
|
132
|
+
* Pass an icon via `endIcon` for the standard `↗` affordance.
|
|
133
|
+
*
|
|
134
|
+
* @default false
|
|
135
|
+
*/
|
|
136
|
+
external?: boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Radix Slot polymorphism. When true, the Link's styles paint onto
|
|
139
|
+
* the single React child (matching the pattern used by
|
|
140
|
+
* `<Button asChild>`, `<Chip asChild>`, etc.). Idiomatic for router
|
|
141
|
+
* integration:
|
|
142
|
+
*
|
|
143
|
+
* ```tsx
|
|
144
|
+
* <Link asChild>
|
|
145
|
+
* <NextLink to="/x">Go</NextLink>
|
|
146
|
+
* </Link>
|
|
147
|
+
* ```
|
|
148
|
+
*
|
|
149
|
+
* With `asChild=true`, `startIcon` / `endIcon` are ignored — the
|
|
150
|
+
* consumer child renders its own content and the Slot has no seam to
|
|
151
|
+
* inject a wrapper.
|
|
152
|
+
*
|
|
153
|
+
* @default false
|
|
154
|
+
*/
|
|
155
|
+
asChild?: boolean;
|
|
156
|
+
/**
|
|
157
|
+
* Utility-class escape hatch. Appended to the variant chain and
|
|
158
|
+
* resolved via `tailwind-merge` so consumer classes win over the
|
|
159
|
+
* variant defaults on the same axis (Dashforge idiom).
|
|
160
|
+
*/
|
|
161
|
+
sx?: string;
|
|
162
|
+
/**
|
|
163
|
+
* Per-slot overrides. Each slot accepts a `{ className?: string }`
|
|
164
|
+
* override — see the `LinkSlotProps` type for the three slot names
|
|
165
|
+
* (`root`, `startIcon`, `endIcon`).
|
|
166
|
+
*/
|
|
167
|
+
slotProps?: LinkSlotProps;
|
|
168
|
+
}
|
|
169
|
+
//# sourceMappingURL=link.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.types.d.ts","sourceRoot":"","sources":["../../../../src/components/Link/link.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,YAAY,EACZ,OAAO,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAC1C,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,SAAS,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAClC;AAED,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,mBAAmB;QAC3B,IAAI,CAAC,EAAE;YACL,QAAQ,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACrC,SAAS,CAAC,EAAE,aAAa,CAAC;SAC3B,CAAC;KACH;CACF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,MAAM,WAAW,SACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5E;;;OAGG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAE9B;;;;OAIG;IACH,SAAS,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAEtC;;;OAGG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEhC;;;OAGG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAE5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IAEpB;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { type VariantProps } from 'tailwind-variants';
|
|
2
|
+
/**
|
|
3
|
+
* `linkVariants` — the token-driven recipe for `<Link>`.
|
|
4
|
+
*
|
|
5
|
+
* Every axis maps to Dashforge palette tokens routed through
|
|
6
|
+
* `dashforgePreset()`. The DS anchors visual identity via
|
|
7
|
+
* `theme.components.Link.defaults` (Option C): once the design system
|
|
8
|
+
* defines "Link is primary, semibold, always-underlined at size sm",
|
|
9
|
+
* a bare `<Link>text</Link>` renders exactly that — no per-instance
|
|
10
|
+
* repetition.
|
|
11
|
+
*
|
|
12
|
+
* Axes:
|
|
13
|
+
* - `color` — palette intent. Matches `Typography.color` so a
|
|
14
|
+
* Link inside a paragraph inherits the same intent
|
|
15
|
+
* language. `inherit` opts out (used when the link
|
|
16
|
+
* sits on a coloured surface and should paint the
|
|
17
|
+
* surface text colour).
|
|
18
|
+
* - `underline` — `always` (persistent), `hover` (on hover/focus),
|
|
19
|
+
* `none` (never). Persistent underline is idiomatic
|
|
20
|
+
* for prose; `hover` is idiomatic for buttons/nav.
|
|
21
|
+
* - `weight` — font-weight step. Overlaps intentionally with
|
|
22
|
+
* Typography's `weight`.
|
|
23
|
+
* - `size` — font-size step, matches Typography scale
|
|
24
|
+
* (`text-xs → text-lg`).
|
|
25
|
+
*
|
|
26
|
+
* `dark:` variants are applied on the color palettes (except `neutral`,
|
|
27
|
+
* which auto-inverts via the preset CSS-var swap — double-inverting it
|
|
28
|
+
* would break dark mode) — same rationale as `Typography` and `Chip`.
|
|
29
|
+
*/
|
|
30
|
+
export declare const linkVariants: import("tailwind-variants").TVReturnType<{
|
|
31
|
+
color: {
|
|
32
|
+
inherit: string;
|
|
33
|
+
primary: string;
|
|
34
|
+
secondary: string;
|
|
35
|
+
neutral: string;
|
|
36
|
+
muted: string;
|
|
37
|
+
};
|
|
38
|
+
underline: {
|
|
39
|
+
always: string;
|
|
40
|
+
hover: string;
|
|
41
|
+
none: string;
|
|
42
|
+
};
|
|
43
|
+
weight: {
|
|
44
|
+
normal: string;
|
|
45
|
+
medium: string;
|
|
46
|
+
semibold: string;
|
|
47
|
+
bold: string;
|
|
48
|
+
};
|
|
49
|
+
size: {
|
|
50
|
+
xs: string;
|
|
51
|
+
sm: string;
|
|
52
|
+
md: string;
|
|
53
|
+
lg: string;
|
|
54
|
+
};
|
|
55
|
+
}, undefined, string[], {
|
|
56
|
+
color: {
|
|
57
|
+
inherit: string;
|
|
58
|
+
primary: string;
|
|
59
|
+
secondary: string;
|
|
60
|
+
neutral: string;
|
|
61
|
+
muted: string;
|
|
62
|
+
};
|
|
63
|
+
underline: {
|
|
64
|
+
always: string;
|
|
65
|
+
hover: string;
|
|
66
|
+
none: string;
|
|
67
|
+
};
|
|
68
|
+
weight: {
|
|
69
|
+
normal: string;
|
|
70
|
+
medium: string;
|
|
71
|
+
semibold: string;
|
|
72
|
+
bold: string;
|
|
73
|
+
};
|
|
74
|
+
size: {
|
|
75
|
+
xs: string;
|
|
76
|
+
sm: string;
|
|
77
|
+
md: string;
|
|
78
|
+
lg: string;
|
|
79
|
+
};
|
|
80
|
+
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
81
|
+
color: {
|
|
82
|
+
inherit: string;
|
|
83
|
+
primary: string;
|
|
84
|
+
secondary: string;
|
|
85
|
+
neutral: string;
|
|
86
|
+
muted: string;
|
|
87
|
+
};
|
|
88
|
+
underline: {
|
|
89
|
+
always: string;
|
|
90
|
+
hover: string;
|
|
91
|
+
none: string;
|
|
92
|
+
};
|
|
93
|
+
weight: {
|
|
94
|
+
normal: string;
|
|
95
|
+
medium: string;
|
|
96
|
+
semibold: string;
|
|
97
|
+
bold: string;
|
|
98
|
+
};
|
|
99
|
+
size: {
|
|
100
|
+
xs: string;
|
|
101
|
+
sm: string;
|
|
102
|
+
md: string;
|
|
103
|
+
lg: string;
|
|
104
|
+
};
|
|
105
|
+
}, undefined, string[], unknown, unknown, undefined>>;
|
|
106
|
+
export type LinkVariants = VariantProps<typeof linkVariants>;
|
|
107
|
+
//# sourceMappingURL=link.variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.variants.d.ts","sourceRoot":"","sources":["../../../../src/components/Link/link.variants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qDA8CvB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,YAAY,CAAC,CAAC"}
|