react-aria-components 3.0.0-nightly-3f44370de-241118 → 3.0.0-nightly-b3a4d6c11-241119

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 (133) hide show
  1. package/dist/Breadcrumbs.main.js +2 -2
  2. package/dist/Breadcrumbs.main.js.map +1 -1
  3. package/dist/Breadcrumbs.mjs +2 -2
  4. package/dist/Breadcrumbs.module.js +2 -2
  5. package/dist/Breadcrumbs.module.js.map +1 -1
  6. package/dist/Button.main.js.map +1 -1
  7. package/dist/Button.module.js.map +1 -1
  8. package/dist/Collection.main.js.map +1 -1
  9. package/dist/Collection.module.js.map +1 -1
  10. package/dist/ComboBox.main.js +2 -2
  11. package/dist/ComboBox.main.js.map +1 -1
  12. package/dist/ComboBox.mjs +2 -2
  13. package/dist/ComboBox.module.js +2 -2
  14. package/dist/ComboBox.module.js.map +1 -1
  15. package/dist/Dialog.main.js +22 -1
  16. package/dist/Dialog.main.js.map +1 -1
  17. package/dist/Dialog.mjs +23 -2
  18. package/dist/Dialog.module.js +23 -2
  19. package/dist/Dialog.module.js.map +1 -1
  20. package/dist/Disclosure.main.js +1 -1
  21. package/dist/Disclosure.main.js.map +1 -1
  22. package/dist/Disclosure.mjs +1 -1
  23. package/dist/Disclosure.module.js +1 -1
  24. package/dist/Disclosure.module.js.map +1 -1
  25. package/dist/Heading.main.js.map +1 -1
  26. package/dist/Heading.module.js.map +1 -1
  27. package/dist/Menu.main.js +7 -45
  28. package/dist/Menu.main.js.map +1 -1
  29. package/dist/Menu.mjs +9 -47
  30. package/dist/Menu.module.js +9 -47
  31. package/dist/Menu.module.js.map +1 -1
  32. package/dist/OverlayArrow.main.js +1 -1
  33. package/dist/OverlayArrow.main.js.map +1 -1
  34. package/dist/OverlayArrow.mjs +1 -1
  35. package/dist/OverlayArrow.module.js +1 -1
  36. package/dist/OverlayArrow.module.js.map +1 -1
  37. package/dist/Popover.main.js +1 -0
  38. package/dist/Popover.main.js.map +1 -1
  39. package/dist/Popover.mjs +1 -0
  40. package/dist/Popover.module.js +1 -0
  41. package/dist/Popover.module.js.map +1 -1
  42. package/dist/Table.main.js +2 -10
  43. package/dist/Table.main.js.map +1 -1
  44. package/dist/Table.mjs +2 -10
  45. package/dist/Table.module.js +2 -10
  46. package/dist/Table.module.js.map +1 -1
  47. package/dist/Tooltip.main.js +1 -1
  48. package/dist/Tooltip.main.js.map +1 -1
  49. package/dist/Tooltip.mjs +1 -1
  50. package/dist/Tooltip.module.js +1 -1
  51. package/dist/Tooltip.module.js.map +1 -1
  52. package/dist/Virtualizer.main.js.map +1 -1
  53. package/dist/Virtualizer.module.js.map +1 -1
  54. package/dist/types.d.ts +107 -107
  55. package/dist/types.d.ts.map +1 -1
  56. package/i18n/ar-AE.js +1 -1
  57. package/i18n/ar-AE.mjs +1 -1
  58. package/i18n/bg-BG.js +1 -1
  59. package/i18n/bg-BG.mjs +1 -1
  60. package/i18n/cs-CZ.js +1 -1
  61. package/i18n/cs-CZ.mjs +1 -1
  62. package/i18n/da-DK.js +1 -1
  63. package/i18n/da-DK.mjs +1 -1
  64. package/i18n/de-DE.js +1 -1
  65. package/i18n/de-DE.mjs +1 -1
  66. package/i18n/el-GR.js +1 -1
  67. package/i18n/el-GR.mjs +1 -1
  68. package/i18n/en-US.js +1 -1
  69. package/i18n/en-US.mjs +1 -1
  70. package/i18n/es-ES.js +1 -1
  71. package/i18n/es-ES.mjs +1 -1
  72. package/i18n/et-EE.js +1 -1
  73. package/i18n/et-EE.mjs +1 -1
  74. package/i18n/fi-FI.js +1 -1
  75. package/i18n/fi-FI.mjs +1 -1
  76. package/i18n/fr-FR.js +1 -1
  77. package/i18n/fr-FR.mjs +1 -1
  78. package/i18n/he-IL.js +1 -1
  79. package/i18n/he-IL.mjs +1 -1
  80. package/i18n/hr-HR.js +1 -1
  81. package/i18n/hr-HR.mjs +1 -1
  82. package/i18n/hu-HU.js +1 -1
  83. package/i18n/hu-HU.mjs +1 -1
  84. package/i18n/it-IT.js +1 -1
  85. package/i18n/it-IT.mjs +1 -1
  86. package/i18n/ja-JP.js +1 -1
  87. package/i18n/ja-JP.mjs +1 -1
  88. package/i18n/ko-KR.js +1 -1
  89. package/i18n/ko-KR.mjs +1 -1
  90. package/i18n/lt-LT.js +1 -1
  91. package/i18n/lt-LT.mjs +1 -1
  92. package/i18n/lv-LV.js +1 -1
  93. package/i18n/lv-LV.mjs +1 -1
  94. package/i18n/nb-NO.js +1 -1
  95. package/i18n/nb-NO.mjs +1 -1
  96. package/i18n/nl-NL.js +1 -1
  97. package/i18n/nl-NL.mjs +1 -1
  98. package/i18n/pl-PL.js +1 -1
  99. package/i18n/pl-PL.mjs +1 -1
  100. package/i18n/pt-BR.js +1 -1
  101. package/i18n/pt-BR.mjs +1 -1
  102. package/i18n/pt-PT.js +1 -1
  103. package/i18n/pt-PT.mjs +1 -1
  104. package/i18n/ro-RO.js +1 -1
  105. package/i18n/ro-RO.mjs +1 -1
  106. package/i18n/ru-RU.js +1 -1
  107. package/i18n/ru-RU.mjs +1 -1
  108. package/i18n/sk-SK.js +1 -1
  109. package/i18n/sk-SK.mjs +1 -1
  110. package/i18n/sl-SI.js +1 -1
  111. package/i18n/sl-SI.mjs +1 -1
  112. package/i18n/sr-SP.js +1 -1
  113. package/i18n/sr-SP.mjs +1 -1
  114. package/i18n/sv-SE.js +1 -1
  115. package/i18n/sv-SE.mjs +1 -1
  116. package/i18n/tr-TR.js +1 -1
  117. package/i18n/tr-TR.mjs +1 -1
  118. package/i18n/uk-UA.js +1 -1
  119. package/i18n/uk-UA.mjs +1 -1
  120. package/i18n/zh-CN.js +1 -1
  121. package/i18n/zh-CN.mjs +1 -1
  122. package/i18n/zh-TW.js +1 -1
  123. package/i18n/zh-TW.mjs +1 -1
  124. package/package.json +32 -33
  125. package/src/Collection.tsx +1 -1
  126. package/src/Dialog.tsx +15 -2
  127. package/src/Disclosure.tsx +1 -1
  128. package/src/Menu.tsx +7 -33
  129. package/src/OverlayArrow.tsx +5 -3
  130. package/src/Popover.tsx +2 -2
  131. package/src/Table.tsx +1 -2
  132. package/src/Tooltip.tsx +2 -2
  133. package/src/Virtualizer.tsx +2 -2
