UNPKG

1.27 kBJavaScriptView Raw
1"use strict";
2
3exports.__esModule = true;
4exports.default = void 0;
5
6var _map = _interopRequireDefault(require("lodash/fp/map"));
7
8var _toPairs = _interopRequireDefault(require("lodash/fp/toPairs"));
9
10var _kebabCase = _interopRequireDefault(require("lodash/fp/kebabCase"));
11
12var _react = require("react");
13
14var _server = require("react-dom/server");
15
16function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
18const DefaultProvider = ({
19 children
20}) => children;
21
22const toHelpers = (components, Provider = DefaultProvider) => {
23 const toHelper = ([componentName, Component]) => {
24 return (dust, options) => {
25 dust.helpers[(0, _kebabCase.default)(componentName)] = (chunk, context, bodies, props) => {
26 const providerPropsAttribute = props.context;
27 const providerProps = providerPropsAttribute ? context.get(providerPropsAttribute) : {};
28 const html = (0, _server.renderToStaticMarkup)((0, _react.createElement)(Provider, providerProps, (0, _react.createElement)(Component, props)));
29 chunk.write(html);
30 };
31 };
32 };
33
34 return (0, _map.default)(toHelper, (0, _toPairs.default)(components));
35};
36
37var _default = toHelpers;
38exports.default = _default;
39//# sourceMappingURL=index.js.map
\No newline at end of file