gridsmith-ui 0.28.0 → 0.29.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +47 -1
- package/dist/charts.d.ts +7 -2
- package/dist/charts.js +2 -2
- package/dist/charts.js.map +1 -1
- package/dist/chat.js +5 -5
- package/dist/{chunk-GXMTS3YD.js → chunk-37WOC7F7.js} +29 -12
- package/dist/chunk-37WOC7F7.js.map +1 -0
- package/dist/{chunk-OPFJEL3Z.js → chunk-4TUJXDRU.js} +96 -15
- package/dist/chunk-4TUJXDRU.js.map +1 -0
- package/dist/{chunk-EIWXVICU.js → chunk-6A5RHW2W.js} +3 -3
- package/dist/{chunk-EIWXVICU.js.map → chunk-6A5RHW2W.js.map} +1 -1
- package/dist/{chunk-XVB55M3N.js → chunk-72SDAX54.js} +2 -2
- package/dist/chunk-72SDAX54.js.map +1 -0
- package/dist/{chunk-YUTF2X6B.js → chunk-FUKSLQ77.js} +8 -8
- package/dist/{chunk-YUTF2X6B.js.map → chunk-FUKSLQ77.js.map} +1 -1
- package/dist/{chunk-DQCHCLEJ.js → chunk-I3MTQ3CS.js} +5 -5
- package/dist/{chunk-DQCHCLEJ.js.map → chunk-I3MTQ3CS.js.map} +1 -1
- package/dist/{chunk-66JJCQU3.js → chunk-JTU7OBYJ.js} +5 -3
- package/dist/chunk-JTU7OBYJ.js.map +1 -0
- package/dist/{chunk-2ROVDVLZ.js → chunk-MFAWJSMJ.js} +3 -3
- package/dist/{chunk-2ROVDVLZ.js.map → chunk-MFAWJSMJ.js.map} +1 -1
- package/dist/{chunk-TJEV7YAY.js → chunk-MKFWHWBK.js} +2 -2
- package/dist/{chunk-TJEV7YAY.js.map → chunk-MKFWHWBK.js.map} +1 -1
- package/dist/{chunk-BRAXJEEP.js → chunk-QNHVPE2B.js} +4 -4
- package/dist/{chunk-BRAXJEEP.js.map → chunk-QNHVPE2B.js.map} +1 -1
- package/dist/{chunk-TRDXWHD2.js → chunk-RECCCA7Z.js} +6 -6
- package/dist/chunk-RECCCA7Z.js.map +1 -0
- package/dist/{chunk-R4GXKH4U.js → chunk-RJEUQ7RL.js} +10 -8
- package/dist/chunk-RJEUQ7RL.js.map +1 -0
- package/dist/{chunk-CRQ6KCRD.js → chunk-ZHUVLBCC.js} +7 -4
- package/dist/chunk-ZHUVLBCC.js.map +1 -0
- package/dist/data-grid.d.ts +2 -2
- package/dist/data-grid.js +9 -9
- package/dist/data-grid.js.map +1 -1
- package/dist/editor-mentions.js +2 -2
- package/dist/editor.js +4 -4
- package/dist/icons.d.ts +9 -0
- package/dist/icons.js +1 -1
- package/dist/index.d.ts +45 -35
- package/dist/index.js +142 -164
- package/dist/index.js.map +1 -1
- package/dist/kanban.js +6 -6
- package/dist/kanban.js.map +1 -1
- package/dist/resizable.js +7 -7
- package/dist/roots.css +2 -0
- package/dist/{table-utils-BkjNEWts.d.ts → table-utils-CxnpFHRF.d.ts} +5 -4
- package/dist/{use-pagination-BxcRlNQG.d.ts → use-pagination-QykGSREv.d.ts} +7 -0
- package/dist/utils.js.map +1 -1
- package/dist/virtualized.d.ts +1 -1
- package/dist/virtualized.js +6 -6
- package/package.json +2 -2
- package/dist/chunk-66JJCQU3.js.map +0 -1
- package/dist/chunk-CRQ6KCRD.js.map +0 -1
- package/dist/chunk-GXMTS3YD.js.map +0 -1
- package/dist/chunk-OPFJEL3Z.js.map +0 -1
- package/dist/chunk-R4GXKH4U.js.map +0 -1
- package/dist/chunk-TRDXWHD2.js.map +0 -1
- package/dist/chunk-XVB55M3N.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -3,10 +3,10 @@ import { ButtonHTMLAttributes, ReactNode, InputHTMLAttributes, LabelHTMLAttribut
|
|
|
3
3
|
import { IconSlot, IconName } from './icons.js';
|
|
4
4
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
5
5
|
import { M as MentionSuggestion } from './MentionList-CoNBRFGR.js';
|
|
6
|
-
import { C as ColumnKind, B as BreakpointKey } from './table-utils-
|
|
7
|
-
export { a as BreakpointWidthProvider, u as useBreakpoint } from './table-utils-
|
|
8
|
-
import { P as Pager, A as AppShellPreferences } from './use-pagination-
|
|
9
|
-
export { a as PaginationOptions, b as PreferencesContext, R as ResolvedPreferences, p as preferenceActionKey, u as usePagination, c as usePreferences } from './use-pagination-
|
|
6
|
+
import { C as ColumnKind, B as BreakpointKey } from './table-utils-CxnpFHRF.js';
|
|
7
|
+
export { a as BreakpointWidthProvider, u as useBreakpoint } from './table-utils-CxnpFHRF.js';
|
|
8
|
+
import { P as Pager, A as AppShellPreferences } from './use-pagination-QykGSREv.js';
|
|
9
|
+
export { a as PaginationOptions, b as PreferencesContext, R as ResolvedPreferences, p as preferenceActionKey, u as usePagination, c as usePreferences } from './use-pagination-QykGSREv.js';
|
|
10
10
|
export { B as BreadcrumbItem, a as Breadcrumbs, b as BreadcrumbsSeparator, c as BreadcrumbsSize, d as BreadcrumbsVariant } from './Breadcrumbs-CGS8GKl-.js';
|
|
11
11
|
|
|
12
12
|
type ButtonVariant = "default" | "secondary" | "tertiary" | "outline" | "ghost" | "destructive" | "success" | "warning" | "link";
|
|
@@ -343,12 +343,8 @@ interface CheckboxGroupItemProps {
|
|
|
343
343
|
value: string;
|
|
344
344
|
label: string;
|
|
345
345
|
disabled?: boolean;
|
|
346
|
-
/** @deprecated Use CheckboxGroup's value/onChange via context instead. */
|
|
347
|
-
groupValue?: string[];
|
|
348
|
-
/** @deprecated Use CheckboxGroup's value/onChange via context instead. */
|
|
349
|
-
onGroupChange?: (value: string[]) => void;
|
|
350
346
|
}
|
|
351
|
-
declare function CheckboxGroupItem({ value, label, disabled
|
|
347
|
+
declare function CheckboxGroupItem({ value, label, disabled }: CheckboxGroupItemProps): react_jsx_runtime.JSX.Element;
|
|
352
348
|
|
|
353
349
|
interface RadioOption {
|
|
354
350
|
value: string;
|
|
@@ -890,6 +886,11 @@ interface FormContextValue {
|
|
|
890
886
|
*/
|
|
891
887
|
register: (field: string, check: FieldCheck) => () => void;
|
|
892
888
|
}
|
|
889
|
+
/**
|
|
890
|
+
* The FormWrapper a field sits in: its errors with `setError` and `clearErrors`, the project's validation timing
|
|
891
|
+
* (`validationMode`, forms.validationTiming through FormWrapper), whether it has been submitted, and `register` for a
|
|
892
|
+
* field's own check, which the form runs on each submit. Throws outside a FormWrapper.
|
|
893
|
+
*/
|
|
893
894
|
declare function useFormContext(): FormContextValue;
|
|
894
895
|
|
|
895
896
|
/** An invalid field as the form finds it in its own DOM after a submit. */
|
|
@@ -1485,11 +1486,6 @@ interface AvatarGroupItem {
|
|
|
1485
1486
|
initials?: string;
|
|
1486
1487
|
src?: string;
|
|
1487
1488
|
alt?: string;
|
|
1488
|
-
/**
|
|
1489
|
-
* @deprecated Ignored: a group draws no status (the owner, 30 September 2026: dots on overlapping avatars read as
|
|
1490
|
-
* broken). Show someone's status with a single Avatar.
|
|
1491
|
-
*/
|
|
1492
|
-
status?: AvatarStatus;
|
|
1493
1489
|
color?: AvatarColor;
|
|
1494
1490
|
}
|
|
1495
1491
|
interface AvatarGroupProps {
|
|
@@ -1937,7 +1933,7 @@ interface AsidePanelProps {
|
|
|
1937
1933
|
navbarFloating?: boolean;
|
|
1938
1934
|
/** Whether the sidebar is floating — a left-docked floating column then drops its outer gutter, because the sidebar's own gutter is the gap (as PageHeader does). */
|
|
1939
1935
|
sidebarFloating?: boolean;
|
|
1940
|
-
/** Below this breakpoint the page is too narrow to share: the panel renders as a non-modal Drawer instead (and as the modal Sheet
|
|
1936
|
+
/** Below this breakpoint the page is too narrow to share: the panel renders as a non-modal Drawer instead (and as the modal Sheet below sm, as Drawer does). Default "lg". */
|
|
1941
1937
|
collapseBelow?: BreakpointKey;
|
|
1942
1938
|
/** Keep the content mounted while closed (hidden) so drafts and scroll survive. Default true — the column exists for persistent assistants. */
|
|
1943
1939
|
keepMounted?: boolean;
|
|
@@ -1994,10 +1990,6 @@ interface StackedListProps {
|
|
|
1994
1990
|
/** The current row in a master-detail list. Its treatment follows the theme's in-page vertical active style (rail, tint or pill), like Tabs. */
|
|
1995
1991
|
selectedId?: string | number;
|
|
1996
1992
|
className?: string;
|
|
1997
|
-
/** @deprecated Sprint 25.4: use variant="articles". Accepted for one version. */
|
|
1998
|
-
flush?: boolean;
|
|
1999
|
-
/** @deprecated Sprint 25.4: use variant="articles" (hover="title") — the default variant tints the row. */
|
|
2000
|
-
hover?: "tint" | "title";
|
|
2001
1993
|
/**
|
|
2002
1994
|
* The list's pager (Sprint 25.13 A3), from `usePagination(items)` over the same items: the list draws the pager's
|
|
2003
1995
|
* part of every item and, beneath it, the control in the project's style. Draw no <Pagination> of your own.
|
|
@@ -2873,6 +2865,10 @@ interface SidebarContextValue {
|
|
|
2873
2865
|
navbarFloating: boolean;
|
|
2874
2866
|
navSize?: "sm" | "md";
|
|
2875
2867
|
}
|
|
2868
|
+
/**
|
|
2869
|
+
* The Sidebar around this component, or null outside one: whether it is collapsed (with `onCollapsedChange`), its type
|
|
2870
|
+
* and position, whether the navbar beside it floats, and the element its popovers portal into.
|
|
2871
|
+
*/
|
|
2876
2872
|
declare function useSidebar(): SidebarContextValue | null;
|
|
2877
2873
|
type SidebarVariant = "default" | "dark";
|
|
2878
2874
|
interface SidebarProps {
|
|
@@ -3078,7 +3074,7 @@ interface DockProps {
|
|
|
3078
3074
|
declare function Dock({ items, magnification, baseSize, className, }: DockProps): react_jsx_runtime.JSX.Element;
|
|
3079
3075
|
|
|
3080
3076
|
/** `tint` (soft accent fill), `underline`, `minimal`, `pill` (solid accent fill). `default` is the deprecated pre-20.8 name for `tint`. */
|
|
3081
|
-
type NavbarType = "tint" | "underline" | "minimal" | "pill"
|
|
3077
|
+
type NavbarType = "tint" | "underline" | "minimal" | "pill";
|
|
3082
3078
|
type NavbarAlign = "left" | "center" | "right";
|
|
3083
3079
|
type NavbarVariant = "default" | "transparent" | "compact" | "elevated" | "blurred";
|
|
3084
3080
|
type NavbarSize = "sm" | "md" | "lg";
|
|
@@ -3107,12 +3103,10 @@ interface NavbarProps {
|
|
|
3107
3103
|
declare const Navbar: react.ForwardRefExoticComponent<NavbarProps & react.RefAttributes<HTMLElement>>;
|
|
3108
3104
|
|
|
3109
3105
|
/**
|
|
3110
|
-
* Navbar active style. `tint` is the soft accent fill
|
|
3111
|
-
*
|
|
3112
|
-
* accent fill with on-primary text. `default` is accepted as a deprecated alias
|
|
3113
|
-
* for `tint` for one release.
|
|
3106
|
+
* Navbar active style. `tint` is the soft accent fill, `underline` the bottom indicator, `minimal` a text-only
|
|
3107
|
+
* change, `pill` a solid accent fill with on-primary text.
|
|
3114
3108
|
*/
|
|
3115
|
-
type NavItemType = "tint" | "underline" | "minimal" | "pill"
|
|
3109
|
+
type NavItemType = "tint" | "underline" | "minimal" | "pill";
|
|
3116
3110
|
interface NavItemProps {
|
|
3117
3111
|
label: string;
|
|
3118
3112
|
icon?: IconName;
|
|
@@ -3147,8 +3141,8 @@ interface NavMenuProps {
|
|
|
3147
3141
|
}
|
|
3148
3142
|
declare function NavMenu({ label, items, active, type: typeProp, onItemClick, className, }: NavMenuProps): react_jsx_runtime.JSX.Element;
|
|
3149
3143
|
|
|
3150
|
-
/** Mirrors NavbarType.
|
|
3151
|
-
type MobileHeaderMenuType = "tint" | "underline" | "minimal" | "pill"
|
|
3144
|
+
/** Mirrors NavbarType. */
|
|
3145
|
+
type MobileHeaderMenuType = "tint" | "underline" | "minimal" | "pill";
|
|
3152
3146
|
interface MobileHeaderMenuItemData {
|
|
3153
3147
|
label: string;
|
|
3154
3148
|
icon?: IconName;
|
|
@@ -3210,8 +3204,9 @@ interface DrawerProps {
|
|
|
3210
3204
|
topOffset?: string;
|
|
3211
3205
|
/**
|
|
3212
3206
|
* What the drawer becomes at phone width (≤ the sm breakpoint).
|
|
3213
|
-
* "sheet" (default for right and bottom): a draggable bottom Sheet with snap
|
|
3214
|
-
*
|
|
3207
|
+
* "sheet" (default for right and bottom, and for a non-modal drawer on any side): a draggable bottom Sheet with snap
|
|
3208
|
+
* points, always modal.
|
|
3209
|
+
* "panel" (default for a modal left drawer, which is the navigation convention): a full-height side panel.
|
|
3215
3210
|
* lightBackdrop and topOffset do not apply in sheet mode.
|
|
3216
3211
|
*/
|
|
3217
3212
|
mobile?: "sheet" | "panel";
|
|
@@ -3268,7 +3263,7 @@ interface TooltipProps extends Omit<HTMLAttributes<HTMLElement>, "content"> {
|
|
|
3268
3263
|
*/
|
|
3269
3264
|
ref?: Ref<HTMLElement>;
|
|
3270
3265
|
}
|
|
3271
|
-
declare function Tooltip({ content, children, side, delay, className, container, disabled, ref
|
|
3266
|
+
declare function Tooltip({ content, children, side, delay, className, container, disabled, ref, ...slotProps }: TooltipProps): react_jsx_runtime.JSX.Element;
|
|
3272
3267
|
|
|
3273
3268
|
interface PopoverProps {
|
|
3274
3269
|
open: boolean;
|
|
@@ -3533,6 +3528,13 @@ interface ToastProviderProps {
|
|
|
3533
3528
|
/** Pause every toast's time while the stack is hovered (focus inside it always pauses). Default true. */
|
|
3534
3529
|
pauseOnHover?: boolean;
|
|
3535
3530
|
}
|
|
3531
|
+
/**
|
|
3532
|
+
* The app's toasts, from the shell's ToastProvider: `toast`, `success`, `warning` and `error` show one and return its id,
|
|
3533
|
+
* `update` changes one in place, `dismiss` and `dismissAll` remove them, and `promise` shows a loading toast that
|
|
3534
|
+
* resolves to success or error. The provider places every toast and times it by the project's preferences. For a
|
|
3535
|
+
* destructive action's Undo, use `useDestructiveAction`, which shows its own toast for the project's undo window.
|
|
3536
|
+
* Throws outside the ToastProvider.
|
|
3537
|
+
*/
|
|
3536
3538
|
declare function useToast(): ToastApi;
|
|
3537
3539
|
/** The toast API when a ToastProvider is above, else null — for components that can do without one (useDestructiveAction in dialog mode). */
|
|
3538
3540
|
declare function useToastOptional(): ToastApi | null;
|
|
@@ -3607,7 +3609,7 @@ interface AppShellContextValue {
|
|
|
3607
3609
|
/**
|
|
3608
3610
|
* Effective sidebar collapse for a traditional Sidebar rendered in the shell.
|
|
3609
3611
|
* The user's explicit choice wins; otherwise the auto tier applies — collapsed
|
|
3610
|
-
* to a rail
|
|
3612
|
+
* to a rail below the `lg` breakpoint, expanded from it. Lives here rather
|
|
3611
3613
|
* than in Sidebar so it survives the sidebar unmounting in the drawer range.
|
|
3612
3614
|
*/
|
|
3613
3615
|
sidebarCollapsed: boolean;
|
|
@@ -3642,8 +3644,10 @@ interface AppShellContextValue {
|
|
|
3642
3644
|
registerChrome: (kind: "navbar" | "sidebar", position: ChromePosition) => () => void;
|
|
3643
3645
|
/** True when the shell renders a Launcher above sm — PageContainer adjusts its bottom padding to clear the launcher. */
|
|
3644
3646
|
hasLauncher: boolean;
|
|
3645
|
-
/** The bottom corner
|
|
3647
|
+
/** The bottom corner a bubble or pill launcher occupies, so the container's bottom padding reads that corner's inset variable. The page's padding ignores a ribbon, which hugs the window's edge (its claim keeps only toasts off it). */
|
|
3646
3648
|
launcherCorner: "bottom-right" | "bottom-left" | null;
|
|
3649
|
+
/** Called by a Launcher inside the shell with the corner it occupies (null for a ribbon), so the padding follows the Launcher itself however the slot wraps it. Returns the unregister. */
|
|
3650
|
+
registerLauncher: (corner: "bottom-right" | "bottom-left" | null) => () => void;
|
|
3647
3651
|
/** The shell renders an app footer under the page. Its children sit in a wrapper whose height is not definite, so a
|
|
3648
3652
|
* `fill` SplitView reads `--ds-main-height` (published on the shell element) instead of `h-full`. */
|
|
3649
3653
|
hasFooter: boolean;
|
|
@@ -3681,6 +3685,12 @@ interface AppShellFocus {
|
|
|
3681
3685
|
/** What the exit control does: save and log out, or return to where the user came from. */
|
|
3682
3686
|
onExit?: () => void;
|
|
3683
3687
|
}
|
|
3688
|
+
/**
|
|
3689
|
+
* The app shell around this component, or null outside one: its layout state — whether it has a sidebar, a mobile menu
|
|
3690
|
+
* and a mobile nav, whether the sidebar is open or collapsed and the aside open (each with its setter), the viewport tier
|
|
3691
|
+
* (`isMobile`, `isTablet`), the theme it was given and whether its navbar and sidebar float. For telling the shell about
|
|
3692
|
+
* unsaved changes, use `useUnsavedChanges`.
|
|
3693
|
+
*/
|
|
3684
3694
|
declare function useAppShell(): AppShellContextValue | null;
|
|
3685
3695
|
/**
|
|
3686
3696
|
* Tells the shell this page has unsaved changes, so focus mode's Exit asks before it leaves (Sprint 25.7, C1). Pass the
|
|
@@ -3712,9 +3722,9 @@ interface AppShellProps {
|
|
|
3712
3722
|
/** Which side of the content the aside sits on. Default "right". Pass the same value to the AsidePanel. */
|
|
3713
3723
|
asideSide?: "right" | "left";
|
|
3714
3724
|
/**
|
|
3715
|
-
* A Launcher for the assistant. Rendered
|
|
3716
|
-
* because the Launcher portals out of any wrapper — so on phones the Navbar button is the entry
|
|
3717
|
-
* and it never collides with BottomNav.
|
|
3725
|
+
* A Launcher for the assistant. Rendered from the sm breakpoint up, where Tailwind's `sm:` starts — a conditional
|
|
3726
|
+
* render, because the Launcher portals out of any wrapper — so below it, on phones, the Navbar button is the entry
|
|
3727
|
+
* point and it never collides with BottomNav.
|
|
3718
3728
|
*/
|
|
3719
3729
|
launcher?: ReactNode;
|
|
3720
3730
|
children: ReactNode;
|