package/dist/types.d.ts CHANGED
@@ -1,15 +1,15 @@
1
1
  import { RefObject, DOMProps as _DOMProps1, ValidationResult, HoverEvents as _HoverEvents1, InputDOMProps, CollectionBase, DropTargetDelegate, ItemDropTarget, Key, LayoutDelegate, DraggableCollectionProps, DroppableCollectionProps, LinkDOMProps, AriaLabelingProps, ValueBase, MultipleSelection, Node as _Node1, Orientation as _Orientation2, DisabledBehavior as _DisabledBehavior1, Expandable } from "@react-types/shared";
2
2
  import React, { Context, CSSProperties, ForwardedRef, JSX, ReactNode, UIEvent, HTMLAttributes, LabelHTMLAttributes, InputHTMLAttributes, OutputHTMLAttributes, ReactElement, TextareaHTMLAttributes } from "react";
3
3
  import { FormProps as _FormProps1 } from "@react-types/form";
4
- import { AriaCheckboxGroupProps, AriaCheckboxProps, HoverEvents, AriaSliderProps, AriaSliderThumbProps, Orientation, AriaLinkOptions, AriaBreadcrumbsProps, AriaProgressBarProps, AriaButtonProps, AriaCalendarProps, AriaRangeCalendarProps, DateValue, DropIndicatorProps as _DropIndicatorProps1, DraggableCollectionOptions, DraggableItemProps, DraggableItemResult, DragItem, DragPreview, DropIndicatorAria, DroppableCollectionOptions, DroppableCollectionResult, DroppableItemOptions, DroppableItemResult, DropTarget, DropTargetDelegate as _DropTargetDelegate1, ListDropTargetDelegate, SeparatorProps as _SeparatorProps1, AriaListBoxProps, HoverProps, PlacementAxis, AriaPopoverProps, PositionProps, AriaDialogProps, AriaComboBoxProps, AriaDateFieldProps, AriaTimeFieldProps, TimeValue, AriaDatePickerProps, AriaDateRangePickerProps, DropOptions, AriaGridListProps, AriaMenuProps, AriaMeterProps, AriaModalOverlayProps, AriaNumberFieldProps, AriaRadioGroupProps, AriaRadioProps, AriaSearchFieldProps, AriaSelectProps, AriaSwitchProps, Key as _Key1, AriaTabListProps, AriaTabPanelProps, AriaTagGroupProps, AriaTextFieldProps, AriaToggleButtonGroupProps, AriaToggleButtonProps, AriaPositionProps, Placement } from "react-aria";
5
- import { CheckboxGroupState, SliderState, Collection, Node, SelectionBehavior, SelectionMode, SectionProps as _SectionProps1, CalendarState, RangeCalendarState, DraggableCollectionState, DraggableCollectionStateOptions, DroppableCollectionState, DroppableCollectionStateOptions, ListState, Orientation as _Orientation1, OverlayTriggerProps, OverlayTriggerState, ComboBoxState, DateFieldState, DateSegmentType, DateSegment as _DateSegment1, TimeFieldState, DatePickerState, DatePickerStateOptions, DateRangePickerState, DateRangePickerStateOptions, MenuTriggerProps as _MenuTriggerProps1, TreeState, NumberFieldState, RadioGroupState, SearchFieldState, SelectState, ToggleState, DisabledBehavior, SortDirection, TableState, TabListState, ToggleGroupState, TooltipTriggerProps, TooltipTriggerState } from "react-stately";
4
+ import { AriaCheckboxGroupProps, AriaCheckboxProps, HoverEvents, AriaSliderProps, AriaSliderThumbProps, Orientation, AriaLinkOptions, AriaBreadcrumbsProps, AriaProgressBarProps, AriaButtonProps, AriaCalendarProps, AriaRangeCalendarProps, DateValue, DropIndicatorProps as _DropIndicatorProps1, DraggableCollectionOptions, DraggableItemProps, DraggableItemResult, DragItem, DragPreview, DropIndicatorAria, DroppableCollectionOptions, DroppableCollectionResult, DroppableItemOptions, DroppableItemResult, DropTarget, DropTargetDelegate as _DropTargetDelegate1, ListDropTargetDelegate, SeparatorProps as _SeparatorProps1, AriaListBoxProps, HoverProps, PlacementAxis, AriaPopoverProps, PositionProps, AriaMenuProps, AriaDialogProps, AriaComboBoxProps, AriaDateFieldProps, AriaTimeFieldProps, TimeValue, AriaDatePickerProps, AriaDateRangePickerProps, DropOptions, AriaGridListProps, AriaMeterProps, AriaModalOverlayProps, AriaNumberFieldProps, AriaRadioGroupProps, AriaRadioProps, AriaSearchFieldProps, AriaSelectProps, AriaSwitchProps, Key as _Key1, AriaTabListProps, AriaTabPanelProps, AriaTagGroupProps, AriaTextFieldProps, AriaToggleButtonGroupProps, AriaToggleButtonProps, AriaPositionProps, Placement } from "react-aria";
5
+ import { CheckboxGroupState, SliderState, Collection, Node, SelectionBehavior, SelectionMode, SectionProps as _SectionProps1, CalendarState, RangeCalendarState, DraggableCollectionState, DraggableCollectionStateOptions, DroppableCollectionState, DroppableCollectionStateOptions, ListState, Orientation as _Orientation1, OverlayTriggerProps, MenuTriggerProps as _MenuTriggerProps1, TreeState, OverlayTriggerState, ComboBoxState, DateFieldState, DateSegmentType, DateSegment as _DateSegment1, TimeFieldState, DatePickerState, DatePickerStateOptions, DateRangePickerState, DateRangePickerStateOptions, NumberFieldState, RadioGroupState, SearchFieldState, SelectState, ToggleState, DisabledBehavior, SortDirection, TableState, TabListState, ToggleGroupState, TooltipTriggerProps, TooltipTriggerState } from "react-stately";
6
6
  import { Color, AriaColorAreaProps, ColorChannel, ColorSpace, AriaColorSliderProps } from "@react-types/color";
