@baseline-ui/core 0.44.2 → 0.45.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.
@@ -934,7 +934,7 @@ SOFTWARE.
934
934
 
935
935
  ---
936
936
 
937
- The following software may be included in this product: @esbuild/linux-x64 (0.25.1)
937
+ The following software may be included in this product: @esbuild/linux-x64 (0.25.5)
938
938
  This software contains the following license and notice below:
939
939
 
940
940
  MIT License
@@ -7111,7 +7111,7 @@ SOFTWARE.
7111
7111
 
7112
7112
  ---
7113
7113
 
7114
- The following software may be included in this product: esbuild (0.25.1)
7114
+ The following software may be included in this product: esbuild (0.25.5)
7115
7115
  This software contains the following license and notice below:
7116
7116
 
7117
7117
  MIT License
@@ -26076,7 +26076,7 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
26076
26076
 
26077
26077
  ---
26078
26078
 
26079
- The following software may be included in this product: zod (3.25.60)
26079
+ The following software may be included in this product: zod (3.25.64)
26080
26080
  This software contains the following license and notice below:
26081
26081
 
26082
26082
  MIT License
@@ -26103,6 +26103,21 @@ SOFTWARE.
26103
26103
 
26104
26104
  ---
26105
26105
 
26106
+ The following software may be included in this product: zod-validation-error (3.5.0)
26107
+ This software contains the following license and notice below:
26108
+
26109
+ (The MIT License)
26110
+
26111
+ Copyright 2022 Causaly, Inc <front-end@causaly.com>
26112
+
26113
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
26114
+
26115
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
26116
+
26117
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
26118
+
26119
+ ---
26120
+
26106
26121
  The following software may be included in this product: zustand (4.5.5)
26107
26122
  This software contains the following license and notice below:
26108
26123
 
@@ -28450,7 +28465,7 @@ limitations under the License.
28450
28465
 
28451
28466
  ---
28452
28467
 
28453
- The following software may be included in this product: @internationalized/date (3.8.0)
28468
+ The following software may be included in this product: @internationalized/date (3.8.2)
28454
28469
  This software contains the following license and notice below:
28455
28470
 
28456
28471
  Apache License
package/dist/index.d.mts CHANGED
@@ -328,7 +328,7 @@ interface SingleSelection {
328
328
  /** The initial selected key in the collection (uncontrolled). */
329
329
  defaultSelectedKey?: Key,
330
330
  /** Handler that is called when the selection changes. */
331
- onSelectionChange?: (key: Key) => void
331
+ onSelectionChange?: (key: Key | null) => void
332
332
  }
333
333
 
334
334
  type SelectionMode = 'none' | 'single' | 'multiple';
