docx-preview.min-IZeDib6d.js 71 KB

12345678910111213141516171819202122
  1. import{e as de}from"./jszip.min-ci_2jVlE.js";import"./index-CcX5yBDS.js";import"./vue-vendor-C15EL-OS.js";import"./ViewerDocxFromUrl-Dbe50iYC.js";import"./index-DwBOEXYR.js";import"./index-B9LNbw29.js";/* empty css */import"./index-D4nxkGzY.js";var b;(function(n){n.OfficeDocument="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",n.FontTable="http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable",n.Image="http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",n.Numbering="http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering",n.Styles="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",n.StylesWithEffects="http://schemas.microsoft.com/office/2007/relationships/stylesWithEffects",n.Theme="http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",n.Settings="http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings",n.WebSettings="http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings",n.Hyperlink="http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",n.Footnotes="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes",n.Endnotes="http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes",n.Footer="http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer",n.Header="http://schemas.openxmlformats.org/officeDocument/2006/relationships/header",n.ExtendedProperties="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",n.CoreProperties="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",n.CustomProperties="http://schemas.openxmlformats.org/package/2006/relationships/metadata/custom-properties",n.Comments="http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",n.CommentsExtended="http://schemas.microsoft.com/office/2011/relationships/commentsExtended"})(b||(b={}));const Y={wordml:"http://schemas.openxmlformats.org/wordprocessingml/2006/main"},y={Dxa:{mul:.05,unit:"pt"},Emu:{mul:1/12700,unit:"pt"},FontSize:{mul:.5,unit:"pt"},Border:{mul:.125,unit:"pt"},Point:{mul:1,unit:"pt"},Percent:{mul:.02,unit:"%"}};function Q(n,e=y.Dxa){return n==null||/.+(p[xt]|[%])$/.test(n)?n:`${(parseInt(n)*e.mul).toFixed(2)}${e.unit}`}function ee(n,e,t){if(n.namespaceURI!=Y.wordml)return!1;switch(n.localName){case"color":e.color=t.attr(n,"val");break;case"sz":e.fontSize=t.lengthAttr(n,"val",y.FontSize);break;default:return!1}return!0}class te{elements(e,t=null){const r=[];for(let a=0,s=e.childNodes.length;a<s;a++){let o=e.childNodes.item(a);o.nodeType!=1||t!=null&&o.localName!=t||r.push(o)}return r}element(e,t){for(let r=0,a=e.childNodes.length;r<a;r++){let s=e.childNodes.item(r);if(s.nodeType==1&&s.localName==t)return s}return null}elementAttr(e,t,r){var a=this.element(e,t);return a?this.attr(a,r):void 0}attrs(e){return Array.from(e.attributes)}attr(e,t){for(let r=0,a=e.attributes.length;r<a;r++){let s=e.attributes.item(r);if(s.localName==t)return s.value}return null}intAttr(e,t,r=null){var a=this.attr(e,t);return a?parseInt(a):r}hexAttr(e,t,r=null){var a=this.attr(e,t);return a?parseInt(a,16):r}floatAttr(e,t,r=null){var a=this.attr(e,t);return a?parseFloat(a):r}boolAttr(e,t,r=null){return function(a,s=!1){switch(a){case"1":case"on":case"true":return!0;case"0":case"off":case"false":return!1;default:return s}}(this.attr(e,t),r)}lengthAttr(e,t,r=y.Dxa){return Q(this.attr(e,t),r)}}const l=new te;class k{constructor(e,t){this._package=e,this.path=t}async load(){this.rels=await this._package.loadRelationships(this.path);const e=await this._package.load(this.path),t=this._package.parseXmlDocument(e);this._package.options.keepOrigin&&(this._xmlDocument=t),this.parseXml(t.firstElementChild)}save(){var e;this._package.update(this.path,(e=this._xmlDocument,new XMLSerializer().serializeToString(e)))}parseXml(e){}}const fe={embedRegular:"regular",embedBold:"bold",embedItalic:"italic",embedBoldItalic:"boldItalic"};function ge(n,e){return e.elements(n).map(t=>function(r,a){let s={name:a.attr(r,"name"),embedFontRefs:[]};for(let o of a.elements(r))switch(o.localName){case"family":s.family=a.attr(o,"val");break;case"altName":s.altName=a.attr(o,"val");break;case"embedRegular":case"embedBold":case"embedItalic":case"embedBoldItalic":s.embedFontRefs.push(be(o,a))}return s}(t,e))}function be(n,e){return{id:e.attr(n,"id"),key:e.attr(n,"fontKey"),type:fe[n.localName]}}class ye extends k{parseXml(e){this.fonts=ge(e,this._package.xmlParser)}}function re(n){return/^[^"'].*\s.*[^"']$/.test(n)?`'${n}'`:n}function $(n){let e=n.lastIndexOf("/")+1;return[e==0?"":n.substring(0,e),e==0?n:n.substring(e)]}function I(n,e){try{const t="http://docx/";return new URL(n,t+e).toString().substring(t.length)}catch{return`${e}${n}`}}function N(n,e){return n.reduce((t,r)=>(t[e(r)]=r,t),{})}function L(n){return n&&typeof n=="object"&&!Array.isArray(n)}function F(n,...e){if(!e.length)return n;const t=e.shift();if(L(n)&&L(t))for(const r in t)L(t[r])?F(n[r]??(n[r]={}),t[r]):n[r]=t[r];return F(n,...e)}function A(n){return Array.isArray(n)?n:[n]}class H{constructor(e,t){this._zip=e,this.options=t,this.xmlParser=new te}get(e){const t=function(r){return r.startsWith("/")?r.substr(1):r}(e);return this._zip.files[t]??this._zip.files[t.replace(/\//g,"\\")]}update(e,t){this._zip.file(e,t)}static async load(e,t){const r=await de.loadAsync(e);return new H(r,t)}save(e="blob"){return this._zip.generateAsync({type:e})}load(e,t="string"){var r;return((r=this.get(e))==null?void 0:r.async(t))??Promise.resolve(null)}async loadRelationships(e=null){let t="_rels/.rels";if(e!=null){const[o,c]=$(e);t=`${o}_rels/${c}.rels`}const r=await this.load(t);return r?(a=this.parseXmlDocument(r).firstElementChild,(s=this.xmlParser).elements(a).map(o=>({id:s.attr(o,"Id"),type:s.attr(o,"Type"),target:s.attr(o,"Target"),targetMode:s.attr(o,"TargetMode")}))):null;var a,s}parseXmlDocument(e){return function(t,r=!1){var h;var a;r&&(t=t.replace(/<[?].*[?]>/,"")),t=(a=t).charCodeAt(0)===65279?a.substring(1):a;const s=new DOMParser().parseFromString(t,"application/xml"),o=(c=s,(h=c.getElementsByTagName("parsererror")[0])==null?void 0:h.textContent);var c;if(o)throw new Error(o);return s}(e,this.options.trimXmlDeclaration)}}class ke extends k{constructor(e,t,r){super(e,t),this._documentParser=r}parseXml(e){this.body=this._documentParser.parseDocumentFile(e)}}function B(n,e){return{type:e.attr(n,"val"),color:e.attr(n,"color"),size:e.lengthAttr(n,"sz",y.Border),offset:e.lengthAttr(n,"space",y.Point),frame:e.boolAttr(n,"frame"),shadow:e.boolAttr(n,"shadow")}}function ve(n,e){var t={};for(let r of e.elements(n))switch(r.localName){case"left":t.left=B(r,e);break;case"top":t.top=B(r,e);break;case"right":t.right=B(r,e);break;case"bottom":t.bottom=B(r,e)}return t}var j,i;function ae(n,e=l){var t={};for(let r of e.elements(n))switch(r.localName){case"pgSz":t.pageSize={width:e.lengthAttr(r,"w"),height:e.lengthAttr(r,"h"),orientation:e.attr(r,"orient")};break;case"type":t.type=e.attr(r,"val");break;case"pgMar":t.pageMargins={left:e.lengthAttr(r,"left"),right:e.lengthAttr(r,"right"),top:e.lengthAttr(r,"top"),bottom:e.lengthAttr(r,"bottom"),header:e.lengthAttr(r,"header"),footer:e.lengthAttr(r,"footer"),gutter:e.lengthAttr(r,"gutter")};break;case"cols":t.columns=Se(r,e);break;case"headerReference":(t.headerRefs??(t.headerRefs=[])).push(W(r,e));break;case"footerReference":(t.footerRefs??(t.footerRefs=[])).push(W(r,e));break;case"titlePg":t.titlePage=e.boolAttr(r,"val",!0);break;case"pgBorders":t.pageBorders=ve(r,e);break;case"pgNumType":t.pageNumber=Pe(r,e)}return t}function Se(n,e){return{numberOfColumns:e.intAttr(n,"num"),space:e.lengthAttr(n,"space"),separator:e.boolAttr(n,"sep"),equalWidth:e.boolAttr(n,"equalWidth",!0),columns:e.elements(n,"col").map(t=>({width:e.lengthAttr(t,"w"),space:e.lengthAttr(t,"space")}))}}function Pe(n,e){return{chapSep:e.attr(n,"chapSep"),chapStyle:e.attr(n,"chapStyle"),format:e.attr(n,"fmt"),start:e.intAttr(n,"start")}}function W(n,e){return{id:e.attr(n,"id"),type:e.attr(n,"type")}}function _(n,e){let t={};for(let r of e.elements(n))we(r,t,e);return t}function we(n,e,t){return!!ee(n,e,t)}function se(n,e){let t={};for(let r of e.elements(n))ne(r,t,e);return t}function ne(n,e,t){if(n.namespaceURI!=Y.wordml)return!1;if(ee(n,e,t))return!0;switch(n.localName){case"tabs":e.tabs=function(r,a){return a.elements(r,"tab").map(s=>({position:a.lengthAttr(s,"pos"),leader:a.attr(s,"leader"),style:a.attr(s,"val")}))}(n,t);break;case"sectPr":e.sectionProps=ae(n,t);break;case"numPr":e.numbering=function(r,a){var s={};for(let o of a.elements(r))switch(o.localName){case"numId":s.id=a.attr(o,"val");break;case"ilvl":s.level=a.intAttr(o,"val")}return s}(n,t);break;case"spacing":return e.lineSpacing=function(r,a){return{before:a.lengthAttr(r,"before"),after:a.lengthAttr(r,"after"),line:a.intAttr(r,"line"),lineRule:a.attr(r,"lineRule")}}(n,t),!1;case"textAlignment":return e.textAlignment=t.attr(n,"val"),!1;case"keepLines":e.keepLines=t.boolAttr(n,"val",!0);break;case"keepNext":e.keepNext=t.boolAttr(n,"val",!0);break;case"pageBreakBefore":e.pageBreakBefore=t.boolAttr(n,"val",!0);break;case"outlineLvl":e.outlineLevel=t.intAttr(n,"val");break;case"pStyle":e.styleName=t.attr(n,"val");break;case"rPr":e.runProps=_(n,t);break;default:return!1}return!0}function Ce(n,e){let t={id:e.attr(n,"numId"),overrides:[]};for(let r of e.elements(n))switch(r.localName){case"abstractNumId":t.abstractId=e.attr(r,"val");break;case"lvlOverride":t.overrides.push(Ne(r,e))}return t}function xe(n,e){let t={id:e.attr(n,"abstractNumId"),levels:[]};for(let r of e.elements(n))switch(r.localName){case"name":t.name=e.attr(r,"val");break;case"multiLevelType":t.multiLevelType=e.attr(r,"val");break;case"numStyleLink":t.numberingStyleLink=e.attr(r,"val");break;case"styleLink":t.styleLink=e.attr(r,"val");break;case"lvl":t.levels.push(le(r,e))}return t}function le(n,e){let t={level:e.intAttr(n,"ilvl")};for(let r of e.elements(n))switch(r.localName){case"start":t.start=e.attr(r,"val");break;case"lvlRestart":t.restart=e.intAttr(r,"val");break;case"numFmt":t.format=e.attr(r,"val");break;case"lvlText":t.text=e.attr(r,"val");break;case"lvlJc":t.justification=e.attr(r,"val");break;case"lvlPicBulletId":t.bulletPictureId=e.attr(r,"val");break;case"pStyle":t.paragraphStyle=e.attr(r,"val");break;case"pPr":t.paragraphProps=se(r,e);break;case"rPr":t.runProps=_(r,e)}return t}function Ne(n,e){let t={level:e.intAttr(n,"ilvl")};for(let r of e.elements(n))switch(r.localName){case"startOverride":t.start=e.intAttr(r,"val");break;case"lvl":t.numberingLevel=le(r,e)}return t}function Me(n,e){var t=e.element(n,"pict"),r=t&&e.element(t,"shape"),a=r&&e.element(r,"imagedata");return a?{id:e.attr(n,"numPicBulletId"),referenceId:e.attr(a,"id"),style:e.attr(r,"style")}:null}(function(n){n.Continuous="continuous",n.NextPage="nextPage",n.NextColumn="nextColumn",n.EvenPage="evenPage",n.OddPage="oddPage"})(j||(j={}));class Ee extends k{constructor(e,t,r){super(e,t),this._documentParser=r}parseXml(e){Object.assign(this,function(t,r){let a={numberings:[],abstractNumberings:[],bulletPictures:[]};for(let s of r.elements(t))switch(s.localName){case"num":a.numberings.push(Ce(s,r));break;case"abstractNum":a.abstractNumberings.push(xe(s,r));break;case"numPicBullet":a.bulletPictures.push(Me(s,r))}return a}(e,this._package.xmlParser)),this.domNumberings=this._documentParser.parseNumberingFile(e)}}class Ae extends k{constructor(e,t,r){super(e,t),this._documentParser=r}parseXml(e){this.styles=this._documentParser.parseStylesFile(e)}}(function(n){n.Document="document",n.Paragraph="paragraph",n.Run="run",n.Break="break",n.NoBreakHyphen="noBreakHyphen",n.Table="table",n.Row="row",n.Cell="cell",n.Hyperlink="hyperlink",n.SmartTag="smartTag",n.Drawing="drawing",n.Image="image",n.Text="text",n.Tab="tab",n.Symbol="symbol",n.BookmarkStart="bookmarkStart",n.BookmarkEnd="bookmarkEnd",n.Footer="footer",n.Header="header",n.FootnoteReference="footnoteReference",n.EndnoteReference="endnoteReference",n.Footnote="footnote",n.Endnote="endnote",n.SimpleField="simpleField",n.ComplexField="complexField",n.Instruction="instruction",n.VmlPicture="vmlPicture",n.MmlMath="mmlMath",n.MmlMathParagraph="mmlMathParagraph",n.MmlFraction="mmlFraction",n.MmlFunction="mmlFunction",n.MmlFunctionName="mmlFunctionName",n.MmlNumerator="mmlNumerator",n.MmlDenominator="mmlDenominator",n.MmlRadical="mmlRadical",n.MmlBase="mmlBase",n.MmlDegree="mmlDegree",n.MmlSuperscript="mmlSuperscript",n.MmlSubscript="mmlSubscript",n.MmlPreSubSuper="mmlPreSubSuper",n.MmlSubArgument="mmlSubArgument",n.MmlSuperArgument="mmlSuperArgument",n.MmlNary="mmlNary",n.MmlDelimiter="mmlDelimiter",n.MmlRun="mmlRun",n.MmlEquationArray="mmlEquationArray",n.MmlLimit="mmlLimit",n.MmlLimitLower="mmlLimitLower",n.MmlMatrix="mmlMatrix",n.MmlMatrixRow="mmlMatrixRow",n.MmlBox="mmlBox",n.MmlBar="mmlBar",n.MmlGroupChar="mmlGroupChar",n.VmlElement="vmlElement",n.Inserted="inserted",n.Deleted="deleted",n.DeletedText="deletedText",n.Comment="comment",n.CommentReference="commentReference",n.CommentRangeStart="commentRangeStart",n.CommentRangeEnd="commentRangeEnd"})(i||(i={}));class M{constructor(){this.children=[],this.cssStyle={}}}class Te extends M{constructor(){super(...arguments),this.type=i.Header}}class Re extends M{constructor(){super(...arguments),this.type=i.Footer}}class oe extends k{constructor(e,t,r){super(e,t),this._documentParser=r}parseXml(e){this.rootElement=this.createRootElement(),this.rootElement.children=this._documentParser.parseBodyElements(e)}}class De extends oe{createRootElement(){return new Te}}class Be extends oe{createRootElement(){return new Re}}function T(n){if(n!==void 0)return parseInt(n)}class $e extends k{parseXml(e){this.props=function(t,r){const a={};for(let s of r.elements(t))switch(s.localName){case"Template":a.template=s.textContent;break;case"Pages":a.pages=T(s.textContent);break;case"Words":a.words=T(s.textContent);break;case"Characters":a.characters=T(s.textContent);break;case"Application":a.application=s.textContent;break;case"Lines":a.lines=T(s.textContent);break;case"Paragraphs":a.paragraphs=T(s.textContent);break;case"Company":a.company=s.textContent;break;case"AppVersion":a.appVersion=s.textContent}return a}(e,this._package.xmlParser)}}class Fe extends k{parseXml(e){this.props=function(t,r){const a={};for(let s of r.elements(t))switch(s.localName){case"title":a.title=s.textContent;break;case"description":a.description=s.textContent;break;case"subject":a.subject=s.textContent;break;case"creator":a.creator=s.textContent;break;case"keywords":a.keywords=s.textContent;break;case"language":a.language=s.textContent;break;case"lastModifiedBy":a.lastModifiedBy=s.textContent;break;case"revision":s.textContent&&(a.revision=parseInt(s.textContent))}return a}(e,this._package.xmlParser)}}class Ie{}function Le(n,e){var t={name:e.attr(n,"name"),colors:{}};for(let s of e.elements(n)){var r=e.element(s,"srgbClr"),a=e.element(s,"sysClr");r?t.colors[s.localName]=e.attr(r,"val"):a&&(t.colors[s.localName]=e.attr(a,"lastClr"))}return t}function Oe(n,e){var t={name:e.attr(n,"name")};for(let r of e.elements(n))switch(r.localName){case"majorFont":t.majorFont=X(r,e);break;case"minorFont":t.minorFont=X(r,e)}return t}function X(n,e){return{latinTypeface:e.elementAttr(n,"latin","typeface"),eaTypeface:e.elementAttr(n,"ea","typeface"),csTypeface:e.elementAttr(n,"cs","typeface")}}class He extends k{constructor(e,t){super(e,t)}parseXml(e){this.theme=function(t,r){var a=new Ie,s=r.element(t,"themeElements");for(let o of r.elements(s))switch(o.localName){case"clrScheme":a.colorScheme=Le(o,r);break;case"fontScheme":a.fontScheme=Oe(o,r)}return a}(e,this._package.xmlParser)}}class ie{}class _e extends ie{constructor(){super(...arguments),this.type=i.Footnote}}class ze extends ie{constructor(){super(...arguments),this.type=i.Endnote}}class ce extends k{constructor(e,t,r){super(e,t),this._documentParser=r}}class Ve extends ce{constructor(e,t,r){super(e,t,r)}parseXml(e){this.notes=this._documentParser.parseNotes(e,"footnote",_e)}}class je extends ce{constructor(e,t,r){super(e,t,r)}parseXml(e){this.notes=this._documentParser.parseNotes(e,"endnote",ze)}}function U(n,e){var t={defaultNoteIds:[]};for(let r of e.elements(n))switch(r.localName){case"numFmt":t.nummeringFormat=e.attr(r,"val");break;case"footnote":case"endnote":t.defaultNoteIds.push(e.attr(r,"id"))}return t}class We extends k{constructor(e,t){super(e,t)}parseXml(e){this.settings=function(t,r){var a={};for(let s of r.elements(t))switch(s.localName){case"defaultTabStop":a.defaultTabStop=r.lengthAttr(s,"val");break;case"footnotePr":a.footnoteProps=U(s,r);break;case"endnotePr":a.endnoteProps=U(s,r);break;case"autoHyphenation":a.autoHyphenation=r.boolAttr(s,"val")}return a}(e,this._package.xmlParser)}}class Xe extends k{parseXml(e){this.props=function(t,r){return r.elements(t,"property").map(a=>{const s=a.firstChild;return{formatId:r.attr(a,"fmtid"),name:r.attr(a,"name"),type:s.nodeName,value:s.textContent}})}(e,this._package.xmlParser)}}class Ue extends k{constructor(e,t,r){super(e,t),this._documentParser=r}parseXml(e){this.comments=this._documentParser.parseComments(e),this.commentMap=N(this.comments,t=>t.id)}}class Ge extends k{constructor(e,t){super(e,t),this.comments=[]}parseXml(e){const t=this._package.xmlParser;for(let r of t.elements(e,"commentEx"))this.comments.push({paraId:t.attr(r,"paraId"),paraIdParent:t.attr(r,"paraIdParent"),done:t.boolAttr(r,"done")});this.commentMap=N(this.comments,r=>r.paraId)}}const qe=[{type:b.OfficeDocument,target:"word/document.xml"},{type:b.ExtendedProperties,target:"docProps/app.xml"},{type:b.CoreProperties,target:"docProps/core.xml"},{type:b.CustomProperties,target:"docProps/custom.xml"}];class z{constructor(){this.parts=[],this.partsMap={}}static async load(e,t,r){var a=new z;return a._options=r,a._parser=t,a._package=await H.load(e,r),a.rels=await a._package.loadRelationships(),await Promise.all(qe.map(s=>{const o=a.rels.find(c=>c.type===s.type)??s;return a.loadRelationshipPart(o.target,o.type)})),a}save(e="blob"){return this._package.save(e)}async loadRelationshipPart(e,t){var a;if(this.partsMap[e])return this.partsMap[e];if(!this._package.get(e))return null;let r=null;switch(t){case b.OfficeDocument:this.documentPart=r=new ke(this._package,e,this._parser);break;case b.FontTable:this.fontTablePart=r=new ye(this._package,e);break;case b.Numbering:this.numberingPart=r=new Ee(this._package,e,this._parser);break;case b.Styles:this.stylesPart=r=new Ae(this._package,e,this._parser);break;case b.Theme:this.themePart=r=new He(this._package,e);break;case b.Footnotes:this.footnotesPart=r=new Ve(this._package,e,this._parser);break;case b.Endnotes:this.endnotesPart=r=new je(this._package,e,this._parser);break;case b.Footer:r=new Be(this._package,e,this._parser);break;case b.Header:r=new De(this._package,e,this._parser);break;case b.CoreProperties:this.corePropsPart=r=new Fe(this._package,e);break;case b.ExtendedProperties:this.extendedPropsPart=r=new $e(this._package,e);break;case b.CustomProperties:r=new Xe(this._package,e);break;case b.Settings:this.settingsPart=r=new We(this._package,e);break;case b.Comments:this.commentsPart=r=new Ue(this._package,e,this._parser);break;case b.CommentsExtended:this.commentsExtendedPart=r=new Ge(this._package,e)}if(r==null)return Promise.resolve(null);if(this.partsMap[e]=r,this.parts.push(r),await r.load(),((a=r.rels)==null?void 0:a.length)>0){const[s]=$(r.path);await Promise.all(r.rels.map(o=>this.loadRelationshipPart(I(o.target,s),o.type)))}return r}async loadDocumentImage(e,t){const r=await this.loadResource(t??this.documentPart,e,"blob");return this.blobToURL(r)}async loadNumberingImage(e){const t=await this.loadResource(this.numberingPart,e,"blob");return this.blobToURL(t)}async loadFont(e,t){const r=await this.loadResource(this.fontTablePart,e,"uint8array");return r&&this.blobToURL(new Blob([Je(r,t)]))}blobToURL(e){return e?this._options.useBase64URL?function(t){return new Promise((r,a)=>{const s=new FileReader;s.onloadend=()=>r(s.result),s.onerror=()=>a(),s.readAsDataURL(t)})}(e):URL.createObjectURL(e):null}findPartByRelId(e,t=null){var r=(t.rels??this.rels).find(s=>s.id==e);const a=t?$(t.path)[0]:"";return r?this.partsMap[I(r.target,a)]:null}getPathById(e,t){const r=e.rels.find(s=>s.id==t),[a]=$(e.path);return r?I(r.target,a):null}loadResource(e,t,r){const a=this.getPathById(e,t);return a?this._package.load(a,r):Promise.resolve(null)}}function Je(n,e){const t=e.replace(/{|}|-/g,""),r=new Array(16);for(let a=0;a<16;a++)r[16-a-1]=parseInt(t.substr(2*a,2),16);for(let a=0;a<32;a++)n[a]=n[a]^r[a%16];return n}function Ze(n,e){return{type:i.BookmarkEnd,id:e.attr(n,"id")}}class Ke extends M{constructor(){super(...arguments),this.type=i.VmlElement,this.attrs={}}}function he(n,e){var t=new Ke;switch(n.localName){case"rect":t.tagName="rect",Object.assign(t.attrs,{width:"100%",height:"100%"});break;case"oval":t.tagName="ellipse",Object.assign(t.attrs,{cx:"50%",cy:"50%",rx:"50%",ry:"50%"});break;case"line":t.tagName="line";break;case"shape":t.tagName="g";break;case"textbox":t.tagName="foreignObject",Object.assign(t.attrs,{width:"100%",height:"100%"});break;default:return null}for(const r of l.attrs(n))switch(r.localName){case"style":t.cssStyleText=r.value;break;case"fillcolor":t.attrs.fill=r.value;break;case"from":const[a,s]=G(r.value);Object.assign(t.attrs,{x1:a,y1:s});break;case"to":const[o,c]=G(r.value);Object.assign(t.attrs,{x2:o,y2:c})}for(const r of l.elements(n))switch(r.localName){case"stroke":Object.assign(t.attrs,Ye(r));break;case"fill":Object.assign(t.attrs,{});break;case"imagedata":t.tagName="image",Object.assign(t.attrs,{width:"100%",height:"100%"}),t.imageHref={id:l.attr(r,"id"),title:l.attr(r,"title")};break;case"txbxContent":t.children.push(...e.parseBodyElements(r));break;default:const a=he(r,e);a&&t.children.push(a)}return t}function Ye(n){return{stroke:l.attr(n,"color"),"stroke-width":l.lengthAttr(n,"weight",y.Emu)??"1px"}}function G(n){return n.split(",")}class Qe extends M{constructor(){super(...arguments),this.type=i.Comment}}class et extends M{constructor(e){super(),this.id=e,this.type=i.CommentReference}}class tt extends M{constructor(e){super(),this.id=e,this.type=i.CommentRangeStart}}class rt extends M{constructor(e){super(),this.id=e,this.type=i.CommentRangeEnd}}var at="inherit",st="black",nt="black",lt="transparent";const ot=[],q={oMath:i.MmlMath,oMathPara:i.MmlMathParagraph,f:i.MmlFraction,func:i.MmlFunction,fName:i.MmlFunctionName,num:i.MmlNumerator,den:i.MmlDenominator,rad:i.MmlRadical,deg:i.MmlDegree,e:i.MmlBase,sSup:i.MmlSuperscript,sSub:i.MmlSubscript,sPre:i.MmlPreSubSuper,sup:i.MmlSuperArgument,sub:i.MmlSubArgument,d:i.MmlDelimiter,nary:i.MmlNary,eqArr:i.MmlEquationArray,lim:i.MmlLimit,limLow:i.MmlLimitLower,m:i.MmlMatrix,mr:i.MmlMatrixRow,box:i.MmlBox,bar:i.MmlBar,groupChr:i.MmlGroupChar};class it{constructor(e){this.options={ignoreWidth:!1,debug:!1,...e}}parseNotes(e,t,r){var a=[];for(let s of l.elements(e,t)){const o=new r;o.id=l.attr(s,"id"),o.noteType=l.attr(s,"type"),o.children=this.parseBodyElements(s),a.push(o)}return a}parseComments(e){var t=[];for(let r of l.elements(e,"comment")){const a=new Qe;a.id=l.attr(r,"id"),a.author=l.attr(r,"author"),a.initials=l.attr(r,"initials"),a.date=l.attr(r,"date"),a.children=this.parseBodyElements(r),t.push(a)}return t}parseDocumentFile(e){var t=l.element(e,"body"),r=l.element(e,"background"),a=l.element(t,"sectPr");return{type:i.Document,children:this.parseBodyElements(t),props:a?ae(a,l):{},cssStyle:r?this.parseBackground(r):{}}}parseBackground(e){var t={},r=f.colorAttr(e,"color");return r&&(t["background-color"]=r),t}parseBodyElements(e){var t=[];for(let r of l.elements(e))switch(r.localName){case"p":t.push(this.parseParagraph(r));break;case"tbl":t.push(this.parseTable(r));break;case"sdt":t.push(...this.parseSdt(r,a=>this.parseBodyElements(a)))}return t}parseStylesFile(e){var t=[];return f.foreach(e,r=>{switch(r.localName){case"style":t.push(this.parseStyle(r));break;case"docDefaults":t.push(this.parseDefaultStyles(r))}}),t}parseDefaultStyles(e){var t={id:null,name:null,target:null,basedOn:null,styles:[]};return f.foreach(e,r=>{switch(r.localName){case"rPrDefault":var a=l.element(r,"rPr");a&&t.styles.push({target:"span",values:this.parseDefaultProperties(a,{})});break;case"pPrDefault":var s=l.element(r,"pPr");s&&t.styles.push({target:"p",values:this.parseDefaultProperties(s,{})})}}),t}parseStyle(e){var t={id:l.attr(e,"styleId"),isDefault:l.boolAttr(e,"default"),name:null,target:null,basedOn:null,styles:[],linked:null};switch(l.attr(e,"type")){case"paragraph":t.target="p";break;case"table":t.target="table";break;case"character":t.target="span"}return f.foreach(e,r=>{switch(r.localName){case"basedOn":t.basedOn=l.attr(r,"val");break;case"name":t.name=l.attr(r,"val");break;case"link":t.linked=l.attr(r,"val");break;case"next":t.next=l.attr(r,"val");break;case"aliases":t.aliases=l.attr(r,"val").split(",");break;case"pPr":t.styles.push({target:"p",values:this.parseDefaultProperties(r,{})}),t.paragraphProps=se(r,l);break;case"rPr":t.styles.push({target:"span",values:this.parseDefaultProperties(r,{})}),t.runProps=_(r,l);break;case"tblPr":case"tcPr":t.styles.push({target:"td",values:this.parseDefaultProperties(r,{})});break;case"tblStylePr":for(let a of this.parseTableStyle(r))t.styles.push(a);break;case"rsid":case"qFormat":case"hidden":case"semiHidden":case"unhideWhenUsed":case"autoRedefine":case"uiPriority":break;default:this.options.debug&&console.warn(`DOCX: Unknown style element: ${r.localName}`)}}),t}parseTableStyle(e){var t=[],r=l.attr(e,"type"),a="",s="";switch(r){case"firstRow":s=".first-row",a="tr.first-row td";break;case"lastRow":s=".last-row",a="tr.last-row td";break;case"firstCol":s=".first-col",a="td.first-col";break;case"lastCol":s=".last-col",a="td.last-col";break;case"band1Vert":s=":not(.no-vband)",a="td.odd-col";break;case"band2Vert":s=":not(.no-vband)",a="td.even-col";break;case"band1Horz":s=":not(.no-hband)",a="tr.odd-row";break;case"band2Horz":s=":not(.no-hband)",a="tr.even-row";break;default:return[]}return f.foreach(e,o=>{switch(o.localName){case"pPr":t.push({target:`${a} p`,mod:s,values:this.parseDefaultProperties(o,{})});break;case"rPr":t.push({target:`${a} span`,mod:s,values:this.parseDefaultProperties(o,{})});break;case"tblPr":case"tcPr":t.push({target:a,mod:s,values:this.parseDefaultProperties(o,{})})}}),t}parseNumberingFile(e){var t=[],r={},a=[];return f.foreach(e,s=>{switch(s.localName){case"abstractNum":this.parseAbstractNumbering(s,a).forEach(h=>t.push(h));break;case"numPicBullet":a.push(this.parseNumberingPicBullet(s));break;case"num":var o=l.attr(s,"numId"),c=l.elementAttr(s,"abstractNumId","val");r[c]=o}}),t.forEach(s=>s.id=r[s.id]),t}parseNumberingPicBullet(e){var t=l.element(e,"pict"),r=t&&l.element(t,"shape"),a=r&&l.element(r,"imagedata");return a?{id:l.intAttr(e,"numPicBulletId"),src:l.attr(a,"id"),style:l.attr(r,"style")}:null}parseAbstractNumbering(e,t){var r=[],a=l.attr(e,"abstractNumId");return f.foreach(e,s=>{s.localName==="lvl"&&r.push(this.parseNumberingLevel(a,s,t))}),r}parseNumberingLevel(e,t,r){var a={id:e,level:l.intAttr(t,"ilvl"),start:1,pStyleName:void 0,pStyle:{},rStyle:{},suff:"tab"};return f.foreach(t,s=>{switch(s.localName){case"start":a.start=l.intAttr(s,"val");break;case"pPr":this.parseDefaultProperties(s,a.pStyle);break;case"rPr":this.parseDefaultProperties(s,a.rStyle);break;case"lvlPicBulletId":var o=l.intAttr(s,"val");a.bullet=r.find(c=>(c==null?void 0:c.id)==o);break;case"lvlText":a.levelText=l.attr(s,"val");break;case"pStyle":a.pStyleName=l.attr(s,"val");break;case"numFmt":a.format=l.attr(s,"val");break;case"suff":a.suff=l.attr(s,"val")}}),a}parseSdt(e,t){const r=l.element(e,"sdtContent");return r?t(r):[]}parseInserted(e,t){var r;return{type:i.Inserted,children:((r=t(e))==null?void 0:r.children)??[]}}parseDeleted(e,t){var r;return{type:i.Deleted,children:((r=t(e))==null?void 0:r.children)??[]}}parseParagraph(e){var t,r,a={type:i.Paragraph,children:[]};for(let s of l.elements(e))switch(s.localName){case"pPr":this.parseParagraphProperties(s,a);break;case"r":a.children.push(this.parseRun(s,a));break;case"hyperlink":a.children.push(this.parseHyperlink(s,a));break;case"smartTag":a.children.push(this.parseSmartTag(s,a));break;case"bookmarkStart":a.children.push((t=s,r=l,{type:i.BookmarkStart,id:r.attr(t,"id"),name:r.attr(t,"name"),colFirst:r.intAttr(t,"colFirst"),colLast:r.intAttr(t,"colLast")}));break;case"bookmarkEnd":a.children.push(Ze(s,l));break;case"commentRangeStart":a.children.push(new tt(l.attr(s,"id")));break;case"commentRangeEnd":a.children.push(new rt(l.attr(s,"id")));break;case"oMath":case"oMathPara":a.children.push(this.parseMathElement(s));break;case"sdt":a.children.push(...this.parseSdt(s,o=>this.parseParagraph(o).children));break;case"ins":a.children.push(this.parseInserted(s,o=>this.parseParagraph(o)));break;case"del":a.children.push(this.parseDeleted(s,o=>this.parseParagraph(o)))}return a}parseParagraphProperties(e,t){this.parseDefaultProperties(e,t.cssStyle={},null,r=>{if(ne(r,t,l))return!0;switch(r.localName){case"pStyle":t.styleName=l.attr(r,"val");break;case"cnfStyle":t.className=d.classNameOfCnfStyle(r);break;case"framePr":this.parseFrame(r,t);break;case"rPr":break;default:return!1}return!0})}parseFrame(e,t){l.attr(e,"dropCap")=="drop"&&(t.cssStyle.float="left")}parseHyperlink(e,t){var r={type:i.Hyperlink,parent:t,children:[]},a=l.attr(e,"anchor"),s=l.attr(e,"id");return a&&(r.href="#"+a),s&&(r.id=s),f.foreach(e,o=>{o.localName==="r"&&r.children.push(this.parseRun(o,r))}),r}parseSmartTag(e,t){var r={type:i.SmartTag,parent:t,children:[]},a=l.attr(e,"uri"),s=l.attr(e,"element");return a&&(r.uri=a),s&&(r.element=s),f.foreach(e,o=>{o.localName==="r"&&r.children.push(this.parseRun(o,r))}),r}parseRun(e,t){var r={type:i.Run,parent:t,children:[]};return f.foreach(e,a=>{switch((a=this.checkAlternateContent(a)).localName){case"t":r.children.push({type:i.Text,text:a.textContent});break;case"delText":r.children.push({type:i.DeletedText,text:a.textContent});break;case"commentReference":r.children.push(new et(l.attr(a,"id")));break;case"fldSimple":r.children.push({type:i.SimpleField,instruction:l.attr(a,"instr"),lock:l.boolAttr(a,"lock",!1),dirty:l.boolAttr(a,"dirty",!1)});break;case"instrText":r.fieldRun=!0,r.children.push({type:i.Instruction,text:a.textContent});break;case"fldChar":r.fieldRun=!0,r.children.push({type:i.ComplexField,charType:l.attr(a,"fldCharType"),lock:l.boolAttr(a,"lock",!1),dirty:l.boolAttr(a,"dirty",!1)});break;case"noBreakHyphen":r.children.push({type:i.NoBreakHyphen});break;case"br":r.children.push({type:i.Break,break:l.attr(a,"type")||"textWrapping"});break;case"lastRenderedPageBreak":r.children.push({type:i.Break,break:"lastRenderedPageBreak"});break;case"sym":r.children.push({type:i.Symbol,font:l.attr(a,"font"),char:l.attr(a,"char")});break;case"tab":r.children.push({type:i.Tab});break;case"footnoteReference":r.children.push({type:i.FootnoteReference,id:l.attr(a,"id")});break;case"endnoteReference":r.children.push({type:i.EndnoteReference,id:l.attr(a,"id")});break;case"drawing":let s=this.parseDrawing(a);s&&(r.children=[s]);break;case"pict":r.children.push(this.parseVmlPicture(a));break;case"rPr":this.parseRunProperties(a,r)}}),r}parseMathElement(e){const t=`${e.localName}Pr`,r={type:q[e.localName],children:[]};for(const s of l.elements(e))if(q[s.localName])r.children.push(this.parseMathElement(s));else if(s.localName=="r"){var a=this.parseRun(s);a.type=i.MmlRun,r.children.push(a)}else s.localName==t&&(r.props=this.parseMathProperies(s));return r}parseMathProperies(e){const t={};for(const r of l.elements(e))switch(r.localName){case"chr":t.char=l.attr(r,"val");break;case"vertJc":t.verticalJustification=l.attr(r,"val");break;case"pos":t.position=l.attr(r,"val");break;case"degHide":t.hideDegree=l.boolAttr(r,"val");break;case"begChr":t.beginChar=l.attr(r,"val");break;case"endChr":t.endChar=l.attr(r,"val")}return t}parseRunProperties(e,t){this.parseDefaultProperties(e,t.cssStyle={},null,r=>{switch(r.localName){case"rStyle":t.styleName=l.attr(r,"val");break;case"vertAlign":t.verticalAlign=d.valueOfVertAlign(r,!0);break;default:return!1}return!0})}parseVmlPicture(e){const t={type:i.VmlPicture,children:[]};for(const r of l.elements(e)){const a=he(r,this);a&&t.children.push(a)}return t}checkAlternateContent(e){var s;if(e.localName!="AlternateContent")return e;var t=l.element(e,"Choice");if(t){var r=l.attr(t,"Requires"),a=e.lookupNamespaceURI(r);if(ot.includes(a))return t.firstElementChild}return(s=l.element(e,"Fallback"))==null?void 0:s.firstElementChild}parseDrawing(e){for(var t of l.elements(e))switch(t.localName){case"inline":case"anchor":return this.parseDrawingWrapper(t)}}parseDrawingWrapper(e){var t={type:i.Drawing,children:[],cssStyle:{}},r=e.localName=="anchor";let a=null,s=l.boolAttr(e,"simplePos");l.boolAttr(e,"behindDoc");let o={relative:"page",align:"left",offset:"0"},c={relative:"page",align:"top",offset:"0"};for(var h of l.elements(e))switch(h.localName){case"simplePos":s&&(o.offset=l.lengthAttr(h,"x",y.Emu),c.offset=l.lengthAttr(h,"y",y.Emu));break;case"extent":t.cssStyle.width=l.lengthAttr(h,"cx",y.Emu),t.cssStyle.height=l.lengthAttr(h,"cy",y.Emu);break;case"positionH":case"positionV":if(!s){let p=h.localName=="positionH"?o:c;var u=l.element(h,"align"),g=l.element(h,"posOffset");p.relative=l.attr(h,"relativeFrom")??p.relative,u&&(p.align=u.textContent),g&&(p.offset=f.sizeValue(g,y.Emu))}break;case"wrapTopAndBottom":a="wrapTopAndBottom";break;case"wrapNone":a="wrapNone";break;case"graphic":var v=this.parseGraphic(h);v&&t.children.push(v)}return a=="wrapTopAndBottom"?(t.cssStyle.display="block",o.align&&(t.cssStyle["text-align"]=o.align,t.cssStyle.width="100%")):a=="wrapNone"?(t.cssStyle.display="block",t.cssStyle.position="relative",t.cssStyle.width="0px",t.cssStyle.height="0px",o.offset&&(t.cssStyle.left=o.offset),c.offset&&(t.cssStyle.top=c.offset)):!r||o.align!="left"&&o.align!="right"||(t.cssStyle.float=o.align),t}parseGraphic(e){var t=l.element(e,"graphicData");for(let r of l.elements(t))if(r.localName==="pic")return this.parsePicture(r);return null}parsePicture(e){var t={type:i.Image,src:"",cssStyle:{}},r=l.element(e,"blipFill"),a=l.element(r,"blip");t.src=l.attr(a,"embed");var s=l.element(e,"spPr"),o=l.element(s,"xfrm");for(var c of(t.cssStyle.position="relative",l.elements(o)))switch(c.localName){case"ext":t.cssStyle.width=l.lengthAttr(c,"cx",y.Emu),t.cssStyle.height=l.lengthAttr(c,"cy",y.Emu);break;case"off":t.cssStyle.left=l.lengthAttr(c,"x",y.Emu),t.cssStyle.top=l.lengthAttr(c,"y",y.Emu)}return t}parseTable(e){var t={type:i.Table,children:[]};return f.foreach(e,r=>{switch(r.localName){case"tr":t.children.push(this.parseTableRow(r));break;case"tblGrid":t.columns=this.parseTableColumns(r);break;case"tblPr":this.parseTableProperties(r,t)}}),t}parseTableColumns(e){var t=[];return f.foreach(e,r=>{r.localName==="gridCol"&&t.push({width:l.lengthAttr(r,"w")})}),t}parseTableProperties(e,t){switch(t.cssStyle={},t.cellStyle={},this.parseDefaultProperties(e,t.cssStyle,t.cellStyle,r=>{switch(r.localName){case"tblStyle":t.styleName=l.attr(r,"val");break;case"tblLook":t.className=d.classNameOftblLook(r);break;case"tblpPr":this.parseTablePosition(r,t);break;case"tblStyleColBandSize":t.colBandSize=l.intAttr(r,"val");break;case"tblStyleRowBandSize":t.rowBandSize=l.intAttr(r,"val");break;default:return!1}return!0}),t.cssStyle["text-align"]){case"center":delete t.cssStyle["text-align"],t.cssStyle["margin-left"]="auto",t.cssStyle["margin-right"]="auto";break;case"right":delete t.cssStyle["text-align"],t.cssStyle["margin-left"]="auto"}}parseTablePosition(e,t){var r=l.lengthAttr(e,"topFromText"),a=l.lengthAttr(e,"bottomFromText"),s=l.lengthAttr(e,"rightFromText"),o=l.lengthAttr(e,"leftFromText");t.cssStyle.float="left",t.cssStyle["margin-bottom"]=d.addSize(t.cssStyle["margin-bottom"],a),t.cssStyle["margin-left"]=d.addSize(t.cssStyle["margin-left"],o),t.cssStyle["margin-right"]=d.addSize(t.cssStyle["margin-right"],s),t.cssStyle["margin-top"]=d.addSize(t.cssStyle["margin-top"],r)}parseTableRow(e){var t={type:i.Row,children:[]};return f.foreach(e,r=>{switch(r.localName){case"tc":t.children.push(this.parseTableCell(r));break;case"trPr":this.parseTableRowProperties(r,t)}}),t}parseTableRowProperties(e,t){t.cssStyle=this.parseDefaultProperties(e,{},null,r=>{switch(r.localName){case"cnfStyle":t.className=d.classNameOfCnfStyle(r);break;case"tblHeader":t.isHeader=l.boolAttr(r,"val");break;default:return!1}return!0})}parseTableCell(e){var t={type:i.Cell,children:[]};return f.foreach(e,r=>{switch(r.localName){case"tbl":t.children.push(this.parseTable(r));break;case"p":t.children.push(this.parseParagraph(r));break;case"tcPr":this.parseTableCellProperties(r,t)}}),t}parseTableCellProperties(e,t){t.cssStyle=this.parseDefaultProperties(e,{},null,r=>{switch(r.localName){case"gridSpan":t.span=l.intAttr(r,"val",null);break;case"vMerge":t.verticalMerge=l.attr(r,"val")??"continue";break;case"cnfStyle":t.className=d.classNameOfCnfStyle(r);break;default:return!1}return!0}),this.parseTableCellVerticalText(e,t)}parseTableCellVerticalText(e,t){const r={btLr:{writingMode:"vertical-rl",transform:"rotate(180deg)"},lrTb:{writingMode:"vertical-lr",transform:"none"},tbRl:{writingMode:"vertical-rl",transform:"none"}};f.foreach(e,a=>{if(a.localName==="textDirection"){const s=l.attr(a,"val"),o=r[s]||{writingMode:"horizontal-tb"};t.cssStyle["writing-mode"]=o.writingMode,t.cssStyle.transform=o.transform}})}parseDefaultProperties(e,t=null,r=null,a=null){return t=t||{},f.foreach(e,s=>{if(!(a!=null&&a(s)))switch(s.localName){case"jc":t["text-align"]=d.valueOfJc(s);break;case"textAlignment":t["vertical-align"]=d.valueOfTextAlignment(s);break;case"color":t.color=f.colorAttr(s,"val",null,st);break;case"sz":t["font-size"]=t["min-height"]=l.lengthAttr(s,"val",y.FontSize);break;case"shd":t["background-color"]=f.colorAttr(s,"fill",null,at);break;case"highlight":t["background-color"]=f.colorAttr(s,"val",null,lt);break;case"vertAlign":break;case"position":t.verticalAlign=l.lengthAttr(s,"val",y.FontSize);break;case"tcW":if(this.options.ignoreWidth)break;case"tblW":t.width=d.valueOfSize(s,"w");break;case"trHeight":this.parseTrHeight(s,t);break;case"strike":t["text-decoration"]=l.boolAttr(s,"val",!0)?"line-through":"none";break;case"b":t["font-weight"]=l.boolAttr(s,"val",!0)?"bold":"normal";break;case"i":t["font-style"]=l.boolAttr(s,"val",!0)?"italic":"normal";break;case"caps":t["text-transform"]=l.boolAttr(s,"val",!0)?"uppercase":"none";break;case"smallCaps":t["font-variant"]=l.boolAttr(s,"val",!0)?"small-caps":"none";break;case"u":this.parseUnderline(s,t);break;case"ind":case"tblInd":this.parseIndentation(s,t);break;case"rFonts":this.parseFont(s,t);break;case"tblBorders":this.parseBorderProperties(s,r||t);break;case"tblCellSpacing":t["border-spacing"]=d.valueOfMargin(s),t["border-collapse"]="separate";break;case"pBdr":this.parseBorderProperties(s,t);break;case"bdr":t.border=d.valueOfBorder(s);break;case"tcBorders":this.parseBorderProperties(s,t);break;case"vanish":l.boolAttr(s,"val",!0)&&(t.display="none");break;case"kern":case"noWrap":break;case"tblCellMar":case"tcMar":this.parseMarginProperties(s,r||t);break;case"tblLayout":t["table-layout"]=d.valueOfTblLayout(s);break;case"vAlign":t["vertical-align"]=d.valueOfTextAlignment(s);break;case"spacing":e.localName=="pPr"&&this.parseSpacing(s,t);break;case"wordWrap":l.boolAttr(s,"val")&&(t["overflow-wrap"]="break-word");break;case"suppressAutoHyphens":t.hyphens=l.boolAttr(s,"val",!0)?"none":"auto";break;case"lang":t.$lang=l.attr(s,"val");break;case"bCs":case"iCs":case"szCs":case"tabs":case"outlineLvl":case"contextualSpacing":case"tblStyleColBandSize":case"tblStyleRowBandSize":case"webHidden":case"pageBreakBefore":case"suppressLineNumbers":case"keepLines":case"keepNext":case"widowControl":case"bidi":case"rtl":case"noProof":break;default:this.options.debug&&console.warn(`DOCX: Unknown document element: ${e.localName}.${s.localName}`)}}),t}parseUnderline(e,t){var r=l.attr(e,"val");if(r!=null){switch(r){case"dash":case"dashDotDotHeavy":case"dashDotHeavy":case"dashedHeavy":case"dashLong":case"dashLongHeavy":case"dotDash":case"dotDotDash":t["text-decoration"]="underline dashed";break;case"dotted":case"dottedHeavy":t["text-decoration"]="underline dotted";break;case"double":t["text-decoration"]="underline double";break;case"single":case"thick":case"words":t["text-decoration"]="underline";break;case"wave":case"wavyDouble":case"wavyHeavy":t["text-decoration"]="underline wavy";break;case"none":t["text-decoration"]="none"}var a=f.colorAttr(e,"color");a&&(t["text-decoration-color"]=a)}}parseFont(e,t){var r=[l.attr(e,"ascii"),d.themeValue(e,"asciiTheme"),l.attr(e,"eastAsia")].filter(a=>a).map(a=>re(a));r.length>0&&(t["font-family"]=[...new Set(r)].join(", "))}parseIndentation(e,t){var r=l.lengthAttr(e,"firstLine"),a=l.lengthAttr(e,"hanging"),s=l.lengthAttr(e,"left"),o=l.lengthAttr(e,"start"),c=l.lengthAttr(e,"right"),h=l.lengthAttr(e,"end");r&&(t["text-indent"]=r),a&&(t["text-indent"]=`-${a}`),(s||o)&&(t["margin-left"]=s||o),(c||h)&&(t["margin-right"]=c||h)}parseSpacing(e,t){var r=l.lengthAttr(e,"before"),a=l.lengthAttr(e,"after"),s=l.intAttr(e,"line",null),o=l.attr(e,"lineRule");if(r&&(t["margin-top"]=r),a&&(t["margin-bottom"]=a),s!==null)switch(o){case"auto":t["line-height"]=`${(s/240).toFixed(2)}`;break;case"atLeast":t["line-height"]=`calc(100% + ${s/20}pt)`;break;default:t["line-height"]=t["min-height"]=s/20+"pt"}}parseMarginProperties(e,t){f.foreach(e,r=>{switch(r.localName){case"left":t["padding-left"]=d.valueOfMargin(r);break;case"right":t["padding-right"]=d.valueOfMargin(r);break;case"top":t["padding-top"]=d.valueOfMargin(r);break;case"bottom":t["padding-bottom"]=d.valueOfMargin(r)}})}parseTrHeight(e,t){l.attr(e,"hRule"),t.height=l.lengthAttr(e,"val")}parseBorderProperties(e,t){f.foreach(e,r=>{switch(r.localName){case"start":case"left":t["border-left"]=d.valueOfBorder(r);break;case"end":case"right":t["border-right"]=d.valueOfBorder(r);break;case"top":t["border-top"]=d.valueOfBorder(r);break;case"bottom":t["border-bottom"]=d.valueOfBorder(r)}})}}const ct=["black","blue","cyan","darkBlue","darkCyan","darkGray","darkGreen","darkMagenta","darkRed","darkYellow","green","lightGray","magenta","none","red","white","yellow"];class f{static foreach(e,t){for(var r=0;r<e.childNodes.length;r++){let a=e.childNodes[r];a.nodeType==Node.ELEMENT_NODE&&t(a)}}static colorAttr(e,t,r=null,a="black"){var s=l.attr(e,t);if(s)return s=="auto"?a:ct.includes(s)?s:`#${s}`;var o=l.attr(e,"themeColor");return o?`var(--docx-${o}-color)`:r}static sizeValue(e,t=y.Dxa){return Q(e.textContent,t)}}class d{static themeValue(e,t){var r=l.attr(e,t);return r?`var(--docx-${r}-font)`:null}static valueOfSize(e,t){var r=y.Dxa;switch(l.attr(e,"type")){case"dxa":break;case"pct":r=y.Percent;break;case"auto":return"auto"}return l.lengthAttr(e,t,r)}static valueOfMargin(e){return l.lengthAttr(e,"w")}static valueOfBorder(e){if(l.attr(e,"val")=="nil")return"none";var t=f.colorAttr(e,"color");return`${l.lengthAttr(e,"sz",y.Border)} solid ${t=="auto"?nt:t}`}static valueOfTblLayout(e){return l.attr(e,"val")=="fixed"?"fixed":"auto"}static classNameOfCnfStyle(e){const t=l.attr(e,"val");return["first-row","last-row","first-col","last-col","odd-col","even-col","odd-row","even-row","ne-cell","nw-cell","se-cell","sw-cell"].filter((r,a)=>t[a]=="1").join(" ")}static valueOfJc(e){var t=l.attr(e,"val");switch(t){case"start":case"left":return"left";case"center":return"center";case"end":case"right":return"right";case"both":return"justify"}return t}static valueOfVertAlign(e,t=!1){var r=l.attr(e,"val");switch(r){case"subscript":return"sub";case"superscript":return t?"sup":"super"}return t?null:r}static valueOfTextAlignment(e){var t=l.attr(e,"val");switch(t){case"auto":case"baseline":return"baseline";case"top":return"top";case"center":return"middle";case"bottom":return"bottom"}return t}static addSize(e,t){return e==null?t:t==null?e:`calc(${e} + ${t})`}static classNameOftblLook(e){const t=l.hexAttr(e,"val",0);let r="";return(l.boolAttr(e,"firstRow")||32&t)&&(r+=" first-row"),(l.boolAttr(e,"lastRow")||64&t)&&(r+=" last-row"),(l.boolAttr(e,"firstColumn")||128&t)&&(r+=" first-col"),(l.boolAttr(e,"lastColumn")||256&t)&&(r+=" last-col"),(l.boolAttr(e,"noHBand")||512&t)&&(r+=" no-hband"),(l.boolAttr(e,"noVBand")||1024&t)&&(r+=" no-vband"),r.trim()}}const J={pos:0,leader:"none",style:"left"};function ht(n,e,t,r=.75){const a=n.closest("p"),s=n.getBoundingClientRect(),o=a.getBoundingClientRect(),c=getComputedStyle(a),h=(e==null?void 0:e.length)>0?e.map(P=>({pos:Z(P.position),leader:P.leader,style:P.style})).sort((P,R)=>P.pos-R.pos):[J],u=h[h.length-1],g=o.width*r,v=Z(t);let p=u.pos+v;if(p<g)for(;p<g&&h.length<50;p+=v)h.push({...J,pos:p});const S=parseFloat(c.marginLeft),C=o.left+S,x=(s.left-C)*r,w=h.find(P=>P.style!="clear"&&P.pos>x);if(w==null)return;let E=1;if(w.style=="right"||w.style=="center"){const P=Array.from(a.querySelectorAll(`.${n.className}`)),R=P.indexOf(n)+1,D=document.createRange();D.setStart(n,1),R<P.length?D.setEndBefore(P[R]):D.setEndAfter(a);const ue=w.style=="center"?.5:1,V=D.getBoundingClientRect(),pe=V.left+ue*V.width-(o.left-S);E=w.pos-pe*r}else E=w.pos-x;switch(n.innerHTML="&nbsp;",n.style.textDecoration="inherit",n.style.wordSpacing=`${E.toFixed(0)}pt`,w.leader){case"dot":case"middleDot":n.style.textDecoration="underline",n.style.textDecorationStyle="dotted";break;case"hyphen":case"heavy":case"underscore":n.style.textDecoration="underline"}}function Z(n){return parseFloat(n)}const mt="http://www.w3.org/2000/svg",m="http://www.w3.org/1998/Math/MathML";class ut{constructor(e){this.htmlDocument=e,this.className="docx",this.styleMap={},this.currentPart=null,this.tableVerticalMerges=[],this.currentVerticalMerge=null,this.tableCellPositions=[],this.currentCellPosition=null,this.footnoteMap={},this.endnoteMap={},this.currentEndnoteIds=[],this.usedHederFooterParts=[],this.currentTabs=[],this.commentMap={},this.tasks=[],this.postRenderTasks=[]}async render(e,t,r=null,a){var o;this.document=e,this.options=a,this.className=a.className,this.rootSelector=a.inWrapper?`.${this.className}-wrapper`:":root",this.styleMap=null,this.tasks=[],this.options.renderComments&&globalThis.Highlight&&(this.commentHighlight=new Highlight),K(r=r||t),K(t),r.appendChild(this.createComment("docxjs library predefined styles")),r.appendChild(this.renderDefaultStyle()),e.themePart&&(r.appendChild(this.createComment("docxjs document theme values")),this.renderTheme(e.themePart,r)),e.stylesPart!=null&&(this.styleMap=this.processStyles(e.stylesPart.styles),r.appendChild(this.createComment("docxjs document styles")),r.appendChild(this.renderStyles(e.stylesPart.styles))),e.numberingPart&&(this.prodessNumberings(e.numberingPart.domNumberings),r.appendChild(this.createComment("docxjs document numbering styles")),r.appendChild(this.renderNumbering(e.numberingPart.domNumberings,r))),e.footnotesPart&&(this.footnoteMap=N(e.footnotesPart.notes,c=>c.id)),e.endnotesPart&&(this.endnoteMap=N(e.endnotesPart.notes,c=>c.id)),e.settingsPart&&(this.defaultTabSize=(o=e.settingsPart.settings)==null?void 0:o.defaultTabStop),!a.ignoreFonts&&e.fontTablePart&&this.renderFontTable(e.fontTablePart,r);var s=this.renderSections(e.documentPart.body);this.options.inWrapper?t.appendChild(this.renderWrapper(s)):O(t,s),this.commentHighlight&&a.renderComments&&CSS.highlights.set(`${this.className}-comments`,this.commentHighlight),this.postRenderTasks.forEach(c=>c()),await Promise.allSettled(this.tasks),this.refreshTabStops()}renderTheme(e,t){var c,h;const r={},a=(c=e.theme)==null?void 0:c.fontScheme;a&&(a.majorFont&&(r["--docx-majorHAnsi-font"]=a.majorFont.latinTypeface),a.minorFont&&(r["--docx-minorHAnsi-font"]=a.minorFont.latinTypeface));const s=(h=e.theme)==null?void 0:h.colorScheme;if(s)for(let[u,g]of Object.entries(s.colors))r[`--docx-${u}-color`]=`#${g}`;const o=this.styleToString(`.${this.className}`,r);t.appendChild(this.createStyleElement(o))}renderFontTable(e,t){for(let r of e.fonts)for(let a of r.embedFontRefs)this.tasks.push(this.document.loadFont(a.id,a.key).then(s=>{const o={"font-family":re(r.name),src:`url(${s})`};a.type!="bold"&&a.type!="boldItalic"||(o["font-weight"]="bold"),a.type!="italic"&&a.type!="boldItalic"||(o["font-style"]="italic");const c=this.styleToString("@font-face",o);t.appendChild(this.createComment(`docxjs ${r.name} font`)),t.appendChild(this.createStyleElement(c))}))}processStyleName(e){return e?`${this.className}_${function(t){return t==null?void 0:t.replace(/[ .]+/g,"-").replace(/[&]+/g,"and").toLowerCase()}(e)}`:this.className}processStyles(e){const t=N(e.filter(a=>a.id!=null),a=>a.id);for(const a of e.filter(s=>s.basedOn)){var r=t[a.basedOn];if(r){a.paragraphProps=F(a.paragraphProps,r.paragraphProps),a.runProps=F(a.runProps,r.runProps);for(const s of r.styles){const o=a.styles.find(c=>c.target==s.target);o?this.copyStyleProperties(s.values,o.values):a.styles.push({...s,values:{...s.values}})}}else this.options.debug&&console.warn(`Can't find base style ${a.basedOn}`)}for(let a of e)a.cssName=this.processStyleName(a.id);return t}prodessNumberings(e){var t;for(let r of e.filter(a=>a.pStyleName)){const a=this.findStyle(r.pStyleName);(t=a==null?void 0:a.paragraphProps)!=null&&t.numbering&&(a.paragraphProps.numbering.level=r.level)}}processElement(e){if(e.children)for(var t of e.children)t.parent=e,t.type==i.Table?this.processTable(t):this.processElement(t)}processTable(e){for(var t of e.children)for(var r of t.children)r.cssStyle=this.copyStyleProperties(e.cellStyle,r.cssStyle,["border-left","border-right","border-top","border-bottom","padding-left","padding-right","padding-top","padding-bottom"]),this.processElement(r)}copyStyleProperties(e,t,r=null){if(!e)return t;for(var a of(t==null&&(t={}),r==null&&(r=Object.getOwnPropertyNames(e)),r))e.hasOwnProperty(a)&&!t.hasOwnProperty(a)&&(t[a]=e[a]);return t}createPageElement(e,t){var r=this.createElement("section",{className:e});return t&&(t.pageMargins&&(r.style.paddingLeft=t.pageMargins.left,r.style.paddingRight=t.pageMargins.right,r.style.paddingTop=t.pageMargins.top,r.style.paddingBottom=t.pageMargins.bottom),t.pageSize&&(this.options.ignoreWidth||(r.style.width=t.pageSize.width),this.options.ignoreHeight||(r.style.minHeight=t.pageSize.height))),r}createSectionContent(e){var t=this.createElement("article");return e.columns&&e.columns.numberOfColumns&&(t.style.columnCount=`${e.columns.numberOfColumns}`,t.style.columnGap=e.columns.space,e.columns.separator&&(t.style.columnRule="1px solid black")),t}renderSections(e){const t=[];this.processElement(e);const r=this.splitBySection(e.children,e.props),a=this.groupByPageBreaks(r);let s=null;for(let c=0,h=a.length;c<h;c++){this.currentFootnoteIds=[];let u=a[c][0].sectProps;const g=this.createPageElement(this.className,u);this.renderStyleValues(e.cssStyle,g),this.options.renderHeaders&&this.renderHeaderFooter(u.headerRefs,u,t.length,s!=u,g);for(const v of a[c]){var o=this.createSectionContent(v.sectProps);this.renderElements(v.elements,o),g.appendChild(o),u=v.sectProps}this.options.renderFootnotes&&this.renderNotes(this.currentFootnoteIds,this.footnoteMap,g),this.options.renderEndnotes&&c==h-1&&this.renderNotes(this.currentEndnoteIds,this.endnoteMap,g),this.options.renderFooters&&this.renderHeaderFooter(u.footerRefs,u,t.length,s!=u,g),t.push(g),s=u}return t}renderHeaderFooter(e,t,r,a,s){if(e){var o=(t.titlePage&&a?e.find(h=>h.type=="first"):null)??(r%2==1?e.find(h=>h.type=="even"):null)??e.find(h=>h.type=="default"),c=o&&this.document.findPartByRelId(o.id,this.document.documentPart);if(c){this.currentPart=c,this.usedHederFooterParts.includes(c.path)||(this.processElement(c.rootElement),this.usedHederFooterParts.push(c.path));const[h]=this.renderElements([c.rootElement],s);t!=null&&t.pageMargins&&(c.rootElement.type===i.Header?(h.style.marginTop=`calc(${t.pageMargins.header} - ${t.pageMargins.top})`,h.style.minHeight=`calc(${t.pageMargins.top} - ${t.pageMargins.header})`):c.rootElement.type===i.Footer&&(h.style.marginBottom=`calc(${t.pageMargins.footer} - ${t.pageMargins.bottom})`,h.style.minHeight=`calc(${t.pageMargins.bottom} - ${t.pageMargins.footer})`)),this.currentPart=null}}}isPageBreakElement(e){return e.type==i.Break&&(e.break=="lastRenderedPageBreak"?!this.options.ignoreLastRenderedPageBreak:e.break=="page")}isPageBreakSection(e,t){var r,a,s,o,c,h;return!!e&&!!t&&(((r=e.pageSize)==null?void 0:r.orientation)!=((a=t.pageSize)==null?void 0:a.orientation)||((s=e.pageSize)==null?void 0:s.width)!=((o=t.pageSize)==null?void 0:o.width)||((c=e.pageSize)==null?void 0:c.height)!=((h=t.pageSize)==null?void 0:h.height))}splitBySection(e,t){var v;var r={sectProps:null,elements:[],pageBreak:!1},a=[r];for(let p of e){if(p.type==i.Paragraph){const S=this.findStyle(p.styleName);(v=S==null?void 0:S.paragraphProps)!=null&&v.pageBreakBefore&&(r.sectProps=s,r.pageBreak=!0,r={sectProps:null,elements:[],pageBreak:!1},a.push(r))}if(r.elements.push(p),p.type==i.Paragraph){const S=p;var s=S.sectionProps,o=-1,c=-1;if(this.options.breakPages&&S.children&&(o=S.children.findIndex(C=>{var x;return(c=((x=C.children)==null?void 0:x.findIndex(this.isPageBreakElement.bind(this)))??-1)!=-1})),(s||o!=-1)&&(r.sectProps=s,r.pageBreak=o!=-1,r={sectProps:null,elements:[],pageBreak:!1},a.push(r)),o!=-1){let C=S.children[o],x=c<C.children.length-1;if(o<S.children.length-1||x){var h=p.children,u={...p,children:h.slice(o)};if(p.children=h.slice(0,o),r.elements.push(u),x){let w=C.children,E={...C,children:w.slice(0,c)};p.children.push(E),C.children=w.slice(c)}}}}}let g=null;for(let p=a.length-1;p>=0;p--)a[p].sectProps==null?a[p].sectProps=g??t:g=a[p].sectProps;return a}groupByPageBreaks(e){let t,r=[];const a=[r];for(let s of e)r.push(s),(this.options.ignoreLastRenderedPageBreak||s.pageBreak||this.isPageBreakSection(t,s.sectProps))&&a.push(r=[]),t=s.sectProps;return a.filter(s=>s.length>0)}renderWrapper(e){return this.createElement("div",{className:`${this.className}-wrapper`},e)}renderDefaultStyle(){var e=this.className,t=`
  2. .${e}-wrapper { background: gray; padding: 30px; padding-bottom: 0px; display: flex; flex-flow: column; align-items: center; }
  3. .${e}-wrapper>section.${e} { background: white; box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); margin-bottom: 30px; }
  4. .${e} { color: black; hyphens: auto; text-underline-position: from-font; }
  5. section.${e} { box-sizing: border-box; display: flex; flex-flow: column nowrap; position: relative; overflow: hidden; }
  6. section.${e}>article { margin-bottom: auto; z-index: 1; }
  7. section.${e}>footer { z-index: 1; }
  8. .${e} table { border-collapse: collapse; }
  9. .${e} table td, .${e} table th { vertical-align: top; }
  10. .${e} p { margin: 0pt; min-height: 1em; }
  11. .${e} span { white-space: pre-wrap; overflow-wrap: break-word; }
  12. .${e} a { color: inherit; text-decoration: inherit; }
  13. .${e} svg { fill: transparent; }
  14. `;return this.options.renderComments&&(t+=`
  15. .${e}-comment-ref { cursor: default; }
  16. .${e}-comment-popover { display: none; z-index: 1000; padding: 0.5rem; background: white; position: absolute; box-shadow: 0 0 0.25rem rgba(0, 0, 0, 0.25); width: 30ch; }
  17. .${e}-comment-ref:hover~.${e}-comment-popover { display: block; }
  18. .${e}-comment-author,.${e}-comment-date { font-size: 0.875rem; color: #888; }
  19. `),this.createStyleElement(t)}renderNumbering(e,t){var r="",a=[];for(var s of e){var o=`p.${this.numberingClass(s.id,s.level)}`,c="none";if(s.bullet){let h=`--${this.className}-${s.bullet.src}`.toLowerCase();r+=this.styleToString(`${o}:before`,{content:"' '",display:"inline-block",background:`var(${h})`},s.bullet.style),this.tasks.push(this.document.loadNumberingImage(s.bullet.src).then(u=>{var g=`${this.rootSelector} { ${h}: url(${u}) }`;t.appendChild(this.createStyleElement(g))}))}else if(s.levelText){let h=this.numberingCounter(s.id,s.level);const u=h+" "+(s.start-1);s.level>0&&(r+=this.styleToString(`p.${this.numberingClass(s.id,s.level-1)}`,{"counter-reset":u})),a.push(u),r+=this.styleToString(`${o}:before`,{content:this.levelTextToContent(s.levelText,s.suff,s.id,this.numFormatToCssValue(s.format)),"counter-increment":h,...s.rStyle})}else c=this.numFormatToCssValue(s.format);r+=this.styleToString(o,{display:"list-item","list-style-position":"inside","list-style-type":c,...s.pStyle})}return a.length>0&&(r+=this.styleToString(this.rootSelector,{"counter-reset":a.join(" ")})),this.createStyleElement(r)}renderStyles(e){var t="";const r=this.styleMap,a=N(e.filter(h=>h.isDefault),h=>h.target);for(const h of e){var s=h.styles;if(h.linked){var o=h.linked&&r[h.linked];o?s=s.concat(o.styles):this.options.debug&&console.warn(`Can't find linked style ${h.linked}`)}for(const u of s){var c=`${h.target??""}.${h.cssName}`;h.target!=u.target&&(c+=` ${u.target}`),a[h.target]==h&&(c=`.${this.className} ${h.target}, `+c),t+=this.styleToString(c,u.values)}}return this.createStyleElement(t)}renderNotes(e,t,r){var a=e.map(o=>t[o]).filter(o=>o);if(a.length>0){var s=this.createElement("ol",null,this.renderElements(a));r.appendChild(s)}}renderElement(e){switch(e.type){case i.Paragraph:return this.renderParagraph(e);case i.BookmarkStart:return this.renderBookmarkStart(e);case i.BookmarkEnd:return null;case i.Run:return this.renderRun(e);case i.Table:return this.renderTable(e);case i.Row:return this.renderTableRow(e);case i.Cell:return this.renderTableCell(e);case i.Hyperlink:return this.renderHyperlink(e);case i.SmartTag:return this.renderSmartTag(e);case i.Drawing:return this.renderDrawing(e);case i.Image:return this.renderImage(e);case i.Text:case i.Text:return this.renderText(e);case i.DeletedText:return this.renderDeletedText(e);case i.Tab:return this.renderTab(e);case i.Symbol:return this.renderSymbol(e);case i.Break:return this.renderBreak(e);case i.Footer:return this.renderContainer(e,"footer");case i.Header:return this.renderContainer(e,"header");case i.Footnote:case i.Endnote:return this.renderContainer(e,"li");case i.FootnoteReference:return this.renderFootnoteReference(e);case i.EndnoteReference:return this.renderEndnoteReference(e);case i.NoBreakHyphen:return this.createElement("wbr");case i.VmlPicture:return this.renderVmlPicture(e);case i.VmlElement:return this.renderVmlElement(e);case i.MmlMath:return this.renderContainerNS(e,m,"math",{xmlns:m});case i.MmlMathParagraph:return this.renderContainer(e,"span");case i.MmlFraction:return this.renderContainerNS(e,m,"mfrac");case i.MmlBase:return this.renderContainerNS(e,m,e.parent.type==i.MmlMatrixRow?"mtd":"mrow");case i.MmlNumerator:case i.MmlDenominator:case i.MmlFunction:case i.MmlLimit:case i.MmlBox:return this.renderContainerNS(e,m,"mrow");case i.MmlGroupChar:return this.renderMmlGroupChar(e);case i.MmlLimitLower:return this.renderContainerNS(e,m,"munder");case i.MmlMatrix:return this.renderContainerNS(e,m,"mtable");case i.MmlMatrixRow:return this.renderContainerNS(e,m,"mtr");case i.MmlRadical:return this.renderMmlRadical(e);case i.MmlSuperscript:return this.renderContainerNS(e,m,"msup");case i.MmlSubscript:return this.renderContainerNS(e,m,"msub");case i.MmlDegree:case i.MmlSuperArgument:case i.MmlSubArgument:return this.renderContainerNS(e,m,"mn");case i.MmlFunctionName:return this.renderContainerNS(e,m,"ms");case i.MmlDelimiter:return this.renderMmlDelimiter(e);case i.MmlRun:return this.renderMmlRun(e);case i.MmlNary:return this.renderMmlNary(e);case i.MmlPreSubSuper:return this.renderMmlPreSubSuper(e);case i.MmlBar:return this.renderMmlBar(e);case i.MmlEquationArray:return this.renderMllList(e);case i.Inserted:return this.renderInserted(e);case i.Deleted:return this.renderDeleted(e);case i.CommentRangeStart:return this.renderCommentRangeStart(e);case i.CommentRangeEnd:return this.renderCommentRangeEnd(e);case i.CommentReference:return this.renderCommentReference(e)}return null}renderElements(e,t){if(e==null)return null;var r=e.flatMap(a=>this.renderElement(a)).filter(a=>a!=null);return t&&O(t,r),r}renderContainer(e,t,r){return this.createElement(t,r,this.renderElements(e.children))}renderContainerNS(e,t,r,a){return this.createElementNS(t,r,a,this.renderElements(e.children))}renderParagraph(e){var s,o;var t=this.renderContainer(e,"p");const r=this.findStyle(e.styleName);e.tabs??(e.tabs=(s=r==null?void 0:r.paragraphProps)==null?void 0:s.tabs),this.renderClass(e,t),this.renderStyleValues(e.cssStyle,t),this.renderCommonProperties(t.style,e);const a=e.numbering??((o=r==null?void 0:r.paragraphProps)==null?void 0:o.numbering);return a&&t.classList.add(this.numberingClass(a.id,a.level)),t}renderRunProperties(e,t){this.renderCommonProperties(e,t)}renderCommonProperties(e,t){t!=null&&(t.color&&(e.color=t.color),t.fontSize&&(e["font-size"]=t.fontSize))}renderHyperlink(e){var t=this.renderContainer(e,"a");if(this.renderStyleValues(e.cssStyle,t),e.href)t.href=e.href;else if(e.id){const r=this.document.documentPart.rels.find(a=>a.id==e.id&&a.targetMode==="External");t.href=r==null?void 0:r.target}return t}renderSmartTag(e){return this.renderContainer(e,"span")}renderCommentRangeStart(e){var a;if(!this.options.renderComments)return null;const t=new Range;(a=this.commentHighlight)==null||a.add(t);const r=this.htmlDocument.createComment(`start of comment #${e.id}`);return this.later(()=>t.setStart(r,0)),this.commentMap[e.id]=t,r}renderCommentRangeEnd(e){if(!this.options.renderComments)return null;const t=this.commentMap[e.id],r=this.htmlDocument.createComment(`end of comment #${e.id}`);return this.later(()=>t==null?void 0:t.setEnd(r,0)),r}renderCommentReference(e){var o;if(!this.options.renderComments)return null;var t=(o=this.document.commentsPart)==null?void 0:o.commentMap[e.id];if(!t)return null;const r=new DocumentFragment,a=this.createElement("span",{className:`${this.className}-comment-ref`},["💬"]),s=this.createElement("div",{className:`${this.className}-comment-popover`});return this.renderCommentContent(t,s),r.appendChild(this.htmlDocument.createComment(`comment #${t.id} by ${t.author} on ${t.date}`)),r.appendChild(a),r.appendChild(s),r}renderCommentContent(e,t){t.appendChild(this.createElement("div",{className:`${this.className}-comment-author`},[e.author])),t.appendChild(this.createElement("div",{className:`${this.className}-comment-date`},[new Date(e.date).toLocaleString()])),this.renderElements(e.children,t)}renderDrawing(e){var t=this.renderContainer(e,"div");return t.style.display="inline-block",t.style.position="relative",t.style.textIndent="0px",this.renderStyleValues(e.cssStyle,t),t}renderImage(e){let t=this.createElement("img");return this.renderStyleValues(e.cssStyle,t),this.document&&this.tasks.push(this.document.loadDocumentImage(e.src,this.currentPart).then(r=>{t.src=r})),t}renderText(e){return this.htmlDocument.createTextNode(e.text)}renderDeletedText(e){return this.options.renderEndnotes?this.htmlDocument.createTextNode(e.text):null}renderBreak(e){return e.break=="textWrapping"?this.createElement("br"):null}renderInserted(e){return this.options.renderChanges?this.renderContainer(e,"ins"):this.renderElements(e.children)}renderDeleted(e){return this.options.renderChanges?this.renderContainer(e,"del"):null}renderSymbol(e){var t=this.createElement("span");return t.style.fontFamily=e.font,t.innerHTML=`&#x${e.char};`,t}renderFootnoteReference(e){var t=this.createElement("sup");return this.currentFootnoteIds.push(e.id),t.textContent=`${this.currentFootnoteIds.length}`,t}renderEndnoteReference(e){var t=this.createElement("sup");return this.currentEndnoteIds.push(e.id),t.textContent=`${this.currentEndnoteIds.length}`,t}renderTab(e){var a;var t=this.createElement("span");if(t.innerHTML="&emsp;",this.options.experimental){t.className=this.tabStopClass();var r=(a=function(s,o){for(var c=s.parent;c!=null&&c.type!=o;)c=c.parent;return c}(e,i.Paragraph))==null?void 0:a.tabs;this.currentTabs.push({stops:r,span:t})}return t}renderBookmarkStart(e){return this.createElement("span",{id:e.name})}renderRun(e){if(e.fieldRun)return null;const t=this.createElement("span");if(e.id&&(t.id=e.id),this.renderClass(e,t),this.renderStyleValues(e.cssStyle,t),e.verticalAlign){const r=this.createElement(e.verticalAlign);this.renderElements(e.children,r),t.appendChild(r)}else this.renderElements(e.children,t);return t}renderTable(e){let t=this.createElement("table");return this.tableCellPositions.push(this.currentCellPosition),this.tableVerticalMerges.push(this.currentVerticalMerge),this.currentVerticalMerge={},this.currentCellPosition={col:0,row:0},e.columns&&t.appendChild(this.renderTableColumns(e.columns)),this.renderClass(e,t),this.renderElements(e.children,t),this.renderStyleValues(e.cssStyle,t),this.currentVerticalMerge=this.tableVerticalMerges.pop(),this.currentCellPosition=this.tableCellPositions.pop(),t}renderTableColumns(e){let t=this.createElement("colgroup");for(let r of e){let a=this.createElement("col");r.width&&(a.style.width=r.width),t.appendChild(a)}return t}renderTableRow(e){let t=this.renderContainer(e,"tr");return this.currentCellPosition.col=0,this.renderClass(e,t),this.renderStyleValues(e.cssStyle,t),this.currentCellPosition.row++,t}renderTableCell(e){let t=this.renderContainer(e,"td");const r=this.currentCellPosition.col;return e.verticalMerge?e.verticalMerge=="restart"?(this.currentVerticalMerge[r]=t,t.rowSpan=1):this.currentVerticalMerge[r]&&(this.currentVerticalMerge[r].rowSpan+=1,t.style.display="none"):this.currentVerticalMerge[r]=null,this.renderClass(e,t),this.renderStyleValues(e.cssStyle,t),e.span&&(t.colSpan=e.span),this.currentCellPosition.col+=t.colSpan,t}renderVmlPicture(e){return this.renderContainer(e,"div")}renderVmlElement(e){var a,s;var t=this.createSvgElement("svg");t.setAttribute("style",e.cssStyleText);const r=this.renderVmlChildElement(e);return(a=e.imageHref)!=null&&a.id&&this.tasks.push((s=this.document)==null?void 0:s.loadDocumentImage(e.imageHref.id,this.currentPart).then(o=>r.setAttribute("href",o))),t.appendChild(r),requestAnimationFrame(()=>{const o=t.firstElementChild.getBBox();t.setAttribute("width",`${Math.ceil(o.x+o.width)}`),t.setAttribute("height",`${Math.ceil(o.y+o.height)}`)}),t}renderVmlChildElement(e){const t=this.createSvgElement(e.tagName);Object.entries(e.attrs).forEach(([r,a])=>t.setAttribute(r,a));for(let r of e.children)r.type==i.VmlElement?t.appendChild(this.renderVmlChildElement(r)):t.appendChild(...A(this.renderElement(r)));return t}renderMmlRadical(e){var a;const t=e.children.find(s=>s.type==i.MmlBase);if((a=e.props)!=null&&a.hideDegree)return this.createElementNS(m,"msqrt",null,this.renderElements([t]));const r=e.children.find(s=>s.type==i.MmlDegree);return this.createElementNS(m,"mroot",null,this.renderElements([t,r]))}renderMmlDelimiter(e){const t=[];return t.push(this.createElementNS(m,"mo",null,[e.props.beginChar??"("])),t.push(...this.renderElements(e.children)),t.push(this.createElementNS(m,"mo",null,[e.props.endChar??")"])),this.createElementNS(m,"mrow",null,t)}renderMmlNary(e){var u;const t=[],r=N(e.children,g=>g.type),a=r[i.MmlSuperArgument],s=r[i.MmlSubArgument],o=a?this.createElementNS(m,"mo",null,A(this.renderElement(a))):null,c=s?this.createElementNS(m,"mo",null,A(this.renderElement(s))):null,h=this.createElementNS(m,"mo",null,[((u=e.props)==null?void 0:u.char)??"∫"]);return o||c?t.push(this.createElementNS(m,"munderover",null,[h,c,o])):o?t.push(this.createElementNS(m,"mover",null,[h,o])):c?t.push(this.createElementNS(m,"munder",null,[h,c])):t.push(h),t.push(...this.renderElements(r[i.MmlBase].children)),this.createElementNS(m,"mrow",null,t)}renderMmlPreSubSuper(e){const t=[],r=N(e.children,u=>u.type),a=r[i.MmlSuperArgument],s=r[i.MmlSubArgument],o=a?this.createElementNS(m,"mo",null,A(this.renderElement(a))):null,c=s?this.createElementNS(m,"mo",null,A(this.renderElement(s))):null,h=this.createElementNS(m,"mo",null);return t.push(this.createElementNS(m,"msubsup",null,[h,c,o])),t.push(...this.renderElements(r[i.MmlBase].children)),this.createElementNS(m,"mrow",null,t)}renderMmlGroupChar(e){const t=e.props.verticalJustification==="bot"?"mover":"munder",r=this.renderContainerNS(e,m,t);return e.props.char&&r.appendChild(this.createElementNS(m,"mo",null,[e.props.char])),r}renderMmlBar(e){const t=this.renderContainerNS(e,m,"mrow");switch(e.props.position){case"top":t.style.textDecoration="overline";break;case"bottom":t.style.textDecoration="underline"}return t}renderMmlRun(e){const t=this.createElementNS(m,"ms",null,this.renderElements(e.children));return this.renderClass(e,t),this.renderStyleValues(e.cssStyle,t),t}renderMllList(e){const t=this.createElementNS(m,"mtable");this.renderClass(e,t),this.renderStyleValues(e.cssStyle,t);for(let r of this.renderElements(e.children))t.appendChild(this.createElementNS(m,"mtr",null,[this.createElementNS(m,"mtd",null,[r])]));return t}renderStyleValues(e,t){for(let r in e)r.startsWith("$")?t.setAttribute(r.slice(1),e[r]):t.style[r]=e[r]}renderClass(e,t){e.className&&(t.className=e.className),e.styleName&&t.classList.add(this.processStyleName(e.styleName))}findStyle(e){var t;return e&&((t=this.styleMap)==null?void 0:t[e])}numberingClass(e,t){return`${this.className}-num-${e}-${t}`}tabStopClass(){return`${this.className}-tab-stop`}styleToString(e,t,r=null){let a=`${e} {\r
  20. `;for(const s in t)s.startsWith("$")||(a+=` ${s}: ${t[s]};\r
  21. `);return r&&(a+=r),a+`}\r
  22. `}numberingCounter(e,t){return`${this.className}-num-${e}-${t}`}levelTextToContent(e,t,r,a){return`"${e.replace(/%\d*/g,s=>{let o=parseInt(s.substring(1),10)-1;return`"counter(${this.numberingCounter(r,o)}, ${a})"`})}${{tab:"\\9",space:"\\a0"}[t]??""}"`}numFormatToCssValue(e){return{none:"none",bullet:"disc",decimal:"decimal",lowerLetter:"lower-alpha",upperLetter:"upper-alpha",lowerRoman:"lower-roman",upperRoman:"upper-roman",decimalZero:"decimal-leading-zero",aiueo:"katakana",aiueoFullWidth:"katakana",chineseCounting:"simp-chinese-informal",chineseCountingThousand:"simp-chinese-informal",chineseLegalSimplified:"simp-chinese-formal",chosung:"hangul-consonant",ideographDigital:"cjk-ideographic",ideographTraditional:"cjk-heavenly-stem",ideographLegalTraditional:"trad-chinese-formal",ideographZodiac:"cjk-earthly-branch",iroha:"katakana-iroha",irohaFullWidth:"katakana-iroha",japaneseCounting:"japanese-informal",japaneseDigitalTenThousand:"cjk-decimal",japaneseLegal:"japanese-formal",thaiNumbers:"thai",koreanCounting:"korean-hangul-formal",koreanDigital:"korean-hangul-formal",koreanDigital2:"korean-hanja-informal",hebrew1:"hebrew",hebrew2:"hebrew",hindiNumbers:"devanagari",ganada:"hangul",taiwaneseCounting:"cjk-ideographic",taiwaneseCountingThousand:"cjk-ideographic",taiwaneseDigital:"cjk-decimal"}[e]??e}refreshTabStops(){this.options.experimental&&setTimeout(()=>{const e=function(t=document.body){const r=document.createElement("div");r.style.width="100pt",t.appendChild(r);const a=100/r.offsetWidth;return t.removeChild(r),a}();for(let t of this.currentTabs)ht(t.span,t.stops,this.defaultTabSize,e)},500)}createElementNS(e,t,r,a){var s=e?this.htmlDocument.createElementNS(e,t):this.htmlDocument.createElement(t);return Object.assign(s,r),a&&O(s,a),s}createElement(e,t,r){return this.createElementNS(void 0,e,t,r)}createSvgElement(e,t,r){return this.createElementNS(mt,e,t,r)}createStyleElement(e){return this.createElement("style",{innerHTML:e})}createComment(e){return this.htmlDocument.createComment(e)}later(e){this.postRenderTasks.push(e)}}function K(n){n.innerHTML=""}function O(n,e){e.forEach(t=>{return n.appendChild(typeof(r=t)=="string"||r instanceof String?document.createTextNode(t):t);var r})}const me={ignoreHeight:!1,ignoreWidth:!1,ignoreFonts:!1,breakPages:!0,debug:!1,experimental:!1,className:"docx",inWrapper:!0,trimXmlDeclaration:!0,ignoreLastRenderedPageBreak:!0,renderHeaders:!0,renderFooters:!0,renderFootnotes:!0,renderEndnotes:!0,useBase64URL:!1,renderChanges:!1,renderComments:!1};function pt(n,e){const t={...me,...e};return z.load(n,new it(t),t)}async function dt(n,e,t,r){const a={...me,...r};return await new ut(window.document).render(n,e,t,a)}async function wt(n,e,t,r){const a=await pt(n,r);return await dt(a,e,t,r),a}export{me as defaultOptions,pt as parseAsync,wt as renderAsync,dt as renderDocument};