"use strict";

Object.defineProperty(exports, "__esModule", {
    value: true
});

var _extends2 = require("babel-runtime/helpers/extends");

var _extends3 = _interopRequireDefault(_extends2);

var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");

var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);

var _createClass2 = require("babel-runtime/helpers/createClass");

var _createClass3 = _interopRequireDefault(_createClass2);

var _possibleConstructorReturn2 = require("babel-runtime/helpers/possibleConstructorReturn");

var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);

var _inherits2 = require("babel-runtime/helpers/inherits");

var _inherits3 = _interopRequireDefault(_inherits2);

var _react = require("react");

var _react2 = _interopRequireDefault(_react);

var _treeSelect = require("antd/lib/tree-select");

var _treeSelect2 = _interopRequireDefault(_treeSelect);

var _pagePointEnhanced = require("../page-point/pagePointEnhanced");

var _pagePointEnhanced2 = _interopRequireDefault(_pagePointEnhanced);

var _configProvider = require("../config-provider");

require("antd/lib/tree-select/style");

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }

var __rest = undefined && undefined.__rest || function (s, e) {
    var t = {};
    for (var p in s) {
        if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
    }if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
        if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
    }
    return t;
};
var TreeNode = _treeSelect2["default"].TreeNode,
    SHOW_ALL = _treeSelect2["default"].SHOW_ALL,
    SHOW_PARENT = _treeSelect2["default"].SHOW_PARENT,
    SHOW_CHILD = _treeSelect2["default"].SHOW_CHILD;

var FdxTreeSelect = function (_Component) {
    (0, _inherits3["default"])(FdxTreeSelect, _Component);

    function FdxTreeSelect() {
        (0, _classCallCheck3["default"])(this, FdxTreeSelect);
        return (0, _possibleConstructorReturn3["default"])(this, (FdxTreeSelect.__proto__ || Object.getPrototypeOf(FdxTreeSelect)).apply(this, arguments));
    }

    (0, _createClass3["default"])(FdxTreeSelect, [{
        key: "render",
        value: function render() {
            var _a = this.props,
                forwardedRef = _a.forwardedRef,
                rest = __rest(_a, ["forwardedRef"]);
            return _react2["default"].createElement(_treeSelect2["default"], (0, _extends3["default"])({ ref: forwardedRef }, rest));
        }
    }]);
    return FdxTreeSelect;
}(_react.Component);

var TreeSelect = _react2["default"].forwardRef(function (props, ref) {
    return _react2["default"].createElement(
        _configProvider.ConfigConsumer,
        null,
        function (_ref) {
            var pagePoint = _ref.pagePoint;
            return pagePoint ? _react2["default"].createElement(_pagePointEnhanced2["default"], (0, _extends3["default"])({ compType: "TreeSelect" }, props, { render: function render(eventprops) {
                    return _react2["default"].createElement(FdxTreeSelect, (0, _extends3["default"])({}, props, { forwardedRef: ref }, eventprops, { "data-ui-role": "TreeSelect" }));
                } })) : _react2["default"].createElement(FdxTreeSelect, (0, _extends3["default"])({}, props, { forwardedRef: ref }));
        }
    );
});
TreeSelect.TreeNode = TreeNode;
TreeSelect.SHOW_ALL = SHOW_ALL;
TreeSelect.SHOW_PARENT = SHOW_PARENT;
TreeSelect.SHOW_CHILD = SHOW_CHILD;
exports["default"] = TreeSelect;
module.exports = exports['default'];