UNPKG

twing

Version:

First-class Twig engine for Node.js

22 lines (21 loc) 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.executeBlockReferenceNodeSynchronously = exports.executeBlockReferenceNode = void 0; const traceable_method_1 = require("../helpers/traceable-method"); const executeBlockReferenceNode = (node, executionContext) => { const { template, context } = executionContext; const { name } = node.attributes; const displayBlock = (0, traceable_method_1.getTraceableMethod)(template.displayBlock, node, template.source); return displayBlock(Object.assign(Object.assign({}, executionContext), { context: context.clone() }), name, true); }; exports.executeBlockReferenceNode = executeBlockReferenceNode; const executeBlockReferenceNodeSynchronously = (node, executionContext) => { const { template, context } = executionContext; const { name } = node.attributes; const displayBlock = (0, traceable_method_1.getSynchronousTraceableMethod)(template.displayBlock, node, template.source); return displayBlock(Object.assign(Object.assign({}, executionContext), { // todo: was context: context.clone() // context: context.clone() context: new Map(context.entries()) }), name, true); }; exports.executeBlockReferenceNodeSynchronously = executeBlockReferenceNodeSynchronously;