@maxio-com/react-ui-components 9.27.0 → 9.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,6 +43,7 @@ Use this skill to build React components using `@maxio-com/react-ui-components`.
43
43
  - [Components / Forms / DatePicker](references/components-forms-datepicker.md)
44
44
  - [Components / Forms / DateRangePicker](references/components-forms-daterangepicker.md)
45
45
  - [Components / Forms / Radio Group](references/components-forms-radio-group.md)
46
+ - [Components / Forms / SearchField](references/components-forms-searchfield.md)
46
47
  - [Components / Forms / Select](references/components-forms-select.md)
47
48
  - [Components / Forms / TextArea](references/components-forms-textarea.md)
48
49
  - [Components / Forms / TextField](references/components-forms-textfield.md)
@@ -0,0 +1,215 @@
1
+ # SearchField
2
+
3
+ ## Usage Guidelines
4
+
5
+ ### Overview
6
+
7
+ SearchField lets users enter a search query and clear it with a built-in
8
+ clear button. Use it to filter a list, table, or page of results.
9
+
10
+ #### When to Use
11
+
12
+ - Use when users need to filter or find items within a list, table, or page.
13
+ - Use `onChange` to filter results as the user types and `onSubmit` when the
14
+ search should only run once, on Enter.
15
+ - Use with helper text when users need to know which fields are searched.
16
+
17
+ #### When Not to Use
18
+
19
+ - Do not use for a single free-form value that is not used to search or
20
+ filter. Use TextField instead.
21
+ - Do not use when users must choose from a known list. Use Select for short
22
+ lists or ComboBox when filtering helps select an option.
23
+ - Do not use for long-form or multi-line writing. Use TextArea instead.
24
+
25
+ ### Variants
26
+
27
+ | Variants | Purpose | Usage notes |
28
+ | :------- | :-------------------------------------------- | :--------------------------------------------------------- |
29
+ | `sm` | Compact field for dense interfaces. | Use where form density is high and labels remain readable. |
30
+ | `md` | Default field size. | Use for most toolbars. |
31
+ | `lg` | Larger field for prominent search rows. | Use sparingly when the field needs more visual emphasis. |
32
+ | `xl` | Field with integrated label and helper/error. | Use when the field needs a stronger contained treatment. |
33
+
34
+ ### Behavior
35
+
36
+ - **Mouse and touch**: Users can place the cursor in the field, select text, and
37
+ clear the value with the built-in clear button once it has content.
38
+ - **Keyboard**: Users tab to the input, type or edit the value, press Escape or
39
+ activate the clear button to clear it, and press Enter to trigger `onSubmit`.
40
+ - **Focus management**: Focus lands on the native input.
41
+ - **Controlled state**: Use `value` and `onChange` when product state owns the
42
+ value and results should update as the user types. Use `defaultValue` for
43
+ simple uncontrolled fields, or `onSubmit` when the search should only run on
44
+ Enter.
45
+ - **Debounce**: SearchField does not debounce `onChange` on its own. Wrap the
46
+ consuming state update in your own debounce hook when the search triggers a
47
+ network request.
48
+
49
+ ### Accessibility
50
+
51
+ - Provide a visible `label` whenever possible. Use `aria-label` or
52
+ `aria-labelledby` only when a visible label is not available.
53
+ - Use `description` for helper text and `errorMessage` for validation feedback.
54
+ - Pair invalid values with `isInvalid` and an actionable `errorMessage`.
55
+ - The built-in clear button has an accessible name via `clearButtonLabel`
56
+ (defaults to "Clear search").
57
+ - Do not rely on color alone to communicate validation, disabled, or read-only
58
+ state.
59
+
60
+ ### Content
61
+
62
+ - Write labels as short nouns, such as "Search customers" or "Search
63
+ invoices".
64
+ - Use placeholder text for examples, not instructions that replace the label.
65
+ - Use helper text to name which fields are searched.
66
+ - Write error messages that name the problem and recovery step, such as
67
+ "Enter at least 3 characters."
68
+
69
+ ### Related
70
+
71
+ - **[TextField](components-forms-textfield.md)**: use for a
72
+ single free-form value that is not used to search or filter.
73
+ - **[ComboBox](components-forms-combobox.md)**: use when users
74
+ choose from a list and typing should filter options.
75
+ - **[Select](components-forms-select.md)**: use when users
76
+ choose from a shorter closed list.
77
+
78
+ ## React
79
+
80
+ ```tsx
81
+ import { SearchField } from '@maxio-com/react-ui-components';
82
+ ```
83
+
84
+ ### State Management
85
+
86
+ Use controlled state when results should filter as the user types. Use
87
+ `onSubmit` when the search should only run once the user presses Enter.
88
+
89
+ #### Controlled
90
+
91
+ ```tsx
92
+ const [value, setValue] = React.useState('');
93
+
94
+ <SearchField label="Search customers" value={value} onChange={setValue} />;
95
+ ```
96
+
97
+ #### Uncontrolled
98
+
99
+ ```tsx
100
+ <SearchField label="Search customers" defaultValue="Acme Co." />
101
+ ```
102
+
103
+ ## Imports
104
+
105
+ ```tsx
106
+ import { Grid, SearchField } from "@maxio-com/react-ui-components";
107
+ ```
108
+
109
+ ## Prop Types
110
+
111
+ ### SearchField
112
+
113
+ | Prop | Type | Required | Default | Description | Source |
114
+ | --- | --- | --- | --- | --- | --- |
115
+ | `className` | `string` | no | - | Additional class name for the search field container | SearchFieldProps |
116
+ | `clearButtonLabel` | `string` | no | `Clear search` | Accessible label for the built-in clear button | SearchFieldProps |
117
+ | `description` | `string` | no | - | Description for the search field. It will not be visible if there is an error message. | SearchFieldProps |
118
+ | `errorMessage` | `string` | no | - | Error message for the search field | SearchFieldProps |
119
+ | `fullWidth` | `boolean` | no | - | Ensures the input spans the full width of its parent | SearchFieldProps |
120
+ | `label` | `string` | no | - | Label for the search field | SearchFieldProps |
121
+ | `leadingElement` | `ReactNode` | no | `<Icon variant="search" />` | Leading element for the search field. Defaults to a search icon. | SearchFieldProps |
122
+ | `placeholder` | `string` | no | - | Temporary text that occupies the search field when it is empty. | SearchFieldProps |
123
+ | `size` | `"sm" \| "md" \| "lg" \| "xl"` | no | `md` | Size of the search field | SearchFieldProps |
124
+
125
+ ## Stories
126
+
127
+ ### Default
128
+
129
+ Provide a visible label and use placeholder text only as an example of the
130
+ expected value. Use controlled state (`value`/`onChange`) when product logic
131
+ needs to filter results as the user types.
132
+
133
+ ```tsx
134
+ const Default = () => <SearchField
135
+ label="Search customers"
136
+ placeholder="Search by name or email"
137
+ onChange={action('onChange')} />;
138
+ ```
139
+
140
+ ### Submit On Enter
141
+
142
+ Use `onSubmit` when the search should only run once the user presses Enter,
143
+ instead of on every keystroke.
144
+
145
+ ```tsx
146
+ const SubmitOnEnter = () => <SearchField
147
+ label="Search customers"
148
+ placeholder="Search by name or email"
149
+ onChange={action('onChange')}
150
+ onSubmit={action('onSubmit')} />;
151
+ ```
152
+
153
+ ### With Description
154
+
155
+ Use description text for helper content that users need before typing, such
156
+ as which fields are searched.
157
+
158
+ ```tsx
159
+ const WithDescription = () => <SearchField
160
+ label="Search invoices"
161
+ placeholder="Search by invoice number"
162
+ description="Searches invoice number, customer name, and email."
163
+ onChange={action('onChange')} />;
164
+ ```
165
+
166
+ ### Validation
167
+
168
+ Use errorMessage with isInvalid so assistive technology receives invalid
169
+ state and users get actionable validation feedback.
170
+
171
+ ```tsx
172
+ const Validation = () => <SearchField
173
+ label="Search customers"
174
+ placeholder="Search by name or email"
175
+ isInvalid
176
+ errorMessage="Enter at least 3 characters."
177
+ onChange={action('onChange')} />;
178
+ ```
179
+
180
+ ### Disabled
181
+
182
+ Use disabled fields when search is unavailable in the current context.
183
+
184
+ ```tsx
185
+ const Disabled = () => <SearchField label="Search customers" placeholder="Search by name or email" isDisabled />;
186
+ ```
187
+
188
+ ### Sizes
189
+
190
+ Use size to match the density and prominence of the surrounding UI. Use md
191
+ for most toolbars, sm in dense interfaces, lg for prominent search rows, and
192
+ xl when the label and helper or error text should feel integrated with the field.
193
+
194
+ ```tsx
195
+ const Sizes = (args) => (
196
+ <Grid gap={4}>
197
+ {(['sm', 'md', 'lg', 'xl'] as const).map((size) => (
198
+ <SearchField key={size} {...args} size={size} />
199
+ ))}
200
+ </Grid>
201
+ );
202
+ ```
203
+
204
+ ### Full Width
205
+
206
+ Use fullWidth in toolbars and responsive layouts where the field should
207
+ fill the available parent width.
208
+
209
+ ```tsx
210
+ const FullWidth = () => <SearchField
211
+ label="Search customers"
212
+ placeholder="Search by name or email"
213
+ fullWidth
214
+ onChange={action('onChange')} />;
215
+ ```
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { SearchFieldProps } from './types';
3
+ declare const SearchField: React.ForwardRefExoticComponent<SearchFieldProps & React.RefAttributes<HTMLInputElement>>;
4
+ export default SearchField;
5
+ //# sourceMappingURL=SearchField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchField.d.ts","sourceRoot":"","sources":["../../../../../../src/components/forms/SearchField/SearchField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAW1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,QAAA,MAAM,WAAW,2FAiFhB,CAAC;AAIF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default } from './SearchField';
2
+ export type { SearchFieldProps } from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/forms/SearchField/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { ReactNode } from 'react';
2
+ import type { SearchFieldProps as AriaSearchFieldProps } from 'react-aria-components';
3
+ export interface SearchFieldProps extends Omit<AriaSearchFieldProps, 'children' | 'className'> {
4
+ label?: string;
5
+ size?: 'sm' | 'md' | 'lg' | 'xl';
6
+ fullWidth?: boolean;
7
+ description?: string;
8
+ errorMessage?: string;
9
+ leadingElement?: ReactNode;
10
+ clearButtonLabel?: string;
11
+ className?: string;
12
+ placeholder?: string;
13
+ }
14
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/forms/SearchField/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEtF,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAC5C,oBAAoB,EACpB,UAAU,GAAG,WAAW,CACzB;IAIC,KAAK,CAAC,EAAE,MAAM,CAAC;IAIf,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAIjC,SAAS,CAAC,EAAE,OAAO,CAAC;IAIpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,cAAc,CAAC,EAAE,SAAS,CAAC;IAI3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAI1B,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -2,6 +2,8 @@ export * from './Checkbox';
2
2
  export { default as ComboBox } from './ComboBox';
