From 5fe2293f89a2eb9f26bf24b0f935fd8763d116a0 Mon Sep 17 00:00:00 2001 From: bendtherules Date: Mon, 16 Dec 2019 10:19:52 +0530 Subject: [PATCH] renderer - Consume taghandler, process child accordingly --- src/renderer.ts | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/renderer.ts b/src/renderer.ts index 61c6d2c..c183b85 100644 --- a/src/renderer.ts +++ b/src/renderer.ts @@ -11,6 +11,8 @@ import { ReactElementSubsetWithPrimitive, } from './helpers'; +import handleTag from './tagHandler'; + function render( node: ReactElementSubsetWithPrimitive, parentASTNode?: MDASTParent @@ -35,6 +37,7 @@ function render( node.forEach(fragmentEle => render(fragmentEle, parentASTNodeMod)); } else { const { props, type: elementType } = node; + let processChildren = true; // Handle nested function or class components { @@ -62,10 +65,17 @@ function render( { // Handle intrinsic types of element like div, h1 + const newParentASTNode = handleTag(node, parentASTNodeMod); + if (newParentASTNode === undefined) { + processChildren = false; + } else { + processChildren = true; + parentASTNodeMod = newParentASTNode; + } } - { - // Handle children + // Handle children + if (processChildren) { const { children } = props; // Render processed array of children