UNPKG

instantsearch-ui-components

Version:

Common UI components for InstantSearch.

37 lines 1.76 kB
import { cx } from "../../lib/index.js"; import { SubmitIcon, ApplyIcon } from "./icons.js"; export function createAutocompleteSuggestionComponent(_ref) { var createElement = _ref.createElement; return function AutocompleteSuggestion(userProps) { var item = userProps.item, children = userProps.children, onSelect = userProps.onSelect, onApply = userProps.onApply, _userProps$classNames = userProps.classNames, classNames = _userProps$classNames === void 0 ? {} : _userProps$classNames; return createElement("div", { onClick: onSelect, className: cx('ais-AutocompleteItemWrapper', 'ais-AutocompleteSuggestionWrapper', classNames.root) }, createElement("div", { className: cx('ais-AutocompleteItemContent', 'ais-AutocompleteSuggestionItemContent', classNames.content) }, createElement("div", { className: cx('ais-AutocompleteItemIcon', 'ais-AutocompleteSuggestionItemIcon', classNames.content) }, createElement(SubmitIcon, { createElement: createElement })), createElement("div", { className: cx('ais-AutocompleteItemContentBody', 'ais-AutocompleteSuggestionItemContentBody', classNames.content) }, children)), createElement("div", { className: cx('ais-AutocompleteItemActions', 'ais-AutocompleteSuggestionItemActions', classNames.actions) }, createElement("button", { className: cx('ais-AutocompleteItemActionButton', 'ais-AutocompleteSuggestionItemApplyButton', classNames.applyButton), type: "button", title: "Apply ".concat(item.query, " as search"), onClick: function onClick(evt) { evt.stopPropagation(); onApply(); } }, createElement(ApplyIcon, { createElement: createElement })))); }; }