3
3
  export type { ComboBoxProps } from './ComboBox';
4
4
  export * from './Radio';
5
+ export { default as SearchField } from './SearchField';
6
+ export type { SearchFieldProps } from './SearchField';
5
7
  export { default as TextField } from './TextField';
6
8
  export type { TextFieldProps } from './TextField';
7
9
  export { default as TextArea } from './TextArea';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/forms/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -29,17 +29,17 @@ import Tooltip from './Tooltip';
29
29
  import TooltipTrigger from './TooltipTrigger';
30
30
  import TopBar from './TopBar';
31
31
  import { Body, Code, Display, Heading, Label } from './Typography';
32
- import { Checkbox, CheckboxGroup, ComboBox, FormErrorMessage, FormHelperText, Radio, RadioGroup, Select, TextArea, TextField, TextInput } from './forms';
32
+ import { Checkbox, CheckboxGroup, ComboBox, FormErrorMessage, FormHelperText, Radio, RadioGroup, SearchField, Select, TextArea, TextField, TextInput } from './forms';
33
33
  import { Chip } from './Chip';
34
34
  import { Flex } from './Flex';
35
35
  import { Grid } from './Grid';
36
36
  import { ListBox } from './ListBox';
37
- export { ActionList, Drawer, Alert, Avatar, Banner, Body, Card, Breadcrumbs, BreadcrumbsItem, Button, Checkbox, CheckboxGroup, Code, ComboBox, CopyToClipboard, createColumnHelper, DataTable, Display, EmptyState, FormErrorMessage, FormHelperText, Heading, Icon, IconButton, Label, Link, LoadingSpinner, Logo, Menu, MenuButton, MenuList, OverlayTrigger, Pagination, Popover, DialogTrigger, Pressable, ProgressBar, Radio, RadioGroup, Select, SegmentedControl, SideNav, Tab, TabList, TabPanel, TabPanels, Tabs, Tag, TextArea, TextField, TextInput, Tile, ToastProvider, GlobalToastProvider, useToast, ToastQueue, Toggle, Tooltip, TooltipTrigger, TopBar, Chip, Flex, Grid, ListBox, };
37
+ export { ActionList, Drawer, Alert, Avatar, Banner, Body, Card, Breadcrumbs, BreadcrumbsItem, Button, Checkbox, CheckboxGroup, Code, ComboBox, CopyToClipboard, createColumnHelper, DataTable, Display, EmptyState, FormErrorMessage, FormHelperText, Heading, Icon, IconButton, Label, Link, LoadingSpinner, Logo, Menu, MenuButton, MenuList, OverlayTrigger, Pagination, Popover, DialogTrigger, Pressable, ProgressBar, Radio, RadioGroup, SearchField, Select, SegmentedControl, SideNav, Tab, TabList, TabPanel, TabPanels, Tabs, Tag, TextArea, TextField, TextInput, Tile, ToastProvider, GlobalToastProvider, useToast, ToastQueue, Toggle, Tooltip, TooltipTrigger, TopBar, Chip, Flex, Grid, ListBox, };
38
38
  export type { PopoverProps } from './Popover/types';
