UNPKG

@mason-api/javascript-sdk

Version:

Mason component rendering library

40 lines (29 loc) 1.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _lodash = _interopRequireDefault(require("lodash")); var _immutabilityHelper = _interopRequireDefault(require("immutability-helper")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _default = function _default(getContext) { return function (node) { if (node.tag === 'mason-canvas') { var _getContext = getContext(), components = _getContext.components, transformations = _getContext.transformations; var componentId = node.p['data-id'] || node.p.id; var component = _lodash.default.get(components, componentId); if (component) { var embeddedTree = _lodash.default.mapValues(component.config.data.default.tree, transformations); return (0, _immutabilityHelper.default)(node, { c: { $set: embeddedTree } }); } } return node; }; }; exports.default = _default;