UNPKG

ca-ui-react-themer-jss

Version:

Themer middleware for React JSS integration

39 lines (30 loc) 1.24 kB
'use strict'; 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 */