39
39
  export type { DrawerProps } from './Drawer/types';
40
40
  export type { CopyToClipboardProps, CopyToClipboardSize, CopyToClipboardVariant, } from './CopyToClipboard';
41
41
  export type { EmptyStateHeadingLevel, EmptyStateProps } from './EmptyState';
42
- export type { ComboBoxProps, TextAreaProps, TextFieldProps, TextInputProps, } from './forms';
42
+ export type { ComboBoxProps, SearchFieldProps, TextAreaProps, TextFieldProps, TextInputProps, } from './forms';
43
43
  export type { SegmentedControlItemProps, SegmentedControlProps, SegmentedControlSize, } from './SegmentedControl';
44
44
  export { Calendar } from './Calendar';
45
45
  export type { CalendarProps } from './Calendar';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maxio-com/react-ui-components",
3
- "version": "9.27.0",
3
+ "version": "9.28.0",
4
4
  "description": "React UI components",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -65,5 +65,5 @@
65
65
  "publishConfig": {
66
66
  "access": "public"
67
67
  },
68
- "gitHead": "7195ec2e6d3a2162254662d25aa7ff0a56a8d211"
68
+ "gitHead": "78ffb230f55e600753d1946c32bd3f53e671ad57"
69
69
  }
@@ -1,7 +1,7 @@
1
1
  import React$1, { ReactNode, HTMLAttributes, LiHTMLAttributes, ButtonHTMLAttributes, AnchorHTMLAttributes, RefObject, FC, ElementType, InputHTMLAttributes } from 'react';
