file-viewer3 1.0.8 → 1.0.26

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (370) hide show
  1. package/LICENSE +160 -0
  2. package/README.en.md +390 -0
  3. package/README.md +306 -89
  4. package/dist/components/3MFLoader.js +527 -0
  5. package/dist/components/AMFLoader.js +188 -0
  6. package/dist/components/ArchiveViewer.js +526 -0
  7. package/dist/components/AudioViewer.js +66 -0
  8. package/dist/components/CadViewer.js +9040 -0
  9. package/dist/components/CodeViewer.js +151 -0
  10. package/dist/components/ColladaLoader.js +2282 -0
  11. package/dist/components/DrawingViewer.js +295 -0
  12. package/dist/components/EdaViewer.js +630 -0
  13. package/dist/components/EmailViewer.js +276 -0
  14. package/dist/components/EpubViewer.js +172 -0
  15. package/dist/components/FBXLoader.js +1574 -0
  16. package/dist/components/GLTFLoader.js +1383 -0
  17. package/dist/components/ImageViewer.js +1516 -1895
  18. package/dist/components/KMZLoader.js +45 -0
  19. package/dist/components/MarkdownViewer.js +1456 -1557
  20. package/dist/components/ModelViewer.js +797 -0
  21. package/dist/components/OBJLoader.js +287 -0
  22. package/dist/components/OfdViewer.js +133 -0
  23. package/dist/components/PCDLoader.js +141 -0
  24. package/dist/components/PLYLoader.js +305 -0
  25. package/dist/components/PdfView.js +27662 -21655
  26. package/dist/components/PptxRender.js +11170 -21118
  27. package/dist/components/STLLoader.js +83 -0
  28. package/dist/components/TDSLoader.js +228 -0
  29. package/dist/components/TypstViewer.js +1697 -0
  30. package/dist/components/USDLoader.js +2526 -0
  31. package/dist/components/UmdViewer.js +1873 -0
  32. package/dist/components/VRMLLoader.js +6422 -0
  33. package/dist/components/VTKLoader.js +337 -0
  34. package/dist/components/XYZLoader.js +30 -0
  35. package/dist/components/XlsxTable.js +7871 -69873
  36. package/dist/components/__vite-browser-external.js +7 -0
  37. package/dist/components/_plugin-vue_export-helper.js +8 -0
  38. package/dist/components/ar-SA-G6X2FPQ2.js +523 -0
  39. package/dist/components/arc.js +79 -0
  40. package/dist/components/architecture-7EHR7CIX.js +3 -0
  41. package/dist/components/architectureDiagram-3BPJPVTR.js +4096 -0
  42. package/dist/components/archive.js +24 -0
  43. package/dist/components/asyncToGenerator.js +29 -0
  44. package/dist/components/audio.js +19 -0
  45. package/dist/components/az-AZ-76LH7QW2.js +523 -0
  46. package/dist/components/bash.js +169 -0
  47. package/dist/components/bg-BG-XCXSNQG7.js +523 -0
  48. package/dist/components/blockDiagram-GPEHLZMM.js +3357 -0
  49. package/dist/components/bn-BD-2XOGV67Q.js +523 -0
  50. package/dist/components/c4Diagram-AAUBKEIU.js +2957 -0
  51. package/dist/components/ca-ES-6MX7JW3Y.js +523 -0
  52. package/dist/components/cad.js +23 -0
  53. package/dist/components/cfb.js +1174 -0
  54. package/dist/components/channel.js +5 -0
  55. package/dist/components/chunk-2J33WTMH.js +26 -0
  56. package/dist/components/chunk-3OPIFGDE.js +4167 -0
  57. package/dist/components/chunk-4BX2VUAB.js +19 -0
  58. package/dist/components/chunk-55IACEB6.js +9 -0
  59. package/dist/components/chunk-5ZQYHXKU.js +669 -0
  60. package/dist/components/chunk-6U3AYISY.js +624 -0
  61. package/dist/components/chunk-727SXJPM.js +3356 -0
  62. package/dist/components/chunk-AGHRB4JF.js +324 -0
  63. package/dist/components/chunk-AQP2D5EJ.js +2055 -0
  64. package/dist/components/chunk-BSJP7CBP.js +83 -0
  65. package/dist/components/chunk-CSCIHK7Q.js +3500 -0
  66. package/dist/components/chunk-EIO257PC.js +1836 -0
  67. package/dist/components/chunk-FMBD7UC4.js +5 -0
  68. package/dist/components/chunk-K2UTITRG.js +17627 -0
  69. package/dist/components/chunk-KSCS5N6A.js +572 -0
  70. package/dist/components/chunk-L5ZTLDWV.js +40 -0
  71. package/dist/components/chunk-LZXEDZCA.js +60 -0
  72. package/dist/components/chunk-ND2GUHAM.js +61 -0
  73. package/dist/components/chunk-NNHCCRGN.js +20425 -0
  74. package/dist/components/chunk-NZK2D7GU.js +68 -0
  75. package/dist/components/chunk-O5CBEL6O.js +1894 -0
  76. package/dist/components/chunk-QZHKN3VN.js +12 -0
  77. package/dist/components/chunk-SRAX5OIU.js +22 -0
  78. package/dist/components/chunk-WU5MYG2G.js +14 -0
  79. package/dist/components/chunk-XPW4576I.js +1146 -0
  80. package/dist/components/chunk-Z3N5DIM6.js +59 -0
  81. package/dist/components/chunk-ZUYEQ4TG.js +22 -0
  82. package/dist/components/chunk.js +23 -0
  83. package/dist/components/classDiagram-4FO5ZUOK.js +29 -0
  84. package/dist/components/classDiagram-v2-Q7XG4LA2.js +29 -0
  85. package/dist/components/compiler.js +2 -0
  86. package/dist/components/core.js +845 -0
  87. package/dist/components/cose-bilkent-S5V4N54A.js +2268 -0
  88. package/dist/components/cpp.js +225 -0
  89. package/dist/components/cs-CZ-2BRQDIVT.js +523 -0
  90. package/dist/components/csharp.js +260 -0
  91. package/dist/components/css.js +140 -0
  92. package/dist/components/cytoscape.esm.js +18114 -0
  93. package/dist/components/da-DK-5WZEPLOC.js +523 -0
  94. package/dist/components/dagre-BM42HDAG.js +325 -0
  95. package/dist/components/dagre.js +1936 -0
  96. package/dist/components/de-DE-XR44H4JA.js +523 -0
  97. package/dist/components/defaultLocale.js +201 -0
  98. package/dist/components/defineProperty.js +50 -0
  99. package/dist/components/diagram-2AECGRRQ.js +229 -0
  100. package/dist/components/diagram-5GNKFQAL.js +108 -0
  101. package/dist/components/diagram-KO2AKTUF.js +443 -0
  102. package/dist/components/diagram-LMA3HP47.js +139 -0
  103. package/dist/components/diagram-OG6HWLK6.js +541 -0
  104. package/dist/components/diff.js +39 -0
  105. package/dist/components/directory-open-01563666.js +26 -0
  106. package/dist/components/directory-open-4ed118d0.js +83 -0
  107. package/dist/components/dist.js +50 -0
  108. package/dist/components/dist2.js +3291 -0
  109. package/dist/components/dist3.js +1593 -0
  110. package/dist/components/documentSearch.js +378 -0
  111. package/dist/components/docx-preview.js +3113 -0
  112. package/dist/components/drawing.js +19 -0
  113. package/dist/components/ebook.js +16 -0
  114. package/dist/components/eda.js +20 -0
  115. package/dist/components/el-GR-BZB4AONW.js +523 -0
  116. package/dist/components/email.js +21 -0
  117. package/dist/components/en-B4ZKOASM.js +3 -0
  118. package/dist/components/erDiagram-TEJ5UH35.js +1719 -0
  119. package/dist/components/es-ES-U4NZUMDT.js +523 -0
  120. package/dist/components/eu-ES-A7QVB2H4.js +523 -0
  121. package/dist/components/eventmodeling-FCH6USID.js +3 -0
  122. package/dist/components/fa-IR-HGAKTJCU.js +523 -0
  123. package/dist/components/fflate.module.js +323 -0
  124. package/dist/components/fi-FI-Z5N7JZ37.js +523 -0
  125. package/dist/components/file-open-002ab408.js +38 -0
  126. package/dist/components/file-open-7c801643.js +24 -0
  127. package/dist/components/file-save-3189631c.js +40 -0
  128. package/dist/components/file-save-745eba88.js +36 -0
  129. package/dist/components/flowDiagram-I6XJVG4X.js +4181 -0
  130. package/dist/components/fr-FR-RHASNOE6.js +523 -0
  131. package/dist/components/ganttDiagram-6RSMTGT7.js +2182 -0
  132. package/dist/components/gitGraph-WXDBUCRP.js +3 -0
  133. package/dist/components/gitGraphDiagram-PVQCEYII.js +788 -0
  134. package/dist/components/gl-ES-HMX3MZ6V.js +523 -0
  135. package/dist/components/global-compiler.js +23 -0
  136. package/dist/components/global-renderer.js +23 -0
  137. package/dist/components/go.js +140 -0
  138. package/dist/components/graphlib.js +1267 -0
  139. package/dist/components/he-IL-6SHJWFNN.js +523 -0
  140. package/dist/components/hi-IN-IWLTKZ5I.js +523 -0
  141. package/dist/components/hu-HU-A5ZG7DT2.js +523 -0
  142. package/dist/components/id-ID-SAP4L64H.js +523 -0
  143. package/dist/components/image-GAAHSSAO.js +3 -0
  144. package/dist/components/image-blob-reduce.esm.js +1429 -0
  145. package/dist/components/image.js +17 -0
  146. package/dist/components/info-J43DQDTF.js +3 -0
  147. package/dist/components/infoDiagram-5YYISTIA.js +26 -0
  148. package/dist/components/ini.js +88 -0
  149. package/dist/components/init.js +15 -0
  150. package/dist/components/ishikawaDiagram-YF4QCWOH.js +718 -0
  151. package/dist/components/it-IT-JPQ66NNP.js +523 -0
  152. package/dist/components/ja-JP-DBVTYXUO.js +523 -0
  153. package/dist/components/java.js +169 -0
  154. package/dist/components/javascript.js +436 -0
  155. package/dist/components/journeyDiagram-JHISSGLW.js +885 -0
  156. package/dist/components/json.js +36 -0
  157. package/dist/components/jszip.min.js +3033 -0
  158. package/dist/components/kaa-6HZHGXH3.js +523 -0
  159. package/dist/components/kab-KAB-ZGHBKWFO.js +523 -0
  160. package/dist/components/kanban-definition-UN3LZRKU.js +986 -0
  161. package/dist/components/katex.js +21979 -0
  162. package/dist/components/kk-KZ-P5N5QNE5.js +523 -0
  163. package/dist/components/km-KH-HSX4SM5Z.js +523 -0
  164. package/dist/components/ko-KR-MTYHY66A.js +523 -0
  165. package/dist/components/ku-TR-6OUDTVRD.js +523 -0
  166. package/dist/components/lib.js +4877 -0
  167. package/dist/components/libarchive.js +360 -0
  168. package/dist/components/linear.js +289 -0
  169. package/dist/components/lt-LT-XHIRWOB4.js +523 -0
  170. package/dist/components/lv-LV-5QDEKY6T.js +523 -0
  171. package/dist/components/markdown.js +181 -0
  172. package/dist/components/md.js +17 -0
  173. package/dist/components/mermaid-parser.core.js +328 -0
  174. package/dist/components/mindmap-definition-RKZ34NQL.js +1016 -0
  175. package/dist/components/model.js +21 -0
  176. package/dist/components/mp4.js +12 -0
  177. package/dist/components/mr-IN-CRQNXWMA.js +523 -0
  178. package/dist/components/my-MM-5M5IBNSE.js +523 -0
  179. package/dist/components/nb-NO-T6EIAALU.js +523 -0
  180. package/dist/components/nestedRender.js +158 -0
  181. package/dist/components/nl-NL-IS3SIHDZ.js +523 -0
  182. package/dist/components/nn-NO-6E72VCQL.js +523 -0
  183. package/dist/components/objectSpread2.js +29 -0
  184. package/dist/components/objectWithoutProperties.js +28 -0
  185. package/dist/components/oc-FR-POXYY2M6.js +523 -0
  186. package/dist/components/ofd.js +5261 -0
  187. package/dist/components/ofd2.js +16 -0
  188. package/dist/components/ordinal.js +65 -0
  189. package/dist/components/pa-IN-N4M65BXN.js +523 -0
  190. package/dist/components/packet-YPE3B663.js +3 -0
  191. package/dist/components/pdf.js +24 -0
  192. package/dist/components/percentages-BXMCSKIN.js +3 -0
  193. package/dist/components/php.js +294 -0
  194. package/dist/components/pica.js +1009 -0
  195. package/dist/components/pie-LRSECV5Y.js +3 -0
  196. package/dist/components/pie.js +47 -0
  197. package/dist/components/pieDiagram-4H26LBE5.js +130 -0
  198. package/dist/components/pl-PL-T2D74RX3.js +523 -0
  199. package/dist/components/postal-mime.js +3146 -0
  200. package/dist/components/pptx.js +15 -0
  201. package/dist/components/printLayout.js +42 -0
  202. package/dist/components/prod.js +21770 -0
  203. package/dist/components/pt-BR-5N22H2LF.js +523 -0
  204. package/dist/components/pt-PT-UZXXM6DQ.js +523 -0
  205. package/dist/components/python.js +238 -0
  206. package/dist/components/quadrantDiagram-W4KKPZXB.js +1988 -0
  207. package/dist/components/radar-GUYGQ44K.js +3 -0
  208. package/dist/components/renderer.js +2 -0
  209. package/dist/components/requirementDiagram-4Y6WPE33.js +2230 -0
  210. package/dist/components/ro-RO-JPDTUUEW.js +523 -0
  211. package/dist/components/rough.esm.js +1355 -0
  212. package/dist/components/roundRect.js +90 -0
  213. package/dist/components/ru-RU-B4JR7IUQ.js +523 -0
  214. package/dist/components/rust.js +169 -0
  215. package/dist/components/sankeyDiagram-5OEKKPKP.js +972 -0
  216. package/dist/components/sequenceDiagram-3UESZ5HK.js +4255 -0
  217. package/dist/components/shared.js +175 -0
  218. package/dist/components/shared2.js +4 -0
  219. package/dist/components/si-LK-N5RQ5JYF.js +523 -0
  220. package/dist/components/sk-SK-C5VTKIMK.js +523 -0
  221. package/dist/components/sl-SI-NN7IZMDC.js +523 -0
  222. package/dist/components/sourceLoading.js +134 -0
  223. package/dist/components/sql.js +118 -0
  224. package/dist/components/src.js +2664 -0
  225. package/dist/components/src2.js +10722 -0
  226. package/dist/components/stateDiagram-AJRCARHV.js +217 -0
  227. package/dist/components/stateDiagram-v2-BHNVJYJU.js +27 -0
  228. package/dist/components/subset-shared.chunk.js +3 -0
  229. package/dist/components/subset-worker.chunk.js +21 -0
  230. package/dist/components/sv-SE-XGPEYMSR.js +523 -0
  231. package/dist/components/ta-IN-2NMHFXQM.js +523 -0
  232. package/dist/components/text.js +20 -0
  233. package/dist/components/th-TH-HPSO5L25.js +523 -0
  234. package/dist/components/three.module.js +13134 -0
  235. package/dist/components/time.js +910 -0
  236. package/dist/components/timeline-definition-PNZ67QCA.js +1084 -0
  237. package/dist/components/tr-TR-DEFEU3FU.js +523 -0
  238. package/dist/components/treeView-BLDUP644.js +3 -0
  239. package/dist/components/treemap-LRROVOQU.js +3 -0
  240. package/dist/components/typescript.js +521 -0
  241. package/dist/components/typst.js +25 -0
  242. package/dist/components/uk-UA-QMV73CPH.js +523 -0
  243. package/dist/components/umd.js +16 -0
  244. package/dist/components/use.js +422 -0
  245. package/dist/components/util.js +49 -0
  246. package/dist/components/vennDiagram-CIIHVFJN.js +1880 -0
  247. package/dist/components/vi-VN-M7AON7JQ.js +523 -0
  248. package/dist/components/viewerZoom.js +92 -0
  249. package/dist/components/wardley-L42UT6IY.js +3 -0
  250. package/dist/components/wardleyDiagram-YWT4CUSO.js +656 -0
  251. package/dist/components/wasm-pack-shim.js +1711 -0
  252. package/dist/components/wasm-pack-shim2.js +934 -0
  253. package/dist/components/wasm.js +97 -0
  254. package/dist/components/word.js +3055 -0
  255. package/dist/components/worker-ref.js +15 -20
  256. package/dist/components/xlsx.js +21 -0
  257. package/dist/components/xml.js +166 -0
  258. package/dist/components/xychartDiagram-2RQKCTM6.js +2015 -0
  259. package/dist/components/yaml.js +144 -0
  260. package/dist/components/zh-CN-LNUGB5OW.js +523 -0
  261. package/dist/components/zh-HK-E62DVLB3.js +523 -0
  262. package/dist/components/zh-TW-RAJ6MFWO.js +523 -0
  263. package/dist/file-viewer3.css +2 -0
  264. package/dist/index.mjs +3292 -5
  265. package/dist/src/App.vue.d.ts +3 -0
  266. package/dist/src/compare/CompareApp.vue.d.ts +3 -0
  267. package/dist/src/compare/main.d.ts +0 -0
  268. package/dist/src/compare/useSynchronizedScroll.d.ts +7 -0
  269. package/dist/src/components/HelloWorld.vue.d.ts +3 -0
  270. package/dist/src/components/utils.d.ts +4 -0
  271. package/dist/src/main.d.ts +0 -0
  272. package/dist/src/package/common/printCapability.d.ts +27 -0
  273. package/dist/src/package/common/printLayout.d.ts +16 -0
  274. package/dist/src/package/common/sourceLoading.d.ts +10 -0
  275. package/dist/src/package/common/type.d.ts +522 -8
  276. package/dist/src/package/common/worker-ref.d.ts +1 -1
  277. package/dist/src/package/components/FileViewer/FileViewer.vue.d.ts +74 -24
  278. package/dist/src/package/components/FileViewer/exportDocumentTemplate.d.ts +9 -0
  279. package/dist/src/package/components/FileViewer/hooks/useViewerDocumentFeatures.d.ts +29 -0
  280. package/dist/src/package/components/FileViewer/hooks/useViewerExport.d.ts +21 -0
  281. package/dist/src/package/components/FileViewer/hooks/useViewerWatermark.d.ts +8 -0
  282. package/dist/src/package/components/FileViewer/hooks/useViewerZoom.d.ts +34 -0
  283. package/dist/src/package/components/FileViewer/index.d.ts +1 -1
  284. package/dist/src/package/components/FileViewer/util.d.ts +2 -1
  285. package/dist/src/package/index.d.ts +14 -4
  286. package/dist/src/package/use/documentLocation.d.ts +15 -0
  287. package/dist/src/package/use/documentSearch.d.ts +234 -0
  288. package/dist/src/package/use/index.d.ts +4 -0
  289. package/dist/src/package/use/loading.d.ts +33 -0
  290. package/dist/src/package/use/viewerZoom.d.ts +42 -0
  291. package/dist/src/package/use/worker.d.ts +2 -2
  292. package/dist/src/package/vendors/archive/ArchiveViewer.vue.d.ts +9 -0
  293. package/dist/src/package/vendors/archive/cache.d.ts +10 -0
  294. package/dist/src/package/vendors/archive/fallback.d.ts +9 -0
  295. package/dist/src/package/vendors/archive/index.d.ts +3 -0
  296. package/dist/src/package/vendors/archive/shared.d.ts +24 -0
  297. package/dist/src/package/vendors/audio/AudioViewer.vue.d.ts +7 -0
  298. package/dist/src/package/vendors/audio/index.d.ts +7 -0
  299. package/dist/src/package/vendors/cad/CadViewer.vue.d.ts +9 -0
  300. package/dist/src/package/vendors/cad/index.d.ts +8 -0
  301. package/dist/src/package/vendors/drawing/DrawingViewer.vue.d.ts +15 -0
  302. package/dist/src/package/vendors/drawing/index.d.ts +7 -0
  303. package/dist/src/package/vendors/ebook/EpubViewer.vue.d.ts +6 -0
  304. package/dist/src/package/vendors/ebook/index.d.ts +7 -0
  305. package/dist/src/package/vendors/eda/EdaViewer.vue.d.ts +8 -0
  306. package/dist/src/package/vendors/eda/index.d.ts +2 -0
  307. package/dist/src/package/vendors/eda/parser.d.ts +77 -0
  308. package/dist/src/package/vendors/email/EmailViewer.vue.d.ts +10 -0
  309. package/dist/src/package/vendors/email/index.d.ts +2 -0
  310. package/dist/src/package/vendors/image/ImageViewer.vue.d.ts +6 -13
  311. package/dist/src/package/vendors/image/index.d.ts +1 -1
  312. package/dist/src/package/vendors/md/MarkdownViewer.vue.d.ts +6 -13
  313. package/dist/src/package/vendors/md/index.d.ts +1 -1
  314. package/dist/src/package/vendors/model/ModelViewer.vue.d.ts +8 -0
  315. package/dist/src/package/vendors/model/index.d.ts +3 -0
  316. package/dist/src/package/vendors/model/shared.d.ts +1 -0
  317. package/dist/src/package/vendors/nestedRender.d.ts +10 -0
  318. package/dist/src/package/vendors/ofd/OfdViewer.vue.d.ts +6 -0
  319. package/dist/src/package/vendors/ofd/index.d.ts +7 -0
  320. package/dist/src/package/vendors/pdf/PdfView.vue.d.ts +10 -13
  321. package/dist/src/package/vendors/pdf/index.d.ts +2 -1
  322. package/dist/src/package/vendors/pdf/worker/pdf.worker.d.ts +0 -0
  323. package/dist/src/package/vendors/pptx/PptxRender.vue.d.ts +9 -81
  324. package/dist/src/package/vendors/pptx/index.d.ts +1 -1
  325. package/dist/src/package/vendors/renders.d.ts +1 -1
  326. package/dist/src/package/vendors/text/CodeViewer.vue.d.ts +7 -13
  327. package/dist/src/package/vendors/text/index.d.ts +6 -2
  328. package/dist/src/package/vendors/typst/TypstViewer.vue.d.ts +15 -0
  329. package/dist/src/package/vendors/typst/index.d.ts +8 -0
  330. package/dist/src/package/vendors/umd/UmdViewer.vue.d.ts +6 -0
  331. package/dist/src/package/vendors/umd/index.d.ts +7 -0
  332. package/dist/src/package/vendors/umd/parser.d.ts +30 -0
  333. package/dist/src/package/vendors/word/doc.d.ts +5 -0
  334. package/dist/src/package/vendors/word/docx.d.ts +5 -0
  335. package/dist/src/package/vendors/word/docx.worker.d.ts +1 -0
  336. package/dist/src/package/vendors/word/index.d.ts +3 -0
  337. package/dist/src/package/vendors/xlsx/XlsxTable.state.d.ts +80 -0
  338. package/dist/src/package/vendors/xlsx/XlsxTable.view.d.ts +25 -0
  339. package/dist/src/package/vendors/xlsx/XlsxTable.vue.d.ts +6 -21
  340. package/dist/src/package/vendors/xlsx/index.d.ts +3 -2
  341. package/dist/src/package/vendors/xlsx/util.d.ts +0 -5
  342. package/dist/src/package/vendors/xlsx/worker/index.d.ts +4 -6
  343. package/dist/src/package/vendors/xlsx/worker/sheetjs/SheetJsModel.d.ts +73 -0
  344. package/dist/src/package/vendors/xlsx/worker/sheetjs/sheet.worker.d.ts +1 -0
  345. package/dist/style.css +1 -57
  346. package/dist/wasm/cad/dwfv-render.wasm +0 -0
  347. package/dist/wasm/cad/dwg-worker.js +24 -0
  348. package/dist/wasm/cad/libredwg-web.js +15 -0
  349. package/dist/wasm/cad/libredwg-web.wasm +0 -0
  350. package/package.json +118 -42
  351. package/.vscode/extensions.json +0 -3
  352. package/dist/components/_commonjs-dynamic-modules.js +0 -6
  353. package/dist/components/_commonjsHelpers.js +0 -36
  354. package/dist/components/docx-preview.min.js +0 -5287
  355. package/dist/components/index.js +0 -1717
  356. package/dist/favicon.ico +0 -0
  357. package/dist/index.umd.js +0 -436
  358. package/dist/src/package/vendors/docx/index.d.ts +0 -4
  359. package/dist/src/package/vendors/xlsx/render.d.ts +0 -6
  360. package/dist/src/package/vendors/xlsx/worker/xls/SheetJsModel.d.ts +0 -36
  361. package/dist/src/package/vendors/xlsx/worker/xlsx/ExcelJsModel.d.ts +0 -39
  362. package/dist/src/package/vendors/xlsx/worker/xlsx/context.d.ts +0 -7
  363. package/dist/src/package/vendors/xlsx/worker/xlsx/index.d.ts +0 -4
  364. package/dist/src/package/vendors/xlsx/worker/xlsx/util.d.ts +0 -10
  365. package/dist/worker/pdf.worker.js +0 -66
  366. package/dist/worker/pptx.worker.js +0 -21
  367. package/dist/worker/sheet.worker.js +0 -38
  368. package/dist/worker/xlsx.worker.js +0 -65
  369. /package/dist/src/package/vendors/xlsx/worker/{xlsx → sheetjs}/color.d.ts +0 -0
  370. /package/dist/src/package/vendors/xlsx/worker/{xls → sheetjs}/index.d.ts +0 -0