7
7
  import { ColorAreaState, ColorFieldState, ColorSliderState, ColorWheelState, Color as _Color1, ColorPickerState, ColorPickerProps as _ColorPickerProps1 } from "@react-stately/color";
8
8
  import { AriaColorFieldProps, AriaColorWheelOptions, AriaColorSwatchProps } from "@react-aria/color";
9
9
  import { CalendarDate, DateDuration } from "@internationalized/date";
10
+ import { RootMenuTriggerState } from "@react-stately/menu";
10
11
  import { AriaDisclosureProps } from "@react-aria/disclosure";
11
12
  import { DisclosureGroupState, DisclosureState, DisclosureGroupProps as _DisclosureGroupProps1 } from "@react-stately/disclosure";
12
- import { RootMenuTriggerState } from "@react-stately/menu";
13
13
  import { TableColumnResizeState } from "@react-stately/table";
14
14
  import { ColumnSize, ColumnStaticSize, TableProps as _TableProps1 } from "@react-types/table";
15
15
  import { Layout } from "@react-stately/virtualizer";
@@ -90,7 +90,7 @@ export interface TextProps extends HTMLAttributes<HTMLElement> {
90
90
  }
91
91
  export const TextContext: React.Context<ContextValue<TextProps, HTMLElement>>;
92
92
  export const Text: React.ForwardRefExoticComponent<TextProps & React.RefAttributes<HTMLElement>>;
93
- export const FieldErrorContext: React.Context<ValidationResult>;
93
+ export const FieldErrorContext: React.Context<ValidationResult | null>;
94
94
  export interface FieldErrorRenderProps extends ValidationResult {
95
95
  }