2
2
  import { RowData, Row, Table, ExpandedState, RowSelectionState, SortingState, TableOptions } from '@tanstack/react-table';
3
3
  export { createColumnHelper } from '@tanstack/react-table';
4
- import { PopoverProps as PopoverProps$1, ToggleButtonGroupProps, ToggleButtonProps, ListBoxProps as ListBoxProps$1, ListBoxLoadMoreItemProps, ListBoxItemProps as ListBoxItemProps$1, ListBoxSectionProps as ListBoxSectionProps$1, HeaderProps, ComboBoxProps as ComboBoxProps$1, ValidationResult, TextFieldProps as TextFieldProps$1, DateValue, DateFieldProps as DateFieldProps$1, DatePickerProps as DatePickerProps$1, DateRangePickerProps as DateRangePickerProps$1, CalendarProps as CalendarProps$1, RangeCalendarProps as RangeCalendarProps$1 } from 'react-aria-components';
4
+ import { PopoverProps as PopoverProps$1, ToggleButtonGroupProps, ToggleButtonProps, ListBoxProps as ListBoxProps$1, ListBoxLoadMoreItemProps, ListBoxItemProps as ListBoxItemProps$1, ListBoxSectionProps as ListBoxSectionProps$1, HeaderProps, ComboBoxProps as ComboBoxProps$1, ValidationResult, SearchFieldProps as SearchFieldProps$1, TextFieldProps as TextFieldProps$1, DateValue, DateFieldProps as DateFieldProps$1, DatePickerProps as DatePickerProps$1, DateRangePickerProps as DateRangePickerProps$1, CalendarProps as CalendarProps$1, RangeCalendarProps as RangeCalendarProps$1 } from 'react-aria-components';
5
5
  export { DialogTrigger, Pressable } from 'react-aria-components';
6
6
  import * as _floating_ui_react_dom_interactions from '@floating-ui/react-dom-interactions';
7
7
  import { MotionProps } from 'framer-motion';
@@ -768,6 +768,20 @@ type RadioGroupProps = Pick<AriaRadioGroupProps, 'aria-describedby' | 'aria-deta
768
768
  };
