react-aria-components 3.0.0-nightly-ab9fd5c68-241125 → 3.0.0-nightly-10a43de88-241127
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Breadcrumbs.main.js +2 -5
- package/dist/Breadcrumbs.main.js.map +1 -1
- package/dist/Breadcrumbs.mjs +3 -6
- package/dist/Breadcrumbs.module.js +3 -6
- package/dist/Breadcrumbs.module.js.map +1 -1
- package/dist/Button.main.js +2 -5
- package/dist/Button.main.js.map +1 -1
- package/dist/Button.mjs +2 -5
- package/dist/Button.module.js +2 -5
- package/dist/Button.module.js.map +1 -1
- package/dist/Calendar.main.js +9 -22
- package/dist/Calendar.main.js.map +1 -1
- package/dist/Calendar.mjs +9 -22
- package/dist/Calendar.module.js +9 -22
- package/dist/Calendar.module.js.map +1 -1
- package/dist/Checkbox.main.js +5 -12
- package/dist/Checkbox.main.js.map +1 -1
- package/dist/Checkbox.mjs +6 -13
- package/dist/Checkbox.module.js +6 -13
- package/dist/Checkbox.module.js.map +1 -1
- package/dist/ColorArea.main.js +2 -5
- package/dist/ColorArea.main.js.map +1 -1
- package/dist/ColorArea.mjs +3 -6
- package/dist/ColorArea.module.js +3 -6
- package/dist/ColorArea.module.js.map +1 -1
- package/dist/ColorField.main.js +2 -5
- package/dist/ColorField.main.js.map +1 -1
- package/dist/ColorField.mjs +2 -5
- package/dist/ColorField.module.js +2 -5
- package/dist/ColorField.module.js.map +1 -1
- package/dist/ColorSlider.main.js +2 -5
- package/dist/ColorSlider.main.js.map +1 -1
- package/dist/ColorSlider.mjs +2 -5
- package/dist/ColorSlider.module.js +2 -5
- package/dist/ColorSlider.module.js.map +1 -1
- package/dist/ColorSwatch.main.js +2 -5
- package/dist/ColorSwatch.main.js.map +1 -1
- package/dist/ColorSwatch.mjs +2 -5
- package/dist/ColorSwatch.module.js +2 -5
- package/dist/ColorSwatch.module.js.map +1 -1
- package/dist/ColorSwatchPicker.main.js +4 -8
- package/dist/ColorSwatchPicker.main.js.map +1 -1
- package/dist/ColorSwatchPicker.mjs +5 -9
- package/dist/ColorSwatchPicker.module.js +5 -9
- package/dist/ColorSwatchPicker.module.js.map +1 -1
- package/dist/ColorThumb.main.js +2 -5
- package/dist/ColorThumb.main.js.map +1 -1
- package/dist/ColorThumb.mjs +3 -6
- package/dist/ColorThumb.module.js +3 -6
- package/dist/ColorThumb.module.js.map +1 -1
- package/dist/ColorWheel.main.js +5 -11
- package/dist/ColorWheel.main.js.map +1 -1
- package/dist/ColorWheel.mjs +6 -12
- package/dist/ColorWheel.module.js +6 -12
- package/dist/ColorWheel.module.js.map +1 -1
- package/dist/ComboBox.main.js +2 -5
- package/dist/ComboBox.main.js.map +1 -1
- package/dist/ComboBox.mjs +3 -6
- package/dist/ComboBox.module.js +3 -6
- package/dist/ComboBox.module.js.map +1 -1
- package/dist/DateField.main.js +8 -23
- package/dist/DateField.main.js.map +1 -1
- package/dist/DateField.mjs +9 -24
- package/dist/DateField.module.js +9 -24
- package/dist/DateField.module.js.map +1 -1
- package/dist/DatePicker.main.js +4 -11
- package/dist/DatePicker.main.js.map +1 -1
- package/dist/DatePicker.mjs +5 -12
- package/dist/DatePicker.module.js +5 -12
- package/dist/DatePicker.module.js.map +1 -1
- package/dist/Dialog.main.js +2 -5
- package/dist/Dialog.main.js.map +1 -1
- package/dist/Dialog.mjs +3 -6
- package/dist/Dialog.module.js +3 -6
- package/dist/Dialog.module.js.map +1 -1
- package/dist/Disclosure.main.js +6 -16
- package/dist/Disclosure.main.js.map +1 -1
- package/dist/Disclosure.mjs +6 -16
- package/dist/Disclosure.module.js +6 -16
- package/dist/Disclosure.module.js.map +1 -1
- package/dist/DragAndDrop.main.js +2 -5
- package/dist/DragAndDrop.main.js.map +1 -1
- package/dist/DragAndDrop.mjs +3 -6
- package/dist/DragAndDrop.module.js +3 -6
- package/dist/DragAndDrop.module.js.map +1 -1
- package/dist/DropZone.main.js +2 -5
- package/dist/DropZone.main.js.map +1 -1
- package/dist/DropZone.mjs +3 -6
- package/dist/DropZone.module.js +3 -6
- package/dist/DropZone.module.js.map +1 -1
- package/dist/FieldError.main.js +2 -5
- package/dist/FieldError.main.js.map +1 -1
- package/dist/FieldError.mjs +3 -6
- package/dist/FieldError.module.js +3 -6
- package/dist/FieldError.module.js.map +1 -1
- package/dist/FileTrigger.main.js +2 -5
- package/dist/FileTrigger.main.js.map +1 -1
- package/dist/FileTrigger.mjs +2 -5
- package/dist/FileTrigger.module.js +2 -5
- package/dist/FileTrigger.module.js.map +1 -1
- package/dist/Form.main.js +2 -6
- package/dist/Form.main.js.map +1 -1
- package/dist/Form.mjs +2 -6
- package/dist/Form.module.js +2 -6
- package/dist/Form.module.js.map +1 -1
- package/dist/GridList.main.js +2 -6
- package/dist/GridList.main.js.map +1 -1
- package/dist/GridList.mjs +3 -7
- package/dist/GridList.module.js +3 -7
- package/dist/GridList.module.js.map +1 -1
- package/dist/Group.main.js +2 -5
- package/dist/Group.main.js.map +1 -1
- package/dist/Group.mjs +2 -5
- package/dist/Group.module.js +2 -5
- package/dist/Group.module.js.map +1 -1
- package/dist/Heading.main.js +2 -3
- package/dist/Heading.main.js.map +1 -1
- package/dist/Heading.mjs +2 -3
- package/dist/Heading.module.js +2 -3
- package/dist/Heading.module.js.map +1 -1
- package/dist/Input.main.js +2 -5
- package/dist/Input.main.js.map +1 -1
- package/dist/Input.mjs +2 -5
- package/dist/Input.module.js +2 -5
- package/dist/Input.module.js.map +1 -1
- package/dist/Keyboard.main.js +2 -3
- package/dist/Keyboard.main.js.map +1 -1
- package/dist/Keyboard.mjs +2 -3
- package/dist/Keyboard.module.js +2 -3
- package/dist/Keyboard.module.js.map +1 -1
- package/dist/Label.main.js +2 -3
- package/dist/Label.main.js.map +1 -1
- package/dist/Label.mjs +2 -3
- package/dist/Label.module.js +2 -3
- package/dist/Label.module.js.map +1 -1
- package/dist/Link.main.js +2 -6
- package/dist/Link.main.js.map +1 -1
- package/dist/Link.mjs +2 -6
- package/dist/Link.module.js +2 -6
- package/dist/Link.module.js.map +1 -1
- package/dist/ListBox.main.js +5 -10
- package/dist/ListBox.main.js.map +1 -1
- package/dist/ListBox.mjs +6 -11
- package/dist/ListBox.module.js +6 -11
- package/dist/ListBox.module.js.map +1 -1
- package/dist/Menu.main.js +5 -10
- package/dist/Menu.main.js.map +1 -1
- package/dist/Menu.mjs +5 -10
- package/dist/Menu.module.js +5 -10
- package/dist/Menu.module.js.map +1 -1
- package/dist/Meter.main.js +2 -5
- package/dist/Meter.main.js.map +1 -1
- package/dist/Meter.mjs +2 -5
- package/dist/Meter.module.js +2 -5
- package/dist/Meter.module.js.map +1 -1
- package/dist/Modal.main.js +3 -6
- package/dist/Modal.main.js.map +1 -1
- package/dist/Modal.mjs +4 -7
- package/dist/Modal.module.js +4 -7
- package/dist/Modal.module.js.map +1 -1
- package/dist/NumberField.main.js +2 -5
- package/dist/NumberField.main.js.map +1 -1
- package/dist/NumberField.mjs +3 -6
- package/dist/NumberField.module.js +3 -6
- package/dist/NumberField.module.js.map +1 -1
- package/dist/OverlayArrow.main.js +2 -6
- package/dist/OverlayArrow.main.js.map +1 -1
- package/dist/OverlayArrow.mjs +2 -6
- package/dist/OverlayArrow.module.js +2 -6
- package/dist/OverlayArrow.module.js.map +1 -1
- package/dist/Popover.main.js +2 -5
- package/dist/Popover.main.js.map +1 -1
- package/dist/Popover.mjs +3 -6
- package/dist/Popover.module.js +3 -6
- package/dist/Popover.module.js.map +1 -1
- package/dist/ProgressBar.main.js +2 -6
- package/dist/ProgressBar.main.js.map +1 -1
- package/dist/ProgressBar.mjs +2 -6
- package/dist/ProgressBar.module.js +2 -6
- package/dist/ProgressBar.module.js.map +1 -1
- package/dist/RadioGroup.main.js +4 -10
- package/dist/RadioGroup.main.js.map +1 -1
- package/dist/RadioGroup.mjs +4 -10
- package/dist/RadioGroup.module.js +4 -10
- package/dist/RadioGroup.module.js.map +1 -1
- package/dist/SearchField.main.js +2 -5
- package/dist/SearchField.main.js.map +1 -1
- package/dist/SearchField.mjs +3 -6
- package/dist/SearchField.module.js +3 -6
- package/dist/SearchField.module.js.map +1 -1
- package/dist/Select.main.js +5 -12
- package/dist/Select.main.js.map +1 -1
- package/dist/Select.mjs +6 -13
- package/dist/Select.module.js +6 -13
- package/dist/Select.module.js.map +1 -1
- package/dist/Slider.main.js +8 -20
- package/dist/Slider.main.js.map +1 -1
- package/dist/Slider.mjs +9 -21
- package/dist/Slider.module.js +9 -21
- package/dist/Slider.module.js.map +1 -1
- package/dist/Switch.main.js +2 -5
- package/dist/Switch.main.js.map +1 -1
- package/dist/Switch.mjs +2 -5
- package/dist/Switch.module.js +2 -5
- package/dist/Switch.module.js.map +1 -1
- package/dist/Table.main.js +6 -12
- package/dist/Table.main.js.map +1 -1
- package/dist/Table.mjs +7 -13
- package/dist/Table.module.js +7 -13
- package/dist/Table.module.js.map +1 -1
- package/dist/Tabs.main.js +6 -16
- package/dist/Tabs.main.js.map +1 -1
- package/dist/Tabs.mjs +7 -17
- package/dist/Tabs.module.js +7 -17
- package/dist/Tabs.module.js.map +1 -1
- package/dist/TagGroup.main.js +4 -10
- package/dist/TagGroup.main.js.map +1 -1
- package/dist/TagGroup.mjs +5 -11
- package/dist/TagGroup.module.js +5 -11
- package/dist/TagGroup.module.js.map +1 -1
- package/dist/Text.main.js +2 -3
- package/dist/Text.main.js.map +1 -1
- package/dist/Text.mjs +2 -3
- package/dist/Text.module.js +2 -3
- package/dist/Text.module.js.map +1 -1
- package/dist/TextArea.main.js +2 -5
- package/dist/TextArea.main.js.map +1 -1
- package/dist/TextArea.mjs +2 -5
- package/dist/TextArea.module.js +2 -5
- package/dist/TextArea.module.js.map +1 -1
- package/dist/TextField.main.js +2 -5
- package/dist/TextField.main.js.map +1 -1
- package/dist/TextField.mjs +3 -6
- package/dist/TextField.module.js +3 -6
- package/dist/TextField.module.js.map +1 -1
- package/dist/ToggleButton.main.js +2 -5
- package/dist/ToggleButton.main.js.map +1 -1
- package/dist/ToggleButton.mjs +3 -6
- package/dist/ToggleButton.module.js +3 -6
- package/dist/ToggleButton.module.js.map +1 -1
- package/dist/ToggleButtonGroup.main.js +2 -5
- package/dist/ToggleButtonGroup.main.js.map +1 -1
- package/dist/ToggleButtonGroup.mjs +2 -5
- package/dist/ToggleButtonGroup.module.js +2 -5
- package/dist/ToggleButtonGroup.module.js.map +1 -1
- package/dist/Toolbar.main.js +2 -6
- package/dist/Toolbar.main.js.map +1 -1
- package/dist/Toolbar.mjs +2 -6
- package/dist/Toolbar.module.js +2 -6
- package/dist/Toolbar.module.js.map +1 -1
- package/dist/Tooltip.main.js +2 -5
- package/dist/Tooltip.main.js.map +1 -1
- package/dist/Tooltip.mjs +3 -6
- package/dist/Tooltip.module.js +3 -6
- package/dist/Tooltip.module.js.map +1 -1
- package/dist/Tree.main.js +2 -6
- package/dist/Tree.main.js.map +1 -1
- package/dist/Tree.mjs +3 -7
- package/dist/Tree.module.js +3 -7
- package/dist/Tree.module.js.map +1 -1
- package/dist/types.d.ts +10 -10
- package/dist/types.d.ts.map +1 -1
- package/package.json +30 -30
- package/src/Breadcrumbs.tsx +5 -8
- package/src/Button.tsx +5 -8
- package/src/Calendar.tsx +19 -31
- package/src/Checkbox.tsx +11 -17
- package/src/ColorArea.tsx +5 -8
- package/src/ColorField.tsx +5 -8
- package/src/ColorSlider.tsx +5 -8
- package/src/ColorSwatch.tsx +5 -8
- package/src/ColorSwatchPicker.tsx +7 -13
- package/src/ColorThumb.tsx +5 -8
- package/src/ColorWheel.tsx +10 -16
- package/src/ComboBox.tsx +5 -8
- package/src/DateField.tsx +21 -33
- package/src/DatePicker.tsx +9 -15
- package/src/Dialog.tsx +5 -8
- package/src/Disclosure.tsx +16 -25
- package/src/DragAndDrop.tsx +5 -8
- package/src/DropZone.tsx +5 -8
- package/src/FieldError.tsx +5 -8
- package/src/FileTrigger.tsx +5 -8
- package/src/Form.tsx +6 -9
- package/src/GridList.tsx +6 -9
- package/src/Group.tsx +5 -8
- package/src/Heading.tsx +2 -5
- package/src/Input.tsx +5 -8
- package/src/Keyboard.tsx +2 -5
- package/src/Label.tsx +2 -5
- package/src/Link.tsx +6 -9
- package/src/ListBox.tsx +8 -12
- package/src/Menu.tsx +8 -12
- package/src/Meter.tsx +5 -8
- package/src/Modal.tsx +5 -8
- package/src/NumberField.tsx +5 -8
- package/src/OverlayArrow.tsx +6 -9
- package/src/Popover.tsx +5 -8
- package/src/ProgressBar.tsx +6 -9
- package/src/RadioGroup.tsx +10 -16
- package/src/SearchField.tsx +5 -8
- package/src/Select.tsx +11 -17
- package/src/Slider.tsx +20 -32
- package/src/Switch.tsx +5 -8
- package/src/Table.tsx +10 -19
- package/src/Tabs.tsx +14 -23
- package/src/TagGroup.tsx +8 -14
- package/src/Text.tsx +2 -5
- package/src/TextArea.tsx +5 -7
- package/src/TextField.tsx +5 -8
- package/src/ToggleButton.tsx +5 -8
- package/src/ToggleButtonGroup.tsx +5 -8
- package/src/Toolbar.tsx +6 -9
- package/src/Tooltip.tsx +5 -8
- package/src/Tree.tsx +6 -9
package/src/Form.tsx
CHANGED
|
@@ -27,7 +27,11 @@ export interface FormProps extends SharedFormProps, DOMProps {
|
|
|
27
27
|
|
|
28
28
|
export const FormContext = createContext<ContextValue<FormProps, HTMLFormElement>>(null);
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
/**
|
|
31
|
+
* A form is a group of inputs that allows users to submit data to a server,
|
|
32
|
+
* with support for providing field validation errors.
|
|
33
|
+
*/
|
|
34
|
+
export const Form = forwardRef(function Form(props: FormProps, ref: ForwardedRef<HTMLFormElement>) {
|
|
31
35
|
[props, ref] = useContextProps(props, ref, FormContext);
|
|
32
36
|
let {validationErrors, validationBehavior = 'native', children, className, ...domProps} = props;
|
|
33
37
|
return (
|
|
@@ -39,11 +43,4 @@ function Form(props: FormProps, ref: ForwardedRef<HTMLFormElement>) {
|
|
|
39
43
|
</FormContext.Provider>
|
|
40
44
|
</form>
|
|
41
45
|
);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* A form is a group of inputs that allows users to submit data to a server,
|
|
46
|
-
* with support for providing field validation errors.
|
|
47
|
-
*/
|
|
48
|
-
const _Form = forwardRef(Form);
|
|
49
|
-
export {_Form as Form};
|
|
46
|
+
});
|
package/src/GridList.tsx
CHANGED
|
@@ -73,7 +73,11 @@ export interface GridListProps<T> extends Omit<AriaGridListProps<T>, 'children'>
|
|
|
73
73
|
|
|
74
74
|
export const GridListContext = createContext<ContextValue<GridListProps<any>, HTMLDivElement>>(null);
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
/**
|
|
77
|
+
* A grid list displays a list of interactive items, with support for keyboard navigation,
|
|
78
|
+
* single or multiple selection, and row actions.
|
|
79
|
+
*/
|
|
80
|
+
export const GridList = /*#__PURE__*/ (forwardRef as forwardRefType)(function GridList<T extends object>(props: GridListProps<T>, ref: ForwardedRef<HTMLDivElement>) {
|
|
77
81
|
// Render the portal first so that we have the collection by the time we render the DOM in SSR.
|
|
78
82
|
[props, ref] = useContextProps(props, ref, GridListContext);
|
|
79
83
|
|
|
@@ -82,7 +86,7 @@ function GridList<T extends object>(props: GridListProps<T>, ref: ForwardedRef<H
|
|
|
82
86
|
{collection => <GridListInner props={props} collection={collection} gridListRef={ref} />}
|
|
83
87
|
</CollectionBuilder>
|
|
84
88
|
);
|
|
85
|
-
}
|
|
89
|
+
});
|
|
86
90
|
|
|
87
91
|
interface GridListInnerProps<T extends object> {
|
|
88
92
|
props: GridListProps<T>,
|
|
@@ -243,13 +247,6 @@ function GridListInner<T extends object>({props, collection, gridListRef: ref}:
|
|
|
243
247
|
);
|
|
244
248
|
}
|
|
245
249
|
|
|
246
|
-
/**
|
|
247
|
-
* A grid list displays a list of interactive items, with support for keyboard navigation,
|
|
248
|
-
* single or multiple selection, and row actions.
|
|
249
|
-
*/
|
|
250
|
-
const _GridList = /*#__PURE__*/ (forwardRef as forwardRefType)(GridList);
|
|
251
|
-
export {_GridList as GridList};
|
|
252
|
-
|
|
253
250
|
export interface GridListItemRenderProps extends ItemRenderProps {}
|
|
254
251
|
|
|
255
252
|
export interface GridListItemProps<T = object> extends RenderProps<GridListItemRenderProps>, LinkDOMProps, HoverEvents {
|
package/src/Group.tsx
CHANGED
|
@@ -60,7 +60,10 @@ export interface GroupProps extends AriaLabelingProps, Omit<HTMLAttributes<HTMLE
|
|
|
60
60
|
|
|
61
61
|
export const GroupContext = createContext<ContextValue<GroupProps, HTMLDivElement>>({});
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
/**
|
|
64
|
+
* A group represents a set of related UI controls, and supports interactive states for styling.
|
|
65
|
+
*/
|
|
66
|
+
export const Group = /*#__PURE__*/ (forwardRef as forwardRefType)(function Group(props: GroupProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
64
67
|
[props, ref] = useContextProps(props, ref, GroupContext);
|
|
65
68
|
let {isDisabled, isInvalid, onHoverStart, onHoverChange, onHoverEnd, ...otherProps} = props;
|
|
66
69
|
|
|
@@ -92,10 +95,4 @@ function Group(props: GroupProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
|
92
95
|
{renderProps.children}
|
|
93
96
|
</div>
|
|
94
97
|
);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* A group represents a set of related UI controls, and supports interactive states for styling.
|
|
99
|
-
*/
|
|
100
|
-
const _Group = /*#__PURE__*/ (forwardRef as forwardRefType)(Group);
|
|
101
|
-
export {_Group as Group};
|
|
98
|
+
});
|
package/src/Heading.tsx
CHANGED
|
@@ -18,7 +18,7 @@ export interface HeadingProps extends HTMLAttributes<HTMLElement> {
|
|
|
18
18
|
level?: number
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
function Heading(props: HeadingProps, ref: ForwardedRef<HTMLHeadingElement>) {
|
|
21
|
+
export const Heading = forwardRef(function Heading(props: HeadingProps, ref: ForwardedRef<HTMLHeadingElement>) {
|
|
22
22
|
[props, ref] = useContextProps(props, ref, HeadingContext);
|
|
23
23
|
let {children, level = 3, className, ...domProps} = props;
|
|
24
24
|
let Element = `h${level}` as ElementType;
|
|
@@ -28,7 +28,4 @@ function Heading(props: HeadingProps, ref: ForwardedRef<HTMLHeadingElement>) {
|
|
|
28
28
|
{children}
|
|
29
29
|
</Element>
|
|
30
30
|
);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
const _Heading = forwardRef(Heading);
|
|
34
|
-
export {_Heading as Heading};
|
|
31
|
+
});
|
package/src/Input.tsx
CHANGED
|
@@ -53,7 +53,10 @@ let filterHoverProps = (props: InputProps) => {
|
|
|
53
53
|
return otherProps;
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
-
|
|
56
|
+
/**
|
|
57
|
+
* An input allows a user to input text.
|
|
58
|
+
*/
|
|
59
|
+
export const Input = /*#__PURE__*/ createHideableComponent(function Input(props: InputProps, ref: ForwardedRef<HTMLInputElement>) {
|
|
57
60
|
[props, ref] = useContextProps(props, ref, InputContext);
|
|
58
61
|
|
|
59
62
|
let {hoverProps, isHovered} = useHover(props);
|
|
@@ -86,10 +89,4 @@ function Input(props: InputProps, ref: ForwardedRef<HTMLInputElement>) {
|
|
|
86
89
|
data-focus-visible={isFocusVisible || undefined}
|
|
87
90
|
data-invalid={isInvalid || undefined} />
|
|
88
91
|
);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* An input allows a user to input text.
|
|
93
|
-
*/
|
|
94
|
-
const _Input = /*#__PURE__*/ createHideableComponent(Input);
|
|
95
|
-
export {_Input as Input};
|
|
92
|
+
});
|
package/src/Keyboard.tsx
CHANGED
|
@@ -15,10 +15,7 @@ import React, {createContext, ForwardedRef, forwardRef, HTMLAttributes} from 're
|
|
|
15
15
|
|
|
16
16
|
export const KeyboardContext = createContext<ContextValue<HTMLAttributes<HTMLElement>, HTMLElement>>({});
|
|
17
17
|
|
|
18
|
-
function Keyboard(props: HTMLAttributes<HTMLElement>, ref: ForwardedRef<HTMLElement>) {
|
|
18
|
+
export const Keyboard = forwardRef(function Keyboard(props: HTMLAttributes<HTMLElement>, ref: ForwardedRef<HTMLElement>) {
|
|
19
19
|
[props, ref] = useContextProps(props, ref, KeyboardContext);
|
|
20
20
|
return <kbd dir="ltr" {...props} ref={ref} />;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
const _Keyboard = forwardRef(Keyboard);
|
|
24
|
-
export {_Keyboard as Keyboard};
|
|
21
|
+
});
|
package/src/Label.tsx
CHANGED
|
@@ -20,12 +20,9 @@ export interface LabelProps extends LabelHTMLAttributes<HTMLLabelElement> {
|
|
|
20
20
|
|
|
21
21
|
export const LabelContext = createContext<ContextValue<LabelProps, HTMLLabelElement>>({});
|
|
22
22
|
|
|
23
|
-
function Label(props: LabelProps, ref: ForwardedRef<HTMLLabelElement>) {
|
|
23
|
+
export const Label = /*#__PURE__*/ createHideableComponent(function Label(props: LabelProps, ref: ForwardedRef<HTMLLabelElement>) {
|
|
24
24
|
[props, ref] = useContextProps(props, ref, LabelContext);
|
|
25
25
|
let {elementType: ElementType = 'label', ...labelProps} = props;
|
|
26
26
|
// @ts-ignore
|
|
27
27
|
return <ElementType className="react-aria-Label" {...labelProps} ref={ref} />;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
const _Label = /*#__PURE__*/ createHideableComponent(Label);
|
|
31
|
-
export {_Label as Label};
|
|
28
|
+
});
|
package/src/Link.tsx
CHANGED
|
@@ -52,7 +52,11 @@ export interface LinkRenderProps {
|
|
|
52
52
|
|
|
53
53
|
export const LinkContext = createContext<ContextValue<LinkProps, HTMLAnchorElement>>(null);
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
/**
|
|
56
|
+
* A link allows a user to navigate to another page or resource within a web page
|
|
57
|
+
* or application.
|
|
58
|
+
*/
|
|
59
|
+
export const Link = /*#__PURE__*/ (forwardRef as forwardRefType)(function Link(props: LinkProps, ref: ForwardedRef<HTMLAnchorElement>) {
|
|
56
60
|
[props, ref] = useContextProps(props, ref, LinkContext);
|
|
57
61
|
|
|
58
62
|
let ElementType: ElementType = props.href && !props.isDisabled ? 'a' : 'span';
|
|
@@ -88,11 +92,4 @@ function Link(props: LinkProps, ref: ForwardedRef<HTMLAnchorElement>) {
|
|
|
88
92
|
{renderProps.children}
|
|
89
93
|
</ElementType>
|
|
90
94
|
);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* A link allows a user to navigate to another page or resource within a web page
|
|
95
|
-
* or application.
|
|
96
|
-
*/
|
|
97
|
-
const _Link = /*#__PURE__*/ (forwardRef as forwardRefType)(Link);
|
|
98
|
-
export {_Link as Link};
|
|
95
|
+
});
|
package/src/ListBox.tsx
CHANGED
|
@@ -79,7 +79,10 @@ export interface ListBoxProps<T> extends Omit<AriaListBoxProps<T>, 'children' |
|
|
|
79
79
|
export const ListBoxContext = createContext<ContextValue<ListBoxProps<any>, HTMLDivElement>>(null);
|
|
80
80
|
export const ListStateContext = createContext<ListState<any> | null>(null);
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
/**
|
|
83
|
+
* A listbox displays a list of options and allows a user to select one or more of them.
|
|
84
|
+
*/
|
|
85
|
+
export const ListBox = /*#__PURE__*/ (forwardRef as forwardRefType)(function ListBox<T extends object>(props: ListBoxProps<T>, ref: ForwardedRef<HTMLDivElement>) {
|
|
83
86
|
[props, ref] = useContextProps(props, ref, ListBoxContext);
|
|
84
87
|
let state = useContext(ListStateContext);
|
|
85
88
|
|
|
@@ -98,7 +101,7 @@ function ListBox<T extends object>(props: ListBoxProps<T>, ref: ForwardedRef<HTM
|
|
|
98
101
|
{collection => <StandaloneListBox props={props} listBoxRef={ref} collection={collection} />}
|
|
99
102
|
</CollectionBuilder>
|
|
100
103
|
);
|
|
101
|
-
}
|
|
104
|
+
});
|
|
102
105
|
|
|
103
106
|
function StandaloneListBox({props, listBoxRef, collection}) {
|
|
104
107
|
props = {...props, collection, children: null, items: null};
|
|
@@ -107,12 +110,6 @@ function StandaloneListBox({props, listBoxRef, collection}) {
|
|
|
107
110
|
return <ListBoxInner state={state} props={props} listBoxRef={listBoxRef} />;
|
|
108
111
|
}
|
|
109
112
|
|
|
110
|
-
/**
|
|
111
|
-
* A listbox displays a list of options and allows a user to select one or more of them.
|
|
112
|
-
*/
|
|
113
|
-
const _ListBox = /*#__PURE__*/ (forwardRef as forwardRefType)(ListBox);
|
|
114
|
-
export {_ListBox as ListBox};
|
|
115
|
-
|
|
116
113
|
interface ListBoxInnerProps<T> {
|
|
117
114
|
state: ListState<T>,
|
|
118
115
|
props: ListBoxProps<T> & AriaListBoxOptions<T>,
|
|
@@ -246,7 +243,7 @@ function ListBoxInner<T extends object>({state, props, listBoxRef}: ListBoxInner
|
|
|
246
243
|
[DragAndDropContext, {dragAndDropHooks, dragState, dropState}],
|
|
247
244
|
[SeparatorContext, {elementType: 'div'}],
|
|
248
245
|
[DropIndicatorContext, {render: ListBoxDropIndicatorWrapper}],
|
|
249
|
-
[SectionContext, {name: 'ListBoxSection', render:
|
|
246
|
+
[SectionContext, {name: 'ListBoxSection', render: ListBoxSectionInner}]
|
|
250
247
|
]}>
|
|
251
248
|
<CollectionRoot
|
|
252
249
|
collection={collection}
|
|
@@ -263,7 +260,7 @@ function ListBoxInner<T extends object>({state, props, listBoxRef}: ListBoxInner
|
|
|
263
260
|
|
|
264
261
|
export interface ListBoxSectionProps<T> extends SectionProps<T> {}
|
|
265
262
|
|
|
266
|
-
function
|
|
263
|
+
function ListBoxSectionInner<T extends object>(props: ListBoxSectionProps<T>, ref: ForwardedRef<HTMLElement>, section: Node<T>, className = 'react-aria-ListBoxSection') {
|
|
267
264
|
let state = useContext(ListStateContext)!;
|
|
268
265
|
let {dragAndDropHooks, dropState} = useContext(DragAndDropContext)!;
|
|
269
266
|
let {CollectionBranch} = useContext(CollectionRendererContext);
|
|
@@ -298,8 +295,7 @@ function ListBoxSection<T extends object>(props: ListBoxSectionProps<T>, ref: Fo
|
|
|
298
295
|
/**
|
|
299
296
|
* A ListBoxSection represents a section within a ListBox.
|
|
300
297
|
*/
|
|
301
|
-
const
|
|
302
|
-
export {_ListBoxSection as ListBoxSection};
|
|
298
|
+
export const ListBoxSection = /*#__PURE__*/ createBranchComponent('section', ListBoxSectionInner);
|
|
303
299
|
|
|
304
300
|
export interface ListBoxItemRenderProps extends ItemRenderProps {}
|
|
305
301
|
|
package/src/Menu.tsx
CHANGED
|
@@ -151,7 +151,10 @@ export const SubmenuTrigger = /*#__PURE__*/ createBranchComponent('submenutrigg
|
|
|
151
151
|
|
|
152
152
|
export interface MenuProps<T> extends Omit<AriaMenuProps<T>, 'children'>, CollectionProps<T>, StyleProps, SlotProps, ScrollableProps<HTMLDivElement> {}
|
|
153
153
|
|
|
154
|
-
|
|
154
|
+
/**
|
|
155
|
+
* A menu displays a list of actions or options that a user can choose.
|
|
156
|
+
*/
|
|
157
|
+
export const Menu = /*#__PURE__*/ (forwardRef as forwardRefType)(function Menu<T extends object>(props: MenuProps<T>, ref: ForwardedRef<HTMLDivElement>) {
|
|
155
158
|
[props, ref] = useContextProps(props, ref, MenuContext);
|
|
156
159
|
|
|
157
160
|
// Delay rendering the actual menu until we have the collection so that auto focus works properly.
|
|
@@ -160,7 +163,7 @@ function Menu<T extends object>(props: MenuProps<T>, ref: ForwardedRef<HTMLDivEl
|
|
|
160
163
|
{collection => collection.size > 0 && <MenuInner props={props} collection={collection} menuRef={ref} />}
|
|
161
164
|
</CollectionBuilder>
|
|
162
165
|
);
|
|
163
|
-
}
|
|
166
|
+
});
|
|
164
167
|
|
|
165
168
|
interface MenuInnerProps<T> {
|
|
166
169
|
props: MenuProps<T>,
|
|
@@ -197,7 +200,7 @@ function MenuInner<T extends object>({props, collection, menuRef: ref}: MenuInne
|
|
|
197
200
|
values={[
|
|
198
201
|
[MenuStateContext, state],
|
|
199
202
|
[SeparatorContext, {elementType: 'div'}],
|
|
200
|
-
[SectionContext, {name: 'MenuSection', render:
|
|
203
|
+
[SectionContext, {name: 'MenuSection', render: MenuSectionInner}],
|
|
201
204
|
[SubmenuTriggerContext, {parentMenuRef: ref}],
|
|
202
205
|
[MenuItemContext, null],
|
|
203
206
|
[SelectionManagerContext, state.selectionManager]
|
|
@@ -212,12 +215,6 @@ function MenuInner<T extends object>({props, collection, menuRef: ref}: MenuInne
|
|
|
212
215
|
);
|
|
213
216
|
}
|
|
214
217
|
|
|
215
|
-
/**
|
|
216
|
-
* A menu displays a list of actions or options that a user can choose.
|
|
217
|
-
*/
|
|
218
|
-
const _Menu = /*#__PURE__*/ (forwardRef as forwardRefType)(Menu);
|
|
219
|
-
export {_Menu as Menu};
|
|
220
|
-
|
|
221
218
|
export interface MenuSectionProps<T> extends SectionProps<T>, MultipleSelection {}
|
|
222
219
|
|
|
223
220
|
// A subclass of SelectionManager that forwards focus-related properties to the parent,
|
|
@@ -251,7 +248,7 @@ class GroupSelectionManager extends SelectionManager {
|
|
|
251
248
|
}
|
|
252
249
|
}
|
|
253
250
|
|
|
254
|
-
function
|
|
251
|
+
function MenuSectionInner<T extends object>(props: MenuSectionProps<T>, ref: ForwardedRef<HTMLElement>, section: Node<T>, className = 'react-aria-MenuSection') {
|
|
255
252
|
let state = useContext(MenuStateContext)!;
|
|
256
253
|
let {CollectionBranch} = useContext(CollectionRendererContext);
|
|
257
254
|
let [headingRef, heading] = useSlot();
|
|
@@ -290,8 +287,7 @@ function MenuSection<T extends object>(props: MenuSectionProps<T>, ref: Forwarde
|
|
|
290
287
|
/**
|
|
291
288
|
* A MenuSection represents a section within a Menu.
|
|
292
289
|
*/
|
|
293
|
-
const
|
|
294
|
-
export {_MenuSection as MenuSection};
|
|
290
|
+
export const MenuSection = /*#__PURE__*/ createBranchComponent('section', MenuSectionInner);
|
|
295
291
|
|
|
296
292
|
export interface MenuItemRenderProps extends ItemRenderProps {
|
|
297
293
|
/**
|
package/src/Meter.tsx
CHANGED
|
@@ -33,7 +33,10 @@ export interface MeterRenderProps {
|
|
|
33
33
|
|
|
34
34
|
export const MeterContext = createContext<ContextValue<MeterProps, HTMLDivElement>>(null);
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
/**
|
|
37
|
+
* A meter represents a quantity within a known range, or a fractional value.
|
|
38
|
+
*/
|
|
39
|
+
export const Meter = /*#__PURE__*/ (forwardRef as forwardRefType)(function Meter(props: MeterProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
37
40
|
[props, ref] = useContextProps(props, ref, MeterContext);
|
|
38
41
|
let {
|
|
39
42
|
value = 0,
|
|
@@ -67,10 +70,4 @@ function Meter(props: MeterProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
|
67
70
|
</LabelContext.Provider>
|
|
68
71
|
</div>
|
|
69
72
|
);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* A meter represents a quantity within a known range, or a fractional value.
|
|
74
|
-
*/
|
|
75
|
-
const _Meter = /*#__PURE__*/ (forwardRef as forwardRefType)(Meter);
|
|
76
|
-
export {_Meter as Meter};
|
|
73
|
+
});
|
package/src/Modal.tsx
CHANGED
|
@@ -61,7 +61,10 @@ export interface ModalRenderProps {
|
|
|
61
61
|
state: OverlayTriggerState
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
/**
|
|
65
|
+
* A modal is an overlay element which blocks interaction with elements outside it.
|
|
66
|
+
*/
|
|
67
|
+
export const Modal = /*#__PURE__*/ (forwardRef as forwardRefType)(function Modal(props: ModalOverlayProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
65
68
|
let ctx = useContext(InternalModalContext);
|
|
66
69
|
|
|
67
70
|
if (ctx) {
|
|
@@ -98,7 +101,7 @@ function Modal(props: ModalOverlayProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
|
98
101
|
</ModalContent>
|
|
99
102
|
</ModalOverlay>
|
|
100
103
|
);
|
|
101
|
-
}
|
|
104
|
+
});
|
|
102
105
|
|
|
103
106
|
interface ModalOverlayInnerProps extends ModalOverlayProps {
|
|
104
107
|
overlayRef: RefObject<HTMLDivElement | null>,
|
|
@@ -107,12 +110,6 @@ interface ModalOverlayInnerProps extends ModalOverlayProps {
|
|
|
107
110
|
isExiting: boolean
|
|
108
111
|
}
|
|
109
112
|
|
|
110
|
-
/**
|
|
111
|
-
* A modal is an overlay element which blocks interaction with elements outside it.
|
|
112
|
-
*/
|
|
113
|
-
const _Modal = /*#__PURE__*/ (forwardRef as forwardRefType)(Modal);
|
|
114
|
-
export {_Modal as Modal};
|
|
115
|
-
|
|
116
113
|
function ModalOverlayWithForwardRef(props: ModalOverlayProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
117
114
|
[props, ref] = useContextProps(props, ref, ModalContext);
|
|
118
115
|
let contextState = useContext(OverlayTriggerStateContext);
|
package/src/NumberField.tsx
CHANGED
|
@@ -46,7 +46,10 @@ export interface NumberFieldProps extends Omit<AriaNumberFieldProps, 'label' | '
|
|
|
46
46
|
export const NumberFieldContext = createContext<ContextValue<NumberFieldProps, HTMLDivElement>>(null);
|
|
47
47
|
export const NumberFieldStateContext = createContext<NumberFieldState | null>(null);
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
/**
|
|
50
|
+
* A number field allows a user to enter a number, and increment or decrement the value using stepper buttons.
|
|
51
|
+
*/
|
|
52
|
+
export const NumberField = /*#__PURE__*/ (forwardRef as forwardRefType)(function NumberField(props: NumberFieldProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
50
53
|
[props, ref] = useContextProps(props, ref, NumberFieldContext);
|
|
51
54
|
let {validationBehavior: formValidationBehavior} = useSlottedContext(FormContext) || {};
|
|
52
55
|
let validationBehavior = props.validationBehavior ?? formValidationBehavior ?? 'native';
|
|
@@ -118,10 +121,4 @@ function NumberField(props: NumberFieldProps, ref: ForwardedRef<HTMLDivElement>)
|
|
|
118
121
|
{props.name && <input type="hidden" name={props.name} value={isNaN(state.numberValue) ? '' : state.numberValue} />}
|
|
119
122
|
</Provider>
|
|
120
123
|
);
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
/**
|
|
124
|
-
* A number field allows a user to enter a number, and increment or decrement the value using stepper buttons.
|
|
125
|
-
*/
|
|
126
|
-
const _NumberField = /*#__PURE__*/ (forwardRef as forwardRefType)(NumberField);
|
|
127
|
-
export {_NumberField as NumberField};
|
|
124
|
+
});
|
package/src/OverlayArrow.tsx
CHANGED
|
@@ -33,7 +33,11 @@ export interface OverlayArrowRenderProps {
|
|
|
33
33
|
placement: PlacementAxis | null
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
/**
|
|
37
|
+
* An OverlayArrow renders a custom arrow element relative to an overlay element
|
|
38
|
+
* such as a popover or tooltip such that it aligns with a trigger element.
|
|
39
|
+
*/
|
|
40
|
+
export const OverlayArrow = /*#__PURE__*/ (forwardRef as forwardRefType)(function OverlayArrow(props: OverlayArrowProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
37
41
|
[props, ref] = useContextProps(props, ref, OverlayArrowContext);
|
|
38
42
|
let placement = (props as OverlayArrowContextValue).placement;
|
|
39
43
|
let style: CSSProperties = {
|
|
@@ -68,11 +72,4 @@ function OverlayArrow(props: OverlayArrowProps, ref: ForwardedRef<HTMLDivElement
|
|
|
68
72
|
ref={ref}
|
|
69
73
|
data-placement={placement} />
|
|
70
74
|
);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
/**
|
|
74
|
-
* An OverlayArrow renders a custom arrow element relative to an overlay element
|
|
75
|
-
* such as a popover or tooltip such that it aligns with a trigger element.
|
|
76
|
-
*/
|
|
77
|
-
const _OverlayArrow = /*#__PURE__*/ (forwardRef as forwardRefType)(OverlayArrow);
|
|
78
|
-
export {_OverlayArrow as OverlayArrow};
|
|
75
|
+
});
|
package/src/Popover.tsx
CHANGED
|
@@ -80,7 +80,10 @@ export interface PopoverRenderProps {
|
|
|
80
80
|
|
|
81
81
|
export const PopoverContext = createContext<ContextValue<PopoverProps, HTMLElement>>(null);
|
|
82
82
|
|
|
83
|
-
|
|
83
|
+
/**
|
|
84
|
+
* A popover is an overlay element positioned relative to a trigger.
|
|
85
|
+
*/
|
|
86
|
+
export const Popover = /*#__PURE__*/ (forwardRef as forwardRefType)(function Popover(props: PopoverProps, ref: ForwardedRef<HTMLElement>) {
|
|
84
87
|
[props, ref] = useContextProps(props, ref, PopoverContext);
|
|
85
88
|
let contextState = useContext(OverlayTriggerStateContext);
|
|
86
89
|
let localState = useOverlayTriggerState(props);
|
|
@@ -116,13 +119,7 @@ function Popover(props: PopoverProps, ref: ForwardedRef<HTMLElement>) {
|
|
|
116
119
|
popoverRef={ref}
|
|
117
120
|
isExiting={isExiting} />
|
|
118
121
|
);
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* A popover is an overlay element positioned relative to a trigger.
|
|
123
|
-
*/
|
|
124
|
-
const _Popover = /*#__PURE__*/ (forwardRef as forwardRefType)(Popover);
|
|
125
|
-
export {_Popover as Popover};
|
|
122
|
+
});
|
|
126
123
|
|
|
127
124
|
interface PopoverInnerProps extends AriaPopoverProps, RenderProps<PopoverRenderProps>, SlotProps {
|
|
128
125
|
state: OverlayTriggerState,
|
package/src/ProgressBar.tsx
CHANGED
|
@@ -37,7 +37,11 @@ export interface ProgressBarRenderProps {
|
|
|
37
37
|
|
|
38
38
|
export const ProgressBarContext = createContext<ContextValue<ProgressBarProps, HTMLDivElement>>(null);
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
/**
|
|
41
|
+
* Progress bars show either determinate or indeterminate progress of an operation
|
|
42
|
+
* over time.
|
|
43
|
+
*/
|
|
44
|
+
export const ProgressBar = forwardRef(function ProgressBar(props: ProgressBarProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
41
45
|
[props, ref] = useContextProps(props, ref, ProgressBarContext);
|
|
42
46
|
let {
|
|
43
47
|
value = 0,
|
|
@@ -73,11 +77,4 @@ function ProgressBar(props: ProgressBarProps, ref: ForwardedRef<HTMLDivElement>)
|
|
|
73
77
|
</LabelContext.Provider>
|
|
74
78
|
</div>
|
|
75
79
|
);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Progress bars show either determinate or indeterminate progress of an operation
|
|
80
|
-
* over time.
|
|
81
|
-
*/
|
|
82
|
-
const _ProgressBar = forwardRef(ProgressBar);
|
|
83
|
-
export {_ProgressBar as ProgressBar};
|
|
80
|
+
});
|
package/src/RadioGroup.tsx
CHANGED
|
@@ -113,7 +113,10 @@ export const RadioGroupContext = createContext<ContextValue<RadioGroupProps, HTM
|
|
|
113
113
|
export const RadioContext = createContext<ContextValue<Partial<RadioProps>, HTMLLabelElement>>(null);
|
|
114
114
|
export const RadioGroupStateContext = createContext<RadioGroupState | null>(null);
|
|
115
115
|
|
|
116
|
-
|
|
116
|
+
/**
|
|
117
|
+
* A radio group allows a user to select a single item from a list of mutually exclusive options.
|
|
118
|
+
*/
|
|
119
|
+
export const RadioGroup = /*#__PURE__*/ (forwardRef as forwardRefType)(function RadioGroup(props: RadioGroupProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
117
120
|
[props, ref] = useContextProps(props, ref, RadioGroupContext);
|
|
118
121
|
let {validationBehavior: formValidationBehavior} = useSlottedContext(FormContext) || {};
|
|
119
122
|
let validationBehavior = props.validationBehavior ?? formValidationBehavior ?? 'native';
|
|
@@ -169,9 +172,12 @@ function RadioGroup(props: RadioGroupProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
|
169
172
|
</Provider>
|
|
170
173
|
</div>
|
|
171
174
|
);
|
|
172
|
-
}
|
|
175
|
+
});
|
|
173
176
|
|
|
174
|
-
|
|
177
|
+
/**
|
|
178
|
+
* A radio represents an individual option within a radio group.
|
|
179
|
+
*/
|
|
180
|
+
export const Radio = /*#__PURE__*/ (forwardRef as forwardRefType)(function Radio(props: RadioProps, ref: ForwardedRef<HTMLLabelElement>) {
|
|
175
181
|
let {
|
|
176
182
|
inputRef: userProvidedInputRef = null,
|
|
177
183
|
...otherProps
|
|
@@ -230,16 +236,4 @@ function Radio(props: RadioProps, ref: ForwardedRef<HTMLLabelElement>) {
|
|
|
230
236
|
{renderProps.children}
|
|
231
237
|
</label>
|
|
232
238
|
);
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
/**
|
|
236
|
-
* A radio group allows a user to select a single item from a list of mutually exclusive options.
|
|
237
|
-
*/
|
|
238
|
-
const _RadioGroup = /*#__PURE__*/ (forwardRef as forwardRefType)(RadioGroup);
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* A radio represents an individual option within a radio group.
|
|
242
|
-
*/
|
|
243
|
-
const _Radio = /*#__PURE__*/ (forwardRef as forwardRefType)(Radio);
|
|
244
|
-
|
|
245
|
-
export {_RadioGroup as RadioGroup, _Radio as Radio};
|
|
239
|
+
});
|
package/src/SearchField.tsx
CHANGED
|
@@ -50,7 +50,10 @@ export interface SearchFieldProps extends Omit<AriaSearchFieldProps, 'label' | '
|
|
|
50
50
|
|
|
51
51
|
export const SearchFieldContext = createContext<ContextValue<SearchFieldProps, HTMLDivElement>>(null);
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
/**
|
|
54
|
+
* A search field allows a user to enter and clear a search query.
|
|
55
|
+
*/
|
|
56
|
+
export const SearchField = /*#__PURE__*/ (forwardRef as forwardRefType)(function SearchField(props: SearchFieldProps, ref: ForwardedRef<HTMLDivElement>) {
|
|
54
57
|
[props, ref] = useContextProps(props, ref, SearchFieldContext);
|
|
55
58
|
let {validationBehavior: formValidationBehavior} = useSlottedContext(FormContext) || {};
|
|
56
59
|
let validationBehavior = props.validationBehavior ?? formValidationBehavior ?? 'native';
|
|
@@ -108,10 +111,4 @@ function SearchField(props: SearchFieldProps, ref: ForwardedRef<HTMLDivElement>)
|
|
|
108
111
|
</Provider>
|
|
109
112
|
</div>
|
|
110
113
|
);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* A search field allows a user to enter and clear a search query.
|
|
115
|
-
*/
|
|
116
|
-
const _SearchField = /*#__PURE__*/ (forwardRef as forwardRefType)(SearchField);
|
|
117
|
-
export {_SearchField as SearchField};
|
|
114
|
+
});
|
package/src/Select.tsx
CHANGED
|
@@ -67,7 +67,10 @@ export interface SelectProps<T extends object = {}> extends Omit<AriaSelectProps
|
|
|
67
67
|
export const SelectContext = createContext<ContextValue<SelectProps<any>, HTMLDivElement>>(null);
|
|
68
68
|
export const SelectStateContext = createContext<SelectState<unknown> | null>(null);
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
/**
|
|
71
|
+
* A select displays a collapsible list of options and allows a user to select one of them.
|
|
72
|
+
*/
|
|
73
|
+
export const Select = /*#__PURE__*/ (forwardRef as forwardRefType)(function Select<T extends object = {}>(props: SelectProps<T>, ref: ForwardedRef<HTMLDivElement>) {
|
|
71
74
|
[props, ref] = useContextProps(props, ref, SelectContext);
|
|
72
75
|
let {children, isDisabled = false, isInvalid = false, isRequired = false} = props;
|
|
73
76
|
let content = useMemo(() => (
|
|
@@ -89,7 +92,7 @@ function Select<T extends object = {}>(props: SelectProps<T>, ref: ForwardedRef<
|
|
|
89
92
|
{collection => <SelectInner props={props} collection={collection} selectRef={ref} />}
|
|
90
93
|
</CollectionBuilder>
|
|
91
94
|
);
|
|
92
|
-
}
|
|
95
|
+
});
|
|
93
96
|
|
|
94
97
|
interface SelectInnerProps<T extends object> {
|
|
95
98
|
props: SelectProps<T>,
|
|
@@ -208,12 +211,6 @@ function SelectInner<T extends object>({props, selectRef: ref, collection}: Sele
|
|
|
208
211
|
);
|
|
209
212
|
}
|
|
210
213
|
|
|
211
|
-
/**
|
|
212
|
-
* A select displays a collapsible list of options and allows a user to select one of them.
|
|
213
|
-
*/
|
|
214
|
-
const _Select = /*#__PURE__*/ (forwardRef as forwardRefType)(Select);
|
|
215
|
-
export {_Select as Select};
|
|
216
|
-
|
|
217
214
|
export interface SelectValueRenderProps<T> {
|
|
218
215
|
/**
|
|
219
216
|
* Whether the value is a placeholder.
|
|
@@ -230,7 +227,11 @@ export interface SelectValueProps<T extends object> extends Omit<HTMLAttributes<
|
|
|
230
227
|
|
|
231
228
|
export const SelectValueContext = createContext<ContextValue<SelectValueProps<any>, HTMLSpanElement>>(null);
|
|
232
229
|
|
|
233
|
-
|
|
230
|
+
/**
|
|
231
|
+
* SelectValue renders the current value of a Select, or a placeholder if no value is selected.
|
|
232
|
+
* It is usually placed within the button element.
|
|
233
|
+
*/
|
|
234
|
+
export const SelectValue = /*#__PURE__*/ (forwardRef as forwardRefType)(function SelectValue<T extends object>(props: SelectValueProps<T>, ref: ForwardedRef<HTMLSpanElement>) {
|
|
234
235
|
[props, ref] = useContextProps(props, ref, SelectValueContext);
|
|
235
236
|
let state = useContext(SelectStateContext)!;
|
|
236
237
|
let {placeholder} = useSlottedContext(SelectContext)!;
|
|
@@ -276,11 +277,4 @@ function SelectValue<T extends object>(props: SelectValueProps<T>, ref: Forwarde
|
|
|
276
277
|
</TextContext.Provider>
|
|
277
278
|
</span>
|
|
278
279
|
);
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
/**
|
|
282
|
-
* SelectValue renders the current value of a Select, or a placeholder if no value is selected.
|
|
283
|
-
* It is usually placed within the button element.
|
|
284
|
-
*/
|
|
285
|
-
const _SelectValue = /*#__PURE__*/ (forwardRef as forwardRefType)(SelectValue);
|
|
286
|
-
export {_SelectValue as SelectValue};
|
|
280
|
+
});
|