var _excluded = [
  'children',
  'style',
  'dashed',
  'hairline',
  'contentPosition',
  'className',
];

function ownKeys(object, enumerableOnly) {
  var keys = Object.keys(object);
  if (Object.getOwnPropertySymbols) {
    var symbols = Object.getOwnPropertySymbols(object);
    enumerableOnly &&
      (symbols = symbols.filter(function(sym) {
        return Object.getOwnPropertyDescriptor(object, sym).enumerable;
      })),
      keys.push.apply(keys, symbols);
  }
  return keys;
}

function _objectSpread(target) {
  for (var i = 1; i < arguments.length; i++) {
    var source = null != arguments[i] ? arguments[i] : {};
    i % 2
      ? ownKeys(Object(source), !0).forEach(function(key) {
          _defineProperty(target, key, source[key]);
        })
      : Object.getOwnPropertyDescriptors
      ? Object.defineProperties(
          target,
          Object.getOwnPropertyDescriptors(source),
        )
      : ownKeys(Object(source)).forEach(function(key) {
          Object.defineProperty(
            target,
            key,
            Object.getOwnPropertyDescriptor(source, key),
          );
        });
  }
  return target;
}

function _defineProperty(obj, key, value) {
  if (key in obj) {
    Object.defineProperty(obj, key, {
      value: value,
      enumerable: true,
      configurable: true,
      writable: true,
    });
  } else {
    obj[key] = value;
  }
  return obj;
}

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;
}

/*
 * @Author: codingfly
 * @Description:
 * @Date: 2021-10-13 13:27:29
 * @LastEditTime: 2022-06-10 13:43:54
 * @FilePath: \remaxui\src\divider\index.tsx
 */
import React from 'react';
import styles from './styles/index.module.less';
import classNames from 'classnames';
import { View } from 'remax/one';
export default (function(_ref) {
  var children = _ref.children,
    style = _ref.style,
    _ref$dashed = _ref.dashed,
    dashed = _ref$dashed === void 0 ? false : _ref$dashed,
    _ref$hairline = _ref.hairline,
    hairline = _ref$hairline === void 0 ? true : _ref$hairline,
    _ref$contentPosition = _ref.contentPosition,
    contentPosition =
      _ref$contentPosition === void 0 ? 'center' : _ref$contentPosition,
    className = _ref.className,
    props = _objectWithoutProperties(_ref, _excluded);

  return /*#__PURE__*/ React.createElement(
    View,
    _objectSpread(
      _objectSpread(
        {
          className: classNames(
            styles.divider,
            className,
            dashed && styles.divider_dashed,
            hairline && styles.divider_hairline,
            contentPosition === 'left' &&
              !!children &&
              styles.divider_content_left,
            contentPosition === 'center' &&
              !!children &&
              styles.divider_content_center,
            contentPosition === 'right' &&
              !!children &&
              styles.divider_content_right,
          ),
        },
        props,
      ),
      {},
      {
        style: style,
      },
    ),
    children,
  );
});