96
96
  export interface FieldErrorProps extends RenderProps<FieldErrorRenderProps>, _DOMProps1 {
@@ -206,7 +206,7 @@ export interface CheckboxRenderProps {
206
206
  isRequired: boolean;
207
207
  }
208
208
  export const CheckboxGroupContext: React.Context<ContextValue<CheckboxGroupProps, HTMLDivElement>>;
209
- export const CheckboxGroupStateContext: React.Context<CheckboxGroupState>;
209
+ export const CheckboxGroupStateContext: React.Context<CheckboxGroupState | null>;
210
210
  /**
211
211
  * A checkbox allows a user to select multiple items from a list of individual items, or
212
212
  * to mark one individual item as selected.
@@ -266,7 +266,7 @@ export interface ColorAreaRenderProps {
266
266
  }
267
267
  export interface ColorAreaProps extends AriaColorAreaProps, RenderProps<ColorAreaRenderProps>, SlotProps {
268
268
  }
269
- export const ColorAreaStateContext: React.Context<ColorAreaState>;
269
+ export const ColorAreaStateContext: React.Context<ColorAreaState | null>;
270
270
  /**
271
271
  * A color area allows users to adjust two channels of an RGB, HSL or HSB color value against a two-dimensional gradient background.
272
272
  */
@@ -338,7 +338,7 @@ export interface ColorFieldProps extends Omit<AriaColorFieldProps, 'label' | 'pl
338
338
  */
339
339
  colorSpace?: ColorSpace;
340
340
  }
341
- export const ColorFieldStateContext: React.Context<ColorFieldState>;
341
+ export const ColorFieldStateContext: React.Context<ColorFieldState | null>;
342
342
  /**
343
343
  * A color field allows users to edit a hex color or individual color channel value.
344
344
  */
@@ -350,7 +350,7 @@ export interface SliderProps<T = number | number[]> extends Omit<AriaSliderProps
350
350
  formatOptions?: Intl.NumberFormatOptions;
351
351
  }
352
352
  export const SliderContext: React.Context<ContextValue<SliderProps<number | number[]>, HTMLDivElement>>;
353
- export const SliderStateContext: React.Context<SliderState>;
353
+ export const SliderStateContext: React.Context<SliderState | null>;
354
354
  export const SliderTrackContext: React.Context<ContextValue<SliderTrackContextValue, HTMLDivElement>>;
355
355
  export const SliderOutputContext: React.Context<ContextValue<SliderOutputContextValue, HTMLOutputElement>>;
356
356
  export interface SliderRenderProps {
@@ -455,7 +455,7 @@ export interface ColorSliderRenderProps {
455
455
  }
456
456
  export interface ColorSliderProps extends Omit<AriaColorSliderProps, 'label'>, RenderProps<ColorSliderRenderProps>, SlotProps {
457
457
  }
458
- export const ColorSliderStateContext: React.Context<ColorSliderState>;
458
+ export const ColorSliderStateContext: React.Context<ColorSliderState | null>;
459
459
  /**
460
460
  * A color slider allows users to adjust an individual channel of a color value.
461
461
  */
@@ -473,7 +473,7 @@ export interface ColorWheelRenderProps {
473
473
  }
474
474
  export interface ColorWheelProps extends AriaColorWheelOptions, RenderProps<ColorWheelRenderProps>, SlotProps {
475
475
  }
476
- export const ColorWheelStateContext: React.Context<ColorWheelState>;
476
+ export const ColorWheelStateContext: React.Context<ColorWheelState | null>;
477
477
  /**
478
478
  * A color wheel allows users to adjust the hue of an HSL or HSB color value on a circular track.
479
479
  */
@@ -809,8 +809,8 @@ export interface RangeCalendarProps<T extends DateValue> extends Omit<AriaRangeC
809
809
  }
810
810
  export const CalendarContext: React.Context<ContextValue<CalendarProps<any>, HTMLDivElement>>;
811
811
  export const RangeCalendarContext: React.Context<ContextValue<RangeCalendarProps<any>, HTMLDivElement>>;
812
- export const CalendarStateContext: React.Context<CalendarState>;
813
- export const RangeCalendarStateContext: React.Context<RangeCalendarState>;
812
+ export const CalendarStateContext: React.Context<CalendarState | null>;
813
+ export const RangeCalendarStateContext: React.Context<RangeCalendarState | null>;
814
814
  /**
815
815
  * A calendar displays one or more date grids and allows users to select a single date.
816
816
  */
@@ -1016,7 +1016,7 @@ interface DragAndDropContextValue {
1016
1016
  dropState?: DroppableCollectionState;
1017
1017
  }
1018
1018
  export const DragAndDropContext: React.Context<DragAndDropContextValue>;
