unistyle-flex-grid
Version:
Simple Flexbox grid layout system built with Unistyle
42 lines (32 loc) • 1.48 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', {
value: true
});
var _extends = Object.assign || 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; };
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _breakpoints = require('./breakpoints');
var _breakpoints2 = _interopRequireDefault(_breakpoints);
var _constants = require('./constants');
/**
* Generate a set of grid column classes using a namespace represented by the
* breakpoints' names for each one of the required number of columns, and adding
* the column flex properties
* @param {Object} bps - Breakpoints object with the media queries declarations
* @param {number} count - Quantity of column properties to be generated
* @returns {Object} - Column properties object
*/
function baseColumn(bps, count) {
var properties = {};
Object.keys(bps).forEach(function (bp) {
for (var index = 0; index <= count; index += 1) {
if (index === 0) {
properties['.col-' + bp] = _extends({}, _constants.col);
} else {
properties['.col-' + bp + '-' + index] = _extends({}, _constants.col);
}
}
});
return properties;
}
exports['default'] = baseColumn(_breakpoints2['default'], _constants.columns);
module.exports = exports['default'];