@baseline-ui/core 3.7.0 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/Accordion.mjs +1 -1
  2. package/dist/ActionGroup.mjs +1 -1
  3. package/dist/ActionIconButton.mjs +1 -1
  4. package/dist/AlertDialog.mjs +1 -1
  5. package/dist/AudioPlayer.mjs +1 -1
  6. package/dist/ButtonSelect.mjs +1 -1
  7. package/dist/Calendar.mjs +1 -1
  8. package/dist/ColorInput.mjs +1 -1
  9. package/dist/ColorSwatch.mjs +1 -1
  10. package/dist/ColorSwatchPicker.mjs +1 -1
  11. package/dist/ComboBox.mjs +1 -1
  12. package/dist/DateField.mjs +1 -1
  13. package/dist/Dialog.mjs +1 -1
  14. package/dist/Drawer.mjs +1 -1
  15. package/dist/Editor.mjs +1 -1
  16. package/dist/FileList.css +1 -1
  17. package/dist/FileList.mjs +1 -1
  18. package/dist/FileUploader.css +1 -1
  19. package/dist/FileUploader.mjs +1 -1
  20. package/dist/FreehandCanvas.mjs +1 -1
  21. package/dist/Image.css +10 -0
  22. package/dist/Image.mjs +1 -0
  23. package/dist/ImageGallery.mjs +1 -1
  24. package/dist/InlineAlert.mjs +1 -1
  25. package/dist/InlineToolbar.mjs +1 -1
  26. package/dist/Menu.mjs +1 -1
  27. package/dist/Modal.mjs +1 -1
  28. package/dist/NumberInput.mjs +1 -1
  29. package/dist/Pagination.mjs +1 -1
  30. package/dist/PointPicker.mjs +1 -1
  31. package/dist/Popover.mjs +1 -1
  32. package/dist/Portal.mjs +1 -1
  33. package/dist/Preview.mjs +1 -1
  34. package/dist/SearchInput.mjs +1 -1
  35. package/dist/Select.mjs +1 -1
  36. package/dist/Slider.mjs +1 -1
  37. package/dist/Stepper.mjs +1 -1
  38. package/dist/Tabs.mjs +1 -1
  39. package/dist/Tag.mjs +1 -1
  40. package/dist/TagGroup.mjs +1 -1
  41. package/dist/TaggedPagination.mjs +1 -1
  42. package/dist/TimeField.mjs +1 -1
  43. package/dist/Toast.mjs +1 -1
  44. package/dist/ToggleIconButton.mjs +1 -1
  45. package/dist/Toolbar.mjs +1 -1
  46. package/dist/Tooltip.mjs +1 -1
  47. package/dist/TreeView.css +1 -1
  48. package/dist/TreeView.mjs +1 -1
  49. package/dist/UNSAFE_ListBox.mjs +1 -1
  50. package/dist/{chunk-5W6G3ZUT.mjs → chunk-2BG2JLFC.mjs} +1 -1
  51. package/dist/{chunk-OPIPJTLG.mjs → chunk-2OXYNLVN.mjs} +1 -1
  52. package/dist/{chunk-TFBJ767L.mjs → chunk-2TXFCYPO.mjs} +1 -1
  53. package/dist/{chunk-LY2ZVEGJ.mjs → chunk-3TLWTZRL.mjs} +1 -1
  54. package/dist/chunk-3WX5PZ6X.mjs +10 -0
  55. package/dist/{chunk-MYT5CSGX.mjs → chunk-464QF4AV.mjs} +1 -1
  56. package/dist/{chunk-SSWWJZRE.mjs → chunk-46VEK5WC.mjs} +1 -1
  57. package/dist/chunk-54WJJ3EM.mjs +10 -0
  58. package/dist/chunk-57YWI7EG.mjs +10 -0
  59. package/dist/{chunk-CBV6KXGO.mjs → chunk-64IFEFOT.mjs} +1 -1
  60. package/dist/{chunk-B5VHU77N.mjs → chunk-655SS7D4.mjs} +1 -1
  61. package/dist/chunk-65PMDBYL.mjs +10 -0
  62. package/dist/chunk-6MUTSHZO.mjs +10 -0
  63. package/dist/chunk-7JE2SRIH.mjs +10 -0
  64. package/dist/chunk-AGERZJ3X.mjs +10 -0
  65. package/dist/{chunk-TLU2GNUT.mjs → chunk-CTTNZESA.mjs} +1 -1
  66. package/dist/{chunk-XVL2GXTB.mjs → chunk-EJYSTNXD.mjs} +1 -1
  67. package/dist/{chunk-JXCL5CUV.mjs → chunk-EXX7ZFGI.mjs} +1 -1
  68. package/dist/{chunk-L45T2KGW.mjs → chunk-FWPWBCOS.mjs} +1 -1
  69. package/dist/{chunk-7YCV7MPI.mjs → chunk-GIT77HDD.mjs} +2 -2
  70. package/dist/{chunk-EGYIHFEQ.mjs → chunk-GYIIVZDE.mjs} +1 -1
  71. package/dist/{chunk-FJO6KCT5.mjs → chunk-HKVAL4BB.mjs} +1 -1
  72. package/dist/{chunk-HTRO6BM5.mjs → chunk-HU75NQMI.mjs} +1 -1
  73. package/dist/chunk-HV7DKEN7.mjs +10 -0
  74. package/dist/chunk-KOPAIJJU.mjs +10 -0
  75. package/dist/{chunk-BULEKXBD.mjs → chunk-LLSXABBJ.mjs} +1 -1
  76. package/dist/{chunk-IMXJCV7G.mjs → chunk-MHO7BDER.mjs} +1 -1
  77. package/dist/{chunk-M3R4ZM34.mjs → chunk-MN7USKSC.mjs} +2 -2
  78. package/dist/{chunk-O6PPXOEX.mjs → chunk-N7MIERZH.mjs} +1 -1
  79. package/dist/{chunk-UPCEZ32D.mjs → chunk-OHTPDCQA.mjs} +1 -1
  80. package/dist/{chunk-SXZP556C.mjs → chunk-OTDBW5FO.mjs} +1 -1
  81. package/dist/chunk-PMMLDGSP.mjs +10 -0
  82. package/dist/{chunk-MURSKAKT.mjs → chunk-PSAOTHYG.mjs} +1 -1
  83. package/dist/chunk-PSUCNVCE.mjs +10 -0
  84. package/dist/{chunk-NT2MFIKD.mjs → chunk-RIVN2JT3.mjs} +1 -1
  85. package/dist/{chunk-NO3DNA2U.mjs → chunk-RRYP54UI.mjs} +1 -1
  86. package/dist/chunk-SCUNJNIO.mjs +0 -0
  87. package/dist/{chunk-F56P4EKI.mjs → chunk-SND4G3LM.mjs} +1 -1
  88. package/dist/{chunk-YAI33K42.mjs → chunk-SOWGXN5P.mjs} +1 -1
  89. package/dist/{chunk-QL7SC5BW.mjs → chunk-TCVES3WI.mjs} +1 -1
  90. package/dist/{chunk-P6V5EAYL.mjs → chunk-TU7JTGGE.mjs} +1 -1
  91. package/dist/{chunk-MKHLBKSN.mjs → chunk-UCIAWI4E.mjs} +1 -1
  92. package/dist/{chunk-MJPCLLDU.mjs → chunk-VQPEDDH6.mjs} +1 -1
  93. package/dist/{chunk-IN7BLI4M.mjs → chunk-WQBA2P6W.mjs} +1 -1
  94. package/dist/{chunk-EDMVODCD.mjs → chunk-XWKTG7NR.mjs} +1 -1
  95. package/dist/{chunk-IVDIKT6F.mjs → chunk-YLL2APKH.mjs} +1 -1
  96. package/dist/{chunk-4QGZDJW4.mjs → chunk-Z73YU5ZQ.mjs} +1 -1
  97. package/dist/{chunk-AQTRFPF2.mjs → chunk-ZE2B6BS7.mjs} +1 -1
  98. package/dist/{chunk-QIYZRQGP.mjs → chunk-ZLDFLERD.mjs} +1 -1
  99. package/dist/index.css +1 -1
  100. package/dist/index.d.ts +234 -28
  101. package/dist/index.js +22 -22
  102. package/dist/index.mjs +1 -1
  103. package/package.json +5 -5
  104. package/sbom.json +13 -13
  105. package/dist/chunk-5EI2562M.mjs +0 -10
  106. package/dist/chunk-5ILCVLWY.mjs +0 -10
  107. package/dist/chunk-CD5KKXIM.mjs +0 -10
  108. package/dist/chunk-DG5VNJOH.mjs +0 -10
  109. package/dist/chunk-VNWKXT3X.mjs +0 -10
  110. package/dist/chunk-YEIRJNEA.mjs +0 -10
  111. package/dist/chunk-YQKEP62C.mjs +0 -10
  112. package/dist/chunk-ZXN5VT4G.mjs +0 -10
