UNPKG

1.71 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = void 0;
7var validSizes = ['', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', 'three-quarters', 'two-thirds', 'half', 'one-third', 'one-quarter', 'full', 'four-fifths', 'three-fifths', 'two-fifths', 'one-fifth'];
8
9var Column = function Column(_ref, addColumn) {
10 var key = _ref.key,
11 size = _ref.size;
12 var column = {
13 key: key,
14 size: size
15 };
16 var builder = {
17 element: function element(_element) {
18 column.elements = column.elements || [];
19 column.elements.push(_element);
20 return builder;
21 },
22 build: function build() {
23 return addColumn(column);
24 }
25 };
26 return builder;
27};
28
29var _default = function _default() {
30 var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
31 var builder = {};
32
33 var addColumn = function addColumn(column) {
34 props.columns.push(column);
35 return builder;
36 };
37
38 builder.column = function (_ref2) {
39 var _ref2$key = _ref2.key,
40 key = _ref2$key === void 0 ? '' : _ref2$key,
41 size = _ref2.size;
42 size = '' + size;
43 if (!validSizes.includes(size)) throw new Error("size is \"".concat(size, "\" must be one of ").concat(validSizes.join(', ')));
44 props.columns = props.columns || [];
45 key = key || "col-".concat(props.columns.length);
46 return Column({
47 key: key,
48 size: size
49 }, addColumn);
50 };
51
52 builder.gap = function (_ref3) {
53 var key = _ref3.key,
54 size = _ref3.size;
55 builder.column({
56 key: key,
57 size: size
58 }, addColumn).build();
59 return builder;
60 };
61
62 return builder;
63};
64
65exports.default = _default;
\No newline at end of file