@capra/core 1.12.0 → 1.14.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/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as React$2 from "react";
2
- import React$1, { HTMLAttributeAnchorTarget, HTMLAttributeReferrerPolicy } from "react";
2
+ import React$1, { HTMLAttributeAnchorTarget, HTMLAttributeReferrerPolicy, ReactNode } from "react";
3
3
  import { SvgIcon } from "@capra/icons";
4
- import { BreadcrumbProps as BreadcrumbProps$1, BreadcrumbsProps as BreadcrumbsProps$1, ButtonProps as ButtonProps$1, ComboBoxRenderProps, DatePickerProps, DateRangePickerProps, DateValue, DisclosureProps, Focusable, Key, LinkProps as LinkProps$1, ListBoxItemProps, PopoverProps as PopoverProps$1, PressEvent, RouterProvider } from "react-aria-components";
4
+ import { BreadcrumbProps as BreadcrumbProps$1, BreadcrumbsProps as BreadcrumbsProps$1, ButtonProps as ButtonProps$1, ColumnProps, ComboBoxRenderProps, DatePickerProps, DateRangePickerProps, DateValue, DisclosureProps, Focusable, Key, Key as Key$1, LinkProps as LinkProps$1, ListBoxItemProps, PopoverProps as PopoverProps$1, PressEvent, RouterProvider, Selection, SelectionMode, SortDescriptor, ToggleButtonGroupProps as ToggleButtonGroupProps$1 } from "react-aria-components";
5
5
  import { SvgLogo } from "@capra/icons/logos";
6
6
  //#region src/utils/stylingOverride.d.ts
