UNPKG

bootstrap-styled-theme

Version:

is a set of utility for themes made for bootstrap-styled

40 lines (35 loc) 995 B
"use strict"; 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; }; exports.default = createMakeTheme; /** * Convert a theme into a makeTheme * @param theme */ var toMakeTheme = exports.toMakeTheme = function toMakeTheme(theme) { return function (userTheme) { return _extends({}, theme, userTheme); }; }; function makeThemeFromList(list, theme) { var all = [].concat(list); var t = theme; var mt = void 0; while (mt = all.pop()) { // eslint-disable-line t = mt(t); } return t; } /** * Create a makeTheme using a list of makeTheme * @param list * @returns {function(*=): *} */ function createMakeTheme(list) { return function (theme) { return makeThemeFromList(list, theme); }; }