var _excluded = ["visible", "value", "multiple", "allowClear", "onChange", "list", "checkable", "checkbox", "checkboxProps", "checkboxPosition"];
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); }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
import React, { forwardRef, useRef, useImperativeHandle } from 'react';
import _ from 'lodash';

// 内库使用-start
import Result from "./../../Result";
import List from "./../../List";
// 内库使用-end

/* 测试使用-start
import { Result, List } from 'seedsui-react'
测试使用-end */

// Main
var Main = /*#__PURE__*/forwardRef(function (_ref, ref) {
  var _ref$visible = _ref.visible,
    visible = _ref$visible === void 0 ? true : _ref$visible,
    value = _ref.value,
    multiple = _ref.multiple,
    allowClear = _ref.allowClear,
    onChange = _ref.onChange,
    list = _ref.list,
    _ref$checkable = _ref.checkable,
    checkable = _ref$checkable === void 0 ? true : _ref$checkable,
    checkbox = _ref.checkbox,
    checkboxProps = _ref.checkboxProps,
    checkboxPosition = _ref.checkboxPosition,
    props = _objectWithoutProperties(_ref, _excluded);
  // Expose
  var mainRef = useRef(null);
  useImperativeHandle(ref, function () {
    return {
      mainDOM: mainRef.current,
      getMainDOM: function getMainDOM() {
        return mainRef.current;
      }
    };
  });
  return /*#__PURE__*/React.createElement("div", _extends({}, props, {
    className: "select-main".concat(props !== null && props !== void 0 && props.className ? ' ' + props.className : ''),
    ref: mainRef
  }), _.isEmpty(list) && /*#__PURE__*/React.createElement(Result, {
    className: "select-main-result",
    status: "empty"
  }), /*#__PURE__*/React.createElement(List, {
    allowClear: allowClear,
    multiple: multiple,
    value: value,
    list: list,
    onChange: onChange,
    checkable: checkable,
    checkbox: checkbox,
    checkboxProps: checkboxProps,
    checkboxPosition: checkboxPosition
  }));
});
export default Main;