{"version":3,"sources":["jsdelivr-header.js","/npm/@fanyinghao/docxtemplater-image-module@3.1.1/js/index.js"],"names":[],"mappings":"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","file":"/npm/@fanyinghao/docxtemplater-image-module@3.1.1/js/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@fanyinghao/docxtemplater-image-module@3.1.1/js/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar templates = require(\"./templates\");\nvar DocUtils = require(\"docxtemplater\").DocUtils;\nvar DOMParser = require(\"xmldom\").DOMParser;\n\nfunction isNaN(number) {\n\treturn !(number === number);\n}\n\nvar ImgManager = require(\"./imgManager\");\nvar moduleName = \"open-xml-templating/docxtemplater-image-module\";\n\nfunction getInnerDocx(_ref) {\n\tvar part = _ref.part;\n\n\treturn part;\n}\n\nfunction getInnerPptx(_ref2) {\n\tvar part = _ref2.part,\n\t    left = _ref2.left,\n\t    right = _ref2.right,\n\t    postparsed = _ref2.postparsed;\n\n\tvar xmlString = postparsed.slice(left + 1, right).reduce(function (concat, item) {\n\t\treturn concat + item.value;\n\t}, \"\");\n\tvar xmlDoc = new DOMParser().parseFromString(\"<xml>\" + xmlString + \"</xml>\");\n\tvar offset = xmlDoc.getElementsByTagName(\"a:off\");\n\tvar ext = xmlDoc.getElementsByTagName(\"a:ext\");\n\tpart.ext = {\n\t\tcx: parseInt(ext[0].getAttribute(\"cx\"), 10),\n\t\tcy: parseInt(ext[0].getAttribute(\"cy\"), 10)\n\t};\n\tpart.offset = {\n\t\tx: parseInt(offset[0].getAttribute(\"x\"), 10),\n\t\ty: parseInt(offset[0].getAttribute(\"y\"), 10)\n\t};\n\treturn part;\n}\n\nvar ImageModule = function () {\n\tfunction ImageModule(options) {\n\t\t_classCallCheck(this, ImageModule);\n\n\t\tthis.name = \"ImageModule\";\n\t\tthis.options = options || {};\n\t\tthis.imgManagers = {};\n\t\tif (this.options.centered == null) {\n\t\t\tthis.options.centered = false;\n\t\t}\n\t\tif (this.options.getImage == null) {\n\t\t\tthrow new Error(\"You should pass getImage\");\n\t\t}\n\t\tif (this.options.getSize == null) {\n\t\t\tthrow new Error(\"You should pass getSize\");\n\t\t}\n\t\tthis.imageNumber = 1;\n\t}\n\n\t_createClass(ImageModule, [{\n\t\tkey: \"optionsTransformer\",\n\t\tvalue: function optionsTransformer(options, docxtemplater) {\n\t\t\tvar relsFiles = docxtemplater.zip.file(/\\.xml\\.rels/).concat(docxtemplater.zip.file(/\\[Content_Types\\].xml/)).map(function (file) {\n\t\t\t\treturn file.name;\n\t\t\t});\n\t\t\tthis.fileTypeConfig = docxtemplater.fileTypeConfig;\n\t\t\tthis.fileType = docxtemplater.fileType;\n\t\t\tthis.zip = docxtemplater.zip;\n\t\t\toptions.xmlFileNames = options.xmlFileNames.concat(relsFiles);\n\t\t\treturn options;\n\t\t}\n\t}, {\n\t\tkey: \"set\",\n\t\tvalue: function set(options) {\n\t\t\tif (options.zip) {\n\t\t\t\tthis.zip = options.zip;\n\t\t\t}\n\t\t\tif (options.xmlDocuments) {\n\t\t\t\tthis.xmlDocuments = options.xmlDocuments;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"parse\",\n\t\tvalue: function parse(placeHolderContent) {\n\t\t\tvar module = moduleName;\n\t\t\tvar type = \"placeholder\";\n\t\t\tif (placeHolderContent.substring(0, 2) === \"%%\") {\n\t\t\t\treturn { type: type, value: placeHolderContent.substr(2), module: module, centered: true };\n\t\t\t}\n\t\t\tif (placeHolderContent.substring(0, 1) === \"%\") {\n\t\t\t\treturn { type: type, value: placeHolderContent.substr(1), module: module, centered: false };\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t}, {\n\t\tkey: \"postparse\",\n\t\tvalue: function postparse(parsed) {\n\t\t\tvar expandTo = void 0;\n\t\t\tvar getInner = void 0;\n\t\t\tif (this.fileType === \"pptx\") {\n\t\t\t\texpandTo = \"p:sp\";\n\t\t\t\tgetInner = getInnerPptx;\n\t\t\t} else {\n\t\t\t\texpandTo = this.options.centered ? \"w:p\" : \"w:t\";\n\t\t\t\tgetInner = getInnerDocx;\n\t\t\t}\n\t\t\treturn DocUtils.traits.expandToOne(parsed, { moduleName: moduleName, getInner: getInner, expandTo: expandTo });\n\t\t}\n\t}, {\n\t\tkey: \"render\",\n\t\tvalue: function render(part, options) {\n\t\t\tthis.imgManagers[options.filePath] = this.imgManagers[options.filePath] || new ImgManager(this.zip, options.filePath, this.xmlDocuments, this.fileType);\n\t\t\tvar imgManager = this.imgManagers[options.filePath];\n\t\t\tif (!part.type === \"placeholder\" || part.module !== moduleName) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tvar tagValue = options.scopeManager.getValue(part.value, { part: part });\n\t\t\tif (!tagValue) {\n\t\t\t\treturn { value: this.fileTypeConfig.tagTextXml };\n\t\t\t}\n\t\t\tvar imgBuffer = this.options.getImage(tagValue, part.value);\n\t\t\tif (!imgBuffer) {\n\t\t\t\treturn { value: this.fileTypeConfig.tagTextXml };\n\t\t\t}\n\t\t\tvar rId = imgManager.addImageRels(this.getNextImageName(), imgBuffer);\n\t\t\tvar sizePixel = this.options.getSize(imgBuffer, tagValue, part.value);\n\t\t\treturn this.getRenderedPart(part, rId, sizePixel);\n\t\t}\n\t}, {\n\t\tkey: \"getRenderedPart\",\n\t\tvalue: function getRenderedPart(part, rId, sizePixel) {\n\t\t\tif (isNaN(rId)) {\n\t\t\t\tthrow new Error(\"rId is NaN, aborting\");\n\t\t\t}\n\t\t\tvar size = [DocUtils.convertPixelsToEmus(sizePixel[0]), DocUtils.convertPixelsToEmus(sizePixel[1])];\n\t\t\tvar centered = this.options.centered || part.centered;\n\t\t\tvar newText = void 0;\n\t\t\tif (this.fileType === \"pptx\") {\n\t\t\t\tnewText = this.getRenderedPartPptx(part, rId, size, centered);\n\t\t\t} else {\n\t\t\t\tnewText = this.getRenderedPartDocx(rId, size, centered);\n\t\t\t}\n\t\t\treturn { value: newText };\n\t\t}\n\t}, {\n\t\tkey: \"getRenderedPartPptx\",\n\t\tvalue: function getRenderedPartPptx(part, rId, size, centered) {\n\t\t\tvar offset = { x: part.offset.x, y: part.offset.y };\n\t\t\tvar cellCX = part.ext.cx;\n\t\t\tvar cellCY = part.ext.cy;\n\t\t\tvar imgW = size[0];\n\t\t\tvar imgH = size[1];\n\n\t\t\tif (centered) {\n\t\t\t\toffset.x += cellCX / 2 - imgW / 2;\n\t\t\t\toffset.y += cellCY / 2 - imgH / 2;\n\t\t\t}\n\n\t\t\treturn templates.getPptxImageXml(rId, [imgW, imgH], offset);\n\t\t}\n\t}, {\n\t\tkey: \"getRenderedPartDocx\",\n\t\tvalue: function getRenderedPartDocx(rId, size, centered) {\n\t\t\treturn centered ? templates.getImageXmlCentered(rId, size) : templates.getImageXml(rId, size);\n\t\t}\n\t}, {\n\t\tkey: \"getNextImageName\",\n\t\tvalue: function getNextImageName() {\n\t\t\tvar name = \"image_generated_\" + this.imageNumber + \".png\";\n\t\t\tthis.imageNumber++;\n\t\t\treturn name;\n\t\t}\n\t}]);\n\n\treturn ImageModule;\n}();\n\nmodule.exports = ImageModule;"]}