@stll/ui 0.62.0 → 0.65.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/components/accordion.js +1 -1
- package/dist/components/button.d.ts +2 -1
- package/dist/components/button.js +2 -0
- package/dist/components/button.native-classes.js +5 -0
- package/dist/components/button.shared.d.ts +1 -1
- package/dist/components/button.shared.js +1 -0
- package/dist/components/checkbox.js +2 -0
- package/dist/components/court-filter.d.ts +42 -0
- package/dist/components/court-filter.js +210 -0
- package/dist/components/middle-truncate.d.ts +19 -0
- package/dist/components/middle-truncate.js +112 -0
- package/dist/components/middle-truncate.logic.d.ts +11 -0
- package/dist/components/middle-truncate.logic.js +63 -0
- package/dist/components/separator.d.ts +26 -1
- package/dist/components/separator.js +52 -1
- package/dist/components/sidebar.d.ts +8 -1
- package/dist/components/sidebar.js +21 -1
- package/dist/components/text.js +1 -1
- package/dist/components/text.native.js +3 -11
- package/dist/components/text.shared.d.ts +0 -29
- package/dist/components/text.shared.js +3 -33
- package/dist/icons.d.ts +2 -2
- package/dist/icons.js +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -3
- package/package.json +14 -1
|
@@ -14,7 +14,7 @@ const AccordionItem = ({ className, ...props }) => /* @__PURE__ */ jsx(Accordion
|
|
|
14
14
|
...props
|
|
15
15
|
});
|
|
16
16
|
const TRIGGER_SIZE_CLASS_NAME = {
|
|
17
|
-
compact: "py-
|
|
17
|
+
compact: "py-1.5 text-xs",
|
|
18
18
|
default: "py-4 text-sm",
|
|
19
19
|
sm: "min-h-11 items-center py-2 text-sm"
|
|
20
20
|
};
|
|
@@ -16,7 +16,7 @@ declare const BUTTON_LAYOUT_CLASS_NAMES: {
|
|
|
16
16
|
readonly wrap: "h-auto min-h-11 items-start justify-start py-2 text-start whitespace-normal sm:h-auto";
|
|
17
17
|
};
|
|
18
18
|
declare const buttonVariants: (props?: ({
|
|
19
|
-
size?: "chip" | "default" | "icon" | "icon-2xs" | "icon-lg" | "icon-sm" | "icon-xl" | "icon-xs" | "inline" | "lg" | "row" | "sm" | "xl" | "xs" | null | undefined;
|
|
19
|
+
size?: "chip" | "default" | "icon" | "icon-2xs" | "icon-lg" | "icon-sm" | "icon-xl" | "icon-xs" | "inline" | "lg" | "row" | "sm" | "touch" | "xl" | "xs" | null | undefined;
|
|
20
20
|
layout?: "wrap" | null | undefined;
|
|
21
21
|
variant?: "default" | "destructive" | "destructive-ghost" | "destructive-outline" | "ghost" | "link" | "muted" | "muted-destructive" | "outline" | "secondary" | null | undefined;
|
|
22
22
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
@@ -66,6 +66,7 @@ declare const BUTTON_SIZE_CONTENT: {
|
|
|
66
66
|
readonly lg: "text";
|
|
67
67
|
readonly row: "text";
|
|
68
68
|
readonly sm: "text";
|
|
69
|
+
readonly touch: "text";
|
|
69
70
|
readonly xl: "text";
|
|
70
71
|
readonly xs: "text";
|
|
71
72
|
};
|
|
@@ -51,6 +51,7 @@ const BUTTON_SIZE_CLASS_NAMES = {
|
|
|
51
51
|
lg: "h-10 px-[calc(--spacing(3.5)-1px)] sm:h-9",
|
|
52
52
|
row: `${MENU_ROW_CLASS_NAME} [&_svg]:mx-0`,
|
|
53
53
|
sm: "h-8 gap-1.5 px-[calc(--spacing(2.5)-1px)] text-sm sm:h-7 sm:text-xs",
|
|
54
|
+
touch: "min-h-[44px] min-w-[44px] px-[calc(--spacing(3.5)-1px)]",
|
|
54
55
|
xl: "h-11 px-[calc(--spacing(4)-1px)] text-lg sm:h-10 sm:text-base [&_svg:not([class*='size-'])]:size-5 sm:[&_svg:not([class*='size-'])]:size-4.5",
|
|
55
56
|
xs: "h-7 gap-1 rounded-md px-[calc(--spacing(2)-1px)] text-sm before:rounded-[calc(var(--radius-md)-1px)] sm:h-6 sm:text-xs [&_svg:not([class*='size-'])]:size-4 sm:[&_svg:not([class*='size-'])]:size-3.5"
|
|
56
57
|
};
|
|
@@ -146,6 +147,7 @@ const BUTTON_SIZE_CONTENT = {
|
|
|
146
147
|
lg: BUTTON_CONTENT.text,
|
|
147
148
|
row: BUTTON_CONTENT.text,
|
|
148
149
|
sm: BUTTON_CONTENT.text,
|
|
150
|
+
touch: BUTTON_CONTENT.text,
|
|
149
151
|
xl: BUTTON_CONTENT.text,
|
|
150
152
|
xs: BUTTON_CONTENT.text
|
|
151
153
|
};
|
|
@@ -59,7 +59,7 @@ export type ButtonTokenVariant = keyof typeof BUTTON_VARIANT_TOKENS;
|
|
|
59
59
|
export declare const BUTTON_PLAIN_VARIANT = "plain";
|
|
60
60
|
export type ButtonVariant = ButtonTokenVariant | typeof BUTTON_PLAIN_VARIANT;
|
|
61
61
|
/** Every size a button comes in, on every platform. */
|
|
62
|
-
export declare const BUTTON_SIZES: readonly ["chip", "default", "icon", "icon-lg", "icon-sm", "icon-xl", "icon-2xs", "icon-xs", "inline", "lg", "row", "sm", "xl", "xs"];
|
|
62
|
+
export declare const BUTTON_SIZES: readonly ["chip", "default", "icon", "icon-lg", "icon-sm", "icon-xl", "icon-2xs", "icon-xs", "inline", "lg", "row", "sm", "touch", "xl", "xs"];
|
|
63
63
|
export type ButtonSize = (typeof BUTTON_SIZES)[number];
|
|
64
64
|
/**
|
|
65
65
|
* The props every button renderer accepts, with one meaning. A renderer adds
|
|
@@ -13,6 +13,7 @@ const Checkbox = ({ className, ...props }) => /* @__PURE__ */ jsx(Checkbox$1.Roo
|
|
|
13
13
|
render: (indicatorProps, state) => /* @__PURE__ */ jsx("span", {
|
|
14
14
|
...indicatorProps,
|
|
15
15
|
children: state.indeterminate ? /* @__PURE__ */ jsxs("svg", {
|
|
16
|
+
"aria-hidden": "true",
|
|
16
17
|
className: "size-3.5 sm:size-3",
|
|
17
18
|
fill: "none",
|
|
18
19
|
height: "24",
|
|
@@ -25,6 +26,7 @@ const Checkbox = ({ className, ...props }) => /* @__PURE__ */ jsx(Checkbox$1.Roo
|
|
|
25
26
|
xmlns: "http://www.w3.org/2000/svg",
|
|
26
27
|
children: [/* @__PURE__ */ jsx("title", { children: "Indeterminate" }), /* @__PURE__ */ jsx("path", { d: "M5.252 12h13.496" })]
|
|
27
28
|
}) : /* @__PURE__ */ jsxs("svg", {
|
|
29
|
+
"aria-hidden": "true",
|
|
28
30
|
className: "size-3.5 sm:size-3",
|
|
29
31
|
fill: "none",
|
|
30
32
|
height: "24",
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
//#region src/components/court-filter.d.ts
|
|
2
|
+
type CourtOption = {
|
|
3
|
+
value: string;
|
|
4
|
+
label?: string;
|
|
5
|
+
badgeText?: string;
|
|
6
|
+
};
|
|
7
|
+
type CourtFilterGroup = {
|
|
8
|
+
value: string;
|
|
9
|
+
label: string | null;
|
|
10
|
+
courts: readonly CourtOption[];
|
|
11
|
+
};
|
|
12
|
+
type CourtFilterBaseProps = {
|
|
13
|
+
groups: readonly CourtFilterGroup[];
|
|
14
|
+
label: string;
|
|
15
|
+
};
|
|
16
|
+
type SingleCourtFilterProps = CourtFilterBaseProps & {
|
|
17
|
+
selected: string | undefined;
|
|
18
|
+
onChange: (value: string | undefined) => void;
|
|
19
|
+
collapsedGroups: readonly string[];
|
|
20
|
+
visibleRowLimit: number;
|
|
21
|
+
showAllLabel: string;
|
|
22
|
+
};
|
|
23
|
+
type MultipleCourtFilterProps = CourtFilterBaseProps & {
|
|
24
|
+
selected: readonly string[];
|
|
25
|
+
onChange: (values: string[]) => void;
|
|
26
|
+
maxSelections: number;
|
|
27
|
+
selectionHint: string;
|
|
28
|
+
searchLabel: string;
|
|
29
|
+
clearLabel: string;
|
|
30
|
+
emptyLabel: string;
|
|
31
|
+
matchText: (value: string) => string;
|
|
32
|
+
};
|
|
33
|
+
export declare const toggleCourtSelection: (selected: readonly string[], values: readonly string[]) => string[];
|
|
34
|
+
/**
|
|
35
|
+
* Court filtering shares an owner while each surface keeps its interaction
|
|
36
|
+
* model. Each model is its own export, so a bundle carries only the one it
|
|
37
|
+
* renders.
|
|
38
|
+
*/
|
|
39
|
+
export declare const MultipleCourtFilter: (options: MultipleCourtFilterProps) => import("react").JSX.Element;
|
|
40
|
+
export declare const SingleCourtFilter: (props: SingleCourtFilterProps) => import("react").JSX.Element;
|
|
41
|
+
//#endregion
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { ChevronRightIcon } from "../icons.js";
|
|
3
|
+
import { cn } from "../lib/utils.js";
|
|
4
|
+
import { BidiText } from "./bidi-text.js";
|
|
5
|
+
import { ScrollArea } from "./scroll-area.js";
|
|
6
|
+
import { DirectionalIcon } from "./directional-icon.js";
|
|
7
|
+
import { Checkbox } from "./checkbox.js";
|
|
8
|
+
import { Field, FieldLabel } from "./field.js";
|
|
9
|
+
import { SearchField } from "./search-field.js";
|
|
10
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
+
import { useId, useState } from "react";
|
|
12
|
+
//#region src/components/court-filter.tsx
|
|
13
|
+
const toggleCourtSelection = (selected, values) => {
|
|
14
|
+
return values.every((value) => selected.includes(value)) ? selected.filter((value) => !values.includes(value)) : [.../* @__PURE__ */ new Set([...selected, ...values])];
|
|
15
|
+
};
|
|
16
|
+
const SingleCourtGroup = ({ group, options }) => {
|
|
17
|
+
const panelId = useId();
|
|
18
|
+
const [open, setOpen] = useState(!options.collapsedGroups.includes(group.value));
|
|
19
|
+
const [showAll, setShowAll] = useState(false);
|
|
20
|
+
const selectedHere = group.courts.find(({ value }) => value === options.selected);
|
|
21
|
+
const expanded = open || selectedHere !== void 0;
|
|
22
|
+
const items = showAll ? [...group.courts] : group.courts.slice(0, options.visibleRowLimit);
|
|
23
|
+
if (selectedHere !== void 0 && !items.includes(selectedHere)) items.push(selectedHere);
|
|
24
|
+
const hiddenCount = group.courts.length - items.length;
|
|
25
|
+
if (items.length === 0) return null;
|
|
26
|
+
return /* @__PURE__ */ jsxs("div", { children: [group.label !== null && /* @__PURE__ */ jsxs("button", {
|
|
27
|
+
type: "button",
|
|
28
|
+
"aria-controls": panelId,
|
|
29
|
+
"aria-expanded": expanded,
|
|
30
|
+
className: "text-foreground-strong-muted hover:text-foreground flex min-h-11 w-full items-center gap-1 py-1 text-start text-xs font-medium",
|
|
31
|
+
onClick: () => setOpen(!expanded),
|
|
32
|
+
children: [/* @__PURE__ */ jsx(DirectionalIcon, {
|
|
33
|
+
className: cn("size-3 shrink-0 transition-transform", expanded && "rotate-90"),
|
|
34
|
+
flip: !expanded,
|
|
35
|
+
icon: ChevronRightIcon
|
|
36
|
+
}), group.label]
|
|
37
|
+
}), /* @__PURE__ */ jsxs("div", {
|
|
38
|
+
hidden: group.label !== null && !expanded,
|
|
39
|
+
id: panelId,
|
|
40
|
+
children: [/* @__PURE__ */ jsx("ul", {
|
|
41
|
+
"aria-label": group.label ?? options.label,
|
|
42
|
+
className: "flex flex-col",
|
|
43
|
+
children: items.map(({ value, label, badgeText }) => {
|
|
44
|
+
const checked = options.selected === value;
|
|
45
|
+
return /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs("label", {
|
|
46
|
+
className: "hover:bg-muted/60 has-[:focus-visible]:ring-ring flex min-h-11 cursor-pointer items-center gap-2 rounded-sm py-1.5 ps-1 pe-1 text-xs has-[:focus-visible]:ring-2",
|
|
47
|
+
children: [
|
|
48
|
+
/* @__PURE__ */ jsx("input", {
|
|
49
|
+
type: "radio",
|
|
50
|
+
name: `court-${panelId}`,
|
|
51
|
+
value,
|
|
52
|
+
checked,
|
|
53
|
+
className: "accent-primary size-3.5 shrink-0",
|
|
54
|
+
onChange: () => options.onChange(value),
|
|
55
|
+
onClick: () => {
|
|
56
|
+
if (checked) options.onChange(void 0);
|
|
57
|
+
}
|
|
58
|
+
}),
|
|
59
|
+
/* @__PURE__ */ jsx(BidiText, {
|
|
60
|
+
as: "span",
|
|
61
|
+
className: cn("text-foreground min-w-0 flex-1 truncate", checked && "font-medium"),
|
|
62
|
+
title: label ?? value,
|
|
63
|
+
children: label ?? value
|
|
64
|
+
}),
|
|
65
|
+
badgeText !== void 0 && /* @__PURE__ */ jsx("bdi", {
|
|
66
|
+
className: "text-muted-foreground text-2xs shrink-0 tabular-nums",
|
|
67
|
+
children: badgeText
|
|
68
|
+
})
|
|
69
|
+
]
|
|
70
|
+
}) }, value);
|
|
71
|
+
})
|
|
72
|
+
}), hiddenCount > 0 && /* @__PURE__ */ jsx("button", {
|
|
73
|
+
type: "button",
|
|
74
|
+
className: "text-muted-foreground hover:text-foreground -mx-1 min-h-11 px-1 py-1.5 text-xs",
|
|
75
|
+
onClick: () => setShowAll(true),
|
|
76
|
+
children: options.showAllLabel
|
|
77
|
+
})]
|
|
78
|
+
})] });
|
|
79
|
+
};
|
|
80
|
+
const MultipleCourtGroup = ({ group, courts, options, hintId }) => {
|
|
81
|
+
const labelId = useId();
|
|
82
|
+
const { selected } = options;
|
|
83
|
+
const values = courts.map(({ value }) => value);
|
|
84
|
+
const tierSelected = values.every((value) => selected.includes(value));
|
|
85
|
+
const nextTier = toggleCourtSelection(selected, values);
|
|
86
|
+
const tierDisabled = !tierSelected && nextTier.length > options.maxSelections;
|
|
87
|
+
return /* @__PURE__ */ jsxs("fieldset", {
|
|
88
|
+
className: "min-w-0",
|
|
89
|
+
children: [
|
|
90
|
+
/* @__PURE__ */ jsx("legend", {
|
|
91
|
+
className: "sr-only",
|
|
92
|
+
children: group.label ?? options.label
|
|
93
|
+
}),
|
|
94
|
+
group.label !== null && /* @__PURE__ */ jsxs("label", {
|
|
95
|
+
id: `${labelId}-tier`,
|
|
96
|
+
className: "flex min-h-11 cursor-pointer items-center gap-2 text-xs font-medium",
|
|
97
|
+
children: [/* @__PURE__ */ jsx(Checkbox, {
|
|
98
|
+
"aria-labelledby": `${labelId}-tier`,
|
|
99
|
+
checked: tierSelected,
|
|
100
|
+
indeterminate: !tierSelected && values.some((value) => selected.includes(value)),
|
|
101
|
+
disabled: tierDisabled,
|
|
102
|
+
"aria-describedby": hintId,
|
|
103
|
+
onCheckedChange: () => {
|
|
104
|
+
if (tierSelected || nextTier.length <= options.maxSelections) options.onChange(nextTier);
|
|
105
|
+
}
|
|
106
|
+
}), group.label]
|
|
107
|
+
}),
|
|
108
|
+
/* @__PURE__ */ jsx("ul", {
|
|
109
|
+
className: "flex flex-col",
|
|
110
|
+
children: courts.map(({ value, label, badgeText }, index) => {
|
|
111
|
+
const checked = selected.includes(value);
|
|
112
|
+
const next = toggleCourtSelection(selected, [value]);
|
|
113
|
+
return /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsxs("label", {
|
|
114
|
+
id: `${labelId}-${index}`,
|
|
115
|
+
className: "hover:bg-muted/60 has-[:focus-visible]:ring-ring flex min-h-11 cursor-pointer items-center gap-2 rounded-sm text-sm has-[:focus-visible]:ring-2",
|
|
116
|
+
children: [
|
|
117
|
+
/* @__PURE__ */ jsx(Checkbox, {
|
|
118
|
+
"aria-labelledby": `${labelId}-${index}`,
|
|
119
|
+
checked,
|
|
120
|
+
disabled: !checked && next.length > options.maxSelections,
|
|
121
|
+
"aria-describedby": hintId,
|
|
122
|
+
onCheckedChange: () => {
|
|
123
|
+
if (checked || next.length <= options.maxSelections) options.onChange(next);
|
|
124
|
+
}
|
|
125
|
+
}),
|
|
126
|
+
/* @__PURE__ */ jsx("bdi", {
|
|
127
|
+
className: "min-w-0 flex-1 wrap-break-word",
|
|
128
|
+
children: label ?? value
|
|
129
|
+
}),
|
|
130
|
+
badgeText !== void 0 && /* @__PURE__ */ jsx("bdi", {
|
|
131
|
+
className: "text-muted-foreground text-xs tabular-nums",
|
|
132
|
+
children: badgeText
|
|
133
|
+
})
|
|
134
|
+
]
|
|
135
|
+
}) }, value);
|
|
136
|
+
})
|
|
137
|
+
})
|
|
138
|
+
]
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Court filtering shares an owner while each surface keeps its interaction
|
|
143
|
+
* model. Each model is its own export, so a bundle carries only the one it
|
|
144
|
+
* renders.
|
|
145
|
+
*/
|
|
146
|
+
const MultipleCourtFilter = (options) => {
|
|
147
|
+
const [query, setQuery] = useState("");
|
|
148
|
+
const hintId = useId();
|
|
149
|
+
const needle = options.matchText(query);
|
|
150
|
+
const missing = options.selected.filter((name) => !options.groups.some((group) => group.courts.some(({ value }) => value === name)));
|
|
151
|
+
const groups = [...options.groups];
|
|
152
|
+
if (missing.length > 0) groups.push({
|
|
153
|
+
value: "selected",
|
|
154
|
+
label: null,
|
|
155
|
+
courts: missing.map((value) => ({ value }))
|
|
156
|
+
});
|
|
157
|
+
const visible = groups.flatMap((group) => {
|
|
158
|
+
const courts = options.matchText(group.label ?? "").includes(needle) ? group.courts : group.courts.filter(({ value, label }) => options.matchText(label ?? value).includes(needle));
|
|
159
|
+
return courts.length === 0 ? [] : [{
|
|
160
|
+
group,
|
|
161
|
+
courts
|
|
162
|
+
}];
|
|
163
|
+
});
|
|
164
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
165
|
+
className: "min-w-0 space-y-2",
|
|
166
|
+
children: [
|
|
167
|
+
/* @__PURE__ */ jsxs(Field, { children: [/* @__PURE__ */ jsx(FieldLabel, {
|
|
168
|
+
className: "sr-only",
|
|
169
|
+
children: options.searchLabel
|
|
170
|
+
}), /* @__PURE__ */ jsx(SearchField, {
|
|
171
|
+
value: query,
|
|
172
|
+
onValueChange: setQuery,
|
|
173
|
+
clearLabel: options.clearLabel,
|
|
174
|
+
placeholder: options.searchLabel
|
|
175
|
+
})] }),
|
|
176
|
+
/* @__PURE__ */ jsx("p", {
|
|
177
|
+
id: hintId,
|
|
178
|
+
role: "status",
|
|
179
|
+
className: "text-muted-foreground text-xs",
|
|
180
|
+
children: options.selectionHint
|
|
181
|
+
}),
|
|
182
|
+
/* @__PURE__ */ jsx(ScrollArea, {
|
|
183
|
+
className: "h-72",
|
|
184
|
+
axis: "vertical",
|
|
185
|
+
"aria-label": options.label,
|
|
186
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
187
|
+
className: "space-y-2",
|
|
188
|
+
children: [visible.length === 0 && /* @__PURE__ */ jsx("p", {
|
|
189
|
+
className: "text-muted-foreground py-2 text-sm",
|
|
190
|
+
children: options.emptyLabel
|
|
191
|
+
}), visible.map(({ group, courts }) => /* @__PURE__ */ jsx(MultipleCourtGroup, {
|
|
192
|
+
group,
|
|
193
|
+
courts,
|
|
194
|
+
options,
|
|
195
|
+
hintId
|
|
196
|
+
}, group.value))]
|
|
197
|
+
})
|
|
198
|
+
})
|
|
199
|
+
]
|
|
200
|
+
});
|
|
201
|
+
};
|
|
202
|
+
const SingleCourtFilter = (props) => /* @__PURE__ */ jsx("div", {
|
|
203
|
+
className: "flex flex-col gap-3",
|
|
204
|
+
children: props.groups.map((group) => /* @__PURE__ */ jsx(SingleCourtGroup, {
|
|
205
|
+
group,
|
|
206
|
+
options: props
|
|
207
|
+
}, group.value))
|
|
208
|
+
});
|
|
209
|
+
//#endregion
|
|
210
|
+
export { MultipleCourtFilter, SingleCourtFilter, toggleCourtSelection };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
//#region src/components/middle-truncate.d.ts
|
|
2
|
+
type MiddleTruncateProps = {
|
|
3
|
+
value: string;
|
|
4
|
+
className?: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* One line of text that, when it does not fit, gives up its middle and keeps
|
|
8
|
+
* its end: `Smlouva o dílo – revize…klienta.docx`. For names whose end tells
|
|
9
|
+
* them apart (file names, versions, case numbers), where a trailing ellipsis
|
|
10
|
+
* would cut exactly that part.
|
|
11
|
+
*
|
|
12
|
+
* The head clips after its last whole character and the tail slides over the
|
|
13
|
+
* slack, so the ellipsis sits flush against the text instead of after a gap
|
|
14
|
+
* or half a glyph. The ellipsis is generated content with empty alternative
|
|
15
|
+
* text: the element's text and accessible name stay the full value.
|
|
16
|
+
*/
|
|
17
|
+
export declare const MiddleTruncate: ({ value, className }: MiddleTruncateProps) => import("react").JSX.Element;
|
|
18
|
+
//#endregion
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../lib/utils.js";
|
|
3
|
+
import { graphemesOf, splitForMiddleTruncate } from "./middle-truncate.logic.js";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/middle-truncate.tsx
|
|
6
|
+
/**
|
|
7
|
+
* One line of text that, when it does not fit, gives up its middle and keeps
|
|
8
|
+
* its end: `Smlouva o dílo – revize…klienta.docx`. For names whose end tells
|
|
9
|
+
* them apart (file names, versions, case numbers), where a trailing ellipsis
|
|
10
|
+
* would cut exactly that part.
|
|
11
|
+
*
|
|
12
|
+
* The head clips after its last whole character and the tail slides over the
|
|
13
|
+
* slack, so the ellipsis sits flush against the text instead of after a gap
|
|
14
|
+
* or half a glyph. The ellipsis is generated content with empty alternative
|
|
15
|
+
* text: the element's text and accessible name stay the full value.
|
|
16
|
+
*/
|
|
17
|
+
const MiddleTruncate = ({ value, className }) => {
|
|
18
|
+
const split = splitForMiddleTruncate(value);
|
|
19
|
+
if (split === null) return /* @__PURE__ */ jsx("span", {
|
|
20
|
+
className: cn("min-w-0 overflow-hidden text-ellipsis whitespace-pre [unicode-bidi:isolate]", className),
|
|
21
|
+
dir: "auto",
|
|
22
|
+
title: value,
|
|
23
|
+
children: value
|
|
24
|
+
});
|
|
25
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
26
|
+
className: cn("inline-flex max-w-full min-w-0 overflow-hidden whitespace-pre [unicode-bidi:isolate]", className),
|
|
27
|
+
"data-slot": "middle-truncate",
|
|
28
|
+
dir: "auto",
|
|
29
|
+
title: value,
|
|
30
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
31
|
+
className: "peer min-w-0 overflow-hidden",
|
|
32
|
+
ref: fitHeadWhileMounted,
|
|
33
|
+
children: split.head
|
|
34
|
+
}, value), /* @__PURE__ */ jsx("span", {
|
|
35
|
+
className: "shrink-0 peer-data-overflow:before:content-['…'_/_'']",
|
|
36
|
+
children: split.tail
|
|
37
|
+
})]
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
function fitHeadWhileMounted(head) {
|
|
41
|
+
fitHead(head);
|
|
42
|
+
const root = head.parentElement;
|
|
43
|
+
if (!root) return;
|
|
44
|
+
let frame;
|
|
45
|
+
const scheduleFit = () => {
|
|
46
|
+
if (frame !== void 0) return;
|
|
47
|
+
frame = requestAnimationFrame(() => {
|
|
48
|
+
frame = void 0;
|
|
49
|
+
fitHead(head);
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
const observer = new ResizeObserver(scheduleFit);
|
|
53
|
+
observer.observe(root);
|
|
54
|
+
document.fonts.addEventListener("loadingdone", scheduleFit);
|
|
55
|
+
return () => {
|
|
56
|
+
observer.disconnect();
|
|
57
|
+
document.fonts.removeEventListener("loadingdone", scheduleFit);
|
|
58
|
+
if (frame !== void 0) cancelAnimationFrame(frame);
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Cuts an overflowing head after its last whole grapheme: clips the partial
|
|
63
|
+
* one and slides the tail over the slack. Measured from the inline-start edge,
|
|
64
|
+
* so the cut is right in either direction. Clipping and translating do not
|
|
65
|
+
* change layout, so the observed size stays the width the head is given.
|
|
66
|
+
*/
|
|
67
|
+
function fitHead(head) {
|
|
68
|
+
const tail = head.nextElementSibling;
|
|
69
|
+
const text = head.firstChild;
|
|
70
|
+
if (!(tail instanceof HTMLElement) || !(text instanceof Text)) return;
|
|
71
|
+
delete head.dataset["overflow"];
|
|
72
|
+
head.style.clipPath = "";
|
|
73
|
+
tail.style.translate = "";
|
|
74
|
+
if (head.scrollWidth <= head.clientWidth) return;
|
|
75
|
+
head.dataset["overflow"] = "";
|
|
76
|
+
const rtl = getComputedStyle(head).direction === "rtl";
|
|
77
|
+
const root = head.parentElement;
|
|
78
|
+
const tailOverflow = root === null ? 0 : tail.getBoundingClientRect().width - root.getBoundingClientRect().width;
|
|
79
|
+
if (tailOverflow > 0) {
|
|
80
|
+
tail.style.translate = `${String(rtl ? tailOverflow : -tailOverflow)}px 0`;
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
const box = head.getBoundingClientRect();
|
|
84
|
+
const availableWidth = box.width;
|
|
85
|
+
const range = document.createRange();
|
|
86
|
+
const widthTo = (end) => {
|
|
87
|
+
if (end === 0) return 0;
|
|
88
|
+
range.setStart(text, 0);
|
|
89
|
+
range.setEnd(text, end);
|
|
90
|
+
const rect = range.getBoundingClientRect();
|
|
91
|
+
return rtl ? box.right - rect.left : rect.right - box.left;
|
|
92
|
+
};
|
|
93
|
+
const ends = [];
|
|
94
|
+
let offset = 0;
|
|
95
|
+
for (const grapheme of graphemesOf(text.data)) {
|
|
96
|
+
offset += grapheme.length;
|
|
97
|
+
ends.push(offset);
|
|
98
|
+
}
|
|
99
|
+
let fits = 0;
|
|
100
|
+
let over = ends.length;
|
|
101
|
+
while (over - fits > 1) {
|
|
102
|
+
const middle = Math.floor((fits + over) / 2);
|
|
103
|
+
if (widthTo(ends[middle - 1] ?? 0) <= availableWidth) fits = middle;
|
|
104
|
+
else over = middle;
|
|
105
|
+
}
|
|
106
|
+
const slack = availableWidth - widthTo(ends[fits - 1] ?? 0);
|
|
107
|
+
if (slack <= 0) return;
|
|
108
|
+
head.style.clipPath = rtl ? `inset(-0.25em 0 -0.25em ${String(slack)}px)` : `inset(-0.25em ${String(slack)}px -0.25em 0)`;
|
|
109
|
+
tail.style.translate = `${String(rtl ? slack : -slack)}px 0`;
|
|
110
|
+
}
|
|
111
|
+
//#endregion
|
|
112
|
+
export { MiddleTruncate };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//#region src/components/middle-truncate.logic.d.ts
|
|
2
|
+
/** The value's user-perceived characters, so a cut never splits one. */
|
|
3
|
+
export declare const graphemesOf: (value: string) => string[];
|
|
4
|
+
type MiddleTruncateSplit = {
|
|
5
|
+
head: string;
|
|
6
|
+
tail: string;
|
|
7
|
+
};
|
|
8
|
+
/** The head and tail of `value`, or null when it should stay in one piece. */
|
|
9
|
+
export declare const splitForMiddleTruncate: (value: string) => MiddleTruncateSplit | null;
|
|
10
|
+
//#endregion
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
//#region src/components/middle-truncate.logic.ts
|
|
2
|
+
/** The tail aimed for, in graphemes; a word start nearby moves it. */
|
|
3
|
+
const TAIL = 10;
|
|
4
|
+
/** The shortest tail a word start may shrink it to. */
|
|
5
|
+
const MIN_TAIL = 4;
|
|
6
|
+
/** The longest tail a word start may stretch it to. */
|
|
7
|
+
const MAX_TAIL = 16;
|
|
8
|
+
/** Below this many head graphemes a split saves too little to be worth it. */
|
|
9
|
+
const MIN_HEAD = 4;
|
|
10
|
+
const WORD_BREAKS = /* @__PURE__ */ new Set([
|
|
11
|
+
"-",
|
|
12
|
+
"_",
|
|
13
|
+
"/",
|
|
14
|
+
"\\",
|
|
15
|
+
" "
|
|
16
|
+
]);
|
|
17
|
+
let segmenter;
|
|
18
|
+
/** The value's user-perceived characters, so a cut never splits one. */
|
|
19
|
+
const graphemesOf = (value) => {
|
|
20
|
+
segmenter ??= new Intl.Segmenter(void 0, { granularity: "grapheme" });
|
|
21
|
+
return Array.from(segmenter.segment(value), ({ segment }) => segment);
|
|
22
|
+
};
|
|
23
|
+
const RTL_LETTER = /[\p{Script=Arabic}\p{Script=Hebrew}\p{Script=Syriac}\p{Script=Thaana}\p{Script=Nko}\p{Script=Adlam}]/u;
|
|
24
|
+
const strongDirections = (text) => Array.from(text.matchAll(/\p{L}/gu), (letter) => RTL_LETTER.test(letter[0]) ? "rtl" : "ltr");
|
|
25
|
+
/**
|
|
26
|
+
* The head and tail render as two boxes, each ordered on its own. A run in the
|
|
27
|
+
* other direction than the name's stays readable only while one box holds it:
|
|
28
|
+
* cut through it and its words swap sides even when nothing is truncated.
|
|
29
|
+
*/
|
|
30
|
+
const cutsThroughForeignRun = (head, tail) => {
|
|
31
|
+
const before = strongDirections(head);
|
|
32
|
+
const base = before.at(0);
|
|
33
|
+
const last = before.at(-1);
|
|
34
|
+
return last !== base && strongDirections(tail).at(0) === last;
|
|
35
|
+
};
|
|
36
|
+
/** The head and tail of `value`, or null when it should stay in one piece. */
|
|
37
|
+
const splitForMiddleTruncate = (value) => {
|
|
38
|
+
const characters = graphemesOf(value);
|
|
39
|
+
if (characters.length < 14) return null;
|
|
40
|
+
const cut = tailStart(characters);
|
|
41
|
+
const head = characters.slice(0, cut).join("");
|
|
42
|
+
const tail = characters.slice(cut).join("");
|
|
43
|
+
return cutsThroughForeignRun(head, tail) ? null : {
|
|
44
|
+
head,
|
|
45
|
+
tail
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* The index the tail starts at: on a word when one starts within reach. A
|
|
50
|
+
* shorter tail is preferred so the head keeps more of the name; a longer one
|
|
51
|
+
* is the fallback.
|
|
52
|
+
*/
|
|
53
|
+
function tailStart(characters) {
|
|
54
|
+
const aimed = characters.length - TAIL;
|
|
55
|
+
const startsWord = (index) => WORD_BREAKS.has(characters[index - 1] ?? "");
|
|
56
|
+
if (startsWord(aimed)) return aimed;
|
|
57
|
+
for (let index = aimed + 1; index <= characters.length - MIN_TAIL; index++) if (startsWord(index)) return index;
|
|
58
|
+
const longest = Math.max(MIN_HEAD, characters.length - MAX_TAIL);
|
|
59
|
+
for (let index = aimed - 1; index >= longest; index--) if (startsWord(index)) return index;
|
|
60
|
+
return aimed;
|
|
61
|
+
}
|
|
62
|
+
//#endregion
|
|
63
|
+
export { graphemesOf, splitForMiddleTruncate };
|
|
@@ -12,5 +12,30 @@ type TextSeparatorProps = PropsWithChildren<{
|
|
|
12
12
|
* "or build a new one" divider that frames an either/or choice. The label
|
|
13
13
|
* names the alternative; flanking hairlines split the two options. */
|
|
14
14
|
declare const TextSeparator: ({ children, className, labelClassName }: TextSeparatorProps) => import("react").JSX.Element;
|
|
15
|
+
type ResizeSeparatorProps = {
|
|
16
|
+
className?: string;
|
|
17
|
+
/** Names what the separator resizes, e.g. "Resize filters". */
|
|
18
|
+
label: string;
|
|
19
|
+
/** The current width (px) of the column the separator resizes. */
|
|
20
|
+
value: number;
|
|
21
|
+
min: number;
|
|
22
|
+
max: number;
|
|
23
|
+
/** How far (px) one arrow key moves the separator. */
|
|
24
|
+
keyboardStep: number;
|
|
25
|
+
/**
|
|
26
|
+
* Receives a viewport x: the pointer's while dragging, and for an arrow key
|
|
27
|
+
* the separator's own centre moved one step in the pressed physical
|
|
28
|
+
* direction, so a drag and a key press feed the caller the same clamped
|
|
29
|
+
* resize path.
|
|
30
|
+
*/
|
|
31
|
+
onResize: (clientX: number) => void;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* The drag strip between two columns, operable without a pointer: a
|
|
35
|
+
* focusable vertical `separator` carrying the width it controls. A 4px grab
|
|
36
|
+
* zone straddles the adjacent column border through negative margins, so it
|
|
37
|
+
* adds no visible width of its own.
|
|
38
|
+
*/
|
|
39
|
+
declare const ResizeSeparator: ({ className, label, value, min, max, keyboardStep, onResize }: ResizeSeparatorProps) => import("react").JSX.Element;
|
|
15
40
|
//#endregion
|
|
16
|
-
export { Separator, TextSeparator };
|
|
41
|
+
export { ResizeSeparator, Separator, TextSeparator };
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { cn } from "../lib/utils.js";
|
|
2
3
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
4
|
+
import { useRef } from "react";
|
|
3
5
|
import { Separator as Separator$1 } from "@base-ui/react/separator";
|
|
4
6
|
//#region src/components/separator.tsx
|
|
5
7
|
const Separator = ({ className, orientation = "horizontal", ...props }) => /* @__PURE__ */ jsx(Separator$1, {
|
|
@@ -22,5 +24,54 @@ const TextSeparator = ({ children, className, labelClassName }) => /* @__PURE__
|
|
|
22
24
|
/* @__PURE__ */ jsx("span", { className: "bg-border h-px flex-1" })
|
|
23
25
|
]
|
|
24
26
|
});
|
|
27
|
+
/**
|
|
28
|
+
* The drag strip between two columns, operable without a pointer: a
|
|
29
|
+
* focusable vertical `separator` carrying the width it controls. A 4px grab
|
|
30
|
+
* zone straddles the adjacent column border through negative margins, so it
|
|
31
|
+
* adds no visible width of its own.
|
|
32
|
+
*/
|
|
33
|
+
const ResizeSeparator = ({ className, label, value, min, max, keyboardStep, onResize }) => {
|
|
34
|
+
const isDraggingRef = useRef(false);
|
|
35
|
+
return /* @__PURE__ */ jsx("div", {
|
|
36
|
+
"aria-label": label,
|
|
37
|
+
"aria-orientation": "vertical",
|
|
38
|
+
"aria-valuemax": max,
|
|
39
|
+
"aria-valuemin": min,
|
|
40
|
+
"aria-valuenow": Math.round(value),
|
|
41
|
+
className: cn("hover:bg-border active:bg-border focus-visible:bg-border focus-visible:ring-ring z-10 -mx-0.5 w-1 shrink-0 cursor-col-resize focus-visible:ring-1 focus-visible:outline-none", className),
|
|
42
|
+
"data-slot": "resize-separator",
|
|
43
|
+
onKeyDown: (event) => {
|
|
44
|
+
let step;
|
|
45
|
+
switch (event.key) {
|
|
46
|
+
case "ArrowLeft":
|
|
47
|
+
step = -keyboardStep;
|
|
48
|
+
break;
|
|
49
|
+
case "ArrowRight":
|
|
50
|
+
step = keyboardStep;
|
|
51
|
+
break;
|
|
52
|
+
default: return;
|
|
53
|
+
}
|
|
54
|
+
event.preventDefault();
|
|
55
|
+
const rect = event.currentTarget.getBoundingClientRect();
|
|
56
|
+
onResize(rect.left + rect.width / 2 + step);
|
|
57
|
+
},
|
|
58
|
+
onPointerCancel: () => {
|
|
59
|
+
isDraggingRef.current = false;
|
|
60
|
+
},
|
|
61
|
+
onPointerDown: (event) => {
|
|
62
|
+
event.preventDefault();
|
|
63
|
+
isDraggingRef.current = true;
|
|
64
|
+
event.currentTarget.setPointerCapture(event.pointerId);
|
|
65
|
+
},
|
|
66
|
+
onPointerMove: (event) => {
|
|
67
|
+
if (isDraggingRef.current) onResize(event.clientX);
|
|
68
|
+
},
|
|
69
|
+
onPointerUp: () => {
|
|
70
|
+
isDraggingRef.current = false;
|
|
71
|
+
},
|
|
72
|
+
role: "separator",
|
|
73
|
+
tabIndex: 0
|
|
74
|
+
});
|
|
75
|
+
};
|
|
25
76
|
//#endregion
|
|
26
|
-
export { Separator, TextSeparator };
|
|
77
|
+
export { ResizeSeparator, Separator, TextSeparator };
|
|
@@ -4,6 +4,7 @@ import { Separator } from "./separator.js";
|
|
|
4
4
|
import { SidebarLayout } from "./sidebar.logic.js";
|
|
5
5
|
import { TooltipContent as TooltipPopup } from "./tooltip.js";
|
|
6
6
|
import { VariantProps } from "class-variance-authority";
|
|
7
|
+
import { useRender } from "@base-ui/react/use-render";
|
|
7
8
|
//#region src/components/sidebar.d.ts
|
|
8
9
|
/**
|
|
9
10
|
* Inline size the sidebar takes out of the layout row when expanded, in CSS
|
|
@@ -112,6 +113,12 @@ declare const sidebarMenuButtonVariants: (props?: ({
|
|
|
112
113
|
* states cannot drift apart.
|
|
113
114
|
*/
|
|
114
115
|
declare const sidebarIdentityTriggerClassName: (layout: SidebarLayout) => string;
|
|
116
|
+
/**
|
|
117
|
+
* The footer's avatar trigger as a button, laid out for the sidebar's
|
|
118
|
+
* current layout: the sign-in action, or (through `render`) any overlay
|
|
119
|
+
* trigger that opens from the identity slot.
|
|
120
|
+
*/
|
|
121
|
+
declare const SidebarIdentityButton: ({ className, render, ...props }: useRender.ComponentProps<"button">) => import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>>;
|
|
115
122
|
declare const SidebarMenuButton: ({ asChild, isActive, variant, size, tooltip, className, ...props }: React.ComponentProps<"button"> & {
|
|
116
123
|
asChild?: boolean;
|
|
117
124
|
isActive?: boolean;
|
|
@@ -133,4 +140,4 @@ declare const SidebarMenuSubButton: ({ asChild, size, isActive, className, ...pr
|
|
|
133
140
|
isActive?: boolean;
|
|
134
141
|
}) => import("react").JSX.Element;
|
|
135
142
|
//#endregion
|
|
136
|
-
export { PanelTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout };
|
|
143
|
+
export { PanelTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIdentityButton, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout };
|
|
@@ -12,6 +12,8 @@ import { deriveSidebarState, nextOpenMobile, nextRequestedOpen, resolveSidebarLa
|
|
|
12
12
|
import { Skeleton } from "./skeleton.js";
|
|
13
13
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
14
14
|
import { createContext, use, useId, useState } from "react";
|
|
15
|
+
import { mergeProps } from "@base-ui/react/merge-props";
|
|
16
|
+
import { useRender } from "@base-ui/react/use-render";
|
|
15
17
|
import { panic } from "better-result";
|
|
16
18
|
import { cva } from "class-variance-authority";
|
|
17
19
|
//#region src/components/sidebar.tsx
|
|
@@ -322,6 +324,24 @@ const sidebarMenuButtonVariants = cva("peer/menu-button ring-sidebar-ring hover:
|
|
|
322
324
|
* states cannot drift apart.
|
|
323
325
|
*/
|
|
324
326
|
const sidebarIdentityTriggerClassName = (layout) => cn("ring-sidebar-ring hover:bg-sidebar-accent flex items-center overflow-hidden rounded-md text-start text-sm outline-hidden focus-visible:ring-2", layout === "rail" ? "size-8 justify-center p-0.5" : "w-full gap-2 p-2");
|
|
327
|
+
/**
|
|
328
|
+
* The footer's avatar trigger as a button, laid out for the sidebar's
|
|
329
|
+
* current layout: the sign-in action, or (through `render`) any overlay
|
|
330
|
+
* trigger that opens from the identity slot.
|
|
331
|
+
*/
|
|
332
|
+
const SidebarIdentityButton = ({ className, render, ...props }) => {
|
|
333
|
+
const layout = useSidebarLayout();
|
|
334
|
+
const defaultProps = {
|
|
335
|
+
className: cn(sidebarIdentityTriggerClassName(layout), className),
|
|
336
|
+
"data-slot": "sidebar-identity-button",
|
|
337
|
+
type: render === void 0 ? "button" : void 0
|
|
338
|
+
};
|
|
339
|
+
return useRender({
|
|
340
|
+
defaultTagName: "button",
|
|
341
|
+
props: mergeProps(defaultProps, props),
|
|
342
|
+
render
|
|
343
|
+
});
|
|
344
|
+
};
|
|
325
345
|
const SidebarMenuButton = ({ asChild = false, isActive = false, variant = "default", size = "default", tooltip, className, ...props }) => {
|
|
326
346
|
const Comp = asChild ? Slot : "button";
|
|
327
347
|
const sidebarLayout = useSidebarLayout();
|
|
@@ -400,4 +420,4 @@ const SidebarMenuSubButton = ({ asChild = false, size = "md", isActive = false,
|
|
|
400
420
|
});
|
|
401
421
|
};
|
|
402
422
|
//#endregion
|
|
403
|
-
export { PanelTrigger, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout };
|
|
423
|
+
export { PanelTrigger, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIdentityButton, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout };
|
package/dist/components/text.js
CHANGED
|
@@ -9,7 +9,7 @@ const WEIGHT_CLASS_NAMES = {
|
|
|
9
9
|
semibold: "font-semibold",
|
|
10
10
|
bold: "font-bold"
|
|
11
11
|
};
|
|
12
|
-
const faceClassName = (face) =>
|
|
12
|
+
const faceClassName = (face) => WEIGHT_CLASS_NAMES[face.weight];
|
|
13
13
|
/**
|
|
14
14
|
* Text in one of the design system's roles (./text.shared.ts), the same role
|
|
15
15
|
* the React Native renderer (./text.native.tsx) sets on a phone. Inline, so a
|
|
@@ -3,17 +3,9 @@ import { jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { Text as Text$1 } from "react-native";
|
|
4
4
|
//#region src/components/text.native.tsx
|
|
5
5
|
/**
|
|
6
|
-
* The embedded
|
|
7
|
-
*
|
|
8
|
-
* reading, since the web reader's Source Serif 4 ships only as web fonts.
|
|
6
|
+
* The embedded DM Sans face, the web's typeface, for each weight, by the
|
|
7
|
+
* name the app registers it under.
|
|
9
8
|
*/
|
|
10
|
-
const faceName = ({ family, weight, italic }) => {
|
|
11
|
-
if (family === "serif") {
|
|
12
|
-
if (weight === "bold" || weight === "semibold") return italic === true ? "Georgia-BoldItalic" : "Georgia-Bold";
|
|
13
|
-
return italic === true ? "Georgia-Italic" : "Georgia";
|
|
14
|
-
}
|
|
15
|
-
return SANS_FACES[weight];
|
|
16
|
-
};
|
|
17
9
|
const SANS_FACES = {
|
|
18
10
|
light: "DMSans-Light",
|
|
19
11
|
regular: "DMSans-Regular",
|
|
@@ -31,7 +23,7 @@ const NOT_A_COLOUR = /^text-(?:xs|sm|base|lg|\d*xl|\[|left|center|right|justify|
|
|
|
31
23
|
*/
|
|
32
24
|
const withForeground = (classes) => classes.split(/\s+/u).some((name) => name.startsWith("text-") && !NOT_A_COLOUR.test(name)) ? classes : `text-foreground ${classes}`;
|
|
33
25
|
/** The font a role is set in, for a native control that draws its own text. */
|
|
34
|
-
const textFontFamily = (variant) =>
|
|
26
|
+
const textFontFamily = (variant) => SANS_FACES[TEXT_VARIANT_FACES[variant ?? "body"].weight];
|
|
35
27
|
/**
|
|
36
28
|
* Text in one of the design system's roles (./text.shared.ts), as the web
|
|
37
29
|
* renderer (./text.tsx) sets it: the same size and colour, in the role's
|
|
@@ -21,21 +21,10 @@ export declare const TEXT_VARIANT_CLASS_NAMES: {
|
|
|
21
21
|
readonly badge: "text-[10px] uppercase tracking-[1px] text-muted-foreground";
|
|
22
22
|
/** An inline link in a caption, underlined as legal links are. */
|
|
23
23
|
readonly link: "text-sm text-muted-foreground underline";
|
|
24
|
-
/**
|
|
25
|
-
* A court decision's text, in the reader's serif at its 1.65 leading
|
|
26
|
-
* (packages/decision-reader reader.css). Its emphases nest inside it and
|
|
27
|
-
* keep its size.
|
|
28
|
-
*/
|
|
29
|
-
readonly reading: "text-base leading-[26px]";
|
|
30
|
-
readonly readingStrong: "";
|
|
31
|
-
readonly readingEmphasis: "";
|
|
32
|
-
readonly readingStrongEmphasis: "";
|
|
33
24
|
};
|
|
34
25
|
export type TextVariant = keyof typeof TEXT_VARIANT_CLASS_NAMES;
|
|
35
26
|
export type TextFace = {
|
|
36
|
-
readonly family: "sans" | "serif";
|
|
37
27
|
readonly weight: "light" | "regular" | "medium" | "semibold" | "bold";
|
|
38
|
-
readonly italic?: true;
|
|
39
28
|
};
|
|
40
29
|
/** The face each role is set in. */
|
|
41
30
|
export declare const TEXT_VARIANT_FACES: {
|
|
@@ -51,24 +40,6 @@ export declare const TEXT_VARIANT_FACES: {
|
|
|
51
40
|
readonly display: TextFace;
|
|
52
41
|
readonly badge: TextFace;
|
|
53
42
|
readonly link: TextFace;
|
|
54
|
-
readonly reading: {
|
|
55
|
-
readonly family: "serif";
|
|
56
|
-
readonly weight: "regular";
|
|
57
|
-
};
|
|
58
|
-
readonly readingStrong: {
|
|
59
|
-
readonly family: "serif";
|
|
60
|
-
readonly weight: "bold";
|
|
61
|
-
};
|
|
62
|
-
readonly readingEmphasis: {
|
|
63
|
-
readonly family: "serif";
|
|
64
|
-
readonly weight: "regular";
|
|
65
|
-
readonly italic: true;
|
|
66
|
-
};
|
|
67
|
-
readonly readingStrongEmphasis: {
|
|
68
|
-
readonly family: "serif";
|
|
69
|
-
readonly weight: "bold";
|
|
70
|
-
readonly italic: true;
|
|
71
|
-
};
|
|
72
43
|
};
|
|
73
44
|
/** The props every text renderer accepts, with one meaning. */
|
|
74
45
|
export type TextContract = {
|
|
@@ -19,21 +19,9 @@ const TEXT_VARIANT_CLASS_NAMES = {
|
|
|
19
19
|
/** A small bordered tag in capitals, as the beta is marked. */
|
|
20
20
|
badge: "text-[10px] uppercase tracking-[1px] text-muted-foreground",
|
|
21
21
|
/** An inline link in a caption, underlined as legal links are. */
|
|
22
|
-
link: "text-sm text-muted-foreground underline"
|
|
23
|
-
/**
|
|
24
|
-
* A court decision's text, in the reader's serif at its 1.65 leading
|
|
25
|
-
* (packages/decision-reader reader.css). Its emphases nest inside it and
|
|
26
|
-
* keep its size.
|
|
27
|
-
*/
|
|
28
|
-
reading: "text-base leading-[26px]",
|
|
29
|
-
readingStrong: "",
|
|
30
|
-
readingEmphasis: "",
|
|
31
|
-
readingStrongEmphasis: ""
|
|
22
|
+
link: "text-sm text-muted-foreground underline"
|
|
32
23
|
};
|
|
33
|
-
const sans = (weight) => ({
|
|
34
|
-
family: "sans",
|
|
35
|
-
weight
|
|
36
|
-
});
|
|
24
|
+
const sans = (weight) => ({ weight });
|
|
37
25
|
/** The face each role is set in. */
|
|
38
26
|
const TEXT_VARIANT_FACES = {
|
|
39
27
|
body: sans("regular"),
|
|
@@ -47,25 +35,7 @@ const TEXT_VARIANT_FACES = {
|
|
|
47
35
|
title: sans("semibold"),
|
|
48
36
|
display: sans("light"),
|
|
49
37
|
badge: sans("medium"),
|
|
50
|
-
link: sans("regular")
|
|
51
|
-
reading: {
|
|
52
|
-
family: "serif",
|
|
53
|
-
weight: "regular"
|
|
54
|
-
},
|
|
55
|
-
readingStrong: {
|
|
56
|
-
family: "serif",
|
|
57
|
-
weight: "bold"
|
|
58
|
-
},
|
|
59
|
-
readingEmphasis: {
|
|
60
|
-
family: "serif",
|
|
61
|
-
weight: "regular",
|
|
62
|
-
italic: true
|
|
63
|
-
},
|
|
64
|
-
readingStrongEmphasis: {
|
|
65
|
-
family: "serif",
|
|
66
|
-
weight: "bold",
|
|
67
|
-
italic: true
|
|
68
|
-
}
|
|
38
|
+
link: sans("regular")
|
|
69
39
|
};
|
|
70
40
|
//#endregion
|
|
71
41
|
export { TEXT_VARIANT_CLASS_NAMES, TEXT_VARIANT_FACES };
|
package/dist/icons.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { ActivityIcon, AlarmClockIcon, AlertCircleIcon, AlertTriangleIcon, AlignJustifyIcon, AlignLeftIcon, ArchiveIcon, ArchiveRestoreIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpDownIcon, ArrowUpIcon, AtSignIcon, BanIcon, BanknoteIcon, BellIcon, BlocksIcon, BoldIcon, BookOpenCheckIcon, BookOpenIcon as CaseLawIcon, BookOpenIcon as SkillIcon, BookTextIcon, BookmarkIcon, BookmarkPlusIcon, BracesIcon, BrainIcon, Building2Icon, BuildingIcon, CableIcon, CalendarClockIcon, CalendarIcon, CheckCheckIcon, CheckCircle2Icon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleAlertIcon, CircleCheckIcon, CircleDashedIcon, CircleDotIcon, CircleHelpIcon, CircleIcon, CircleOffIcon, CircleUserRoundIcon, ClipboardCheckIcon, ClipboardCopyIcon, ClipboardIcon, ClipboardListIcon, Clock3Icon, ClockIcon, CogIcon, Columns2Icon, Columns3Icon, ColumnsIcon, CommandIcon, CompassIcon, CopyIcon as CopyFromMenuIcon, CopyIcon as CopyToClipboardIcon, CopyIcon as DuplicateIcon, CopyPlusIcon, CornerDownLeftIcon, CpuIcon, CropIcon, DatabaseIcon, DollarSignIcon, DownloadIcon, EditIcon, EllipsisIcon, EllipsisVerticalIcon, EqualIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileBadgeIcon, FileCheckIcon, FileCodeIcon, FileDiffIcon, FileDigitIcon, FileDownIcon, FileIcon, FileImageIcon, FileOutputIcon, FilePenLineIcon, FilePlus2Icon, FilePlusIcon, FileQuestionIcon, FileSearchIcon, FileSpreadsheetIcon, FileTextIcon, FileUpIcon, FilterIcon, FilterXIcon, FlagIcon, FlaskConicalIcon, FoldHorizontalIcon, FolderIcon, FolderInputIcon, FolderOpenIcon, FolderPlusIcon, FolderSyncIcon, FolderTreeIcon, FunctionSquareIcon, GanttChartIcon, GaugeIcon, GitBranchIcon, GitCommitHorizontalIcon, GitPullRequestIcon, GlobeIcon, GraduationCapIcon, GripVerticalIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HighlighterIcon, HistoryIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, ItalicIcon, KanbanIcon, KeyRoundIcon, KeyboardIcon, LandmarkIcon, LanguagesIcon, LaptopIcon, LayersIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutTemplateIcon, LibraryBigIcon, LibraryIcon, Link2Icon, LinkIcon, ListChecksIcon, ListFilterIcon, ListIcon, ListMinusIcon, ListOrderedIcon, ListTodoIcon, ListTreeIcon, ListXIcon, LoaderCircleIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, LucideIcon, MailIcon, Maximize2Icon, MegaphoneIcon, MessageCircleQuestionIcon, MessageSquareIcon, MessageSquarePlusIcon as NewChatIcon, MessageSquareQuoteIcon as AddCommentIcon, MessageSquareTextIcon, MessageSquareWarningIcon, MessagesSquareIcon, Minimize2Icon, MinusIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, PackageIcon, PaletteIcon, PanelLeftIcon, PanelRightIcon, PaperclipIcon, PauseIcon, PenIcon, PenLineIcon, PencilIcon, PencilLineIcon, PhoneIcon, PinIcon, PinOffIcon, PlayIcon, PlugIcon, PlusIcon, PowerIcon, PrinterIcon, QuoteIcon, Redo2Icon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RotateCcwIcon, RotateCwIcon, RouteIcon, Rows2Icon, Rows3Icon, SaveIcon, ScanSearchIcon, ScanTextIcon, ScissorsIcon, ScrollTextIcon, SearchIcon, SearchXIcon, SendIcon, ServerIcon, Settings2Icon, ShapesIcon, ShieldAlertIcon, ShieldCheckIcon, ShieldIcon, SigmaIcon, SignatureIcon, SlashIcon, SlidersHorizontalIcon, SparklesIcon, SplitIcon, SquareCheckIcon, SquareIcon, SquareMinusIcon, SquarePenIcon, StarIcon, StarOffIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, TableIcon, TagIcon, TagsIcon, TerminalIcon, TextIcon, TextQuoteIcon, ToggleLeftIcon, Trash2Icon, TrashIcon, TriangleAlertIcon, UnderlineIcon, Undo2Icon, UndoIcon, UnfoldHorizontalIcon, UngroupIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlusIcon, UserRoundIcon, UsersIcon, VideoIcon, WandSparklesIcon as AiActionIcon, WavesIcon, WindIcon, WorkflowIcon, WrapTextIcon, WrenchIcon, XCircleIcon, XIcon, XSquareIcon, ZapIcon } from "lucide-react";
|
|
2
|
-
export { ActivityIcon, AddCommentIcon, AiActionIcon, AlarmClockIcon, AlertCircleIcon, AlertTriangleIcon, AlignJustifyIcon, AlignLeftIcon, ArchiveIcon, ArchiveRestoreIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpDownIcon, ArrowUpIcon, AtSignIcon, BanIcon, BanknoteIcon, BellIcon, BlocksIcon, BoldIcon, BookOpenCheckIcon, BookTextIcon, BookmarkIcon, BookmarkPlusIcon, BracesIcon, BrainIcon, Building2Icon, BuildingIcon, CableIcon, CalendarClockIcon, CalendarIcon, CaseLawIcon, CheckCheckIcon, CheckCircle2Icon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleAlertIcon, CircleCheckIcon, CircleDashedIcon, CircleDotIcon, CircleHelpIcon, CircleIcon, CircleOffIcon, CircleUserRoundIcon, ClipboardCheckIcon, ClipboardCopyIcon, ClipboardIcon, ClipboardListIcon, Clock3Icon, ClockIcon, CogIcon, Columns2Icon, Columns3Icon, ColumnsIcon, CommandIcon, CompassIcon, CopyFromMenuIcon, CopyPlusIcon, CopyToClipboardIcon, CornerDownLeftIcon, CpuIcon, CropIcon, DatabaseIcon, DollarSignIcon, DownloadIcon, DuplicateIcon, EditIcon, EllipsisIcon, EllipsisVerticalIcon, EqualIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileBadgeIcon, FileCheckIcon, FileCodeIcon, FileDiffIcon, FileDigitIcon, FileDownIcon, FileIcon, FileImageIcon, FileOutputIcon, FilePenLineIcon, FilePlus2Icon, FilePlusIcon, FileQuestionIcon, FileSearchIcon, FileSpreadsheetIcon, FileTextIcon, FileUpIcon, FilterIcon, FilterXIcon, FlagIcon, FlaskConicalIcon, FoldHorizontalIcon, FolderIcon, FolderInputIcon, FolderOpenIcon, FolderPlusIcon, FolderSyncIcon, FolderTreeIcon, FunctionSquareIcon, GanttChartIcon, GaugeIcon, GitBranchIcon, GitCommitHorizontalIcon, GitPullRequestIcon, GlobeIcon, GraduationCapIcon, GripVerticalIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HighlighterIcon, HistoryIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, ItalicIcon, KanbanIcon, KeyRoundIcon, KeyboardIcon, LandmarkIcon, LanguagesIcon, LaptopIcon, LayersIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutTemplateIcon, LibraryBigIcon, LibraryIcon, Link2Icon, LinkIcon, ListChecksIcon, ListFilterIcon, ListIcon, ListMinusIcon, ListOrderedIcon, ListTodoIcon, ListTreeIcon, ListXIcon, LoaderCircleIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, type LucideIcon, MailIcon, Maximize2Icon, MegaphoneIcon, MessageCircleQuestionIcon, MessageSquareIcon, MessageSquareTextIcon, MessageSquareWarningIcon, MessagesSquareIcon, Minimize2Icon, MinusIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, NewChatIcon, PackageIcon, PaletteIcon, PanelLeftIcon, PanelRightIcon, PaperclipIcon, PauseIcon, PenIcon, PenLineIcon, PencilIcon, PencilLineIcon, PhoneIcon, PinIcon, PinOffIcon, PlayIcon, PlugIcon, PlusIcon, PowerIcon, PrinterIcon, QuoteIcon, Redo2Icon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RotateCcwIcon, RotateCwIcon, RouteIcon, Rows2Icon, Rows3Icon, SaveIcon, ScanSearchIcon, ScanTextIcon, ScissorsIcon, ScrollTextIcon, SearchIcon, SearchXIcon, SendIcon, ServerIcon, Settings2Icon, ShapesIcon, ShieldAlertIcon, ShieldCheckIcon, ShieldIcon, SigmaIcon, SignatureIcon, SkillIcon, SlashIcon, SlidersHorizontalIcon, SparklesIcon, SplitIcon, SquareCheckIcon, SquareIcon, SquareMinusIcon, SquarePenIcon, StarIcon, StarOffIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, TableIcon, TagIcon, TagsIcon, TerminalIcon, TextIcon, TextQuoteIcon, ToggleLeftIcon, Trash2Icon, TrashIcon, TriangleAlertIcon, UnderlineIcon, Undo2Icon, UndoIcon, UnfoldHorizontalIcon, UngroupIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlusIcon, UserRoundIcon, UsersIcon, VideoIcon, WavesIcon, WindIcon, WorkflowIcon, WrapTextIcon, WrenchIcon, XCircleIcon, XIcon, XSquareIcon, ZapIcon };
|
|
1
|
+
import { ActivityIcon, AlarmClockIcon, AlertCircleIcon, AlertTriangleIcon, AlignJustifyIcon, AlignLeftIcon, AppWindowMacIcon as BrowserControlIcon, ArchiveIcon, ArchiveRestoreIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpDownIcon, ArrowUpIcon, AtSignIcon, BanIcon, BanknoteIcon, BellIcon, BlocksIcon, BoldIcon, BookOpenCheckIcon, BookOpenIcon as CaseLawIcon, BookOpenIcon as SkillIcon, BookTextIcon, BookmarkIcon, BookmarkPlusIcon, BracesIcon, BrainIcon, Building2Icon, BuildingIcon, CableIcon, CalendarClockIcon, CalendarIcon, CheckCheckIcon, CheckCircle2Icon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleAlertIcon, CircleCheckIcon, CircleDashedIcon, CircleDotIcon, CircleHelpIcon, CircleIcon, CircleOffIcon, CircleUserRoundIcon, ClipboardCheckIcon, ClipboardCopyIcon, ClipboardIcon, ClipboardListIcon, Clock3Icon, ClockIcon, CogIcon, Columns2Icon, Columns3Icon, ColumnsIcon, CommandIcon, CompassIcon, CopyIcon as CopyFromMenuIcon, CopyIcon as CopyToClipboardIcon, CopyIcon as DuplicateIcon, CopyPlusIcon, CornerDownLeftIcon, CpuIcon, CropIcon, DatabaseIcon, DollarSignIcon, DownloadIcon, EditIcon, EllipsisIcon, EllipsisVerticalIcon, EqualIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileBadgeIcon, FileCheckIcon, FileCodeIcon, FileDiffIcon, FileDigitIcon, FileDownIcon, FileIcon, FileImageIcon, FileOutputIcon, FilePenLineIcon, FilePlus2Icon, FilePlusIcon, FileQuestionIcon, FileSearchIcon, FileSpreadsheetIcon, FileTextIcon, FileUpIcon, FilterIcon, FilterXIcon, FlagIcon, FlaskConicalIcon, FoldHorizontalIcon, FolderIcon, FolderInputIcon, FolderOpenIcon, FolderPlusIcon, FolderSyncIcon, FolderTreeIcon, FunctionSquareIcon, GanttChartIcon, GaugeIcon, GitBranchIcon, GitCommitHorizontalIcon, GitPullRequestIcon, GlobeIcon, GraduationCapIcon, GripVerticalIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HighlighterIcon, HistoryIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, ItalicIcon, KanbanIcon, KeyRoundIcon, KeyboardIcon, LandmarkIcon, LanguagesIcon, LaptopIcon, LayersIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutTemplateIcon, LibraryBigIcon, LibraryIcon, Link2Icon, LinkIcon, ListChecksIcon, ListFilterIcon, ListIcon, ListMinusIcon, ListOrderedIcon, ListTodoIcon, ListTreeIcon, ListXIcon, LoaderCircleIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, LucideIcon, MailIcon, Maximize2Icon, MegaphoneIcon, MessageCircleQuestionIcon, MessageSquareIcon, MessageSquarePlusIcon as NewChatIcon, MessageSquareQuoteIcon as AddCommentIcon, MessageSquareTextIcon, MessageSquareWarningIcon, MessagesSquareIcon, MicIcon as DictateIcon, Minimize2Icon, MinusIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, PackageIcon, PaletteIcon, PanelLeftIcon, PanelRightIcon, PaperclipIcon, PauseIcon, PenIcon, PenLineIcon, PencilIcon, PencilLineIcon, PhoneIcon, PinIcon, PinOffIcon, PlayIcon, PlugIcon, PlusIcon, PowerIcon, PrinterIcon, QuoteIcon, Redo2Icon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RotateCcwIcon, RotateCwIcon, RouteIcon, Rows2Icon, Rows3Icon, SaveIcon, ScanSearchIcon, ScanTextIcon, ScissorsIcon, ScrollTextIcon, SearchIcon, SearchXIcon, SendIcon, ServerIcon, Settings2Icon, ShapesIcon, ShieldAlertIcon, ShieldCheckIcon, ShieldIcon, SigmaIcon, SignatureIcon, SlashIcon, SlidersHorizontalIcon, SparklesIcon, SplitIcon, SquareCheckIcon, SquareIcon, SquareMinusIcon, SquarePenIcon, StarIcon, StarOffIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, TableIcon, TagIcon, TagsIcon, TerminalIcon, TextIcon, TextQuoteIcon, ToggleLeftIcon, Trash2Icon, TrashIcon, TriangleAlertIcon, UnderlineIcon, Undo2Icon, UndoIcon, UnfoldHorizontalIcon, UngroupIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlusIcon, UserRoundIcon, UsersIcon, VideoIcon, WandSparklesIcon as AiActionIcon, WavesIcon, WindIcon, WorkflowIcon, WrapTextIcon, WrenchIcon, XCircleIcon, XIcon, XSquareIcon, ZapIcon } from "lucide-react";
|
|
2
|
+
export { ActivityIcon, AddCommentIcon, AiActionIcon, AlarmClockIcon, AlertCircleIcon, AlertTriangleIcon, AlignJustifyIcon, AlignLeftIcon, ArchiveIcon, ArchiveRestoreIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpDownIcon, ArrowUpIcon, AtSignIcon, BanIcon, BanknoteIcon, BellIcon, BlocksIcon, BoldIcon, BookOpenCheckIcon, BookTextIcon, BookmarkIcon, BookmarkPlusIcon, BracesIcon, BrainIcon, BrowserControlIcon, Building2Icon, BuildingIcon, CableIcon, CalendarClockIcon, CalendarIcon, CaseLawIcon, CheckCheckIcon, CheckCircle2Icon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleAlertIcon, CircleCheckIcon, CircleDashedIcon, CircleDotIcon, CircleHelpIcon, CircleIcon, CircleOffIcon, CircleUserRoundIcon, ClipboardCheckIcon, ClipboardCopyIcon, ClipboardIcon, ClipboardListIcon, Clock3Icon, ClockIcon, CogIcon, Columns2Icon, Columns3Icon, ColumnsIcon, CommandIcon, CompassIcon, CopyFromMenuIcon, CopyPlusIcon, CopyToClipboardIcon, CornerDownLeftIcon, CpuIcon, CropIcon, DatabaseIcon, DictateIcon, DollarSignIcon, DownloadIcon, DuplicateIcon, EditIcon, EllipsisIcon, EllipsisVerticalIcon, EqualIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileBadgeIcon, FileCheckIcon, FileCodeIcon, FileDiffIcon, FileDigitIcon, FileDownIcon, FileIcon, FileImageIcon, FileOutputIcon, FilePenLineIcon, FilePlus2Icon, FilePlusIcon, FileQuestionIcon, FileSearchIcon, FileSpreadsheetIcon, FileTextIcon, FileUpIcon, FilterIcon, FilterXIcon, FlagIcon, FlaskConicalIcon, FoldHorizontalIcon, FolderIcon, FolderInputIcon, FolderOpenIcon, FolderPlusIcon, FolderSyncIcon, FolderTreeIcon, FunctionSquareIcon, GanttChartIcon, GaugeIcon, GitBranchIcon, GitCommitHorizontalIcon, GitPullRequestIcon, GlobeIcon, GraduationCapIcon, GripVerticalIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HighlighterIcon, HistoryIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, ItalicIcon, KanbanIcon, KeyRoundIcon, KeyboardIcon, LandmarkIcon, LanguagesIcon, LaptopIcon, LayersIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutTemplateIcon, LibraryBigIcon, LibraryIcon, Link2Icon, LinkIcon, ListChecksIcon, ListFilterIcon, ListIcon, ListMinusIcon, ListOrderedIcon, ListTodoIcon, ListTreeIcon, ListXIcon, LoaderCircleIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, type LucideIcon, MailIcon, Maximize2Icon, MegaphoneIcon, MessageCircleQuestionIcon, MessageSquareIcon, MessageSquareTextIcon, MessageSquareWarningIcon, MessagesSquareIcon, Minimize2Icon, MinusIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, NewChatIcon, PackageIcon, PaletteIcon, PanelLeftIcon, PanelRightIcon, PaperclipIcon, PauseIcon, PenIcon, PenLineIcon, PencilIcon, PencilLineIcon, PhoneIcon, PinIcon, PinOffIcon, PlayIcon, PlugIcon, PlusIcon, PowerIcon, PrinterIcon, QuoteIcon, Redo2Icon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RotateCcwIcon, RotateCwIcon, RouteIcon, Rows2Icon, Rows3Icon, SaveIcon, ScanSearchIcon, ScanTextIcon, ScissorsIcon, ScrollTextIcon, SearchIcon, SearchXIcon, SendIcon, ServerIcon, Settings2Icon, ShapesIcon, ShieldAlertIcon, ShieldCheckIcon, ShieldIcon, SigmaIcon, SignatureIcon, SkillIcon, SlashIcon, SlidersHorizontalIcon, SparklesIcon, SplitIcon, SquareCheckIcon, SquareIcon, SquareMinusIcon, SquarePenIcon, StarIcon, StarOffIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, TableIcon, TagIcon, TagsIcon, TerminalIcon, TextIcon, TextQuoteIcon, ToggleLeftIcon, Trash2Icon, TrashIcon, TriangleAlertIcon, UnderlineIcon, Undo2Icon, UndoIcon, UnfoldHorizontalIcon, UngroupIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlusIcon, UserRoundIcon, UsersIcon, VideoIcon, WavesIcon, WindIcon, WorkflowIcon, WrapTextIcon, WrenchIcon, XCircleIcon, XIcon, XSquareIcon, ZapIcon };
|
package/dist/icons.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { ActivityIcon, MessageSquareQuoteIcon as AddCommentIcon, WandSparklesIcon as AiActionIcon, AlarmClockIcon, AlertCircleIcon, AlertTriangleIcon, AlignJustifyIcon, AlignLeftIcon, ArchiveIcon, ArchiveRestoreIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpDownIcon, ArrowUpIcon, AtSignIcon, BanIcon, BanknoteIcon, BellIcon, BlocksIcon, BoldIcon, BookOpenCheckIcon, BookTextIcon, BookmarkIcon, BookmarkPlusIcon, BracesIcon, BrainIcon, Building2Icon, BuildingIcon, CableIcon, CalendarClockIcon, CalendarIcon, BookOpenIcon as CaseLawIcon, CheckCheckIcon, CheckCircle2Icon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleAlertIcon, CircleCheckIcon, CircleDashedIcon, CircleDotIcon, CircleHelpIcon, CircleIcon, CircleOffIcon, CircleUserRoundIcon, ClipboardCheckIcon, ClipboardCopyIcon, ClipboardIcon, ClipboardListIcon, Clock3Icon, ClockIcon, CogIcon, Columns2Icon, Columns3Icon, ColumnsIcon, CommandIcon, CompassIcon, CopyIcon as CopyFromMenuIcon, CopyPlusIcon, CopyIcon as CopyToClipboardIcon, CornerDownLeftIcon, CpuIcon, CropIcon, DatabaseIcon, DollarSignIcon, DownloadIcon, CopyIcon as DuplicateIcon, EditIcon, EllipsisIcon, EllipsisVerticalIcon, EqualIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileBadgeIcon, FileCheckIcon, FileCodeIcon, FileDiffIcon, FileDigitIcon, FileDownIcon, FileIcon, FileImageIcon, FileOutputIcon, FilePenLineIcon, FilePlus2Icon, FilePlusIcon, FileQuestionIcon, FileSearchIcon, FileSpreadsheetIcon, FileTextIcon, FileUpIcon, FilterIcon, FilterXIcon, FlagIcon, FlaskConicalIcon, FoldHorizontalIcon, FolderIcon, FolderInputIcon, FolderOpenIcon, FolderPlusIcon, FolderSyncIcon, FolderTreeIcon, FunctionSquareIcon, GanttChartIcon, GaugeIcon, GitBranchIcon, GitCommitHorizontalIcon, GitPullRequestIcon, GlobeIcon, GraduationCapIcon, GripVerticalIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HighlighterIcon, HistoryIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, ItalicIcon, KanbanIcon, KeyRoundIcon, KeyboardIcon, LandmarkIcon, LanguagesIcon, LaptopIcon, LayersIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutTemplateIcon, LibraryBigIcon, LibraryIcon, Link2Icon, LinkIcon, ListChecksIcon, ListFilterIcon, ListIcon, ListMinusIcon, ListOrderedIcon, ListTodoIcon, ListTreeIcon, ListXIcon, LoaderCircleIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, MailIcon, Maximize2Icon, MegaphoneIcon, MessageCircleQuestionIcon, MessageSquareIcon, MessageSquareTextIcon, MessageSquareWarningIcon, MessagesSquareIcon, Minimize2Icon, MinusIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, MessageSquarePlusIcon as NewChatIcon, PackageIcon, PaletteIcon, PanelLeftIcon, PanelRightIcon, PaperclipIcon, PauseIcon, PenIcon, PenLineIcon, PencilIcon, PencilLineIcon, PhoneIcon, PinIcon, PinOffIcon, PlayIcon, PlugIcon, PlusIcon, PowerIcon, PrinterIcon, QuoteIcon, Redo2Icon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RotateCcwIcon, RotateCwIcon, RouteIcon, Rows2Icon, Rows3Icon, SaveIcon, ScanSearchIcon, ScanTextIcon, ScissorsIcon, ScrollTextIcon, SearchIcon, SearchXIcon, SendIcon, ServerIcon, Settings2Icon, ShapesIcon, ShieldAlertIcon, ShieldCheckIcon, ShieldIcon, SigmaIcon, SignatureIcon, BookOpenIcon as SkillIcon, SlashIcon, SlidersHorizontalIcon, SparklesIcon, SplitIcon, SquareCheckIcon, SquareIcon, SquareMinusIcon, SquarePenIcon, StarIcon, StarOffIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, TableIcon, TagIcon, TagsIcon, TerminalIcon, TextIcon, TextQuoteIcon, ToggleLeftIcon, Trash2Icon, TrashIcon, TriangleAlertIcon, UnderlineIcon, Undo2Icon, UndoIcon, UnfoldHorizontalIcon, UngroupIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlusIcon, UserRoundIcon, UsersIcon, VideoIcon, WavesIcon, WindIcon, WorkflowIcon, WrapTextIcon, WrenchIcon, XCircleIcon, XIcon, XSquareIcon, ZapIcon } from "lucide-react";
|
|
1
|
+
export { ActivityIcon, MessageSquareQuoteIcon as AddCommentIcon, WandSparklesIcon as AiActionIcon, AlarmClockIcon, AlertCircleIcon, AlertTriangleIcon, AlignJustifyIcon, AlignLeftIcon, ArchiveIcon, ArchiveRestoreIcon, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpDownIcon, ArrowUpIcon, AtSignIcon, BanIcon, BanknoteIcon, BellIcon, BlocksIcon, BoldIcon, BookOpenCheckIcon, BookTextIcon, BookmarkIcon, BookmarkPlusIcon, BracesIcon, BrainIcon, AppWindowMacIcon as BrowserControlIcon, Building2Icon, BuildingIcon, CableIcon, CalendarClockIcon, CalendarIcon, BookOpenIcon as CaseLawIcon, CheckCheckIcon, CheckCircle2Icon, CheckIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleAlertIcon, CircleCheckIcon, CircleDashedIcon, CircleDotIcon, CircleHelpIcon, CircleIcon, CircleOffIcon, CircleUserRoundIcon, ClipboardCheckIcon, ClipboardCopyIcon, ClipboardIcon, ClipboardListIcon, Clock3Icon, ClockIcon, CogIcon, Columns2Icon, Columns3Icon, ColumnsIcon, CommandIcon, CompassIcon, CopyIcon as CopyFromMenuIcon, CopyPlusIcon, CopyIcon as CopyToClipboardIcon, CornerDownLeftIcon, CpuIcon, CropIcon, DatabaseIcon, MicIcon as DictateIcon, DollarSignIcon, DownloadIcon, CopyIcon as DuplicateIcon, EditIcon, EllipsisIcon, EllipsisVerticalIcon, EqualIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FileBadgeIcon, FileCheckIcon, FileCodeIcon, FileDiffIcon, FileDigitIcon, FileDownIcon, FileIcon, FileImageIcon, FileOutputIcon, FilePenLineIcon, FilePlus2Icon, FilePlusIcon, FileQuestionIcon, FileSearchIcon, FileSpreadsheetIcon, FileTextIcon, FileUpIcon, FilterIcon, FilterXIcon, FlagIcon, FlaskConicalIcon, FoldHorizontalIcon, FolderIcon, FolderInputIcon, FolderOpenIcon, FolderPlusIcon, FolderSyncIcon, FolderTreeIcon, FunctionSquareIcon, GanttChartIcon, GaugeIcon, GitBranchIcon, GitCommitHorizontalIcon, GitPullRequestIcon, GlobeIcon, GraduationCapIcon, GripVerticalIcon, HashIcon, Heading1Icon, Heading2Icon, Heading3Icon, HelpCircleIcon, HighlighterIcon, HistoryIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, ItalicIcon, KanbanIcon, KeyRoundIcon, KeyboardIcon, LandmarkIcon, LanguagesIcon, LaptopIcon, LayersIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutTemplateIcon, LibraryBigIcon, LibraryIcon, Link2Icon, LinkIcon, ListChecksIcon, ListFilterIcon, ListIcon, ListMinusIcon, ListOrderedIcon, ListTodoIcon, ListTreeIcon, ListXIcon, LoaderCircleIcon, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, MailIcon, Maximize2Icon, MegaphoneIcon, MessageCircleQuestionIcon, MessageSquareIcon, MessageSquareTextIcon, MessageSquareWarningIcon, MessagesSquareIcon, Minimize2Icon, MinusIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, MessageSquarePlusIcon as NewChatIcon, PackageIcon, PaletteIcon, PanelLeftIcon, PanelRightIcon, PaperclipIcon, PauseIcon, PenIcon, PenLineIcon, PencilIcon, PencilLineIcon, PhoneIcon, PinIcon, PinOffIcon, PlayIcon, PlugIcon, PlusIcon, PowerIcon, PrinterIcon, QuoteIcon, Redo2Icon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RotateCcwIcon, RotateCwIcon, RouteIcon, Rows2Icon, Rows3Icon, SaveIcon, ScanSearchIcon, ScanTextIcon, ScissorsIcon, ScrollTextIcon, SearchIcon, SearchXIcon, SendIcon, ServerIcon, Settings2Icon, ShapesIcon, ShieldAlertIcon, ShieldCheckIcon, ShieldIcon, SigmaIcon, SignatureIcon, BookOpenIcon as SkillIcon, SlashIcon, SlidersHorizontalIcon, SparklesIcon, SplitIcon, SquareCheckIcon, SquareIcon, SquareMinusIcon, SquarePenIcon, StarIcon, StarOffIcon, StickyNoteIcon, StrikethroughIcon, SunIcon, TableIcon, TagIcon, TagsIcon, TerminalIcon, TextIcon, TextQuoteIcon, ToggleLeftIcon, Trash2Icon, TrashIcon, TriangleAlertIcon, UnderlineIcon, Undo2Icon, UndoIcon, UnfoldHorizontalIcon, UngroupIcon, UploadIcon, UserCheckIcon, UserIcon, UserPlusIcon, UserRoundIcon, UsersIcon, VideoIcon, WavesIcon, WindIcon, WorkflowIcon, WrapTextIcon, WrenchIcon, XCircleIcon, XIcon, XSquareIcon, ZapIcon } from "lucide-react";
|
package/dist/index.d.ts
CHANGED
|
@@ -73,8 +73,9 @@ import { MenuSection } from "./components/menu-section.js";
|
|
|
73
73
|
import { OUTLINE_CONTROL_MIN_SIZE, OUTLINE_EMPHASIS, OutlineEmphasis, OutlineItem, OutlineRail, OutlineRailProps, outlineEntryText } from "./components/outline-rail.js";
|
|
74
74
|
import { PROPERTY_ROW_GRID, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX } from "./inspector/layout-tokens.js";
|
|
75
75
|
import { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious } from "./components/pagination.js";
|
|
76
|
-
import { PanelTrigger, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout } from "./components/sidebar.js";
|
|
76
|
+
import { PanelTrigger, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIdentityButton, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout } from "./components/sidebar.js";
|
|
77
77
|
import { Popover, PopoverClose, PopoverContent as PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger } from "./components/popover.js";
|
|
78
|
+
import { ResizeSeparator, Separator, TextSeparator } from "./components/separator.js";
|
|
78
79
|
import { ResourceCalendar, ResourceCalendarColumn, ResourceCalendarEntry, ResourceCalendarEntryTone, ResourceCalendarResource } from "./calendar/resource-calendar.js";
|
|
79
80
|
import { ReviewAuthorAvatar, UNKNOWN_AUTHOR_LABEL } from "./review/review-author-avatar.js";
|
|
80
81
|
import { ReviewCommentAuthor, ReviewCommentCard } from "./review/review-comment-card.js";
|
|
@@ -89,7 +90,6 @@ import { SearchField, SearchFieldProps } from "./components/search-field.js";
|
|
|
89
90
|
import { SecretInput, SecretInputProps } from "./components/secret-input.js";
|
|
90
91
|
import { SegmentedIconToggle } from "./components/segmented-icon-toggle.js";
|
|
91
92
|
import { Select, SelectContent as SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue } from "./components/select.js";
|
|
92
|
-
import { Separator, TextSeparator } from "./components/separator.js";
|
|
93
93
|
import { Sheet, SheetBackdrop, SheetClose, SheetContent as SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, SheetSide, SheetTitle, SheetTrigger } from "./components/sheet.js";
|
|
94
94
|
import { Skeleton } from "./components/skeleton.js";
|
|
95
95
|
import { SortDirection, SortableHead, Table, TableAlign, TableBody, TableCaption, TableCell, TableCellProps, TableDensity, TableFooter, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableInset, TableProps, TableRow, TableScroll, TableTone } from "./components/table.js";
|
|
@@ -112,4 +112,4 @@ import { getInitials } from "./lib/initials.js";
|
|
|
112
112
|
import { useIsMobile } from "./hooks/use-mobile.js";
|
|
113
113
|
import { useLatest } from "./hooks/use-latest.js";
|
|
114
114
|
import { useViewportWidth } from "./hooks/use-viewport-width.js";
|
|
115
|
-
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, BUTTON_CONTENT, BUTTON_SIZE_CONTENT, Badge, type BadgeProps, type BadgeSize, type BadgeTone, type BidiDirection, BidiText, type BidiTextProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, type BuildKanbanBoardMatrixParams, Button, type ButtonFocusRing, type ButtonPlainShape, type ButtonProps, type ButtonSize, ButtonTextRun, type ButtonVariant, CONTROL_SIZE, CONTROL_SIZES, COPIED_RESET_MS, CalendarCell, CalendarDateRange, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, Collapsible, CollapsiblePanel, CollapsibleTrigger, ColorPicker, ColorPickerContent, type ColorPickerContentProps, type ColorPickerProps, type ColorPreset, ColorVariants, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, type ControlSize, CopyButton, CopyFeedback, type CreateKanbanDropIntentParams, DEFAULT_PRESETS, DIALOG_MOBILE_LAYOUT, DIALOG_SIZE_CLASS_NAMES, DataTable, type DataTableAriaSort, type DataTableColumn, type DataTableProps, type DataTableRowAction, DatePickerPopover, type DatePickerPopoverProps, DestructiveActionConfirmation, DestructiveConfirmDialog, type DestructiveConfirmDialogProps, type DestructiveConfirmOutcome, DetailsGrid, DetailsItem, type DetailsOrientation, type DetailsVariant, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogFormState, DialogHeader, type DialogLabels, type DialogMobileLayout, DialogPanel, DialogPortal, DialogProvider, type DialogSize, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, FileInput, type FileInputProps, Form, type FormErrors, type FormProps, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, type HexColorPickerProps, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, InlineRenameInput, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputProps, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, type InspectorDockMount, InspectorEmptyRow, InspectorEntityTab, type InspectorEntityTabInactiveIcon, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, type KanbanBandToggleActivation, type KanbanBoardAxis, type KanbanBoardCell, type KanbanBoardColumn, type KanbanBoardCoordinate, type KanbanBoardDestination, type KanbanBoardLane, type KanbanBoardMatrix, type KanbanBuiltInGroup, type KanbanCardDragPreview, KanbanCardDragSurface, type KanbanCardDragSurfaceProps, type KanbanCardFieldSelection, type KanbanCardSelectionModifiers, KanbanCardShell, type KanbanCardShellProps, KanbanCellAction, type KanbanCellActionProps, type KanbanCellVirtualNavigation, KanbanCollapsedBandCaption, type KanbanCollapsedBandCaptionProps, type KanbanColumnBand, KanbanColumnBandHeader, type KanbanColumnBandHeaderProps, type KanbanColumnBandSpan, KanbanColumnHeader, type KanbanColumnHeaderProps, type KanbanDirection, type KanbanDragCancelEvent, type KanbanDragEndEvent, KanbanDragHandle, type KanbanDragHandleProps, type KanbanDragOverEvent, type KanbanDragStartEvent, type KanbanDropAxisChange, type KanbanDropIntent, type KanbanGroup, type KanbanGroupOption, type KanbanGrouping, type KanbanHorizontalEdge, type KanbanSchema, type KanbanSortableActivationMode, type KanbanSortableBindings, KanbanSortableBoard, type KanbanSortableBoardProps, type KanbanSortableCellPosition, type KanbanSubgroupBandHeaderContext, KanbanSubgroupBoard, type KanbanSubgroupBoardProps, type KanbanSubgroupCellContext, type KanbanSubgroupCollapsedBandCellContext, type KanbanSubgroupColumnHeaderContext, type KanbanSubgroupLaneColumnActionContext, type KanbanSubgroupLaneColumnSummaryContext, type KanbanSubgroupLaneIdentityContext, KanbanVirtualCell, type KanbanVirtualCellPagination, type KanbanVirtualCellProps, type KanbanVirtualCellSortableContext, type KanbanVirtualScrollRequest, LEGAL_TEXT_CLASS_NAME, Label, type LabelVariant, List, ListEmpty, ListGroup, ListGroupAction, ListGroupCount, ListGroupDescription, ListGroupHeader, ListGroupHeading, ListGroupTitle, ListItem, ListItemActions, ListItemContent, ListItemDescription, ListItemMedia, ListItemStatus, ListItemTitle, MenuAnchor, MenuPreviewLayout, MenuSection, OUTLINE_CONTROL_MIN_SIZE, OUTLINE_EMPHASIS, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OptionColor, type OrderKanbanCellsByColumnsParams, OutlineEmphasis, OutlineItem, OutlineRail, OutlineRailProps, OverlayLayer, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PanelTrigger, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, Prose, type RegisterKanbanBoardAutoScrollOptions, type RegisterKanbanCardDragOptions, type ResolveKanbanGroupValueParams, type ResolveKanbanGroupingParams, ResourceCalendar, ResourceCalendarColumn, ResourceCalendarEntry, ResourceCalendarEntryTone, ResourceCalendarLaneLayout, ResourceCalendarLanePlacement, ResourceCalendarPlacement, ResourceCalendarResource, ReviewAuthorAvatar, ReviewCommentAuthor, ReviewCommentCard, ReviewDecisionActions, ReviewDecisionSize, ReviewDecisionState, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffSegment, ReviewDiffSegmentType, ReviewDiffText, ReviewOutOfDateNotice, ReviewOutOfDateReason, ReviewOutOfDateTone, ReviewSeverityDot, ReviewSeverityLevel, ReviewStatusBadge, ReviewStatusDot, ReviewStatusSize, ReviewStatusTone, ReviewStatusVariant, SHELL_CHROME_LAYER_CLASS_NAME, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, ScrollToTopProps, SearchField, type SearchFieldProps, SecretInput, type SecretInputProps, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, type SheetSide, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SortDirection, SortableHead, type StatusTone, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TOOLTIP_OPEN_DELAY_MS, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, type TableAlign, TableBody, TableCaption, TableCell, type TableCellProps, type TableColumnCapabilities, type TableColumnDescriptor, type TableDensity, TableFooter, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableInset, type TableProps, TableRow, type TableSchema, type TableScroll, type TableTone, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, type TextareaProps, type ToastPosition, ToastProvider, Toggle, ToggleGroup, ToggleGroupItem, type ToggleGroupProps, type ToggleProps, type ToggleVariant, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipFactTrigger, TooltipProvider, TooltipTrigger, TruncatedText, type TruncatedTextLines, type TruncatedTextProps, TypedCharacterEvent, UNKNOWN_AUTHOR_LABEL, type UseKanbanDropTargetOptions, type UseKanbanSortableOptions, UserText, type WorkspaceCompactNavigation, WorkspaceEndRail, type WorkspaceEndRailChatAction, type WorkspaceEndRailProps, type WorkspaceNavigation, WorkspaceShell, type WorkspaceShellProps, type WorkspaceTopBarContext, XLogoIcon, assertConsecutiveCalendarDates, badgeVariants, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, formVariants, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, isTextOverflowing, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, outlineEntryText, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, resolveToastUpdateTimeout, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sidebarIdentityTriggerClassName, sortableColumnIds, stellaToast, stripDirectionalControls, tableColumnIds, tableColumnSizing, toastCountdownMs, toastDedupeId, typedCharacter, useContentDir, useCopiedFeedback, useCopyConfirmation, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useSidebarLayout, useViewportWidth, visibleColumnIds, withoutDirectionalControls };
|
|
115
|
+
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, BUTTON_CONTENT, BUTTON_SIZE_CONTENT, Badge, type BadgeProps, type BadgeSize, type BadgeTone, type BidiDirection, BidiText, type BidiTextProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, type BuildKanbanBoardMatrixParams, Button, type ButtonFocusRing, type ButtonPlainShape, type ButtonProps, type ButtonSize, ButtonTextRun, type ButtonVariant, CONTROL_SIZE, CONTROL_SIZES, COPIED_RESET_MS, CalendarCell, CalendarDateRange, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, Collapsible, CollapsiblePanel, CollapsibleTrigger, ColorPicker, ColorPickerContent, type ColorPickerContentProps, type ColorPickerProps, type ColorPreset, ColorVariants, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, type ControlSize, CopyButton, CopyFeedback, type CreateKanbanDropIntentParams, DEFAULT_PRESETS, DIALOG_MOBILE_LAYOUT, DIALOG_SIZE_CLASS_NAMES, DataTable, type DataTableAriaSort, type DataTableColumn, type DataTableProps, type DataTableRowAction, DatePickerPopover, type DatePickerPopoverProps, DestructiveActionConfirmation, DestructiveConfirmDialog, type DestructiveConfirmDialogProps, type DestructiveConfirmOutcome, DetailsGrid, DetailsItem, type DetailsOrientation, type DetailsVariant, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogFormState, DialogHeader, type DialogLabels, type DialogMobileLayout, DialogPanel, DialogPortal, DialogProvider, type DialogSize, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, FileInput, type FileInputProps, Form, type FormErrors, type FormProps, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, type HexColorPickerProps, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, InlineRenameInput, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputProps, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, type InspectorDockMount, InspectorEmptyRow, InspectorEntityTab, type InspectorEntityTabInactiveIcon, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, type KanbanBandToggleActivation, type KanbanBoardAxis, type KanbanBoardCell, type KanbanBoardColumn, type KanbanBoardCoordinate, type KanbanBoardDestination, type KanbanBoardLane, type KanbanBoardMatrix, type KanbanBuiltInGroup, type KanbanCardDragPreview, KanbanCardDragSurface, type KanbanCardDragSurfaceProps, type KanbanCardFieldSelection, type KanbanCardSelectionModifiers, KanbanCardShell, type KanbanCardShellProps, KanbanCellAction, type KanbanCellActionProps, type KanbanCellVirtualNavigation, KanbanCollapsedBandCaption, type KanbanCollapsedBandCaptionProps, type KanbanColumnBand, KanbanColumnBandHeader, type KanbanColumnBandHeaderProps, type KanbanColumnBandSpan, KanbanColumnHeader, type KanbanColumnHeaderProps, type KanbanDirection, type KanbanDragCancelEvent, type KanbanDragEndEvent, KanbanDragHandle, type KanbanDragHandleProps, type KanbanDragOverEvent, type KanbanDragStartEvent, type KanbanDropAxisChange, type KanbanDropIntent, type KanbanGroup, type KanbanGroupOption, type KanbanGrouping, type KanbanHorizontalEdge, type KanbanSchema, type KanbanSortableActivationMode, type KanbanSortableBindings, KanbanSortableBoard, type KanbanSortableBoardProps, type KanbanSortableCellPosition, type KanbanSubgroupBandHeaderContext, KanbanSubgroupBoard, type KanbanSubgroupBoardProps, type KanbanSubgroupCellContext, type KanbanSubgroupCollapsedBandCellContext, type KanbanSubgroupColumnHeaderContext, type KanbanSubgroupLaneColumnActionContext, type KanbanSubgroupLaneColumnSummaryContext, type KanbanSubgroupLaneIdentityContext, KanbanVirtualCell, type KanbanVirtualCellPagination, type KanbanVirtualCellProps, type KanbanVirtualCellSortableContext, type KanbanVirtualScrollRequest, LEGAL_TEXT_CLASS_NAME, Label, type LabelVariant, List, ListEmpty, ListGroup, ListGroupAction, ListGroupCount, ListGroupDescription, ListGroupHeader, ListGroupHeading, ListGroupTitle, ListItem, ListItemActions, ListItemContent, ListItemDescription, ListItemMedia, ListItemStatus, ListItemTitle, MenuAnchor, MenuPreviewLayout, MenuSection, OUTLINE_CONTROL_MIN_SIZE, OUTLINE_EMPHASIS, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OptionColor, type OrderKanbanCellsByColumnsParams, OutlineEmphasis, OutlineItem, OutlineRail, OutlineRailProps, OverlayLayer, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PanelTrigger, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, Prose, type RegisterKanbanBoardAutoScrollOptions, type RegisterKanbanCardDragOptions, ResizeSeparator, type ResolveKanbanGroupValueParams, type ResolveKanbanGroupingParams, ResourceCalendar, ResourceCalendarColumn, ResourceCalendarEntry, ResourceCalendarEntryTone, ResourceCalendarLaneLayout, ResourceCalendarLanePlacement, ResourceCalendarPlacement, ResourceCalendarResource, ReviewAuthorAvatar, ReviewCommentAuthor, ReviewCommentCard, ReviewDecisionActions, ReviewDecisionSize, ReviewDecisionState, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffSegment, ReviewDiffSegmentType, ReviewDiffText, ReviewOutOfDateNotice, ReviewOutOfDateReason, ReviewOutOfDateTone, ReviewSeverityDot, ReviewSeverityLevel, ReviewStatusBadge, ReviewStatusDot, ReviewStatusSize, ReviewStatusTone, ReviewStatusVariant, SHELL_CHROME_LAYER_CLASS_NAME, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, ScrollToTopProps, SearchField, type SearchFieldProps, SecretInput, type SecretInputProps, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, type SheetSide, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIdentityButton, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SortDirection, SortableHead, type StatusTone, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TOOLTIP_OPEN_DELAY_MS, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, type TableAlign, TableBody, TableCaption, TableCell, type TableCellProps, type TableColumnCapabilities, type TableColumnDescriptor, type TableDensity, TableFooter, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableInset, type TableProps, TableRow, type TableSchema, type TableScroll, type TableTone, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, type TextareaProps, type ToastPosition, ToastProvider, Toggle, ToggleGroup, ToggleGroupItem, type ToggleGroupProps, type ToggleProps, type ToggleVariant, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipFactTrigger, TooltipProvider, TooltipTrigger, TruncatedText, type TruncatedTextLines, type TruncatedTextProps, TypedCharacterEvent, UNKNOWN_AUTHOR_LABEL, type UseKanbanDropTargetOptions, type UseKanbanSortableOptions, UserText, type WorkspaceCompactNavigation, WorkspaceEndRail, type WorkspaceEndRailChatAction, type WorkspaceEndRailProps, type WorkspaceNavigation, WorkspaceShell, type WorkspaceShellProps, type WorkspaceTopBarContext, XLogoIcon, assertConsecutiveCalendarDates, badgeVariants, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, formVariants, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, isTextOverflowing, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, outlineEntryText, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, resolveToastUpdateTimeout, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sidebarIdentityTriggerClassName, sortableColumnIds, stellaToast, stripDirectionalControls, tableColumnIds, tableColumnSizing, toastCountdownMs, toastDedupeId, typedCharacter, useContentDir, useCopiedFeedback, useCopyConfirmation, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useSidebarLayout, useViewportWidth, visibleColumnIds, withoutDirectionalControls };
|
package/dist/index.js
CHANGED
|
@@ -65,9 +65,9 @@ import { SecretInput } from "./components/secret-input.js";
|
|
|
65
65
|
import { Toggle } from "./components/toggle.js";
|
|
66
66
|
import { ToggleGroup, ToggleGroupItem } from "./components/toggle-group.js";
|
|
67
67
|
import { SegmentedIconToggle } from "./components/segmented-icon-toggle.js";
|
|
68
|
-
import { Separator, TextSeparator } from "./components/separator.js";
|
|
68
|
+
import { ResizeSeparator, Separator, TextSeparator } from "./components/separator.js";
|
|
69
69
|
import { Skeleton } from "./components/skeleton.js";
|
|
70
|
-
import { PanelTrigger, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout } from "./components/sidebar.js";
|
|
70
|
+
import { PanelTrigger, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIdentityButton, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, sidebarIdentityTriggerClassName, useSidebar, useSidebarInlineSize, useSidebarLayout } from "./components/sidebar.js";
|
|
71
71
|
import { StellaWordmarkLatin } from "./components/stella-wordmark.js";
|
|
72
72
|
import { SortableHead, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow } from "./components/table.js";
|
|
73
73
|
import { Tabs, TabsContent as TabsPanel, TabsList, TabsTab } from "./components/tabs.js";
|
|
@@ -108,4 +108,4 @@ import { ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffText, TRACKED_DELETI
|
|
|
108
108
|
import { ReviewOutOfDateNotice } from "./review/review-out-of-date-notice.js";
|
|
109
109
|
import { ReviewSeverityDot, ReviewStatusDot, reviewSeverityTone } from "./review/review-severity-dot.js";
|
|
110
110
|
import { ReviewStatusBadge } from "./review/review-status-badge.js";
|
|
111
|
-
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, BUTTON_CONTENT, BUTTON_SIZE_CONTENT, Badge, BidiText, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonTextRun, CONTROL_SIZE, CONTROL_SIZES, COPIED_RESET_MS, CalendarCell, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, Collapsible, CollapsiblePanel, CollapsibleTrigger, ColorPicker, ColorPickerContent, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, CopyButton, CopyFeedback, DEFAULT_PRESETS, DIALOG_MOBILE_LAYOUT, DIALOG_SIZE_CLASS_NAMES, DataTable, DatePickerPopover, DestructiveActionConfirmation, DestructiveConfirmDialog, DetailsGrid, DetailsItem, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogFormState, DialogHeader, DialogPanel, DialogPortal, DialogProvider, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, FileInput, Form, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, InlineRenameInput, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, InspectorEmptyRow, InspectorEntityTab, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, KanbanCardDragSurface, KanbanCardShell, KanbanCellAction, KanbanCollapsedBandCaption, KanbanColumnBandHeader, KanbanColumnHeader, KanbanDragHandle, KanbanSortableBoard, KanbanSubgroupBoard, KanbanVirtualCell, LEGAL_TEXT_CLASS_NAME, Label, List, ListEmpty, ListGroup, ListGroupAction, ListGroupCount, ListGroupDescription, ListGroupHeader, ListGroupHeading, ListGroupTitle, ListItem, ListItemActions, ListItemContent, ListItemDescription, ListItemMedia, ListItemStatus, ListItemTitle, MenuAnchor, MenuPreviewLayout, MenuSection, OUTLINE_CONTROL_MIN_SIZE, OUTLINE_EMPHASIS, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OutlineRail, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PanelTrigger, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, Prose, ResourceCalendar, ReviewAuthorAvatar, ReviewCommentCard, ReviewDecisionActions, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffText, ReviewOutOfDateNotice, ReviewSeverityDot, ReviewStatusBadge, ReviewStatusDot, SHELL_CHROME_LAYER_CLASS_NAME, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, SearchField, SecretInput, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, SortableHead, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TOOLTIP_OPEN_DELAY_MS, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, ToastProvider, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipFactTrigger, TooltipProvider, TooltipTrigger, TruncatedText, UNKNOWN_AUTHOR_LABEL, UserText, WorkspaceEndRail, WorkspaceShell, XLogoIcon, assertConsecutiveCalendarDates, badgeVariants, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, formVariants, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, isTextOverflowing, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, outlineEntryText, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, resolveToastUpdateTimeout, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sidebarIdentityTriggerClassName, sortableColumnIds, stellaToast, stripDirectionalControls, tableColumnIds, tableColumnSizing, toastCountdownMs, toastDedupeId, typedCharacter, useContentDir, useCopiedFeedback, useCopyConfirmation, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useSidebarLayout, useViewportWidth, visibleColumnIds, withoutDirectionalControls };
|
|
111
|
+
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, BUTTON_CONTENT, BUTTON_SIZE_CONTENT, Badge, BidiText, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonTextRun, CONTROL_SIZE, CONTROL_SIZES, COPIED_RESET_MS, CalendarCell, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, Collapsible, CollapsiblePanel, CollapsibleTrigger, ColorPicker, ColorPickerContent, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, CopyButton, CopyFeedback, DEFAULT_PRESETS, DIALOG_MOBILE_LAYOUT, DIALOG_SIZE_CLASS_NAMES, DataTable, DatePickerPopover, DestructiveActionConfirmation, DestructiveConfirmDialog, DetailsGrid, DetailsItem, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogFormState, DialogHeader, DialogPanel, DialogPortal, DialogProvider, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, FileInput, Form, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, InlineRenameInput, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, InspectorEmptyRow, InspectorEntityTab, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, KanbanCardDragSurface, KanbanCardShell, KanbanCellAction, KanbanCollapsedBandCaption, KanbanColumnBandHeader, KanbanColumnHeader, KanbanDragHandle, KanbanSortableBoard, KanbanSubgroupBoard, KanbanVirtualCell, LEGAL_TEXT_CLASS_NAME, Label, List, ListEmpty, ListGroup, ListGroupAction, ListGroupCount, ListGroupDescription, ListGroupHeader, ListGroupHeading, ListGroupTitle, ListItem, ListItemActions, ListItemContent, ListItemDescription, ListItemMedia, ListItemStatus, ListItemTitle, MenuAnchor, MenuPreviewLayout, MenuSection, OUTLINE_CONTROL_MIN_SIZE, OUTLINE_EMPHASIS, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OutlineRail, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PanelTrigger, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, Prose, ResizeSeparator, ResourceCalendar, ReviewAuthorAvatar, ReviewCommentCard, ReviewDecisionActions, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffText, ReviewOutOfDateNotice, ReviewSeverityDot, ReviewStatusBadge, ReviewStatusDot, SHELL_CHROME_LAYER_CLASS_NAME, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, SearchField, SecretInput, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarIdentityButton, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, SortableHead, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TOOLTIP_OPEN_DELAY_MS, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, ToastProvider, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipFactTrigger, TooltipProvider, TooltipTrigger, TruncatedText, UNKNOWN_AUTHOR_LABEL, UserText, WorkspaceEndRail, WorkspaceShell, XLogoIcon, assertConsecutiveCalendarDates, badgeVariants, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, formVariants, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, isTextOverflowing, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, outlineEntryText, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, resolveToastUpdateTimeout, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sidebarIdentityTriggerClassName, sortableColumnIds, stellaToast, stripDirectionalControls, tableColumnIds, tableColumnSizing, toastCountdownMs, toastDedupeId, typedCharacter, useContentDir, useCopiedFeedback, useCopyConfirmation, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useSidebarLayout, useViewportWidth, visibleColumnIds, withoutDirectionalControls };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stll/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.65.0",
|
|
4
4
|
"description": "Stella's design system: bidi-aware React primitives built on Base UI, the dockable inspector pane, and the Tailwind v4 theme they are styled with.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"base-ui",
|
|
@@ -130,6 +130,10 @@
|
|
|
130
130
|
"types": "./dist/components/document-identity-badge.logic.d.ts",
|
|
131
131
|
"import": "./dist/components/document-identity-badge.logic.js"
|
|
132
132
|
},
|
|
133
|
+
"./court-filter": {
|
|
134
|
+
"types": "./dist/components/court-filter.d.ts",
|
|
135
|
+
"import": "./dist/components/court-filter.js"
|
|
136
|
+
},
|
|
133
137
|
"./court-badge": {
|
|
134
138
|
"types": "./dist/components/court-badge.d.ts",
|
|
135
139
|
"import": "./dist/components/court-badge.js"
|
|
@@ -142,6 +146,10 @@
|
|
|
142
146
|
"types": "./dist/lib/control-size.d.ts",
|
|
143
147
|
"import": "./dist/lib/control-size.js"
|
|
144
148
|
},
|
|
149
|
+
"./field-trigger": {
|
|
150
|
+
"types": "./dist/lib/field-trigger.d.ts",
|
|
151
|
+
"import": "./dist/lib/field-trigger.js"
|
|
152
|
+
},
|
|
145
153
|
"./animated-count": {
|
|
146
154
|
"types": "./dist/components/animated-count.d.ts",
|
|
147
155
|
"import": "./dist/components/animated-count.js"
|
|
@@ -446,6 +454,10 @@
|
|
|
446
454
|
"types": "./dist/components/loader.d.ts",
|
|
447
455
|
"import": "./dist/components/loader.js"
|
|
448
456
|
},
|
|
457
|
+
"./middle-truncate": {
|
|
458
|
+
"types": "./dist/components/middle-truncate.d.ts",
|
|
459
|
+
"import": "./dist/components/middle-truncate.js"
|
|
460
|
+
},
|
|
449
461
|
"./skeleton": {
|
|
450
462
|
"types": "./dist/components/skeleton.d.ts",
|
|
451
463
|
"import": "./dist/components/skeleton.js"
|
|
@@ -888,6 +900,7 @@
|
|
|
888
900
|
"@types/react": "^19.3.0",
|
|
889
901
|
"@types/react-dom": "^19.3.0",
|
|
890
902
|
"bun-types": "1.4.4",
|
|
903
|
+
"fast-check": "^4.10.2",
|
|
891
904
|
"react": "^19.3.1",
|
|
892
905
|
"react-dom": "^19.3.1",
|
|
893
906
|
"tailwindcss": "4.3.3",
|