'use strict';

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

var _styledComponents = require('styled-components');

var _styledComponents2 = _interopRequireDefault(_styledComponents);

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

var Label = _styledComponents2.default.label.withConfig({ displayName: 'Label' }).withConfig({
  displayName: 'Label__Label'
})(['font-size: ', ';letter-spacing: ', ';font-weight: ', ';font-family: ', ';margin: ', ';padding: ', ';color: ', ';background: ', ';opacity: ', ';', ''], function (_ref) {
  var theme = _ref.theme;
  return theme.label.fontSize;
}, function (_ref2) {
  var theme = _ref2.theme;
  return theme.label.letterSpacing;
}, function (_ref3) {
  var theme = _ref3.theme;
  return theme.label.fontWeight;
}, function (_ref4) {
  var theme = _ref4.theme;
  return theme.label.fontFamily;
}, function (_ref5) {
  var theme = _ref5.theme;
  return theme.label.margin;
}, function (_ref6) {
  var theme = _ref6.theme;
  return theme.label.padding;
}, function (_ref7) {
  var theme = _ref7.theme;
  return theme.label.fg;
}, function (_ref8) {
  var theme = _ref8.theme;
  return theme.label.bg;
}, function (_ref9) {
  var disabled = _ref9.disabled;
  return disabled ? '0.5' : '1';
}, function (_ref10) {
  var required = _ref10.required,
      theme = _ref10.theme;
  return required ? (0, _styledComponents.css)(['&::after {content: \'*\';color: ', ';padding-left: 0.3em;}'], theme.label.requiredMarkFG) : '';
});

Label.usage = '\n# Label\n\nA simple label. Meant to be tied to an input component.\n\n```\n<Label htmlFor="some-components-id">Hi</Label>\n```\n';

exports.default = Label;