1019
- export const DropIndicatorContext: React.Context<DropIndicatorContextValue>;
1019
+ export const DropIndicatorContext: React.Context<DropIndicatorContextValue | null>;
1020
1020
  interface DropIndicatorRenderProps {
1021
1021
  /**
1022
1022
  * Whether the drop indicator is currently the active drop target.
@@ -1090,7 +1090,7 @@ export interface ListBoxProps<T> extends Omit<AriaListBoxProps<T>, 'children' |
1090
1090
  orientation?: _Orientation1;
1091
1091
  }
1092
1092
  export const ListBoxContext: React.Context<ContextValue<ListBoxProps<any>, HTMLDivElement>>;
1093
- export const ListStateContext: React.Context<ListState<any>>;
1093
+ export const ListStateContext: React.Context<ListState<any> | null>;
1094
1094
  /**
1095
1095
  * A listbox displays a list of options and allows a user to select one or more of them.
1096
1096
  */
@@ -1158,7 +1158,7 @@ export interface ColorPickerRenderProps {
1158
1158
  export interface ColorPickerProps extends _ColorPickerProps1, SlotProps, Pick<RenderProps<ColorPickerRenderProps>, 'children'> {
1159
1159
  }
1160
1160
  export const ColorPickerContext: React.Context<SlottedContextValue<ColorPickerProps>>;
1161
- export const ColorPickerStateContext: React.Context<ColorPickerState>;
1161
+ export const ColorPickerStateContext: React.Context<ColorPickerState | null>;
1162
1162
  /**
1163
1163
  * A ColorPicker synchronizes a color value between multiple React Aria color components.
1164
1164
  * It simplifies building color pickers with customizable layouts via composition.
@@ -1217,7 +1217,7 @@ export interface OverlayArrowRenderProps {
1217
1217
  * The placement of the overlay relative to the trigger.
1218
1218
  * @selector [data-placement="left | right | top | bottom"]
1219
1219
  */
1220
- placement: PlacementAxis;
1220
+ placement: PlacementAxis | null;
1221
1221
  }
1222
1222
  /**
1223
1223
  * An OverlayArrow renders a custom arrow element relative to an overlay element
@@ -1268,7 +1268,7 @@ export interface PopoverRenderProps {
1268
1268
  * The placement of the popover relative to the trigger.
1269
1269
  * @selector [data-placement="left | right | top | bottom"]
1270
1270
  */
1271
- placement: PlacementAxis;
1271
+ placement: PlacementAxis | null;
1272
1272
  /**
1273
1273
  * Whether the popover is currently entering. Use this to apply animations.
1274
1274
  * @selector [data-entering]
@@ -1285,6 +1285,76 @@ export const PopoverContext: React.Context<ContextValue<PopoverProps, HTMLElemen
1285
1285
  * A popover is an overlay element positioned relative to a trigger.
1286
1286
  */
1287
1287
  export const Popover: (props: PopoverProps & React.RefAttributes<HTMLElement>) => React.ReactElement | null;
1288
+ export const KeyboardContext: React.Context<ContextValue<React.HTMLAttributes<HTMLElement>, HTMLElement>>;
1289
+ export const Keyboard: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLElement> & React.RefAttributes<HTMLElement>>;
1290
+ export const MenuContext: React.Context<ContextValue<MenuProps<any>, HTMLDivElement>>;
1291
+ export const MenuStateContext: React.Context<TreeState<any> | null>;
1292
+ export const RootMenuTriggerStateContext: React.Context<RootMenuTriggerState | null>;
1293
+ export interface MenuTriggerProps extends _MenuTriggerProps1 {
1294
+ children: ReactNode;
1295
+ }
1296
+ export function MenuTrigger(props: MenuTriggerProps): React.JSX.Element;
1297
+ export interface SubmenuTriggerProps {
1298
+ /**
1299
+ * The contents of the SubmenuTrigger. The first child should be an Item (the trigger) and the second child should be the Popover (for the submenu).
1300
+ */
1301
+ children: ReactElement[];
1302
+ /**
1303
+ * The delay time in milliseconds for the submenu to appear after hovering over the trigger.
1304
+ * @default 200
1305
+ */
1306
+ delay?: number;
1307
+ }
1308
+ /**
1309
+ * A submenu trigger is used to wrap a submenu's trigger item and the submenu itself.
1310
+ *
1311
+ * @version alpha
1312
+ */
1313
+ export const SubmenuTrigger: (props: SubmenuTriggerProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1314
+ export interface MenuProps<T> extends Omit<AriaMenuProps<T>, 'children'>, CollectionProps<T>, StyleProps, SlotProps, ScrollableProps<HTMLDivElement> {
1315
+ }
1316
+ /**
1317
+ * A menu displays a list of actions or options that a user can choose.
1318
+ */
1319
+ export const Menu: <T extends object>(props: MenuProps<T> & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1320
+ export interface MenuSectionProps<T> extends SectionProps<T>, MultipleSelection {
1321
+ }
1322
+ /**
1323
+ * A MenuSection represents a section within a Menu.
1324
+ */
1325
+ export const MenuSection: <T extends object>(props: MenuSectionProps<T> & React.RefAttributes<HTMLElement>) => React.ReactElement | null;
1326
+ export interface MenuItemRenderProps extends ItemRenderProps {
1327
+ /**
1328
+ * Whether the item has a submenu.
1329
+ *
1330
+ * @selector [data-has-submenu]
1331
+ */
1332
+ hasSubmenu: boolean;
1333
+ /**
1334
+ * Whether the item's submenu is open.
1335
+ *
1336
+ * @selector [data-open]
1337
+ */
1338
+ isOpen: boolean;
1339
+ }
1340
+ export interface MenuItemProps<T = object> extends RenderProps<MenuItemRenderProps>, LinkDOMProps, _HoverEvents1 {
1341
+ /** The unique id of the item. */
1342
+ id?: Key;
1343
+ /** The object value that this item represents. When using dynamic collections, this is set automatically. */
1344
+ value?: T;
1345
+ /** A string representation of the item's contents, used for features like typeahead. */
1346
+ textValue?: string;
1347
+ /** An accessibility label for this item. */
1348
+ 'aria-label'?: string;
1349
+ /** Whether the item is disabled. */
1350
+ isDisabled?: boolean;
1351
+ /** Handler that is called when the item is selected. */
1352
+ onAction?: () => void;
1353
+ }
1354
+ /**
1355
+ * A MenuItem represents an individual action in a Menu.
1356
+ */
1357
+ export const MenuItem: <T extends object>(props: MenuItemProps<T> & React.RefAttributes<T>) => React.ReactElement | null;
1288
1358
  export interface DialogTriggerProps extends OverlayTriggerProps {
1289
1359
  children: ReactNode;
1290
1360
  }
@@ -1296,7 +1366,7 @@ export interface DialogProps extends AriaDialogProps, StyleProps, SlotProps {
1296
1366
  children?: ReactNode | ((opts: DialogRenderProps) => ReactNode);
1297
1367
  }
1298
1368
  export const DialogContext: React.Context<ContextValue<DialogProps, HTMLElement>>;
1299
- export const OverlayTriggerStateContext: React.Context<OverlayTriggerState>;
1369
+ export const OverlayTriggerStateContext: React.Context<OverlayTriggerState | null>;
1300
1370
  /**
1301
1371
  * A DialogTrigger opens a dialog when a trigger element is pressed.
1302
1372
  */
@@ -1340,7 +1410,7 @@ export interface ComboBoxProps<T extends object> extends Omit<AriaComboBoxProps<
1340
1410
  allowsEmptyCollection?: boolean;
1341
1411
  }
1342
1412
  export const ComboBoxContext: React.Context<ContextValue<ComboBoxProps<any>, HTMLDivElement>>;
1343
- export const ComboBoxStateContext: React.Context<ComboBoxState<any>>;
1413
+ export const ComboBoxStateContext: React.Context<ComboBoxState<any> | null>;
1344
1414
  /**
1345
1415
  * A combo box combines a text input with a listbox, allowing users to filter a list of options to items matching a query.
1346
1416
  */
@@ -1367,8 +1437,8 @@ export interface TimeFieldProps<T extends TimeValue> extends Omit<AriaTimeFieldP
1367
1437
  }
1368
1438
  export const DateFieldContext: React.Context<ContextValue<DateFieldProps<any>, HTMLDivElement>>;
1369
1439
  export const TimeFieldContext: React.Context<ContextValue<TimeFieldProps<any>, HTMLDivElement>>;
1370
- export const DateFieldStateContext: React.Context<DateFieldState>;
1371
- export const TimeFieldStateContext: React.Context<TimeFieldState>;
1440
+ export const DateFieldStateContext: React.Context<DateFieldState | null>;
1441
+ export const TimeFieldStateContext: React.Context<TimeFieldState | null>;
1372
1442
  /**
1373
1443
  * A date field allows users to enter and edit date and time values using a keyboard.
1374
1444
  * Each part of a date value is displayed in an individually editable segment.
@@ -1506,8 +1576,8 @@ export interface DateRangePickerProps<T extends DateValue> extends Omit<AriaDate
1506
1576
  }
1507
1577
  export const DatePickerContext: React.Context<ContextValue<DatePickerProps<any>, HTMLDivElement>>;
1508
1578
  export const DateRangePickerContext: React.Context<ContextValue<DateRangePickerProps<any>, HTMLDivElement>>;
1509
- export const DatePickerStateContext: React.Context<DatePickerState>;
1510
- export const DateRangePickerStateContext: React.Context<DateRangePickerState>;
1579
+ export const DatePickerStateContext: React.Context<DatePickerState | null>;
1580
+ export const DateRangePickerStateContext: React.Context<DateRangePickerState | null>;
1511
1581
  /**
1512
1582
  * A date picker combines a DateField and a Calendar popover to allow users to enter or select a date and time value.
1513
1583
  */
@@ -1530,9 +1600,9 @@ export interface DisclosureGroupRenderProps {
1530
1600
  */
1531
1601
  state: DisclosureGroupState;
1532
1602
  }
1533
- export const DisclosureGroupStateContext: React.Context<DisclosureGroupState>;
1603
+ export const DisclosureGroupStateContext: React.Context<DisclosureGroupState | null>;
1534
1604
  /**
1535
- * A DisclosureGroup is a grouping of related disclosures, sometimes called an Accordion.
1605
+ * A DisclosureGroup is a grouping of related disclosures, sometimes called an accordion.
1536
1606
  * It supports both single and multiple expanded items.
1537
1607
  */
1538
1608
  export const DisclosureGroup: React.ForwardRefExoticComponent<DisclosureGroupProps & React.RefAttributes<HTMLDivElement>>;
@@ -1562,7 +1632,7 @@ export interface DisclosureRenderProps {
1562
1632
  state: DisclosureState;
1563
1633
  }
1564
1634
  export const DisclosureContext: React.Context<ContextValue<DisclosureProps, HTMLDivElement>>;
1565
- export const DisclosureStateContext: React.Context<DisclosureState>;
1635
+ export const DisclosureStateContext: React.Context<DisclosureState | null>;
1566
1636
  export interface DisclosurePanelRenderProps {
1567
1637
  /**
1568
1638
  * Whether keyboard focus is within the disclosure panel.
@@ -1724,76 +1794,6 @@ export interface GridListItemProps<T = object> extends RenderProps<GridListItemR
1724
1794
  * A GridListItem represents an individual item in a GridList.
1725
1795
  */
1726
1796
  export const GridListItem: <T extends object>(props: GridListItemProps<T> & React.RefAttributes<T>) => React.ReactElement | null;
1727
- export const KeyboardContext: React.Context<ContextValue<React.HTMLAttributes<HTMLElement>, HTMLElement>>;
1728
- export const Keyboard: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLElement> & React.RefAttributes<HTMLElement>>;
1729
- export const MenuContext: React.Context<ContextValue<MenuProps<any>, HTMLDivElement>>;
1730
- export const MenuStateContext: React.Context<TreeState<any>>;
1731
- export const RootMenuTriggerStateContext: React.Context<RootMenuTriggerState>;
1732
- export interface MenuTriggerProps extends _MenuTriggerProps1 {
1733
- children: ReactNode;
1734
- }
1735
- export function MenuTrigger(props: MenuTriggerProps): React.JSX.Element;
1736
- export interface SubmenuTriggerProps {
1737
- /**
1738
- * The contents of the SubmenuTrigger. The first child should be an Item (the trigger) and the second child should be the Popover (for the submenu).
1739
- */
1740
- children: ReactElement[];
1741
- /**
1742
- * The delay time in milliseconds for the submenu to appear after hovering over the trigger.
1743
- * @default 200
1744
- */
1745
- delay?: number;
1746
- }
1747
- /**
1748
- * A submenu trigger is used to wrap a submenu's trigger item and the submenu itself.
1749
- *
1750
- * @version alpha
1751
- */
1752
- export const SubmenuTrigger: (props: SubmenuTriggerProps & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1753
- export interface MenuProps<T> extends Omit<AriaMenuProps<T>, 'children'>, CollectionProps<T>, StyleProps, SlotProps, ScrollableProps<HTMLDivElement> {
1754
- }
1755
- /**
1756
- * A menu displays a list of actions or options that a user can choose.
1757
- */
1758
- export const Menu: <T extends object>(props: MenuProps<T> & React.RefAttributes<HTMLDivElement>) => React.ReactElement | null;
1759
- export interface MenuSectionProps<T> extends SectionProps<T>, MultipleSelection {
1760
- }
1761
- /**
1762
- * A MenuSection represents a section within a Menu.
1763
- */
1764
- export const MenuSection: <T extends object>(props: MenuSectionProps<T> & React.RefAttributes<HTMLElement>) => React.ReactElement | null;
1765
- export interface MenuItemRenderProps extends ItemRenderProps {
1766
- /**
1767
- * Whether the item has a submenu.
1768
- *
1769
- * @selector [data-has-submenu]
1770
- */
1771
- hasSubmenu: boolean;
1772
- /**
1773
- * Whether the item's submenu is open.
1774
- *
1775
- * @selector [data-open]
1776
- */
1777
- isOpen: boolean;
1778
- }
1779
- export interface MenuItemProps<T = object> extends RenderProps<MenuItemRenderProps>, LinkDOMProps, _HoverEvents1 {
1780
- /** The unique id of the item. */
1781
- id?: Key;
1782
- /** The object value that this item represents. When using dynamic collections, this is set automatically. */
1783
- value?: T;
1784
- /** A string representation of the item's contents, used for features like typeahead. */
1785
- textValue?: string;
1786
- /** An accessibility label for this item. */
1787
- 'aria-label'?: string;
1788
- /** Whether the item is disabled. */
1789
- isDisabled?: boolean;
1790
- /** Handler that is called when the item is selected. */
1791
- onAction?: () => void;
1792
- }
1793
- /**
1794
- * A MenuItem represents an individual action in a Menu.
1795
- */
1796
- export const MenuItem: <T extends object>(props: MenuItemProps<T> & React.RefAttributes<T>) => React.ReactElement | null;
1797
1797
  export interface MeterProps extends Omit<AriaMeterProps, 'label'>, RenderProps<MeterRenderProps>, SlotProps {
1798
1798
  }
1799
1799
  export interface MeterRenderProps {
@@ -1871,7 +1871,7 @@ export interface NumberFieldRenderProps {
1871
1871
  export interface NumberFieldProps extends Omit<AriaNumberFieldProps, 'label' | 'placeholder' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior'>, RACValidation, InputDOMProps, RenderProps<NumberFieldRenderProps>, SlotProps {
1872
1872
  }
1873
1873
  export const NumberFieldContext: React.Context<ContextValue<NumberFieldProps, HTMLDivElement>>;
1874
- export const NumberFieldStateContext: React.Context<NumberFieldState>;
1874
+ export const NumberFieldStateContext: React.Context<NumberFieldState | null>;
1875
1875
  /**
1876
1876
  * A number field allows a user to enter a number, and increment or decrement the value using stepper buttons.
1877
1877
  */
@@ -1964,7 +1964,7 @@ export interface RadioRenderProps {
1964
1964
  }
1965
1965
  export const RadioGroupContext: React.Context<ContextValue<RadioGroupProps, HTMLDivElement>>;
1966
1966
  export const RadioContext: React.Context<ContextValue<Partial<RadioProps>, HTMLLabelElement>>;
1967
- export const RadioGroupStateContext: React.Context<RadioGroupState>;
1967
+ export const RadioGroupStateContext: React.Context<RadioGroupState | null>;
1968
1968
  /**
1969
1969
  * A radio group allows a user to select a single item from a list of mutually exclusive options.
1970
1970
  */
@@ -2036,7 +2036,7 @@ export interface SelectRenderProps {
2036
2036
  export interface SelectProps<T extends object = {}> extends Omit<AriaSelectProps<T>, 'children' | 'label' | 'description' | 'errorMessage' | 'validationState' | 'validationBehavior' | 'items'>, RACValidation, RenderProps<SelectRenderProps>, SlotProps {
2037
2037
  }
2038
2038
  export const SelectContext: React.Context<ContextValue<SelectProps<any>, HTMLDivElement>>;
2039
- export const SelectStateContext: React.Context<SelectState<unknown>>;
2039
+ export const SelectStateContext: React.Context<SelectState<unknown> | null>;
2040
2040
  /**
2041
2041
  * A select displays a collapsible list of options and allows a user to select one of them.
2042
2042
  */
@@ -2131,8 +2131,8 @@ export interface ResizableTableContainerProps extends DOMProps, ScrollableProps<
2131
2131
  }
2132
2132
  export const ResizableTableContainer: React.ForwardRefExoticComponent<ResizableTableContainerProps & React.RefAttributes<HTMLDivElement>>;
2133
2133
  export const TableContext: React.Context<ContextValue<TableProps, HTMLTableElement>>;
2134
- export const TableStateContext: React.Context<TableState<any>>;
2135
- export const TableColumnResizeStateContext: React.Context<TableColumnResizeState<unknown>>;
2134
+ export const TableStateContext: React.Context<TableState<any> | null>;
2135
+ export const TableColumnResizeStateContext: React.Context<TableColumnResizeState<unknown> | null>;
2136
2136
  export interface TableRenderProps {
2137
2137
  /**
2138
2138
  * Whether the table is currently focused.
@@ -2405,7 +2405,7 @@ export interface VirtualizerProps<O> {
2405
2405
  export function UNSTABLE_Virtualizer<O>(props: VirtualizerProps<O>): React.JSX.Element;
2406
2406
  export class UNSTABLE_TableLayout<T> extends TableLayout<T> implements LayoutOptionsDelegate<TableLayoutProps> {
2407
2407
  useLayoutOptions(): {
2408
- columnWidths: Map<_Key1, number>;
2408
+ columnWidths: Map<_Key1, number> | undefined;
2409
2409
  };
2410
2410
  }
2411
2411
  export interface TabsProps extends Omit<AriaTabListProps<any>, 'items' | 'children'>, RenderProps<TabsRenderProps>, SlotProps {
@@ -2499,7 +2499,7 @@ export interface TabPanelRenderProps {
2499
2499
  state: TabListState<unknown>;
2500
2500
  }
2501
2501
  export const TabsContext: React.Context<ContextValue<TabsProps, HTMLDivElement>>;
2502
- export const TabListStateContext: React.Context<TabListState<object>>;
2502
+ export const TabListStateContext: React.Context<TabListState<object> | null>;
2503
2503
  /**
2504
2504
  * Tabs organize content into multiple sections and allow users to navigate between them.
2505
2505
  */
@@ -2628,7 +2628,7 @@ export interface ToggleButtonGroupRenderProps {
2628
2628
  export interface ToggleButtonGroupProps extends AriaToggleButtonGroupProps, RenderProps<ToggleButtonGroupRenderProps>, SlotProps {
2629
2629
  }
2630
2630
  export const ToggleButtonGroupContext: React.Context<ContextValue<ToggleButtonGroupProps, HTMLDivElement>>;
2631
- export const ToggleGroupStateContext: React.Context<ToggleGroupState>;
2631
+ export const ToggleGroupStateContext: React.Context<ToggleGroupState | null>;
2632
2632
  /**
2633
2633
  * A toggle button group allows a user to toggle multiple options, with single or multiple selection.
2634
2634
  */
@@ -2702,7 +2702,7 @@ export interface TooltipRenderProps {
2702
2702
  * The placement of the tooltip relative to the trigger.
2703
2703
  * @selector [data-placement="left | right | top | bottom"]
2704
2704
  */
2705
- placement: PlacementAxis;
2705
+ placement: PlacementAxis | null;
2706
2706
  /**
2707
2707
  * Whether the tooltip is currently entering. Use this to apply animations.
2708
2708
  * @selector [data-entering]
@@ -2718,7 +2718,7 @@ export interface TooltipRenderProps {
2718
2718
  */
2719
2719
  state: TooltipTriggerState;
2720
2720
  }
2721
- export const TooltipTriggerStateContext: React.Context<TooltipTriggerState>;
2721
+ export const TooltipTriggerStateContext: React.Context<TooltipTriggerState | null>;
2722
2722
  export const TooltipContext: React.Context<ContextValue<TooltipProps, HTMLDivElement>>;
2723
2723
  /**
2724
2724
  * TooltipTrigger wraps around a trigger element and a Tooltip. It handles opening and closing
@@ -2765,7 +2765,7 @@ export interface TreeProps<T> extends Omit<AriaTreeGridListProps<T>, 'children'>
2765
2765
  disabledBehavior?: _DisabledBehavior1;
2766
2766
  }
2767
2767
  export const UNSTABLE_TreeContext: React.Context<ContextValue<TreeProps<any>, HTMLDivElement>>;
2768
- export const UNSTABLE_TreeStateContext: React.Context<TreeState<any>>;
2768
+ export const UNSTABLE_TreeStateContext: React.Context<TreeState<any> | null>;
2769
2769
  /**
2770
2770
  * A tree provides users with a way to navigate nested hierarchical information, with support for keyboard navigation
2771
2771
  * and selection.