UNPKG

docxml

Version:

TypeScript (component) library for building and parsing a DOCX file

37 lines (36 loc) 1.38 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Renderer = void 0; const fontoxpath_1 = __importDefault(require("fontoxpath")); const Registry_js_1 = require("./Registry.js"); class Renderer extends Registry_js_1.Registry { constructor(factory, ...sets) { super(...sets); Object.defineProperty(this, "factory", { enumerable: true, configurable: true, writable: true, value: void 0 }); this.factory = factory; } render(node, additionalProps) { return (function recurse(registry, factory, node) { const props = { node, traverse: (query = './node()') => fontoxpath_1.default .evaluateXPathToNodes(query, node, null, additionalProps || {}, { language: fontoxpath_1.default.evaluateXPath.XQUERY_3_1_LANGUAGE, }) .map((n) => recurse(registry, factory, n)) .filter((o) => o !== null), ...(additionalProps || {}), }; return factory(registry.find(node), props); })(this, this.factory, node); } } exports.Renderer = Renderer;