file-viewer3 1.0.26 → 2.0.0

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 (359) hide show
  1. package/README.en.md +7 -377
  2. package/README.md +8 -352
  3. package/dist/file-viewer3.css +1 -2
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.js +2 -0
  6. package/package.json +27 -129
  7. package/dist/components/3MFLoader.js +0 -527
  8. package/dist/components/AMFLoader.js +0 -188
  9. package/dist/components/ArchiveViewer.js +0 -526
  10. package/dist/components/AudioViewer.js +0 -66
  11. package/dist/components/CadViewer.js +0 -9040
  12. package/dist/components/CodeViewer.js +0 -151
  13. package/dist/components/ColladaLoader.js +0 -2282
  14. package/dist/components/DrawingViewer.js +0 -295
  15. package/dist/components/EdaViewer.js +0 -630
  16. package/dist/components/EmailViewer.js +0 -276
  17. package/dist/components/EpubViewer.js +0 -172
  18. package/dist/components/FBXLoader.js +0 -1574
  19. package/dist/components/GLTFLoader.js +0 -1383
  20. package/dist/components/ImageViewer.js +0 -1519
  21. package/dist/components/KMZLoader.js +0 -45
  22. package/dist/components/MarkdownViewer.js +0 -1476
  23. package/dist/components/ModelViewer.js +0 -797
  24. package/dist/components/OBJLoader.js +0 -287
  25. package/dist/components/OfdViewer.js +0 -133
  26. package/dist/components/PCDLoader.js +0 -141
  27. package/dist/components/PLYLoader.js +0 -305
  28. package/dist/components/PdfView.js +0 -27667
  29. package/dist/components/PptxRender.js +0 -11217
  30. package/dist/components/STLLoader.js +0 -83
  31. package/dist/components/TDSLoader.js +0 -228
  32. package/dist/components/TypstViewer.js +0 -1697
  33. package/dist/components/USDLoader.js +0 -2526
  34. package/dist/components/UmdViewer.js +0 -1873
  35. package/dist/components/VRMLLoader.js +0 -6422
  36. package/dist/components/VTKLoader.js +0 -337
  37. package/dist/components/XYZLoader.js +0 -30
  38. package/dist/components/XlsxTable.js +0 -7879
  39. package/dist/components/__vite-browser-external.js +0 -7
  40. package/dist/components/_plugin-vue_export-helper.js +0 -8
  41. package/dist/components/ar-SA-G6X2FPQ2.js +0 -523
  42. package/dist/components/arc.js +0 -79
  43. package/dist/components/architecture-7EHR7CIX.js +0 -3
  44. package/dist/components/architectureDiagram-3BPJPVTR.js +0 -4096
  45. package/dist/components/archive.js +0 -24
  46. package/dist/components/asyncToGenerator.js +0 -29
  47. package/dist/components/audio.js +0 -19
  48. package/dist/components/az-AZ-76LH7QW2.js +0 -523
  49. package/dist/components/bash.js +0 -169
  50. package/dist/components/bg-BG-XCXSNQG7.js +0 -523
  51. package/dist/components/blockDiagram-GPEHLZMM.js +0 -3357
  52. package/dist/components/bn-BD-2XOGV67Q.js +0 -523
  53. package/dist/components/c4Diagram-AAUBKEIU.js +0 -2957
  54. package/dist/components/ca-ES-6MX7JW3Y.js +0 -523
  55. package/dist/components/cad.js +0 -23
  56. package/dist/components/cfb.js +0 -1174
  57. package/dist/components/channel.js +0 -5
  58. package/dist/components/chunk-2J33WTMH.js +0 -26
  59. package/dist/components/chunk-3OPIFGDE.js +0 -4167
  60. package/dist/components/chunk-4BX2VUAB.js +0 -19
  61. package/dist/components/chunk-55IACEB6.js +0 -9
  62. package/dist/components/chunk-5ZQYHXKU.js +0 -669
  63. package/dist/components/chunk-6U3AYISY.js +0 -624
  64. package/dist/components/chunk-727SXJPM.js +0 -3356
  65. package/dist/components/chunk-AGHRB4JF.js +0 -324
  66. package/dist/components/chunk-AQP2D5EJ.js +0 -2055
  67. package/dist/components/chunk-BSJP7CBP.js +0 -83
  68. package/dist/components/chunk-CSCIHK7Q.js +0 -3500
  69. package/dist/components/chunk-EIO257PC.js +0 -1836
  70. package/dist/components/chunk-FMBD7UC4.js +0 -5
  71. package/dist/components/chunk-K2UTITRG.js +0 -17627
  72. package/dist/components/chunk-KSCS5N6A.js +0 -572
  73. package/dist/components/chunk-L5ZTLDWV.js +0 -40
  74. package/dist/components/chunk-LZXEDZCA.js +0 -60
  75. package/dist/components/chunk-ND2GUHAM.js +0 -61
  76. package/dist/components/chunk-NNHCCRGN.js +0 -20425
  77. package/dist/components/chunk-NZK2D7GU.js +0 -68
  78. package/dist/components/chunk-O5CBEL6O.js +0 -1894
  79. package/dist/components/chunk-QZHKN3VN.js +0 -12
  80. package/dist/components/chunk-SRAX5OIU.js +0 -22
  81. package/dist/components/chunk-WU5MYG2G.js +0 -14
  82. package/dist/components/chunk-XPW4576I.js +0 -1146
  83. package/dist/components/chunk-Z3N5DIM6.js +0 -59
  84. package/dist/components/chunk-ZUYEQ4TG.js +0 -22
  85. package/dist/components/chunk.js +0 -23
  86. package/dist/components/classDiagram-4FO5ZUOK.js +0 -29
  87. package/dist/components/classDiagram-v2-Q7XG4LA2.js +0 -29
  88. package/dist/components/compiler.js +0 -2
  89. package/dist/components/core.js +0 -845
  90. package/dist/components/cose-bilkent-S5V4N54A.js +0 -2268
  91. package/dist/components/cpp.js +0 -225
  92. package/dist/components/cs-CZ-2BRQDIVT.js +0 -523
  93. package/dist/components/csharp.js +0 -260
  94. package/dist/components/css.js +0 -140
  95. package/dist/components/cytoscape.esm.js +0 -18114
  96. package/dist/components/da-DK-5WZEPLOC.js +0 -523
  97. package/dist/components/dagre-BM42HDAG.js +0 -325
  98. package/dist/components/dagre.js +0 -1936
  99. package/dist/components/de-DE-XR44H4JA.js +0 -523
  100. package/dist/components/defaultLocale.js +0 -201
  101. package/dist/components/defineProperty.js +0 -50
  102. package/dist/components/diagram-2AECGRRQ.js +0 -229
  103. package/dist/components/diagram-5GNKFQAL.js +0 -108
  104. package/dist/components/diagram-KO2AKTUF.js +0 -443
  105. package/dist/components/diagram-LMA3HP47.js +0 -139
  106. package/dist/components/diagram-OG6HWLK6.js +0 -541
  107. package/dist/components/diff.js +0 -39
  108. package/dist/components/directory-open-01563666.js +0 -26
  109. package/dist/components/directory-open-4ed118d0.js +0 -83
  110. package/dist/components/dist.js +0 -50
  111. package/dist/components/dist2.js +0 -3291
  112. package/dist/components/dist3.js +0 -1593
  113. package/dist/components/documentSearch.js +0 -378
  114. package/dist/components/docx-preview.js +0 -3113
  115. package/dist/components/drawing.js +0 -19
  116. package/dist/components/ebook.js +0 -16
  117. package/dist/components/eda.js +0 -20
  118. package/dist/components/el-GR-BZB4AONW.js +0 -523
  119. package/dist/components/email.js +0 -21
  120. package/dist/components/en-B4ZKOASM.js +0 -3
  121. package/dist/components/erDiagram-TEJ5UH35.js +0 -1719
  122. package/dist/components/es-ES-U4NZUMDT.js +0 -523
  123. package/dist/components/eu-ES-A7QVB2H4.js +0 -523
  124. package/dist/components/eventmodeling-FCH6USID.js +0 -3
  125. package/dist/components/fa-IR-HGAKTJCU.js +0 -523
  126. package/dist/components/fflate.module.js +0 -323
  127. package/dist/components/fi-FI-Z5N7JZ37.js +0 -523
  128. package/dist/components/file-open-002ab408.js +0 -38
  129. package/dist/components/file-open-7c801643.js +0 -24
  130. package/dist/components/file-save-3189631c.js +0 -40
  131. package/dist/components/file-save-745eba88.js +0 -36
  132. package/dist/components/flowDiagram-I6XJVG4X.js +0 -4181
  133. package/dist/components/fr-FR-RHASNOE6.js +0 -523
  134. package/dist/components/ganttDiagram-6RSMTGT7.js +0 -2182
  135. package/dist/components/gitGraph-WXDBUCRP.js +0 -3
  136. package/dist/components/gitGraphDiagram-PVQCEYII.js +0 -788
  137. package/dist/components/gl-ES-HMX3MZ6V.js +0 -523
  138. package/dist/components/global-compiler.js +0 -23
  139. package/dist/components/global-renderer.js +0 -23
  140. package/dist/components/go.js +0 -140
  141. package/dist/components/graphlib.js +0 -1267
  142. package/dist/components/he-IL-6SHJWFNN.js +0 -523
  143. package/dist/components/hi-IN-IWLTKZ5I.js +0 -523
  144. package/dist/components/hu-HU-A5ZG7DT2.js +0 -523
  145. package/dist/components/id-ID-SAP4L64H.js +0 -523
  146. package/dist/components/image-GAAHSSAO.js +0 -3
  147. package/dist/components/image-blob-reduce.esm.js +0 -1429
  148. package/dist/components/image.js +0 -17
  149. package/dist/components/info-J43DQDTF.js +0 -3
  150. package/dist/components/infoDiagram-5YYISTIA.js +0 -26
  151. package/dist/components/ini.js +0 -88
  152. package/dist/components/init.js +0 -15
  153. package/dist/components/ishikawaDiagram-YF4QCWOH.js +0 -718
  154. package/dist/components/it-IT-JPQ66NNP.js +0 -523
  155. package/dist/components/ja-JP-DBVTYXUO.js +0 -523
  156. package/dist/components/java.js +0 -169
  157. package/dist/components/javascript.js +0 -436
  158. package/dist/components/journeyDiagram-JHISSGLW.js +0 -885
  159. package/dist/components/json.js +0 -36
  160. package/dist/components/jszip.min.js +0 -3033
  161. package/dist/components/kaa-6HZHGXH3.js +0 -523
  162. package/dist/components/kab-KAB-ZGHBKWFO.js +0 -523
  163. package/dist/components/kanban-definition-UN3LZRKU.js +0 -986
  164. package/dist/components/katex.js +0 -21979
  165. package/dist/components/kk-KZ-P5N5QNE5.js +0 -523
  166. package/dist/components/km-KH-HSX4SM5Z.js +0 -523
  167. package/dist/components/ko-KR-MTYHY66A.js +0 -523
  168. package/dist/components/ku-TR-6OUDTVRD.js +0 -523
  169. package/dist/components/lib.js +0 -4877
  170. package/dist/components/libarchive.js +0 -360
  171. package/dist/components/linear.js +0 -289
  172. package/dist/components/lt-LT-XHIRWOB4.js +0 -523
  173. package/dist/components/lv-LV-5QDEKY6T.js +0 -523
  174. package/dist/components/markdown.js +0 -181
  175. package/dist/components/md.js +0 -17
  176. package/dist/components/mermaid-parser.core.js +0 -328
  177. package/dist/components/mindmap-definition-RKZ34NQL.js +0 -1016
  178. package/dist/components/model.js +0 -21
  179. package/dist/components/mp4.js +0 -12
  180. package/dist/components/mr-IN-CRQNXWMA.js +0 -523
  181. package/dist/components/my-MM-5M5IBNSE.js +0 -523
  182. package/dist/components/nb-NO-T6EIAALU.js +0 -523
  183. package/dist/components/nestedRender.js +0 -158
  184. package/dist/components/nl-NL-IS3SIHDZ.js +0 -523
  185. package/dist/components/nn-NO-6E72VCQL.js +0 -523
  186. package/dist/components/objectSpread2.js +0 -29
  187. package/dist/components/objectWithoutProperties.js +0 -28
  188. package/dist/components/oc-FR-POXYY2M6.js +0 -523
  189. package/dist/components/ofd.js +0 -5261
  190. package/dist/components/ofd2.js +0 -16
  191. package/dist/components/ordinal.js +0 -65
  192. package/dist/components/pa-IN-N4M65BXN.js +0 -523
  193. package/dist/components/packet-YPE3B663.js +0 -3
  194. package/dist/components/pdf.js +0 -24
  195. package/dist/components/percentages-BXMCSKIN.js +0 -3
  196. package/dist/components/php.js +0 -294
  197. package/dist/components/pica.js +0 -1009
  198. package/dist/components/pie-LRSECV5Y.js +0 -3
  199. package/dist/components/pie.js +0 -47
  200. package/dist/components/pieDiagram-4H26LBE5.js +0 -130
  201. package/dist/components/pl-PL-T2D74RX3.js +0 -523
  202. package/dist/components/postal-mime.js +0 -3146
  203. package/dist/components/pptx.js +0 -15
  204. package/dist/components/printLayout.js +0 -42
  205. package/dist/components/prod.js +0 -21770
  206. package/dist/components/pt-BR-5N22H2LF.js +0 -523
  207. package/dist/components/pt-PT-UZXXM6DQ.js +0 -523
  208. package/dist/components/python.js +0 -238
  209. package/dist/components/quadrantDiagram-W4KKPZXB.js +0 -1988
  210. package/dist/components/radar-GUYGQ44K.js +0 -3
  211. package/dist/components/renderer.js +0 -2
  212. package/dist/components/requirementDiagram-4Y6WPE33.js +0 -2230
  213. package/dist/components/ro-RO-JPDTUUEW.js +0 -523
  214. package/dist/components/rough.esm.js +0 -1355
  215. package/dist/components/roundRect.js +0 -90
  216. package/dist/components/ru-RU-B4JR7IUQ.js +0 -523
  217. package/dist/components/rust.js +0 -169
  218. package/dist/components/sankeyDiagram-5OEKKPKP.js +0 -972
  219. package/dist/components/sequenceDiagram-3UESZ5HK.js +0 -4255
  220. package/dist/components/shared.js +0 -175
  221. package/dist/components/shared2.js +0 -4
  222. package/dist/components/si-LK-N5RQ5JYF.js +0 -523
  223. package/dist/components/sk-SK-C5VTKIMK.js +0 -523
  224. package/dist/components/sl-SI-NN7IZMDC.js +0 -523
  225. package/dist/components/sourceLoading.js +0 -134
  226. package/dist/components/sql.js +0 -118
  227. package/dist/components/src.js +0 -2664
  228. package/dist/components/src2.js +0 -10722
  229. package/dist/components/stateDiagram-AJRCARHV.js +0 -217
  230. package/dist/components/stateDiagram-v2-BHNVJYJU.js +0 -27
  231. package/dist/components/subset-shared.chunk.js +0 -3
  232. package/dist/components/subset-worker.chunk.js +0 -21
  233. package/dist/components/sv-SE-XGPEYMSR.js +0 -523
  234. package/dist/components/ta-IN-2NMHFXQM.js +0 -523
  235. package/dist/components/text.js +0 -20
  236. package/dist/components/th-TH-HPSO5L25.js +0 -523
  237. package/dist/components/three.module.js +0 -13134
  238. package/dist/components/time.js +0 -910
  239. package/dist/components/timeline-definition-PNZ67QCA.js +0 -1084
  240. package/dist/components/tr-TR-DEFEU3FU.js +0 -523
  241. package/dist/components/treeView-BLDUP644.js +0 -3
  242. package/dist/components/treemap-LRROVOQU.js +0 -3
  243. package/dist/components/typescript.js +0 -521
  244. package/dist/components/typst.js +0 -25
  245. package/dist/components/uk-UA-QMV73CPH.js +0 -523
  246. package/dist/components/umd.js +0 -16
  247. package/dist/components/use.js +0 -422
  248. package/dist/components/util.js +0 -49
  249. package/dist/components/vennDiagram-CIIHVFJN.js +0 -1880
  250. package/dist/components/vi-VN-M7AON7JQ.js +0 -523
  251. package/dist/components/viewerZoom.js +0 -92
  252. package/dist/components/wardley-L42UT6IY.js +0 -3
  253. package/dist/components/wardleyDiagram-YWT4CUSO.js +0 -656
  254. package/dist/components/wasm-pack-shim.js +0 -1711
  255. package/dist/components/wasm-pack-shim2.js +0 -934
  256. package/dist/components/wasm.js +0 -97
  257. package/dist/components/word.js +0 -3055
  258. package/dist/components/worker-ref.js +0 -16
  259. package/dist/components/xlsx.js +0 -21
  260. package/dist/components/xml.js +0 -166
  261. package/dist/components/xychartDiagram-2RQKCTM6.js +0 -2015
  262. package/dist/components/yaml.js +0 -144
  263. package/dist/components/zh-CN-LNUGB5OW.js +0 -523
  264. package/dist/components/zh-HK-E62DVLB3.js +0 -523
  265. package/dist/components/zh-TW-RAJ6MFWO.js +0 -523
  266. package/dist/index.mjs +0 -3293
  267. package/dist/src/App.vue.d.ts +0 -3
  268. package/dist/src/compare/CompareApp.vue.d.ts +0 -3
  269. package/dist/src/compare/main.d.ts +0 -0
  270. package/dist/src/compare/useSynchronizedScroll.d.ts +0 -7
  271. package/dist/src/components/HelloWorld.vue.d.ts +0 -3
  272. package/dist/src/components/utils.d.ts +0 -4
  273. package/dist/src/main.d.ts +0 -0
  274. package/dist/src/package/common/printCapability.d.ts +0 -27
  275. package/dist/src/package/common/printLayout.d.ts +0 -16
  276. package/dist/src/package/common/sourceLoading.d.ts +0 -10
  277. package/dist/src/package/common/type.d.ts +0 -544
  278. package/dist/src/package/common/util.d.ts +0 -5
  279. package/dist/src/package/common/worker-ref.d.ts +0 -12
  280. package/dist/src/package/components/FileViewer/FileViewer.vue.d.ts +0 -75
  281. package/dist/src/package/components/FileViewer/exportDocumentTemplate.d.ts +0 -9
  282. package/dist/src/package/components/FileViewer/hooks/useViewerDocumentFeatures.d.ts +0 -29
  283. package/dist/src/package/components/FileViewer/hooks/useViewerExport.d.ts +0 -21
  284. package/dist/src/package/components/FileViewer/hooks/useViewerWatermark.d.ts +0 -8
  285. package/dist/src/package/components/FileViewer/hooks/useViewerZoom.d.ts +0 -34
  286. package/dist/src/package/components/FileViewer/index.d.ts +0 -2
  287. package/dist/src/package/components/FileViewer/util.d.ts +0 -3
  288. package/dist/src/package/index.d.ts +0 -22
  289. package/dist/src/package/use/documentLocation.d.ts +0 -15
  290. package/dist/src/package/use/documentSearch.d.ts +0 -234
  291. package/dist/src/package/use/index.d.ts +0 -5
  292. package/dist/src/package/use/loading.d.ts +0 -33
  293. package/dist/src/package/use/viewerZoom.d.ts +0 -42
  294. package/dist/src/package/use/worker.d.ts +0 -24
  295. package/dist/src/package/vendors/archive/ArchiveViewer.vue.d.ts +0 -9
  296. package/dist/src/package/vendors/archive/cache.d.ts +0 -10
  297. package/dist/src/package/vendors/archive/fallback.d.ts +0 -9
  298. package/dist/src/package/vendors/archive/index.d.ts +0 -3
  299. package/dist/src/package/vendors/archive/shared.d.ts +0 -24
  300. package/dist/src/package/vendors/audio/AudioViewer.vue.d.ts +0 -7
  301. package/dist/src/package/vendors/audio/index.d.ts +0 -7
  302. package/dist/src/package/vendors/cad/CadViewer.vue.d.ts +0 -9
  303. package/dist/src/package/vendors/cad/index.d.ts +0 -8
  304. package/dist/src/package/vendors/drawing/DrawingViewer.vue.d.ts +0 -15
  305. package/dist/src/package/vendors/drawing/index.d.ts +0 -7
  306. package/dist/src/package/vendors/ebook/EpubViewer.vue.d.ts +0 -6
  307. package/dist/src/package/vendors/ebook/index.d.ts +0 -7
  308. package/dist/src/package/vendors/eda/EdaViewer.vue.d.ts +0 -8
  309. package/dist/src/package/vendors/eda/index.d.ts +0 -2
  310. package/dist/src/package/vendors/eda/parser.d.ts +0 -77
  311. package/dist/src/package/vendors/email/EmailViewer.vue.d.ts +0 -10
  312. package/dist/src/package/vendors/email/index.d.ts +0 -2
  313. package/dist/src/package/vendors/image/ImageViewer.vue.d.ts +0 -6
  314. package/dist/src/package/vendors/image/index.d.ts +0 -4
  315. package/dist/src/package/vendors/md/MarkdownViewer.vue.d.ts +0 -6
  316. package/dist/src/package/vendors/md/index.d.ts +0 -4
  317. package/dist/src/package/vendors/model/ModelViewer.vue.d.ts +0 -8
  318. package/dist/src/package/vendors/model/index.d.ts +0 -3
  319. package/dist/src/package/vendors/model/shared.d.ts +0 -1
  320. package/dist/src/package/vendors/mp4/index.d.ts +0 -4
  321. package/dist/src/package/vendors/nestedRender.d.ts +0 -10
  322. package/dist/src/package/vendors/ofd/OfdViewer.vue.d.ts +0 -6
  323. package/dist/src/package/vendors/ofd/index.d.ts +0 -7
  324. package/dist/src/package/vendors/pdf/PdfView.vue.d.ts +0 -10
  325. package/dist/src/package/vendors/pdf/index.d.ts +0 -2
  326. package/dist/src/package/vendors/pdf/worker/index.d.ts +0 -4
  327. package/dist/src/package/vendors/pdf/worker/pdf.worker.d.ts +0 -0
  328. package/dist/src/package/vendors/pptx/PptxRender.vue.d.ts +0 -9
  329. package/dist/src/package/vendors/pptx/index.d.ts +0 -6
  330. package/dist/src/package/vendors/pptx/options.d.ts +0 -39
  331. package/dist/src/package/vendors/pptx/support/chart.d.ts +0 -4
  332. package/dist/src/package/vendors/pptx/worker/index.d.ts +0 -4
  333. package/dist/src/package/vendors/renders.d.ts +0 -3
  334. package/dist/src/package/vendors/text/CodeViewer.vue.d.ts +0 -7
  335. package/dist/src/package/vendors/text/index.d.ts +0 -10
  336. package/dist/src/package/vendors/typst/TypstViewer.vue.d.ts +0 -15
  337. package/dist/src/package/vendors/typst/index.d.ts +0 -8
  338. package/dist/src/package/vendors/umd/UmdViewer.vue.d.ts +0 -6
  339. package/dist/src/package/vendors/umd/index.d.ts +0 -7
  340. package/dist/src/package/vendors/umd/parser.d.ts +0 -30
  341. package/dist/src/package/vendors/word/doc.d.ts +0 -5
  342. package/dist/src/package/vendors/word/docx.d.ts +0 -5
  343. package/dist/src/package/vendors/word/docx.worker.d.ts +0 -1
  344. package/dist/src/package/vendors/word/index.d.ts +0 -3
  345. package/dist/src/package/vendors/xlsx/XlsxTable.state.d.ts +0 -80
  346. package/dist/src/package/vendors/xlsx/XlsxTable.view.d.ts +0 -25
  347. package/dist/src/package/vendors/xlsx/XlsxTable.vue.d.ts +0 -6
  348. package/dist/src/package/vendors/xlsx/index.d.ts +0 -6
  349. package/dist/src/package/vendors/xlsx/util.d.ts +0 -3
  350. package/dist/src/package/vendors/xlsx/worker/index.d.ts +0 -4
  351. package/dist/src/package/vendors/xlsx/worker/sheetjs/SheetJsModel.d.ts +0 -73
  352. package/dist/src/package/vendors/xlsx/worker/sheetjs/color.d.ts +0 -2
  353. package/dist/src/package/vendors/xlsx/worker/sheetjs/index.d.ts +0 -4
  354. package/dist/src/package/vendors/xlsx/worker/sheetjs/sheet.worker.d.ts +0 -1
  355. package/dist/style.css +0 -1
  356. package/dist/wasm/cad/dwfv-render.wasm +0 -0
  357. package/dist/wasm/cad/dwg-worker.js +0 -24
  358. package/dist/wasm/cad/libredwg-web.js +0 -15
  359. package/dist/wasm/cad/libredwg-web.wasm +0 -0
@@ -1,3113 +0,0 @@
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 };