function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }

import React from "react";
import MultiSelectBehaviour, { OptionBehaviour, SelectedOptionBehaviour } from "./MultiSelect.behaviour";
import MultiSelectSkeleton, { OptionSkeleton, selectedOptionSkeleton } from "./MultiSelect.skeleton";
import multiSelectPropTypes, { defaultProps, propsDescription } from "./MultiSelect.propTypes";
import constantProps from "./MultiSelect.constantProps";
import componentCategories from "../../docs-utils/componentCategories";
import componentGroups from "../../docs-utils/componentGroups";
import ListItemPropTypes, { defaultProps as listItemDefaultProps, propsDescription as listItemPropsDescription } from "../listitem/ListItem.propTypes";
import ListItemConstants from "../listitem/ListItem.constantProps";
export default function MultiSelect(props) {
  return /*#__PURE__*/React.createElement(MultiSelectBehaviour, _extends({}, props, {
    renderComponent: MultiSelectSkeleton
  }));
}
export function SelectedOption(props) {
  return /*#__PURE__*/React.createElement(SelectedOptionBehaviour, _extends({}, props, {
    renderComponent: selectedOptionSkeleton
  }));
}
export function Option(props) {
  return /*#__PURE__*/React.createElement(OptionBehaviour, _extends({}, props, {
    renderComponent: OptionSkeleton
  }));
}
Option.displayName = "Option";
Option.propTypes = ListItemPropTypes;
Option.defaultProps = listItemDefaultProps;
Option.propsDescription = listItemPropsDescription;
Option.constantProps = ListItemConstants;
MultiSelect.propTypes = multiSelectPropTypes;
MultiSelect.defaultProps = defaultProps;
MultiSelect.propsDescription = propsDescription;
MultiSelect.constantProps = constantProps;

if (false) {
  MultiSelect.docs = {
    componentGroup: componentGroups.Components,
    folderName: componentCategories.UCL
  };
}