"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.List = void 0;
var _styledComponents = _interopRequireDefault(require("styled-components"));
var _react = _interopRequireDefault(require("react"));
var _excluded = ["as", "className", "children", "separated", "fullWidthSeparator"];
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
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; }
var BaseList = _styledComponents.default.ul.withConfig({
  displayName: "List__BaseList",
  componentId: "sc-67l9u3-0"
})(["list-style-type:none;margin:0;padding:0;", " ", ""], function (p) {
  return p.separated ? "\n        li + li {\n          border-top: 1px solid ".concat(p.theme.color.divider, ";\n        }\n      ") : '';
}, function (p) {
  return p.fullWidthSeparator ? "\n        li + li {\n          border-top: 1px solid ".concat(p.theme.color.divider, ";\n          margin-left: -").concat(p.theme.spacing.unit(5), "px;\n          padding: 0 ").concat(p.theme.spacing.unit(5), "px;\n          width: 100%;\n          ").concat(p.theme.media.lessThan(p.theme.breakpoints.sm), " {\n            margin-left: -").concat(p.theme.spacing.unit(3), "px;\n            padding: 0 ").concat(p.theme.spacing.unit(3), "px;\n          }\n        }\n      ") : '';
});
var List = exports.List = _react.default.forwardRef(function (_ref, ref) {
  var _ref$as = _ref.as,
    as = _ref$as === void 0 ? 'ul' : _ref$as,
    className = _ref.className,
    children = _ref.children,
    separated = _ref.separated,
    fullWidthSeparator = _ref.fullWidthSeparator,
    rest = _objectWithoutProperties(_ref, _excluded);
  return _react.default.createElement(BaseList, _extends({
    ref: ref,
    className: className,
    separated: separated,
    fullWidthSeparator: fullWidthSeparator,
    as: as
  }, rest), children);
});
List.displayName = 'List';