package/dist/index.d.ts CHANGED
@@ -6945,6 +6945,20 @@ interface PopoverContentProps extends Omit<AriaPopoverProps, "popoverRef" | "tri
6945
6945
  * @default "shift"
6946
6946
  */
6947
6947
  horizontalBoundaryBehavior?: HorizontalBoundaryBehavior;
6948
+ /**
6949
+ * The distance in pixels between the popover and its trigger along the main
6950
+ * axis. When `includeArrow` is set, the arrow's 8px is added on top.
6951
+ *
6952
+ * @default 2
6953
+ */
6954
+ offset?: number;
6955
+ /**
6956
+ * The minimum distance in pixels kept between the popover and the edge of its
6957
+ * boundary.
6958
+ *
6959
+ * @default 0
6960
+ */
6961
+ containerPadding?: number;
6948
6962
  }
6949
6963
  interface PopoverTriggerProps {
6950
6964
  /** The contents of the popover trigger. */
@@ -7091,6 +7105,12 @@ type MenuItem = MenuOption | MenuSection;
7091
7105
  type MenuPopoverProps = Pick<PopoverContentProps, "isNonModal" | "placement" | "shouldUpdatePosition" | "shouldFlip" | "boundaryElement" | "boundaryAxis" | "horizontalBoundaryBehavior" | "crossOffset" | "offset" | "portalContainer">;
7092
7106
  type MenuSelectionKeys = "selectionMode" | "selectedKeys" | "defaultSelectedKeys" | "onSelectionChange";
7093
7107
  interface MenuPropsBase extends MenuPopoverProps, Omit<MenuTriggerProps, "trigger">, CollectionOptionRenderProps<MenuOption, MenuItemRenderProps>, Omit<AriaMenuProps<MenuItem>, "children" | MenuSelectionKeys>, Omit<AriaMenuTriggerProps, "type" | "trigger"> {
7108
+ /**
7109
+ * The placement of the menu relative to its trigger.
7110
+ *
7111
+ * @default "bottom start"
7112
+ */
7113
+ placement?: Placement;
7094
7114
  /**
7095
7115
  * How the menu is opened from its trigger. With `"longPress"`, a long press
7096
7116
  * or `Alt` + `ArrowDown` / `ArrowUp` / `Enter` / `Space` opens the menu.
@@ -7224,6 +7244,20 @@ interface TooltipProps extends StylingProps, TooltipTriggerProps, AriaTooltipPro
7224
7244
  * @default document.body
7225
7245
  */
7226
7246
  portalContainer?: HTMLElement;
7247
+ /**
7248
+ * The distance in pixels between the tooltip and its trigger along the main
7249
+ * axis. Defaults to 2 when `includeArrow` is false.
7250
+ *
7251
+ * @default 12
7252
+ */
7253
+ offset?: number;
7254
+ /**
7255
+ * The minimum distance in pixels of the arrow from the edge of the tooltip. It
7256
+ * defaults to 0 when `includeArrow` is false.
7257
+ *
7258
+ * @default 8
7259
+ */
7260
+ arrowBoundaryOffset?: number;
7227
7261
  }
7228
7262
  interface FocusableProps extends FocusableOptions, StylingProps {
7229
7263
  /** The content of the focusable element. */
@@ -7387,7 +7421,9 @@ interface ColorInputProps extends OverlayTriggerProps$1, StylingProps, Pick<Colo
7387
7421
  * that is currently selected. If boolean, the label will be shown only when
7388
7422
  * the color is not `null`. If a function, the function will be called with
7389
7423
  * the current color and should return a string. If `false`, the label will
7390
- * not be shown.
7424
+ * not be shown, but the default trigger's accessible name still includes the
7425
+ * color name. A custom `renderTriggerButton` receives `colorName: false` and
7426
+ * is responsible for naming its trigger.
7391
7427
  *
7392
7428
  * @default true
7393
7429
  */
@@ -8273,6 +8309,14 @@ interface TagProps extends StylingProps {
8273
8309
  * @default "md"
8274
8310
  */
8275
8311
  size?: "sm" | "md";
8312
+ /**
8313
+ * The element the tag renders as. Use `span` to place a tag without
8314
+ * `onRemove` inside a button or other inline content, where a `div` is not
8315
+ * valid HTML. Has no effect inside a `TagGroup`.
8316
+ *
8317
+ * @default "div"
8318
+ */
8319
+ elementType?: "div" | "span";
8276
8320
  /**
8277
8321
  * An optional icon to display before the tag content.
8278
8322
  */
@@ -8427,6 +8471,12 @@ declare const AccordionItem: React__default.ForwardRefExoticComponent<AccordionI
8427
8471
 
8428
8472
  type SelectionMode = "single" | "multiple";
8429
8473
  interface SelectProps<M extends SelectionMode = SelectionMode> extends Omit<AriaSelectOptions<ListItem, M> & SelectStateOptions<ListItem, M> & PopoverContentProps, "validationState" | "items" | "children" | "isRequired" | "className" | "style" | "triggerRef" | "validate" | "validationBehavior" | "keyboardDelegate" | "state" | "overlayProps">, Pick<UNSAFE_ListBoxProps, "items" | "optionStyle" | "optionClassName" | "showSectionHeader">, Pick<ColorInputProps, "onTriggerPress">, StylingProps {
8474
+ /**
8475
+ * The placement of the popover relative to the trigger.
8476
+ *
8477
+ * @default "bottom start"
8478
+ */
8479
+ placement?: Placement;
8430
8480
  /**
8431
8481
  * The position of the label.
8432
8482
  *
@@ -8558,6 +8608,40 @@ interface AvatarProps extends StylingProps {
8558
8608
 
8559
8609
  declare const Avatar: React__default.ForwardRefExoticComponent<AvatarProps & React__default.RefAttributes<HTMLSpanElement>>;
8560
8610
 
8611
+ interface ImageProps extends Omit<React__default.ImgHTMLAttributes<HTMLImageElement>, "children" | "dangerouslySetInnerHTML"> {
8612
+ /** The URL of the image to display. */
8613
+ src: string;
8614
+ /**
8615
+ * The text alternative of the image. Pass an empty string when the image is
8616
+ * purely decorative.
8617
+ */
8618
+ alt: string;
8619
+ /**
8620
+ * How the image fills its container. `cover` crops the image to fill the
8621
+ * container; `contain` shows the whole image inside it.
8622
+ *
8623
+ * @default "cover"
8624
+ */
8625
+ fit?: "cover" | "contain";
8626
+ /**
8627
+ * When the browser loads the image. `lazy` defers it until the image is near
8628
+ * the viewport, which suits thumbnails in long lists; `eager` loads it right
8629
+ * away.
8630
+ *
8631
+ * @default "eager"
8632
+ */
8633
+ loading?: "lazy" | "eager";
8634
+ /**
8635
+ * Content rendered in place of the image when it fails to load or `src` is
8636
+ * empty. Without it, the browser's broken-image rendering stays. The
8637
+ * fallback replaces the `<img>`, so `alt`, `className`, `style` and the ref
8638
+ * do not apply to it; give a meaningful fallback its own accessible name.
8639
+ */
8640
+ fallback?: React__default.ReactNode;
8641
+ }
8642
+
8643
+ declare const Image: React__default.ForwardRefExoticComponent<ImageProps & React__default.RefAttributes<HTMLImageElement>>;
8644
+
8561
8645
  type ItemProps = React__default.ComponentProps<typeof _Item> & StylingProps & {
8562
8646
  key?: Key;
8563
8647
  icon?: React__default.FC<IconProps>;
@@ -8819,6 +8903,11 @@ interface FreehandCanvasProps extends StylingProps, AriaLabelingProps {
8819
8903
  value?: FreehandCanvasLine[];
8820
8904
  /** The label for the canvas. */
8821
8905
  label?: string;
8906
+ /**
8907
+ * The accessible name of the canvas. Without it, the canvas is named by
8908
+ * `label` or `aria-labelledby`, and by "Drawing canvas" when neither is set.
8909
+ */
8910
+ "aria-label"?: string;
8822
8911
  /**
8823
8912
  * Whether to enable history for undo/redo.
8824
8913
  *
@@ -9018,7 +9107,7 @@ interface PreviewProps extends StylingProps, AriaLabelingProps {
9018
9107
  * - "positive": Represents a positive accent color that doesn't change with
9019
9108
  * theme.
9020
9109
  *
9021
- * @default "theme"
9110
+ * @default "positive"
9022
9111
  */
9023
9112
  accent?: "theme" | "positive";
9024
9113
  }
@@ -10928,7 +11017,7 @@ interface ColorSwatchPickerProps extends StylingProps, Pick<RadioGroupProps, "op
10928
11017
 
10929
11018
  declare const ColorSwatchPicker: React__default.ForwardRefExoticComponent<ColorSwatchPickerProps & React__default.RefAttributes<HTMLDivElement>>;
10930
11019
 
10931
- declare const TimeField: React__default.ForwardRefExoticComponent<StylingProps & Omit<Omit<TimeFieldStateOptions<TimeValue>, "locale"> & AriaTimeFieldProps<TimeValue>, "validationState" | "isRequired" | "validate" | "isInvalid"> & Pick<SharedInputProps, "label" | "variant" | "validationState" | "labelPosition"> & InputMessage & React__default.RefAttributes<HTMLDivElement>>;
11020
+ declare const TimeField: React__default.ForwardRefExoticComponent<StylingProps & Omit<Omit<TimeFieldStateOptions<TimeValue>, "locale"> & AriaTimeFieldProps<TimeValue>, "isRequired" | "validate" | "validationState" | "isInvalid"> & Pick<SharedInputProps, "label" | "variant" | "validationState" | "labelPosition"> & InputMessage & React__default.RefAttributes<HTMLDivElement>>;
10932
11021
 
10933
11022
  type TimeFieldProps = StylingProps & Omit<Omit<TimeFieldStateOptions, "locale"> & AriaTimeFieldProps<TimeValue>, "validationState" | "isInvalid" | "isRequired" | "validate"> & Pick<SharedInputProps, "variant" | "labelPosition" | "validationState" | "label"> & InputMessage;
10934
11023
 
@@ -11019,9 +11108,15 @@ interface TreeViewProps extends StylingProps, Omit<AriaLabelingProps, "aria-desc
11019
11108
  * triggered. If not provided, the secondary action will not be shown.
11020
11109
  */
11021
11110
  onSecondaryAction?: (key: Key$1) => void;
11022
- /** The icon to use for the primary action. */
11111
+ /**
11112
+ * The icon to use for the primary action. The action is a plain button, so
11113
+ * a `{ selected, unselected }` pair renders `unselected`.
11114
+ */
11023
11115
  primaryActionIcon?: ToggleIconButtonProps["icon"] | ((key: Key$1) => ToggleIconButtonProps["icon"]);
11024
- /** The icon to use for the secondary action. */
11116
+ /**
11117
+ * The icon to use for the secondary action. The action is a plain button,
11118
+ * so a `{ selected, unselected }` pair renders `unselected`.
11119
+ */
11025
11120
  secondaryActionIcon?: ToggleIconButtonProps["icon"] | ((key: Key$1) => ToggleIconButtonProps["icon"]);
11026
11121
  /** The aria label for the primary action. */
11027
11122
  primaryActionAriaLabel?: string | ((key: Key$1) => string);
@@ -11273,7 +11368,7 @@ type DateFieldProps = StylingProps & Omit<Omit<DateFieldStateOptions, "locale">
11273
11368
  openCalendarLabel?: string;
11274
11369
  };
11275
11370
 
11276
- declare const DateField: React__default.ForwardRefExoticComponent<StylingProps & Omit<Omit<DateFieldStateOptions<DateValue>, "locale"> & AriaDateFieldProps<DateValue>, "validationState" | "isRequired" | "validate" | "isInvalid" | "createCalendar"> & Pick<SharedInputProps, "label" | "variant" | "validationState" | "labelPosition"> & InputMessage & {
11371
+ declare const DateField: React__default.ForwardRefExoticComponent<StylingProps & Omit<Omit<DateFieldStateOptions<DateValue>, "locale"> & AriaDateFieldProps<DateValue>, "isRequired" | "validate" | "validationState" | "isInvalid" | "createCalendar"> & Pick<SharedInputProps, "label" | "variant" | "validationState" | "labelPosition"> & InputMessage & {
11277
11372
  pickerType?: DateFieldPickerType;
11278
11373
  openCalendarLabel?: string;
11279
11374
  } & React__default.RefAttributes<HTMLDivElement>>;
@@ -11429,7 +11524,32 @@ interface Description {
11429
11524
  label: string;
11430
11525
  icon: React__default.FC<IconProps>;
11431
11526
  }
11432
- type FloatingOptions = Pick<PopoverContentProps, "crossOffset" | "offset" | "placement"> & {
11527
+ type FloatingOptions = {
11528
+ /**
11529
+ * The placement of the display relative to the anchor.
11530
+ *
11531
+ * @default "bottom start"
11532
+ */
11533
+ placement?: Placement;
11534
+ /**
11535
+ * The distance in pixels between the display and the anchor along the main
11536
+ * axis.
11537
+ *
11538
+ * @default 0
11539
+ */
11540
+ offset?: number;
11541
+ /**
11542
+ * The distance in pixels between the display and the anchor along the cross
11543
+ * axis. With `anchorElement: "trailing"` it is 0.
11544
+ *
11545
+ * @default indicator width
11546
+ */
11547
+ crossOffset?: number;
11548
+ /**
11549
+ * The element the display is anchored to.
11550
+ *
11551
+ * @default "indicator"
11552
+ */
11433
11553
  anchorElement?: "indicator" | "trailing";
11434
11554
  };
11435
11555
  interface PointPickerDisplayProps extends StylingProps {
@@ -11785,6 +11905,16 @@ interface StepperProps extends StylingProps {
11785
11905
 
11786
11906
  declare const Stepper: React__default.ForwardRefExoticComponent<StepperProps & React__default.RefAttributes<HTMLOListElement>>;
11787
11907
 
11908
+ interface FileListItemTag {
11909
+ /** The tag text. */
11910
+ label: string;
11911
+ /**
11912
+ * The colour of the tag.
11913
+ *
11914
+ * @default "neutral"
11915
+ */
11916
+ variant?: TagVariant;
11917
+ }
11788
11918
  interface FileListItem {
11789
11919
  /** Stable identifier used to remove the item and as the listbox key. */
11790
11920
  id: string;
@@ -11792,42 +11922,88 @@ interface FileListItem {
11792
11922
  name: string;
11793
11923
  /**
11794
11924
  * Whether the item is currently uploading. When `true`, a spinner is
11795
- * rendered in place of the remove button.
11925
+ * rendered in place of the remove button. Shown in the `compact` variant
11926
+ * only.
11796
11927
  */
11797
11928
  isLoading?: boolean;
11798
11929
  /**
11799
11930
  * Primary error message. When set, the row is rendered in the error
11800
- * state with a red border and the message below the file name.
11931
+ * state with a red border and the message below the file name. Shown in
11932
+ * the `compact` variant only.
11801
11933
  */
11802
11934
  errorMessage?: React__default.ReactNode;
11803
11935
  /**
11804
11936
  * Optional secondary explanation rendered below `errorMessage` in the
11805
- * helper color.
11937
+ * helper color. Shown in the `compact` variant only.
11806
11938
  */
11807
11939
  errorExplanation?: React__default.ReactNode;
11940
+ /**
11941
+ * Secondary text rendered under the name and read as the item's accessible
11942
+ * description. Shown in the `expanded` and `grid` variants.
11943
+ */
11944
+ description?: string;
11945
+ /**
11946
+ * A status tag rendered at the end of the row and read as part of the
11947
+ * item's accessible description. Shown in the `expanded` variant, and
11948
+ * disabled with the item.
11949
+ */
11950
+ tag?: FileListItemTag;
11951
+ /**
11952
+ * A preview of the file, such as an `Image`, shown in place of the file
11953
+ * icon in the `grid` variant. An `Image` without a `fallback` shows the file
11954
+ * icon when it fails to load.
11955
+ */
11956
+ preview?: React__default.ReactNode;
11808
11957
  }
11809
11958
  interface FileListProps extends AriaLabelingProps {
11810
11959
  /** The className applied to the root element. */
11811
11960
  className?: string;
11812
11961
  /** The style applied to the root element. */
11813
11962
  style?: React__default.CSSProperties;
11963
+ /**
11964
+ * How the items are rendered.
11965
+ *
11966
+ * - `compact` (default): divided rows with a file icon and name, for files
11967
+ * the user has added. The only variant that renders the remove button,
11968
+ * the loading spinner and error messages.
11969
+ * - `expanded`: bordered cards with the name, `description` and `tag`.
11970
+ * Past about five rows the list scrolls.
11971
+ * - `grid`: preview tiles with the `preview`, name and `description`, up to
11972
+ * six per row. Past about two rows the grid scrolls.
11973
+ *
11974
+ * @default "compact"
11975
+ */
11976
+ variant?: "compact" | "expanded" | "grid";
11977
+ /**
11978
+ * A title rendered above the list that also labels it for assistive
11979
+ * technology.
11980
+ */
11981
+ label?: React__default.ReactNode;
11982
+ /**
11983
+ * Called with the `id` of the item the user picks by clicking it or
11984
+ * pressing Enter.
11985
+ */
11986
+ onAction?: (id: string) => void;
11814
11987
  /**
11815
11988
  * The items rendered in the list. Pass a stable reference (e.g. memoize
11816
11989
  * or hoist) when possible — every new array identity rebuilds the
11817
11990
  * underlying listbox collection.
11818
11991
  */
11819
11992
  items: FileListItem[];
11820
- /** Called when the user removes an item via the row button or Delete. */
11993
+ /**
11994
+ * Called when the user removes an item via the row button, Delete or
11995
+ * Backspace. Only the `compact` variant supports removal.
11996
+ */
11821
11997
  onRemove?: (id: string) => void;
11822
11998
  /**
11823
11999
  * Keys of items that should be disabled individually, or `"all"` to
11824
12000
  * disable every item. Disabled items cannot be removed via the row
11825
- * button or keyboard.
12001
+ * button or keyboard, or picked with `onAction`.
11826
12002
  */
11827
12003
  disabledKeys?: Iterable<string> | "all";
11828
12004
  /**
11829
12005
  * Overrides the accessible name of a file row while it is loading, and of
11830
- * its spinner.
12006
+ * its spinner. Used in the `compact` variant only.
11831
12007
  *
11832
12008
  * Message id: `bui.fileList.loading`. Defaults to `"Loading {fileName}"`.
11833
12009
  * A string is used as-is, with no placeholder substitution. To include
@@ -11839,7 +12015,7 @@ interface FileListProps extends AriaLabelingProps {
11839
12015
  }) => string);
11840
12016
  /**
11841
12017
  * Overrides the accessible name of a removable file row, telling keyboard
11842
- * users how to delete it.
12018
+ * users how to delete it. Used in the `compact` variant only.
11843
12019
  *
11844
12020
  * Message id: `bui.fileList.removeHint`. Defaults to
11845
12021
  * `"{fileName}, press Delete or Backspace to remove"`. A string is used
@@ -11858,25 +12034,41 @@ interface FileUploaderProps extends Omit<StylingProps, keyof BlockProps> {
11858
12034
  /**
11859
12035
  * The visual variant.
11860
12036
  *
11861
- * - `dropzone` (default): renders a drop area that accepts dragged and
11862
- * pasted files. Clicking anywhere in the area opens the file picker.
11863
- * - `button`: renders an `ActionButton` that opens the file picker. No
11864
- * drop target is rendered.
12037
+ * - `dropzone-box` (default): a filled drop area that accepts dragged and
12038
+ * pasted files. Clicking blank space in the area opens the file picker.
12039
+ * - `dropzone-inline`: the same drop area outlined with a dashed border and
12040
+ * rounded corners instead of a filled box.
12041
+ * - `dropzone-compact`: a one-line dashed bar with the upload icon, the
12042
+ * action text and the `description` side by side. The action text and the
12043
+ * description truncate with an ellipsis rather than wrap. The `children`
12044
+ * render below the bar, outside the drop area.
12045
+ * - `button`: an `ActionButton` that opens the file picker. No drop target
12046
+ * is rendered.
12047
+ * - `dropzone` (deprecated): an alias for `dropzone-box`, or for
12048
+ * `dropzone-inline` when `isInline` is set. Use one of the values above.
11865
12049
  *
11866
- * @default "dropzone"
12050
+ * @default "dropzone-box"
11867
12051
  */
11868
- variant?: "dropzone" | "button";
12052
+ variant?: "dropzone-box" | "dropzone-inline" | "dropzone-compact" | "button" | "dropzone";
11869
12053
  /**
11870
- * Whether the `dropzone` drop area is rendered inline — outlined with a
11871
- * dashed border and rounded corners — instead of as a plain filled box.
11872
- * Has no effect on the `button` variant.
12054
+ * Whether the drop area is rendered inline. Only honoured when `variant` is
12055
+ * omitted or the deprecated `"dropzone"`; any other `variant` ignores it.
11873
12056
  *
12057
+ * @deprecated Use `variant="dropzone-inline"`.
11874
12058
  * @default false
11875
12059
  */
11876
12060
  isInline?: boolean;
11877
12061
  /** Optional label rendered above the trigger. */
11878
12062
  label?: React__default.ReactNode;
11879
- /** Optional description rendered below the label. */
12063
+ /**
12064
+ * Optional description. The dropzone variants render it inside the drop
12065
+ * area, under the action text (beside it in `dropzone-compact`), where
12066
+ * clicking it opens the file picker; a link in it should be a Baseline
12067
+ * `Link`, since a native `<a>` also opens the picker. Keep it plain text in
12068
+ * `dropzone-compact`: it truncates there, so a link can be cut off while
12069
+ * still taking keyboard focus. The `button` variant renders it below the
12070
+ * label.
12071
+ */
11880
12072
  description?: React__default.ReactNode;
11881
12073
  /** Called when the user selects or drops new files. */
11882
12074
  onAdd?: (files: File[]) => void;
@@ -11909,12 +12101,26 @@ interface FileUploaderProps extends Omit<StylingProps, keyof BlockProps> {
11909
12101
  */
11910
12102
  buttonLabel?: string;
11911
12103
  /**
11912
- * The text rendered inside the clickable drop area in the `dropzone`
11913
- * variant.
12104
+ * The text rendered inside the clickable drop area in the dropzone
12105
+ * variants.
11914
12106
  *
11915
12107
  * @default "Drop files here or click to upload"
11916
12108
  */
11917
12109
  dropzoneLabel?: string;
12110
+ /**
12111
+ * Content offered alongside the drop area, typically a `FileList` of sample
12112
+ * files the user can pick instead of uploading one. In the `dropzone-box`
12113
+ * and `dropzone-inline` variants it renders inside the drop area, centered,
12114
+ * so a file dropped on it is still added; clicking blank space in the drop
12115
+ * area opens the file picker, and clicking an item, button or link does not.
12116
+ * Use Baseline components for anything clickable here: a native `<button>`,
12117
+ * `<a>` or `<input>` also opens the picker. Use the `grid` `FileList`
12118
+ * variant here; an `expanded` list shrinks to its widest card. The `button`
12119
+ * and `dropzone-compact` variants render it below the control. Disabling the
12120
+ * uploader disables a `FileList` passed here. To show samples outside the
12121
+ * drop area, render the `FileList` next to the uploader instead.
12122
+ */
12123
+ children?: React__default.ReactNode;
11918
12124
  }
11919
12125
 
11920
12126
  declare const FileUploader: React__default.ForwardRefExoticComponent<FileUploaderProps & React__default.RefAttributes<HTMLDivElement>>;
@@ -12595,5 +12801,5 @@ declare namespace reactStately {
12595
12801
  export type { reactStately_Color as Color, reactStately_ListData as ListData, reactStately_TreeData as TreeData };
12596
12802
  }
12597
12803
 
12598
- export { Accordion, AccordionItem, ActionButton, ActionGroup, ActionGroupItem, ActionIconButton, Actionable, AlertDialog, AudioPlayer, Autocomplete, Avatar, Box, Breadcrumb, Breadcrumbs, ButtonSelect, Calendar, Cell, Checkbox, Code, ColorInput, ColorSwatch, ColorSwatchPicker, Column, ComboBox, DateField, DateFormat, DefaultListOption, DeviceProvider, DeviceProviderContext, Dialog, DialogTitle, Disclosure, DomNodeRenderer, Drawer, EMPTY_SELECTION_STATE, Editor, EditorCore, EditorProvider, FileInput, FileList$1 as FileList, FileUploader, FocusScope, Focusable, FrameProvider, FreehandCanvas, GlobalToastRegion, GridLayout, GridList, Group, I18nProvider, Icon, IconColorInput, IconColorInputButton, IconSelect, IconSlider, ImageDropZone, ImageGallery, InlineAlert, Kbd, Link, ListBox, ListLayout, LocaleAwareGridLayout, Markdown, Menu, MessageFormat, Modal, ModalClose, ModalContent, ModalTrigger, NumberFormat, NumberInput, Pagination, Panel, PanelGroup, PanelResizeHandle, PointPicker, PointPickerContent, PointPickerDisplay, Popover, PopoverContent, PopoverTrigger, Portal, PortalContainerProvider, Pressable, Preview, ProgressBar, ProgressSpinner, REACT_ARIA_INCOMPATIBLE_KEYS, RadioGroup, RangeCalendar, Reaction, Row, ScrollControlButton, SearchInput, Select, Separator, Size, Skeleton, Slider, StatusCard, Stepper, Switch, TabItem, Table, TableBody, TableHeader, TableLayout, Tabs, Tag, TagGroup, TaggedPagination, Text, TextInput, ThemeProvider, TimeField, ToastQueue, ToggleButton, ToggleIconButton, Toolbar, Tooltip, TreeView, UNSAFE_ListBox, reactAria as UNSAFE_aria, reactStately as UNSAFE_stately, VIRTUALIZER_LAYOUT_DEFAULT_OPTIONS, Virtualizer, VisuallyHidden, WaterfallLayout, announce, areColorsEqual, booleanOrObjectToConfig, calculateFontSizeToFitWidth, capitalize, clamp, classNames, cleanKeyFromGlobImport, clearAnnouncer, comparePoints, createMessageFormatter, defineMessages, destroyAnnouncer, devWarnOnce, directionVar, disableAnimations, docEnd, docStart, enableAnimations, filterDOMProps, filterTruthyValues, findFocusableElements, getAbsoluteBounds, getAbsolutePosition, getActiveElement, getPlainText as getDocPlainText, getHTMLElement, getOsSpecificKeyboardShortcutLabel, getOwnerDocument, getPlainText$1 as getPlainText, getSvgPathFromStroke, getTextDimensions, handleEditorShortcut, iconMap, invariant, isFocusableElement, isInIframe, isInShadowDOM, isInputThatOpensKeyboard, isInsideOverlayContent, isRect, isUrl, legacyMessageIdMap, lightenColor, mergeProps, mergeRefs, messageIds, onDropOrPaste, parseColor, safeSpreadProps, useCollator, useDateFormatter, useDevice, useDragAndDrop, useEditable, useEditor, useEditorContext, useFilter, useFocusRing, useFocusVisible, useFrameDimensions, useI18n, useId, useImage, useInteractionModality, useIntersectionObserver, useIsFirstRender, useKeyboard, useListData, useLiveInteractionModality, useLocalStorage, useLocale, useMutationObserver, useNumberFormatter, useObjectRef, usePointProximity, usePortalContainer, usePreventFocus, useResizeObserver, useTableDragAndDrop, useTextSelection, useUndoRedo, useUserPreferences };
12599
- export type { AccordionItemProps, AccordionProps, ActionButtonProps, ActionGroupProps, ActionIconButtonProps, ActionableProps, ActiveMarks, AlertDialogProps, AudioPlayerProps, AutocompleteProps, AvatarProps, BlockProps, BoundaryAxis, BoxProps, BreadcrumbProps, BreadcrumbsProps, ButtonSelectProps, CalendarHeaderVariant, CalendarProps, CalendarSize, CellProps, CheckboxProps, CodeProps, ColorInputProps, ColorPreset, ColorSwatchPickerProps, ColorSwatchProps, ColumnProps, ComboBoxProps, CommandArgs, CommandName, CreateMessageFormatterOptions, DateFieldPickerType, DateFieldProps, DateFormatProps, Device, DeviceProviderProps, DialogProps, DialogTitleProps, DisclosureProps, DomNodeRendererProps, DrawerProps, EditableProps, EditorCoreOptions, EditorHandle, EditorProps, EditorProviderProps, EditorState, EditorStyle, FileInputProps, FileListItem, FileListProps, FileUploaderProps, FocusableProps, FrameProviderProps, FreehandCanvasProps, GridListProps, GroupProps, HorizontalBoundaryBehavior, I18nProviderProps, I18nResult, IconColorInputProps, IconComponentProps$1 as IconComponentProps, IconProps, IconSelectProps, IconSliderProps, ImageDropZoneProps, ImageGalleryProps, ImperativePanelGroupHandle, ImperativePanelHandle, InlineAlertProps, IntersectionObserverOptions, KbdProps, Key, LinkProps, ListBoxProps, ListHandle$1 as ListHandle, ListOption, MarkName, MarkdownProps, MenuItem, MenuProps, MessageDescriptor, MessageFormatProps, MessageFormatter, MessageId, MessageIssue, MessageIssueCode, ModalContentProps, ModalProps, ModelPoint, ModelRange, NumberFormatProps, NumberInputProps, PaginationProps, PanelGroupProps, PanelProps, PanelResizeHandleProps, PointPickerContentProps, PointPickerDisplayProps, PointPickerProps, PopoverContentHandle, PopoverContentProps, PopoverProps, PopoverTriggerProps, PortalProps, PressEvent, PreviewProps, ProgressBarProps, ProgressSpinnerProps, RadioGroupProps, RangeCalendarProps, ReactAriaIncompatibleKey, ReactionProps, Rect, ResizeObserverOptions, RichTextEditorDoc, RichTextEditorInline, RichTextEditorLink, RichTextEditorMention, RichTextEditorMentionInput, RichTextEditorParagraph, RichTextEditorText, RowProps, SVGRProps, SafeDOMAttributes, ScrollControlButtonProps, SearchInputProps, SelectOptions, SelectProps, SelectionState, SeparatorProps, SetValue, SkeletonProps, SliderProps, StatusCardProps, StepperItem, StepperProps, StylingProps, SwitchProps, TabItemProps, TableBodyProps, TableHeaderProps, TableProps, TabsProps, TagGroupProps, TagProps, TagVariant, TaggedPaginationProps, TextInputProps, TextProps, TextSelectionProps, ThemeProviderProps, TimeFieldProps, ToastProps, ToggleButtonProps, ToggleIconButtonProps, ToolbarProps, TooltipProps, TreeItemRenderState, TreeListItem, TreeViewProps, UNSAFE_ListBoxProps, UseEditableOptions, UseEditorOptions, UseTableDragAndDropOptions, ValueMarkKey, VirtualizerProps };
12804
+ export { Accordion, AccordionItem, ActionButton, ActionGroup, ActionGroupItem, ActionIconButton, Actionable, AlertDialog, AudioPlayer, Autocomplete, Avatar, Box, Breadcrumb, Breadcrumbs, ButtonSelect, Calendar, Cell, Checkbox, Code, ColorInput, ColorSwatch, ColorSwatchPicker, Column, ComboBox, DateField, DateFormat, DefaultListOption, DeviceProvider, DeviceProviderContext, Dialog, DialogTitle, Disclosure, DomNodeRenderer, Drawer, EMPTY_SELECTION_STATE, Editor, EditorCore, EditorProvider, FileInput, FileList$1 as FileList, FileUploader, FocusScope, Focusable, FrameProvider, FreehandCanvas, GlobalToastRegion, GridLayout, GridList, Group, I18nProvider, Icon, IconColorInput, IconColorInputButton, IconSelect, IconSlider, Image, ImageDropZone, ImageGallery, InlineAlert, Kbd, Link, ListBox, ListLayout, LocaleAwareGridLayout, Markdown, Menu, MessageFormat, Modal, ModalClose, ModalContent, ModalTrigger, NumberFormat, NumberInput, Pagination, Panel, PanelGroup, PanelResizeHandle, PointPicker, PointPickerContent, PointPickerDisplay, Popover, PopoverContent, PopoverTrigger, Portal, PortalContainerProvider, Pressable, Preview, ProgressBar, ProgressSpinner, REACT_ARIA_INCOMPATIBLE_KEYS, RadioGroup, RangeCalendar, Reaction, Row, ScrollControlButton, SearchInput, Select, Separator, Size, Skeleton, Slider, StatusCard, Stepper, Switch, TabItem, Table, TableBody, TableHeader, TableLayout, Tabs, Tag, TagGroup, TaggedPagination, Text, TextInput, ThemeProvider, TimeField, ToastQueue, ToggleButton, ToggleIconButton, Toolbar, Tooltip, TreeView, UNSAFE_ListBox, reactAria as UNSAFE_aria, reactStately as UNSAFE_stately, VIRTUALIZER_LAYOUT_DEFAULT_OPTIONS, Virtualizer, VisuallyHidden, WaterfallLayout, announce, areColorsEqual, booleanOrObjectToConfig, calculateFontSizeToFitWidth, capitalize, clamp, classNames, cleanKeyFromGlobImport, clearAnnouncer, comparePoints, createMessageFormatter, defineMessages, destroyAnnouncer, devWarnOnce, directionVar, disableAnimations, docEnd, docStart, enableAnimations, filterDOMProps, filterTruthyValues, findFocusableElements, getAbsoluteBounds, getAbsolutePosition, getActiveElement, getPlainText as getDocPlainText, getHTMLElement, getOsSpecificKeyboardShortcutLabel, getOwnerDocument, getPlainText$1 as getPlainText, getSvgPathFromStroke, getTextDimensions, handleEditorShortcut, iconMap, invariant, isFocusableElement, isInIframe, isInShadowDOM, isInputThatOpensKeyboard, isInsideOverlayContent, isRect, isUrl, legacyMessageIdMap, lightenColor, mergeProps, mergeRefs, messageIds, onDropOrPaste, parseColor, safeSpreadProps, useCollator, useDateFormatter, useDevice, useDragAndDrop, useEditable, useEditor, useEditorContext, useFilter, useFocusRing, useFocusVisible, useFrameDimensions, useI18n, useId, useImage, useInteractionModality, useIntersectionObserver, useIsFirstRender, useKeyboard, useListData, useLiveInteractionModality, useLocalStorage, useLocale, useMutationObserver, useNumberFormatter, useObjectRef, usePointProximity, usePortalContainer, usePreventFocus, useResizeObserver, useTableDragAndDrop, useTextSelection, useUndoRedo, useUserPreferences };
12805
+ export type { AccordionItemProps, AccordionProps, ActionButtonProps, ActionGroupProps, ActionIconButtonProps, ActionableProps, ActiveMarks, AlertDialogProps, AudioPlayerProps, AutocompleteProps, AvatarProps, BlockProps, BoundaryAxis, BoxProps, BreadcrumbProps, BreadcrumbsProps, ButtonSelectProps, CalendarHeaderVariant, CalendarProps, CalendarSize, CellProps, CheckboxProps, CodeProps, ColorInputProps, ColorPreset, ColorSwatchPickerProps, ColorSwatchProps, ColumnProps, ComboBoxProps, CommandArgs, CommandName, CreateMessageFormatterOptions, DateFieldPickerType, DateFieldProps, DateFormatProps, Device, DeviceProviderProps, DialogProps, DialogTitleProps, DisclosureProps, DomNodeRendererProps, DrawerProps, EditableProps, EditorCoreOptions, EditorHandle, EditorProps, EditorProviderProps, EditorState, EditorStyle, FileInputProps, FileListItem, FileListItemTag, FileListProps, FileUploaderProps, FocusableProps, FrameProviderProps, FreehandCanvasProps, GridListProps, GroupProps, HorizontalBoundaryBehavior, I18nProviderProps, I18nResult, IconColorInputProps, IconComponentProps$1 as IconComponentProps, IconProps, IconSelectProps, IconSliderProps, ImageDropZoneProps, ImageGalleryProps, ImageProps, ImperativePanelGroupHandle, ImperativePanelHandle, InlineAlertProps, IntersectionObserverOptions, KbdProps, Key, LinkProps, ListBoxProps, ListHandle$1 as ListHandle, ListOption, MarkName, MarkdownProps, MenuItem, MenuProps, MessageDescriptor, MessageFormatProps, MessageFormatter, MessageId, MessageIssue, MessageIssueCode, ModalContentProps, ModalProps, ModelPoint, ModelRange, NumberFormatProps, NumberInputProps, PaginationProps, PanelGroupProps, PanelProps, PanelResizeHandleProps, PointPickerContentProps, PointPickerDisplayProps, PointPickerProps, PopoverContentHandle, PopoverContentProps, PopoverProps, PopoverTriggerProps, PortalProps, PressEvent, PreviewProps, ProgressBarProps, ProgressSpinnerProps, RadioGroupProps, RangeCalendarProps, ReactAriaIncompatibleKey, ReactionProps, Rect, ResizeObserverOptions, RichTextEditorDoc, RichTextEditorInline, RichTextEditorLink, RichTextEditorMention, RichTextEditorMentionInput, RichTextEditorParagraph, RichTextEditorText, RowProps, SVGRProps, SafeDOMAttributes, ScrollControlButtonProps, SearchInputProps, SelectOptions, SelectProps, SelectionState, SeparatorProps, SetValue, SkeletonProps, SliderProps, StatusCardProps, StepperItem, StepperProps, StylingProps, SwitchProps, TabItemProps, TableBodyProps, TableHeaderProps, TableProps, TabsProps, TagGroupProps, TagProps, TagVariant, TaggedPaginationProps, TextInputProps, TextProps, TextSelectionProps, ThemeProviderProps, TimeFieldProps, ToastProps, ToggleButtonProps, ToggleIconButtonProps, ToolbarProps, TooltipProps, TreeItemRenderState, TreeListItem, TreeViewProps, UNSAFE_ListBoxProps, UseEditableOptions, UseEditorOptions, UseTableDragAndDropOptions, ValueMarkKey, VirtualizerProps };