@bootstrap-styled/css-utils
Version:
Bootstrap mixins and utilities in javascript for bootstrap-styled.
80 lines (75 loc) • 3.75 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getSpacingUtilities = getSpacingUtilities;
exports.default = exports.defaultProps = void 0;
var _breakpoints = require("@bootstrap-styled/css-mixins/lib/breakpoints");
var defaultProps = {
'$grid-breakpoints': {
xs: '0',
sm: '576px',
md: '768px',
lg: '992px',
xl: '1200px'
},
'$spacers': {
// eslint-disable-line quote-props
0: {
x: 0,
y: 0
},
1: {
x: '0.25rem',
y: '0.25rem'
},
2: {
x: '0.5rem',
y: '0.5rem'
},
3: {
x: '1rem',
y: '1rem'
},
4: {
x: '1.5rem',
y: '1.5rem'
},
5: {
x: '3rem',
y: '3rem'
}
}
};
exports.defaultProps = defaultProps;
function getSpacingUtilities() // eslint-disable-line dot-notation
{
var gridBreakpoints = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultProps['$grid-breakpoints'];
var spacers = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultProps['$spacers'];
var abbrevs = {
margin: 'm',
padding: 'p'
};
var spacingUtilityList = [];
var infixList = [];
Object.keys(gridBreakpoints).forEach(function (breakpoint) {
var infix = (0, _breakpoints.breakpointInfix)(breakpoint, gridBreakpoints);
infixList.push(infix);
Object.keys(abbrevs).forEach(function (prop) {
var abbrev = abbrevs[prop];
Object.keys(spacers).forEach(function (size) {
var lengths = spacers[size];
spacingUtilityList.push((0, _breakpoints.mediaBreakpointUp)(breakpoint, gridBreakpoints, "\n .".concat(abbrev).concat(infix, "-").concat(size, " { ").concat(prop, ": ").concat(lengths.y, " ").concat(lengths.x, " !important; } /* a = All sides */\n .").concat(abbrev, "t").concat(infix, "-").concat(size, " { ").concat(prop, "-top: ").concat(lengths.y, " !important; }\n .").concat(abbrev, "r").concat(infix, "-").concat(size, " { ").concat(prop, "-right: ").concat(lengths.x, " !important; }\n .").concat(abbrev, "b").concat(infix, "-").concat(size, " { ").concat(prop, "-bottom: ").concat(lengths.y, " !important; }\n .").concat(abbrev, "l").concat(infix, "-").concat(size, " { ").concat(prop, "-left: ").concat(lengths.x, " !important; }\n .").concat(abbrev, "x").concat(infix, "-").concat(size, " {\n ").concat(prop, "-right: ").concat(lengths.x, " !important;\n ").concat(prop, "-left: ").concat(lengths.x, " !important;\n }\n .").concat(abbrev, "y").concat(infix, "-").concat(size, " {\n ").concat(prop, "-top: ").concat(lengths.y, " !important;\n ").concat(prop, "-bottom: ").concat(lengths.y, " !important;\n }\n ")));
});
});
});
var infixUtilityList = infixList.map(function (infix) {
return "\n .m".concat(infix, "-auto { margin: auto !important; }\n .mt").concat(infix, "-auto { margin-top: auto !important; }\n .mr").concat(infix, "-auto { margin-right: auto !important; }\n .mb").concat(infix, "-auto { margin-bottom: auto !important; }\n .ml").concat(infix, "-auto { margin-left: auto !important; }\n .mx").concat(infix, "-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my").concat(infix, "-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n ");
});
return "\n ".concat(infixUtilityList.join('\n'), "\n ").concat(spacingUtilityList.join('\n'), "\n ");
}
var _default = {
defaultProps: defaultProps,
getSpacingUtilities: getSpacingUtilities
};
exports.default = _default;
;