769
769
  declare const RadioGroup: ({ children, label, errorMessage, helperText, disabled, invalid, name, defaultValue, ...props }: RadioGroupProps) => React$1.JSX.Element;
770
770
 
771
+ interface SearchFieldProps extends Omit<SearchFieldProps$1, 'children' | 'className'> {
772
+ label?: string;
773
+ size?: 'sm' | 'md' | 'lg' | 'xl';
774
+ fullWidth?: boolean;
775
+ description?: string;
776
+ errorMessage?: string;
777
+ leadingElement?: ReactNode;
778
+ clearButtonLabel?: string;
779
+ className?: string;
780
+ placeholder?: string;
781
+ }
782
+
783
+ declare const SearchField: React$1.ForwardRefExoticComponent<SearchFieldProps & React$1.RefAttributes<HTMLInputElement>>;
784
+
771
785
  interface TextFieldProps extends Omit<TextFieldProps$1, 'children' | 'className' | 'type'> {
772
786
  label?: string;
773
787
  size?: 'sm' | 'md' | 'lg' | 'xl';
@@ -965,5 +979,5 @@ type AuthLayoutProps = {
965
979
 
966
980
  declare const AuthLayout: ({ children, heading, description, sentiment, leadingElement, alert, topAddon, footer, }: AuthLayoutProps) => React$1.JSX.Element;
967
981
 
968
- export { ActionList, Alert, AuthLayout, Avatar, Banner, Body, Breadcrumbs, BreadcrumbsItem, Button, Calendar, Card, Checkbox, CheckboxGroup, Chip, Code, ComboBox, CopyToClipboard, DataTable, DateField, DatePicker, DateRangePicker, Display, Drawer, EmptyState, Flex, FormErrorMessage, FormHelperText, GlobalToastProvider, Grid, Heading, Icon, IconButton, Label, Link, ListBox, LoadingSpinner, Logo, Menu, MenuButton, MenuList, OverlayTrigger, Pagination, Popover, ProgressBar, Radio, RadioGroup, RangeCalendar, SegmentedControl, Select, SideNavWrapper as SideNav, Tab, TabList, TabPanel, TabPanels, Tabs, Tag, TextArea, TextField, TextInput, Tile, ToastProvider, ToastQueue, Toggle, Tooltip, TooltipTrigger, TopBar, useElementResizeObserver, useHover, useOverlayTrigger, useToast, useWindowSize };
969
- export type { CalendarProps, ComboBoxProps, CopyToClipboardProps, CopyToClipboardSize, CopyToClipboardVariant, DateFieldProps, DatePickerProps, DatePreset, DateRangePickerProps, DateRangePreset, DrawerProps, EmptyStateHeadingLevel, EmptyStateProps, Interactions, OverlayAriaRole, Placement, PopoverProps, RangeCalendarProps, SegmentedControlItemProps, SegmentedControlProps, SegmentedControlSize, TextAreaProps, TextFieldProps, TextInputProps };
982
+ export { ActionList, Alert, AuthLayout, Avatar, Banner, Body, Breadcrumbs, BreadcrumbsItem, Button, Calendar, Card, Checkbox, CheckboxGroup, Chip, Code, ComboBox, CopyToClipboard, DataTable, DateField, DatePicker, DateRangePicker, Display, Drawer, EmptyState, Flex, FormErrorMessage, FormHelperText, GlobalToastProvider, Grid, Heading, Icon, IconButton, Label, Link, ListBox, LoadingSpinner, Logo, Menu, MenuButton, MenuList, OverlayTrigger, Pagination, Popover, ProgressBar, Radio, RadioGroup, RangeCalendar, SearchField, SegmentedControl, Select, SideNavWrapper as SideNav, Tab, TabList, TabPanel, TabPanels, Tabs, Tag, TextArea, TextField, TextInput, Tile, ToastProvider, ToastQueue, Toggle, Tooltip, TooltipTrigger, TopBar, useElementResizeObserver, useHover, useOverlayTrigger, useToast, useWindowSize };
983
+ export type { CalendarProps, ComboBoxProps, CopyToClipboardProps, CopyToClipboardSize, CopyToClipboardVariant, DateFieldProps, DatePickerProps, DatePreset, DateRangePickerProps, DateRangePreset, DrawerProps, EmptyStateHeadingLevel, EmptyStateProps, Interactions, OverlayAriaRole, Placement, PopoverProps, RangeCalendarProps, SearchFieldProps, SegmentedControlItemProps, SegmentedControlProps, SegmentedControlSize, TextAreaProps, TextFieldProps, TextInputProps };