@techfides/ui-library-design 0.5.0 → 0.8.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/dist/anatomies.d.ts +1586 -0
- package/dist/anatomies.js +107 -0
- package/dist/anatomies.js.map +1 -0
- package/dist/anatomy.d.ts +13 -0
- package/dist/anatomy.js +6 -0
- package/dist/anatomy.js.map +1 -0
- package/dist/cn.generated.js +217 -0
- package/dist/cn.generated.js.map +1 -0
- package/dist/cn.js +10 -166
- package/dist/cn.js.map +1 -1
- package/dist/control.d.ts +1 -2
- package/dist/control.js +1 -2
- package/dist/control.js.map +1 -1
- package/dist/index.d.ts +55 -52
- package/dist/index.js +59 -56
- package/dist/recipes/accordion.d.ts +28 -1
- package/dist/recipes/accordion.js +29 -1
- package/dist/recipes/accordion.js.map +1 -1
- package/dist/recipes/alert.d.ts +45 -1
- package/dist/recipes/alert.js +45 -1
- package/dist/recipes/alert.js.map +1 -1
- package/dist/recipes/band.d.ts +11 -1
- package/dist/recipes/band.js +7 -1
- package/dist/recipes/band.js.map +1 -1
- package/dist/recipes/bars.d.ts +60 -1
- package/dist/recipes/bars.js +59 -1
- package/dist/recipes/bars.js.map +1 -1
- package/dist/recipes/brandMark.d.ts +8 -1
- package/dist/recipes/brandMark.js +7 -1
- package/dist/recipes/brandMark.js.map +1 -1
- package/dist/recipes/button.d.ts +41 -4
- package/dist/recipes/button.js +31 -2
- package/dist/recipes/button.js.map +1 -1
- package/dist/recipes/cardHeader.d.ts +18 -1
- package/dist/recipes/cardHeader.js +19 -1
- package/dist/recipes/cardHeader.js.map +1 -1
- package/dist/recipes/checkbox.d.ts +16 -1
- package/dist/recipes/checkbox.js +16 -3
- package/dist/recipes/checkbox.js.map +1 -1
- package/dist/recipes/chip.d.ts +41 -2
- package/dist/recipes/chip.js +34 -1
- package/dist/recipes/chip.js.map +1 -1
- package/dist/recipes/codeEditor.d.ts +8 -1
- package/dist/recipes/codeEditor.js +7 -1
- package/dist/recipes/codeEditor.js.map +1 -1
- package/dist/recipes/datePicker.d.ts +62 -1
- package/dist/recipes/datePicker.js +56 -3
- package/dist/recipes/datePicker.js.map +1 -1
- package/dist/recipes/dialog.d.ts +49 -1
- package/dist/recipes/dialog.js +40 -1
- package/dist/recipes/dialog.js.map +1 -1
- package/dist/recipes/feature.d.ts +30 -1
- package/dist/recipes/feature.js +30 -2
- package/dist/recipes/feature.js.map +1 -1
- package/dist/recipes/field.js +1 -1
- package/dist/recipes/findings.d.ts +33 -1
- package/dist/recipes/findings.js +34 -1
- package/dist/recipes/findings.js.map +1 -1
- package/dist/recipes/heading.d.ts +12 -2
- package/dist/recipes/heading.js +7 -1
- package/dist/recipes/heading.js.map +1 -1
- package/dist/recipes/heartbeat.d.ts +52 -2
- package/dist/recipes/heartbeat.js +51 -4
- package/dist/recipes/heartbeat.js.map +1 -1
- package/dist/recipes/ink.d.ts +11 -0
- package/dist/recipes/ink.js +13 -0
- package/dist/recipes/ink.js.map +1 -0
- package/dist/recipes/input.d.ts +55 -1
- package/dist/recipes/input.js +52 -2
- package/dist/recipes/input.js.map +1 -1
- package/dist/recipes/listItem.d.ts +18 -1
- package/dist/recipes/listItem.js +20 -1
- package/dist/recipes/listItem.js.map +1 -1
- package/dist/recipes/listbox.d.ts +22 -2
- package/dist/recipes/listbox.js +19 -1
- package/dist/recipes/listbox.js.map +1 -1
- package/dist/recipes/marquee.d.ts +26 -2
- package/dist/recipes/marquee.js +24 -1
- package/dist/recipes/marquee.js.map +1 -1
- package/dist/recipes/menu.d.ts +33 -1
- package/dist/recipes/menu.js +29 -1
- package/dist/recipes/menu.js.map +1 -1
- package/dist/recipes/metaRow.d.ts +11 -2
- package/dist/recipes/metaRow.js +7 -1
- package/dist/recipes/metaRow.js.map +1 -1
- package/dist/recipes/meter.d.ts +36 -2
- package/dist/recipes/meter.js +34 -1
- package/dist/recipes/meter.js.map +1 -1
- package/dist/recipes/motion.d.ts +9 -1
- package/dist/recipes/nebula.js +1 -1
- package/dist/recipes/numberRange.d.ts +44 -1
- package/dist/recipes/numberRange.js +36 -1
- package/dist/recipes/numberRange.js.map +1 -1
- package/dist/recipes/paper.d.ts +55 -2
- package/dist/recipes/paper.js +47 -4
- package/dist/recipes/paper.js.map +1 -1
- package/dist/recipes/progressBar.d.ts +8 -1
- package/dist/recipes/progressBar.js +7 -1
- package/dist/recipes/progressBar.js.map +1 -1
- package/dist/recipes/queue.d.ts +33 -1
- package/dist/recipes/queue.js +35 -1
- package/dist/recipes/queue.js.map +1 -1
- package/dist/recipes/radioGroup.d.ts +18 -1
- package/dist/recipes/radioGroup.js +21 -3
- package/dist/recipes/radioGroup.js.map +1 -1
- package/dist/recipes/scopeSwitcher.d.ts +38 -1
- package/dist/recipes/scopeSwitcher.js +40 -1
- package/dist/recipes/scopeSwitcher.js.map +1 -1
- package/dist/recipes/scrollArea.d.ts +12 -3
- package/dist/recipes/scrollArea.js +7 -1
- package/dist/recipes/scrollArea.js.map +1 -1
- package/dist/recipes/searchPalette.d.ts +48 -1
- package/dist/recipes/searchPalette.js +49 -1
- package/dist/recipes/searchPalette.js.map +1 -1
- package/dist/recipes/sectionHeader.d.ts +20 -2
- package/dist/recipes/sectionHeader.js +20 -3
- package/dist/recipes/sectionHeader.js.map +1 -1
- package/dist/recipes/segmentedControl.d.ts +8 -1
- package/dist/recipes/segmentedControl.js +7 -1
- package/dist/recipes/segmentedControl.js.map +1 -1
- package/dist/recipes/select.d.ts +57 -1
- package/dist/recipes/select.js +51 -1
- package/dist/recipes/select.js.map +1 -1
- package/dist/recipes/separator.d.ts +13 -2
- package/dist/recipes/separator.js +8 -2
- package/dist/recipes/separator.js.map +1 -1
- package/dist/recipes/sidebar.d.ts +128 -2
- package/dist/recipes/sidebar.js +125 -2
- package/dist/recipes/sidebar.js.map +1 -1
- package/dist/recipes/sky.d.ts +31 -1
- package/dist/recipes/sky.js +30 -1
- package/dist/recipes/sky.js.map +1 -1
- package/dist/recipes/slider.d.ts +15 -1
- package/dist/recipes/slider.js +14 -1
- package/dist/recipes/slider.js.map +1 -1
- package/dist/recipes/stat.d.ts +71 -1
- package/dist/recipes/stat.js +73 -3
- package/dist/recipes/stat.js.map +1 -1
- package/dist/recipes/switch.d.ts +10 -1
- package/dist/recipes/switch.js +9 -3
- package/dist/recipes/switch.js.map +1 -1
- package/dist/recipes/table.d.ts +63 -3
- package/dist/recipes/table.js +56 -2
- package/dist/recipes/table.js.map +1 -1
- package/dist/recipes/tail.d.ts +40 -5
- package/dist/recipes/tail.js +37 -5
- package/dist/recipes/tail.js.map +1 -1
- package/dist/recipes/text.d.ts +16 -3
- package/dist/recipes/text.js +8 -3
- package/dist/recipes/text.js.map +1 -1
- package/dist/recipes/textarea.d.ts +46 -1
- package/dist/recipes/textarea.js +41 -1
- package/dist/recipes/textarea.js.map +1 -1
- package/dist/recipes/tile.d.ts +23 -1
- package/dist/recipes/tile.js +19 -1
- package/dist/recipes/tile.js.map +1 -1
- package/dist/recipes/tooltip.d.ts +8 -1
- package/dist/recipes/tooltip.js +7 -1
- package/dist/recipes/tooltip.js.map +1 -1
- package/dist/recipes/topBar.d.ts +43 -1
- package/dist/recipes/topBar.js +44 -1
- package/dist/recipes/topBar.js.map +1 -1
- package/dist/recipes/trail.d.ts +55 -5
- package/dist/recipes/trail.js +47 -5
- package/dist/recipes/trail.js.map +1 -1
- package/dist/recipes/userMenu.d.ts +23 -1
- package/dist/recipes/userMenu.js +24 -1
- package/dist/recipes/userMenu.js.map +1 -1
- package/package.json +3 -2
package/dist/recipes/table.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ declare const tableScrollRecipe: (props?: import("class-variance-authority/types
|
|
|
17
17
|
declare const tableGridRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
18
18
|
declare const tableHeadRowRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
19
19
|
declare const tableHeadCellRecipe: (props?: ({
|
|
20
|
-
align?: "
|
|
20
|
+
align?: "start" | "end" | null | undefined;
|
|
21
21
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
22
22
|
declare const tableHeadingRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
23
23
|
declare const tableSortRecipe: (props?: ({
|
|
@@ -47,7 +47,7 @@ declare const tableRowRecipe: (props?: ({
|
|
|
47
47
|
declare const tableSelectCellRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
48
48
|
declare const tableMarkRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
49
49
|
declare const tableCellRecipe: (props?: ({
|
|
50
|
-
align?: "
|
|
50
|
+
align?: "start" | "end" | null | undefined;
|
|
51
51
|
mono?: boolean | null | undefined;
|
|
52
52
|
tabular?: boolean | null | undefined;
|
|
53
53
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
@@ -69,6 +69,66 @@ declare const tableSkeletonMarkRecipe: (props?: import("class-variance-authority
|
|
|
69
69
|
declare const tableEmptyRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
70
70
|
declare const tableEmptyTitleRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
71
71
|
declare const tableEmptyHintRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
72
|
+
declare const tableAnatomy: {
|
|
73
|
+
readonly bar: {
|
|
74
|
+
readonly part: "bar";
|
|
75
|
+
readonly recipe: (props?: ({
|
|
76
|
+
numeric?: boolean | null | undefined;
|
|
77
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
78
|
+
readonly required: false;
|
|
79
|
+
};
|
|
80
|
+
readonly filterRule: {
|
|
81
|
+
readonly part: "filter-rule";
|
|
82
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
83
|
+
readonly required: true;
|
|
84
|
+
};
|
|
85
|
+
readonly head: {
|
|
86
|
+
readonly part: "head";
|
|
87
|
+
readonly recipe: (props?: ({
|
|
88
|
+
align?: "start" | "end" | null | undefined;
|
|
89
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
90
|
+
readonly required: true;
|
|
91
|
+
};
|
|
92
|
+
readonly mark: {
|
|
93
|
+
readonly part: "mark";
|
|
94
|
+
readonly recipe: (props?: ({
|
|
95
|
+
sorted?: boolean | null | undefined;
|
|
96
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
97
|
+
readonly required: false;
|
|
98
|
+
};
|
|
99
|
+
readonly rank: {
|
|
100
|
+
readonly part: "rank";
|
|
101
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
102
|
+
readonly required: false;
|
|
103
|
+
};
|
|
104
|
+
readonly root: {
|
|
105
|
+
readonly part: "table";
|
|
106
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
107
|
+
readonly required: true;
|
|
108
|
+
};
|
|
109
|
+
readonly rule: {
|
|
110
|
+
readonly part: "rule";
|
|
111
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
112
|
+
readonly required: true;
|
|
113
|
+
};
|
|
114
|
+
readonly ruled: {
|
|
115
|
+
readonly part: "ruled";
|
|
116
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
117
|
+
readonly required: true;
|
|
118
|
+
};
|
|
119
|
+
readonly tableFilter: {
|
|
120
|
+
readonly part: "table-filter";
|
|
121
|
+
readonly recipe: (props?: ({
|
|
122
|
+
on?: boolean | null | undefined;
|
|
123
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
124
|
+
readonly required: false;
|
|
125
|
+
};
|
|
126
|
+
readonly toolbar: {
|
|
127
|
+
readonly part: "table-toolbar";
|
|
128
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
129
|
+
readonly required: false;
|
|
130
|
+
};
|
|
131
|
+
};
|
|
72
132
|
//#endregion
|
|
73
|
-
export { type TableAlign, type TableFilterKind, tableActionsCellRecipe, tableActionsWidth, tableAppliedRecipe, tableBodyRecipe, tableCardRecipe, tableCellRecipe, tableDetailBodyRecipe, tableDetailRecipe, tableEmptyHintRecipe, tableEmptyRecipe, tableEmptyTitleRecipe, tableExpandIconRecipe, tableExpandRecipe, tableFilterMarkRecipe, tableFilterRecipe, tableGridRecipe, tableGroupRecipe, tableHeadCellRecipe, tableHeadRowRecipe, tableHeadingRecipe, tableMarkRecipe, tablePinWidth, tableRankRecipe, tableRecipe, tableRowRecipe, tableRuleRecipe, tableScrollRecipe, tableSearchRecipe, tableSelectCellRecipe, tableSelectionActionsRecipe, tableSelectionCountRecipe, tableSelectionRecipe, tableSkeletonBarRecipe, tableSkeletonMarkRecipe, tableSortIconRecipe, tableSortLabelRecipe, tableSortMarkRecipe, tableSortRecipe, tableStepRecipe, tableToolbarRecipe, tableValueRecipe };
|
|
133
|
+
export { type TableAlign, type TableFilterKind, tableActionsCellRecipe, tableActionsWidth, tableAnatomy, tableAppliedRecipe, tableBodyRecipe, tableCardRecipe, tableCellRecipe, tableDetailBodyRecipe, tableDetailRecipe, tableEmptyHintRecipe, tableEmptyRecipe, tableEmptyTitleRecipe, tableExpandIconRecipe, tableExpandRecipe, tableFilterMarkRecipe, tableFilterRecipe, tableGridRecipe, tableGroupRecipe, tableHeadCellRecipe, tableHeadRowRecipe, tableHeadingRecipe, tableMarkRecipe, tablePinWidth, tableRankRecipe, tableRecipe, tableRowRecipe, tableRuleRecipe, tableScrollRecipe, tableSearchRecipe, tableSelectCellRecipe, tableSelectionActionsRecipe, tableSelectionCountRecipe, tableSelectionRecipe, tableSkeletonBarRecipe, tableSkeletonMarkRecipe, tableSortIconRecipe, tableSortLabelRecipe, tableSortMarkRecipe, tableSortRecipe, tableStepRecipe, tableToolbarRecipe, tableValueRecipe };
|
|
74
134
|
//# sourceMappingURL=table.d.ts.map
|
package/dist/recipes/table.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { anatomy } from "../anatomy.js";
|
|
2
2
|
import { controlInert, controlPress, controlQuietIcon, controlReach } from "../parts/control.js";
|
|
3
3
|
import { ruleFading } from "../parts/rule.js";
|
|
4
|
+
import { toneTint } from "../tone.js";
|
|
4
5
|
import { eyebrowQuiet, eyebrowType } from "../parts/eyebrow.js";
|
|
5
6
|
import { revealedControl, revealedIcon, shownControl, shownIcon } from "../parts/reveal.js";
|
|
7
|
+
import { tableFilterRuleRecipe } from "./tableFilter.js";
|
|
6
8
|
import { cva } from "class-variance-authority";
|
|
7
9
|
//#region src/recipes/table.ts
|
|
8
10
|
const defaultTableAlign = "start";
|
|
@@ -176,7 +178,59 @@ const tableSkeletonMarkRecipe = cva("size-tf-icon-lg flex-none tf-breathing roun
|
|
|
176
178
|
const tableEmptyRecipe = cva("flex flex-col items-center gap-2 px-6 py-14 text-center");
|
|
177
179
|
const tableEmptyTitleRecipe = cva("font-tf-display text-tf-h4 font-bold tracking-tf-tight text-tf-fg");
|
|
178
180
|
const tableEmptyHintRecipe = cva("text-tf-body-sm font-medium text-tf-muted");
|
|
181
|
+
const tableAnatomy = anatomy({
|
|
182
|
+
bar: {
|
|
183
|
+
part: "bar",
|
|
184
|
+
recipe: tableSkeletonBarRecipe,
|
|
185
|
+
required: false
|
|
186
|
+
},
|
|
187
|
+
filterRule: {
|
|
188
|
+
part: "filter-rule",
|
|
189
|
+
recipe: tableFilterRuleRecipe,
|
|
190
|
+
required: true
|
|
191
|
+
},
|
|
192
|
+
head: {
|
|
193
|
+
part: "head",
|
|
194
|
+
recipe: tableHeadCellRecipe,
|
|
195
|
+
required: true
|
|
196
|
+
},
|
|
197
|
+
mark: {
|
|
198
|
+
part: "mark",
|
|
199
|
+
recipe: tableSortMarkRecipe,
|
|
200
|
+
required: false
|
|
201
|
+
},
|
|
202
|
+
rank: {
|
|
203
|
+
part: "rank",
|
|
204
|
+
recipe: tableRankRecipe,
|
|
205
|
+
required: false
|
|
206
|
+
},
|
|
207
|
+
root: {
|
|
208
|
+
part: "table",
|
|
209
|
+
recipe: tableRecipe,
|
|
210
|
+
required: true
|
|
211
|
+
},
|
|
212
|
+
rule: {
|
|
213
|
+
part: "rule",
|
|
214
|
+
recipe: tableRuleRecipe,
|
|
215
|
+
required: true
|
|
216
|
+
},
|
|
217
|
+
ruled: {
|
|
218
|
+
part: "ruled",
|
|
219
|
+
recipe: tableGroupRecipe,
|
|
220
|
+
required: true
|
|
221
|
+
},
|
|
222
|
+
tableFilter: {
|
|
223
|
+
part: "table-filter",
|
|
224
|
+
recipe: tableFilterRecipe,
|
|
225
|
+
required: false
|
|
226
|
+
},
|
|
227
|
+
toolbar: {
|
|
228
|
+
part: "table-toolbar",
|
|
229
|
+
recipe: tableToolbarRecipe,
|
|
230
|
+
required: false
|
|
231
|
+
}
|
|
232
|
+
});
|
|
179
233
|
//#endregion
|
|
180
|
-
export { tableActionsCellRecipe, tableActionsWidth, tableAppliedRecipe, tableBodyRecipe, tableCardRecipe, tableCellRecipe, tableDetailBodyRecipe, tableDetailRecipe, tableEmptyHintRecipe, tableEmptyRecipe, tableEmptyTitleRecipe, tableExpandIconRecipe, tableExpandRecipe, tableFilterMarkRecipe, tableFilterRecipe, tableGridRecipe, tableGroupRecipe, tableHeadCellRecipe, tableHeadRowRecipe, tableHeadingRecipe, tableMarkRecipe, tablePinWidth, tableRankRecipe, tableRecipe, tableRowRecipe, tableRuleRecipe, tableScrollRecipe, tableSearchRecipe, tableSelectCellRecipe, tableSelectionActionsRecipe, tableSelectionCountRecipe, tableSelectionRecipe, tableSkeletonBarRecipe, tableSkeletonMarkRecipe, tableSortIconRecipe, tableSortLabelRecipe, tableSortMarkRecipe, tableSortRecipe, tableStepRecipe, tableToolbarRecipe, tableValueRecipe };
|
|
234
|
+
export { tableActionsCellRecipe, tableActionsWidth, tableAnatomy, tableAppliedRecipe, tableBodyRecipe, tableCardRecipe, tableCellRecipe, tableDetailBodyRecipe, tableDetailRecipe, tableEmptyHintRecipe, tableEmptyRecipe, tableEmptyTitleRecipe, tableExpandIconRecipe, tableExpandRecipe, tableFilterMarkRecipe, tableFilterRecipe, tableGridRecipe, tableGroupRecipe, tableHeadCellRecipe, tableHeadRowRecipe, tableHeadingRecipe, tableMarkRecipe, tablePinWidth, tableRankRecipe, tableRecipe, tableRowRecipe, tableRuleRecipe, tableScrollRecipe, tableSearchRecipe, tableSelectCellRecipe, tableSelectionActionsRecipe, tableSelectionCountRecipe, tableSelectionRecipe, tableSkeletonBarRecipe, tableSkeletonMarkRecipe, tableSortIconRecipe, tableSortLabelRecipe, tableSortMarkRecipe, tableSortRecipe, tableStepRecipe, tableToolbarRecipe, tableValueRecipe };
|
|
181
235
|
|
|
182
236
|
//# sourceMappingURL=table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","names":[],"sources":["../../src/recipes/table.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { controlInert, controlPress, controlQuietIcon, controlReach } from '#parts/control'\nimport { eyebrowQuiet, eyebrowType } from '#parts/eyebrow'\nimport { revealedControl, revealedIcon, shownControl, shownIcon } from '#parts/reveal'\nimport { ruleFading } from '#parts/rule'\nimport { toneTint } from '#tone'\n\ntype TableAlign = 'start' | 'end'\n\ntype TableFilterKind = 'text' | 'enum' | 'range'\n\nconst defaultTableAlign = 'start' satisfies TableAlign\n\nconst TIGHT = [\n 'flex size-tf-control-2xs flex-none items-center justify-center rounded-tf-inline',\n 'tf-icons [&_svg]:size-tf-icon-2xs [&_svg]:shrink-0',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n 'interactive:hovered:bg-tf-panel-hi interactive:hovered:text-tf-fg',\n ...controlReach,\n ...controlInert,\n]\n\nconst CELL = 'flex min-w-0 items-center px-4'\n\nconst tablePinWidth = 52\n\nconst tableActionsWidth = 160\n\nconst tableRecipe = cva('flex w-full min-w-0 flex-col gap-8 font-tf-body')\n\nconst tableToolbarRecipe = cva('flex flex-wrap items-center gap-3')\n\nconst tableSearchRecipe = cva('max-w-tf-panel flex-none')\n\nconst tableAppliedRecipe = cva('flex flex-1 flex-wrap items-center justify-end gap-2')\n\nconst tableSelectionRecipe = cva([\n 'flex flex-wrap items-center gap-4 rounded-tf-control bg-tf-accent-tint px-4 py-3',\n 'animate-tf-in motion-reduce:animate-none',\n])\n\nconst tableSelectionCountRecipe = cva('text-tf-body-sm font-medium text-tf-accent-hi')\n\nconst tableSelectionActionsRecipe = cva('ml-auto flex flex-wrap items-center gap-2')\n\nconst tableCardRecipe = cva('relative isolate rounded-tf-card', {\n defaultVariants: { bordered: true },\n variants: {\n bordered: {\n false: '',\n true: 'tf-edge-sweep tf-swept blend-tf-accent tf-edge-plain',\n },\n },\n})\n\nconst tableScrollRecipe = cva([\n 'tf-scroll-thin overflow-x-auto rounded-tf-card',\n 'tf-resizes motion-reduce:transition-none',\n])\n\nconst tableGridRecipe = cva('overflow-x-clip text-tf-body-sm font-medium text-tf-fg')\n\nconst tableHeadRowRecipe = cva('grid h-tf-control-md')\n\nconst tableHeadCellRecipe = cva([CELL, 'gap-1 whitespace-nowrap'], {\n defaultVariants: { align: defaultTableAlign },\n variants: {\n align: {\n end: 'justify-end',\n start: '',\n } satisfies Record<TableAlign, string>,\n },\n})\n\nconst tableHeadingRecipe = cva([`flex-none text-tf-caption ${eyebrowQuiet}`])\n\nconst tableSortRecipe = cva(\n [\n '-ml-2 flex h-tf-row min-w-0 items-center gap-2 rounded-tf-inline px-2',\n `text-tf-caption ${eyebrowType}`,\n 'tf-icons [&_svg]:size-tf-icon-2xs [&_svg]:shrink-0',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n 'interactive:hovered:bg-tf-panel-hi interactive:hovered:text-tf-fg',\n ...controlReach,\n ...controlPress,\n ...controlInert,\n ],\n {\n defaultVariants: { sorted: false },\n variants: {\n sorted: { false: 'text-tf-muted', true: 'text-tf-accent-hi' },\n },\n },\n)\n\nconst tableSortLabelRecipe = cva('min-w-0 truncate')\n\nconst tableSortIconRecipe = cva('tf-transition motion-reduce:transition-none', {\n defaultVariants: { descending: false },\n variants: {\n descending: { false: '', true: 'rotate-180' },\n },\n})\n\nconst tableSortMarkRecipe = cva('', {\n defaultVariants: { sorted: false },\n variants: {\n sorted: { false: revealedIcon, true: shownIcon },\n },\n})\n\nconst tableFilterMarkRecipe = cva('', {\n defaultVariants: { on: false },\n variants: {\n on: { false: revealedControl, true: shownControl },\n },\n})\n\nconst tableRankRecipe = cva([\n 'flex-none rounded-tf-pill bg-tf-accent-tint px-1.5',\n 'text-tf-caption-sm font-normal text-tf-accent-hi tabular-nums',\n])\n\nconst tableFilterRecipe = cva(TIGHT, {\n defaultVariants: { on: false },\n variants: {\n on: { false: 'text-tf-muted', true: 'bg-tf-accent-tint text-tf-accent-hi' },\n },\n})\n\nconst tableRuleRecipe = cva(`block ${ruleFading}`)\n\nconst PAGING = [\n 'data-[going=forward]:[--tf-page-from:calc(var(--spacing)*4)]',\n 'data-[going=back]:[--tf-page-from:calc(var(--spacing)*-4)]',\n 'data-[step=a]:motion-safe:animate-tf-page',\n 'data-[step=b]:motion-safe:animate-tf-page-again',\n]\n\nconst tableBodyRecipe = cva(PAGING)\n\nconst tableGroupRecipe = cva('border-b border-tf-line-2 last:border-b-0')\n\nconst A_WASH_OVER_WHATEVER_IS_THERE = [\n 'relative',\n \"before:pointer-events-none before:absolute before:inset-0 before:content-['']\",\n 'before:tf-transition before:motion-reduce:transition-none',\n 'not-data-selected:hovered:before:bg-tf-panel-2',\n 'data-selected:before:bg-tf-accent-tint',\n]\n\nconst tableRowRecipe = cva(\n ['grid tf-transition motion-reduce:transition-none', ...A_WASH_OVER_WHATEVER_IS_THERE],\n {\n defaultVariants: { accent: 'none', dense: false },\n variants: {\n accent: { ...toneTint, none: '' },\n dense: { false: 'h-tf-control-lg', true: 'h-tf-control-md' },\n },\n },\n)\n\nconst tableSelectCellRecipe = cva('flex items-center justify-center')\n\nconst tableMarkRecipe = cva('flex')\n\nconst tableCellRecipe = cva([CELL, 'gap-3'], {\n defaultVariants: { align: defaultTableAlign, mono: false, tabular: false },\n variants: {\n align: {\n end: 'justify-end text-right',\n start: '',\n } satisfies Record<TableAlign, string>,\n mono: { false: '', true: 'font-mono' },\n tabular: { false: '', true: 'whitespace-nowrap tabular-nums' },\n },\n})\n\nconst tableValueRecipe = cva('min-w-0 truncate')\n\nconst tableExpandRecipe = cva(TIGHT, {\n defaultVariants: { open: false },\n variants: {\n open: { false: 'text-tf-muted', true: 'text-tf-accent-hi' },\n },\n})\n\nconst tableExpandIconRecipe = cva('tf-transition motion-reduce:transition-none', {\n defaultVariants: { open: false },\n variants: {\n open: { false: '', true: 'rotate-90' },\n },\n})\n\nconst tableActionsCellRecipe = cva([\n 'sticky right-0 flex items-center justify-end gap-2 pr-3 pl-6',\n 'backdrop-blur-tf-panel in-data-turning:bg-tf-surface-quiet',\n 'before:absolute before:inset-y-0 before:left-0 before:w-tf-hairline before:bg-tf-line-2',\n \"before:content-['']\",\n])\n\nconst tableStepRecipe = cva(controlQuietIcon)\n\nconst tableDetailRecipe = cva('tf-unfolds bg-tf-sunken-hi motion-reduce:transition-none')\n\nconst tableDetailBodyRecipe = cva([\n 'py-5 pr-6 pl-16',\n 'animate-tf-fade-in motion-reduce:animate-none',\n])\n\nconst tableSkeletonBarRecipe = cva('h-3 tf-breathing rounded-tf-pill bg-tf-panel', {\n defaultVariants: { numeric: false },\n variants: {\n numeric: { false: 'w-3/5', true: 'w-2/5' },\n },\n})\n\nconst tableSkeletonMarkRecipe = cva(\n 'size-tf-icon-lg flex-none tf-breathing rounded-tf-inline bg-tf-panel',\n)\n\nconst tableEmptyRecipe = cva('flex flex-col items-center gap-2 px-6 py-14 text-center')\n\nconst tableEmptyTitleRecipe = cva(\n 'font-tf-display text-tf-h4 font-bold tracking-tf-tight text-tf-fg',\n)\n\nconst tableEmptyHintRecipe = cva('text-tf-body-sm font-medium text-tf-muted')\n\nexport {\n type TableAlign,\n type TableFilterKind,\n tableActionsCellRecipe,\n tableActionsWidth,\n tableAppliedRecipe,\n tableBodyRecipe,\n tableCardRecipe,\n tableCellRecipe,\n tableDetailBodyRecipe,\n tableDetailRecipe,\n tableEmptyHintRecipe,\n tableEmptyRecipe,\n tableEmptyTitleRecipe,\n tableExpandIconRecipe,\n tableExpandRecipe,\n tableFilterRecipe,\n tableGridRecipe,\n tableGroupRecipe,\n tableHeadCellRecipe,\n tableHeadRowRecipe,\n tableHeadingRecipe,\n tableMarkRecipe,\n tablePinWidth,\n tableRecipe,\n tableRowRecipe,\n tableRuleRecipe,\n tableScrollRecipe,\n tableSearchRecipe,\n tableSelectCellRecipe,\n tableSelectionActionsRecipe,\n tableSelectionCountRecipe,\n tableSelectionRecipe,\n tableSkeletonBarRecipe,\n tableSkeletonMarkRecipe,\n tableFilterMarkRecipe,\n tableRankRecipe,\n tableSortIconRecipe,\n tableSortMarkRecipe,\n tableSortLabelRecipe,\n tableSortRecipe,\n tableStepRecipe,\n tableToolbarRecipe,\n tableValueRecipe,\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table.js","names":[],"sources":["../../src/recipes/table.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\nimport { controlInert, controlPress, controlQuietIcon, controlReach } from '#parts/control'\nimport { eyebrowQuiet, eyebrowType } from '#parts/eyebrow'\nimport { revealedControl, revealedIcon, shownControl, shownIcon } from '#parts/reveal'\nimport { ruleFading } from '#parts/rule'\nimport { toneTint } from '#tone'\n\nimport { tableFilterRuleRecipe } from './tableFilter'\n\ntype TableAlign = 'start' | 'end'\n\ntype TableFilterKind = 'text' | 'enum' | 'range'\n\nconst defaultTableAlign = 'start' satisfies TableAlign\n\nconst TIGHT = [\n 'flex size-tf-control-2xs flex-none items-center justify-center rounded-tf-inline',\n 'tf-icons [&_svg]:size-tf-icon-2xs [&_svg]:shrink-0',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n 'interactive:hovered:bg-tf-panel-hi interactive:hovered:text-tf-fg',\n ...controlReach,\n ...controlInert,\n]\n\nconst CELL = 'flex min-w-0 items-center px-4'\n\nconst tablePinWidth = 52\n\nconst tableActionsWidth = 160\n\nconst tableRecipe = cva('flex w-full min-w-0 flex-col gap-8 font-tf-body')\n\nconst tableToolbarRecipe = cva('flex flex-wrap items-center gap-3')\n\nconst tableSearchRecipe = cva('max-w-tf-panel flex-none')\n\nconst tableAppliedRecipe = cva('flex flex-1 flex-wrap items-center justify-end gap-2')\n\nconst tableSelectionRecipe = cva([\n 'flex flex-wrap items-center gap-4 rounded-tf-control bg-tf-accent-tint px-4 py-3',\n 'animate-tf-in motion-reduce:animate-none',\n])\n\nconst tableSelectionCountRecipe = cva('text-tf-body-sm font-medium text-tf-accent-hi')\n\nconst tableSelectionActionsRecipe = cva('ml-auto flex flex-wrap items-center gap-2')\n\nconst tableCardRecipe = cva('relative isolate rounded-tf-card', {\n defaultVariants: { bordered: true },\n variants: {\n bordered: {\n false: '',\n true: 'tf-edge-sweep tf-swept blend-tf-accent tf-edge-plain',\n },\n },\n})\n\nconst tableScrollRecipe = cva([\n 'tf-scroll-thin overflow-x-auto rounded-tf-card',\n 'tf-resizes motion-reduce:transition-none',\n])\n\nconst tableGridRecipe = cva('overflow-x-clip text-tf-body-sm font-medium text-tf-fg')\n\nconst tableHeadRowRecipe = cva('grid h-tf-control-md')\n\nconst tableHeadCellRecipe = cva([CELL, 'gap-1 whitespace-nowrap'], {\n defaultVariants: { align: defaultTableAlign },\n variants: {\n align: {\n end: 'justify-end',\n start: '',\n } satisfies Record<TableAlign, string>,\n },\n})\n\nconst tableHeadingRecipe = cva([`flex-none text-tf-caption ${eyebrowQuiet}`])\n\nconst tableSortRecipe = cva(\n [\n '-ml-2 flex h-tf-row min-w-0 items-center gap-2 rounded-tf-inline px-2',\n `text-tf-caption ${eyebrowType}`,\n 'tf-icons [&_svg]:size-tf-icon-2xs [&_svg]:shrink-0',\n 'cursor-pointer tf-transition motion-reduce:transition-none',\n 'interactive:hovered:bg-tf-panel-hi interactive:hovered:text-tf-fg',\n ...controlReach,\n ...controlPress,\n ...controlInert,\n ],\n {\n defaultVariants: { sorted: false },\n variants: {\n sorted: { false: 'text-tf-muted', true: 'text-tf-accent-hi' },\n },\n },\n)\n\nconst tableSortLabelRecipe = cva('min-w-0 truncate')\n\nconst tableSortIconRecipe = cva('tf-transition motion-reduce:transition-none', {\n defaultVariants: { descending: false },\n variants: {\n descending: { false: '', true: 'rotate-180' },\n },\n})\n\nconst tableSortMarkRecipe = cva('', {\n defaultVariants: { sorted: false },\n variants: {\n sorted: { false: revealedIcon, true: shownIcon },\n },\n})\n\nconst tableFilterMarkRecipe = cva('', {\n defaultVariants: { on: false },\n variants: {\n on: { false: revealedControl, true: shownControl },\n },\n})\n\nconst tableRankRecipe = cva([\n 'flex-none rounded-tf-pill bg-tf-accent-tint px-1.5',\n 'text-tf-caption-sm font-normal text-tf-accent-hi tabular-nums',\n])\n\nconst tableFilterRecipe = cva(TIGHT, {\n defaultVariants: { on: false },\n variants: {\n on: { false: 'text-tf-muted', true: 'bg-tf-accent-tint text-tf-accent-hi' },\n },\n})\n\nconst tableRuleRecipe = cva(`block ${ruleFading}`)\n\nconst PAGING = [\n 'data-[going=forward]:[--tf-page-from:calc(var(--spacing)*4)]',\n 'data-[going=back]:[--tf-page-from:calc(var(--spacing)*-4)]',\n 'data-[step=a]:motion-safe:animate-tf-page',\n 'data-[step=b]:motion-safe:animate-tf-page-again',\n]\n\nconst tableBodyRecipe = cva(PAGING)\n\nconst tableGroupRecipe = cva('border-b border-tf-line-2 last:border-b-0')\n\nconst A_WASH_OVER_WHATEVER_IS_THERE = [\n 'relative',\n \"before:pointer-events-none before:absolute before:inset-0 before:content-['']\",\n 'before:tf-transition before:motion-reduce:transition-none',\n 'not-data-selected:hovered:before:bg-tf-panel-2',\n 'data-selected:before:bg-tf-accent-tint',\n]\n\nconst tableRowRecipe = cva(\n ['grid tf-transition motion-reduce:transition-none', ...A_WASH_OVER_WHATEVER_IS_THERE],\n {\n defaultVariants: { accent: 'none', dense: false },\n variants: {\n accent: { ...toneTint, none: '' },\n dense: { false: 'h-tf-control-lg', true: 'h-tf-control-md' },\n },\n },\n)\n\nconst tableSelectCellRecipe = cva('flex items-center justify-center')\n\nconst tableMarkRecipe = cva('flex')\n\nconst tableCellRecipe = cva([CELL, 'gap-3'], {\n defaultVariants: { align: defaultTableAlign, mono: false, tabular: false },\n variants: {\n align: {\n end: 'justify-end text-right',\n start: '',\n } satisfies Record<TableAlign, string>,\n mono: { false: '', true: 'font-mono' },\n tabular: { false: '', true: 'whitespace-nowrap tabular-nums' },\n },\n})\n\nconst tableValueRecipe = cva('min-w-0 truncate')\n\nconst tableExpandRecipe = cva(TIGHT, {\n defaultVariants: { open: false },\n variants: {\n open: { false: 'text-tf-muted', true: 'text-tf-accent-hi' },\n },\n})\n\nconst tableExpandIconRecipe = cva('tf-transition motion-reduce:transition-none', {\n defaultVariants: { open: false },\n variants: {\n open: { false: '', true: 'rotate-90' },\n },\n})\n\nconst tableActionsCellRecipe = cva([\n 'sticky right-0 flex items-center justify-end gap-2 pr-3 pl-6',\n 'backdrop-blur-tf-panel in-data-turning:bg-tf-surface-quiet',\n 'before:absolute before:inset-y-0 before:left-0 before:w-tf-hairline before:bg-tf-line-2',\n \"before:content-['']\",\n])\n\nconst tableStepRecipe = cva(controlQuietIcon)\n\nconst tableDetailRecipe = cva('tf-unfolds bg-tf-sunken-hi motion-reduce:transition-none')\n\nconst tableDetailBodyRecipe = cva([\n 'py-5 pr-6 pl-16',\n 'animate-tf-fade-in motion-reduce:animate-none',\n])\n\nconst tableSkeletonBarRecipe = cva('h-3 tf-breathing rounded-tf-pill bg-tf-panel', {\n defaultVariants: { numeric: false },\n variants: {\n numeric: { false: 'w-3/5', true: 'w-2/5' },\n },\n})\n\nconst tableSkeletonMarkRecipe = cva(\n 'size-tf-icon-lg flex-none tf-breathing rounded-tf-inline bg-tf-panel',\n)\n\nconst tableEmptyRecipe = cva('flex flex-col items-center gap-2 px-6 py-14 text-center')\n\nconst tableEmptyTitleRecipe = cva(\n 'font-tf-display text-tf-h4 font-bold tracking-tf-tight text-tf-fg',\n)\n\nconst tableEmptyHintRecipe = cva('text-tf-body-sm font-medium text-tf-muted')\n\nconst tableAnatomy = anatomy({\n bar: { part: 'bar', recipe: tableSkeletonBarRecipe, required: false },\n filterRule: { part: 'filter-rule', recipe: tableFilterRuleRecipe, required: true },\n head: { part: 'head', recipe: tableHeadCellRecipe, required: true },\n mark: { part: 'mark', recipe: tableSortMarkRecipe, required: false },\n rank: { part: 'rank', recipe: tableRankRecipe, required: false },\n root: { part: 'table', recipe: tableRecipe, required: true },\n rule: { part: 'rule', recipe: tableRuleRecipe, required: true },\n ruled: { part: 'ruled', recipe: tableGroupRecipe, required: true },\n tableFilter: { part: 'table-filter', recipe: tableFilterRecipe, required: false },\n toolbar: { part: 'table-toolbar', recipe: tableToolbarRecipe, required: false },\n})\n\nexport {\n type TableAlign,\n type TableFilterKind,\n tableAnatomy,\n tableActionsCellRecipe,\n tableActionsWidth,\n tableAppliedRecipe,\n tableBodyRecipe,\n tableCardRecipe,\n tableCellRecipe,\n tableDetailBodyRecipe,\n tableDetailRecipe,\n tableEmptyHintRecipe,\n tableEmptyRecipe,\n tableEmptyTitleRecipe,\n tableExpandIconRecipe,\n tableExpandRecipe,\n tableFilterRecipe,\n tableGridRecipe,\n tableGroupRecipe,\n tableHeadCellRecipe,\n tableHeadRowRecipe,\n tableHeadingRecipe,\n tableMarkRecipe,\n tablePinWidth,\n tableRecipe,\n tableRowRecipe,\n tableRuleRecipe,\n tableScrollRecipe,\n tableSearchRecipe,\n tableSelectCellRecipe,\n tableSelectionActionsRecipe,\n tableSelectionCountRecipe,\n tableSelectionRecipe,\n tableSkeletonBarRecipe,\n tableSkeletonMarkRecipe,\n tableFilterMarkRecipe,\n tableRankRecipe,\n tableSortIconRecipe,\n tableSortMarkRecipe,\n tableSortLabelRecipe,\n tableSortRecipe,\n tableStepRecipe,\n tableToolbarRecipe,\n tableValueRecipe,\n}\n"],"mappings":"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"}
|
package/dist/recipes/tail.d.ts
CHANGED
|
@@ -1,20 +1,55 @@
|
|
|
1
1
|
//#region src/recipes/tail.d.ts
|
|
2
2
|
declare const tailSeverities: readonly ["quiet", "plain", "warning", "danger", "success"];
|
|
3
3
|
type TailSeverity = (typeof tailSeverities)[number];
|
|
4
|
-
declare const defaultTailSeverity = "plain";
|
|
5
4
|
declare const tailRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
6
5
|
declare const tailScrollRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
7
6
|
declare const tailLineRecipe: (props?: ({
|
|
8
|
-
severity?: "
|
|
7
|
+
severity?: "plain" | "success" | "warning" | "danger" | "quiet" | null | undefined;
|
|
9
8
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
10
9
|
declare const tailGutterRecipe: (props?: ({
|
|
11
|
-
severity?: "
|
|
10
|
+
severity?: "plain" | "success" | "warning" | "danger" | "quiet" | null | undefined;
|
|
12
11
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
13
12
|
declare const tailAtRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
14
13
|
declare const tailTextRecipe: (props?: ({
|
|
15
|
-
severity?: "
|
|
14
|
+
severity?: "plain" | "success" | "warning" | "danger" | "quiet" | null | undefined;
|
|
16
15
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
17
16
|
declare const tailEmptyRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
17
|
+
declare const tailAnatomy: {
|
|
18
|
+
readonly at: {
|
|
19
|
+
readonly part: "at";
|
|
20
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
21
|
+
readonly required: false;
|
|
22
|
+
};
|
|
23
|
+
readonly empty: {
|
|
24
|
+
readonly part: "empty";
|
|
25
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
26
|
+
readonly required: false;
|
|
27
|
+
};
|
|
28
|
+
readonly line: {
|
|
29
|
+
readonly part: "line";
|
|
30
|
+
readonly recipe: (props?: ({
|
|
31
|
+
severity?: "plain" | "success" | "warning" | "danger" | "quiet" | null | undefined;
|
|
32
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
33
|
+
readonly required: false;
|
|
34
|
+
};
|
|
35
|
+
readonly root: {
|
|
36
|
+
readonly part: "tail";
|
|
37
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
38
|
+
readonly required: true;
|
|
39
|
+
};
|
|
40
|
+
readonly scroll: {
|
|
41
|
+
readonly part: "scroll";
|
|
42
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
43
|
+
readonly required: true;
|
|
44
|
+
};
|
|
45
|
+
readonly text: {
|
|
46
|
+
readonly part: "text";
|
|
47
|
+
readonly recipe: (props?: ({
|
|
48
|
+
severity?: "plain" | "success" | "warning" | "danger" | "quiet" | null | undefined;
|
|
49
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
50
|
+
readonly required: false;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
18
53
|
//#endregion
|
|
19
|
-
export { type TailSeverity,
|
|
54
|
+
export { type TailSeverity, tailAnatomy, tailAtRecipe, tailEmptyRecipe, tailGutterRecipe, tailLineRecipe, tailRecipe, tailScrollRecipe, tailSeverities, tailTextRecipe };
|
|
20
55
|
//# sourceMappingURL=tail.d.ts.map
|
package/dist/recipes/tail.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { anatomy } from "../anatomy.js";
|
|
1
2
|
import { cva } from "class-variance-authority";
|
|
2
3
|
//#region src/recipes/tail.ts
|
|
3
4
|
const tailSeverities = [
|
|
@@ -7,11 +8,10 @@ const tailSeverities = [
|
|
|
7
8
|
"danger",
|
|
8
9
|
"success"
|
|
9
10
|
];
|
|
10
|
-
const defaultTailSeverity = "plain";
|
|
11
11
|
const tailRecipe = cva(["overflow-hidden rounded-tf-block bg-tf-sunken-quiet", "shadow-[inset_0_0_0_var(--spacing-tf-hairline)_var(--color-tf-line-2)]"]);
|
|
12
12
|
const tailScrollRecipe = cva("tf-scroll-thin overflow-x-auto overflow-y-auto");
|
|
13
13
|
const tailLineRecipe = cva("grid min-w-max grid-cols-[3px_6.5rem_1fr] items-center gap-x-3 py-0.5", {
|
|
14
|
-
defaultVariants: { severity:
|
|
14
|
+
defaultVariants: { severity: "plain" },
|
|
15
15
|
variants: { severity: {
|
|
16
16
|
danger: "bg-tf-danger-wash",
|
|
17
17
|
plain: "",
|
|
@@ -21,7 +21,7 @@ const tailLineRecipe = cva("grid min-w-max grid-cols-[3px_6.5rem_1fr] items-cent
|
|
|
21
21
|
} }
|
|
22
22
|
});
|
|
23
23
|
const tailGutterRecipe = cva("h-full", {
|
|
24
|
-
defaultVariants: { severity:
|
|
24
|
+
defaultVariants: { severity: "plain" },
|
|
25
25
|
variants: { severity: {
|
|
26
26
|
danger: "bg-tf-danger-hi",
|
|
27
27
|
plain: "bg-transparent",
|
|
@@ -32,7 +32,7 @@ const tailGutterRecipe = cva("h-full", {
|
|
|
32
32
|
});
|
|
33
33
|
const tailAtRecipe = cva("py-0.5 pl-3 font-mono text-tf-caption-sm text-tf-muted");
|
|
34
34
|
const tailTextRecipe = cva("py-0.5 pr-3 font-mono text-tf-caption-sm whitespace-nowrap", {
|
|
35
|
-
defaultVariants: { severity:
|
|
35
|
+
defaultVariants: { severity: "plain" },
|
|
36
36
|
variants: { severity: {
|
|
37
37
|
danger: "text-tf-danger-hi",
|
|
38
38
|
plain: "text-tf-fg",
|
|
@@ -42,7 +42,39 @@ const tailTextRecipe = cva("py-0.5 pr-3 font-mono text-tf-caption-sm whitespace-
|
|
|
42
42
|
} }
|
|
43
43
|
});
|
|
44
44
|
const tailEmptyRecipe = cva("p-5 text-center text-tf-caption font-medium text-tf-muted");
|
|
45
|
+
const tailAnatomy = anatomy({
|
|
46
|
+
at: {
|
|
47
|
+
part: "at",
|
|
48
|
+
recipe: tailAtRecipe,
|
|
49
|
+
required: false
|
|
50
|
+
},
|
|
51
|
+
empty: {
|
|
52
|
+
part: "empty",
|
|
53
|
+
recipe: tailEmptyRecipe,
|
|
54
|
+
required: false
|
|
55
|
+
},
|
|
56
|
+
line: {
|
|
57
|
+
part: "line",
|
|
58
|
+
recipe: tailLineRecipe,
|
|
59
|
+
required: false
|
|
60
|
+
},
|
|
61
|
+
root: {
|
|
62
|
+
part: "tail",
|
|
63
|
+
recipe: tailRecipe,
|
|
64
|
+
required: true
|
|
65
|
+
},
|
|
66
|
+
scroll: {
|
|
67
|
+
part: "scroll",
|
|
68
|
+
recipe: tailScrollRecipe,
|
|
69
|
+
required: true
|
|
70
|
+
},
|
|
71
|
+
text: {
|
|
72
|
+
part: "text",
|
|
73
|
+
recipe: tailTextRecipe,
|
|
74
|
+
required: false
|
|
75
|
+
}
|
|
76
|
+
});
|
|
45
77
|
//#endregion
|
|
46
|
-
export {
|
|
78
|
+
export { tailAnatomy, tailAtRecipe, tailEmptyRecipe, tailGutterRecipe, tailLineRecipe, tailRecipe, tailScrollRecipe, tailSeverities, tailTextRecipe };
|
|
47
79
|
|
|
48
80
|
//# sourceMappingURL=tail.js.map
|
package/dist/recipes/tail.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tail.js","names":[],"sources":["../../src/recipes/tail.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nconst tailSeverities = ['quiet', 'plain', 'warning', 'danger', 'success'] as const\n\ntype TailSeverity = (typeof tailSeverities)[number]\n\nconst
|
|
1
|
+
{"version":3,"file":"tail.js","names":[],"sources":["../../src/recipes/tail.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\n\nconst tailSeverities = ['quiet', 'plain', 'warning', 'danger', 'success'] as const\n\ntype TailSeverity = (typeof tailSeverities)[number]\n\nconst tailRecipe = cva([\n 'overflow-hidden rounded-tf-block bg-tf-sunken-quiet',\n 'shadow-[inset_0_0_0_var(--spacing-tf-hairline)_var(--color-tf-line-2)]',\n])\n\nconst tailScrollRecipe = cva('tf-scroll-thin overflow-x-auto overflow-y-auto')\n\nconst tailLineRecipe = cva(\n 'grid min-w-max grid-cols-[3px_6.5rem_1fr] items-center gap-x-3 py-0.5',\n {\n defaultVariants: { severity: 'plain' },\n variants: {\n severity: {\n danger: 'bg-tf-danger-wash',\n plain: '',\n quiet: '',\n success: 'bg-tf-success-tint',\n warning: 'bg-tf-warning-tint',\n } satisfies Record<TailSeverity, string>,\n },\n },\n)\n\nconst tailGutterRecipe = cva('h-full', {\n defaultVariants: { severity: 'plain' },\n variants: {\n severity: {\n danger: 'bg-tf-danger-hi',\n plain: 'bg-transparent',\n quiet: 'bg-transparent',\n success: 'bg-tf-success-hi',\n warning: 'bg-tf-warning-hi',\n } satisfies Record<TailSeverity, string>,\n },\n})\n\nconst tailAtRecipe = cva('py-0.5 pl-3 font-mono text-tf-caption-sm text-tf-muted')\n\nconst tailTextRecipe = cva('py-0.5 pr-3 font-mono text-tf-caption-sm whitespace-nowrap', {\n defaultVariants: { severity: 'plain' },\n variants: {\n severity: {\n danger: 'text-tf-danger-hi',\n plain: 'text-tf-fg',\n quiet: 'text-tf-muted',\n success: 'text-tf-success-hi',\n warning: 'text-tf-warning-hi',\n } satisfies Record<TailSeverity, string>,\n },\n})\n\nconst tailEmptyRecipe = cva('p-5 text-center text-tf-caption font-medium text-tf-muted')\n\nconst tailAnatomy = anatomy({\n at: { part: 'at', recipe: tailAtRecipe, required: false },\n empty: { part: 'empty', recipe: tailEmptyRecipe, required: false },\n line: { part: 'line', recipe: tailLineRecipe, required: false },\n root: { part: 'tail', recipe: tailRecipe, required: true },\n scroll: { part: 'scroll', recipe: tailScrollRecipe, required: true },\n text: { part: 'text', recipe: tailTextRecipe, required: false },\n})\n\nexport {\n type TailSeverity,\n tailAnatomy,\n tailAtRecipe,\n tailEmptyRecipe,\n tailGutterRecipe,\n tailLineRecipe,\n tailRecipe,\n tailScrollRecipe,\n tailSeverities,\n tailTextRecipe,\n}\n"],"mappings":";;;AAIA,MAAM,iBAAiB;CAAC;CAAS;CAAS;CAAW;CAAU;AAAS;AAIxE,MAAM,aAAa,IAAI,CACrB,uDACA,wEACF,CAAC;AAED,MAAM,mBAAmB,IAAI,gDAAgD;AAE7E,MAAM,iBAAiB,IACrB,yEACA;CACE,iBAAiB,EAAE,UAAU,QAAQ;CACrC,UAAU,EACR,UAAU;EACR,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,SAAS;CACX,EACF;AACF,CACF;AAEA,MAAM,mBAAmB,IAAI,UAAU;CACrC,iBAAiB,EAAE,UAAU,QAAQ;CACrC,UAAU,EACR,UAAU;EACR,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,SAAS;CACX,EACF;AACF,CAAC;AAED,MAAM,eAAe,IAAI,wDAAwD;AAEjF,MAAM,iBAAiB,IAAI,8DAA8D;CACvF,iBAAiB,EAAE,UAAU,QAAQ;CACrC,UAAU,EACR,UAAU;EACR,QAAQ;EACR,OAAO;EACP,OAAO;EACP,SAAS;EACT,SAAS;CACX,EACF;AACF,CAAC;AAED,MAAM,kBAAkB,IAAI,2DAA2D;AAEvF,MAAM,cAAc,QAAQ;CAC1B,IAAI;EAAE,MAAM;EAAM,QAAQ;EAAc,UAAU;CAAM;CACxD,OAAO;EAAE,MAAM;EAAS,QAAQ;EAAiB,UAAU;CAAM;CACjE,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAgB,UAAU;CAAM;CAC9D,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAY,UAAU;CAAK;CACzD,QAAQ;EAAE,MAAM;EAAU,QAAQ;EAAkB,UAAU;CAAK;CACnE,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAgB,UAAU;CAAM;AAChE,CAAC"}
|
package/dist/recipes/text.d.ts
CHANGED
|
@@ -5,7 +5,6 @@ type TextWeight = 'normal' | 'medium' | 'semibold' | 'bold';
|
|
|
5
5
|
type TextFamily = 'sans' | 'mono' | 'display';
|
|
6
6
|
declare const defaultTextSize = "body";
|
|
7
7
|
declare const defaultTextTone = "fg";
|
|
8
|
-
declare const defaultTextWeight = "normal";
|
|
9
8
|
declare const defaultTextFamily = "sans";
|
|
10
9
|
declare const textSizes: readonly ["caption-sm", "caption", "body-sm", "body", "lead"];
|
|
11
10
|
declare const textTones: readonly ["fg", "muted", "accent", "danger", "info", "success", "warning"];
|
|
@@ -14,12 +13,26 @@ declare const textFamilies: readonly ["sans", "mono", "display"];
|
|
|
14
13
|
declare const restingWeight: (size: TextSize, uppercase?: boolean) => TextWeight;
|
|
15
14
|
declare const textRecipe: (props?: ({
|
|
16
15
|
family?: "display" | "sans" | "mono" | null | undefined;
|
|
17
|
-
size?: "
|
|
16
|
+
size?: "body" | "caption" | "lead" | "caption-sm" | "body-sm" | null | undefined;
|
|
18
17
|
tabular?: boolean | null | undefined;
|
|
19
18
|
tone?: "accent" | "success" | "warning" | "info" | "danger" | "fg" | "muted" | null | undefined;
|
|
20
19
|
uppercase?: boolean | null | undefined;
|
|
21
20
|
weight?: "normal" | "medium" | "semibold" | "bold" | null | undefined;
|
|
22
21
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
22
|
+
declare const textAnatomy: {
|
|
23
|
+
readonly root: {
|
|
24
|
+
readonly part: "text";
|
|
25
|
+
readonly recipe: (props?: ({
|
|
26
|
+
family?: "display" | "sans" | "mono" | null | undefined;
|
|
27
|
+
size?: "body" | "caption" | "lead" | "caption-sm" | "body-sm" | null | undefined;
|
|
28
|
+
tabular?: boolean | null | undefined;
|
|
29
|
+
tone?: "accent" | "success" | "warning" | "info" | "danger" | "fg" | "muted" | null | undefined;
|
|
30
|
+
uppercase?: boolean | null | undefined;
|
|
31
|
+
weight?: "normal" | "medium" | "semibold" | "bold" | null | undefined;
|
|
32
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
33
|
+
readonly required: true;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
23
36
|
//#endregion
|
|
24
|
-
export { type TextFamily, type TextSize, type TextTone, type TextWeight, defaultTextFamily, defaultTextSize, defaultTextTone,
|
|
37
|
+
export { type TextFamily, type TextSize, type TextTone, type TextWeight, defaultTextFamily, defaultTextSize, defaultTextTone, restingWeight, textAnatomy, textFamilies, textRecipe, textSizes, textTones, textWeights };
|
|
25
38
|
//# sourceMappingURL=text.d.ts.map
|
package/dist/recipes/text.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import { anatomy } from "../anatomy.js";
|
|
1
2
|
import { toneText } from "../tone.js";
|
|
2
3
|
import { eyebrowType } from "../parts/eyebrow.js";
|
|
3
4
|
import { cva } from "class-variance-authority";
|
|
4
5
|
//#region src/recipes/text.ts
|
|
5
6
|
const defaultTextSize = "body";
|
|
6
7
|
const defaultTextTone = "fg";
|
|
7
|
-
const defaultTextWeight = "normal";
|
|
8
8
|
const defaultTextFamily = "sans";
|
|
9
9
|
const textSizes = [
|
|
10
10
|
"caption-sm",
|
|
@@ -56,7 +56,7 @@ const textRecipe = cva("tf-transition motion-reduce:transition-none", {
|
|
|
56
56
|
tabular: false,
|
|
57
57
|
tone: "fg",
|
|
58
58
|
uppercase: false,
|
|
59
|
-
weight:
|
|
59
|
+
weight: "normal"
|
|
60
60
|
},
|
|
61
61
|
variants: {
|
|
62
62
|
family: {
|
|
@@ -88,7 +88,12 @@ const textRecipe = cva("tf-transition motion-reduce:transition-none", {
|
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
});
|
|
91
|
+
const textAnatomy = anatomy({ root: {
|
|
92
|
+
part: "text",
|
|
93
|
+
recipe: textRecipe,
|
|
94
|
+
required: true
|
|
95
|
+
} });
|
|
91
96
|
//#endregion
|
|
92
|
-
export { defaultTextFamily, defaultTextSize, defaultTextTone,
|
|
97
|
+
export { defaultTextFamily, defaultTextSize, defaultTextTone, restingWeight, textAnatomy, textFamilies, textRecipe, textSizes, textTones, textWeights };
|
|
93
98
|
|
|
94
99
|
//# sourceMappingURL=text.js.map
|
package/dist/recipes/text.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","names":[],"sources":["../../src/recipes/text.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { eyebrowType } from '#parts/eyebrow'\nimport { toneText } from '#tone'\n\ntype TextSize = 'caption-sm' | 'caption' | 'body-sm' | 'body' | 'lead'\n\ntype TextTone = 'fg' | 'muted' | 'accent' | 'danger' | 'info' | 'success' | 'warning'\n\ntype TextWeight = 'normal' | 'medium' | 'semibold' | 'bold'\n\ntype TextFamily = 'sans' | 'mono' | 'display'\n\nconst defaultTextSize = 'body' satisfies TextSize\n\nconst defaultTextTone = 'fg' satisfies TextTone\n\nconst
|
|
1
|
+
{"version":3,"file":"text.js","names":[],"sources":["../../src/recipes/text.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\nimport { eyebrowType } from '#parts/eyebrow'\nimport { toneText } from '#tone'\n\ntype TextSize = 'caption-sm' | 'caption' | 'body-sm' | 'body' | 'lead'\n\ntype TextTone = 'fg' | 'muted' | 'accent' | 'danger' | 'info' | 'success' | 'warning'\n\ntype TextWeight = 'normal' | 'medium' | 'semibold' | 'bold'\n\ntype TextFamily = 'sans' | 'mono' | 'display'\n\nconst defaultTextSize = 'body' satisfies TextSize\n\nconst defaultTextTone = 'fg' satisfies TextTone\n\nconst defaultTextFamily = 'sans' satisfies TextFamily\n\nconst textSizes = [\n 'caption-sm',\n 'caption',\n 'body-sm',\n 'body',\n 'lead',\n] as const satisfies readonly TextSize[]\n\nconst textTones = [\n 'fg',\n 'muted',\n 'accent',\n 'danger',\n 'info',\n 'success',\n 'warning',\n] as const satisfies readonly TextTone[]\n\nconst textWeights = [\n 'normal',\n 'medium',\n 'semibold',\n 'bold',\n] as const satisfies readonly TextWeight[]\n\nconst textFamilies = ['sans', 'mono', 'display'] as const satisfies readonly TextFamily[]\n\nconst SIZE_WEIGHT = {\n body: 'normal',\n 'body-sm': 'medium',\n caption: 'medium',\n 'caption-sm': 'medium',\n lead: 'normal',\n} satisfies Record<TextSize, TextWeight>\n\nconst restingWeight = (size: TextSize, uppercase?: boolean): TextWeight => {\n if (uppercase === true) {\n return 'medium'\n }\n return SIZE_WEIGHT[size]\n}\n\nconst TONE_CLASS = {\n ...toneText,\n fg: 'text-tf-fg',\n muted: 'text-tf-muted',\n} satisfies Record<TextTone, string>\n\nconst textRecipe = cva('tf-transition motion-reduce:transition-none', {\n defaultVariants: {\n family: defaultTextFamily,\n size: defaultTextSize,\n tabular: false,\n tone: defaultTextTone,\n uppercase: false,\n weight: 'normal',\n },\n variants: {\n family: {\n display: 'font-tf-display',\n mono: 'font-mono',\n sans: 'font-tf-body',\n } satisfies Record<TextFamily, string>,\n size: {\n body: 'text-tf-body',\n 'body-sm': 'text-tf-body-sm',\n caption: 'text-tf-caption',\n 'caption-sm': 'text-tf-caption-sm',\n lead: 'max-w-tf-measure text-tf-lead',\n } satisfies Record<TextSize, string>,\n tabular: { false: '', true: 'tabular-nums' },\n tone: TONE_CLASS,\n uppercase: { false: '', true: eyebrowType },\n weight: {\n bold: 'font-bold',\n medium: 'font-medium',\n normal: 'font-normal',\n semibold: 'font-semibold',\n } satisfies Record<TextWeight, string>,\n },\n})\n\nconst textAnatomy = anatomy({\n root: { part: 'text', recipe: textRecipe, required: true },\n})\n\nexport {\n type TextFamily,\n type TextSize,\n type TextTone,\n type TextWeight,\n defaultTextFamily,\n defaultTextSize,\n defaultTextTone,\n restingWeight,\n textAnatomy,\n textFamilies,\n textRecipe,\n textSizes,\n textTones,\n textWeights,\n}\n"],"mappings":";;;;;AAcA,MAAM,kBAAkB;AAExB,MAAM,kBAAkB;AAExB,MAAM,oBAAoB;AAE1B,MAAM,YAAY;CAChB;CACA;CACA;CACA;CACA;AACF;AAEA,MAAM,YAAY;CAChB;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAEA,MAAM,cAAc;CAClB;CACA;CACA;CACA;AACF;AAEA,MAAM,eAAe;CAAC;CAAQ;CAAQ;AAAS;AAE/C,MAAM,cAAc;CAClB,MAAM;CACN,WAAW;CACX,SAAS;CACT,cAAc;CACd,MAAM;AACR;AAEA,MAAM,iBAAiB,MAAgB,cAAoC;CACzE,IAAI,cAAc,MAChB,OAAO;CAET,OAAO,YAAY;AACrB;AAEA,MAAM,aAAa;CACjB,GAAG;CACH,IAAI;CACJ,OAAO;AACT;AAEA,MAAM,aAAa,IAAI,+CAA+C;CACpE,iBAAiB;EACf,QAAQ;EACR,MAAM;EACN,SAAS;EACT,MAAA;EACA,WAAW;EACX,QAAQ;CACV;CACA,UAAU;EACR,QAAQ;GACN,SAAS;GACT,MAAM;GACN,MAAM;EACR;EACA,MAAM;GACJ,MAAM;GACN,WAAW;GACX,SAAS;GACT,cAAc;GACd,MAAM;EACR;EACA,SAAS;GAAE,OAAO;GAAI,MAAM;EAAe;EAC3C,MAAM;EACN,WAAW;GAAE,OAAO;GAAI,MAAM;EAAY;EAC1C,QAAQ;GACN,MAAM;GACN,QAAQ;GACR,QAAQ;GACR,UAAU;EACZ;CACF;AACF,CAAC;AAED,MAAM,cAAc,QAAQ,EAC1B,MAAM;CAAE,MAAM;CAAQ,QAAQ;CAAY,UAAU;AAAK,EAC3D,CAAC"}
|
|
@@ -8,6 +8,51 @@ declare const textareaRecipe: (props?: import("class-variance-authority/types").
|
|
|
8
8
|
declare const textareaCountRecipe: (props?: ({
|
|
9
9
|
reach?: "clear" | "near" | "full" | null | undefined;
|
|
10
10
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
declare const textareaAnatomy: {
|
|
12
|
+
readonly cloud: {
|
|
13
|
+
readonly part: "cloud";
|
|
14
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
15
|
+
readonly required: true;
|
|
16
|
+
};
|
|
17
|
+
readonly count: {
|
|
18
|
+
readonly part: "count";
|
|
19
|
+
readonly recipe: (props?: ({
|
|
20
|
+
reach?: "clear" | "near" | "full" | null | undefined;
|
|
21
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
22
|
+
readonly required: false;
|
|
23
|
+
};
|
|
24
|
+
readonly foot: {
|
|
25
|
+
readonly part: "foot";
|
|
26
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
27
|
+
readonly required: true;
|
|
28
|
+
};
|
|
29
|
+
readonly nebula: {
|
|
30
|
+
readonly part: "nebula";
|
|
31
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
32
|
+
readonly required: true;
|
|
33
|
+
};
|
|
34
|
+
readonly root: {
|
|
35
|
+
readonly part: "textarea";
|
|
36
|
+
readonly recipe: (props?: ({
|
|
37
|
+
fullWidth?: boolean | null | undefined;
|
|
38
|
+
message?: boolean | null | undefined;
|
|
39
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
40
|
+
readonly required: true;
|
|
41
|
+
};
|
|
42
|
+
readonly row: {
|
|
43
|
+
readonly part: "row";
|
|
44
|
+
readonly recipe: (props?: ({
|
|
45
|
+
invalid?: boolean | null | undefined;
|
|
46
|
+
loading?: boolean | null | undefined;
|
|
47
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
48
|
+
readonly required: true;
|
|
49
|
+
};
|
|
50
|
+
readonly spoken: {
|
|
51
|
+
readonly part: "spoken";
|
|
52
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
53
|
+
readonly required: false;
|
|
54
|
+
};
|
|
55
|
+
};
|
|
11
56
|
//#endregion
|
|
12
|
-
export { type TextareaReach, textareaCountRecipe, textareaRecipe, textareaShellRecipe };
|
|
57
|
+
export { type TextareaReach, textareaAnatomy, textareaCountRecipe, textareaRecipe, textareaShellRecipe };
|
|
13
58
|
//# sourceMappingURL=textarea.d.ts.map
|
package/dist/recipes/textarea.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import { anatomy } from "../anatomy.js";
|
|
1
2
|
import { controlBase, controlInert } from "../parts/control.js";
|
|
3
|
+
import { nebulaCloudLowRecipe, nebulaVeilRecipe } from "./nebula.js";
|
|
2
4
|
import { controlFailed, controlHealthy, controlShell } from "../parts/shell.js";
|
|
5
|
+
import { fieldFootRecipe, fieldRecipe } from "./field.js";
|
|
3
6
|
import { cva } from "class-variance-authority";
|
|
4
7
|
//#region src/recipes/textarea.ts
|
|
5
8
|
const shellSurface = [
|
|
@@ -42,7 +45,44 @@ const textareaCountRecipe = cva(["flex-none pt-2 font-mono text-tf-caption-sm ta
|
|
|
42
45
|
near: "text-tf-warning-hi"
|
|
43
46
|
} }
|
|
44
47
|
});
|
|
48
|
+
const textareaAnatomy = anatomy({
|
|
49
|
+
cloud: {
|
|
50
|
+
part: "cloud",
|
|
51
|
+
recipe: nebulaCloudLowRecipe,
|
|
52
|
+
required: true
|
|
53
|
+
},
|
|
54
|
+
count: {
|
|
55
|
+
part: "count",
|
|
56
|
+
recipe: textareaCountRecipe,
|
|
57
|
+
required: false
|
|
58
|
+
},
|
|
59
|
+
foot: {
|
|
60
|
+
part: "foot",
|
|
61
|
+
recipe: fieldFootRecipe,
|
|
62
|
+
required: true
|
|
63
|
+
},
|
|
64
|
+
nebula: {
|
|
65
|
+
part: "nebula",
|
|
66
|
+
recipe: nebulaVeilRecipe,
|
|
67
|
+
required: true
|
|
68
|
+
},
|
|
69
|
+
root: {
|
|
70
|
+
part: "textarea",
|
|
71
|
+
recipe: fieldRecipe,
|
|
72
|
+
required: true
|
|
73
|
+
},
|
|
74
|
+
row: {
|
|
75
|
+
part: "row",
|
|
76
|
+
recipe: textareaShellRecipe,
|
|
77
|
+
required: true
|
|
78
|
+
},
|
|
79
|
+
spoken: {
|
|
80
|
+
part: "spoken",
|
|
81
|
+
recipe: fieldFootRecipe,
|
|
82
|
+
required: false
|
|
83
|
+
}
|
|
84
|
+
});
|
|
45
85
|
//#endregion
|
|
46
|
-
export { textareaCountRecipe, textareaRecipe, textareaShellRecipe };
|
|
86
|
+
export { textareaAnatomy, textareaCountRecipe, textareaRecipe, textareaShellRecipe };
|
|
47
87
|
|
|
48
88
|
//# sourceMappingURL=textarea.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.js","names":[],"sources":["../../src/recipes/textarea.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { controlBase, controlInert } from '#parts/control'\nimport { controlFailed, controlHealthy, controlShell } from '#parts/shell'\n\ntype TextareaReach = 'clear' | 'near' | 'full'\n\nconst TEXTAREA_WAKES = [\n 'reached:[&_textarea]:placeholder:opacity-100',\n 'reached:[&_textarea]:placeholder:delay-(--tf-duration-1)',\n]\n\nconst LABEL_RESTS_BY_THE_FIRST_LINE = 'asleep:**:data-[part=label]:translate-y-2.5'\n\nconst shellSurface = [\n 'relative isolate w-full flex-col',\n 'rounded-tf-control font-tf-body',\n ...controlShell(TEXTAREA_WAKES, LABEL_RESTS_BY_THE_FIRST_LINE),\n]\n\nconst PENDING = [\n 'tf-edge-lit tf-pulsing tf-clouding',\n '**:data-[part=nebula]:tf-cloud-breathing',\n].join(' ')\n\nconst textareaShellRecipe = cva([...controlBase, ...shellSurface], {\n defaultVariants: { invalid: false, loading: false },\n variants: {\n invalid: { false: controlHealthy, true: controlFailed },\n loading: { false: '', true: PENDING },\n },\n})\n\nconst textareaRecipe = cva([\n 'max-h-59 min-h-29 w-full resize-none',\n 'tf-writes bg-transparent px-4 pt-6 pb-5',\n 'tf-scroll-faded [--tf-fade-foot:calc(var(--spacing)*5)] [--tf-fade-head:calc(var(--spacing)*6)]',\n 'text-tf-body text-tf-fg',\n 'placeholder:text-tf-muted placeholder:opacity-0',\n 'data-readonly:text-tf-muted',\n 'tf-scroll-thin outline-hidden',\n ...controlInert,\n])\n\nconst textareaCountRecipe = cva(\n [\n 'flex-none pt-2 font-mono text-tf-caption-sm tabular-nums',\n 'tf-transition motion-reduce:transition-none',\n ],\n {\n defaultVariants: { reach: 'clear' },\n variants: {\n reach: {\n clear: 'text-tf-muted',\n full: 'text-tf-danger-hi',\n near: 'text-tf-warning-hi',\n } satisfies Record<TextareaReach, string>,\n },\n },\n)\n\
|
|
1
|
+
{"version":3,"file":"textarea.js","names":[],"sources":["../../src/recipes/textarea.ts"],"sourcesContent":["import { cva } from 'class-variance-authority'\n\nimport { anatomy } from '#anatomy'\nimport { controlBase, controlInert } from '#parts/control'\nimport { controlFailed, controlHealthy, controlShell } from '#parts/shell'\n\nimport { fieldFootRecipe, fieldRecipe } from './field'\nimport { nebulaCloudLowRecipe, nebulaVeilRecipe } from './nebula'\n\ntype TextareaReach = 'clear' | 'near' | 'full'\n\nconst TEXTAREA_WAKES = [\n 'reached:[&_textarea]:placeholder:opacity-100',\n 'reached:[&_textarea]:placeholder:delay-(--tf-duration-1)',\n]\n\nconst LABEL_RESTS_BY_THE_FIRST_LINE = 'asleep:**:data-[part=label]:translate-y-2.5'\n\nconst shellSurface = [\n 'relative isolate w-full flex-col',\n 'rounded-tf-control font-tf-body',\n ...controlShell(TEXTAREA_WAKES, LABEL_RESTS_BY_THE_FIRST_LINE),\n]\n\nconst PENDING = [\n 'tf-edge-lit tf-pulsing tf-clouding',\n '**:data-[part=nebula]:tf-cloud-breathing',\n].join(' ')\n\nconst textareaShellRecipe = cva([...controlBase, ...shellSurface], {\n defaultVariants: { invalid: false, loading: false },\n variants: {\n invalid: { false: controlHealthy, true: controlFailed },\n loading: { false: '', true: PENDING },\n },\n})\n\nconst textareaRecipe = cva([\n 'max-h-59 min-h-29 w-full resize-none',\n 'tf-writes bg-transparent px-4 pt-6 pb-5',\n 'tf-scroll-faded [--tf-fade-foot:calc(var(--spacing)*5)] [--tf-fade-head:calc(var(--spacing)*6)]',\n 'text-tf-body text-tf-fg',\n 'placeholder:text-tf-muted placeholder:opacity-0',\n 'data-readonly:text-tf-muted',\n 'tf-scroll-thin outline-hidden',\n ...controlInert,\n])\n\nconst textareaCountRecipe = cva(\n [\n 'flex-none pt-2 font-mono text-tf-caption-sm tabular-nums',\n 'tf-transition motion-reduce:transition-none',\n ],\n {\n defaultVariants: { reach: 'clear' },\n variants: {\n reach: {\n clear: 'text-tf-muted',\n full: 'text-tf-danger-hi',\n near: 'text-tf-warning-hi',\n } satisfies Record<TextareaReach, string>,\n },\n },\n)\n\nconst textareaAnatomy = anatomy({\n cloud: { part: 'cloud', recipe: nebulaCloudLowRecipe, required: true },\n count: { part: 'count', recipe: textareaCountRecipe, required: false },\n foot: { part: 'foot', recipe: fieldFootRecipe, required: true },\n nebula: { part: 'nebula', recipe: nebulaVeilRecipe, required: true },\n root: { part: 'textarea', recipe: fieldRecipe, required: true },\n row: { part: 'row', recipe: textareaShellRecipe, required: true },\n spoken: { part: 'spoken', recipe: fieldFootRecipe, required: false },\n})\n\nexport {\n type TextareaReach,\n textareaAnatomy,\n textareaCountRecipe,\n textareaRecipe,\n textareaShellRecipe,\n}\n"],"mappings":";;;;;;;AAkBA,MAAM,eAAe;CACnB;CACA;CACA,GAAG,aAAa,CAThB,gDACA,0DAQ6B,GAAG,6CAA6B;AAC/D;AAEA,MAAM,UAAU,CACd,sCACA,0CACF,CAAC,CAAC,KAAK,GAAG;AAEV,MAAM,sBAAsB,IAAI,CAAC,GAAG,aAAa,GAAG,YAAY,GAAG;CACjE,iBAAiB;EAAE,SAAS;EAAO,SAAS;CAAM;CAClD,UAAU;EACR,SAAS;GAAE,OAAO;GAAgB,MAAM;EAAc;EACtD,SAAS;GAAE,OAAO;GAAI,MAAM;EAAQ;CACtC;AACF,CAAC;AAED,MAAM,iBAAiB,IAAI;CACzB;CACA;CACA;CACA;CACA;CACA;CACA;CACA,GAAG;AACL,CAAC;AAED,MAAM,sBAAsB,IAC1B,CACE,4DACA,6CACF,GACA;CACE,iBAAiB,EAAE,OAAO,QAAQ;CAClC,UAAU,EACR,OAAO;EACL,OAAO;EACP,MAAM;EACN,MAAM;CACR,EACF;AACF,CACF;AAEA,MAAM,kBAAkB,QAAQ;CAC9B,OAAO;EAAE,MAAM;EAAS,QAAQ;EAAsB,UAAU;CAAK;CACrE,OAAO;EAAE,MAAM;EAAS,QAAQ;EAAqB,UAAU;CAAM;CACrE,MAAM;EAAE,MAAM;EAAQ,QAAQ;EAAiB,UAAU;CAAK;CAC9D,QAAQ;EAAE,MAAM;EAAU,QAAQ;EAAkB,UAAU;CAAK;CACnE,MAAM;EAAE,MAAM;EAAY,QAAQ;EAAa,UAAU;CAAK;CAC9D,KAAK;EAAE,MAAM;EAAO,QAAQ;EAAqB,UAAU;CAAK;CAChE,QAAQ;EAAE,MAAM;EAAU,QAAQ;EAAiB,UAAU;CAAM;AACrE,CAAC"}
|
package/dist/recipes/tile.d.ts
CHANGED
|
@@ -13,6 +13,28 @@ declare const tileGlyphRecipe: (props?: ({
|
|
|
13
13
|
rest?: "quiet" | "filled" | "lit" | null | undefined;
|
|
14
14
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
15
15
|
declare const tileCloudRecipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
16
|
+
declare const tileAnatomy: {
|
|
17
|
+
readonly cloud: {
|
|
18
|
+
readonly part: "cloud";
|
|
19
|
+
readonly recipe: (props?: import("class-variance-authority/types").ClassProp | undefined) => string;
|
|
20
|
+
readonly required: false;
|
|
21
|
+
};
|
|
22
|
+
readonly glyph: {
|
|
23
|
+
readonly part: "glyph";
|
|
24
|
+
readonly recipe: (props?: ({
|
|
25
|
+
rest?: "quiet" | "filled" | "lit" | null | undefined;
|
|
26
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
27
|
+
readonly required: true;
|
|
28
|
+
};
|
|
29
|
+
readonly root: {
|
|
30
|
+
readonly part: "tile";
|
|
31
|
+
readonly recipe: (props?: ({
|
|
32
|
+
rest?: "quiet" | "filled" | "lit" | null | undefined;
|
|
33
|
+
tone?: "accent" | "success" | "warning" | "info" | "danger" | null | undefined;
|
|
34
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
35
|
+
readonly required: true;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
16
38
|
//#endregion
|
|
17
|
-
export { type TileRest, type TileTone, defaultTileRest, defaultTileTone, tileCloudRecipe, tileGlyphRecipe, tileRecipe, tileRests, tileTones };
|
|
39
|
+
export { type TileRest, type TileTone, defaultTileRest, defaultTileTone, tileAnatomy, tileCloudRecipe, tileGlyphRecipe, tileRecipe, tileRests, tileTones };
|
|
18
40
|
//# sourceMappingURL=tile.d.ts.map
|