'use strict';

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

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

var _styledComponents2 = _interopRequireDefault(_styledComponents);

var _themeGet = require('../../../extensions/themeGet');

var _themeGet2 = _interopRequireDefault(_themeGet);

var _CheckboxInput = require('./CheckboxInput');

var _CheckboxInput2 = _interopRequireDefault(_CheckboxInput);

var _icons = require('../../Icon/icons');

var _icons2 = _interopRequireDefault(_icons);

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

var SIZE = '30px';
var CHECK_SIZE = '21px';
var SMALL_SIZE = '20px';
var SMALL_CHECK_SIZE = '1em';

var CheckboxLabel = _styledComponents2.default.label.withConfig({
  displayName: 'CheckboxLabel'
})(['display:block;padding:4px 0 5px calc(', ' + 10px);min-height:', ';min-width:', ';line-height:1.5;cursor:pointer;position:relative;user-select:none;&::before{content:"";color:', ';font-family:', ';font-size:', ';display:block;position:absolute;top:50%;left:calc(', ' / 2);transform:translate(-50%,-48%);z-index:1;box-sizing:border-box;transition:all 0.2s ease;}&::after{content:"";background:', ';border-color:', ';border-width:', ';border-style:solid;border-radius:3px;width:', ';height:', ';position:absolute;top:50%;left:0;transform:translateY(-50%);transition:all 0.2s ease;box-sizing:border-box;}', ':hover:not(:disabled) + &::after,', ':focus:not(:disabled) + &::after,', ':active:not(:disabled) + &::after{box-shadow:', ';}', ':checked + &::after{background:', ';}', ':disabled + &{color:', ';cursor:default;}', ':disabled + &::after{background:', ';border-color:', ';}', ':disabled:checked + &{&::after{background:', ';border-color:', ';}&::before{color:', ';}}', ':checked + &::before{content:"', '";}'], SIZE, SIZE, SIZE, (0, _themeGet2.default)('colors.text.inverted'), (0, _themeGet2.default)('fonts.icon'), CHECK_SIZE, SIZE, (0, _themeGet2.default)('colors.background.default'), (0, _themeGet2.default)('colors.primary.dark'), (0, _themeGet2.default)('thicknesses.wide'), SIZE, SIZE, _CheckboxInput2.default, _CheckboxInput2.default, _CheckboxInput2.default, (0, _themeGet2.default)('shadows.focusOutline'), _CheckboxInput2.default, (0, _themeGet2.default)('colors.primary.dark'), _CheckboxInput2.default, (0, _themeGet2.default)('colors.text.disabled'), _CheckboxInput2.default, (0, _themeGet2.default)('colors.background.disabled'), (0, _themeGet2.default)('colors.border.disabled'), _CheckboxInput2.default, (0, _themeGet2.default)('colors.background.disabledSelected'), (0, _themeGet2.default)('colors.border.disabled'), (0, _themeGet2.default)('colors.text.inverted'), _CheckboxInput2.default, (0, _icons2.default)('checkmark'));

CheckboxLabel.Small = (0, _styledComponents2.default)(CheckboxLabel).withConfig({
  displayName: 'CheckboxLabel__Small'
})(['padding:4px 0 5px calc(', ' + 10px);min-height:', ';min-width:', ';&::before{font-size:', ';left:calc(', ' / 2);}&::after{width:', ';height:', ';}'], SMALL_SIZE, SMALL_SIZE, SMALL_SIZE, SMALL_CHECK_SIZE, SMALL_SIZE, SMALL_SIZE, SMALL_SIZE);

exports.default = CheckboxLabel;