ca-ui-react-themer-jss
Version:
Themer middleware for React JSS integration
39 lines (30 loc) • 1.24 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createMiddleware = createMiddleware;
var _reactJss = require('react-jss');
var _reactJss2 = _interopRequireDefault(_reactJss);
var _compose = require('recompose/compose');
var _compose2 = _interopRequireDefault(_compose);
var _utils = require('../utils');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* Creates a new JSS middleware for themer.
*
* @param {Function} customInjectSheet ReactJSS decorator
* @return {Function} Middleware for themer
* @public
*/
function createMiddleware(customInjectSheet) {
var injectSheetInstance = customInjectSheet || _reactJss2.default;
return function (component) {
var resolvedTheme = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
return (0, _compose2.default)(injectSheetInstance(resolvedTheme.styles), _utils.mapPropsDecorator)(component);
};
} /**
* Copyright (c) 2017 CA. All rights reserved.
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file for details.
*/
/* eslint-disable import/prefer-default-export */