UNPKG

2.41 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.Column = exports.Row = exports.Grid = undefined;
7
8var _templateObject = _taggedTemplateLiteral(['\n padding-left: 1.25em;\n padding-right: 1.25em;\n'], ['\n padding-left: 1.25em;\n padding-right: 1.25em;\n']),
9 _templateObject2 = _taggedTemplateLiteral(['\n display: flex;\n flex-wrap: wrap;\n margin-left: -1.25em;\n margin-right: -1.25em;\n flex-direction: ', ';\n justify-content: ', ';\n'], ['\n display: flex;\n flex-wrap: wrap;\n margin-left: -1.25em;\n margin-right: -1.25em;\n flex-direction: ', ';\n justify-content: ', ';\n']),
10 _templateObject3 = _taggedTemplateLiteral(['\n display: ', ';\n flex-grow: 0;\n flex-shrink: 0;\n padding-left: 1.25em;\n padding-right: 1.25em;\n\n ', '\n ', ' { ', ' }\n ', ' { ', ' }\n ', ' { ', ' }\n'], ['\n display: ', ';\n flex-grow: 0;\n flex-shrink: 0;\n padding-left: 1.25em;\n padding-right: 1.25em;\n\n ', '\n ', ' { ', ' }\n ', ' { ', ' }\n ', ' { ', ' }\n']);
11
12var _styledComponents = require('styled-components');
13
14var _styledComponents2 = _interopRequireDefault(_styledComponents);
15
16function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
18function _taggedTemplateLiteral(strings, raw) { return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
19
20var breakpoints = {
21 small: '40em',
22 medium: '52em',
23 large: '64em'
24};
25
26var ms = function ms(size) {
27 return '@media screen and (min-width: ' + size + ')';
28};
29var mx = function mx(point) {
30 return ms(breakpoints[point]);
31};
32var p = function p(n) {
33 return typeof n !== 'undefined' ? n * 100 + '%' : null;
34};
35var width = function width(key) {
36 return function (props) {
37 return props[key] ? 'flex-basis: ' + p(props[key]) + '; max-width: ' + p(props[key]) + ';' : null;
38 };
39};
40
41var Grid = exports.Grid = _styledComponents2.default.div(_templateObject);
42
43var Row = exports.Row = _styledComponents2.default.div(_templateObject2, function (props) {
44 return props.column ? 'column' : 'row';
45}, function (props) {
46 return props.justify || 'space-between';
47});
48
49var Column = exports.Column = _styledComponents2.default.div(_templateObject3, function (props) {
50 return props.flex ? 'flex' : 'block';
51}, width('xs'), mx('small'), width('sm'), mx('medium'), width('md'), mx('large'), width('lg'));
\No newline at end of file