@@ -0,0 +1,3113 @@
1
+ import { o as e } from "./chunk.js";
2
+ import { n as t, t as n } from "./objectSpread2.js";
3
+ import { n as r, t as i } from "./asyncToGenerator.js";
4
+ import { t as a } from "./jszip.min.js";
5
+ //#region node_modules/.pnpm/docx-preview@0.3.7/node_modules/docx-preview/dist/docx-preview.mjs
6
+ var o = /* @__PURE__ */ e(a(), 1);
7
+ r(), t();
8
+ var s;
9
+ (function(e) {
10
+ e.OfficeDocument = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument", e.FontTable = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/fontTable", e.Image = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/image", e.Numbering = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/numbering", e.Styles = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles", e.StylesWithEffects = "http://schemas.microsoft.com/office/2007/relationships/stylesWithEffects", e.Theme = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme", e.Settings = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/settings", e.WebSettings = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/webSettings", e.Hyperlink = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink", e.Footnotes = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes", e.Endnotes = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/endnotes", e.Footer = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer", e.Header = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/header", e.ExtendedProperties = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties", e.CoreProperties = "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties", e.CustomProperties = "http://schemas.openxmlformats.org/package/2006/relationships/metadata/custom-properties", e.Comments = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments", e.CommentsExtended = "http://schemas.microsoft.com/office/2011/relationships/commentsExtended", e.AltChunk = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/aFChunk";
11
+ })(s || (s = {}));
12
+ function c(e, t) {
13
+ return t.elements(e).map((e) => ({
14
+ id: t.attr(e, "Id"),
15
+ type: t.attr(e, "Type"),
16
+ target: t.attr(e, "Target"),
17
+ targetMode: t.attr(e, "TargetMode")
18
+ }));
19
+ }
20
+ function l(e) {
21
+ return e == null ? void 0 : e.replace(/[ .]+/g, "-").replace(/[&]+/g, "and").toLowerCase();
22
+ }
23
+ function u(e) {
24
+ return /^[^"'].*\s.*[^"']$/.test(e) ? `'${e}'` : e;
25
+ }
26
+ function d(e) {
27
+ let t = e.lastIndexOf("/") + 1;
28
+ return [t == 0 ? "" : e.substring(0, t), t == 0 ? e : e.substring(t)];
29
+ }
30
+ function f(e, t) {
31
+ try {
32
+ return new URL(e, "http://docx/" + t).toString().substring(12);
33
+ } catch (n) {
34
+ return `${t}${e}`;
35
+ }
36
+ }
37
+ function p(e, t) {
38
+ return e.reduce((e, n) => (e[t(n)] = n, e), {});
39
+ }
40
+ function m(e) {
41
+ return new Promise((t, n) => {
42
+ let r = new FileReader();
43
+ r.onloadend = () => t(r.result), r.onerror = () => n(), r.readAsDataURL(e);
44
+ });
45
+ }
46
+ function h(e) {
47
+ return e && typeof e == "object" && !Array.isArray(e);
48
+ }
49
+ function g(e) {
50
+ return typeof e == "string" || e instanceof String;
51
+ }
52
+ function _(e, ...t) {
53
+ if (!t.length) return e;
54
+ let n = t.shift();
55
+ if (h(e) && h(n)) for (let t in n) if (h(n[t])) {
56
+ var r;
57
+ _((r = e[t]) == null ? e[t] = {} : r, n[t]);
58
+ } else e[t] = n[t];
59
+ return _(e, ...t);
60
+ }
61
+ function v(e) {
62
+ return Array.isArray(e) ? e : [e];
63
+ }
64
+ function ee(e, t, n) {
65
+ return t > e ? t : n < e ? n : e;
66
+ }
67
+ var te = { wordml: "http://schemas.openxmlformats.org/wordprocessingml/2006/main" }, y = {
68
+ Dxa: {
69
+ mul: .05,
70
+ unit: "pt"
71
+ },
72
+ Emu: {
73
+ mul: 1 / 12700,
74
+ unit: "pt"
75
+ },
76
+ FontSize: {
77
+ mul: .5,
78
+ unit: "pt"
79
+ },
80
+ Border: {
81
+ mul: .125,
82
+ unit: "pt",
83
+ min: .25,
84
+ max: 12
85
+ },
86
+ Point: {
87
+ mul: 1,
88
+ unit: "pt"
89
+ },
90
+ Percent: {
91
+ mul: .02,
92
+ unit: "%"
93
+ }
94
+ };
95
+ function ne(e, t = y.Dxa) {
96
+ if (e == null || /.+(p[xt]|[%])$/.test(e)) return e;
97
+ var n = parseInt(e) * t.mul;
98
+ return t.min && t.max && (n = ee(n, t.min, t.max)), `${n.toFixed(2)}${t.unit}`;
99
+ }
100
+ function re(e, t = !1) {
101
+ switch (e) {
102
+ case "1": return !0;
103
+ case "0": return !1;
104
+ case "on": return !0;
105
+ case "off": return !1;
106
+ case "true": return !0;
107
+ case "false": return !1;
108
+ default: return t;
109
+ }
110
+ }
111
+ function b(e, t, n) {
112
+ if (e.namespaceURI != te.wordml) return !1;
113
+ switch (e.localName) {
114
+ case "color":
115
+ t.color = n.attr(e, "val");
116
+ break;
117
+ case "sz":
118
+ t.fontSize = n.lengthAttr(e, "val", y.FontSize);
119
+ break;
120
+ default: return !1;
121
+ }
122
+ return !0;
123
+ }
124
+ function ie(e, t = !1) {
125
+ t && (e = e.replace(/<[?].*[?]>/, "")), e = oe(e);
126
+ let n = new DOMParser().parseFromString(e, "application/xml"), r = ae(n);
127
+ if (r) throw Error(r);
128
+ return n;
129
+ }
130
+ function ae(e) {
131
+ var t;
132
+ return (t = e.getElementsByTagName("parsererror")[0]) == null ? void 0 : t.textContent;
133
+ }
134
+ function oe(e) {
135
+ return e.charCodeAt(0) === 65279 ? e.substring(1) : e;
136
+ }
137
+ function se(e) {
138
+ return new XMLSerializer().serializeToString(e);
139
+ }
140
+ var x = class {
141
+ elements(e, t = null) {
142
+ let n = [];
143
+ for (let r = 0, i = e.childNodes.length; r < i; r++) {
144
+ let i = e.childNodes.item(r);
145
+ i.nodeType == Node.ELEMENT_NODE && (t == null || i.localName == t) && n.push(i);
146
+ }
147
+ return n;
148
+ }
149
+ element(e, t) {
150
+ for (let n = 0, r = e.childNodes.length; n < r; n++) {
151
+ let r = e.childNodes.item(n);
152
+ if (r.nodeType == 1 && r.localName == t) return r;
153
+ }
154
+ return null;
155
+ }
156
+ elementAttr(e, t, n) {
157
+ var r = this.element(e, t);
158
+ return r ? this.attr(r, n) : void 0;
159
+ }
160
+ attrs(e) {
161
+ return Array.from(e.attributes);
162
+ }
163
+ attr(e, t) {
164
+ for (let n = 0, r = e.attributes.length; n < r; n++) {
165
+ let r = e.attributes.item(n);
166
+ if (r.localName == t) return r.value;
167
+ }
168
+ return null;
169
+ }
170
+ intAttr(e, t, n = null) {
171
+ var r = this.attr(e, t);
172
+ return r ? parseInt(r) : n;
173
+ }
174
+ hexAttr(e, t, n = null) {
175
+ var r = this.attr(e, t);
176
+ return r ? parseInt(r, 16) : n;
177
+ }
178
+ floatAttr(e, t, n = null) {
179
+ var r = this.attr(e, t);
180
+ return r ? parseFloat(r) : n;
181
+ }
182
+ boolAttr(e, t, n = null) {
183
+ return re(this.attr(e, t), n);
184
+ }
185
+ lengthAttr(e, t, n = y.Dxa) {
186
+ return ne(this.attr(e, t), n);
187
+ }
188
+ }, S = new x(), C = class {
189
+ constructor(e, t) {
190
+ this._package = e, this.path = t;
191
+ }
192
+ load() {
193
+ var e = this;
194
+ return i(function* () {
195
+ e.rels = yield e._package.loadRelationships(e.path);
196
+ let t = yield e._package.load(e.path), n = e._package.parseXmlDocument(t);
197
+ e._package.options.keepOrigin && (e._xmlDocument = n), e.parseXml(n.firstElementChild);
198
+ })();
199
+ }
200
+ save() {
201
+ this._package.update(this.path, se(this._xmlDocument));
202
+ }
203
+ parseXml(e) {}
204
+ }, ce = {
205
+ embedRegular: "regular",
206
+ embedBold: "bold",
207
+ embedItalic: "italic",
208
+ embedBoldItalic: "boldItalic"
209
+ };
210
+ function le(e, t) {
211
+ return t.elements(e).map((e) => ue(e, t));
212
+ }
213
+ function ue(e, t) {
214
+ let n = {
215
+ name: t.attr(e, "name"),
216
+ embedFontRefs: []
217
+ };
218
+ for (let r of t.elements(e)) switch (r.localName) {
219
+ case "family":
220
+ n.family = t.attr(r, "val");
221
+ break;
222
+ case "altName":
223
+ n.altName = t.attr(r, "val");
224
+ break;
225
+ case "embedRegular":
226
+ case "embedBold":
227
+ case "embedItalic":
228
+ case "embedBoldItalic":
229
+ n.embedFontRefs.push(de(r, t));
230
+ break;
231
+ }
232
+ return n;
233
+ }
234
+ function de(e, t) {
235
+ return {
236
+ id: t.attr(e, "id"),
237
+ key: t.attr(e, "fontKey"),
238
+ type: ce[e.localName]
239
+ };
240
+ }
241
+ var fe = class extends C {
242
+ parseXml(e) {
243
+ this.fonts = le(e, this._package.xmlParser);
244
+ }
245
+ }, pe = class e {
246
+ constructor(e, t) {
247
+ this._zip = e, this.options = t, this.xmlParser = new x();
248
+ }
249
+ get(e) {
250
+ var t;
251
+ let n = me(e);
252
+ return (t = this._zip.files[n]) == null ? this._zip.files[n.replace(/\//g, "\\")] : t;
253
+ }
254
+ update(e, t) {
255
+ this._zip.file(e, t);
256
+ }
257
+ static load(t, n) {
258
+ return i(function* () {
259
+ return new e(yield o.default.loadAsync(t), n);
260
+ })();
261
+ }
262
+ save(e = "blob") {
263
+ return this._zip.generateAsync({ type: e });
264
+ }
265
+ load(e, t = "string") {
266
+ var n, r;
267
+ return (n = (r = this.get(e)) == null ? void 0 : r.async(t)) == null ? Promise.resolve(null) : n;
268
+ }
269
+ loadRelationships(e = null) {
270
+ var t = this;
271
+ return i(function* () {
272
+ let n = "_rels/.rels";
273
+ if (e != null) {
274
+ let [t, r] = d(e);
275
+ n = `${t}_rels/${r}.rels`;
276
+ }
277
+ let r = yield t.load(n);
278
+ return r ? c(t.parseXmlDocument(r).firstElementChild, t.xmlParser) : null;
279
+ })();
280
+ }
281
+ parseXmlDocument(e) {
282
+ return ie(e, this.options.trimXmlDeclaration);
283
+ }
284
+ };
285
+ function me(e) {
286
+ return e.startsWith("/") ? e.substr(1) : e;
287
+ }
288
+ var he = class extends C {
289
+ constructor(e, t, n) {
290
+ super(e, t), this._documentParser = n;
291
+ }
292
+ parseXml(e) {
293
+ this.body = this._documentParser.parseDocumentFile(e);
294
+ }
295
+ };
296
+ function w(e, t) {
297
+ return {
298
+ type: t.attr(e, "val"),
299
+ color: t.attr(e, "color"),
300
+ size: t.lengthAttr(e, "sz", y.Border),
301
+ offset: t.lengthAttr(e, "space", y.Point),
302
+ frame: t.boolAttr(e, "frame"),
303
+ shadow: t.boolAttr(e, "shadow")
304
+ };
305
+ }
306
+ function ge(e, t) {
307
+ var n = {};
308
+ for (let r of t.elements(e)) switch (r.localName) {
309
+ case "left":
310
+ n.left = w(r, t);
311
+ break;
312
+ case "top":
313
+ n.top = w(r, t);
314
+ break;
315
+ case "right":
316
+ n.right = w(r, t);
317
+ break;
318
+ case "bottom":
319
+ n.bottom = w(r, t);
320
+ break;
321
+ }
322
+ return n;
323
+ }
324
+ var T;
325
+ (function(e) {
326
+ e.Continuous = "continuous", e.NextPage = "nextPage", e.NextColumn = "nextColumn", e.EvenPage = "evenPage", e.OddPage = "oddPage";
327
+ })(T || (T = {}));
328
+ function E(e, t = S) {
329
+ var n = {};
330
+ for (let a of t.elements(e)) switch (a.localName) {
331
+ case "pgSz":
332
+ n.pageSize = {
333
+ width: t.lengthAttr(a, "w"),
334
+ height: t.lengthAttr(a, "h"),
335
+ orientation: t.attr(a, "orient")
336
+ };
337
+ break;
338
+ case "type":
339
+ n.type = t.attr(a, "val");
340
+ break;
341
+ case "pgMar":
342
+ n.pageMargins = {
343
+ left: t.lengthAttr(a, "left"),
344
+ right: t.lengthAttr(a, "right"),
345
+ top: t.lengthAttr(a, "top"),
346
+ bottom: t.lengthAttr(a, "bottom"),
347
+ header: t.lengthAttr(a, "header"),
348
+ footer: t.lengthAttr(a, "footer"),
349
+ gutter: t.lengthAttr(a, "gutter")
350
+ };
351
+ break;
352
+ case "cols":
353
+ n.columns = _e(a, t);
354
+ break;
355
+ case "headerReference":
356
+ var r;
357
+ ((r = n.headerRefs) == null ? n.headerRefs = [] : r).push(D(a, t));
358
+ break;
359
+ case "footerReference":
360
+ var i;
361
+ ((i = n.footerRefs) == null ? n.footerRefs = [] : i).push(D(a, t));
362
+ break;
363
+ case "titlePg":
364
+ n.titlePage = t.boolAttr(a, "val", !0);
365
+ break;
366
+ case "pgBorders":
367
+ n.pageBorders = ge(a, t);
368
+ break;
369
+ case "pgNumType":
370
+ n.pageNumber = ve(a, t);
371
+ break;
372
+ }
373
+ return n;
374
+ }
375
+ function _e(e, t) {
376
+ return {
377
+ numberOfColumns: t.intAttr(e, "num"),
378
+ space: t.lengthAttr(e, "space"),
379
+ separator: t.boolAttr(e, "sep"),
380
+ equalWidth: t.boolAttr(e, "equalWidth", !0),
381
+ columns: t.elements(e, "col").map((e) => ({
382
+ width: t.lengthAttr(e, "w"),
383
+ space: t.lengthAttr(e, "space")
384
+ }))
385
+ };
386
+ }
387
+ function ve(e, t) {
388
+ return {
389
+ chapSep: t.attr(e, "chapSep"),
390
+ chapStyle: t.attr(e, "chapStyle"),
391
+ format: t.attr(e, "fmt"),
392
+ start: t.intAttr(e, "start")
393
+ };
394
+ }
395
+ function D(e, t) {
396
+ return {
397
+ id: t.attr(e, "id"),
398
+ type: t.attr(e, "type")
399
+ };
400
+ }
401
+ function ye(e, t) {
402
+ return {
403
+ before: t.lengthAttr(e, "before"),
404
+ after: t.lengthAttr(e, "after"),
405
+ line: t.intAttr(e, "line"),
406
+ lineRule: t.attr(e, "lineRule")
407
+ };
408
+ }
409
+ function O(e, t) {
410
+ let n = {};
411
+ for (let r of t.elements(e)) be(r, n, t);
412
+ return n;
413
+ }
414
+ function be(e, t, n) {
415
+ return !!b(e, t, n);
416
+ }
417
+ function k(e, t) {
418
+ let n = {};
419
+ for (let r of t.elements(e)) A(r, n, t);
420
+ return n;
421
+ }
422
+ function A(e, t, n) {
423
+ if (e.namespaceURI != te.wordml) return !1;
424
+ if (b(e, t, n)) return !0;
425
+ switch (e.localName) {
426
+ case "tabs":
427
+ t.tabs = xe(e, n);
428
+ break;
429
+ case "sectPr":
430
+ t.sectionProps = E(e, n);
431
+ break;
432
+ case "numPr":
433
+ t.numbering = Se(e, n);
434
+ break;
435
+ case "spacing": return t.lineSpacing = ye(e, n), !1;
436
+ case "textAlignment": return t.textAlignment = n.attr(e, "val"), !1;
437
+ case "keepLines":
438
+ t.keepLines = n.boolAttr(e, "val", !0);
439
+ break;
440
+ case "keepNext":
441
+ t.keepNext = n.boolAttr(e, "val", !0);
442
+ break;
443
+ case "pageBreakBefore":
444
+ t.pageBreakBefore = n.boolAttr(e, "val", !0);
445
+ break;
446
+ case "outlineLvl":
447
+ t.outlineLevel = n.intAttr(e, "val");
448
+ break;
449
+ case "pStyle":
450
+ t.styleName = n.attr(e, "val");
451
+ break;
452
+ case "rPr":
453
+ t.runProps = O(e, n);
454
+ break;
455
+ default: return !1;
456
+ }
457
+ return !0;
458
+ }
459
+ function xe(e, t) {
460
+ return t.elements(e, "tab").map((e) => ({
461
+ position: t.lengthAttr(e, "pos"),
462
+ leader: t.attr(e, "leader"),
463
+ style: t.attr(e, "val")
464
+ }));
465
+ }
466
+ function Se(e, t) {
467
+ var n = {};
468
+ for (let r of t.elements(e)) switch (r.localName) {
469
+ case "numId":
470
+ n.id = t.attr(r, "val");
471
+ break;
472
+ case "ilvl":
473
+ n.level = t.intAttr(r, "val");
474
+ break;
475
+ }
476
+ return n;
477
+ }
478
+ function Ce(e, t) {
479
+ let n = {
480
+ numberings: [],
481
+ abstractNumberings: [],
482
+ bulletPictures: []
483
+ };
484
+ for (let r of t.elements(e)) switch (r.localName) {
485
+ case "num":
486
+ n.numberings.push(we(r, t));
487
+ break;
488
+ case "abstractNum":
489
+ n.abstractNumberings.push(Te(r, t));
490
+ break;
491
+ case "numPicBullet":
492
+ n.bulletPictures.push(De(r, t));
493
+ break;
494
+ }
495
+ return n;
496
+ }
497
+ function we(e, t) {
498
+ let n = {
499
+ id: t.attr(e, "numId"),
500
+ overrides: []
501
+ };
502
+ for (let r of t.elements(e)) switch (r.localName) {
503
+ case "abstractNumId":
504
+ n.abstractId = t.attr(r, "val");
505
+ break;
506
+ case "lvlOverride":
507
+ n.overrides.push(Ee(r, t));
508
+ break;
509
+ }
510
+ return n;
511
+ }
512
+ function Te(e, t) {
513
+ let n = {
514
+ id: t.attr(e, "abstractNumId"),
515
+ levels: []
516
+ };
517
+ for (let r of t.elements(e)) switch (r.localName) {
518
+ case "name":
519
+ n.name = t.attr(r, "val");
520
+ break;
521
+ case "multiLevelType":
522
+ n.multiLevelType = t.attr(r, "val");
523
+ break;
524
+ case "numStyleLink":
525
+ n.numberingStyleLink = t.attr(r, "val");
526
+ break;
527
+ case "styleLink":
528
+ n.styleLink = t.attr(r, "val");
529
+ break;
530
+ case "lvl":
531
+ n.levels.push(j(r, t));
532
+ break;
533
+ }
534
+ return n;
535
+ }
536
+ function j(e, t) {
537
+ let n = { level: t.intAttr(e, "ilvl") };
538
+ for (let r of t.elements(e)) switch (r.localName) {
539
+ case "start":
540
+ n.start = t.attr(r, "val");
541
+ break;
542
+ case "lvlRestart":
543
+ n.restart = t.intAttr(r, "val");
544
+ break;
545
+ case "numFmt":
546
+ n.format = t.attr(r, "val");
547
+ break;
548
+ case "lvlText":
549
+ n.text = t.attr(r, "val");
550
+ break;
551
+ case "lvlJc":
552
+ n.justification = t.attr(r, "val");
553
+ break;
554
+ case "lvlPicBulletId":
555
+ n.bulletPictureId = t.attr(r, "val");
556
+ break;
557
+ case "pStyle":
558
+ n.paragraphStyle = t.attr(r, "val");
559
+ break;
560
+ case "pPr":
561
+ n.paragraphProps = k(r, t);
562
+ break;
563
+ case "rPr":
564
+ n.runProps = O(r, t);
565
+ break;
566
+ }
567
+ return n;
568
+ }
569
+ function Ee(e, t) {
570
+ let n = { level: t.intAttr(e, "ilvl") };
571
+ for (let r of t.elements(e)) switch (r.localName) {
572
+ case "startOverride":
573
+ n.start = t.intAttr(r, "val");
574
+ break;
575
+ case "lvl":
576
+ n.numberingLevel = j(r, t);
577
+ break;
578
+ }
579
+ return n;
580
+ }
581
+ function De(e, t) {
582
+ var n = t.element(e, "pict"), r = n && t.element(n, "shape"), i = r && t.element(r, "imagedata");
583
+ return i ? {
584
+ id: t.attr(e, "numPicBulletId"),
585
+ referenceId: t.attr(i, "id"),
586
+ style: t.attr(r, "style")
587
+ } : null;
588
+ }
589
+ var Oe = class extends C {
590
+ constructor(e, t, n) {
591
+ super(e, t), this._documentParser = n;
592
+ }
593
+ parseXml(e) {
594
+ Object.assign(this, Ce(e, this._package.xmlParser)), this.domNumberings = this._documentParser.parseNumberingFile(e);
595
+ }
596
+ }, ke = class extends C {
597
+ constructor(e, t, n) {
598
+ super(e, t), this._documentParser = n;
599
+ }
600
+ parseXml(e) {
601
+ this.styles = this._documentParser.parseStylesFile(e);
602
+ }
603
+ }, M;
604
+ (function(e) {
605
+ e.Document = "document", e.Paragraph = "paragraph", e.Run = "run", e.Break = "break", e.NoBreakHyphen = "noBreakHyphen", e.Table = "table", e.Row = "row", e.Cell = "cell", e.Hyperlink = "hyperlink", e.SmartTag = "smartTag", e.Drawing = "drawing", e.Image = "image", e.Text = "text", e.Tab = "tab", e.Symbol = "symbol", e.BookmarkStart = "bookmarkStart", e.BookmarkEnd = "bookmarkEnd", e.Footer = "footer", e.Header = "header", e.FootnoteReference = "footnoteReference", e.EndnoteReference = "endnoteReference", e.Footnote = "footnote", e.Endnote = "endnote", e.SimpleField = "simpleField", e.ComplexField = "complexField", e.Instruction = "instruction", e.VmlPicture = "vmlPicture", e.MmlMath = "mmlMath", e.MmlMathParagraph = "mmlMathParagraph", e.MmlFraction = "mmlFraction", e.MmlFunction = "mmlFunction", e.MmlFunctionName = "mmlFunctionName", e.MmlNumerator = "mmlNumerator", e.MmlDenominator = "mmlDenominator", e.MmlRadical = "mmlRadical", e.MmlBase = "mmlBase", e.MmlDegree = "mmlDegree", e.MmlSuperscript = "mmlSuperscript", e.MmlSubscript = "mmlSubscript", e.MmlPreSubSuper = "mmlPreSubSuper", e.MmlSubArgument = "mmlSubArgument", e.MmlSuperArgument = "mmlSuperArgument", e.MmlNary = "mmlNary", e.MmlDelimiter = "mmlDelimiter", e.MmlRun = "mmlRun", e.MmlEquationArray = "mmlEquationArray", e.MmlLimit = "mmlLimit", e.MmlLimitLower = "mmlLimitLower", e.MmlMatrix = "mmlMatrix", e.MmlMatrixRow = "mmlMatrixRow", e.MmlBox = "mmlBox", e.MmlBar = "mmlBar", e.MmlGroupChar = "mmlGroupChar", e.VmlElement = "vmlElement", e.Inserted = "inserted", e.Deleted = "deleted", e.DeletedText = "deletedText", e.Comment = "comment", e.CommentReference = "commentReference", e.CommentRangeStart = "commentRangeStart", e.CommentRangeEnd = "commentRangeEnd", e.AltChunk = "altChunk";
606
+ })(M || (M = {}));
607
+ var N = class {
608
+ constructor() {
609
+ this.children = [], this.cssStyle = {};
610
+ }
611
+ }, Ae = class extends N {
612
+ constructor() {
613
+ super(...arguments), this.type = M.Header;
614
+ }
615
+ }, je = class extends N {
616
+ constructor() {
617
+ super(...arguments), this.type = M.Footer;
618
+ }
619
+ }, P = class extends C {
620
+ constructor(e, t, n) {
621
+ super(e, t), this._documentParser = n;
622
+ }
623
+ parseXml(e) {
624
+ this.rootElement = this.createRootElement(), this.rootElement.children = this._documentParser.parseBodyElements(e);
625
+ }
626
+ }, Me = class extends P {
627
+ createRootElement() {
628
+ return new Ae();
629
+ }
630
+ }, Ne = class extends P {
631
+ createRootElement() {
632
+ return new je();
633
+ }
634
+ };
635
+ function Pe(e, t) {
636
+ let n = {};
637
+ for (let r of t.elements(e)) switch (r.localName) {
638
+ case "Template":
639
+ n.template = r.textContent;
640
+ break;
641
+ case "Pages":
642
+ n.pages = F(r.textContent);
643
+ break;
644
+ case "Words":
645
+ n.words = F(r.textContent);
646
+ break;
647
+ case "Characters":
648
+ n.characters = F(r.textContent);
649
+ break;
650
+ case "Application":
651
+ n.application = r.textContent;
652
+ break;
653
+ case "Lines":
654
+ n.lines = F(r.textContent);
655
+ break;
656
+ case "Paragraphs":
657
+ n.paragraphs = F(r.textContent);
658
+ break;
659
+ case "Company":
660
+ n.company = r.textContent;
661
+ break;
662
+ case "AppVersion":
663
+ n.appVersion = r.textContent;
664
+ break;
665
+ }
666
+ return n;
667
+ }
668
+ function F(e) {
669
+ if (e !== void 0) return parseInt(e);
670
+ }
671
+ var Fe = class extends C {
672
+ parseXml(e) {
673
+ this.props = Pe(e, this._package.xmlParser);
674
+ }
675
+ };
676
+ function Ie(e, t) {
677
+ let n = {};
678
+ for (let r of t.elements(e)) switch (r.localName) {
679
+ case "title":
680
+ n.title = r.textContent;
681
+ break;
682
+ case "description":
683
+ n.description = r.textContent;
684
+ break;
685
+ case "subject":
686
+ n.subject = r.textContent;
687
+ break;
688
+ case "creator":
689
+ n.creator = r.textContent;
690
+ break;
691
+ case "keywords":
692
+ n.keywords = r.textContent;
693
+ break;
694
+ case "language":
695
+ n.language = r.textContent;
696
+ break;
697
+ case "lastModifiedBy":
698
+ n.lastModifiedBy = r.textContent;
699
+ break;
700
+ case "revision":
701
+ r.textContent && (n.revision = parseInt(r.textContent));
702
+ break;
703
+ }
704
+ return n;
705
+ }
706
+ var Le = class extends C {
707
+ parseXml(e) {
708
+ this.props = Ie(e, this._package.xmlParser);
709
+ }
710
+ }, Re = class {};
711
+ function ze(e, t) {
712
+ var n = new Re(), r = t.element(e, "themeElements");
713
+ for (let e of t.elements(r)) switch (e.localName) {
714
+ case "clrScheme":
715
+ n.colorScheme = Be(e, t);
716
+ break;
717
+ case "fontScheme":
718
+ n.fontScheme = Ve(e, t);
719
+ break;
720
+ }
721
+ return n;
722
+ }
723
+ function Be(e, t) {
724
+ var n = {
725
+ name: t.attr(e, "name"),
726
+ colors: {}
727
+ };
728
+ for (let a of t.elements(e)) {
729
+ var r = t.element(a, "srgbClr"), i = t.element(a, "sysClr");
730
+ r ? n.colors[a.localName] = t.attr(r, "val") : i && (n.colors[a.localName] = t.attr(i, "lastClr"));
731
+ }
732
+ return n;
733
+ }
734
+ function Ve(e, t) {
735
+ var n = { name: t.attr(e, "name") };
736
+ for (let r of t.elements(e)) switch (r.localName) {
737
+ case "majorFont":
738
+ n.majorFont = I(r, t);
739
+ break;
740
+ case "minorFont":
741
+ n.minorFont = I(r, t);
742
+ break;
743
+ }
744
+ return n;
745
+ }
746
+ function I(e, t) {
747
+ return {
748
+ latinTypeface: t.elementAttr(e, "latin", "typeface"),
749
+ eaTypeface: t.elementAttr(e, "ea", "typeface"),
750
+ csTypeface: t.elementAttr(e, "cs", "typeface")
751
+ };
752
+ }
753
+ var He = class extends C {
754
+ constructor(e, t) {
755
+ super(e, t);
756
+ }
757
+ parseXml(e) {
758
+ this.theme = ze(e, this._package.xmlParser);
759
+ }
760
+ }, L = class {}, Ue = class extends L {
761
+ constructor() {
762
+ super(...arguments), this.type = M.Footnote;
763
+ }
764
+ }, We = class extends L {
765
+ constructor() {
766
+ super(...arguments), this.type = M.Endnote;
767
+ }
768
+ }, R = class extends C {
769
+ constructor(e, t, n) {
770
+ super(e, t), this._documentParser = n;
771
+ }
772
+ }, Ge = class extends R {
773
+ constructor(e, t, n) {
774
+ super(e, t, n);
775
+ }
776
+ parseXml(e) {
777
+ this.notes = this._documentParser.parseNotes(e, "footnote", Ue);
778
+ }
779
+ }, Ke = class extends R {
780
+ constructor(e, t, n) {
781
+ super(e, t, n);
782
+ }
783
+ parseXml(e) {
784
+ this.notes = this._documentParser.parseNotes(e, "endnote", We);
785
+ }
786
+ };
787
+ function qe(e, t) {
788
+ var n = {};
789
+ for (let r of t.elements(e)) switch (r.localName) {
790
+ case "defaultTabStop":
791
+ n.defaultTabStop = t.lengthAttr(r, "val");
792
+ break;
793
+ case "footnotePr":
794
+ n.footnoteProps = z(r, t);
795
+ break;
796
+ case "endnotePr":
797
+ n.endnoteProps = z(r, t);
798
+ break;
799
+ case "autoHyphenation":
800
+ n.autoHyphenation = t.boolAttr(r, "val");
801
+ break;
802
+ }
803
+ return n;
804
+ }
805
+ function z(e, t) {
806
+ var n = { defaultNoteIds: [] };
807
+ for (let r of t.elements(e)) switch (r.localName) {
808
+ case "numFmt":
809
+ n.nummeringFormat = t.attr(r, "val");
810
+ break;
811
+ case "footnote":
812
+ case "endnote":
813
+ n.defaultNoteIds.push(t.attr(r, "id"));
814
+ break;
815
+ }
816
+ return n;
817
+ }
818
+ var Je = class extends C {
819
+ constructor(e, t) {
820
+ super(e, t);
821
+ }
822
+ parseXml(e) {
823
+ this.settings = qe(e, this._package.xmlParser);
824
+ }
825
+ };
826
+ function Ye(e, t) {
827
+ return t.elements(e, "property").map((e) => {
828
+ let n = e.firstChild;
829
+ return {
830
+ formatId: t.attr(e, "fmtid"),
831
+ name: t.attr(e, "name"),
832
+ type: n.nodeName,
833
+ value: n.textContent
834
+ };
835
+ });
836
+ }
837
+ var Xe = class extends C {
838
+ parseXml(e) {
839
+ this.props = Ye(e, this._package.xmlParser);
840
+ }
841
+ }, Ze = class extends C {
842
+ constructor(e, t, n) {
843
+ super(e, t), this._documentParser = n;
844
+ }
845
+ parseXml(e) {
846
+ this.comments = this._documentParser.parseComments(e), this.commentMap = p(this.comments, (e) => e.id);
847
+ }
848
+ }, Qe = class extends C {
849
+ constructor(e, t) {
850
+ super(e, t), this.comments = [];
851
+ }
852
+ parseXml(e) {
853
+ let t = this._package.xmlParser;
854
+ for (let n of t.elements(e, "commentEx")) this.comments.push({
855
+ paraId: t.attr(n, "paraId"),
856
+ paraIdParent: t.attr(n, "paraIdParent"),
857
+ done: t.boolAttr(n, "done")
858
+ });
859
+ this.commentMap = p(this.comments, (e) => e.paraId);
860
+ }
861
+ }, $e = [
862
+ {
863
+ type: s.OfficeDocument,
864
+ target: "word/document.xml"
865
+ },
866
+ {
867
+ type: s.ExtendedProperties,
868
+ target: "docProps/app.xml"
869
+ },
870
+ {
871
+ type: s.CoreProperties,
872
+ target: "docProps/core.xml"
873
+ },
874
+ {
875
+ type: s.CustomProperties,
876
+ target: "docProps/custom.xml"
877
+ }
878
+ ], et = class e {
879
+ constructor() {
880
+ this.parts = [], this.partsMap = {};
881
+ }
882
+ static load(t, n, r) {
883
+ return i(function* () {
884
+ var i = new e();
885
+ return i._options = r, i._parser = n, i._package = yield pe.load(t, r), i.rels = yield i._package.loadRelationships(), yield Promise.all($e.map((e) => {
886
+ var t;
887
+ let n = (t = i.rels.find((t) => t.type === e.type)) == null ? e : t;
888
+ return i.loadRelationshipPart(n.target, n.type);
889
+ })), i;
890
+ })();
891
+ }
892
+ save(e = "blob") {
893
+ return this._package.save(e);
894
+ }
895
+ loadRelationshipPart(e, t) {
896
+ var n = this;
897
+ return i(function* () {
898
+ var r;
899
+ if (n.partsMap[e]) return n.partsMap[e];
900
+ if (!n._package.get(e)) return null;
901
+ let i = null;
902
+ switch (t) {
903
+ case s.OfficeDocument:
904
+ n.documentPart = i = new he(n._package, e, n._parser);
905
+ break;
906
+ case s.FontTable:
907
+ n.fontTablePart = i = new fe(n._package, e);
908
+ break;
909
+ case s.Numbering:
910
+ n.numberingPart = i = new Oe(n._package, e, n._parser);
911
+ break;
912
+ case s.Styles:
913
+ n.stylesPart = i = new ke(n._package, e, n._parser);
914
+ break;
915
+ case s.Theme:
916
+ n.themePart = i = new He(n._package, e);
917
+ break;
918
+ case s.Footnotes:
919
+ n.footnotesPart = i = new Ge(n._package, e, n._parser);
920
+ break;
921
+ case s.Endnotes:
922
+ n.endnotesPart = i = new Ke(n._package, e, n._parser);
923
+ break;
924
+ case s.Footer:
925
+ i = new Ne(n._package, e, n._parser);
926
+ break;
927
+ case s.Header:
928
+ i = new Me(n._package, e, n._parser);
929
+ break;
930
+ case s.CoreProperties:
931
+ n.corePropsPart = i = new Le(n._package, e);
932
+ break;
933
+ case s.ExtendedProperties:
934
+ n.extendedPropsPart = i = new Fe(n._package, e);
935
+ break;
936
+ case s.CustomProperties:
937
+ i = new Xe(n._package, e);
938
+ break;
939
+ case s.Settings:
940
+ n.settingsPart = i = new Je(n._package, e);
941
+ break;
942
+ case s.Comments:
943
+ n.commentsPart = i = new Ze(n._package, e, n._parser);
944
+ break;
945
+ case s.CommentsExtended:
946
+ n.commentsExtendedPart = i = new Qe(n._package, e);
947
+ break;
948
+ }
949
+ if (i == null) return Promise.resolve(null);
950
+ if (n.partsMap[e] = i, n.parts.push(i), yield i.load(), ((r = i.rels) == null ? void 0 : r.length) > 0) {
951
+ let [e] = d(i.path);
952
+ yield Promise.all(i.rels.map((t) => n.loadRelationshipPart(f(t.target, e), t.type)));
953
+ }
954
+ return i;
955
+ })();
956
+ }
957
+ loadDocumentImage(e, t) {
958
+ var n = this;
959
+ return i(function* () {
960
+ let r = yield n.loadResource(t == null ? n.documentPart : t, e, "blob");
961
+ return n.blobToURL(r);
962
+ })();
963
+ }
964
+ loadNumberingImage(e) {
965
+ var t = this;
966
+ return i(function* () {
967
+ let n = yield t.loadResource(t.numberingPart, e, "blob");
968
+ return t.blobToURL(n);
969
+ })();
970
+ }
971
+ loadFont(e, t) {
972
+ var n = this;
973
+ return i(function* () {
974
+ let r = yield n.loadResource(n.fontTablePart, e, "uint8array");
975
+ return r && n.blobToURL(new Blob([tt(r, t)]));
976
+ })();
977
+ }
978
+ loadAltChunk(e, t) {
979
+ var n = this;
980
+ return i(function* () {
981
+ return yield n.loadResource(t == null ? n.documentPart : t, e, "string");
982
+ })();
983
+ }
984
+ blobToURL(e) {
985
+ return e ? this._options.useBase64URL ? m(e) : URL.createObjectURL(e) : null;
986
+ }
987
+ findPartByRelId(e, t = null) {
988
+ var n, r = ((n = t.rels) == null ? this.rels : n).find((t) => t.id == e);
989
+ let i = t ? d(t.path)[0] : "";
990
+ return r ? this.partsMap[f(r.target, i)] : null;
991
+ }
992
+ getPathById(e, t) {
993
+ let n = e.rels.find((e) => e.id == t), [r] = d(e.path);
994
+ return n ? f(n.target, r) : null;
995
+ }
996
+ loadResource(e, t, n) {
997
+ let r = this.getPathById(e, t);
998
+ return r ? this._package.load(r, n) : Promise.resolve(null);
999
+ }
1000
+ };
1001
+ function tt(e, t) {
1002
+ let n = t.replace(/{|}|-/g, ""), r = Array(16);
1003
+ for (let e = 0; e < 16; e++) r[16 - e - 1] = parseInt(n.substring(e * 2, e * 2 + 2), 16);
1004
+ for (let t = 0; t < 32; t++) e[t] = e[t] ^ r[t % 16];
1005
+ return e;
1006
+ }
1007
+ function nt(e, t) {
1008
+ return {
1009
+ type: M.BookmarkStart,
1010
+ id: t.attr(e, "id"),
1011
+ name: t.attr(e, "name"),
1012
+ colFirst: t.intAttr(e, "colFirst"),
1013
+ colLast: t.intAttr(e, "colLast")
1014
+ };
1015
+ }
1016
+ function rt(e, t) {
1017
+ return {
1018
+ type: M.BookmarkEnd,
1019
+ id: t.attr(e, "id")
1020
+ };
1021
+ }
1022
+ var it = class extends N {
1023
+ constructor() {
1024
+ super(...arguments), this.type = M.VmlElement, this.attrs = {};
1025
+ }
1026
+ };
1027
+ function B(e, t) {
1028
+ var n = new it();
1029
+ switch (e.localName) {
1030
+ case "rect":
1031
+ n.tagName = "rect", Object.assign(n.attrs, {
1032
+ width: "100%",
1033
+ height: "100%"
1034
+ });
1035
+ break;
1036
+ case "oval":
1037
+ n.tagName = "ellipse", Object.assign(n.attrs, {
1038
+ cx: "50%",
1039
+ cy: "50%",
1040
+ rx: "50%",
1041
+ ry: "50%"
1042
+ });
1043
+ break;
1044
+ case "line":
1045
+ n.tagName = "line";
1046
+ break;
1047
+ case "shape":
1048
+ n.tagName = "g";
1049
+ break;
1050
+ case "textbox":
1051
+ n.tagName = "foreignObject", Object.assign(n.attrs, {
1052
+ width: "100%",
1053
+ height: "100%"
1054
+ });
1055
+ break;
1056
+ default: return null;
1057
+ }
1058
+ for (let t of S.attrs(e)) switch (t.localName) {
1059
+ case "style":
1060
+ n.cssStyleText = t.value;
1061
+ break;
1062
+ case "fillcolor":
1063
+ n.attrs.fill = t.value;
1064
+ break;
1065
+ case "from":
1066
+ let [e, r] = V(t.value);
1067
+ Object.assign(n.attrs, {
1068
+ x1: e,
1069
+ y1: r
1070
+ });
1071
+ break;
1072
+ case "to":
1073
+ let [i, a] = V(t.value);
1074
+ Object.assign(n.attrs, {
1075
+ x2: i,
1076
+ y2: a
1077
+ });
1078
+ break;
1079
+ }
1080
+ for (let r of S.elements(e)) switch (r.localName) {
1081
+ case "stroke":
1082
+ Object.assign(n.attrs, at(r));
1083
+ break;
1084
+ case "fill":
1085
+ Object.assign(n.attrs, ot());
1086
+ break;
1087
+ case "imagedata":
1088
+ n.tagName = "image", Object.assign(n.attrs, {
1089
+ width: "100%",
1090
+ height: "100%"
1091
+ }), n.imageHref = {
1092
+ id: S.attr(r, "id"),
1093
+ title: S.attr(r, "title")
1094
+ };
1095
+ break;
1096
+ case "txbxContent":
1097
+ n.children.push(...t.parseBodyElements(r));
1098
+ break;
1099
+ default:
1100
+ let e = B(r, t);
1101
+ e && n.children.push(e);
1102
+ break;
1103
+ }
1104
+ return n;
1105
+ }
1106
+ function at(e) {
1107
+ var t;
1108
+ return {
1109
+ stroke: S.attr(e, "color"),
1110
+ "stroke-width": (t = S.lengthAttr(e, "weight", y.Emu)) == null ? "1px" : t
1111
+ };
1112
+ }
1113
+ function ot(e) {
1114
+ return {};
1115
+ }
1116
+ function V(e) {
1117
+ return e.split(",");
1118
+ }
1119
+ var st = class extends N {
1120
+ constructor() {
1121
+ super(...arguments), this.type = M.Comment;
1122
+ }
1123
+ }, ct = class extends N {
1124
+ constructor(e) {
1125
+ super(), this.id = e, this.type = M.CommentReference;
1126
+ }
1127
+ }, lt = class extends N {
1128
+ constructor(e) {
1129
+ super(), this.id = e, this.type = M.CommentRangeStart;
1130
+ }
1131
+ }, ut = class extends N {
1132
+ constructor(e) {
1133
+ super(), this.id = e, this.type = M.CommentRangeEnd;
1134
+ }
1135
+ }, H = {
1136
+ shd: "inherit",
1137
+ color: "black",
1138
+ borderColor: "black",
1139
+ highlight: "transparent"
1140
+ }, dt = [], U = {
1141
+ oMath: M.MmlMath,
1142
+ oMathPara: M.MmlMathParagraph,
1143
+ f: M.MmlFraction,
1144
+ func: M.MmlFunction,
1145
+ fName: M.MmlFunctionName,
1146
+ num: M.MmlNumerator,
1147
+ den: M.MmlDenominator,
1148
+ rad: M.MmlRadical,
1149
+ deg: M.MmlDegree,
1150
+ e: M.MmlBase,
1151
+ sSup: M.MmlSuperscript,
1152
+ sSub: M.MmlSubscript,
1153
+ sPre: M.MmlPreSubSuper,
1154
+ sup: M.MmlSuperArgument,
1155
+ sub: M.MmlSubArgument,
1156
+ d: M.MmlDelimiter,
1157
+ nary: M.MmlNary,
1158
+ eqArr: M.MmlEquationArray,
1159
+ lim: M.MmlLimit,
1160
+ limLow: M.MmlLimitLower,
1161
+ m: M.MmlMatrix,
1162
+ mr: M.MmlMatrixRow,
1163
+ box: M.MmlBox,
1164
+ bar: M.MmlBar,
1165
+ groupChr: M.MmlGroupChar
1166
+ }, ft = class {
1167
+ constructor(e) {
1168
+ this.options = n({
1169
+ ignoreWidth: !1,
1170
+ debug: !1
1171
+ }, e);
1172
+ }
1173
+ parseNotes(e, t, n) {
1174
+ var r = [];
1175
+ for (let i of S.elements(e, t)) {
1176
+ let e = new n();
1177
+ e.id = S.attr(i, "id"), e.noteType = S.attr(i, "type"), e.children = this.parseBodyElements(i), r.push(e);
1178
+ }
1179
+ return r;
1180
+ }
1181
+ parseComments(e) {
1182
+ var t = [];
1183
+ for (let n of S.elements(e, "comment")) {
1184
+ let e = new st();
1185
+ e.id = S.attr(n, "id"), e.author = S.attr(n, "author"), e.initials = S.attr(n, "initials"), e.date = S.attr(n, "date"), e.children = this.parseBodyElements(n), t.push(e);
1186
+ }
1187
+ return t;
1188
+ }
1189
+ parseDocumentFile(e) {
1190
+ var t = S.element(e, "body"), n = S.element(e, "background"), r = S.element(t, "sectPr");
1191
+ return {
1192
+ type: M.Document,
1193
+ children: this.parseBodyElements(t),
1194
+ props: r ? E(r, S) : {},
1195
+ cssStyle: n ? this.parseBackground(n) : {}
1196
+ };
1197
+ }
1198
+ parseBackground(e) {
1199
+ var t = {}, n = W.colorAttr(e, "color");
1200
+ return n && (t["background-color"] = n), t;
1201
+ }
1202
+ parseBodyElements(e) {
1203
+ var t = [];
1204
+ for (let n of S.elements(e)) switch (n.localName) {
1205
+ case "p":
1206
+ t.push(this.parseParagraph(n));
1207
+ break;
1208
+ case "altChunk":
1209
+ t.push(this.parseAltChunk(n));
1210
+ break;
1211
+ case "tbl":
1212
+ t.push(this.parseTable(n));
1213
+ break;
1214
+ case "sdt":
1215
+ t.push(...this.parseSdt(n, (e) => this.parseBodyElements(e)));
1216
+ break;
1217
+ }
1218
+ return t;
1219
+ }
1220
+ parseStylesFile(e) {
1221
+ var t = [];
1222
+ for (let n of S.elements(e)) switch (n.localName) {
1223
+ case "style":
1224
+ t.push(this.parseStyle(n));
1225
+ break;
1226
+ case "docDefaults":
1227
+ t.push(this.parseDefaultStyles(n));
1228
+ break;
1229
+ }
1230
+ return t;
1231
+ }
1232
+ parseDefaultStyles(e) {
1233
+ var t = {
1234
+ id: null,
1235
+ name: null,
1236
+ target: null,
1237
+ basedOn: null,
1238
+ styles: []
1239
+ };
1240
+ for (let i of S.elements(e)) switch (i.localName) {
1241
+ case "rPrDefault":
1242
+ var n = S.element(i, "rPr");
1243
+ n && t.styles.push({
1244
+ target: "span",
1245
+ values: this.parseDefaultProperties(n, {})
1246
+ });
1247
+ break;
1248
+ case "pPrDefault":
1249
+ var r = S.element(i, "pPr");
1250
+ r && t.styles.push({
1251
+ target: "p",
1252
+ values: this.parseDefaultProperties(r, {})
1253
+ });
1254
+ break;
1255
+ }
1256
+ return t;
1257
+ }
1258
+ parseStyle(e) {
1259
+ var t = {
1260
+ id: S.attr(e, "styleId"),
1261
+ isDefault: S.boolAttr(e, "default"),
1262
+ name: null,
1263
+ target: null,
1264
+ basedOn: null,
1265
+ styles: [],
1266
+ linked: null
1267
+ };
1268
+ switch (S.attr(e, "type")) {
1269
+ case "paragraph":
1270
+ t.target = "p";
1271
+ break;
1272
+ case "table":
1273
+ t.target = "table";
1274
+ break;
1275
+ case "character":
1276
+ t.target = "span";
1277
+ break;
1278
+ }
1279
+ for (let n of S.elements(e)) switch (n.localName) {
1280
+ case "basedOn":
1281
+ t.basedOn = S.attr(n, "val");
1282
+ break;
1283
+ case "name":
1284
+ t.name = S.attr(n, "val");
1285
+ break;
1286
+ case "link":
1287
+ t.linked = S.attr(n, "val");
1288
+ break;
1289
+ case "next":
1290
+ t.next = S.attr(n, "val");
1291
+ break;
1292
+ case "aliases":
1293
+ t.aliases = S.attr(n, "val").split(",");
1294
+ break;
1295
+ case "pPr":
1296
+ t.styles.push({
1297
+ target: "p",
1298
+ values: this.parseDefaultProperties(n, {})
1299
+ }), t.paragraphProps = k(n, S);
1300
+ break;
1301
+ case "rPr":
1302
+ t.styles.push({
1303
+ target: "span",
1304
+ values: this.parseDefaultProperties(n, {})
1305
+ }), t.runProps = O(n, S);
1306
+ break;
1307
+ case "tblPr":
1308
+ case "tcPr":
1309
+ t.styles.push({
1310
+ target: "td",
1311
+ values: this.parseDefaultProperties(n, {})
1312
+ });
1313
+ break;
1314
+ case "tblStylePr":
1315
+ for (let e of this.parseTableStyle(n)) t.styles.push(e);
1316
+ break;
1317
+ case "rsid":
1318
+ case "qFormat":
1319
+ case "hidden":
1320
+ case "semiHidden":
1321
+ case "unhideWhenUsed":
1322
+ case "autoRedefine":
1323
+ case "uiPriority": break;
1324
+ default: this.options.debug && console.warn(`DOCX: Unknown style element: ${n.localName}`);
1325
+ }
1326
+ return t;
1327
+ }
1328
+ parseTableStyle(e) {
1329
+ var t = [], n = S.attr(e, "type"), r = "", i = "";
1330
+ switch (n) {
1331
+ case "firstRow":
1332
+ i = ".first-row", r = "tr.first-row td";
1333
+ break;
1334
+ case "lastRow":
1335
+ i = ".last-row", r = "tr.last-row td";
1336
+ break;
1337
+ case "firstCol":
1338
+ i = ".first-col", r = "td.first-col";
1339
+ break;
1340
+ case "lastCol":
1341
+ i = ".last-col", r = "td.last-col";
1342
+ break;
1343
+ case "band1Vert":
1344
+ i = ":not(.no-vband)", r = "td.odd-col";
1345
+ break;
1346
+ case "band2Vert":
1347
+ i = ":not(.no-vband)", r = "td.even-col";
1348
+ break;
1349
+ case "band1Horz":
1350
+ i = ":not(.no-hband)", r = "tr.odd-row";
1351
+ break;
1352
+ case "band2Horz":
1353
+ i = ":not(.no-hband)", r = "tr.even-row";
1354
+ break;
1355
+ default: return [];
1356
+ }
1357
+ for (let n of S.elements(e)) switch (n.localName) {
1358
+ case "pPr":
1359
+ t.push({
1360
+ target: `${r} p`,
1361
+ mod: i,
1362
+ values: this.parseDefaultProperties(n, {})
1363
+ });
1364
+ break;
1365
+ case "rPr":
1366
+ t.push({
1367
+ target: `${r} span`,
1368
+ mod: i,
1369
+ values: this.parseDefaultProperties(n, {})
1370
+ });
1371
+ break;
1372
+ case "tblPr":
1373
+ case "tcPr":
1374
+ t.push({
1375
+ target: r,
1376
+ mod: i,
1377
+ values: this.parseDefaultProperties(n, {})
1378
+ });
1379
+ break;
1380
+ }
1381
+ return t;
1382
+ }
1383
+ parseNumberingFile(e) {
1384
+ var t = [], n = {}, r = [];
1385
+ for (let o of S.elements(e)) switch (o.localName) {
1386
+ case "abstractNum":
1387
+ this.parseAbstractNumbering(o, r).forEach((e) => t.push(e));
1388
+ break;
1389
+ case "numPicBullet":
1390
+ r.push(this.parseNumberingPicBullet(o));
1391
+ break;
1392
+ case "num":
1393
+ var i = S.attr(o, "numId"), a = S.elementAttr(o, "abstractNumId", "val");
1394
+ n[a] = i;
1395
+ break;
1396
+ }
1397
+ return t.forEach((e) => e.id = n[e.id]), t;
1398
+ }
1399
+ parseNumberingPicBullet(e) {
1400
+ var t = S.element(e, "pict"), n = t && S.element(t, "shape"), r = n && S.element(n, "imagedata");
1401
+ return r ? {
1402
+ id: S.intAttr(e, "numPicBulletId"),
1403
+ src: S.attr(r, "id"),
1404
+ style: S.attr(n, "style")
1405
+ } : null;
1406
+ }
1407
+ parseAbstractNumbering(e, t) {
1408
+ var n = [], r = S.attr(e, "abstractNumId");
1409
+ for (let i of S.elements(e)) switch (i.localName) {
1410
+ case "lvl":
1411
+ n.push(this.parseNumberingLevel(r, i, t));
1412
+ break;
1413
+ }
1414
+ return n;
1415
+ }
1416
+ parseNumberingLevel(e, t, n) {
1417
+ var r = {
1418
+ id: e,
1419
+ level: S.intAttr(t, "ilvl"),
1420
+ start: 1,
1421
+ pStyleName: void 0,
1422
+ pStyle: {},
1423
+ rStyle: {},
1424
+ suff: "tab"
1425
+ };
1426
+ for (let e of S.elements(t)) switch (e.localName) {
1427
+ case "start":
1428
+ r.start = S.intAttr(e, "val");
1429
+ break;
1430
+ case "pPr":
1431
+ this.parseDefaultProperties(e, r.pStyle);
1432
+ break;
1433
+ case "rPr":
1434
+ this.parseDefaultProperties(e, r.rStyle);
1435
+ break;
1436
+ case "lvlPicBulletId":
1437
+ var i = S.intAttr(e, "val");
1438
+ r.bullet = n.find((e) => (e == null ? void 0 : e.id) == i);
1439
+ break;
1440
+ case "lvlText":
1441
+ r.levelText = S.attr(e, "val");
1442
+ break;
1443
+ case "pStyle":
1444
+ r.pStyleName = S.attr(e, "val");
1445
+ break;
1446
+ case "numFmt":
1447
+ r.format = S.attr(e, "val");
1448
+ break;
1449
+ case "suff":
1450
+ r.suff = S.attr(e, "val");
1451
+ break;
1452
+ }
1453
+ return r;
1454
+ }
1455
+ parseSdt(e, t) {
1456
+ let n = S.element(e, "sdtContent");
1457
+ return n ? t(n) : [];
1458
+ }
1459
+ parseInserted(e, t) {
1460
+ var n, r;
1461
+ return {
1462
+ type: M.Inserted,
1463
+ children: (n = (r = t(e)) == null ? void 0 : r.children) == null ? [] : n
1464
+ };
1465
+ }
1466
+ parseDeleted(e, t) {
1467
+ var n, r;
1468
+ return {
1469
+ type: M.Deleted,
1470
+ children: (n = (r = t(e)) == null ? void 0 : r.children) == null ? [] : n
1471
+ };
1472
+ }
1473
+ parseAltChunk(e) {
1474
+ return {
1475
+ type: M.AltChunk,
1476
+ children: [],
1477
+ id: S.attr(e, "id")
1478
+ };
1479
+ }
1480
+ parseParagraph(e) {
1481
+ var t = {
1482
+ type: M.Paragraph,
1483
+ children: []
1484
+ };
1485
+ for (let n of S.elements(e)) switch (n.localName) {
1486
+ case "pPr":
1487
+ this.parseParagraphProperties(n, t);
1488
+ break;
1489
+ case "r":
1490
+ t.children.push(this.parseRun(n, t));
1491
+ break;
1492
+ case "hyperlink":
1493
+ t.children.push(this.parseHyperlink(n, t));
1494
+ break;
1495
+ case "smartTag":
1496
+ t.children.push(this.parseSmartTag(n, t));
1497
+ break;
1498
+ case "bookmarkStart":
1499
+ t.children.push(nt(n, S));
1500
+ break;
1501
+ case "bookmarkEnd":
1502
+ t.children.push(rt(n, S));
1503
+ break;
1504
+ case "commentRangeStart":
1505
+ t.children.push(new lt(S.attr(n, "id")));
1506
+ break;
1507
+ case "commentRangeEnd":
1508
+ t.children.push(new ut(S.attr(n, "id")));
1509
+ break;
1510
+ case "oMath":
1511
+ case "oMathPara":
1512
+ t.children.push(this.parseMathElement(n));
1513
+ break;
1514
+ case "sdt":
1515
+ t.children.push(...this.parseSdt(n, (e) => this.parseParagraph(e).children));
1516
+ break;
1517
+ case "ins":
1518
+ t.children.push(this.parseInserted(n, (e) => this.parseParagraph(e)));
1519
+ break;
1520
+ case "del":
1521
+ t.children.push(this.parseDeleted(n, (e) => this.parseParagraph(e)));
1522
+ break;
1523
+ }
1524
+ return t;
1525
+ }
1526
+ parseParagraphProperties(e, t) {
1527
+ this.parseDefaultProperties(e, t.cssStyle = {}, null, (e) => {
1528
+ if (A(e, t, S)) return !0;
1529
+ switch (e.localName) {
1530
+ case "pStyle":
1531
+ t.styleName = S.attr(e, "val");
1532
+ break;
1533
+ case "cnfStyle":
1534
+ t.className = G.classNameOfCnfStyle(e);
1535
+ break;
1536
+ case "framePr":
1537
+ this.parseFrame(e, t);
1538
+ break;
1539
+ case "rPr": break;
1540
+ default: return !1;
1541
+ }
1542
+ return !0;
1543
+ });
1544
+ }
1545
+ parseFrame(e, t) {
1546
+ S.attr(e, "dropCap") == "drop" && (t.cssStyle.float = "left");
1547
+ }
1548
+ parseHyperlink(e, t) {
1549
+ var n = {
1550
+ type: M.Hyperlink,
1551
+ parent: t,
1552
+ children: []
1553
+ };
1554
+ n.anchor = S.attr(e, "anchor"), n.id = S.attr(e, "id");
1555
+ for (let t of S.elements(e)) switch (t.localName) {
1556
+ case "r":
1557
+ n.children.push(this.parseRun(t, n));
1558
+ break;
1559
+ }
1560
+ return n;
1561
+ }
1562
+ parseSmartTag(e, t) {
1563
+ var n = {
1564
+ type: M.SmartTag,
1565
+ parent: t,
1566
+ children: []
1567
+ }, r = S.attr(e, "uri"), i = S.attr(e, "element");
1568
+ r && (n.uri = r), i && (n.element = i);
1569
+ for (let t of S.elements(e)) switch (t.localName) {
1570
+ case "r":
1571
+ n.children.push(this.parseRun(t, n));
1572
+ break;
1573
+ }
1574
+ return n;
1575
+ }
1576
+ parseRun(e, t) {
1577
+ var n = {
1578
+ type: M.Run,
1579
+ parent: t,
1580
+ children: []
1581
+ };
1582
+ for (let t of S.elements(e)) switch (t = this.checkAlternateContent(t), t.localName) {
1583
+ case "t":
1584
+ n.children.push({
1585
+ type: M.Text,
1586
+ text: t.textContent
1587
+ });
1588
+ break;
1589
+ case "delText":
1590
+ n.children.push({
1591
+ type: M.DeletedText,
1592
+ text: t.textContent
1593
+ });
1594
+ break;
1595
+ case "commentReference":
1596
+ n.children.push(new ct(S.attr(t, "id")));
1597
+ break;
1598
+ case "fldSimple":
1599
+ n.children.push({
1600
+ type: M.SimpleField,
1601
+ instruction: S.attr(t, "instr"),
1602
+ lock: S.boolAttr(t, "lock", !1),
1603
+ dirty: S.boolAttr(t, "dirty", !1)
1604
+ });
1605
+ break;
1606
+ case "instrText":
1607
+ n.fieldRun = !0, n.children.push({
1608
+ type: M.Instruction,
1609
+ text: t.textContent
1610
+ });
1611
+ break;
1612
+ case "fldChar":
1613
+ n.fieldRun = !0, n.children.push({
1614
+ type: M.ComplexField,
1615
+ charType: S.attr(t, "fldCharType"),
1616
+ lock: S.boolAttr(t, "lock", !1),
1617
+ dirty: S.boolAttr(t, "dirty", !1)
1618
+ });
1619
+ break;
1620
+ case "noBreakHyphen":
1621
+ n.children.push({ type: M.NoBreakHyphen });
1622
+ break;
1623
+ case "br":
1624
+ n.children.push({
1625
+ type: M.Break,
1626
+ break: S.attr(t, "type") || "textWrapping"
1627
+ });
1628
+ break;
1629
+ case "lastRenderedPageBreak":
1630
+ n.children.push({
1631
+ type: M.Break,
1632
+ break: "lastRenderedPageBreak"
1633
+ });
1634
+ break;
1635
+ case "sym":
1636
+ n.children.push({
1637
+ type: M.Symbol,
1638
+ font: u(S.attr(t, "font")),
1639
+ char: S.attr(t, "char")
1640
+ });
1641
+ break;
1642
+ case "tab":
1643
+ n.children.push({ type: M.Tab });
1644
+ break;
1645
+ case "footnoteReference":
1646
+ n.children.push({
1647
+ type: M.FootnoteReference,
1648
+ id: S.attr(t, "id")
1649
+ });
1650
+ break;
1651
+ case "endnoteReference":
1652
+ n.children.push({
1653
+ type: M.EndnoteReference,
1654
+ id: S.attr(t, "id")
1655
+ });
1656
+ break;
1657
+ case "drawing":
1658
+ let e = this.parseDrawing(t);
1659
+ e && (n.children = [e]);
1660
+ break;
1661
+ case "pict":
1662
+ n.children.push(this.parseVmlPicture(t));
1663
+ break;
1664
+ case "rPr":
1665
+ this.parseRunProperties(t, n);
1666
+ break;
1667
+ }
1668
+ return n;
1669
+ }
1670
+ parseMathElement(e) {
1671
+ let t = `${e.localName}Pr`, n = {
1672
+ type: U[e.localName],
1673
+ children: []
1674
+ };
1675
+ for (let i of S.elements(e)) if (U[i.localName]) n.children.push(this.parseMathElement(i));
1676
+ else if (i.localName == "r") {
1677
+ var r = this.parseRun(i);
1678
+ r.type = M.MmlRun, n.children.push(r);
1679
+ } else i.localName == t && (n.props = this.parseMathProperies(i));
1680
+ return n;
1681
+ }
1682
+ parseMathProperies(e) {
1683
+ let t = {};
1684
+ for (let n of S.elements(e)) switch (n.localName) {
1685
+ case "chr":
1686
+ t.char = S.attr(n, "val");
1687
+ break;
1688
+ case "vertJc":
1689
+ t.verticalJustification = S.attr(n, "val");
1690
+ break;
1691
+ case "pos":
1692
+ t.position = S.attr(n, "val");
1693
+ break;
1694
+ case "degHide":
1695
+ t.hideDegree = S.boolAttr(n, "val");
1696
+ break;
1697
+ case "begChr":
1698
+ t.beginChar = S.attr(n, "val");
1699
+ break;
1700
+ case "endChr":
1701
+ t.endChar = S.attr(n, "val");
1702
+ break;
1703
+ }
1704
+ return t;
1705
+ }
1706
+ parseRunProperties(e, t) {
1707
+ this.parseDefaultProperties(e, t.cssStyle = {}, null, (e) => {
1708
+ switch (e.localName) {
1709
+ case "rStyle":
1710
+ t.styleName = S.attr(e, "val");
1711
+ break;
1712
+ case "vertAlign":
1713
+ t.verticalAlign = G.valueOfVertAlign(e, !0);
1714
+ break;
1715
+ default: return !1;
1716
+ }
1717
+ return !0;
1718
+ });
1719
+ }
1720
+ parseVmlPicture(e) {
1721
+ let t = {
1722
+ type: M.VmlPicture,
1723
+ children: []
1724
+ };
1725
+ for (let n of S.elements(e)) {
1726
+ let e = B(n, this);
1727
+ e && t.children.push(e);
1728
+ }
1729
+ return t;
1730
+ }
1731
+ checkAlternateContent(e) {
1732
+ var t;
1733
+ if (e.localName != "AlternateContent") return e;
1734
+ var n = S.element(e, "Choice");
1735
+ if (n) {
1736
+ var r = S.attr(n, "Requires"), i = e.lookupNamespaceURI(r);
1737
+ if (dt.includes(i)) return n.firstElementChild;
1738
+ }
1739
+ return (t = S.element(e, "Fallback")) == null ? void 0 : t.firstElementChild;
1740
+ }
1741
+ parseDrawing(e) {
1742
+ for (var t of S.elements(e)) switch (t.localName) {
1743
+ case "inline":
1744
+ case "anchor": return this.parseDrawingWrapper(t);
1745
+ }
1746
+ }
1747
+ parseDrawingWrapper(e) {
1748
+ var t = {
1749
+ type: M.Drawing,
1750
+ children: [],
1751
+ cssStyle: {}
1752
+ }, n = e.localName == "anchor";
1753
+ let r = null, i = S.boolAttr(e, "simplePos");
1754
+ S.boolAttr(e, "behindDoc");
1755
+ let a = {
1756
+ relative: "page",
1757
+ align: "left",
1758
+ offset: "0"
1759
+ }, o = {
1760
+ relative: "page",
1761
+ align: "top",
1762
+ offset: "0"
1763
+ };
1764
+ for (var s of S.elements(e)) switch (s.localName) {
1765
+ case "simplePos":
1766
+ i && (a.offset = S.lengthAttr(s, "x", y.Emu), o.offset = S.lengthAttr(s, "y", y.Emu));
1767
+ break;
1768
+ case "extent":
1769
+ t.cssStyle.width = S.lengthAttr(s, "cx", y.Emu), t.cssStyle.height = S.lengthAttr(s, "cy", y.Emu);
1770
+ break;
1771
+ case "positionH":
1772
+ case "positionV":
1773
+ if (!i) {
1774
+ var c;
1775
+ let e = s.localName == "positionH" ? a : o;
1776
+ var l = S.element(s, "align"), u = S.element(s, "posOffset");
1777
+ e.relative = (c = S.attr(s, "relativeFrom")) == null ? e.relative : c, l && (e.align = l.textContent), u && (e.offset = ne(u.textContent, y.Emu));
1778
+ }
1779
+ break;
1780
+ case "wrapTopAndBottom":
1781
+ r = "wrapTopAndBottom";
1782
+ break;
1783
+ case "wrapNone":
1784
+ r = "wrapNone";
1785
+ break;
1786
+ case "graphic":
1787
+ var d = this.parseGraphic(s);
1788
+ d && t.children.push(d);
1789
+ break;
1790
+ }
1791
+ return r == "wrapTopAndBottom" ? (t.cssStyle.display = "block", a.align && (t.cssStyle["text-align"] = a.align, t.cssStyle.width = "100%")) : r == "wrapNone" ? (t.cssStyle.display = "block", t.cssStyle.position = "relative", t.cssStyle.width = "0px", t.cssStyle.height = "0px", a.offset && (t.cssStyle.left = a.offset), o.offset && (t.cssStyle.top = o.offset)) : n && (a.align == "left" || a.align == "right") && (t.cssStyle.float = a.align), t;
1792
+ }
1793
+ parseGraphic(e) {
1794
+ var t = S.element(e, "graphicData");
1795
+ for (let e of S.elements(t)) switch (e.localName) {
1796
+ case "pic": return this.parsePicture(e);
1797
+ }
1798
+ return null;
1799
+ }
1800
+ parsePicture(e) {
1801
+ var t = {
1802
+ type: M.Image,
1803
+ src: "",
1804
+ cssStyle: {}
1805
+ }, n = S.element(e, "blipFill"), r = S.element(n, "blip"), i = S.element(n, "srcRect");
1806
+ t.src = S.attr(r, "embed"), i && (t.srcRect = [
1807
+ S.intAttr(i, "l", 0) / 1e5,
1808
+ S.intAttr(i, "t", 0) / 1e5,
1809
+ S.intAttr(i, "r", 0) / 1e5,
1810
+ S.intAttr(i, "b", 0) / 1e5
1811
+ ]);
1812
+ var a = S.element(e, "spPr"), o = S.element(a, "xfrm");
1813
+ if (t.cssStyle.position = "relative", o) {
1814
+ t.rotation = S.intAttr(o, "rot", 0) / 6e4;
1815
+ for (var s of S.elements(o)) switch (s.localName) {
1816
+ case "ext":
1817
+ t.cssStyle.width = S.lengthAttr(s, "cx", y.Emu), t.cssStyle.height = S.lengthAttr(s, "cy", y.Emu);
1818
+ break;
1819
+ case "off":
1820
+ t.cssStyle.left = S.lengthAttr(s, "x", y.Emu), t.cssStyle.top = S.lengthAttr(s, "y", y.Emu);
1821
+ break;
1822
+ }
1823
+ }
1824
+ return t;
1825
+ }
1826
+ parseTable(e) {
1827
+ var t = {
1828
+ type: M.Table,
1829
+ children: []
1830
+ };
1831
+ for (let n of S.elements(e)) switch (n.localName) {
1832
+ case "tr":
1833
+ t.children.push(this.parseTableRow(n));
1834
+ break;
1835
+ case "tblGrid":
1836
+ t.columns = this.parseTableColumns(n);
1837
+ break;
1838
+ case "tblPr":
1839
+ this.parseTableProperties(n, t);
1840
+ break;
1841
+ }
1842
+ return t;
1843
+ }
1844
+ parseTableColumns(e) {
1845
+ var t = [];
1846
+ for (let n of S.elements(e)) switch (n.localName) {
1847
+ case "gridCol":
1848
+ t.push({ width: S.lengthAttr(n, "w") });
1849
+ break;
1850
+ }
1851
+ return t;
1852
+ }
1853
+ parseTableProperties(e, t) {
1854
+ switch (t.cssStyle = {}, t.cellStyle = {}, this.parseDefaultProperties(e, t.cssStyle, t.cellStyle, (e) => {
1855
+ switch (e.localName) {
1856
+ case "tblStyle":
1857
+ t.styleName = S.attr(e, "val");
1858
+ break;
1859
+ case "tblLook":
1860
+ t.className = G.classNameOftblLook(e);
1861
+ break;
1862
+ case "tblpPr":
1863
+ this.parseTablePosition(e, t);
1864
+ break;
1865
+ case "tblStyleColBandSize":
1866
+ t.colBandSize = S.intAttr(e, "val");
1867
+ break;
1868
+ case "tblStyleRowBandSize":
1869
+ t.rowBandSize = S.intAttr(e, "val");
1870
+ break;
1871
+ case "hidden":
1872
+ t.cssStyle.display = "none";
1873
+ break;
1874
+ default: return !1;
1875
+ }
1876
+ return !0;
1877
+ }), t.cssStyle["text-align"]) {
1878
+ case "center":
1879
+ delete t.cssStyle["text-align"], t.cssStyle["margin-left"] = "auto", t.cssStyle["margin-right"] = "auto";
1880
+ break;
1881
+ case "right":
1882
+ delete t.cssStyle["text-align"], t.cssStyle["margin-left"] = "auto";
1883
+ break;
1884
+ }
1885
+ }
1886
+ parseTablePosition(e, t) {
1887
+ var n = S.lengthAttr(e, "topFromText"), r = S.lengthAttr(e, "bottomFromText"), i = S.lengthAttr(e, "rightFromText"), a = S.lengthAttr(e, "leftFromText");
1888
+ t.cssStyle.float = "left", t.cssStyle["margin-bottom"] = G.addSize(t.cssStyle["margin-bottom"], r), t.cssStyle["margin-left"] = G.addSize(t.cssStyle["margin-left"], a), t.cssStyle["margin-right"] = G.addSize(t.cssStyle["margin-right"], i), t.cssStyle["margin-top"] = G.addSize(t.cssStyle["margin-top"], n);
1889
+ }
1890
+ parseTableRow(e) {
1891
+ var t = {
1892
+ type: M.Row,
1893
+ children: []
1894
+ };
1895
+ for (let n of S.elements(e)) switch (n.localName) {
1896
+ case "tc":
1897
+ t.children.push(this.parseTableCell(n));
1898
+ break;
1899
+ case "trPr":
1900
+ case "tblPrEx":
1901
+ this.parseTableRowProperties(n, t);
1902
+ break;
1903
+ }
1904
+ return t;
1905
+ }
1906
+ parseTableRowProperties(e, t) {
1907
+ t.cssStyle = this.parseDefaultProperties(e, {}, null, (e) => {
1908
+ switch (e.localName) {
1909
+ case "cnfStyle":
1910
+ t.className = G.classNameOfCnfStyle(e);
1911
+ break;
1912
+ case "tblHeader":
1913
+ t.isHeader = S.boolAttr(e, "val");
1914
+ break;
1915
+ case "gridBefore":
1916
+ t.gridBefore = S.intAttr(e, "val");
1917
+ break;
1918
+ case "gridAfter":
1919
+ t.gridAfter = S.intAttr(e, "val");
1920
+ break;
1921
+ default: return !1;
1922
+ }
1923
+ return !0;
1924
+ });
1925
+ }
1926
+ parseTableCell(e) {
1927
+ var t = {
1928
+ type: M.Cell,
1929
+ children: []
1930
+ };
1931
+ for (let n of S.elements(e)) switch (n.localName) {
1932
+ case "tbl":
1933
+ t.children.push(this.parseTable(n));
1934
+ break;
1935
+ case "p":
1936
+ t.children.push(this.parseParagraph(n));
1937
+ break;
1938
+ case "tcPr":
1939
+ this.parseTableCellProperties(n, t);
1940
+ break;
1941
+ }
1942
+ return t;
1943
+ }
1944
+ parseTableCellProperties(e, t) {
1945
+ t.cssStyle = this.parseDefaultProperties(e, {}, null, (e) => {
1946
+ switch (e.localName) {
1947
+ case "gridSpan":
1948
+ t.span = S.intAttr(e, "val", null);
1949
+ break;
1950
+ case "vMerge":
1951
+ var n;
1952
+ t.verticalMerge = (n = S.attr(e, "val")) == null ? "continue" : n;
1953
+ break;
1954
+ case "cnfStyle":
1955
+ t.className = G.classNameOfCnfStyle(e);
1956
+ break;
1957
+ default: return !1;
1958
+ }
1959
+ return !0;
1960
+ }), this.parseTableCellVerticalText(e, t);
1961
+ }
1962
+ parseTableCellVerticalText(e, t) {
1963
+ let n = {
1964
+ btLr: {
1965
+ writingMode: "vertical-rl",
1966
+ transform: "rotate(180deg)"
1967
+ },
1968
+ lrTb: {
1969
+ writingMode: "vertical-lr",
1970
+ transform: "none"
1971
+ },
1972
+ tbRl: {
1973
+ writingMode: "vertical-rl",
1974
+ transform: "none"
1975
+ }
1976
+ };
1977
+ for (let r of S.elements(e)) if (r.localName === "textDirection") {
1978
+ let e = n[S.attr(r, "val")] || { writingMode: "horizontal-tb" };
1979
+ t.cssStyle["writing-mode"] = e.writingMode, t.cssStyle.transform = e.transform;
1980
+ }
1981
+ }
1982
+ parseDefaultProperties(e, t = null, n = null, r = null) {
1983
+ t = t || {};
1984
+ for (let i of S.elements(e)) if (!(r != null && r(i))) switch (i.localName) {
1985
+ case "jc":
1986
+ t["text-align"] = G.valueOfJc(i);
1987
+ break;
1988
+ case "textAlignment":
1989
+ t["vertical-align"] = G.valueOfTextAlignment(i);
1990
+ break;
1991
+ case "color":
1992
+ t.color = W.colorAttr(i, "val", null, H.color);
1993
+ break;
1994
+ case "sz":
1995
+ t["font-size"] = t["min-height"] = S.lengthAttr(i, "val", y.FontSize);
1996
+ break;
1997
+ case "shd":
1998
+ t["background-color"] = W.colorAttr(i, "fill", null, H.shd);
1999
+ break;
2000
+ case "highlight":
2001
+ t["background-color"] = W.colorAttr(i, "val", null, H.highlight);
2002
+ break;
2003
+ case "vertAlign": break;
2004
+ case "position":
2005
+ t.verticalAlign = S.lengthAttr(i, "val", y.FontSize);
2006
+ break;
2007
+ case "tcW": if (this.options.ignoreWidth) break;
2008
+ case "tblW":
2009
+ t.width = G.valueOfSize(i, "w");
2010
+ break;
2011
+ case "trHeight":
2012
+ this.parseTrHeight(i, t);
2013
+ break;
2014
+ case "strike":
2015
+ t["text-decoration"] = S.boolAttr(i, "val", !0) ? "line-through" : "none";
2016
+ break;
2017
+ case "b":
2018
+ t["font-weight"] = S.boolAttr(i, "val", !0) ? "bold" : "normal";
2019
+ break;
2020
+ case "i":
2021
+ t["font-style"] = S.boolAttr(i, "val", !0) ? "italic" : "normal";
2022
+ break;
2023
+ case "caps":
2024
+ t["text-transform"] = S.boolAttr(i, "val", !0) ? "uppercase" : "none";
2025
+ break;
2026
+ case "smallCaps":
2027
+ t["font-variant"] = S.boolAttr(i, "val", !0) ? "small-caps" : "none";
2028
+ break;
2029
+ case "u":
2030
+ this.parseUnderline(i, t);
2031
+ break;
2032
+ case "ind":
2033
+ case "tblInd":
2034
+ this.parseIndentation(i, t);
2035
+ break;
2036
+ case "rFonts":
2037
+ this.parseFont(i, t);
2038
+ break;
2039
+ case "tblBorders":
2040
+ this.parseBorderProperties(i, n || t);
2041
+ break;
2042
+ case "tblCellSpacing":
2043
+ t["border-spacing"] = G.valueOfMargin(i), t["border-collapse"] = "separate";
2044
+ break;
2045
+ case "pBdr":
2046
+ this.parseBorderProperties(i, t);
2047
+ break;
2048
+ case "bdr":
2049
+ t.border = G.valueOfBorder(i);
2050
+ break;
2051
+ case "tcBorders":
2052
+ this.parseBorderProperties(i, t);
2053
+ break;
2054
+ case "vanish":
2055
+ S.boolAttr(i, "val", !0) && (t.display = "none");
2056
+ break;
2057
+ case "kern": break;
2058
+ case "noWrap": break;
2059
+ case "tblCellMar":
2060
+ case "tcMar":
2061
+ this.parseMarginProperties(i, n || t);
2062
+ break;
2063
+ case "tblLayout":
2064
+ t["table-layout"] = G.valueOfTblLayout(i);
2065
+ break;
2066
+ case "vAlign":
2067
+ t["vertical-align"] = G.valueOfTextAlignment(i);
2068
+ break;
2069
+ case "spacing":
2070
+ e.localName == "pPr" && this.parseSpacing(i, t);
2071
+ break;
2072
+ case "wordWrap":
2073
+ S.boolAttr(i, "val") && (t["overflow-wrap"] = "break-word");
2074
+ break;
2075
+ case "suppressAutoHyphens":
2076
+ t.hyphens = S.boolAttr(i, "val", !0) ? "none" : "auto";
2077
+ break;
2078
+ case "lang":
2079
+ t.$lang = S.attr(i, "val");
2080
+ break;
2081
+ case "rtl":
2082
+ case "bidi":
2083
+ S.boolAttr(i, "val", !0) && (t.direction = "rtl");
2084
+ break;
2085
+ case "bCs":
2086
+ case "iCs":
2087
+ case "szCs":
2088
+ case "tabs":
2089
+ case "outlineLvl":
2090
+ case "contextualSpacing":
2091
+ case "tblStyleColBandSize":
2092
+ case "tblStyleRowBandSize":
2093
+ case "webHidden":
2094
+ case "pageBreakBefore":
2095
+ case "suppressLineNumbers":
2096
+ case "keepLines":
2097
+ case "keepNext":
2098
+ case "widowControl":
2099
+ case "bidi":
2100
+ case "rtl":
2101
+ case "noProof": break;
2102
+ default:
2103
+ this.options.debug && console.warn(`DOCX: Unknown document element: ${e.localName}.${i.localName}`);
2104
+ break;
2105
+ }
2106
+ return t;
2107
+ }
2108
+ parseUnderline(e, t) {
2109
+ var n = S.attr(e, "val");
2110
+ if (n != null) {
2111
+ switch (n) {
2112
+ case "dash":
2113
+ case "dashDotDotHeavy":
2114
+ case "dashDotHeavy":
2115
+ case "dashedHeavy":
2116
+ case "dashLong":
2117
+ case "dashLongHeavy":
2118
+ case "dotDash":
2119
+ case "dotDotDash":
2120
+ t["text-decoration"] = "underline dashed";
2121
+ break;
2122
+ case "dotted":
2123
+ case "dottedHeavy":
2124
+ t["text-decoration"] = "underline dotted";
2125
+ break;
2126
+ case "double":
2127
+ t["text-decoration"] = "underline double";
2128
+ break;
2129
+ case "single":
2130
+ case "thick":
2131
+ t["text-decoration"] = "underline";
2132
+ break;
2133
+ case "wave":
2134
+ case "wavyDouble":
2135
+ case "wavyHeavy":
2136
+ t["text-decoration"] = "underline wavy";
2137
+ break;
2138
+ case "words":
2139
+ t["text-decoration"] = "underline";
2140
+ break;
2141
+ case "none":
2142
+ t["text-decoration"] = "none";
2143
+ break;
2144
+ }
2145
+ var r = W.colorAttr(e, "color");
2146
+ r && (t["text-decoration-color"] = r);
2147
+ }
2148
+ }
2149
+ parseFont(e, t) {
2150
+ var n = [
2151
+ S.attr(e, "ascii"),
2152
+ G.themeValue(e, "asciiTheme"),
2153
+ S.attr(e, "eastAsia")
2154
+ ].filter((e) => e).map((e) => u(e));
2155
+ n.length > 0 && (t["font-family"] = [...new Set(n)].join(", "));
2156
+ }
2157
+ parseIndentation(e, t) {
2158
+ var n = S.lengthAttr(e, "firstLine"), r = S.lengthAttr(e, "hanging"), i = S.lengthAttr(e, "left"), a = S.lengthAttr(e, "start"), o = S.lengthAttr(e, "right"), s = S.lengthAttr(e, "end");
2159
+ n && (t["text-indent"] = n), r && (t["text-indent"] = `-${r}`), (i || a) && (t["margin-inline-start"] = i || a), (o || s) && (t["margin-inline-end"] = o || s);
2160
+ }
2161
+ parseSpacing(e, t) {
2162
+ var n = S.lengthAttr(e, "before"), r = S.lengthAttr(e, "after"), i = S.intAttr(e, "line", null), a = S.attr(e, "lineRule");
2163
+ if (n && (t["margin-top"] = n), r && (t["margin-bottom"] = r), i !== null) switch (a) {
2164
+ case "auto":
2165
+ t["line-height"] = `${(i / 240).toFixed(2)}`;
2166
+ break;
2167
+ case "atLeast":
2168
+ t["line-height"] = `calc(100% + ${i / 20}pt)`;
2169
+ break;
2170
+ default:
2171
+ t["line-height"] = t["min-height"] = `${i / 20}pt`;
2172
+ break;
2173
+ }
2174
+ }
2175
+ parseMarginProperties(e, t) {
2176
+ for (let n of S.elements(e)) switch (n.localName) {
2177
+ case "left":
2178
+ t["padding-left"] = G.valueOfMargin(n);
2179
+ break;
2180
+ case "right":
2181
+ t["padding-right"] = G.valueOfMargin(n);
2182
+ break;
2183
+ case "top":
2184
+ t["padding-top"] = G.valueOfMargin(n);
2185
+ break;
2186
+ case "bottom":
2187
+ t["padding-bottom"] = G.valueOfMargin(n);
2188
+ break;
2189
+ }
2190
+ }
2191
+ parseTrHeight(e, t) {
2192
+ switch (S.attr(e, "hRule")) {
2193
+ case "exact":
2194
+ t.height = S.lengthAttr(e, "val");
2195
+ break;
2196
+ default:
2197
+ t.height = S.lengthAttr(e, "val");
2198
+ break;
2199
+ }
2200
+ }
2201
+ parseBorderProperties(e, t) {
2202
+ for (let n of S.elements(e)) switch (n.localName) {
2203
+ case "start":
2204
+ case "left":
2205
+ t["border-left"] = G.valueOfBorder(n);
2206
+ break;
2207
+ case "end":
2208
+ case "right":
2209
+ t["border-right"] = G.valueOfBorder(n);
2210
+ break;
2211
+ case "top":
2212
+ t["border-top"] = G.valueOfBorder(n);
2213
+ break;
2214
+ case "bottom":
2215
+ t["border-bottom"] = G.valueOfBorder(n);
2216
+ break;
2217
+ }
2218
+ }
2219
+ }, pt = [
2220
+ "black",
2221
+ "blue",
2222
+ "cyan",
2223
+ "darkBlue",
2224
+ "darkCyan",
2225
+ "darkGray",
2226
+ "darkGreen",
2227
+ "darkMagenta",
2228
+ "darkRed",
2229
+ "darkYellow",
2230
+ "green",
2231
+ "lightGray",
2232
+ "magenta",
2233
+ "none",
2234
+ "red",
2235
+ "white",
2236
+ "yellow"
2237
+ ], W = class {
2238
+ static colorAttr(e, t, n = null, r = "black") {
2239
+ var i = S.attr(e, t);
2240
+ if (i) return i == "auto" ? r : pt.includes(i) ? i : `#${i}`;
2241
+ var a = S.attr(e, "themeColor");
2242
+ return a ? `var(--docx-${a}-color)` : n;
2243
+ }
2244
+ }, G = class e {
2245
+ static themeValue(e, t) {
2246
+ var n = S.attr(e, t);
2247
+ return n ? `var(--docx-${n}-font)` : null;
2248
+ }
2249
+ static valueOfSize(e, t) {
2250
+ var n = y.Dxa;
2251
+ switch (S.attr(e, "type")) {
2252
+ case "dxa": break;
2253
+ case "pct":
2254
+ n = y.Percent;
2255
+ break;
2256
+ case "auto": return "auto";
2257
+ }
2258
+ return S.lengthAttr(e, t, n);
2259
+ }
2260
+ static valueOfMargin(e) {
2261
+ return S.lengthAttr(e, "w");
2262
+ }
2263
+ static valueOfBorder(t) {
2264
+ var n = e.parseBorderType(S.attr(t, "val"));
2265
+ if (n == "none") return "none";
2266
+ var r = W.colorAttr(t, "color");
2267
+ return `${S.lengthAttr(t, "sz", y.Border)} ${n} ${r == "auto" ? H.borderColor : r}`;
2268
+ }
2269
+ static parseBorderType(e) {
2270
+ switch (e) {
2271
+ case "single": return "solid";
2272
+ case "dashDotStroked": return "solid";
2273
+ case "dashed": return "dashed";
2274
+ case "dashSmallGap": return "dashed";
2275
+ case "dotDash": return "dotted";
2276
+ case "dotDotDash": return "dotted";
2277
+ case "dotted": return "dotted";
2278
+ case "double": return "double";
2279
+ case "doubleWave": return "double";
2280
+ case "inset": return "inset";
2281
+ case "nil": return "none";
2282
+ case "none": return "none";
2283
+ case "outset": return "outset";
2284
+ case "thick": return "solid";
2285
+ case "thickThinLargeGap": return "solid";
2286
+ case "thickThinMediumGap": return "solid";
2287
+ case "thickThinSmallGap": return "solid";
2288
+ case "thinThickLargeGap": return "solid";
2289
+ case "thinThickMediumGap": return "solid";
2290
+ case "thinThickSmallGap": return "solid";
2291
+ case "thinThickThinLargeGap": return "solid";
2292
+ case "thinThickThinMediumGap": return "solid";
2293
+ case "thinThickThinSmallGap": return "solid";
2294
+ case "threeDEmboss": return "solid";
2295
+ case "threeDEngrave": return "solid";
2296
+ case "triple": return "double";
2297
+ case "wave": return "solid";
2298
+ }
2299
+ return "solid";
2300
+ }
2301
+ static valueOfTblLayout(e) {
2302
+ return S.attr(e, "val") == "fixed" ? "fixed" : "auto";
2303
+ }
2304
+ static classNameOfCnfStyle(e) {
2305
+ let t = S.attr(e, "val");
2306
+ return [
2307
+ "first-row",
2308
+ "last-row",
2309
+ "first-col",
2310
+ "last-col",
2311
+ "odd-col",
2312
+ "even-col",
2313
+ "odd-row",
2314
+ "even-row",
2315
+ "ne-cell",
2316
+ "nw-cell",
2317
+ "se-cell",
2318
+ "sw-cell"
2319
+ ].filter((e, n) => t[n] == "1").join(" ");
2320
+ }
2321
+ static valueOfJc(e) {
2322
+ var t = S.attr(e, "val");
2323
+ switch (t) {
2324
+ case "start":
2325
+ case "left": return "left";
2326
+ case "center": return "center";
2327
+ case "end":
2328
+ case "right": return "right";
2329
+ case "both": return "justify";
2330
+ }
2331
+ return t;
2332
+ }
2333
+ static valueOfVertAlign(e, t = !1) {
2334
+ var n = S.attr(e, "val");
2335
+ switch (n) {
2336
+ case "subscript": return "sub";
2337
+ case "superscript": return t ? "sup" : "super";
2338
+ }
2339
+ return t ? null : n;
2340
+ }
2341
+ static valueOfTextAlignment(e) {
2342
+ var t = S.attr(e, "val");
2343
+ switch (t) {
2344
+ case "auto":
2345
+ case "baseline": return "baseline";
2346
+ case "top": return "top";
2347
+ case "center": return "middle";
2348
+ case "bottom": return "bottom";
2349
+ }
2350
+ return t;
2351
+ }
2352
+ static addSize(e, t) {
2353
+ return e == null ? t : t == null ? e : `calc(${e} + ${t})`;
2354
+ }
2355
+ static classNameOftblLook(e) {
2356
+ let t = S.hexAttr(e, "val", 0), n = "";
2357
+ return (S.boolAttr(e, "firstRow") || t & 32) && (n += " first-row"), (S.boolAttr(e, "lastRow") || t & 64) && (n += " last-row"), (S.boolAttr(e, "firstColumn") || t & 128) && (n += " first-col"), (S.boolAttr(e, "lastColumn") || t & 256) && (n += " last-col"), (S.boolAttr(e, "noHBand") || t & 512) && (n += " no-hband"), (S.boolAttr(e, "noVBand") || t & 1024) && (n += " no-vband"), n.trim();
2358
+ }
2359
+ }, K = {
2360
+ pos: 0,
2361
+ leader: "none",
2362
+ style: "left"
2363
+ }, mt = 50;
2364
+ function ht(e = document.body) {
2365
+ let t = document.createElement("div");
2366
+ t.style.width = "100pt", e.appendChild(t);
2367
+ let n = 100 / t.offsetWidth;
2368
+ return e.removeChild(t), n;
2369
+ }
2370
+ function gt(e, t, r, i = 72 / 96) {
2371
+ let a = e.closest("p"), o = e.getBoundingClientRect(), s = a.getBoundingClientRect(), c = getComputedStyle(a), l = (t == null ? void 0 : t.length) > 0 ? t.map((e) => ({
2372
+ pos: _t(e.position),
2373
+ leader: e.leader,
2374
+ style: e.style
2375
+ })).sort((e, t) => e.pos - t.pos) : [K], u = l[l.length - 1], d = s.width * i, f = _t(r), p = u.pos + f;
2376
+ if (p < d) for (; p < d && l.length < mt; p += f) l.push(n(n({}, K), {}, { pos: p }));
2377
+ let m = parseFloat(c.marginLeft), h = s.left + m, g = (o.left - h) * i, _ = l.find((e) => e.style != "clear" && e.pos > g);
2378
+ if (_ == null) return;
2379
+ let v = 1;
2380
+ if (_.style == "right" || _.style == "center") {
2381
+ let t = Array.from(a.querySelectorAll(`.${e.className}`)), n = t.indexOf(e) + 1, r = document.createRange();
2382
+ r.setStart(e, 1), n < t.length ? r.setEndBefore(t[n]) : r.setEndAfter(a);
2383
+ let o = _.style == "center" ? .5 : 1, c = r.getBoundingClientRect(), l = c.left + o * c.width - (s.left - m);
2384
+ v = _.pos - l * i;
2385
+ } else v = _.pos - g;
2386
+ switch (e.innerHTML = "&nbsp;", e.style.textDecoration = "inherit", e.style.wordSpacing = `${v.toFixed(0)}pt`, _.leader) {
2387
+ case "dot":
2388
+ case "middleDot":
2389
+ e.style.textDecoration = "underline", e.style.textDecorationStyle = "dotted";
2390
+ break;
2391
+ case "hyphen":
2392
+ case "heavy":
2393
+ case "underscore":
2394
+ e.style.textDecoration = "underline";
2395
+ break;
2396
+ }
2397
+ }
2398
+ function _t(e) {
2399
+ return parseFloat(e);
2400
+ }
2401
+ var q = {
2402
+ svg: "http://www.w3.org/2000/svg",
2403
+ mathML: "http://www.w3.org/1998/Math/MathML"
2404
+ }, vt = class {
2405
+ constructor(e) {
2406
+ 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 = [];
2407
+ }
2408
+ render(e, t, n = null, r) {
2409
+ var a = this;
2410
+ return i(function* () {
2411
+ if (a.document = e, a.options = r, a.className = r.className, a.rootSelector = r.inWrapper ? `.${a.className}-wrapper` : ":root", a.styleMap = null, a.tasks = [], a.options.renderComments && globalThis.Highlight && (a.commentHighlight = new Highlight()), n = n || t, yt(n), yt(t), n.appendChild(a.createComment("docxjs library predefined styles")), n.appendChild(a.renderDefaultStyle()), e.themePart && (n.appendChild(a.createComment("docxjs document theme values")), a.renderTheme(e.themePart, n)), e.stylesPart != null && (a.styleMap = a.processStyles(e.stylesPart.styles), n.appendChild(a.createComment("docxjs document styles")), n.appendChild(a.renderStyles(e.stylesPart.styles))), e.numberingPart && (a.prodessNumberings(e.numberingPart.domNumberings), n.appendChild(a.createComment("docxjs document numbering styles")), n.appendChild(a.renderNumbering(e.numberingPart.domNumberings, n))), e.footnotesPart && (a.footnoteMap = p(e.footnotesPart.notes, (e) => e.id)), e.endnotesPart && (a.endnoteMap = p(e.endnotesPart.notes, (e) => e.id)), e.settingsPart) {
2412
+ var i;
2413
+ a.defaultTabSize = (i = e.settingsPart.settings) == null ? void 0 : i.defaultTabStop;
2414
+ }
2415
+ !r.ignoreFonts && e.fontTablePart && a.renderFontTable(e.fontTablePart, n);
2416
+ var o = a.renderSections(e.documentPart.body);
2417
+ a.options.inWrapper ? t.appendChild(a.renderWrapper(o)) : J(t, o), a.commentHighlight && r.renderComments && CSS.highlights.set(`${a.className}-comments`, a.commentHighlight), a.postRenderTasks.forEach((e) => e()), yield Promise.allSettled(a.tasks), a.refreshTabStops();
2418
+ })();
2419
+ }
2420
+ renderTheme(e, t) {
2421
+ var n, r;
2422
+ let i = {}, a = (n = e.theme) == null ? void 0 : n.fontScheme;
2423
+ a && (a.majorFont && (i["--docx-majorHAnsi-font"] = a.majorFont.latinTypeface), a.minorFont && (i["--docx-minorHAnsi-font"] = a.minorFont.latinTypeface));
2424
+ let o = (r = e.theme) == null ? void 0 : r.colorScheme;
2425
+ if (o) for (let [e, t] of Object.entries(o.colors)) i[`--docx-${e}-color`] = `#${t}`;
2426
+ let s = this.styleToString(`.${this.className}`, i);
2427
+ t.appendChild(this.createStyleElement(s));
2428
+ }
2429
+ renderFontTable(e, t) {
2430
+ for (let n of e.fonts) for (let e of n.embedFontRefs) this.tasks.push(this.document.loadFont(e.id, e.key).then((r) => {
2431
+ let i = {
2432
+ "font-family": u(n.name),
2433
+ src: `url(${r})`
2434
+ };
2435
+ (e.type == "bold" || e.type == "boldItalic") && (i["font-weight"] = "bold"), (e.type == "italic" || e.type == "boldItalic") && (i["font-style"] = "italic");
2436
+ let a = this.styleToString("@font-face", i);
2437
+ t.appendChild(this.createComment(`docxjs ${n.name} font`)), t.appendChild(this.createStyleElement(a));
2438
+ }));
2439
+ }
2440
+ processStyleName(e) {
2441
+ return e ? `${this.className}_${l(e)}` : this.className;
2442
+ }
2443
+ processStyles(e) {
2444
+ let t = p(e.filter((e) => e.id != null), (e) => e.id);
2445
+ for (let i of e.filter((e) => e.basedOn)) {
2446
+ var r = t[i.basedOn];
2447
+ if (r) {
2448
+ i.paragraphProps = _(i.paragraphProps, r.paragraphProps), i.runProps = _(i.runProps, r.runProps);
2449
+ for (let e of r.styles) {
2450
+ let t = i.styles.find((t) => t.target == e.target);
2451
+ t ? this.copyStyleProperties(e.values, t.values) : i.styles.push(n(n({}, e), {}, { values: n({}, e.values) }));
2452
+ }
2453
+ } else this.options.debug && console.warn(`Can't find base style ${i.basedOn}`);
2454
+ }
2455
+ for (let t of e) t.cssName = this.processStyleName(t.id);
2456
+ return t;
2457
+ }
2458
+ prodessNumberings(e) {
2459
+ for (let n of e.filter((e) => e.pStyleName)) {
2460
+ var t;
2461
+ let e = this.findStyle(n.pStyleName);
2462
+ !(e == null || (t = e.paragraphProps) == null) && t.numbering && (e.paragraphProps.numbering.level = n.level);
2463
+ }
2464
+ }
2465
+ processElement(e) {
2466
+ if (e.children) for (var t of e.children) t.parent = e, t.type == M.Table ? this.processTable(t) : this.processElement(t);
2467
+ }
2468
+ processTable(e) {
2469
+ for (var t of e.children) for (var n of t.children) n.cssStyle = this.copyStyleProperties(e.cellStyle, n.cssStyle, [
2470
+ "border-left",
2471
+ "border-right",
2472
+ "border-top",
2473
+ "border-bottom",
2474
+ "padding-left",
2475
+ "padding-right",
2476
+ "padding-top",
2477
+ "padding-bottom"
2478
+ ]), this.processElement(n);
2479
+ }
2480
+ copyStyleProperties(e, t, n = null) {
2481
+ if (!e) return t;
2482
+ t == null && (t = {}), n == null && (n = Object.getOwnPropertyNames(e));
2483
+ for (var r of n) e.hasOwnProperty(r) && !t.hasOwnProperty(r) && (t[r] = e[r]);
2484
+ return t;
2485
+ }
2486
+ createPageElement(e, t) {
2487
+ var n = this.createElement("section", { className: e });
2488
+ return t && (t.pageMargins && (n.style.paddingLeft = t.pageMargins.left, n.style.paddingRight = t.pageMargins.right, n.style.paddingTop = t.pageMargins.top, n.style.paddingBottom = t.pageMargins.bottom), t.pageSize && (this.options.ignoreWidth || (n.style.width = t.pageSize.width), this.options.ignoreHeight || (n.style.minHeight = t.pageSize.height))), n;
2489
+ }
2490
+ createSectionContent(e) {
2491
+ var t = this.createElement("article");
2492
+ 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;
2493
+ }
2494
+ renderSections(e) {
2495
+ let t = [];
2496
+ this.processElement(e);
2497
+ let n = this.splitBySection(e.children, e.props), r = this.groupByPageBreaks(n), i = null;
2498
+ for (let n = 0, o = r.length; n < o; n++) {
2499
+ this.currentFootnoteIds = [];
2500
+ let s = r[n][0].sectProps, c = this.createPageElement(this.className, s);
2501
+ this.renderStyleValues(e.cssStyle, c), this.options.renderHeaders && this.renderHeaderFooter(s.headerRefs, s, t.length, i != s, c);
2502
+ for (let e of r[n]) {
2503
+ var a = this.createSectionContent(e.sectProps);
2504
+ this.renderElements(e.elements, a), c.appendChild(a), s = e.sectProps;
2505
+ }
2506
+ this.options.renderFootnotes && this.renderNotes(this.currentFootnoteIds, this.footnoteMap, c), this.options.renderEndnotes && n == o - 1 && this.renderNotes(this.currentEndnoteIds, this.endnoteMap, c), this.options.renderFooters && this.renderHeaderFooter(s.footerRefs, s, t.length, i != s, c), t.push(c), i = s;
2507
+ }
2508
+ return t;
2509
+ }
2510
+ renderHeaderFooter(e, t, n, r, i) {
2511
+ var a, o;
2512
+ if (e) {
2513
+ var s = (a = (o = t.titlePage && r ? e.find((e) => e.type == "first") : null) == null ? n % 2 == 1 ? e.find((e) => e.type == "even") : null : o) == null ? e.find((e) => e.type == "default") : a, c = s && this.document.findPartByRelId(s.id, this.document.documentPart);
2514
+ if (c) {
2515
+ this.currentPart = c, this.usedHederFooterParts.includes(c.path) || (this.processElement(c.rootElement), this.usedHederFooterParts.push(c.path));
2516
+ let [e] = this.renderElements([c.rootElement], i);
2517
+ t != null && t.pageMargins && (c.rootElement.type === M.Header ? (e.style.marginTop = `calc(${t.pageMargins.header} - ${t.pageMargins.top})`, e.style.minHeight = `calc(${t.pageMargins.top} - ${t.pageMargins.header})`) : c.rootElement.type === M.Footer && (e.style.marginBottom = `calc(${t.pageMargins.footer} - ${t.pageMargins.bottom})`, e.style.minHeight = `calc(${t.pageMargins.bottom} - ${t.pageMargins.footer})`)), this.currentPart = null;
2518
+ }
2519
+ }
2520
+ }
2521
+ isPageBreakElement(e) {
2522
+ return e.type == M.Break ? e.break == "lastRenderedPageBreak" ? !this.options.ignoreLastRenderedPageBreak : e.break == "page" : !1;
2523
+ }
2524
+ isPageBreakSection(e, t) {
2525
+ var n, r, i, a, o, s;
2526
+ return !e || !t ? !1 : ((n = e.pageSize) == null ? void 0 : n.orientation) != ((r = t.pageSize) == null ? void 0 : r.orientation) || ((i = e.pageSize) == null ? void 0 : i.width) != ((a = t.pageSize) == null ? void 0 : a.width) || ((o = e.pageSize) == null ? void 0 : o.height) != ((s = t.pageSize) == null ? void 0 : s.height);
2527
+ }
2528
+ splitBySection(e, t) {
2529
+ var r = {
2530
+ sectProps: null,
2531
+ elements: [],
2532
+ pageBreak: !1
2533
+ }, i = [r];
2534
+ for (let t of e) {
2535
+ if (t.type == M.Paragraph) {
2536
+ var a;
2537
+ let e = this.findStyle(t.styleName);
2538
+ !(e == null || (a = e.paragraphProps) == null) && a.pageBreakBefore && (r.sectProps = o, r.pageBreak = !0, r = {
2539
+ sectProps: null,
2540
+ elements: [],
2541
+ pageBreak: !1
2542
+ }, i.push(r));
2543
+ }
2544
+ if (r.elements.push(t), t.type == M.Paragraph) {
2545
+ let e = t;
2546
+ var o = e.sectionProps, s = -1, c = -1;
2547
+ if (this.options.breakPages && e.children && (s = e.children.findIndex((e) => {
2548
+ var t, n;
2549
+ return c = (t = (n = e.children) == null ? void 0 : n.findIndex(this.isPageBreakElement.bind(this))) == null ? -1 : t, c != -1;
2550
+ })), (o || s != -1) && (r.sectProps = o, r.pageBreak = s != -1, r = {
2551
+ sectProps: null,
2552
+ elements: [],
2553
+ pageBreak: !1
2554
+ }, i.push(r)), s != -1) {
2555
+ let i = e.children[s], a = c < i.children.length - 1;
2556
+ if (s < e.children.length - 1 || a) {
2557
+ var l = t.children, u = n(n({}, t), {}, { children: l.slice(s) });
2558
+ if (t.children = l.slice(0, s), r.elements.push(u), a) {
2559
+ let e = i.children, r = n(n({}, i), {}, { children: e.slice(0, c) });
2560
+ t.children.push(r), i.children = e.slice(c);
2561
+ }
2562
+ }
2563
+ }
2564
+ }
2565
+ }
2566
+ let d = null;
2567
+ for (let e = i.length - 1; e >= 0; e--) if (i[e].sectProps == null) {
2568
+ var f;
2569
+ i[e].sectProps = (f = d) == null ? t : f;
2570
+ } else d = i[e].sectProps;
2571
+ return i;
2572
+ }
2573
+ groupByPageBreaks(e) {
2574
+ let t = [], n, r = [t];
2575
+ for (let i of e) t.push(i), (this.options.ignoreLastRenderedPageBreak || i.pageBreak || this.isPageBreakSection(n, i.sectProps)) && r.push(t = []), n = i.sectProps;
2576
+ return r.filter((e) => e.length > 0);
2577
+ }
2578
+ renderWrapper(e) {
2579
+ return this.createElement("div", { className: `${this.className}-wrapper` }, e);
2580
+ }
2581
+ renderDefaultStyle() {
2582
+ var e = this.className, t = `
2583
+ .${e}-wrapper { background: gray; padding: 30px; padding-bottom: 0px; display: flex; flex-flow: column; align-items: center; }
2584
+ .${e}-wrapper>section.${e} { background: white; box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); margin-bottom: 30px; }`;
2585
+ this.options.hideWrapperOnPrint && (t = `@media not print { ${t} }`);
2586
+ var n = `${t}
2587
+ .${e} { color: black; hyphens: auto; text-underline-position: from-font; }
2588
+ section.${e} { box-sizing: border-box; display: flex; flex-flow: column nowrap; position: relative; overflow: hidden; }
2589
+ section.${e}>article { margin-bottom: auto; z-index: 1; }
2590
+ section.${e}>footer { z-index: 1; }
2591
+ .${e} table { border-collapse: collapse; }
2592
+ .${e} table td, .${e} table th { vertical-align: top; }
2593
+ .${e} p { margin: 0pt; min-height: 1em; }
2594
+ .${e} span { white-space: pre-wrap; overflow-wrap: break-word; }
2595
+ .${e} a { color: inherit; text-decoration: inherit; }
2596
+ .${e} svg { fill: transparent; }
2597
+ `;
2598
+ return this.options.renderComments && (n += `
2599
+ .${e}-comment-ref { cursor: default; }
2600
+ .${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; }
2601
+ .${e}-comment-ref:hover~.${e}-comment-popover { display: block; }
2602
+ .${e}-comment-author,.${e}-comment-date { font-size: 0.875rem; color: #888; }
2603
+ `), this.createStyleElement(n);
2604
+ }
2605
+ renderNumbering(e, t) {
2606
+ var r = "", i = [];
2607
+ for (var a of e) {
2608
+ var o = `p.${this.numberingClass(a.id, a.level)}`, s = "none";
2609
+ if (a.bullet) {
2610
+ let e = `--${this.className}-${a.bullet.src}`.toLowerCase();
2611
+ r += this.styleToString(`${o}:before`, {
2612
+ content: "' '",
2613
+ display: "inline-block",
2614
+ background: `var(${e})`
2615
+ }, a.bullet.style), this.tasks.push(this.document.loadNumberingImage(a.bullet.src).then((n) => {
2616
+ var r = `${this.rootSelector} { ${e}: url(${n}) }`;
2617
+ t.appendChild(this.createStyleElement(r));
2618
+ }));
2619
+ } else if (a.levelText) {
2620
+ let e = this.numberingCounter(a.id, a.level), t = e + " " + (a.start - 1);
2621
+ a.level > 0 && (r += this.styleToString(`p.${this.numberingClass(a.id, a.level - 1)}`, { "counter-set": t })), i.push(t), r += this.styleToString(`${o}:before`, n({
2622
+ content: this.levelTextToContent(a.levelText, a.suff, a.id, this.numFormatToCssValue(a.format)),
2623
+ "counter-increment": e
2624
+ }, a.rStyle));
2625
+ } else s = this.numFormatToCssValue(a.format);
2626
+ r += this.styleToString(o, n({
2627
+ display: "list-item",
2628
+ "list-style-position": "inside",
2629
+ "list-style-type": s
2630
+ }, a.pStyle));
2631
+ }
2632
+ return i.length > 0 && (r += this.styleToString(this.rootSelector, { "counter-reset": i.join(" ") })), this.createStyleElement(r);
2633
+ }
2634
+ renderStyles(e) {
2635
+ var t = "";
2636
+ let n = this.styleMap, r = p(e.filter((e) => e.isDefault), (e) => e.target);
2637
+ for (let c of e) {
2638
+ var i = c.styles;
2639
+ if (c.linked) {
2640
+ var a = c.linked && n[c.linked];
2641
+ a ? i = i.concat(a.styles) : this.options.debug && console.warn(`Can't find linked style ${c.linked}`);
2642
+ }
2643
+ for (let e of i) {
2644
+ var o, s = `${(o = c.target) == null ? "" : o}.${c.cssName}`;
2645
+ c.target != e.target && (s += ` ${e.target}`), r[c.target] == c && (s = `.${this.className} ${c.target}, ` + s), t += this.styleToString(s, e.values);
2646
+ }
2647
+ }
2648
+ return this.createStyleElement(t);
2649
+ }
2650
+ renderNotes(e, t, n) {
2651
+ var r = e.map((e) => t[e]).filter((e) => e);
2652
+ if (r.length > 0) {
2653
+ var i = this.createElement("ol", null, this.renderElements(r));
2654
+ n.appendChild(i);
2655
+ }
2656
+ }
2657
+ renderElement(e) {
2658
+ switch (e.type) {
2659
+ case M.Paragraph: return this.renderParagraph(e);
2660
+ case M.BookmarkStart: return this.renderBookmarkStart(e);
2661
+ case M.BookmarkEnd: return null;
2662
+ case M.Run: return this.renderRun(e);
2663
+ case M.Table: return this.renderTable(e);
2664
+ case M.Row: return this.renderTableRow(e);
2665
+ case M.Cell: return this.renderTableCell(e);
2666
+ case M.Hyperlink: return this.renderHyperlink(e);
2667
+ case M.SmartTag: return this.renderSmartTag(e);
2668
+ case M.Drawing: return this.renderDrawing(e);
2669
+ case M.Image: return this.renderImage(e);
2670
+ case M.Text: return this.renderText(e);
2671
+ case M.Text: return this.renderText(e);
2672
+ case M.DeletedText: return this.renderDeletedText(e);
2673
+ case M.Tab: return this.renderTab(e);
2674
+ case M.Symbol: return this.renderSymbol(e);
2675
+ case M.Break: return this.renderBreak(e);
2676
+ case M.Footer: return this.renderContainer(e, "footer");
2677
+ case M.Header: return this.renderContainer(e, "header");
2678
+ case M.Footnote:
2679
+ case M.Endnote: return this.renderContainer(e, "li");
2680
+ case M.FootnoteReference: return this.renderFootnoteReference(e);
2681
+ case M.EndnoteReference: return this.renderEndnoteReference(e);
2682
+ case M.NoBreakHyphen: return this.createElement("wbr");
2683
+ case M.VmlPicture: return this.renderVmlPicture(e);
2684
+ case M.VmlElement: return this.renderVmlElement(e);
2685
+ case M.MmlMath: return this.renderContainerNS(e, q.mathML, "math", { xmlns: q.mathML });
2686
+ case M.MmlMathParagraph: return this.renderContainer(e, "span");
2687
+ case M.MmlFraction: return this.renderContainerNS(e, q.mathML, "mfrac");
2688
+ case M.MmlBase: return this.renderContainerNS(e, q.mathML, e.parent.type == M.MmlMatrixRow ? "mtd" : "mrow");
2689
+ case M.MmlNumerator:
2690
+ case M.MmlDenominator:
2691
+ case M.MmlFunction:
2692
+ case M.MmlLimit:
2693
+ case M.MmlBox: return this.renderContainerNS(e, q.mathML, "mrow");
2694
+ case M.MmlGroupChar: return this.renderMmlGroupChar(e);
2695
+ case M.MmlLimitLower: return this.renderContainerNS(e, q.mathML, "munder");
2696
+ case M.MmlMatrix: return this.renderContainerNS(e, q.mathML, "mtable");
2697
+ case M.MmlMatrixRow: return this.renderContainerNS(e, q.mathML, "mtr");
2698
+ case M.MmlRadical: return this.renderMmlRadical(e);
2699
+ case M.MmlSuperscript: return this.renderContainerNS(e, q.mathML, "msup");
2700
+ case M.MmlSubscript: return this.renderContainerNS(e, q.mathML, "msub");
2701
+ case M.MmlDegree:
2702
+ case M.MmlSuperArgument:
2703
+ case M.MmlSubArgument: return this.renderContainerNS(e, q.mathML, "mn");
2704
+ case M.MmlFunctionName: return this.renderContainerNS(e, q.mathML, "ms");
2705
+ case M.MmlDelimiter: return this.renderMmlDelimiter(e);
2706
+ case M.MmlRun: return this.renderMmlRun(e);
2707
+ case M.MmlNary: return this.renderMmlNary(e);
2708
+ case M.MmlPreSubSuper: return this.renderMmlPreSubSuper(e);
2709
+ case M.MmlBar: return this.renderMmlBar(e);
2710
+ case M.MmlEquationArray: return this.renderMllList(e);
2711
+ case M.Inserted: return this.renderInserted(e);
2712
+ case M.Deleted: return this.renderDeleted(e);
2713
+ case M.CommentRangeStart: return this.renderCommentRangeStart(e);
2714
+ case M.CommentRangeEnd: return this.renderCommentRangeEnd(e);
2715
+ case M.CommentReference: return this.renderCommentReference(e);
2716
+ case M.AltChunk: return this.renderAltChunk(e);
2717
+ }
2718
+ return null;
2719
+ }
2720
+ renderElements(e, t) {
2721
+ if (e == null) return null;
2722
+ var n = e.flatMap((e) => this.renderElement(e)).filter((e) => e != null);
2723
+ return t && J(t, n), n;
2724
+ }
2725
+ renderContainer(e, t, n) {
2726
+ return this.createElement(t, n, this.renderElements(e.children));
2727
+ }
2728
+ renderContainerNS(e, t, n, r) {
2729
+ return this.createElementNS(t, n, r, this.renderElements(e.children));
2730
+ }
2731
+ renderParagraph(e) {
2732
+ var t, n, r, i = this.renderContainer(e, "p");
2733
+ let a = this.findStyle(e.styleName);
2734
+ e.tabs != null || (e.tabs = a == null || (t = a.paragraphProps) == null ? void 0 : t.tabs), this.renderClass(e, i), this.renderStyleValues(e.cssStyle, i), this.renderCommonProperties(i.style, e);
2735
+ let o = (n = e.numbering) == null ? a == null || (r = a.paragraphProps) == null ? void 0 : r.numbering : n;
2736
+ return o && i.classList.add(this.numberingClass(o.id, o.level)), i;
2737
+ }
2738
+ renderRunProperties(e, t) {
2739
+ this.renderCommonProperties(e, t);
2740
+ }
2741
+ renderCommonProperties(e, t) {
2742
+ t != null && (t.color && (e.color = t.color), t.fontSize && (e["font-size"] = t.fontSize));
2743
+ }
2744
+ renderHyperlink(e) {
2745
+ var t = this.renderContainer(e, "a");
2746
+ this.renderStyleValues(e.cssStyle, t);
2747
+ let n = "";
2748
+ if (e.id) {
2749
+ var r;
2750
+ let t = this.document.documentPart.rels.find((t) => t.id == e.id && t.targetMode === "External");
2751
+ n = (r = t == null ? void 0 : t.target) == null ? n : r;
2752
+ }
2753
+ return e.anchor && (n += `#${e.anchor}`), t.href = n, t;
2754
+ }
2755
+ renderSmartTag(e) {
2756
+ return this.renderContainer(e, "span");
2757
+ }
2758
+ renderCommentRangeStart(e) {
2759
+ var t;
2760
+ if (!this.options.renderComments) return null;
2761
+ let n = new Range();
2762
+ (t = this.commentHighlight) == null || t.add(n);
2763
+ let r = this.createComment(`start of comment #${e.id}`);
2764
+ return this.later(() => n.setStart(r, 0)), this.commentMap[e.id] = n, r;
2765
+ }
2766
+ renderCommentRangeEnd(e) {
2767
+ if (!this.options.renderComments) return null;
2768
+ let t = this.commentMap[e.id], n = this.createComment(`end of comment #${e.id}`);
2769
+ return this.later(() => t == null ? void 0 : t.setEnd(n, 0)), n;
2770
+ }
2771
+ renderCommentReference(e) {
2772
+ var t;
2773
+ if (!this.options.renderComments) return null;
2774
+ var n = (t = this.document.commentsPart) == null ? void 0 : t.commentMap[e.id];
2775
+ if (!n) return null;
2776
+ let r = new DocumentFragment(), i = this.createElement("span", { className: `${this.className}-comment-ref` }, ["💬"]), a = this.createElement("div", { className: `${this.className}-comment-popover` });
2777
+ return this.renderCommentContent(n, a), r.appendChild(this.createComment(`comment #${n.id} by ${n.author} on ${n.date}`)), r.appendChild(i), r.appendChild(a), r;
2778
+ }
2779
+ renderAltChunk(e) {
2780
+ if (!this.options.renderAltChunks) return null;
2781
+ var t = this.createElement("iframe");
2782
+ return this.tasks.push(this.document.loadAltChunk(e.id, this.currentPart).then((e) => {
2783
+ t.srcdoc = e;
2784
+ })), t;
2785
+ }
2786
+ renderCommentContent(e, t) {
2787
+ 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);
2788
+ }
2789
+ renderDrawing(e) {
2790
+ var t = this.renderContainer(e, "div");
2791
+ return t.style.display = "inline-block", t.style.position = "relative", t.style.textIndent = "0px", this.renderStyleValues(e.cssStyle, t), t;
2792
+ }
2793
+ renderImage(e) {
2794
+ var t, n;
2795
+ let r = this.createElement("img"), i = (t = e.cssStyle) == null ? void 0 : t.transform;
2796
+ if (this.renderStyleValues(e.cssStyle, r), e.srcRect && e.srcRect.some((e) => e != 0)) {
2797
+ var [a, o, s, c] = e.srcRect;
2798
+ i = `scale(${1 / (1 - a - s)}, ${1 / (1 - o - c)})`, r.style["clip-path"] = `rect(${(100 * o).toFixed(2)}% ${(100 * (1 - s)).toFixed(2)}% ${(100 * (1 - c)).toFixed(2)}% ${(100 * a).toFixed(2)}%)`;
2799
+ }
2800
+ return e.rotation && (i = `rotate(${e.rotation}deg) ${(n = i) == null ? "" : n}`), r.style.transform = i == null ? void 0 : i.trim(), this.document && this.tasks.push(this.document.loadDocumentImage(e.src, this.currentPart).then((e) => {
2801
+ r.src = e;
2802
+ })), r;
2803
+ }
2804
+ renderText(e) {
2805
+ return this.htmlDocument.createTextNode(e.text);
2806
+ }
2807
+ renderDeletedText(e) {
2808
+ return this.options.renderChanges ? this.renderText(e) : null;
2809
+ }
2810
+ renderBreak(e) {
2811
+ return e.break == "textWrapping" ? this.createElement("br") : null;
2812
+ }
2813
+ renderInserted(e) {
2814
+ return this.options.renderChanges ? this.renderContainer(e, "ins") : this.renderElements(e.children);
2815
+ }
2816
+ renderDeleted(e) {
2817
+ return this.options.renderChanges ? this.renderContainer(e, "del") : null;
2818
+ }
2819
+ renderSymbol(e) {
2820
+ var t = this.createElement("span");
2821
+ return t.style.fontFamily = e.font, t.innerHTML = `&#x${e.char};`, t;
2822
+ }
2823
+ renderFootnoteReference(e) {
2824
+ var t = this.createElement("sup");
2825
+ return this.currentFootnoteIds.push(e.id), t.textContent = `${this.currentFootnoteIds.length}`, t;
2826
+ }
2827
+ renderEndnoteReference(e) {
2828
+ var t = this.createElement("sup");
2829
+ return this.currentEndnoteIds.push(e.id), t.textContent = `${this.currentEndnoteIds.length}`, t;
2830
+ }
2831
+ renderTab(e) {
2832
+ var t = this.createElement("span");
2833
+ if (t.innerHTML = "&emsp;", this.options.experimental) {
2834
+ var n;
2835
+ t.className = this.tabStopClass();
2836
+ var r = (n = bt(e, M.Paragraph)) == null ? void 0 : n.tabs;
2837
+ this.currentTabs.push({
2838
+ stops: r,
2839
+ span: t
2840
+ });
2841
+ }
2842
+ return t;
2843
+ }
2844
+ renderBookmarkStart(e) {
2845
+ return this.createElement("span", { id: e.name });
2846
+ }
2847
+ renderRun(e) {
2848
+ if (e.fieldRun) return null;
2849
+ let t = this.createElement("span");
2850
+ if (e.id && (t.id = e.id), this.renderClass(e, t), this.renderStyleValues(e.cssStyle, t), e.verticalAlign) {
2851
+ let n = this.createElement(e.verticalAlign);
2852
+ this.renderElements(e.children, n), t.appendChild(n);
2853
+ } else this.renderElements(e.children, t);
2854
+ return t;
2855
+ }
2856
+ renderTable(e) {
2857
+ let t = this.createElement("table");
2858
+ return this.tableCellPositions.push(this.currentCellPosition), this.tableVerticalMerges.push(this.currentVerticalMerge), this.currentVerticalMerge = {}, this.currentCellPosition = {
2859
+ col: 0,
2860
+ row: 0
2861
+ }, 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;
2862
+ }
2863
+ renderTableColumns(e) {
2864
+ let t = this.createElement("colgroup");
2865
+ for (let n of e) {
2866
+ let e = this.createElement("col");
2867
+ n.width && (e.style.width = n.width), t.appendChild(e);
2868
+ }
2869
+ return t;
2870
+ }
2871
+ renderTableRow(e) {
2872
+ let t = this.createElement("tr");
2873
+ return this.currentCellPosition.col = 0, e.gridBefore && t.appendChild(this.renderTableCellPlaceholder(e.gridBefore)), this.renderClass(e, t), this.renderElements(e.children, t), this.renderStyleValues(e.cssStyle, t), e.gridAfter && t.appendChild(this.renderTableCellPlaceholder(e.gridAfter)), this.currentCellPosition.row++, t;
2874
+ }
2875
+ renderTableCellPlaceholder(e) {
2876
+ let t = this.createElement("td", { colSpan: e });
2877
+ return t.style.border = "none", t;
2878
+ }
2879
+ renderTableCell(e) {
2880
+ let t = this.renderContainer(e, "td"), n = this.currentCellPosition.col;
2881
+ return e.verticalMerge ? e.verticalMerge == "restart" ? (this.currentVerticalMerge[n] = t, t.rowSpan = 1) : this.currentVerticalMerge[n] && (this.currentVerticalMerge[n].rowSpan += 1, t.style.display = "none") : this.currentVerticalMerge[n] = null, this.renderClass(e, t), this.renderStyleValues(e.cssStyle, t), e.span && (t.colSpan = e.span), this.currentCellPosition.col += t.colSpan, t;
2882
+ }
2883
+ renderVmlPicture(e) {
2884
+ return this.renderContainer(e, "div");
2885
+ }
2886
+ renderVmlElement(e) {
2887
+ var t, n = this.createSvgElement("svg");
2888
+ n.setAttribute("style", e.cssStyleText);
2889
+ let r = this.renderVmlChildElement(e);
2890
+ if ((t = e.imageHref) != null && t.id) {
2891
+ var i;
2892
+ this.tasks.push((i = this.document) == null ? void 0 : i.loadDocumentImage(e.imageHref.id, this.currentPart).then((e) => r.setAttribute("href", e)));
2893
+ }
2894
+ return n.appendChild(r), requestAnimationFrame(() => {
2895
+ let e = n.firstElementChild.getBBox();
2896
+ n.setAttribute("width", `${Math.ceil(e.x + e.width)}`), n.setAttribute("height", `${Math.ceil(e.y + e.height)}`);
2897
+ }), n;
2898
+ }
2899
+ renderVmlChildElement(e) {
2900
+ let t = this.createSvgElement(e.tagName);
2901
+ Object.entries(e.attrs).forEach(([e, n]) => t.setAttribute(e, n));
2902
+ for (let n of e.children) n.type == M.VmlElement ? t.appendChild(this.renderVmlChildElement(n)) : t.appendChild(...v(this.renderElement(n)));
2903
+ return t;
2904
+ }
2905
+ renderMmlRadical(e) {
2906
+ var t;
2907
+ let n = e.children.find((e) => e.type == M.MmlBase);
2908
+ if ((t = e.props) != null && t.hideDegree) return this.createElementNS(q.mathML, "msqrt", null, this.renderElements([n]));
2909
+ let r = e.children.find((e) => e.type == M.MmlDegree);
2910
+ return this.createElementNS(q.mathML, "mroot", null, this.renderElements([n, r]));
2911
+ }
2912
+ renderMmlDelimiter(e) {
2913
+ var t, n;
2914
+ let r = [];
2915
+ return r.push(this.createElementNS(q.mathML, "mo", null, [(t = e.props.beginChar) == null ? "(" : t])), r.push(...this.renderElements(e.children)), r.push(this.createElementNS(q.mathML, "mo", null, [(n = e.props.endChar) == null ? ")" : n])), this.createElementNS(q.mathML, "mrow", null, r);
2916
+ }
2917
+ renderMmlNary(e) {
2918
+ var t, n;
2919
+ let r = [], i = p(e.children, (e) => e.type), a = i[M.MmlSuperArgument], o = i[M.MmlSubArgument], s = a ? this.createElementNS(q.mathML, "mo", null, v(this.renderElement(a))) : null, c = o ? this.createElementNS(q.mathML, "mo", null, v(this.renderElement(o))) : null, l = this.createElementNS(q.mathML, "mo", null, [(t = (n = e.props) == null ? void 0 : n.char) == null ? "∫" : t]);
2920
+ return s || c ? r.push(this.createElementNS(q.mathML, "munderover", null, [
2921
+ l,
2922
+ c,
2923
+ s
2924
+ ])) : s ? r.push(this.createElementNS(q.mathML, "mover", null, [l, s])) : c ? r.push(this.createElementNS(q.mathML, "munder", null, [l, c])) : r.push(l), r.push(...this.renderElements(i[M.MmlBase].children)), this.createElementNS(q.mathML, "mrow", null, r);
2925
+ }
2926
+ renderMmlPreSubSuper(e) {
2927
+ let t = [], n = p(e.children, (e) => e.type), r = n[M.MmlSuperArgument], i = n[M.MmlSubArgument], a = r ? this.createElementNS(q.mathML, "mo", null, v(this.renderElement(r))) : null, o = i ? this.createElementNS(q.mathML, "mo", null, v(this.renderElement(i))) : null, s = this.createElementNS(q.mathML, "mo", null);
2928
+ return t.push(this.createElementNS(q.mathML, "msubsup", null, [
2929
+ s,
2930
+ o,
2931
+ a
2932
+ ])), t.push(...this.renderElements(n[M.MmlBase].children)), this.createElementNS(q.mathML, "mrow", null, t);
2933
+ }
2934
+ renderMmlGroupChar(e) {
2935
+ let t = e.props.verticalJustification === "bot" ? "mover" : "munder", n = this.renderContainerNS(e, q.mathML, t);
2936
+ return e.props.char && n.appendChild(this.createElementNS(q.mathML, "mo", null, [e.props.char])), n;
2937
+ }
2938
+ renderMmlBar(e) {
2939
+ let t = this.renderContainerNS(e, q.mathML, "mrow");
2940
+ switch (e.props.position) {
2941
+ case "top":
2942
+ t.style.textDecoration = "overline";
2943
+ break;
2944
+ case "bottom":
2945
+ t.style.textDecoration = "underline";
2946
+ break;
2947
+ }
2948
+ return t;
2949
+ }
2950
+ renderMmlRun(e) {
2951
+ let t = this.createElementNS(q.mathML, "ms", null, this.renderElements(e.children));
2952
+ return this.renderClass(e, t), this.renderStyleValues(e.cssStyle, t), t;
2953
+ }
2954
+ renderMllList(e) {
2955
+ let t = this.createElementNS(q.mathML, "mtable");
2956
+ this.renderClass(e, t), this.renderStyleValues(e.cssStyle, t);
2957
+ for (let n of this.renderElements(e.children)) t.appendChild(this.createElementNS(q.mathML, "mtr", null, [this.createElementNS(q.mathML, "mtd", null, [n])]));
2958
+ return t;
2959
+ }
2960
+ renderStyleValues(e, t) {
2961
+ for (let n in e) n.startsWith("$") ? t.setAttribute(n.slice(1), e[n]) : t.style[n] = e[n];
2962
+ }
2963
+ renderClass(e, t) {
2964
+ e.className && (t.className = e.className), e.styleName && t.classList.add(this.processStyleName(e.styleName));
2965
+ }
2966
+ findStyle(e) {
2967
+ var t;
2968
+ return e && ((t = this.styleMap) == null ? void 0 : t[e]);
2969
+ }
2970
+ numberingClass(e, t) {
2971
+ return `${this.className}-num-${e}-${t}`;
2972
+ }
2973
+ tabStopClass() {
2974
+ return `${this.className}-tab-stop`;
2975
+ }
2976
+ styleToString(e, t, n = null) {
2977
+ let r = `${e} {\r\n`;
2978
+ for (let e in t) e.startsWith("$") || (r += ` ${e}: ${t[e]};\r\n`);
2979
+ return n && (r += n), r + "}\r\n";
2980
+ }
2981
+ numberingCounter(e, t) {
2982
+ return `${this.className}-num-${e}-${t}`;
2983
+ }
2984
+ levelTextToContent(e, t, n, r) {
2985
+ var i;
2986
+ return `"${e.replace(/%\d*/g, (e) => {
2987
+ let t = parseInt(e.substring(1), 10) - 1;
2988
+ return `"counter(${this.numberingCounter(n, t)}, ${r})"`;
2989
+ })}${(i = {
2990
+ tab: "\\9",
2991
+ space: "\\a0"
2992
+ }[t]) == null ? "" : i}"`;
2993
+ }
2994
+ numFormatToCssValue(e) {
2995
+ var t;
2996
+ return (t = {
2997
+ none: "none",
2998
+ bullet: "disc",
2999
+ decimal: "decimal",
3000
+ lowerLetter: "lower-alpha",
3001
+ upperLetter: "upper-alpha",
3002
+ lowerRoman: "lower-roman",
3003
+ upperRoman: "upper-roman",
3004
+ decimalZero: "decimal-leading-zero",
3005
+ aiueo: "katakana",
3006
+ aiueoFullWidth: "katakana",
3007
+ chineseCounting: "simp-chinese-informal",
3008
+ chineseCountingThousand: "simp-chinese-informal",
3009
+ chineseLegalSimplified: "simp-chinese-formal",
3010
+ chosung: "hangul-consonant",
3011
+ ideographDigital: "cjk-ideographic",
3012
+ ideographTraditional: "cjk-heavenly-stem",
3013
+ ideographLegalTraditional: "trad-chinese-formal",
3014
+ ideographZodiac: "cjk-earthly-branch",
3015
+ iroha: "katakana-iroha",
3016
+ irohaFullWidth: "katakana-iroha",
3017
+ japaneseCounting: "japanese-informal",
3018
+ japaneseDigitalTenThousand: "cjk-decimal",
3019
+ japaneseLegal: "japanese-formal",
3020
+ thaiNumbers: "thai",
3021
+ koreanCounting: "korean-hangul-formal",
3022
+ koreanDigital: "korean-hangul-formal",
3023
+ koreanDigital2: "korean-hanja-informal",
3024
+ hebrew1: "hebrew",
3025
+ hebrew2: "hebrew",
3026
+ hindiNumbers: "devanagari",
3027
+ ganada: "hangul",
3028
+ taiwaneseCounting: "cjk-ideographic",
3029
+ taiwaneseCountingThousand: "cjk-ideographic",
3030
+ taiwaneseDigital: "cjk-decimal"
3031
+ }[e]) == null ? e : t;
3032
+ }
3033
+ refreshTabStops() {
3034
+ this.options.experimental && setTimeout(() => {
3035
+ let e = ht();
3036
+ for (let t of this.currentTabs) gt(t.span, t.stops, this.defaultTabSize, e);
3037
+ }, 500);
3038
+ }
3039
+ createElementNS(e, t, n, r) {
3040
+ var i = e ? this.htmlDocument.createElementNS(e, t) : this.htmlDocument.createElement(t);
3041
+ return Object.assign(i, n), r && J(i, r), i;
3042
+ }
3043
+ createElement(e, t, n) {
3044
+ return this.createElementNS(void 0, e, t, n);
3045
+ }
3046
+ createSvgElement(e, t, n) {
3047
+ return this.createElementNS(q.svg, e, t, n);
3048
+ }
3049
+ createStyleElement(e) {
3050
+ return this.createElement("style", { innerHTML: e });
3051
+ }
3052
+ createComment(e) {
3053
+ return this.htmlDocument.createComment(e);
3054
+ }
3055
+ later(e) {
3056
+ this.postRenderTasks.push(e);
3057
+ }
3058
+ };
3059
+ function yt(e) {
3060
+ e.innerHTML = "";
3061
+ }
3062
+ function J(e, t) {
3063
+ t.forEach((t) => e.appendChild(g(t) ? document.createTextNode(t) : t));
3064
+ }
3065
+ function bt(e, t) {
3066
+ for (var n = e.parent; n != null && n.type != t;) n = n.parent;
3067
+ return n;
3068
+ }
3069
+ var Y = {
3070
+ ignoreHeight: !1,
3071
+ ignoreWidth: !1,
3072
+ ignoreFonts: !1,
3073
+ breakPages: !0,
3074
+ debug: !1,
3075
+ experimental: !1,
3076
+ className: "docx",
3077
+ inWrapper: !0,
3078
+ hideWrapperOnPrint: !1,
3079
+ trimXmlDeclaration: !0,
3080
+ ignoreLastRenderedPageBreak: !0,
3081
+ renderHeaders: !0,
3082
+ renderFooters: !0,
3083
+ renderFootnotes: !0,
3084
+ renderEndnotes: !0,
3085
+ useBase64URL: !1,
3086
+ renderChanges: !1,
3087
+ renderComments: !1,
3088
+ renderAltChunks: !0
3089
+ };
3090
+ function X(e, t) {
3091
+ let r = n(n({}, Y), t);
3092
+ return et.load(e, new ft(r), r);
3093
+ }
3094
+ function Z(e, t, n, r) {
3095
+ return Q.apply(this, arguments);
3096
+ }
3097
+ function Q() {
3098
+ return Q = i(function* (e, t, r, i) {
3099
+ let a = n(n({}, Y), i);
3100
+ return yield new vt(window.document).render(e, t, r, a);
3101
+ }), Q.apply(this, arguments);
3102
+ }
3103
+ function xt(e, t, n, r) {
3104
+ return $.apply(this, arguments);
3105
+ }
3106
+ function $() {
3107
+ return $ = i(function* (e, t, n, r) {
3108
+ let i = yield X(e, r);
3109
+ return yield Z(i, t, n, r), i;
3110
+ }), $.apply(this, arguments);
3111
+ }
3112
+ //#endregion
3113
+ export { Y as defaultOptions, X as parseAsync, xt as renderAsync, Z as renderDocument };