@@ -567,9 +567,17 @@ interface DroppableCollectionUtilityOptions {
567
567
  */
568
568
  onItemDrop?: (e: DroppableCollectionOnItemDropEvent) => void,
569
569
  /**
570
- * Handler that is called when items are reordered via drag in the source collection.
570
+ * Handler that is called when items are reordered within the collection.
571
+ * This handler only allows dropping between items, not on items.
572
+ * It does not allow moving items to a different parent item within a tree.
571
573
  */
572
574
  onReorder?: (e: DroppableCollectionReorderEvent) => void,
575
+ /**
576
+ * Handler that is called when items are moved within the source collection.
577
+ * This handler allows dropping both on or between items, and items may be
578
+ * moved to a different parent item within a tree.
579
+ */
580
+ onMove?: (e: DroppableCollectionReorderEvent) => void,
573
581
  /**
574
582
  * A function returning whether a given target in the droppable collection is a valid "on" drop target for the current drag types.
575
583
  */
@@ -581,7 +589,6 @@ interface DroppableCollectionBaseProps {
581
589
  onDropEnter?: (e: DroppableCollectionEnterEvent) => void,
582
590
  /**
583
591
  * Handler that is called after a valid drag is held over a drop target for a period of time.
584
- * @private
585
592
  */
586
593
  onDropActivate?: (e: DroppableCollectionActivateEvent) => void,
587
594
  /** Handler that is called when a valid drag exits a drop target. */
@@ -1713,6 +1720,8 @@ interface AriaListBoxProps<T> extends AriaListBoxPropsBase<T> {
1713
1720
  selectionBehavior?: SelectionBehavior,
1714
1721
  /** Whether selection should occur on press up instead of press down. */
1715
1722
  shouldSelectOnPressUp?: boolean,
1723
+ /** Whether options should be focused when the user hovers over them. */
1724
+ shouldFocusOnHover?: boolean,
1716
1725
  /**
1717
1726
  * Handler that is called when a user performs an action on an item. The exact user event depends on
1718
1727
  * the collection's `selectionBehavior` prop and the interaction modality.
@@ -1763,8 +1772,6 @@ interface AriaListBoxOptions<T> extends Omit<AriaListBoxProps<T>, 'children'> {
1763
1772
  * Whether the listbox items should use virtual focus instead of being focused directly.
1764
1773
  */
1765
1774
  shouldUseVirtualFocus?: boolean;
1766
- /** Whether options should be focused when the user hovers over them. */
1767
- shouldFocusOnHover?: boolean;
1768
1775
  /**
1769
1776
  * The behavior of links in the collection.
1770
1777
  * - 'action': link behaves like onAction.
@@ -2110,7 +2117,6 @@ interface DropOptions {
2110
2117
  /**
2111
2118
  * Handler that is called after a valid drag is held over the drop target for a period of time.
2112
2119
  * This typically opens the item so that the user can drop within it.
2113
- * @private
2114
2120
  */
2115
2121
  onDropActivate?: (e: DropActivateEvent) => void;
2116
2122
  /** Handler that is called when a valid drag exits the drop target. */
@@ -2132,6 +2138,8 @@ interface DroppableCollectionOptions extends DroppableCollectionProps {
2132
2138
  keyboardDelegate: KeyboardDelegate;
2133
2139
  /** A delegate object that provides drop targets for pointer coordinates within the collection. */
2134
2140
  dropTargetDelegate: DropTargetDelegate;
2141
+ /** A custom keyboard event handler for drop targets. */
2142
+ onKeyDown?: (e: KeyboardEvent) => void;
2135
2143
  }
2136
2144
  interface ClipboardProps {
2137
2145
  /** A function that returns the items to copy. */
@@ -2338,7 +2346,7 @@ interface FocusManager {
2338
2346
  * management interface that can be used to move focus forward and back in response
2339
2347
  * to user events.
2340
2348
  */
2341
- declare function FocusScope(props: FocusScopeProps): ReactNode;
2349
+ declare function FocusScope(props: FocusScopeProps): JSX$2.Element;
2342
2350
  /**
2343
2351
  * Returns a FocusManager interface for the parent FocusScope.
2344
2352
  * A FocusManager can be used to programmatically move focus within
@@ -2866,7 +2874,7 @@ interface AriaTextFieldProps<T = HTMLInputElement> extends TextFieldProps<T>, Ar
2866
2874
  /** Identifies the element (or elements) whose contents or presence are controlled by the current element. */
2867
2875
  'aria-controls'?: string,
2868
2876
  /**
2869
- * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint].
2877
+ * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint).
2870
2878
  */
2871
2879
  enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'
2872
2880
  }
@@ -2895,7 +2903,7 @@ interface SearchFieldProps extends TextFieldProps {
2895
2903
 
2896
2904
  interface AriaSearchFieldProps extends SearchFieldProps, AriaTextFieldProps {
2897
2905
  /**
2898
- * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint].
2906
+ * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint).
2899
2907
  */
2900
2908
  enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'
2901
2909
  }
@@ -2979,12 +2987,14 @@ declare let Item$2: <T>(props: ItemProps$1<T>) => JSX$2.Element;
2979
2987
 
2980
2988
 
2981
2989
 
2982
- interface TabListProps<T> extends CollectionBase<T>, Omit<SingleSelection, 'disallowEmptySelection'> {
2990
+ interface TabListProps<T> extends CollectionBase<T>, Omit<SingleSelection, 'disallowEmptySelection' | 'onSelectionChange'> {
2983
2991
  /**
2984
2992
  * Whether the TabList is disabled.
2985
2993
  * Shows that a selection exists, but is not available in that circumstance.
2986
2994
  */
2987
- isDisabled?: boolean
2995
+ isDisabled?: boolean,
2996
+ /** Handler that is called when the selection changes. */
2997
+ onSelectionChange?: (key: Key) => void
2988
2998
  }
2989
2999
 
2990
3000
  interface AriaTabListBase extends AriaLabelingProps {
@@ -3062,7 +3072,7 @@ interface AriaTextFieldOptions<T extends TextFieldIntrinsicElements> extends Ari
3062
3072
  */
3063
3073
  autoCapitalize?: 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters';
3064
3074
  /**
3065
- * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint].
3075
+ * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint).
3066
3076
  */
3067
3077
  enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send';
3068
3078
  }
@@ -3197,7 +3207,7 @@ interface VisuallyHiddenProps extends DOMAttributes {
3197
3207
  * VisuallyHidden hides its children visually, while keeping content visible
3198
3208
  * to screen readers.
3199
3209
  */
3200
- declare function VisuallyHidden(props: VisuallyHiddenProps): ReactNode;
3210
+ declare function VisuallyHidden(props: VisuallyHiddenProps): JSX$2.Element;
3201
3211
 
3202
3212
  interface ListOptions<T> {
3203
3213
  /** Initial items in the list. */
@@ -3375,6 +3385,18 @@ interface TreeData<T extends object> {
3375
3385
  * @param index - The index within the new parent to insert at.
3376
3386
  */
3377
3387
  move(key: Key, toParentKey: Key | null, index: number): void;
3388
+ /**
3389
+ * Moves one or more items before a given key.
3390
+ * @param key - The key of the item to move the items before.
3391
+ * @param keys - The keys of the items to move.
3392
+ */
3393
+ moveBefore(key: Key, keys: Iterable<Key>): void;
3394
+ /**
3395
+ * Moves one or more items after a given key.
3396
+ * @param key - The key of the item to move the items after.
3397
+ * @param keys - The keys of the items to move.
3398
+ */
3399
+ moveAfter(key: Key, keys: Iterable<Key>): void;
3378
3400
  /**
3379
3401
  * Updates an item in the tree.
3380
3402
  * @param key - The key of the item to update.
@@ -19421,15 +19443,6 @@ interface StylingWithUIState<T = object> {
19421
19443
  style?: React__default__default.CSSProperties | ((props: UIStateOptions<T>) => React__default__default.CSSProperties);
19422
19444
  }
19423
19445
  interface ActionButtonSharedProps extends Omit<AriaButtonProps<"button" | "div">, "rel" | "href" | "target" | "children">, Omit<StylingProps, "className" | "style">, StylingWithUIState {
19424
- /**
19425
- * There are some cases where we need to use a button that is not interactive.
19426
- * For example, when we need to use a button inside a TabItem component that
19427
- * should remove the tab when clicked. Since this button never needs to be
19428
- * focused directly, we can set this prop to true to avoid the button being
19429
- * focusable. At the same time we also avoid the [nested element
19430
- * rule](https://dequeuniversity.com/rules/axe/html/4.6/nested-interactive)
19431
- */
19432
- UNSAFE_NON_INTERACTIVE?: boolean;
19433
19446
  }
19434
19447
  interface ActionButtonProps extends ActionButtonSharedProps {
19435
19448
  /**
@@ -19450,8 +19463,6 @@ interface ActionButtonProps extends ActionButtonSharedProps {
19450
19463
  * @default sm
19451
19464
  */
19452
19465
  size?: "sm" | "md" | "lg";
19453
- /** Indicates whether focusing should be prevented on press. */
19454
- preventFocusOnPress?: boolean;
19455
19466
  }
19456
19467
 
19457
19468
  declare const ActionButton: React__default__default.ForwardRefExoticComponent<ActionButtonProps & React__default__default.RefAttributes<HTMLButtonElement>>;
@@ -19768,6 +19779,31 @@ interface ActionIconButtonProps extends ActionButtonSharedProps {
19768
19779
  tooltip?: boolean | Partial<Omit<TooltipProps, "children">>;
19769
19780
  /** The drag props to use for drag and drop interactions. */
19770
19781
  dragProps?: React__default__default.HTMLAttributes<HTMLElement>;
19782
+ /**
19783
+ * There are some cases where we need to use a button that is not interactive.
19784
+ * For example, when we need to use a visual button inside a TabItem component
19785
+ * that should remove the tab when clicked. Since this button never needs to
19786
+ * be focused directly, we can set this prop to true to avoid the button being
19787
+ * focusable. At the same time we also avoid the [nested element
19788
+ * rule](https://dequeuniversity.com/rules/axe/html/4.6/nested-interactive)
19789
+ *
19790
+ * This is different from `isExcludedFromRovingFocus` because it only affects
19791
+ * because this prop removes the button fully from the accessibility tree and
19792
+ * renders it as a div with no role, aria-label, aria-labelledby,
19793
+ * aria-disabled, etc.
19794
+ *
19795
+ * @default false
19796
+ */
19797
+ UNSAFE_isVisuallyInteractiveOnly?: boolean;
19798
+ /**
19799
+ * Whether the button is excluded from roving focus. In this case, the button
19800
+ * will not be focusable using keyboard arrow keys but will still have correct
19801
+ * role, aria-label, aria-labelledby, aria-disabled, etc. Avoid using this
19802
+ * prop unless absolutely necessary.
19803
+ *
19804
+ * @default false
19805
+ */
19806
+ isExcludedFromRovingFocus?: boolean;
19771
19807
  }
19772
19808
 
19773
19809
  declare const ActionIconButton: React__default__default.ForwardRefExoticComponent<ActionIconButtonProps & React__default__default.RefAttributes<HTMLButtonElement>>;
@@ -21569,7 +21605,7 @@ type Dimension = {
21569
21605
  width: number | "sm" | "md";
21570
21606
  aspectRatio: number;
21571
21607
  };
21572
- interface ImageGalleryProps extends StylingProps, Omit<ListBoxProps, "items" | "layout" | "grid" | "renderOption" | "renderDropIndicator" | "renderDragPreview" | "showSelectedIcon" | "orientation" | "shouldSelectOnPressUp" | "shouldFocusOnHover" | "dropIndicatorClassName" | "dropIndicatorStyle" | "shouldUseVirtualFocus" | "getItems" | "acceptedDragTypes" | "sectionClassName" | "sectionStyle"> {
21608
+ interface ImageGalleryProps extends StylingProps, Omit<ListBoxProps, "items" | "layout" | "grid" | "renderOption" | "renderDropIndicator" | "renderDragPreview" | "showSelectedIcon" | "orientation" | "shouldSelectOnPressUp" | "shouldFocusOnHover" | "dropIndicatorClassName" | "dropIndicatorStyle" | "shouldUseVirtualFocus" | "getItems" | "acceptedDragTypes" | "sectionClassName" | "sectionStyle" | "onKeyDown"> {
21573
21609
  /**
21574
21610
  * An array of objects containing the image source, alt text, and label for
21575
21611
  * each image. This property makes the component a controlled component.
package/dist/index.d.ts CHANGED
@@ -328,7 +328,7 @@ interface SingleSelection {
328
328
  /** The initial selected key in the collection (uncontrolled). */
329
329
  defaultSelectedKey?: Key,
330
330
  /** Handler that is called when the selection changes. */
331
- onSelectionChange?: (key: Key) => void
331
+ onSelectionChange?: (key: Key | null) => void
332
332
  }
333
333
 
334
334
  type SelectionMode = 'none' | 'single' | 'multiple';
@@ -567,9 +567,17 @@ interface DroppableCollectionUtilityOptions {
567
567
  */
568
568
  onItemDrop?: (e: DroppableCollectionOnItemDropEvent) => void,
569
569
  /**
570
- * Handler that is called when items are reordered via drag in the source collection.
570
+ * Handler that is called when items are reordered within the collection.
571
+ * This handler only allows dropping between items, not on items.
572
+ * It does not allow moving items to a different parent item within a tree.
571
573
  */
572
574
  onReorder?: (e: DroppableCollectionReorderEvent) => void,
575
+ /**
576
+ * Handler that is called when items are moved within the source collection.
577
+ * This handler allows dropping both on or between items, and items may be
578
+ * moved to a different parent item within a tree.
579
+ */
580
+ onMove?: (e: DroppableCollectionReorderEvent) => void,
573
581
  /**
574
582
  * A function returning whether a given target in the droppable collection is a valid "on" drop target for the current drag types.
575
583
  */
@@ -581,7 +589,6 @@ interface DroppableCollectionBaseProps {
581
589
  onDropEnter?: (e: DroppableCollectionEnterEvent) => void,
582
590
  /**
583
591
  * Handler that is called after a valid drag is held over a drop target for a period of time.
584
- * @private
585
592
  */
586
593
  onDropActivate?: (e: DroppableCollectionActivateEvent) => void,
587
594
  /** Handler that is called when a valid drag exits a drop target. */
@@ -1713,6 +1720,8 @@ interface AriaListBoxProps<T> extends AriaListBoxPropsBase<T> {
1713
1720
  selectionBehavior?: SelectionBehavior,
1714
1721
  /** Whether selection should occur on press up instead of press down. */
1715
1722
  shouldSelectOnPressUp?: boolean,
1723
+ /** Whether options should be focused when the user hovers over them. */
1724
+ shouldFocusOnHover?: boolean,
1716
1725
  /**
1717
1726
  * Handler that is called when a user performs an action on an item. The exact user event depends on
1718
1727
  * the collection's `selectionBehavior` prop and the interaction modality.
@@ -1763,8 +1772,6 @@ interface AriaListBoxOptions<T> extends Omit<AriaListBoxProps<T>, 'children'> {
1763
1772
  * Whether the listbox items should use virtual focus instead of being focused directly.
1764
1773
  */
1765
1774
  shouldUseVirtualFocus?: boolean;
1766
- /** Whether options should be focused when the user hovers over them. */
1767
- shouldFocusOnHover?: boolean;
1768
1775
  /**
1769
1776
  * The behavior of links in the collection.
1770
1777
  * - 'action': link behaves like onAction.
@@ -2110,7 +2117,6 @@ interface DropOptions {
2110
2117
  /**
2111
2118
  * Handler that is called after a valid drag is held over the drop target for a period of time.
2112
2119
  * This typically opens the item so that the user can drop within it.
2113
- * @private
2114
2120
  */
2115
2121
  onDropActivate?: (e: DropActivateEvent) => void;
2116
2122
  /** Handler that is called when a valid drag exits the drop target. */
@@ -2132,6 +2138,8 @@ interface DroppableCollectionOptions extends DroppableCollectionProps {
2132
2138
  keyboardDelegate: KeyboardDelegate;
2133
2139
  /** A delegate object that provides drop targets for pointer coordinates within the collection. */
2134
2140
  dropTargetDelegate: DropTargetDelegate;
2141
+ /** A custom keyboard event handler for drop targets. */
2142
+ onKeyDown?: (e: KeyboardEvent) => void;
2135
2143
  }
2136
2144
  interface ClipboardProps {
2137
2145
  /** A function that returns the items to copy. */
@@ -2338,7 +2346,7 @@ interface FocusManager {
2338
2346
  * management interface that can be used to move focus forward and back in response
2339
2347
  * to user events.
2340
2348
  */
2341
- declare function FocusScope(props: FocusScopeProps): ReactNode;
2349
+ declare function FocusScope(props: FocusScopeProps): JSX$2.Element;
2342
2350
  /**
2343
2351
  * Returns a FocusManager interface for the parent FocusScope.
2344
2352
  * A FocusManager can be used to programmatically move focus within
@@ -2866,7 +2874,7 @@ interface AriaTextFieldProps<T = HTMLInputElement> extends TextFieldProps<T>, Ar
2866
2874
  /** Identifies the element (or elements) whose contents or presence are controlled by the current element. */
2867
2875
  'aria-controls'?: string,
2868
2876
  /**
2869
- * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint].
2877
+ * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint).
2870
2878
  */
2871
2879
  enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'
2872
2880
  }
@@ -2895,7 +2903,7 @@ interface SearchFieldProps extends TextFieldProps {
2895
2903
 
2896
2904
  interface AriaSearchFieldProps extends SearchFieldProps, AriaTextFieldProps {
2897
2905
  /**
2898
- * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint].
2906
+ * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint).
2899
2907
  */
2900
2908
  enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send'
2901
2909
  }
@@ -2979,12 +2987,14 @@ declare let Item$2: <T>(props: ItemProps$1<T>) => JSX$2.Element;
2979
2987
 
2980
2988
 
2981
2989
 
2982
- interface TabListProps<T> extends CollectionBase<T>, Omit<SingleSelection, 'disallowEmptySelection'> {
2990
+ interface TabListProps<T> extends CollectionBase<T>, Omit<SingleSelection, 'disallowEmptySelection' | 'onSelectionChange'> {
2983
2991
  /**
2984
2992
  * Whether the TabList is disabled.
2985
2993
  * Shows that a selection exists, but is not available in that circumstance.
2986
2994
  */
2987
- isDisabled?: boolean
2995
+ isDisabled?: boolean,
2996
+ /** Handler that is called when the selection changes. */
2997
+ onSelectionChange?: (key: Key) => void
2988
2998
  }
2989
2999
 
2990
3000
  interface AriaTabListBase extends AriaLabelingProps {
@@ -3062,7 +3072,7 @@ interface AriaTextFieldOptions<T extends TextFieldIntrinsicElements> extends Ari
3062
3072
  */
3063
3073
  autoCapitalize?: 'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters';
3064
3074
  /**
3065
- * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint].
3075
+ * An enumerated attribute that defines what action label or icon to preset for the enter key on virtual keyboards. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/enterkeyhint).
3066
3076
  */
3067
3077
  enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'previous' | 'search' | 'send';
3068
3078
  }
@@ -3197,7 +3207,7 @@ interface VisuallyHiddenProps extends DOMAttributes {
3197
3207
  * VisuallyHidden hides its children visually, while keeping content visible
3198
3208
  * to screen readers.
3199
3209
  */
3200
- declare function VisuallyHidden(props: VisuallyHiddenProps): ReactNode;
3210
+ declare function VisuallyHidden(props: VisuallyHiddenProps): JSX$2.Element;
3201
3211
 
3202
3212
  interface ListOptions<T> {
3203
3213
  /** Initial items in the list. */
@@ -3375,6 +3385,18 @@ interface TreeData<T extends object> {
3375
3385
  * @param index - The index within the new parent to insert at.
3376
3386
  */
3377
3387
  move(key: Key, toParentKey: Key | null, index: number): void;
3388
+ /**
3389
+ * Moves one or more items before a given key.
3390
+ * @param key - The key of the item to move the items before.
3391
+ * @param keys - The keys of the items to move.
3392
+ */
3393
+ moveBefore(key: Key, keys: Iterable<Key>): void;
3394
+ /**
3395
+ * Moves one or more items after a given key.
3396
+ * @param key - The key of the item to move the items after.
3397
+ * @param keys - The keys of the items to move.
3398
+ */
3399
+ moveAfter(key: Key, keys: Iterable<Key>): void;
3378
3400
  /**
3379
3401
  * Updates an item in the tree.
3380
3402
  * @param key - The key of the item to update.
@@ -19421,15 +19443,6 @@ interface StylingWithUIState<T = object> {
19421
19443
  style?: React__default__default.CSSProperties | ((props: UIStateOptions<T>) => React__default__default.CSSProperties);
19422
19444
  }
19423
19445
  interface ActionButtonSharedProps extends Omit<AriaButtonProps<"button" | "div">, "rel" | "href" | "target" | "children">, Omit<StylingProps, "className" | "style">, StylingWithUIState {
19424
- /**
19425
- * There are some cases where we need to use a button that is not interactive.
19426
- * For example, when we need to use a button inside a TabItem component that
19427
- * should remove the tab when clicked. Since this button never needs to be
19428
- * focused directly, we can set this prop to true to avoid the button being
19429
- * focusable. At the same time we also avoid the [nested element
19430
- * rule](https://dequeuniversity.com/rules/axe/html/4.6/nested-interactive)
19431
- */
19432
- UNSAFE_NON_INTERACTIVE?: boolean;
19433
19446
  }
19434
19447
  interface ActionButtonProps extends ActionButtonSharedProps {
19435
19448
  /**
@@ -19450,8 +19463,6 @@ interface ActionButtonProps extends ActionButtonSharedProps {
19450
19463
  * @default sm
19451
19464
  */
19452
19465
  size?: "sm" | "md" | "lg";
19453
- /** Indicates whether focusing should be prevented on press. */
19454
- preventFocusOnPress?: boolean;
19455
19466
  }
19456
19467
 
19457
19468
  declare const ActionButton: React__default__default.ForwardRefExoticComponent<ActionButtonProps & React__default__default.RefAttributes<HTMLButtonElement>>;
@@ -19768,6 +19779,31 @@ interface ActionIconButtonProps extends ActionButtonSharedProps {
19768
19779
  tooltip?: boolean | Partial<Omit<TooltipProps, "children">>;
19769
19780
  /** The drag props to use for drag and drop interactions. */
19770
19781
  dragProps?: React__default__default.HTMLAttributes<HTMLElement>;
19782
+ /**
19783
+ * There are some cases where we need to use a button that is not interactive.
19784
+ * For example, when we need to use a visual button inside a TabItem component
19785
+ * that should remove the tab when clicked. Since this button never needs to
19786
+ * be focused directly, we can set this prop to true to avoid the button being
19787
+ * focusable. At the same time we also avoid the [nested element
19788
+ * rule](https://dequeuniversity.com/rules/axe/html/4.6/nested-interactive)
19789
+ *
19790
+ * This is different from `isExcludedFromRovingFocus` because it only affects
19791
+ * because this prop removes the button fully from the accessibility tree and
19792
+ * renders it as a div with no role, aria-label, aria-labelledby,
19793
+ * aria-disabled, etc.
19794
+ *
19795
+ * @default false
19796
+ */
19797
+ UNSAFE_isVisuallyInteractiveOnly?: boolean;
19798
+ /**
19799
+ * Whether the button is excluded from roving focus. In this case, the button
19800
+ * will not be focusable using keyboard arrow keys but will still have correct
19801
+ * role, aria-label, aria-labelledby, aria-disabled, etc. Avoid using this
19802
+ * prop unless absolutely necessary.
19803
+ *
19804
+ * @default false
19805
+ */
19806
+ isExcludedFromRovingFocus?: boolean;
19771
19807
  }
19772
19808
 
19773
19809
  declare const ActionIconButton: React__default__default.ForwardRefExoticComponent<ActionIconButtonProps & React__default__default.RefAttributes<HTMLButtonElement>>;
@@ -21569,7 +21605,7 @@ type Dimension = {
21569
21605
  width: number | "sm" | "md";
21570
21606
  aspectRatio: number;
21571
21607
  };
21572
- interface ImageGalleryProps extends StylingProps, Omit<ListBoxProps, "items" | "layout" | "grid" | "renderOption" | "renderDropIndicator" | "renderDragPreview" | "showSelectedIcon" | "orientation" | "shouldSelectOnPressUp" | "shouldFocusOnHover" | "dropIndicatorClassName" | "dropIndicatorStyle" | "shouldUseVirtualFocus" | "getItems" | "acceptedDragTypes" | "sectionClassName" | "sectionStyle"> {
21608
+ interface ImageGalleryProps extends StylingProps, Omit<ListBoxProps, "items" | "layout" | "grid" | "renderOption" | "renderDropIndicator" | "renderDragPreview" | "showSelectedIcon" | "orientation" | "shouldSelectOnPressUp" | "shouldFocusOnHover" | "dropIndicatorClassName" | "dropIndicatorStyle" | "shouldUseVirtualFocus" | "getItems" | "acceptedDragTypes" | "sectionClassName" | "sectionStyle" | "onKeyDown"> {
21573
21609
  /**
21574
21610
  * An array of objects containing the image source, alt text, and label for
21575
21611
  * each image. This property makes the component a controlled component.