UNPKG

instantsearch-ui-components

Version:

Common UI components for InstantSearch.

46 lines (45 loc) 1.86 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.createChatToggleButtonComponent = createChatToggleButtonComponent; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _cx = require("../../lib/cx"); var _Button = require("../Button"); var _icons = require("./icons"); var _excluded = ["open", "onClick", "toggleIconComponent", "classNames", "className"]; function createChatToggleButtonComponent(_ref) { var createElement = _ref.createElement; var Button = (0, _Button.createButtonComponent)({ createElement: createElement }); return function ChatToggleButton(_ref2) { var open = _ref2.open, onClick = _ref2.onClick, ToggleIconComponent = _ref2.toggleIconComponent, _ref2$classNames = _ref2.classNames, classNames = _ref2$classNames === void 0 ? {} : _ref2$classNames, className = _ref2.className, props = (0, _objectWithoutProperties2.default)(_ref2, _excluded); var defaultIcon = open ? createElement(_icons.ChevronUpIconComponent, { createElement: createElement, width: 28, height: 28 }) : createElement(_icons.SparklesIconComponent, { createElement: createElement, width: 28, height: 28 }); return createElement(Button, (0, _extends2.default)({ variant: "primary", size: "md", iconOnly: true, className: (0, _cx.cx)('ais-ChatToggleButton', open && 'ais-ChatToggleButton--open', classNames.root, className), onClick: onClick }, props), ToggleIconComponent ? createElement(ToggleIconComponent, { isOpen: open }) : defaultIcon); }; }