wix-style-react
Version:
wix-style-react
210 lines • 13.6 kB
TypeScript
export default AutoComplete;
declare class AutoComplete extends InputWithOptions {
static propTypes: {
/** Associate a control with the regions that it controls.*/
ariaControls: PropTypes.Requireable<string>;
/** Associate a region with its descriptions. Similar to aria-controls but instead associating descriptions to the region and description identifiers are separated with a space.*/
ariaDescribedby: PropTypes.Requireable<string>;
/** Define a string that labels the current element in case where a text label is not visible on the screen. */
ariaLabel: PropTypes.Requireable<string>;
/** Focus the element on mount (standard React input autoFocus). */
autoFocus: PropTypes.Requireable<boolean>;
/** Control the border style of input. */
border: PropTypes.Requireable<string>;
/** Specifies a CSS class name to be appended to the component’s root element.*/
className: PropTypes.Requireable<string>;
/** Displays clear button (X) on a non-empty input. */
clearButton: PropTypes.Requireable<boolean>;
/** Closes DropdownLayout when option is selected.*/
closeOnSelect: PropTypes.Requireable<boolean>;
/** Applies a data-hook HTML attribute that can be used in the tests. */
dataHook: PropTypes.Requireable<string>;
/** Sets a default value for those who want to use this component un-controlled. */
defaultValue: PropTypes.Requireable<string>;
/** Specifies whether input should be disabled or not. */
disabled: PropTypes.Requireable<boolean>;
/** Restricts input editing.*/
disableEditing: PropTypes.Requireable<boolean>;
/** Sets the width of the dropdown in pixels.*/
dropdownWidth: PropTypes.Requireable<string>;
/** Defines a message to be displayed instead of options when no options exist or no options pass the predicate filter function. */
emptyStateMessage: PropTypes.Requireable<PropTypes.ReactNodeLike>;
/** Adds a fixed footer container at the bottom of options list in `<DropdownLayout/>`.*/
fixedFooter: PropTypes.Requireable<PropTypes.ReactNodeLike>;
/** Adds a fixed header container at the top of options list in `<DropdownLayout/>`.*/
fixedHeader: PropTypes.Requireable<PropTypes.ReactNodeLike>;
/** Highlights and scrolls view to the specified option when dropdown layout is opened. It does not select the specified option. */
focusOnOption: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
/** Scrolls view to the selected option when dropdown layout is opened. */
focusOnSelectedOption: PropTypes.Requireable<boolean>;
/** USED FOR TESTING. Forces focus state on the input. */
forceFocus: PropTypes.Requireable<boolean>;
/** USED FOR TESTING. Forces hover state on the input.*/
forceHover: PropTypes.Requireable<boolean>;
/** Specifies whether there are more items to be loaded. */
hasMore: PropTypes.Requireable<boolean>;
/** Specifies whether status suffix should be hidden.*/
hideStatusSuffix: PropTypes.Requireable<boolean>;
/** Highlight word parts that match search criteria in bold. */
highlight: PropTypes.Requireable<boolean>;
/** Assigns an unique identifier for the root element. */
id: PropTypes.Requireable<string>;
/** Specifies whether lazy loading of the dropdown layout items is enabled. */
infiniteScroll: PropTypes.Requireable<boolean>;
/** Defines a callback function which is called on a request to render more list items. */
loadMore: PropTypes.Requireable<(...args: any[]) => any>;
/**
* ##### Sets the default hover behavior:
* * `false` - no initially hovered list item
* * `true` - hover first selectable option
* * any `number/string` - specify the id of an option to be hovered
*/
markedOption: PropTypes.Requireable<NonNullable<string | number | boolean | null | undefined>>;
/** Sets the maximum height of the dropdownLayout in pixels. */
maxHeightPixels: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
/** Sets the maximum number of characters that can be entered into a field.*/
maxLength: PropTypes.Requireable<number>;
/** Specifies whether input should have a dropdown menu arrow on the right side. */
menuArrow: PropTypes.Requireable<boolean>;
/** Sets the minimum width of dropdownLayout in pixels. */
minWidthPixels: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
/** Reference element data when a form is submitted. */
name: PropTypes.Requireable<string>;
/** Specifies whether input shouldn’t have rounded corners on its left. */
noLeftBorderRadius: PropTypes.Requireable<boolean>;
/** Specifies whether input shouldn’t have rounded corners on its right.*/
noRightBorderRadius: PropTypes.Requireable<boolean>;
/** Defines a standard input onBlur callback */
onBlur: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a standard input onChange callback.*/
onChange: PropTypes.Requireable<(...args: any[]) => any>;
/** Displays clear button (X) on a non-empty input and calls a callback function with no arguments.*/
onClear: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called whenever the user presses the escape key. */
onClose: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function called on compositionstart/compositionend events.*/
onCompositionChange: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback handler that is called when user presses `enter`.*/
onEnterPressed: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback handler that is called when user presses `escape`.*/
onEscapePressed: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a standard input onFocus callback. */
onFocus: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a standard input onClick callback.*/
onInputClicked: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a standard input onKeyUp callback. */
onKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called when user performs a submit action. Submit action triggers are: "Enter", "Tab", [typing any defined delimiters], paste action. `onManuallyInput(values: Array): void - The array of strings is the result of splitting the input value by the given delimiters.*/
onManuallyInput: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called whenever the user enters dropdown layout with the mouse cursor. */
onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called whenever the user exits from dropdown layout with a mouse cursor.*/
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called whenever an option becomes focused (hovered/active). Receives the relevant option object from the original props.options array.*/
onOptionMarked: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called when options dropdown is hidden.*/
onOptionsHide: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called when options dropdown is shown.*/
onOptionsShow: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called when no options exist.*/
onEmptyState: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback handler that is called when user pastes text from a clipboard (using mouse or keyboard shortcut).*/
onPaste: PropTypes.Requireable<(...args: any[]) => any>;
/** Defines a callback function which is called whenever user selects a different option in the list.*/
onSelect: PropTypes.Requireable<(...args: any[]) => any>;
/** Specify an array of options:
* - id `<string / number>` *required*: the id of the option, should be unique.
* - value `<function / string / node>` *required*: can be a string, react element or a builder function.
* - disabled `<bool>` *default value- false*: whether this option is disabled or not
* - linkTo `<string>`: when provided the option will be an anchor to the given value
* - title `<bool>` *default value- false* **deprecated**: please use `listItemSectionBuilder` for rendering a title.
* - overrideStyle `<bool>` *default value- false* **deprecated**: please use `overrideOptionStyle` for override option styles.
* - overrideOptionStyle `<bool>` *default value- false* - when set to `true`, the option will be responsible to its own styles. No styles will be applied from the DropdownLayout itself.
* - label `<string>`: the string displayed within an input when the option is selected. This is used when using `<DropdownLayout/>` with an `<Input/>`.
*/
options: PropTypes.Requireable<any[]>;
/** Handles container overflow. */
overflow: PropTypes.Requireable<string>;
/** Sets a pattern that typed value must match to be valid (regex). */
pattern: PropTypes.Requireable<string>;
/** Sets a placeholder message to display. */
placeholder: PropTypes.Requireable<string>;
/** Allows to pass all common popover props. */
popoverProps: PropTypes.Requireable<PropTypes.InferProps<{
appendTo: PropTypes.Requireable<string>;
maxWidth: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
minWidth: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
flip: PropTypes.Requireable<boolean>;
fixed: PropTypes.Requireable<boolean>;
placement: PropTypes.Requireable<string>;
dynamicWidth: PropTypes.Requireable<boolean>;
}>>;
/** Defines a callback predicate for the filtering options function. */
predicate: PropTypes.Requireable<(...args: any[]) => any>;
/** Pass a component you want to show as the prefix of the input, e.g., text string, icon. */
prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
/** Specifies whether input is read only. */
readOnly: PropTypes.Requireable<boolean>;
/** Specifies whether input is mandatory. */
required: PropTypes.Requireable<boolean>;
/** Specifies selected option by its id. */
selectedId: PropTypes.Requireable<NonNullable<string | number | null | undefined>>;
/** Controls whether to show options if input is empty. */
showOptionsIfEmptyInput: PropTypes.Requireable<boolean>;
/** Controls the size of the input. Default value: `medium` */
size: PropTypes.Requireable<string>;
/** Specify the status of a field. */
status: PropTypes.Requireable<string>;
/** Defines the message to display on status icon hover. If not given or empty there will be no tooltip. */
statusMessage: PropTypes.Requireable<PropTypes.ReactNodeLike>;
/** Pass a component you want to show as the suffix of the input, e.g., text string, icon. */
suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>;
/** Indicates that element can be focused and where it participates in sequential keyboard navigation.*/
tabIndex: PropTypes.Requireable<number>;
/** Handles text overflow behavior. It can either clip (default) or display ellipsis. */
textOverflow: PropTypes.Requireable<string>;
/** Controls placement of a status tooltip. */
tooltipPlacement: PropTypes.Requireable<string>;
/** Specifies the type of `<input/>` element to display. Default is text string. */
type: PropTypes.Requireable<string>;
};
static defaultProps: {
predicate: () => boolean;
autoSelect: boolean;
border: string;
clearButton: boolean;
closeOnSelect: boolean;
dropdownOffsetLeft: string;
dropdownWidth: null;
hasMore: boolean;
hideStatusSuffix: boolean;
inContainer: boolean;
infiniteScroll: boolean;
loadMore: null;
markedOption: boolean;
maxHeightPixels: number;
maxLength: number;
options: never[];
overflow: string;
selectedHighlight: boolean;
showOptionsIfEmptyInput: boolean;
textOverflow: string;
onSelect: () => void;
inputElement: React.JSX.Element;
popoverProps: {
appendTo: string;
flip: boolean;
fixed: boolean;
placement: string;
};
tabIndex: number;
autocomplete: string;
};
dropdownAdditionalProps(): {
options: any;
};
}
import InputWithOptions from '../InputWithOptions/InputWithOptions';
import PropTypes from 'prop-types';
import React from 'react';
//# sourceMappingURL=AutoComplete.d.ts.map