MCPcopy Index your code
hub / github.com/adobe/react-spectrum / Autocomplete

Function Autocomplete

packages/react-aria-components/src/Autocomplete.tsx:76–122  ·  view source on GitHub ↗
(props: AutocompleteProps<T>)

Source from the content-addressed store, hash-verified

74 * An autocomplete allows users to search or filter a list of suggestions.
75 */
76export function Autocomplete<T>(props: AutocompleteProps<T>): JSX.Element {
77 let ctx = useSlottedContext(AutocompleteContext, props.slot);
78 props = mergeProps(ctx, props);
79 let {filter, disableAutoFocusFirst} = props;
80 let state = useAutocompleteState(props);
81 let inputRef = useRef<HTMLInputElement | null>(null);
82 let collectionRef = useRef<HTMLElement>(null);
83 let {
84 inputProps,
85 collectionProps,
86 collectionRef: mergedCollectionRef,
87 filter: filterFn
88 } = useAutocomplete(
89 {
90 ...removeDataAttributes(props),
91 filter,
92 disableAutoFocusFirst,
93 inputRef,
94 collectionRef
95 },
96 state
97 );
98
99 return (
100 <Provider
101 values={[
102 [AutocompleteStateContext, state],
103 [
104 FieldInputContext,
105 {
106 ...inputProps,
107 ref: inputRef
108 }
109 ],
110 [
111 SelectableCollectionContext,
112 {
113 ...collectionProps,
114 filter: filterFn,
115 ref: mergedCollectionRef
116 }
117 ]
118 ]}>
119 {props.children}
120 </Provider>
121 );
122}

Callers

nothing calls this directly

Calls 5

useSlottedContextFunction · 0.90
mergePropsFunction · 0.90
useAutocompleteStateFunction · 0.90
useAutocompleteFunction · 0.90
removeDataAttributesFunction · 0.90

Tested by

no test coverage detected