office-viewer 0.1.0 → 0.1.4

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 (446) hide show
  1. package/README.md +6 -1
  2. package/esm/OpenXML.d.ts +19 -0
  3. package/esm/OpenXML.js +43 -2
  4. package/esm/Word.d.ts +132 -15
  5. package/esm/Word.js +239 -54
  6. package/esm/openxml/ContentType.js +20 -6
  7. package/esm/openxml/Settings.d.ts +10 -0
  8. package/esm/openxml/Settings.js +93 -0
  9. package/esm/openxml/Style.d.ts +1 -1
  10. package/esm/openxml/Style.js +12 -12
  11. package/esm/openxml/Theme.js +30 -6
  12. package/esm/openxml/Types.d.ts +179 -2472
  13. package/esm/openxml/drawing/Blip.d.ts +7 -0
  14. package/esm/openxml/{word/drawing → drawing}/Blip.js +2 -1
  15. package/{lib/openxml/word → esm/openxml}/drawing/BlipFill.d.ts +1 -1
  16. package/esm/openxml/{word/drawing → drawing}/BlipFill.js +1 -1
  17. package/esm/openxml/drawing/CustomGeom.d.ts +9 -0
  18. package/esm/openxml/drawing/CustomGeom.js +17 -0
  19. package/esm/openxml/drawing/Drawing.d.ts +37 -0
  20. package/esm/openxml/drawing/Drawing.js +173 -0
  21. package/esm/openxml/drawing/Geom.d.ts +11 -0
  22. package/esm/openxml/drawing/Geom.js +34 -0
  23. package/esm/openxml/drawing/Path.d.ts +37 -0
  24. package/esm/openxml/drawing/Pic.d.ts +16 -0
  25. package/esm/openxml/drawing/Pic.js +26 -0
  26. package/esm/openxml/drawing/Shape.d.ts +20 -0
  27. package/esm/openxml/drawing/ShapeProperties.d.ts +22 -0
  28. package/esm/openxml/drawing/ShapeProperties.js +119 -0
  29. package/{lib/openxml/word → esm/openxml}/drawing/Transform.d.ts +4 -1
  30. package/esm/openxml/drawing/Transform.js +63 -0
  31. package/esm/openxml/drawing/diagram/Diagram.d.ts +7 -0
  32. package/esm/openxml/drawing/diagram/Diagram.js +24 -0
  33. package/esm/openxml/drawing/diagram/Sp.d.ts +2 -0
  34. package/esm/openxml/drawing/diagram/SpTree.d.ts +5 -0
  35. package/esm/openxml/drawing/presetShape.d.ts +3 -0
  36. package/esm/openxml/drawing/presetShape.js +38785 -0
  37. package/esm/openxml/drawing/svg/arcToA.d.ts +13 -0
  38. package/esm/openxml/drawing/svg/arcToA.js +88 -0
  39. package/esm/openxml/drawing/svg/formulas.d.ts +29 -0
  40. package/esm/openxml/drawing/svg/formulas.js +103 -0
  41. package/esm/openxml/drawing/svg/generateDefines.d.ts +12 -0
  42. package/esm/openxml/drawing/svg/generateDefines.js +144 -0
  43. package/esm/openxml/drawing/svg/presetVal.d.ts +43 -0
  44. package/esm/openxml/drawing/svg/presetVal.js +53 -0
  45. package/esm/openxml/drawing/svg/shapeToSVG.d.ts +9 -0
  46. package/esm/openxml/drawing/svg/shapeToSVG.js +151 -0
  47. package/esm/openxml/math/OMath.d.ts +5 -0
  48. package/esm/openxml/math/OMath.js +12 -0
  49. package/esm/openxml/math/convertOOML.d.ts +4 -0
  50. package/esm/openxml/math/convertOOML.js +13 -0
  51. package/esm/openxml/math/xsl.d.ts +4 -0
  52. package/esm/openxml/math/xsl.js +8 -0
  53. package/esm/openxml/word/Body.js +11 -7
  54. package/esm/openxml/word/Break.js +1 -3
  55. package/esm/openxml/word/Font.d.ts +16 -0
  56. package/esm/openxml/word/Font.js +78 -0
  57. package/esm/openxml/word/FontTable.d.ts +9 -0
  58. package/esm/openxml/word/FontTable.js +34 -0
  59. package/esm/openxml/word/Header.d.ts +11 -0
  60. package/esm/openxml/word/Header.js +54 -0
  61. package/esm/openxml/word/Hyperlink.d.ts +1 -0
  62. package/esm/openxml/word/Hyperlink.js +7 -3
  63. package/esm/openxml/word/InlineText.js +1 -1
  64. package/esm/openxml/word/NoBreakHyphen.d.ts +2 -0
  65. package/esm/openxml/word/NoBreakHyphen.js +7 -0
  66. package/esm/openxml/word/Note.d.ts +12 -0
  67. package/esm/openxml/word/Note.js +48 -0
  68. package/esm/openxml/word/Paragraph.d.ts +2 -2
  69. package/esm/openxml/word/Paragraph.js +10 -9
  70. package/esm/openxml/word/Pict.d.ts +1 -2
  71. package/esm/openxml/word/Pict.js +5 -3
  72. package/esm/openxml/word/Ruby.js +1 -1
  73. package/esm/openxml/word/Run.d.ts +7 -3
  74. package/esm/openxml/word/Run.js +28 -4
  75. package/esm/openxml/word/Section.d.ts +18 -5
  76. package/esm/openxml/word/Section.js +46 -2
  77. package/esm/openxml/word/Separator.d.ts +5 -0
  78. package/esm/openxml/word/Separator.js +10 -0
  79. package/esm/openxml/word/SoftHyphen.d.ts +5 -0
  80. package/esm/openxml/word/SoftHyphen.js +10 -0
  81. package/esm/openxml/word/Tab.d.ts +1 -1
  82. package/esm/openxml/word/Table.d.ts +4 -9
  83. package/esm/openxml/word/Table.js +0 -235
  84. package/esm/openxml/word/WDocument.d.ts +1 -2
  85. package/esm/openxml/word/WDocument.js +53 -7
  86. package/esm/openxml/word/numbering/AbstractNum.js +4 -2
  87. package/esm/openxml/word/numbering/Lvl.js +10 -4
  88. package/esm/openxml/word/numbering/Num.js +12 -4
  89. package/esm/openxml/word/numbering/NumberProperties.js +2 -2
  90. package/esm/openxml/word/numbering/Numbering.js +1 -1
  91. package/esm/openxml/word/table/Tc.d.ts +1 -22
  92. package/esm/openxml/word/table/Tc.js +1 -221
  93. package/esm/openxml/word/table/Tr.d.ts +0 -5
  94. package/esm/openxml/word/table/Tr.js +0 -97
  95. package/esm/openxml/word/wps/WPG.d.ts +14 -0
  96. package/esm/openxml/word/wps/WPG.js +56 -0
  97. package/esm/openxml/word/wps/WPS.d.ts +18 -0
  98. package/esm/openxml/word/wps/WPS.js +148 -0
  99. package/esm/openxml/word/wps/WPSStyle.d.ts +10 -0
  100. package/esm/openxml/word/wps/WPSStyle.js +42 -0
  101. package/esm/package/PackageParser.d.ts +1 -1
  102. package/esm/package/XMLPackageParser.d.ts +3 -3
  103. package/esm/package/ZipPackageParser.d.ts +1 -1
  104. package/esm/package/ZipPackageParser.js +7 -8
  105. package/esm/parse/Footnotes.d.ts +3 -0
  106. package/esm/parse/Footnotes.js +25 -0
  107. package/esm/parse/colorNameMap.d.ts +6 -0
  108. package/esm/parse/colorNameMap.js +201 -0
  109. package/esm/parse/jcToTextAlign.js +1 -0
  110. package/esm/parse/mergeSdt.d.ts +4 -0
  111. package/esm/parse/mergeSdt.js +57 -0
  112. package/esm/parse/modifyColor.d.ts +1 -0
  113. package/esm/parse/modifyColor.js +106 -0
  114. package/esm/parse/parseBorder.js +2 -21
  115. package/esm/parse/parseCellMargin.d.ts +2 -0
  116. package/esm/parse/parseCellMargin.js +38 -0
  117. package/esm/parse/parseChildColor.d.ts +5 -0
  118. package/esm/parse/parseChildColor.js +66 -0
  119. package/esm/parse/parseColor.d.ts +4 -0
  120. package/esm/parse/parseColor.js +41 -46
  121. package/esm/parse/parseEndnotes.d.ts +3 -0
  122. package/esm/parse/parseEndnotes.js +25 -0
  123. package/esm/parse/parseFont.js +1 -1
  124. package/esm/parse/parseInsideBorders.d.ts +9 -0
  125. package/esm/parse/parseInsideBorders.js +24 -0
  126. package/esm/parse/parsePr.d.ts +3 -0
  127. package/esm/parse/parsePr.js +108 -11
  128. package/esm/parse/parseRelationship.js +1 -1
  129. package/esm/parse/parseSdt.d.ts +5 -0
  130. package/esm/parse/parseShape.d.ts +10 -0
  131. package/esm/parse/parseShape.js +239 -0
  132. package/esm/parse/parseSize.d.ts +2 -1
  133. package/esm/parse/parseSize.js +7 -1
  134. package/esm/parse/parseSpacing.js +1 -1
  135. package/esm/parse/parseTable.d.ts +3 -0
  136. package/esm/parse/parseTable.js +62 -0
  137. package/esm/parse/parseTablePr.d.ts +3 -0
  138. package/esm/parse/parseTablePr.js +185 -0
  139. package/esm/parse/parseTblWidth.d.ts +4 -0
  140. package/esm/parse/parseTblWidth.js +23 -0
  141. package/esm/parse/parseTc.d.ts +10 -0
  142. package/esm/parse/parseTc.js +64 -0
  143. package/esm/parse/parseTcPr.d.ts +5 -0
  144. package/esm/parse/parseTcPr.js +99 -0
  145. package/esm/parse/parseTextDirection.js +4 -6
  146. package/esm/parse/parseTr.d.ts +6 -0
  147. package/esm/parse/parseTr.js +49 -0
  148. package/esm/parse/parseTrPr.d.ts +3 -0
  149. package/esm/parse/parseTrPr.js +59 -0
  150. package/esm/render/fixAbsolutePosition.d.ts +8 -0
  151. package/esm/render/renderBody.d.ts +6 -2
  152. package/esm/render/renderBody.js +184 -30
  153. package/esm/render/renderBr.d.ts +2 -1
  154. package/esm/render/renderBr.js +4 -1
  155. package/esm/render/renderCustGeom.d.ts +4 -0
  156. package/esm/render/renderCustGeom.js +10 -0
  157. package/esm/render/renderDocument.d.ts +2 -2
  158. package/esm/render/renderDocument.js +2 -2
  159. package/esm/render/renderDrawing.d.ts +3 -2
  160. package/esm/render/renderDrawing.js +238 -21
  161. package/esm/render/renderFont.d.ts +5 -0
  162. package/esm/render/renderFont.js +39 -0
  163. package/esm/render/renderGeom.d.ts +4 -0
  164. package/esm/render/renderGeom.js +14 -0
  165. package/esm/render/renderHeader.d.ts +6 -0
  166. package/esm/render/renderHeader.js +40 -0
  167. package/esm/render/renderHyperLink.js +4 -1
  168. package/esm/render/renderInlineText.js +1 -1
  169. package/esm/render/renderInstrText.js +1 -1
  170. package/esm/render/renderMath.d.ts +3 -0
  171. package/esm/render/renderMath.js +7 -0
  172. package/esm/render/renderNoBreakHyphen.d.ts +1 -0
  173. package/esm/render/renderNoBreakHyphen.js +9 -0
  174. package/esm/render/renderNotes.d.ts +5 -0
  175. package/esm/render/renderNotes.js +77 -0
  176. package/esm/render/renderNumbering.js +8 -10
  177. package/esm/render/renderParagraph.d.ts +1 -1
  178. package/esm/render/renderParagraph.js +58 -18
  179. package/esm/render/renderPict.js +5 -10
  180. package/esm/render/renderRuby.js +1 -1
  181. package/esm/render/renderRun.d.ts +4 -2
  182. package/esm/render/renderRun.js +42 -12
  183. package/esm/render/renderSection.d.ts +3 -2
  184. package/esm/render/renderSection.js +79 -5
  185. package/esm/render/renderSeparator.d.ts +1 -0
  186. package/esm/render/renderSeparator.js +9 -0
  187. package/esm/render/renderSoftHyphen.d.ts +1 -0
  188. package/esm/render/renderSoftHyphen.js +9 -0
  189. package/esm/render/renderStyle.js +36 -35
  190. package/esm/render/renderTab.d.ts +2 -1
  191. package/esm/render/renderTab.js +10 -6
  192. package/esm/render/renderTable.js +23 -20
  193. package/esm/render/setElementStyle.js +7 -2
  194. package/esm/render/zindex.d.ts +1 -0
  195. package/esm/util/blob.js +1 -10
  196. package/esm/util/color.d.ts +48 -0
  197. package/esm/util/color.js +211 -0
  198. package/esm/util/createObject.d.ts +10 -0
  199. package/esm/util/createObject.js +48 -0
  200. package/esm/util/dom.d.ts +8 -4
  201. package/esm/util/dom.js +21 -4
  202. package/esm/util/get.d.ts +4 -0
  203. package/esm/util/get.js +18 -0
  204. package/esm/util/mergeRun.js +1 -1
  205. package/esm/util/parseSides.d.ts +11 -0
  206. package/esm/util/print.d.ts +5 -0
  207. package/esm/util/print.js +54 -0
  208. package/esm/util/replaceVar.d.ts +10 -0
  209. package/esm/util/replaceVar.js +215 -0
  210. package/esm/util/xml.js +4 -1
  211. package/lib/OpenXML.d.ts +19 -0
  212. package/lib/OpenXML.js +44 -1
  213. package/lib/Word.d.ts +132 -15
  214. package/lib/Word.js +244 -59
  215. package/lib/openxml/ContentType.js +20 -6
  216. package/lib/openxml/Settings.d.ts +10 -0
  217. package/lib/openxml/Settings.js +97 -0
  218. package/lib/openxml/Style.d.ts +1 -1
  219. package/lib/openxml/Style.js +15 -15
  220. package/lib/openxml/Theme.js +31 -7
  221. package/lib/openxml/Types.d.ts +179 -2472
  222. package/lib/openxml/drawing/Blip.d.ts +7 -0
  223. package/lib/openxml/{word/drawing → drawing}/Blip.js +2 -1
  224. package/{esm/openxml/word → lib/openxml}/drawing/BlipFill.d.ts +1 -1
  225. package/lib/openxml/{word/drawing → drawing}/BlipFill.js +1 -1
  226. package/lib/openxml/drawing/CustomGeom.d.ts +9 -0
  227. package/lib/openxml/drawing/CustomGeom.js +21 -0
  228. package/lib/openxml/drawing/Drawing.d.ts +37 -0
  229. package/lib/openxml/drawing/Drawing.js +177 -0
  230. package/lib/openxml/drawing/Geom.d.ts +11 -0
  231. package/lib/openxml/drawing/Geom.js +38 -0
  232. package/lib/openxml/drawing/Path.d.ts +37 -0
  233. package/lib/openxml/drawing/Pic.d.ts +16 -0
  234. package/lib/openxml/drawing/Pic.js +30 -0
  235. package/lib/openxml/drawing/Shape.d.ts +20 -0
  236. package/lib/openxml/drawing/ShapeProperties.d.ts +22 -0
  237. package/lib/openxml/drawing/ShapeProperties.js +123 -0
  238. package/{esm/openxml/word → lib/openxml}/drawing/Transform.d.ts +4 -1
  239. package/lib/openxml/drawing/Transform.js +67 -0
  240. package/lib/openxml/drawing/diagram/Diagram.d.ts +7 -0
  241. package/lib/openxml/drawing/diagram/Diagram.js +28 -0
  242. package/lib/openxml/drawing/diagram/Sp.d.ts +2 -0
  243. package/lib/openxml/drawing/diagram/SpTree.d.ts +5 -0
  244. package/lib/openxml/drawing/presetShape.d.ts +3 -0
  245. package/lib/openxml/drawing/presetShape.js +38789 -0
  246. package/lib/openxml/drawing/svg/arcToA.d.ts +13 -0
  247. package/lib/openxml/drawing/svg/arcToA.js +92 -0
  248. package/lib/openxml/drawing/svg/formulas.d.ts +29 -0
  249. package/lib/openxml/drawing/svg/formulas.js +108 -0
  250. package/lib/openxml/drawing/svg/generateDefines.d.ts +12 -0
  251. package/lib/openxml/drawing/svg/generateDefines.js +148 -0
  252. package/lib/openxml/drawing/svg/presetVal.d.ts +43 -0
  253. package/lib/openxml/drawing/svg/presetVal.js +57 -0
  254. package/lib/openxml/drawing/svg/shapeToSVG.d.ts +9 -0
  255. package/lib/openxml/drawing/svg/shapeToSVG.js +155 -0
  256. package/lib/openxml/math/OMath.d.ts +5 -0
  257. package/lib/openxml/math/OMath.js +16 -0
  258. package/lib/openxml/math/convertOOML.d.ts +4 -0
  259. package/lib/openxml/math/convertOOML.js +17 -0
  260. package/lib/openxml/math/xsl.d.ts +4 -0
  261. package/lib/openxml/math/xsl.js +12 -0
  262. package/lib/openxml/word/Body.js +11 -7
  263. package/lib/openxml/word/Break.js +1 -3
  264. package/lib/openxml/word/Font.d.ts +16 -0
  265. package/lib/openxml/word/Font.js +83 -0
  266. package/lib/openxml/word/FontTable.d.ts +9 -0
  267. package/lib/openxml/word/FontTable.js +38 -0
  268. package/lib/openxml/word/Header.d.ts +11 -0
  269. package/lib/openxml/word/Header.js +58 -0
  270. package/lib/openxml/word/Hyperlink.d.ts +1 -0
  271. package/lib/openxml/word/Hyperlink.js +8 -4
  272. package/lib/openxml/word/InlineText.js +2 -2
  273. package/lib/openxml/word/NoBreakHyphen.d.ts +2 -0
  274. package/lib/openxml/word/NoBreakHyphen.js +11 -0
  275. package/lib/openxml/word/Note.d.ts +12 -0
  276. package/lib/openxml/word/Note.js +52 -0
  277. package/lib/openxml/word/Paragraph.d.ts +2 -2
  278. package/lib/openxml/word/Paragraph.js +11 -10
  279. package/lib/openxml/word/Pict.d.ts +1 -2
  280. package/lib/openxml/word/Pict.js +5 -3
  281. package/lib/openxml/word/Ruby.js +4 -4
  282. package/lib/openxml/word/Run.d.ts +7 -3
  283. package/lib/openxml/word/Run.js +29 -5
  284. package/lib/openxml/word/Section.d.ts +18 -5
  285. package/lib/openxml/word/Section.js +47 -3
  286. package/lib/openxml/word/Separator.d.ts +5 -0
  287. package/lib/openxml/word/Separator.js +14 -0
  288. package/lib/openxml/word/SoftHyphen.d.ts +5 -0
  289. package/lib/openxml/word/SoftHyphen.js +14 -0
  290. package/lib/openxml/word/Tab.d.ts +1 -1
  291. package/lib/openxml/word/Table.d.ts +4 -9
  292. package/lib/openxml/word/Table.js +0 -235
  293. package/lib/openxml/word/WDocument.d.ts +1 -2
  294. package/lib/openxml/word/WDocument.js +53 -7
  295. package/lib/openxml/word/numbering/AbstractNum.js +5 -3
  296. package/lib/openxml/word/numbering/Lvl.js +11 -5
  297. package/lib/openxml/word/numbering/Num.js +12 -4
  298. package/lib/openxml/word/numbering/NumberProperties.js +2 -2
  299. package/lib/openxml/word/numbering/Numbering.js +3 -3
  300. package/lib/openxml/word/table/Tc.d.ts +1 -22
  301. package/lib/openxml/word/table/Tc.js +0 -224
  302. package/lib/openxml/word/table/Tr.d.ts +0 -5
  303. package/lib/openxml/word/table/Tr.js +0 -97
  304. package/lib/openxml/word/wps/WPG.d.ts +14 -0
  305. package/lib/openxml/word/wps/WPG.js +60 -0
  306. package/lib/openxml/word/wps/WPS.d.ts +18 -0
  307. package/lib/openxml/word/wps/WPS.js +152 -0
  308. package/lib/openxml/word/wps/WPSStyle.d.ts +10 -0
  309. package/lib/openxml/word/wps/WPSStyle.js +46 -0
  310. package/lib/package/PackageParser.d.ts +1 -1
  311. package/lib/package/XMLPackageParser.d.ts +3 -3
  312. package/lib/package/ZipPackageParser.d.ts +1 -1
  313. package/lib/package/ZipPackageParser.js +7 -8
  314. package/lib/parse/Footnotes.d.ts +3 -0
  315. package/lib/parse/Footnotes.js +29 -0
  316. package/lib/parse/colorNameMap.d.ts +6 -0
  317. package/lib/parse/colorNameMap.js +205 -0
  318. package/lib/parse/jcToTextAlign.js +1 -0
  319. package/lib/parse/mergeSdt.d.ts +4 -0
  320. package/lib/parse/mergeSdt.js +61 -0
  321. package/lib/parse/modifyColor.d.ts +1 -0
  322. package/lib/parse/modifyColor.js +110 -0
  323. package/lib/parse/parseBorder.js +3 -22
  324. package/lib/parse/parseCellMargin.d.ts +2 -0
  325. package/lib/parse/parseCellMargin.js +42 -0
  326. package/lib/parse/parseChildColor.d.ts +5 -0
  327. package/lib/parse/parseChildColor.js +70 -0
  328. package/lib/parse/parseColor.d.ts +4 -0
  329. package/lib/parse/parseColor.js +41 -45
  330. package/lib/parse/parseEndnotes.d.ts +3 -0
  331. package/lib/parse/parseEndnotes.js +29 -0
  332. package/lib/parse/parseFont.js +2 -2
  333. package/lib/parse/parseInsideBorders.d.ts +9 -0
  334. package/lib/parse/parseInsideBorders.js +28 -0
  335. package/lib/parse/parsePr.d.ts +3 -0
  336. package/lib/parse/parsePr.js +109 -12
  337. package/lib/parse/parseRelationship.js +2 -2
  338. package/lib/parse/parseSdt.d.ts +5 -0
  339. package/lib/parse/parseShape.d.ts +10 -0
  340. package/lib/parse/parseShape.js +247 -0
  341. package/lib/parse/parseSize.d.ts +2 -1
  342. package/lib/parse/parseSize.js +7 -0
  343. package/lib/parse/parseSpacing.js +1 -1
  344. package/lib/parse/parseTable.d.ts +3 -0
  345. package/lib/parse/parseTable.js +66 -0
  346. package/lib/parse/parseTablePr.d.ts +3 -0
  347. package/lib/parse/parseTablePr.js +189 -0
  348. package/lib/parse/parseTblWidth.d.ts +4 -0
  349. package/lib/parse/parseTblWidth.js +27 -0
  350. package/lib/parse/parseTc.d.ts +10 -0
  351. package/lib/parse/parseTc.js +68 -0
  352. package/lib/parse/parseTcPr.d.ts +5 -0
  353. package/lib/parse/parseTcPr.js +104 -0
  354. package/lib/parse/parseTextDirection.js +4 -6
  355. package/lib/parse/parseTr.d.ts +6 -0
  356. package/lib/parse/parseTr.js +53 -0
  357. package/lib/parse/parseTrPr.d.ts +3 -0
  358. package/lib/parse/parseTrPr.js +63 -0
  359. package/lib/render/fixAbsolutePosition.d.ts +8 -0
  360. package/lib/render/renderBody.d.ts +6 -2
  361. package/lib/render/renderBody.js +183 -29
  362. package/lib/render/renderBr.d.ts +2 -1
  363. package/lib/render/renderBr.js +4 -1
  364. package/lib/render/renderCustGeom.d.ts +4 -0
  365. package/lib/render/renderCustGeom.js +14 -0
  366. package/lib/render/renderDocument.d.ts +2 -2
  367. package/lib/render/renderDocument.js +2 -2
  368. package/lib/render/renderDrawing.d.ts +3 -2
  369. package/lib/render/renderDrawing.js +238 -21
  370. package/lib/render/renderFont.d.ts +5 -0
  371. package/lib/render/renderFont.js +43 -0
  372. package/lib/render/renderGeom.d.ts +4 -0
  373. package/lib/render/renderGeom.js +18 -0
  374. package/lib/render/renderHeader.d.ts +6 -0
  375. package/lib/render/renderHeader.js +44 -0
  376. package/lib/render/renderHyperLink.js +5 -2
  377. package/lib/render/renderInlineText.js +2 -2
  378. package/lib/render/renderInstrText.js +2 -2
  379. package/lib/render/renderMath.d.ts +3 -0
  380. package/lib/render/renderMath.js +11 -0
  381. package/lib/render/renderNoBreakHyphen.d.ts +1 -0
  382. package/lib/render/renderNoBreakHyphen.js +13 -0
  383. package/lib/render/renderNotes.d.ts +5 -0
  384. package/lib/render/renderNotes.js +81 -0
  385. package/lib/render/renderNumbering.js +9 -11
  386. package/lib/render/renderParagraph.d.ts +1 -1
  387. package/lib/render/renderParagraph.js +58 -18
  388. package/lib/render/renderPict.js +5 -10
  389. package/lib/render/renderRuby.js +3 -3
  390. package/lib/render/renderRun.d.ts +4 -2
  391. package/lib/render/renderRun.js +41 -11
  392. package/lib/render/renderSection.d.ts +3 -2
  393. package/lib/render/renderSection.js +79 -5
  394. package/lib/render/renderSeparator.d.ts +1 -0
  395. package/lib/render/renderSeparator.js +13 -0
  396. package/lib/render/renderSoftHyphen.d.ts +1 -0
  397. package/lib/render/renderSoftHyphen.js +13 -0
  398. package/lib/render/renderStyle.js +37 -36
  399. package/lib/render/renderTab.d.ts +2 -1
  400. package/lib/render/renderTab.js +10 -6
  401. package/lib/render/renderTable.js +25 -22
  402. package/lib/render/setElementStyle.js +6 -1
  403. package/lib/render/zindex.d.ts +1 -0
  404. package/lib/util/blob.js +0 -10
  405. package/lib/util/color.d.ts +48 -0
  406. package/lib/util/color.js +215 -0
  407. package/lib/util/createObject.d.ts +10 -0
  408. package/lib/util/createObject.js +54 -0
  409. package/lib/util/dom.d.ts +8 -4
  410. package/lib/util/dom.js +24 -5
  411. package/lib/util/get.d.ts +4 -0
  412. package/lib/util/get.js +22 -0
  413. package/lib/util/mergeRun.js +5 -5
  414. package/lib/util/parseSides.d.ts +11 -0
  415. package/lib/util/print.d.ts +5 -0
  416. package/lib/util/print.js +58 -0
  417. package/lib/util/replaceVar.d.ts +10 -0
  418. package/lib/util/replaceVar.js +220 -0
  419. package/lib/util/xml.js +4 -0
  420. package/package.json +17 -7
  421. package/esm/node_modules/tslib/tslib.es6.js +0 -120
  422. package/esm/openxml/Types.js +0 -1003
  423. package/esm/openxml/word/CustomXml.d.ts +0 -8
  424. package/esm/openxml/word/SmartTag.d.ts +0 -8
  425. package/esm/openxml/word/SmartTag.js +0 -18
  426. package/esm/openxml/word/drawing/Blip.d.ts +0 -6
  427. package/esm/openxml/word/drawing/Drawing.d.ts +0 -6
  428. package/esm/openxml/word/drawing/Drawing.js +0 -15
  429. package/esm/openxml/word/drawing/Pic.d.ts +0 -8
  430. package/esm/openxml/word/drawing/Pic.js +0 -16
  431. package/esm/openxml/word/drawing/ShapeProperties.d.ts +0 -9
  432. package/esm/openxml/word/drawing/ShapeProperties.js +0 -20
  433. package/esm/openxml/word/drawing/Transform.js +0 -30
  434. package/lib/node_modules/tslib/tslib.es6.js +0 -129
  435. package/lib/openxml/Types.js +0 -1005
  436. package/lib/openxml/word/CustomXml.d.ts +0 -8
  437. package/lib/openxml/word/SmartTag.d.ts +0 -8
  438. package/lib/openxml/word/SmartTag.js +0 -22
  439. package/lib/openxml/word/drawing/Blip.d.ts +0 -6
  440. package/lib/openxml/word/drawing/Drawing.d.ts +0 -6
  441. package/lib/openxml/word/drawing/Drawing.js +0 -19
  442. package/lib/openxml/word/drawing/Pic.d.ts +0 -8
  443. package/lib/openxml/word/drawing/Pic.js +0 -20
  444. package/lib/openxml/word/drawing/ShapeProperties.d.ts +0 -9
  445. package/lib/openxml/word/drawing/ShapeProperties.js +0 -24
  446. package/lib/openxml/word/drawing/Transform.js +0 -34