7
7
  interface StylingOverrideProps {
@@ -23,7 +23,7 @@ interface StylingOverrideProps {
23
23
  declare const layouts: readonly ['section', 'compact', 'inline'];
24
24
  type Layout = (typeof layouts)[number];
25
25
  declare const appearances$3: readonly ['info', 'warning', 'danger', 'success'];
26
- type Appearance$3 = (typeof appearances$3)[number];
26
+ type Appearance$4 = (typeof appearances$3)[number];
27
27
  type AlertProps = {
28
28
  /**
29
29
  * The layout of the alert.
@@ -49,7 +49,7 @@ type AlertProps = {
49
49
  * <li>'success' - Success alerts confirm an action has been completed.</li>
50
50
  * </ul>
51
51
  */
52
- appearance?: Appearance$3;
52
+ appearance?: Appearance$4;
53
53
  /**
54
54
  * The title of the alert. This is optional.
55
55
  */
@@ -88,21 +88,21 @@ declare function Alert({ appearance, layout, title, children, action, onDismiss,
88
88
  //#endregion
89
89
  //#region src/components/TextInput/TextInput.d.ts
90
90
  declare const appearances$2: readonly ['default', 'danger', 'warning'];
91
- type Appearance$2 = (typeof appearances$2)[number];
91
+ type Appearance$3 = (typeof appearances$2)[number];
92
92
  declare const sizes$2: readonly ['sm', 'md'];
93
- type Size$3 = (typeof sizes$2)[number];
93
+ type Size$4 = (typeof sizes$2)[number];
94
94
  type TextInputProps = {
95
95
  /** Appearance of the input.
96
96
  * @default 'default'
97
97
  */
98
- appearance?: Appearance$2;
98
+ appearance?: Appearance$3;
99
99
  /** Content before the input (e.g. icon). */
100
100
  leadingSlot?: React$2.ReactNode;
101
101
  /**
102
102
  * Size of the input.
103
103
  * @default 'md'
104
104
  */
105
- size?: Size$3;
105
+ size?: Size$4;
106
106
  /** Content after the input (e.g. icon or clear button). */
107
107
  trailingSlot?: React$2.ReactNode;
108
108
  } & StylingOverrideProps & Omit<React$2.ComponentPropsWithoutRef<'input'>, 'className' | 'style' | 'size'>;
@@ -113,18 +113,23 @@ declare const TextInput: React$2.ForwardRefExoticComponent<{
113
113
  /** Appearance of the input.
114
114
  * @default 'default'
115
115
  */
116
- appearance?: Appearance$2;
116
+ appearance?: Appearance$3;
117
117
  /** Content before the input (e.g. icon). */
118
118
  leadingSlot?: React$2.ReactNode;
119
119
  /**
120
120
  * Size of the input.
121
121
  * @default 'md'
122
122
  */
123
- size?: Size$3;
123
+ size?: Size$4;
124
124
  /** Content after the input (e.g. icon or clear button). */
125
125
  trailingSlot?: React$2.ReactNode;
126
126
  } & StylingOverrideProps & Omit<Omit<React$2.DetailedHTMLProps<React$2.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref">, "className" | "size" | "style"> & React$2.RefAttributes<HTMLInputElement>>;
127
127
  //#endregion
128
+ //#region src/components/input-helpers/ChildrenOrFunction.d.ts
129
+ type ChildrenOrFunction$1<T> = ReactNode | ((values: T & {
130
+ defaultChildren: ReactNode | undefined;
131
+ }) => ReactNode);
132
+ //#endregion
128
133
  //#region src/components/input-helpers/fieldLayout.d.ts
129
134
  type FieldLayoutProps = {
130
135
  /** Helper text below the field. Replaced by error message when status is error. Use for requirements, disclaimers. */
@@ -139,9 +144,7 @@ type FieldLayoutProps = {
139
144
  type AutocompleteItem = {
140
145
  value: string;
141
146
  };
142
- type ChildrenOrFunction<T> = React$1.ReactNode | ((values: T & {
143
- defaultChildren: React$1.ReactNode | undefined;
144
- }) => React$1.ReactNode);
147
+ type ChildrenOrFunction<T> = ChildrenOrFunction$1<T>;
145
148
  type AutocompleteFieldProps = {
146
149
  /** Whether to show a clear button for the input. */
147
150
  canClear?: boolean;
@@ -185,9 +188,9 @@ declare const AutocompleteField: ((props: {
185
188
  /** Whether to automatically size the dropdown to the width of the input. Defaults to `true` */
186
189
  shouldAutoSizeDropdown?: boolean;
187
190
  } & StylingOverrideProps & FieldLayoutProps & Omit<Omit<{
188
- appearance?: Appearance$2;
191
+ appearance?: Appearance$3;
189
192
  leadingSlot?: React$1.ReactNode;
190
- size?: Size$3;
193
+ size?: Size$4;
191
194
  trailingSlot?: React$1.ReactNode;
192
195
  } & StylingOverrideProps & Omit<Omit<React$1.DetailedHTMLProps<React$1.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref">, "className" | "size" | "style"> & React$1.RefAttributes<HTMLInputElement>, "ref">, "onChange" | "value"> & React$1.RefAttributes<HTMLInputElement>) => React$1.ReactElement) & {
193
196
  Item: typeof AutocompleteItem;
@@ -306,7 +309,19 @@ type LabelProp = {
306
309
  type AccessibleLabelProps = LabelledByProp | LabelProp;
307
310
  //#endregion
308
311
  //#region src/components/Badge/Badge.d.ts
309
- type AccessibleBadgeProps = AccessibleLabelProps & {
312
+ type NamedBadgeProps = AccessibleLabelProps & {
313
+ decorative?: never;
314
+ };
315
+ type DecorativeBadgeProps = {
316
+ /**
317
+ * Marks the badge as purely decorative, removing it from the accessibility tree.
318
+ * Must not be combined with 'aria-label' or 'aria-labelledby'.
319
+ */
320
+ decorative: true;
321
+ 'aria-label'?: never;
322
+ 'aria-labelledby'?: never;
323
+ };
324
+ type AccessibleBadgeProps = (NamedBadgeProps | DecorativeBadgeProps) & {
310
325
  'aria-live'?: React$2.AriaAttributes['aria-live'];
311
326
  };
312
327
  declare const badgeSizes: readonly ['sm', 'md'];
@@ -339,11 +354,11 @@ type BadgeProps = {
339
354
  * The number to display in the badge when the count is greater than the overflow count. Default is 99.
340
355
  */
341
356
  overflowCount?: number;
342
- } & StylingOverrideProps & AccessibleBadgeProps & Omit<React$2.ComponentPropsWithoutRef<'span'>, 'className' | 'role' | 'aria-label' | 'aria-labelledby' | 'aria-live'>;
357
+ } & StylingOverrideProps & AccessibleBadgeProps & Omit<React$2.ComponentPropsWithoutRef<'span'>, 'className' | 'role' | 'aria-label' | 'aria-labelledby' | 'aria-live' | 'aria-hidden'>;
343
358
  /**
344
359
  * Badges display an indicator/counter on an associated component.
345
360
  */
346
- declare function Badge({ appearance, variant, size, count, showZero, overflowCount, FORCE__className, style, ...props }: BadgeProps): React$2.JSX.Element | null;
361
+ declare function Badge({ appearance, variant, size, count, showZero, overflowCount, decorative, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, FORCE__className, style, ...props }: BadgeProps): React$2.JSX.Element | null;
347
362
  type BadgeLayoutProps = React$2.PropsWithChildren<{
348
363
  offset?: readonly [x: number, y: number];
349
364
  }>;
@@ -569,6 +584,8 @@ type CheckboxProps = {
569
584
  defaultChecked?: boolean;
570
585
  /** The label for the checkbox. */
571
586
  children?: string | React$2.ReactNode;
587
+ /** Slot name for React Aria context wiring (e.g. "selection" in Table). */
588
+ slot?: string | null;
572
589
  } & StylingOverrideProps & Omit<React$2.ComponentPropsWithoutRef<'input'>, 'className' | 'type'>;
573
590
  /**
574
591
  * Checkbox component for capturing boolean user input.
@@ -590,6 +607,8 @@ declare const Checkbox: React$2.ForwardRefExoticComponent<{
590
607
  defaultChecked?: boolean;
591
608
  /** The label for the checkbox. */
592
609
  children?: string | React$2.ReactNode;
610
+ /** Slot name for React Aria context wiring (e.g. "selection" in Table). */
611
+ slot?: string | null;
593
612
  } & StylingOverrideProps & Omit<Omit<React$2.DetailedHTMLProps<React$2.InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>, "ref">, "className" | "type"> & React$2.RefAttributes<HTMLInputElement>>;
594
613
  //#endregion
595
614
  //#region src/components/Collapse/Collapse.d.ts
@@ -628,7 +647,7 @@ type InputRowAddonProps = {
628
647
  * Vertical size to align with adjacent {@link TextInput} / field controls.
629
648
  * @default 'md'
630
649
  */
631
- size?: Size$3;
650
+ size?: Size$4;
632
651
  } & StylingOverrideProps & Omit<React$2.ComponentPropsWithoutRef<'span'>, 'className'>;
633
652
  declare function InputRowAddon({ children, size, FORCE__className: classNameOverride, ...rest }: InputRowAddonProps): React$2.JSX.Element;
634
653
  declare function InputRowRoot({ children, FORCE__className: classNameOverride, role: roleProp, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, ...rest }: InputRowProps): React$2.JSX.Element;
@@ -735,6 +754,125 @@ declare const DatePickerField: React$2.ForwardRefExoticComponent<FieldLayoutProp
735
754
  isInvalid?: boolean;
736
755
  } & React$2.RefAttributes<HTMLDivElement>>;
737
756
  //#endregion
757
+ //#region src/components/SelectField/SelectField.d.ts
758
+ type SelectionMode$1 = 'single' | 'multiple';
759
+ type DefaultItem = {
760
+ id: Key$1;
761
+ label: string;
762
+ /** Optional icon rendered before the label. */
763
+ icon?: SvgIcon;
764
+ };
765
+ /** A group of `DefaultItem`s, rendered as a labeled section. Enables defining sections via `items` instead of JSX children. */
766
+ type DefaultSection = {
767
+ /** Unique key for the section. */
768
+ id: Key$1;
769
+ /** Visible header label. Omit for an unlabeled group (then pass `aria-label`). */
770
+ label?: string;
771
+ /** Accessible name when there is no visible header. */
772
+ 'aria-label'?: string;
773
+ /** Options within this section. */
774
+ children: Iterable<DefaultItem>;
775
+ };
776
+ type DefaultItemOrSection = DefaultItem | DefaultSection;
777
+ type ItemRenderer<T extends object> = (item: T) => React$2.ReactElement;
778
+ type ItemsChildren<T extends object> = React$2.ReactNode | ItemRenderer<T>;
779
+ type SelectFieldProps<T extends object = DefaultItemOrSection, M extends SelectionMode$1 = 'single'> = FieldLayoutProps & StylingOverrideProps & {
780
+ /** Visual status of the trigger. `danger` marks the field invalid for accessibility and helper text treatment. @default 'default' */
781
+ appearance?: Appearance$3;
782
+ /** Trigger size variant. @default 'md' */
783
+ size?: Size$4;
784
+ /** Optional content rendered before the selected value, such as an icon. Pass a single node or group multiple nodes in a fragment or array. */
785
+ leadingSlot?: React$2.ReactNode;
786
+ /** Placeholder text shown in the trigger when there is no selection. Omit to render an empty trigger instead of a default placeholder. */
787
+ placeholder?: string;
788
+ /** Disables the field and prevents opening the listbox. */
789
+ disabled?: boolean;
790
+ /** Marks the field as required and shows the required indicator on the label. */
791
+ required?: boolean;
792
+ /** HTML `id` for the field root; associates the label, trigger, and helper text. */
793
+ id?: string;
794
+ /** Form field `name` used for native form submission. */
795
+ name?: string;
796
+ /** Whether to focus the trigger on mount. */
797
+ autoFocus?: boolean;
798
+ /** Selection behavior for the field. @default 'single' */
799
+ selectionMode?: M;
800
+ /** Controlled selected key, or selected keys when `selectionMode` is `multiple`. */
801
+ value?: M extends 'multiple' ? Iterable<Key$1> : Key$1 | null;
802
+ /** Uncontrolled initial selected key, or keys when `selectionMode` is `multiple`. */
803
+ defaultValue?: M extends 'multiple' ? Iterable<Key$1> : Key$1 | null;
804
+ /** Called when the selection changes. Receives a `Set` of keys in multiple selection mode. */
805
+ onChange?: (value: M extends 'multiple' ? Set<Key$1> : Key$1 | null) => void;
806
+ /** Controlled open state for the options popover. */
807
+ isOpen?: boolean;
808
+ /** Uncontrolled initial open state for the options popover. */
809
+ defaultOpen?: boolean;
810
+ /** Called when the options popover opens or closes. */
811
+ onOpenChange?: (isOpen: boolean) => void;
812
+ /** When true, renders a search input in the popover to filter options. */
813
+ canSearch?: boolean;
814
+ /** Placeholder text for the in-popover search input when `canSearch` is true. */
815
+ searchPlaceholder?: string;
816
+ /** Whether the popover should be at least as wide as the trigger. @default true */
817
+ shouldAutoSizeDropdown?: boolean;
818
+ /** Accessible name when a visible `label` is not provided. */
819
+ 'aria-label'?: string;
820
+ /** Id of an element that labels the field when a visible `label` is not used. */
821
+ 'aria-labelledby'?: string;
822
+ /** Id of an element that describes the field, such as external helper or error text. */
823
+ 'aria-describedby'?: string;
824
+ /** Data source for dynamic option rendering. Omit to render static `SelectField.Item` children instead. */
825
+ items?: Iterable<T>;
826
+ /** Key(s) of options that cannot be selected, focused, or otherwise interacted with. */
827
+ disabledKeys?: Iterable<Key$1>;
828
+ /** Static `SelectField.Item` children, or a render function for each item in `items`. Defaults to rendering each item's `id` and `label` when `items` is provided and `children` is omitted. */
829
+ children?: ItemsChildren<T>;
830
+ };
831
+ type SelectFieldItemProps = {
832
+ /** Unique key for the option. */
833
+ id: Key$1;
834
+ /** Text used for typeahead and accessibility name computation. */
835
+ textValue?: string;
836
+ /** Disables the option, preventing selection, focus, and interaction. */
837
+ isDisabled?: boolean;
838
+ /**
839
+ * Extra inset for the row. When omitted, items inside {@link SelectField.Section} with a {@link SelectField.Header} indent automatically.
840
+ */
841
+ indent?: boolean;
842
+ /** The object value this item represents. Set automatically when using dynamic collections via `items`. */
843
+ value?: object;
844
+ /** Content rendered for the option label. */
845
+ children: React$2.ReactNode;
846
+ };
847
+ type SelectFieldHeaderProps = StylingOverrideProps & {
848
+ /**
849
+ * Optional id for `aria-labelledby` on {@link SelectField.Section}. When omitted inside a section, an id is assigned automatically.
850
+ */
851
+ id?: string;
852
+ /** Header label. */
853
+ label?: React$2.ReactNode;
854
+ /** Children for compound usage. */
855
+ children?: React$2.ReactNode;
856
+ };
857
+ type SelectFieldSectionProps = StylingOverrideProps & Omit<React$2.HTMLAttributes<HTMLElement>, 'role'> & {
858
+ /**
859
+ * Groups {@link SelectField.Item} rows. Use with an optional {@link SelectField.Header} to label the group.
860
+ * If there is no header, pass `aria-label` (or `aria-labelledby`) so the group has an accessible name.
861
+ */
862
+ children?: React$2.ReactNode;
863
+ };
864
+ declare function SelectFieldItem(props: SelectFieldItemProps): React$2.JSX.Element;
865
+ declare function SelectFieldHeader(props: SelectFieldHeaderProps): React$2.JSX.Element;
866
+ declare function SelectFieldSection(props: SelectFieldSectionProps): React$2.JSX.Element;
867
+ /**
868
+ * Composed select field with Capra label/helper text layout, single and multiple selection, and an optional popover search input.
869
+ */
870
+ declare const SelectField: (<T extends object = DefaultItemOrSection, M extends SelectionMode$1 = "single">(props: SelectFieldProps<T, M> & React$2.RefAttributes<HTMLDivElement>) => React$2.ReactElement | null) & {
871
+ Item: typeof SelectFieldItem;
872
+ Header: typeof SelectFieldHeader;
873
+ Section: typeof SelectFieldSection;
874
+ };
875
+ //#endregion
738
876
  //#region src/components/DateRangePickerField/DateRangePickerField.d.ts
739
877
  /** Visible placeholders for empty start/end when the field is not focus-within. */
740
878
  type DateRangePickerFieldPlaceholder = readonly [string, string];
@@ -791,7 +929,7 @@ type TextAreaProps = {
791
929
  * Appearance of the text area.
792
930
  * @default 'default'
793
931
  */
794
- appearance?: Appearance$2;
932
+ appearance?: Appearance$3;
795
933
  /**
796
934
  * Whether the text area can be vertically resized by the user.
797
935
  * @default true
@@ -816,7 +954,7 @@ declare const TextArea: React$2.ForwardRefExoticComponent<{
816
954
  * Appearance of the text area.
817
955
  * @default 'default'
818
956
  */
819
- appearance?: Appearance$2;
957
+ appearance?: Appearance$3;
820
958
  /**
821
959
  * Whether the text area can be vertically resized by the user.
822
960
  * @default true
@@ -878,10 +1016,10 @@ type ModalCreateResult = {
878
1016
  closed: Promise<void>;
879
1017
  };
880
1018
  declare const appearances$1: readonly ['default', 'info', 'danger', 'warning', 'success'];
881
- type Appearance$1 = (typeof appearances$1)[number];
1019
+ type Appearance$2 = (typeof appearances$1)[number];
882
1020
  type ConfirmationModalProps = Omit<ModalProps, 'title' | 'footer' | 'size' | 'isDismissible' | 'FORCE__className'> & {
883
1021
  /** Visual appearance of the confirmation modal */
884
- appearance?: Appearance$1;
1022
+ appearance?: Appearance$2;
885
1023
  /** Modal title shown in the header */
886
1024
  title: string;
887
1025
  /** Confirmation content */
@@ -1134,18 +1272,18 @@ declare const Anchor: <As extends React$2.ElementType = "a">(props: {
1134
1272
  declare const variants: readonly ['primary', 'secondary', 'tertiary'];
1135
1273
  type Variant = (typeof variants)[number];
1136
1274
  declare const appearances: readonly ['default', 'danger', 'neutral'];
1137
- type Appearance = (typeof appearances)[number];
1275
+ type Appearance$1 = (typeof appearances)[number];
1138
1276
  declare const sizes$1: readonly ['xs', 'sm', 'md', 'lg', 'xl'];
1139
- type Size$2 = (typeof sizes$1)[number];
1277
+ type Size$3 = (typeof sizes$1)[number];
1140
1278
  type ButtonProps = {
1141
1279
  /** The `label` for the button. */
1142
1280
  children: string;
1143
1281
  /** Which button style to use. Defaults to `secondary`. */
1144
1282
  variant?: Variant;
1145
1283
  /** Appearance to apply to the button. Defaults to `default`. */
1146
- appearance?: Appearance;
1284
+ appearance?: Appearance$1;
1147
1285
  /** Size of the button. Defaults to `md`. */
1148
- size?: Size$2;
1286
+ size?: Size$3;
1149
1287
  /** Whether the button is disabled. */
1150
1288
  disabled?: boolean;
1151
1289
  /** Whether the button is in a pending state. */
@@ -1168,9 +1306,9 @@ declare const Button: (props: {
1168
1306
  /** Which button style to use. Defaults to `secondary`. */
1169
1307
  variant?: Variant;
1170
1308
  /** Appearance to apply to the button. Defaults to `default`. */
1171
- appearance?: Appearance;
1309
+ appearance?: Appearance$1;
1172
1310
  /** Size of the button. Defaults to `md`. */
1173
- size?: Size$2;
1311
+ size?: Size$3;
1174
1312
  /** Whether the button is disabled. */
1175
1313
  disabled?: boolean;
1176
1314
  /** Whether the button is in a pending state. */
@@ -1221,9 +1359,9 @@ type ButtonLinkProps<As extends React$2.ElementType> = {
1221
1359
  /** Which visual style to use. Defaults to `secondary`. */
1222
1360
  variant?: Variant;
1223
1361
  /** Appearance to apply to the link. Defaults to `default`. */
1224
- appearance?: Appearance;
1362
+ appearance?: Appearance$1;
1225
1363
  /** Size of the link. Defaults to `md`. */
1226
- size?: Size$2;
1364
+ size?: Size$3;
1227
1365
  /** Whether the link is disabled. */
1228
1366
  disabled?: boolean;
1229
1367
  /** Whether the link is in a pending state. */
@@ -1246,9 +1384,9 @@ declare const ButtonLink: <As extends React$2.ElementType = "a">(props: {
1246
1384
  /** Which visual style to use. Defaults to `secondary`. */
1247
1385
  variant?: Variant;
1248
1386
  /** Appearance to apply to the link. Defaults to `default`. */
1249
- appearance?: Appearance;
1387
+ appearance?: Appearance$1;
1250
1388
  /** Size of the link. Defaults to `md`. */
1251
- size?: Size$2;
1389
+ size?: Size$3;
1252
1390
  /** Whether the link is disabled. */
1253
1391
  disabled?: boolean;
1254
1392
  /** Whether the link is in a pending state. */
@@ -1272,9 +1410,9 @@ type IconButtonProps = {
1272
1410
  /** Which button style to use. Defaults to `secondary`. */
1273
1411
  variant?: Variant;
1274
1412
  /** Appearance to apply to the button. Defaults to `default`. */
1275
- appearance?: Appearance;
1413
+ appearance?: Appearance$1;
1276
1414
  /** Size of the button. Defaults to `md`. */
1277
- size?: Size$2;
1415
+ size?: Size$3;
1278
1416
  /** Whether the button is disabled. */
1279
1417
  disabled?: boolean;
1280
1418
  /** Whether the button is in a pending state. */
@@ -1293,9 +1431,9 @@ declare const IconButton: (props: {
1293
1431
  /** Which button style to use. Defaults to `secondary`. */
1294
1432
  variant?: Variant;
1295
1433
  /** Appearance to apply to the button. Defaults to `default`. */
1296
- appearance?: Appearance;
1434
+ appearance?: Appearance$1;
1297
1435
  /** Size of the button. Defaults to `md`. */
1298
- size?: Size$2;
1436
+ size?: Size$3;
1299
1437
  /** Whether the button is disabled. */
1300
1438
  disabled?: boolean;
1301
1439
  /** Whether the button is in a pending state. */
@@ -1304,6 +1442,55 @@ declare const IconButton: (props: {
1304
1442
  onClick?: React$2.ComponentProps<'button'>['onClick'];
1305
1443
  } & StylingOverrideProps & Omit<ButtonProps$1, "className" | "isDisabled" | "isPending" | "onClick"> & React$2.RefAttributes<HTMLButtonElement>) => React$2.ReactElement;
1306
1444
  //#endregion
1445
+ //#region src/components/ToggleButtonGroup/ToggleButtonGroup.d.ts
1446
+ type Size$2 = Extract<Size$3, 'sm' | 'md'>;
1447
+ type ToggleButtonGroupTextItem = {
1448
+ /** Unique identifier used for selection state. */
1449
+ key: Key$1;
1450
+ /** Button label rendered as visible text. */
1451
+ text: string;
1452
+ /** Optional icon rendered before the label. */
1453
+ icon?: SvgIcon;
1454
+ /** Whether the item is disabled. */
1455
+ disabled?: boolean;
1456
+ /** Optional accessible name when visible text is not sufficient. */
1457
+ 'aria-label'?: string;
1458
+ };
1459
+ type ToggleButtonGroupIconItem = {
1460
+ /** Unique identifier used for selection state. */
1461
+ key: Key$1;
1462
+ text?: never;
1463
+ /** Icon rendered in the button. */
1464
+ icon: SvgIcon;
1465
+ /** Whether the item is disabled. */
1466
+ disabled?: boolean;
1467
+ /** Accessible name for the icon-only button. */
1468
+ 'aria-label': string;
1469
+ };
1470
+ type ToggleButtonGroupItem = ToggleButtonGroupTextItem | ToggleButtonGroupIconItem;
1471
+ type ToggleButtonGroupProps = {
1472
+ /** Items to render as toggle buttons. */
1473
+ items: ToggleButtonGroupItem[];
1474
+ /** Size forwarded to every rendered button. Defaults to `md`. */
1475
+ size?: Size$2;
1476
+ /** Whether the entire group is disabled. */
1477
+ disabled?: boolean;
1478
+ /** Whether single or multiple selection is enabled. Defaults to `single`. */
1479
+ selectionMode?: 'single' | 'multiple';
1480
+ /** Controlled selected keys. */
1481
+ selectedKeys?: Iterable<Key$1>;
1482
+ /** Uncontrolled initial selected keys. */
1483
+ defaultSelectedKeys?: Iterable<Key$1>;
1484
+ /** Handler called when the selection changes. */
1485
+ onSelectionChange?: (keys: Set<Key$1>) => void;
1486
+ /** Whether the group must always have at least one selected item. */
1487
+ disallowEmptySelection?: boolean;
1488
+ } & StylingOverrideProps & AccessibleLabelProps & Omit<ToggleButtonGroupProps$1, 'children' | 'className' | 'isDisabled' | 'selectedKeys' | 'defaultSelectedKeys' | 'onSelectionChange' | 'selectionMode' | 'disallowEmptySelection' | 'aria-label' | 'aria-labelledby'>;
1489
+ /**
1490
+ * A group of toggle buttons for choosing one or more options from a set.
1491
+ */
1492
+ declare function ToggleButtonGroup({ items, size, disabled, selectionMode, selectedKeys, defaultSelectedKeys, onSelectionChange, disallowEmptySelection, FORCE__className: classNameOverride, ...props }: ToggleButtonGroupProps): React$2.JSX.Element;
1493
+ //#endregion
1307
1494
  //#region src/components/Link/Link.d.ts
1308
1495
  type LinkProps<As extends React$2.ElementType> = {
1309
1496
  /**
@@ -1800,6 +1987,11 @@ type MenuItemProps<As extends React$2.ElementType = 'a'> = Omit<React$2.Componen
1800
1987
  * Children for compound usage.
1801
1988
  */
1802
1989
  children?: React$2.ReactNode;
1990
+ /**
1991
+ * Allow items to wrap when they exceed the maximum width
1992
+ * @default false
1993
+ */
1994
+ allowItemLineWrap?: boolean;
1803
1995
  };
1804
1996
  interface MenuHeaderProps extends StylingOverrideProps {
1805
1997
  /**
@@ -1927,7 +2119,7 @@ declare const MenuSection$1: {
1927
2119
  displayName: string;
1928
2120
  };
1929
2121
  declare const MenuItem$1: {
1930
- <As extends React$2.ElementType = "a">({ as: Component, label, description, ariaLabel, href, disabled, active, variant, icon, indent: indentProp, shortcut, parent, onPress, onClick, FORCE__className, children, ...rest }: MenuItemProps<As>): React$2.JSX.Element;
2122
+ <As extends React$2.ElementType = "a">({ as: Component, label, description, ariaLabel, href, disabled, active, variant, icon, indent: indentProp, shortcut, parent, onPress, onClick, FORCE__className, children, allowItemLineWrap, ...rest }: MenuItemProps<As>): React$2.JSX.Element;
1931
2123
  displayName: string;
1932
2124
  };
1933
2125
  declare const MenuDivider: {
@@ -2156,12 +2348,115 @@ type CustomTooltipTriggerProps = {
2156
2348
  */
2157
2349
  declare const CustomTooltipTrigger: React$2.ForwardRefExoticComponent<CustomTooltipTriggerProps & React$2.RefAttributes<HTMLElement>>;
2158
2350
  //#endregion
2351
+ //#region src/components/FilterToolbar/FilterToolbar.d.ts
2352
+ type FilterToolbarProps = {
2353
+ /** props to pass to the filter TextField */
2354
+ filterInputProps?: TextFieldProps;
2355
+ /** Render function for filter related actions */
2356
+ renderActions?: () => React$2.ReactNode;
2357
+ /** Render function for bulk edit text */
2358
+ renderBulkEditText?: () => React$2.ReactNode;
2359
+ /** Render function for bulk edit related actions */
2360
+ renderBulkEditActions?: () => React$2.ReactNode;
2361
+ /** Set of selected keys, necessary to determine filter vs. bulk edit mode */
2362
+ selectedKeys: Selection;
2363
+ };
2364
+ declare function FilterToolbar({ filterInputProps, renderActions, renderBulkEditText, renderBulkEditActions, selectedKeys }: FilterToolbarProps): React$2.JSX.Element;
2365
+ //#endregion
2366
+ //#region src/components/Table/Table.d.ts
2367
+ declare const EMPTY_CELL_PLACEHOLDER = "--";
2368
+ type ResizingConfig = true | {
2369
+ minWidth?: ColumnProps['minWidth'];
2370
+ maxWidth?: ColumnProps['maxWidth'];
2371
+ width?: ColumnProps['width'];
2372
+ defaultWidth?: ColumnProps['defaultWidth'];
2373
+ };
2374
+ type ColumnConfig<T extends string | number, ItemRecord extends BaseItemRecord> = {
2375
+ id: T;
2376
+ label: string;
2377
+ allowsSorting?: boolean;
2378
+ resizing?: ResizingConfig;
2379
+ render?: (value: ItemRecord[T], item: ItemRecord) => React$2.ReactNode;
2380
+ };
2381
+ type StringKeys<T extends Record<string, unknown>> = keyof { [K in keyof T as string extends K ? never : number extends K ? never : K]: T[K]; } & string;
2382
+ type BaseItemRecord = {
2383
+ id: string | number;
2384
+ [key: string]: unknown;
2385
+ };
2386
+ type Density = 'default' | 'compact' | 'tight';
2387
+ type Appearance = 'zebra' | 'flat';
2388
+ type ColumnConfigUnion<ItemRecord extends BaseItemRecord> = { [K in StringKeys<ItemRecord>]: ColumnConfig<K, ItemRecord>; }[StringKeys<ItemRecord>];
2389
+ declare function defineColumns<ItemRecord extends BaseItemRecord>(columns: ColumnConfigUnion<ItemRecord>[]): ColumnConfig<StringKeys<ItemRecord>, ItemRecord>[];
2390
+ type TableProps<ItemRecord extends BaseItemRecord, ColumnKey extends StringKeys<ItemRecord> = StringKeys<ItemRecord>> = {
2391
+ /** The data to render as rows in the Table */
2392
+ items: ItemRecord[];
2393
+ /** The density of the table, affects row height */
2394
+ density?: Density;
2395
+ /** Whether to apply zebra-striping to rows */
2396
+ appearance?: Appearance;
2397
+ /** Key and direction for sorting the Table */
2398
+ sortDescriptor?: SortDescriptor;
2399
+ /** Callback function fired when a the sorting configuration is changed */
2400
+ onSortChange?: (sortDescriptor: SortDescriptor) => void;
2401
+ /** The columns to render in the Table */
2402
+ columns: ColumnConfig<ColumnKey, ItemRecord>[];
2403
+ /** Which columns should be visible */
2404
+ visibleColumns: ColumnKey[];
2405
+ /** Whether the table is in a loading state */
2406
+ isLoading?: boolean;
2407
+ /** Whether drag-and-dropping rows is enabled */
2408
+ enableDragAndDrop?: boolean;
2409
+ /** todo: is this prop needed? */
2410
+ renderActionColumn?: (item: ItemRecord) => React$2.ReactNode;
2411
+ /** Mode of row selection
2412
+ * @default 'none'
2413
+ */
2414
+ selectionMode?: SelectionMode;
2415
+ /** The currently selected keys (controlled) */
2416
+ selectedKeys?: Selection;
2417
+ /** Callback fired when selection changes */
2418
+ onSelectionChange?: (keys: Selection) => void;
2419
+ } & StylingOverrideProps & Omit<React$2.ComponentPropsWithoutRef<'table'>, 'className'>;
2420
+ /**
2421
+ * A component for rendering tabular data
2422
+ */
2423
+ declare const Table: <T extends BaseItemRecord>(props: {
2424
+ /** The data to render as rows in the Table */
2425
+ items: T[];
2426
+ /** The density of the table, affects row height */
2427
+ density?: Density;
2428
+ /** Whether to apply zebra-striping to rows */
2429
+ appearance?: Appearance;
2430
+ /** Key and direction for sorting the Table */
2431
+ sortDescriptor?: SortDescriptor;
2432
+ /** Callback function fired when a the sorting configuration is changed */
2433
+ onSortChange?: (sortDescriptor: SortDescriptor) => void;
2434
+ /** The columns to render in the Table */
2435
+ columns: ColumnConfig<StringKeys<T>, T>[];
2436
+ /** Which columns should be visible */
2437
+ visibleColumns: StringKeys<T>[];
2438
+ /** Whether the table is in a loading state */
2439
+ isLoading?: boolean;
2440
+ /** Whether drag-and-dropping rows is enabled */
2441
+ enableDragAndDrop?: boolean;
2442
+ /** todo: is this prop needed? */
2443
+ renderActionColumn?: ((item: T) => React$2.ReactNode) | undefined;
2444
+ /** Mode of row selection
2445
+ * @default 'none'
2446
+ */
2447
+ selectionMode?: SelectionMode;
2448
+ /** The currently selected keys (controlled) */
2449
+ selectedKeys?: Selection;
2450
+ /** Callback fired when selection changes */
2451
+ onSelectionChange?: (keys: Selection) => void;
2452
+ } & StylingOverrideProps & Omit<Omit<React$2.DetailedHTMLProps<React$2.TableHTMLAttributes<HTMLTableElement>, HTMLTableElement>, "ref">, "className"> & React$2.RefAttributes<HTMLTableElement>) => React$2.ReactElement;
2453
+ //#endregion
2159
2454
  //#region src/components/Tree/Tree.d.ts
2160
2455
  interface TreeItemType {
2161
2456
  /**
2162
2457
  * The unique key of the tree item.
2163
2458
  */
2164
- key: Key;
2459
+ key: Key$1;
2165
2460
  /**
2166
2461
  * The label of the tree item.
2167
2462
  */
@@ -2199,31 +2494,31 @@ type TreeProps = StylingOverrideProps & {
2199
2494
  /**
2200
2495
  * Handler that is called when a user performs an action on an item.
2201
2496
  */
2202
- onAction?: (key: Key) => void;
2497
+ onAction?: (key: Key$1) => void;
2203
2498
  /**
2204
2499
  * The initial expanded keys when in uncontrolled mode.
2205
2500
  */
2206
- defaultExpandedKeys?: Iterable<Key>;
2501
+ defaultExpandedKeys?: Iterable<Key$1>;
2207
2502
  /**
2208
2503
  * The initial selected keys when in uncontrolled mode.
2209
2504
  */
2210
- defaultSelectedKeys?: Iterable<Key>;
2505
+ defaultSelectedKeys?: Iterable<Key$1>;
2211
2506
  /**
2212
2507
  * The currently expanded keys when in controlled mode.
2213
2508
  */
2214
- expandedKeys?: Iterable<Key>;
2509
+ expandedKeys?: Iterable<Key$1>;
2215
2510
  /**
2216
2511
  * Handler that is called when the expanded keys change.
2217
2512
  */
2218
- onExpandedChange?: (keys: Set<Key>) => void;
2513
+ onExpandedChange?: (keys: Set<Key$1>) => void;
2219
2514
  /**
2220
2515
  * Callback that is fired when the selection changes.
2221
2516
  */
2222
- onSelectionChange?: (keys: Set<Key>) => void;
2517
+ onSelectionChange?: (keys: Set<Key$1>) => void;
2223
2518
  /**
2224
2519
  * The currently selected keys when in controlled mode.
2225
2520
  */
2226
- selectedKeys?: Iterable<Key>;
2521
+ selectedKeys?: Iterable<Key$1>;
2227
2522
  /**
2228
2523
  * The selection mode of the tree.
2229
2524
  * @default 'multiple'
@@ -2254,4 +2549,4 @@ declare const Label: React$2.ForwardRefExoticComponent<{
2254
2549
  trailingSlot?: React$2.ReactNode;
2255
2550
  } & StylingOverrideProps & Omit<Omit<React$2.DetailedHTMLProps<React$2.LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, "ref">, "className" | "style"> & React$2.RefAttributes<HTMLLabelElement>>;
2256
2551
  //#endregion
2257
- export { Alert, type AlertProps, Anchor, type AnchorProps, AutocompleteField, type AutocompleteFieldProps, Badge, BadgeLayout, type BadgeProps, Breadcrumb, type BreadcrumbProps, Breadcrumbs, type BreadcrumbsProps, Button, ButtonLink, type ButtonLinkProps, type ButtonProps, Card, Checkbox, type CheckboxProps, Collapse, type CollapseProps, CustomTooltipTrigger, type CustomTooltipTriggerProps, DatePickerField, type DatePickerFieldProps, DateRangePickerField, type DateRangePickerFieldPlaceholder, type DateRangePickerFieldProps, Divider, type DividerProps, type DividerType, Drawer, type DrawerPlacement, type DrawerProps, EmptyState, type EmptyStateProps, IconButton, type IconButtonProps, InputRow, type InputRowAddonProps, type InputRowProps, Label, type LabelProps, Link, type LinkProps, ListItem, type ListItemProps, Menu, type MenuDividerProps, type MenuHeaderProps, type MenuItemProps, type MenuListProps, type MenuPanelPadding, type MenuProps, type MenuSectionProps, type MenuSubmenuProps, Modal, type ModalProps, NumberField, type NumberFieldProps, Pagination, type PaginationProps, PasswordField, type PasswordFieldProps, Pill, type PillProps, Popover, type PopoverProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, RadioTile, type RadioTileProps, Ribbon, type RibbonProps, type RoutedLinkProps, RouterProvider, SKELETON_SIZE, SKELETON_SIZE_TOKENS, Skeleton, type SkeletonElementProps, SkeletonGroup, type SkeletonGroupButtonProps, type SkeletonGroupInputProps, type SkeletonGroupNodeProps, type SkeletonParagraphProps, type SkeletonProps, type SkeletonSize, type SkeletonTitleProps, Spinner, type SpinnerProps, type StylingOverrideProps, Switch, type SwitchProps, TabNav, type TabNavItemType, type TabNavItemVariant, type TabNavPlacement, type TabNavProps, type TabNavSubItemType, Tag, type TagColor, type TagProps, Text, TextArea, type TextAreaAutoSize, type TextAreaProps, TextField, type TextFieldProps, type TextProps, Toast, type ToastOptions, type ToastPosition, type ToastType, Tooltip, type TooltipProps, TopNav, type TopNavCenterProps, type TopNavEndProps, type TopNavProps, type TopNavStartProps, Tree, type TreeItemType, type TreeProps, VerticalNavigation, type VerticalNavigationCollapseProps, type VerticalNavigationFooterProps, type VerticalNavigationItemListProps, type VerticalNavigationItemProps, type VerticalNavigationProps, VisuallyHidden, type VisuallyHiddenProps, submenuPanelClassName, tagColors };
2552
+ export { Alert, type AlertProps, Anchor, type AnchorProps, AutocompleteField, type AutocompleteFieldProps, Badge, BadgeLayout, type BadgeProps, type BaseItemRecord, Breadcrumb, type BreadcrumbProps, Breadcrumbs, type BreadcrumbsProps, Button, ButtonLink, type ButtonLinkProps, type ButtonProps, Card, Checkbox, type CheckboxProps, Collapse, type CollapseProps, CustomTooltipTrigger, type CustomTooltipTriggerProps, DatePickerField, type DatePickerFieldProps, DateRangePickerField, type DateRangePickerFieldPlaceholder, type DateRangePickerFieldProps, Divider, type DividerProps, type DividerType, Drawer, type DrawerPlacement, type DrawerProps, EMPTY_CELL_PLACEHOLDER, EmptyState, type EmptyStateProps, FilterToolbar, type FilterToolbarProps, IconButton, type IconButtonProps, InputRow, type InputRowAddonProps, type InputRowProps, type Key, Label, type LabelProps, Link, type LinkProps, ListItem, type ListItemProps, Menu, type MenuDividerProps, type MenuHeaderProps, type MenuItemProps, type MenuListProps, type MenuPanelPadding, type MenuProps, type MenuSectionProps, type MenuSubmenuProps, Modal, type ModalProps, NumberField, type NumberFieldProps, Pagination, type PaginationProps, PasswordField, type PasswordFieldProps, Pill, type PillProps, Popover, type PopoverProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, RadioTile, type RadioTileProps, Ribbon, type RibbonProps, type RoutedLinkProps, RouterProvider, SKELETON_SIZE, SKELETON_SIZE_TOKENS, SelectField, type SelectFieldHeaderProps, type SelectFieldItemProps, type SelectFieldProps, type SelectFieldSectionProps, Skeleton, type SkeletonElementProps, SkeletonGroup, type SkeletonGroupButtonProps, type SkeletonGroupInputProps, type SkeletonGroupNodeProps, type SkeletonParagraphProps, type SkeletonProps, type SkeletonSize, type SkeletonTitleProps, Spinner, type SpinnerProps, type StylingOverrideProps, Switch, type SwitchProps, TabNav, type TabNavItemType, type TabNavItemVariant, type TabNavPlacement, type TabNavProps, type TabNavSubItemType, Table, type TableProps, Tag, type TagColor, type TagProps, Text, TextArea, type TextAreaAutoSize, type TextAreaProps, TextField, type TextFieldProps, type TextProps, Toast, type ToastOptions, type ToastPosition, type ToastType, ToggleButtonGroup, type ToggleButtonGroupIconItem, type ToggleButtonGroupItem, type ToggleButtonGroupProps, type ToggleButtonGroupTextItem, Tooltip, type TooltipProps, TopNav, type TopNavCenterProps, type TopNavEndProps, type TopNavProps, type TopNavStartProps, Tree, type TreeItemType, type TreeProps, VerticalNavigation, type VerticalNavigationCollapseProps, type VerticalNavigationFooterProps, type VerticalNavigationItemListProps, type VerticalNavigationItemProps, type VerticalNavigationProps, VisuallyHidden, type VisuallyHiddenProps, defineColumns, submenuPanelClassName, tagColors };