UNPKG

contentful-rich-text-html-parser

Version:
47 lines 1.82 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.processConvertedNodesFromTopLevel = void 0; var rich_text_types_1 = require("@contentful/rich-text-types"); var utils_js_1 = require("./utils.js"); var processConvertedNodesFromTopLevel = function (node, options) { if ((0, utils_js_1.isNodeTypeBlock)(node)) { if ((0, utils_js_1.isNodeTypeTopLevelBlock)(node)) { return node; } // Block types that can not be at the top level are: BLOCKS.DOCUMENT | BLOCKS.LIST_ITEM | BLOCKS.TABLE_ROW | BLOCKS.TABLE_CELL | BLOCKS.TABLE_HEADER_CELL if (node.nodeType === rich_text_types_1.BLOCKS.DOCUMENT) { return null; } // TODO: Handle top level list items and table elements return node; } if ((0, utils_js_1.isNodeTypeInline)(node)) { if (options.postProcessing.handleTopLevelInlines === "remove") { return null; } if (options.postProcessing.handleTopLevelInlines === "wrap-paragraph") { return { nodeType: rich_text_types_1.BLOCKS.PARAGRAPH, data: {}, content: [node], }; } return node; } if ((0, utils_js_1.isNodeTypeText)(node)) { if (options.postProcessing.handleTopLevelText === "remove") { return null; } if (options.postProcessing.handleTopLevelText === "wrap-paragraph") { return { nodeType: rich_text_types_1.BLOCKS.PARAGRAPH, data: {}, content: [node], }; } return node; } return null; }; exports.processConvertedNodesFromTopLevel = processConvertedNodesFromTopLevel; //# sourceMappingURL=processConvertedNodesFromTopLevel.js.map