@@ -2,41 +2,258 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
+ var tslib = require('tslib');
6
+ var Paragraph = require('../openxml/word/Paragraph.js');
7
+ var dom = require('../util/dom.js');
8
+ var renderParagraph = require('./renderParagraph.js');
9
+ var renderTable = require('./renderTable.js');
10
+ var Table = require('../openxml/word/Table.js');
11
+ var renderGeom = require('./renderGeom.js');
12
+ var renderCustGeom = require('./renderCustGeom.js');
13
+
5
14
  /**
6
- * 渲染图片,目前只支持 picture
7
- * http://officeopenxml.com/drwOverview.php
8
- *
15
+ * 渲染图片
9
16
  */
10
- function renderDrawing(word, drawing) {
17
+ function renderPic(pic, word, wpg) {
11
18
  var _a, _b, _c;
12
- var pic = drawing.pic;
13
- if (pic) {
14
- var blip = (_a = pic.blipFill) === null || _a === void 0 ? void 0 : _a.blip;
15
- if (blip && blip.embled) {
16
- var img_1 = document.createElement('img');
17
- img_1.style.position = 'relative';
18
- (_b = word.loadImage(blip.embled)) === null || _b === void 0 ? void 0 : _b.then(function (url) {
19
- if (url) {
20
- img_1.src = url;
19
+ if (wpg === void 0) { wpg = null; }
20
+ var blip = (_a = pic.blipFill) === null || _a === void 0 ? void 0 : _a.blip;
21
+ if (blip && blip.src) {
22
+ var img = document.createElement('img');
23
+ img.style.position = 'relative';
24
+ img.alt = pic.alt || '';
25
+ img.src = blip.src;
26
+ if (pic.alt && word.renderOptions.enableVar) {
27
+ if (pic.altVar) {
28
+ img.src = pic.altVar;
29
+ }
30
+ else if (pic.alt.startsWith('{{')) {
31
+ var src = word.replaceText(pic.alt);
32
+ if (src) {
33
+ img.src = src;
34
+ }
35
+ }
36
+ }
37
+ var xfrm = (_b = pic.spPr) === null || _b === void 0 ? void 0 : _b.xfrm;
38
+ if (xfrm) {
39
+ if (wpg) {
40
+ var rect = getRectInGroup(xfrm, (_c = wpg.spPr) === null || _c === void 0 ? void 0 : _c.xfrm);
41
+ if (rect) {
42
+ img.style.position = 'absolute';
43
+ img.style.left = rect.left + 'px';
44
+ img.style.top = rect.top + 'px';
45
+ img.style.width = rect.width + 'px';
46
+ img.style.height = rect.height + 'px';
21
47
  }
22
- });
23
- var xfrm = (_c = pic.spPr) === null || _c === void 0 ? void 0 : _c.xfrm;
24
- if (xfrm) {
48
+ }
49
+ else {
25
50
  var off = xfrm.off;
26
51
  if (off) {
27
- img_1.style.left = off.x;
28
- img_1.style.top = off.y;
52
+ img.style.left = off.x;
53
+ img.style.top = off.y;
29
54
  }
30
55
  var ext = xfrm.ext;
31
56
  if (ext) {
32
- img_1.style.width = ext.cx;
33
- img_1.style.height = ext.cy;
57
+ img.style.width = ext.cx;
58
+ img.style.height = ext.cy;
34
59
  }
35
60
  }
36
- return img_1;
61
+ if (xfrm.rot) {
62
+ img.style.transform = "rotate(".concat(xfrm.rot, "deg)");
63
+ }
37
64
  }
65
+ return img;
66
+ }
67
+ return null;
68
+ }
69
+ /**
70
+ * 获取在 group 中的位置
71
+ * @param xfrm 元素的位置定义
72
+ * @param groupXfrm 分组中的位置定义
73
+ */
74
+ function getRectInGroup(xfrm, groupXfrm) {
75
+ var off = xfrm.off;
76
+ var width = parseFloat(xfrm.ext.cx.replace('px', ''));
77
+ var height = parseFloat(xfrm.ext.cy.replace('px', ''));
78
+ if (off && groupXfrm.chOff && groupXfrm.ext && groupXfrm.chExt) {
79
+ // 先算缩放比
80
+ var scaleX = parseFloat(groupXfrm.ext.cx.replace('px', '')) /
81
+ parseFloat(groupXfrm.chExt.cx.replace('px', ''));
82
+ var scaleY = parseFloat(groupXfrm.ext.cy.replace('px', '')) /
83
+ parseFloat(groupXfrm.chExt.cy.replace('px', ''));
84
+ var groupOffX = parseFloat(groupXfrm.chOff.x.replace('px', ''));
85
+ var groupOffY = parseFloat(groupXfrm.chOff.y.replace('px', ''));
86
+ var x = parseFloat(off.x.replace('px', ''));
87
+ var y = parseFloat(off.y.replace('px', ''));
88
+ return {
89
+ left: scaleX * (x - groupOffX),
90
+ top: scaleY * (y - groupOffY),
91
+ width: scaleX * width,
92
+ height: scaleY * height
93
+ };
38
94
  }
39
95
  return null;
40
96
  }
97
+ /**
98
+ * 渲染文本框
99
+ */
100
+ function renderWps(word, container, wps, wpg) {
101
+ var e_1, _a;
102
+ var _b;
103
+ if (wpg === void 0) { wpg = null; }
104
+ var wpsStyle = wps.wpsStyle;
105
+ var spPr = wps.spPr;
106
+ dom.applyStyle(container, wps.style);
107
+ if (wpsStyle === null || wpsStyle === void 0 ? void 0 : wpsStyle.fontColor) {
108
+ container.style.color = wpsStyle.fontColor;
109
+ }
110
+ if (spPr === null || spPr === void 0 ? void 0 : spPr.xfrm) {
111
+ var ext = spPr.xfrm.ext;
112
+ if (ext) {
113
+ var width = parseFloat(ext.cx.replace('px', ''));
114
+ var height = parseFloat(ext.cy.replace('px', ''));
115
+ // 在分组中的计算方式不一样,另外在分组中还需要绝对定位
116
+ // 这个计算方法在官方文档里没找到
117
+ if (wpg) {
118
+ container.style.position = 'absolute';
119
+ var rect = getRectInGroup(spPr.xfrm, (_b = wpg.spPr) === null || _b === void 0 ? void 0 : _b.xfrm);
120
+ if (rect) {
121
+ container.style.left = rect.left + 'px';
122
+ container.style.top = rect.top + 'px';
123
+ width = rect.width;
124
+ height = rect.height;
125
+ }
126
+ }
127
+ container.style.width = width + 'px';
128
+ container.style.height = height + 'px';
129
+ if (spPr.geom) {
130
+ dom.appendChild(container, renderGeom.renderGeom(spPr.geom, spPr, width, height, wps.wpsStyle));
131
+ }
132
+ if (spPr.custGeom) {
133
+ dom.appendChild(container, renderCustGeom.renderCustGeom(spPr.custGeom, spPr, width, height, wps.wpsStyle));
134
+ }
135
+ }
136
+ if (spPr.xfrm.rot) {
137
+ container.style.transform = "rotate(".concat(spPr.xfrm.rot, "deg)");
138
+ }
139
+ }
140
+ var txbxContent = wps.txbxContent;
141
+ if (txbxContent.length) {
142
+ // 为了实现垂直居中,将父容器改成 table 布局
143
+ var textContainer = document.createElement('div');
144
+ textContainer.dataset.name = 'textContainer';
145
+ container.style.display = 'table';
146
+ textContainer.style.display = 'table-cell';
147
+ textContainer.style.verticalAlign = 'middle';
148
+ if (wps.style && wps.style['vertical-align']) {
149
+ textContainer.style.verticalAlign = wps.style['vertical-align'];
150
+ // 容器的 vertical-align 需要去掉,虽然也不影响
151
+ container.style.verticalAlign = '';
152
+ }
153
+ dom.appendChild(container, textContainer);
154
+ try {
155
+ for (var txbxContent_1 = tslib.__values(txbxContent), txbxContent_1_1 = txbxContent_1.next(); !txbxContent_1_1.done; txbxContent_1_1 = txbxContent_1.next()) {
156
+ var txbxContentChild = txbxContent_1_1.value;
157
+ if (txbxContentChild instanceof Paragraph.Paragraph) {
158
+ dom.appendChild(textContainer, renderParagraph["default"](word, txbxContentChild));
159
+ }
160
+ else if (txbxContentChild instanceof Table.Table) {
161
+ dom.appendChild(textContainer, renderTable["default"](word, txbxContentChild));
162
+ }
163
+ }
164
+ }
165
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
166
+ finally {
167
+ try {
168
+ if (txbxContent_1_1 && !txbxContent_1_1.done && (_a = txbxContent_1.return)) _a.call(txbxContent_1);
169
+ }
170
+ finally { if (e_1) throw e_1.error; }
171
+ }
172
+ }
173
+ }
174
+ function renderWpg(word, wpg) {
175
+ var e_2, _a, e_3, _b;
176
+ var _c, _d;
177
+ var container = document.createElement('div');
178
+ var wpgContainer = document.createElement('div');
179
+ var spPr = wpg.spPr;
180
+ if (spPr === null || spPr === void 0 ? void 0 : spPr.xfrm) {
181
+ var ext = (_c = spPr === null || spPr === void 0 ? void 0 : spPr.xfrm) === null || _c === void 0 ? void 0 : _c.ext;
182
+ if (ext) {
183
+ wpgContainer.style.width = ext.cx;
184
+ wpgContainer.style.height = ext.cy;
185
+ }
186
+ var rot = (_d = spPr === null || spPr === void 0 ? void 0 : spPr.xfrm) === null || _d === void 0 ? void 0 : _d.rot;
187
+ if (rot) {
188
+ wpgContainer.style.transform = "rotate(".concat(rot, "deg)");
189
+ }
190
+ }
191
+ try {
192
+ for (var _e = tslib.__values(wpg.wps), _f = _e.next(); !_f.done; _f = _e.next()) {
193
+ var wps = _f.value;
194
+ var wpsContainer = document.createElement('div');
195
+ renderWps(word, wpsContainer, wps, wpg);
196
+ dom.appendChild(wpgContainer, wpsContainer);
197
+ }
198
+ }
199
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
200
+ finally {
201
+ try {
202
+ if (_f && !_f.done && (_a = _e.return)) _a.call(_e);
203
+ }
204
+ finally { if (e_2) throw e_2.error; }
205
+ }
206
+ try {
207
+ for (var _g = tslib.__values(wpg.wpg), _h = _g.next(); !_h.done; _h = _g.next()) {
208
+ var childWpg = _h.value;
209
+ dom.appendChild(container, renderWpg(word, childWpg));
210
+ }
211
+ }
212
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
213
+ finally {
214
+ try {
215
+ if (_h && !_h.done && (_b = _g.return)) _b.call(_g);
216
+ }
217
+ finally { if (e_3) throw e_3.error; }
218
+ }
219
+ if (wpg.pic) {
220
+ dom.appendChild(wpgContainer, renderPic(wpg.pic, word, wpg));
221
+ }
222
+ dom.appendChild(container, wpgContainer);
223
+ return container;
224
+ }
225
+ /**
226
+ * 渲染图片,目前只支持 picture
227
+ * http://officeopenxml.com/drwOverview.php
228
+ * @param inHeader,如果在 header 中,位置计算要特殊处理
229
+ *
230
+ */
231
+ function renderDrawing(word, drawing, inHeader) {
232
+ var container = document.createElement('div');
233
+ if (drawing.position === 'inline') {
234
+ container.style.display = 'inline-block';
235
+ }
236
+ else if (drawing.position === 'anchor') ;
237
+ if (drawing.pic) {
238
+ dom.appendChild(container, renderPic(drawing.pic, word));
239
+ }
240
+ if (drawing.relativeFromV === 'page') {
241
+ console.warn('暂不支持 drawing.relativeFromV === "page"');
242
+ }
243
+ dom.applyStyle(container, drawing.containerStyle);
244
+ container.dataset.id = drawing.id || '';
245
+ container.dataset.name = drawing.name || '';
246
+ if (drawing.wps) {
247
+ renderWps(word, container, drawing.wps);
248
+ }
249
+ if (drawing.wpg) {
250
+ dom.appendChild(container, renderWpg(word, drawing.wpg));
251
+ }
252
+ // 如果没内容就不渲染了,避免高度导致撑开父节点
253
+ if (container.children.length === 0) {
254
+ return null;
255
+ }
256
+ return container;
257
+ }
41
258
 
42
259
  exports.renderDrawing = renderDrawing;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * 渲染自定义字体样式
3
+ */
4
+ import { FontTable } from '../openxml/word/FontTable';
5
+ export declare function renderFont(fontTable?: FontTable): HTMLElement | null;
@@ -0,0 +1,43 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var dom = require('../util/dom.js');
7
+
8
+ /**
9
+ * 渲染自定义字体样式
10
+ */
11
+ function renderFont(fontTable) {
12
+ var e_1, _a;
13
+ if (!fontTable) {
14
+ return null;
15
+ }
16
+ var fonts = fontTable.fonts;
17
+ if (!fonts || !fonts.length) {
18
+ return null;
19
+ }
20
+ var style = dom.createElement('style');
21
+ var fontContent = '/** embedded fonts **/';
22
+ try {
23
+ for (var _b = tslib.__values(fontTable.fonts), _c = _b.next(); !_c.done; _c = _b.next()) {
24
+ var font = _c.value;
25
+ var fontName = font.name.replace(/['\\]/g, ''); // 简单防止 xss
26
+ var fontPath = font.url;
27
+ if (fontName && fontPath) {
28
+ fontContent += "\n @font-face {\n font-family: '".concat(fontName, "';\n src: url('").concat(fontPath, "');\n }\n ");
29
+ }
30
+ }
31
+ }
32
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
33
+ finally {
34
+ try {
35
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
36
+ }
37
+ finally { if (e_1) throw e_1.error; }
38
+ }
39
+ style.innerHTML = fontContent;
40
+ return style;
41
+ }
42
+
43
+ exports.renderFont = renderFont;
@@ -0,0 +1,4 @@
1
+ import { Geom } from '../openxml/drawing/Geom';
2
+ import { ShapePr } from '../openxml/drawing/ShapeProperties';
3
+ import { WPSStyle } from '../openxml/word/wps/WPSStyle';
4
+ export declare function renderGeom(geom: Geom, shapePr: ShapePr, width: number, height: number, wpsStyle?: WPSStyle): SVGElement | null;
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var presetShape = require('../openxml/drawing/presetShape.js');
6
+ var shapeToSVG = require('../openxml/drawing/svg/shapeToSVG.js');
7
+
8
+ function renderGeom(geom, shapePr, width, height, wpsStyle) {
9
+ if (geom.prst) {
10
+ var shape = presetShape.presetShape[geom.prst];
11
+ if (shape) {
12
+ return shapeToSVG.shapeToSVG(shape, geom.avLst || [], shapePr, width, height, wpsStyle);
13
+ }
14
+ }
15
+ return null;
16
+ }
17
+
18
+ exports.renderGeom = renderGeom;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 渲染 header 内容
3
+ */
4
+ import Word from '../Word';
5
+ import { Header } from '../openxml/word/Header';
6
+ export declare function renderHeader(word: Word, header: Header): HTMLElement;
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var Paragraph = require('../openxml/word/Paragraph.js');
7
+ var renderParagraph = require('./renderParagraph.js');
8
+ var dom = require('../util/dom.js');
9
+ var renderTable = require('./renderTable.js');
10
+ var Table = require('../openxml/word/Table.js');
11
+
12
+ /**
13
+ * 渲染 header 内容
14
+ */
15
+ function renderHeader(word, header) {
16
+ var e_1, _a;
17
+ var headerEl = dom.createElement('div');
18
+ try {
19
+ for (var _b = tslib.__values(header.children), _c = _b.next(); !_c.done; _c = _b.next()) {
20
+ var child = _c.value;
21
+ if (child instanceof Paragraph.Paragraph) {
22
+ var p = renderParagraph["default"](word, child, true, true);
23
+ dom.appendChild(headerEl, p);
24
+ }
25
+ else if (child instanceof Table.Table) {
26
+ var table = renderTable["default"](word, child);
27
+ dom.appendChild(headerEl, table);
28
+ }
29
+ else {
30
+ console.warn('unknown child', child);
31
+ }
32
+ }
33
+ }
34
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
35
+ finally {
36
+ try {
37
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
38
+ }
39
+ finally { if (e_1) throw e_1.error; }
40
+ }
41
+ return headerEl;
42
+ }
43
+
44
+ exports.renderHeader = renderHeader;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../node_modules/tslib/tslib.es6.js');
5
+ var tslib = require('tslib');
6
6
  var dom = require('../util/dom.js');
7
7
  var Run = require('../openxml/word/Run.js');
8
8
  var renderRun = require('./renderRun.js');
@@ -23,8 +23,11 @@ function renderHyperLink(word, hyperlink, paragraph) {
23
23
  if (hyperlink.anchor) {
24
24
  a.href = '#' + hyperlink.anchor;
25
25
  }
26
+ if (hyperlink.tooltip) {
27
+ a.title = hyperlink.tooltip;
28
+ }
26
29
  try {
27
- for (var _b = tslib_es6.__values(hyperlink.children), _c = _b.next(); !_c.done; _c = _b.next()) {
30
+ for (var _b = tslib.__values(hyperlink.children), _c = _b.next(); !_c.done; _c = _b.next()) {
28
31
  var child = _c.value;
29
32
  if (child instanceof Run.Run) {
30
33
  var span = renderRun["default"](word, child, paragraph);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../node_modules/tslib/tslib.es6.js');
5
+ var tslib = require('tslib');
6
6
  var dom = require('../util/dom.js');
7
7
  var Run = require('../openxml/word/Run.js');
8
8
  var Bookmark = require('../openxml/word/Bookmark.js');
@@ -17,7 +17,7 @@ var renderBookmark = require('./renderBookmark.js');
17
17
  function renderInlineText(word, inlineText, parent) {
18
18
  var e_1, _a;
19
19
  try {
20
- for (var _b = tslib_es6.__values(inlineText.children), _c = _b.next(); !_c.done; _c = _b.next()) {
20
+ for (var _b = tslib.__values(inlineText.children), _c = _b.next(); !_c.done; _c = _b.next()) {
21
21
  var child = _c.value;
22
22
  if (child instanceof Run.Run) {
23
23
  dom.appendChild(parent, renderRun["default"](word, child));
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../node_modules/tslib/tslib.es6.js');
5
+ var tslib = require('tslib');
6
6
  var dom = require('../util/dom.js');
7
7
  var renderInlineText = require('./renderInlineText.js');
8
8
 
@@ -21,7 +21,7 @@ function renderInstrText(word, instrText) {
21
21
  try {
22
22
  // 其实不知道这样做是不是对的
23
23
  // 另外就是这里有很多指令还不支持 http://webapp.docx4java.org/OnlineDemo/ecma376/WordML/FILENAME.html
24
- for (var fldSimples_1 = tslib_es6.__values(fldSimples), fldSimples_1_1 = fldSimples_1.next(); !fldSimples_1_1.done; fldSimples_1_1 = fldSimples_1.next()) {
24
+ for (var fldSimples_1 = tslib.__values(fldSimples), fldSimples_1_1 = fldSimples_1.next(); !fldSimples_1_1.done; fldSimples_1_1 = fldSimples_1.next()) {
25
25
  var fldSimple = fldSimples_1_1.value;
26
26
  if (fldSimple.instr === text.trim() ||
27
27
  text.startsWith(fldSimple.instr + ' ')) {
@@ -0,0 +1,3 @@
1
+ import { OMath } from '../openxml/math/OMath';
2
+ import Word from '../Word';
3
+ export declare function renderOMath(word: Word, math: OMath): DocumentFragment;
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var convertOOML = require('../openxml/math/convertOOML.js');
6
+
7
+ function renderOMath(word, math) {
8
+ return convertOOML.convertOOXML(math.element);
9
+ }
10
+
11
+ exports.renderOMath = renderOMath;
@@ -0,0 +1 @@
1
+ export declare function renderNoBreakHyphen(): HTMLElement;
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var dom = require('../util/dom.js');
6
+
7
+ function renderNoBreakHyphen() {
8
+ var softHyphen = dom.createElement('span');
9
+ softHyphen.innerHTML = '–';
10
+ return softHyphen;
11
+ }
12
+
13
+ exports.renderNoBreakHyphen = renderNoBreakHyphen;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * 渲染 footnotes 和 endnotes,这个需要最后执行
3
+ */
4
+ import Word from '../Word';
5
+ export declare function renderNotes(word: Word): HTMLElement | null;
@@ -0,0 +1,81 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tslib = require('tslib');
6
+ var Paragraph = require('../openxml/word/Paragraph.js');
7
+ var Table = require('../openxml/word/Table.js');
8
+ var dom = require('../util/dom.js');
9
+ var renderParagraph = require('./renderParagraph.js');
10
+ var renderTable = require('./renderTable.js');
11
+
12
+ /**
13
+ * 渲染 footnotes 和 endnotes,这个需要最后执行
14
+ */
15
+ function renderNote(word, noteRoot, type, id, note) {
16
+ var e_1, _a;
17
+ var noteChild = note.children;
18
+ var noteElement = dom.createElement('div');
19
+ var mark = dom.createElement('a');
20
+ var fName = type + '-' + id;
21
+ mark.name = fName;
22
+ mark.id = fName;
23
+ noteRoot.appendChild(noteElement);
24
+ try {
25
+ for (var noteChild_1 = tslib.__values(noteChild), noteChild_1_1 = noteChild_1.next(); !noteChild_1_1.done; noteChild_1_1 = noteChild_1.next()) {
26
+ var child = noteChild_1_1.value;
27
+ if (child instanceof Paragraph.Paragraph) {
28
+ var p = renderParagraph["default"](word, child);
29
+ dom.appendChild(noteElement, p);
30
+ }
31
+ else if (child instanceof Table.Table) {
32
+ dom.appendChild(noteElement, renderTable["default"](word, child));
33
+ }
34
+ else {
35
+ console.warn('unknown child', child);
36
+ }
37
+ }
38
+ }
39
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
40
+ finally {
41
+ try {
42
+ if (noteChild_1_1 && !noteChild_1_1.done && (_a = noteChild_1.return)) _a.call(noteChild_1);
43
+ }
44
+ finally { if (e_1) throw e_1.error; }
45
+ }
46
+ }
47
+ /*
48
+ * 过滤掉 0 和 -1 后是否还有其他的值,没有的话就不需要渲染
49
+ */
50
+ function hasNote(notes) {
51
+ if (!notes) {
52
+ return false;
53
+ }
54
+ for (var id in notes) {
55
+ if (id !== '0' && id !== '-1') {
56
+ return true;
57
+ }
58
+ }
59
+ return false;
60
+ }
61
+ function renderNotes(word) {
62
+ var noteRoot = dom.createElement('div');
63
+ if (hasNote(word.footNotes)) {
64
+ for (var fId in word.footNotes) {
65
+ renderNote(word, noteRoot, 'footnote', fId, word.footNotes[fId]);
66
+ }
67
+ }
68
+ if (hasNote(word.endNotes)) {
69
+ for (var fId in word.endNotes || {}) {
70
+ renderNote(word, noteRoot, 'endnote', fId, word.endNotes[fId]);
71
+ }
72
+ }
73
+ if (noteRoot.children.length) {
74
+ return noteRoot;
75
+ }
76
+ else {
77
+ return null;
78
+ }
79
+ }
80
+
81
+ exports.renderNotes = renderNotes;
@@ -2,9 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../node_modules/tslib/tslib.es6.js');
5
+ var tslib = require('tslib');
6
6
  var dom = require('../util/dom.js');
7
- var Types = require('../openxml/Types.js');
8
7
  var setElementStyle = require('./setElementStyle.js');
9
8
 
10
9
  /**
@@ -40,17 +39,17 @@ function romanize(num) {
40
39
  */
41
40
  function convertNumToFormat(numFmt, num) {
42
41
  switch (numFmt) {
43
- case Types.ST_NumberFormat.decimal:
42
+ case 'decimal':
44
43
  return num.toString();
45
- case Types.ST_NumberFormat.lowerLetter:
44
+ case 'lowerLetter':
46
45
  return String.fromCharCode(96 + num);
47
- case Types.ST_NumberFormat.upperLetter:
46
+ case 'upperLetter':
48
47
  return String.fromCharCode(64 + num);
49
- case Types.ST_NumberFormat.lowerRoman:
48
+ case 'lowerRoman':
50
49
  return romanize(num).toLowerCase();
51
- case Types.ST_NumberFormat.upperRoman:
50
+ case 'upperRoman':
52
51
  return romanize(num).toUpperCase();
53
- case Types.ST_NumberFormat.bullet:
52
+ case 'bullet':
54
53
  // 原本其实是用
55
54
  return '•';
56
55
  default:
@@ -80,7 +79,7 @@ function renderNumbering(p, word, numPr) {
80
79
  var abstractNum = numbering.abstractNums[num.abstractNumId];
81
80
  var lvls = abstractNum.lvls;
82
81
  if (num.lvlOverride) {
83
- lvls = tslib_es6.__assign(tslib_es6.__assign({}, lvls), num.lvlOverride.lvls);
82
+ lvls = tslib.__assign(tslib.__assign({}, lvls), num.lvlOverride.lvls);
84
83
  }
85
84
  var lvl = lvls[numPr.ilvl];
86
85
  if (!lvl) {
@@ -133,8 +132,7 @@ function renderNumbering(p, word, numPr) {
133
132
  // 还不支持 lvlJc
134
133
  // 还不支持 image
135
134
  // http://officeopenxml.com/WPnumbering-imagesAsSymbol.php
136
- if (lvl.numFmt !== Types.ST_NumberFormat.bullet ||
137
- word.renderOptions.bulletUseFont) {
135
+ if (lvl.numFmt !== 'bullet' || word.renderOptions.bulletUseFont) {
138
136
  element.innerText = lvlText;
139
137
  }
140
138
  else {
@@ -4,4 +4,4 @@ import { Paragraph } from '../openxml/word/Paragraph';
4
4
  * 渲染段落
5
5
  * @param renderEmptySpace 如果是 true 的话,当内容为空时会自动加上  
6
6
  */
7
- export default function renderParagraph(word: Word, paragraph: Paragraph, renderEmptySpace?: boolean): HTMLElement;
7
+ export default function renderParagraph(word: Word, paragraph: Paragraph, renderEmptySpace?: boolean, inHeader?: boolean): HTMLElement;