documents.js 1.57.0 → 1.58.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 (454) hide show
  1. package/README.md +38 -0
  2. package/dist/blr-types-CYYC3yYU.d.cts +35 -0
  3. package/dist/blr-types-CYYC3yYU.d.ts +35 -0
  4. package/dist/cell-CNHPsDEk.d.cts +17 -0
  5. package/dist/cell-CNHPsDEk.d.ts +17 -0
  6. package/dist/color-71eoF1Up.d.cts +2 -0
  7. package/dist/color-Bo228AY2.d.ts +2 -0
  8. package/dist/convert/codec.cjs +51 -0
  9. package/dist/convert/codec.d.cts +13 -0
  10. package/dist/convert/codec.d.ts +13 -0
  11. package/dist/convert/codec.js +42 -0
  12. package/dist/convert/convert.cjs +443 -0
  13. package/dist/convert/convert.d.cts +55 -0
  14. package/dist/convert/convert.d.ts +55 -0
  15. package/dist/convert/convert.js +419 -0
  16. package/dist/convert/local.cjs +393 -0
  17. package/dist/convert/local.d.cts +5 -0
  18. package/dist/convert/local.d.ts +5 -0
  19. package/dist/convert/local.js +392 -0
  20. package/dist/convert/port.cjs +0 -0
  21. package/dist/convert/port.d.cts +34 -0
  22. package/dist/convert/port.d.ts +34 -0
  23. package/dist/convert/port.js +0 -0
  24. package/dist/edit/docx/content.cjs +71 -0
  25. package/dist/edit/docx/content.d.cts +6 -0
  26. package/dist/edit/docx/content.d.ts +6 -0
  27. package/dist/edit/docx/content.js +70 -0
  28. package/dist/edit/docx/editor.cjs +116 -0
  29. package/dist/edit/docx/editor.d.cts +23 -0
  30. package/dist/edit/docx/editor.d.ts +23 -0
  31. package/dist/edit/docx/editor.js +113 -0
  32. package/dist/edit/docx/image.cjs +74 -0
  33. package/dist/edit/docx/image.d.cts +2 -0
  34. package/dist/edit/docx/image.d.ts +2 -0
  35. package/dist/edit/docx/image.js +72 -0
  36. package/dist/edit/docx/paragraph.cjs +132 -0
  37. package/dist/edit/docx/paragraph.d.cts +40 -0
  38. package/dist/edit/docx/paragraph.d.ts +40 -0
  39. package/dist/edit/docx/paragraph.js +130 -0
  40. package/dist/edit/docx/props.cjs +132 -0
  41. package/dist/edit/docx/props.d.cts +20 -0
  42. package/dist/edit/docx/props.d.ts +20 -0
  43. package/dist/edit/docx/props.js +117 -0
  44. package/dist/edit/docx/run.cjs +143 -0
  45. package/dist/edit/docx/run.d.cts +2 -0
  46. package/dist/edit/docx/run.d.ts +2 -0
  47. package/dist/edit/docx/run.js +141 -0
  48. package/dist/edit/docx/scaffold.cjs +97 -0
  49. package/dist/edit/docx/scaffold.d.cts +5 -0
  50. package/dist/edit/docx/scaffold.d.ts +5 -0
  51. package/dist/edit/docx/scaffold.js +96 -0
  52. package/dist/edit/docx/table.cjs +99 -0
  53. package/dist/edit/docx/table.d.cts +34 -0
  54. package/dist/edit/docx/table.d.ts +34 -0
  55. package/dist/edit/docx/table.js +95 -0
  56. package/dist/edit/odg/content.cjs +65 -0
  57. package/dist/edit/odg/content.d.cts +6 -0
  58. package/dist/edit/odg/content.d.ts +6 -0
  59. package/dist/edit/odg/content.js +64 -0
  60. package/dist/edit/odg/editor.cjs +96 -0
  61. package/dist/edit/odg/editor.d.cts +19 -0
  62. package/dist/edit/odg/editor.d.ts +19 -0
  63. package/dist/edit/odg/editor.js +93 -0
  64. package/dist/edit/odg/page.cjs +70 -0
  65. package/dist/edit/odg/page.d.cts +34 -0
  66. package/dist/edit/odg/page.d.ts +34 -0
  67. package/dist/edit/odg/page.js +69 -0
  68. package/dist/edit/odg/scaffold.cjs +106 -0
  69. package/dist/edit/odg/scaffold.d.cts +7 -0
  70. package/dist/edit/odg/scaffold.d.ts +7 -0
  71. package/dist/edit/odg/scaffold.js +103 -0
  72. package/dist/edit/odg/style.cjs +83 -0
  73. package/dist/edit/odg/style.d.cts +14 -0
  74. package/dist/edit/odg/style.d.ts +14 -0
  75. package/dist/edit/odg/style.js +78 -0
  76. package/dist/edit/odg/svg-path.cjs +30 -0
  77. package/dist/edit/odg/svg-path.d.cts +7 -0
  78. package/dist/edit/odg/svg-path.d.ts +7 -0
  79. package/dist/edit/odg/svg-path.js +27 -0
  80. package/dist/edit/odg/vector.cjs +208 -0
  81. package/dist/edit/odg/vector.d.cts +2 -0
  82. package/dist/edit/odg/vector.d.ts +2 -0
  83. package/dist/edit/odg/vector.js +201 -0
  84. package/dist/edit/odp/content.cjs +42 -0
  85. package/dist/edit/odp/content.d.cts +6 -0
  86. package/dist/edit/odp/content.d.ts +6 -0
  87. package/dist/edit/odp/content.js +41 -0
  88. package/dist/edit/odp/editor.cjs +113 -0
  89. package/dist/edit/odp/editor.d.cts +20 -0
  90. package/dist/edit/odp/editor.d.ts +20 -0
  91. package/dist/edit/odp/editor.js +110 -0
  92. package/dist/edit/odp/image.cjs +10 -0
  93. package/dist/edit/odp/image.d.cts +2 -0
  94. package/dist/edit/odp/image.d.ts +2 -0
  95. package/dist/edit/odp/image.js +9 -0
  96. package/dist/edit/odp/scaffold.cjs +108 -0
  97. package/dist/edit/odp/scaffold.d.cts +7 -0
  98. package/dist/edit/odp/scaffold.d.ts +7 -0
  99. package/dist/edit/odp/scaffold.js +105 -0
  100. package/dist/edit/odp/shape.cjs +133 -0
  101. package/dist/edit/odp/shape.d.cts +2 -0
  102. package/dist/edit/odp/shape.d.ts +2 -0
  103. package/dist/edit/odp/shape.js +130 -0
  104. package/dist/edit/odp/slide.cjs +80 -0
  105. package/dist/edit/odp/slide.d.cts +31 -0
  106. package/dist/edit/odp/slide.d.ts +31 -0
  107. package/dist/edit/odp/slide.js +79 -0
  108. package/dist/edit/ods/address.cjs +108 -0
  109. package/dist/edit/ods/address.d.cts +15 -0
  110. package/dist/edit/ods/address.d.ts +15 -0
  111. package/dist/edit/ods/address.js +97 -0
  112. package/dist/edit/ods/cell.cjs +177 -0
  113. package/dist/edit/ods/cell.d.cts +2 -0
  114. package/dist/edit/ods/cell.d.ts +2 -0
  115. package/dist/edit/ods/cell.js +176 -0
  116. package/dist/edit/ods/content.cjs +26 -0
  117. package/dist/edit/ods/content.d.cts +6 -0
  118. package/dist/edit/ods/content.d.ts +6 -0
  119. package/dist/edit/ods/content.js +25 -0
  120. package/dist/edit/ods/editor.cjs +84 -0
  121. package/dist/edit/ods/editor.d.cts +17 -0
  122. package/dist/edit/ods/editor.d.ts +17 -0
  123. package/dist/edit/ods/editor.js +81 -0
  124. package/dist/edit/ods/print-settings.cjs +90 -0
  125. package/dist/edit/ods/print-settings.d.cts +7 -0
  126. package/dist/edit/ods/print-settings.d.ts +7 -0
  127. package/dist/edit/ods/print-settings.js +88 -0
  128. package/dist/edit/ods/scaffold.cjs +129 -0
  129. package/dist/edit/ods/scaffold.d.cts +9 -0
  130. package/dist/edit/ods/scaffold.d.ts +9 -0
  131. package/dist/edit/ods/scaffold.js +124 -0
  132. package/dist/edit/ods/sheet.cjs +70 -0
  133. package/dist/edit/ods/sheet.d.cts +22 -0
  134. package/dist/edit/ods/sheet.d.ts +22 -0
  135. package/dist/edit/ods/sheet.js +69 -0
  136. package/dist/edit/odt/automatic-styles.cjs +49 -0
  137. package/dist/edit/odt/automatic-styles.d.cts +8 -0
  138. package/dist/edit/odt/automatic-styles.d.ts +8 -0
  139. package/dist/edit/odt/automatic-styles.js +45 -0
  140. package/dist/edit/odt/content.cjs +110 -0
  141. package/dist/edit/odt/content.d.cts +9 -0
  142. package/dist/edit/odt/content.d.ts +9 -0
  143. package/dist/edit/odt/content.js +108 -0
  144. package/dist/edit/odt/editor.cjs +98 -0
  145. package/dist/edit/odt/editor.d.cts +25 -0
  146. package/dist/edit/odt/editor.d.ts +25 -0
  147. package/dist/edit/odt/editor.js +95 -0
  148. package/dist/edit/odt/list.cjs +82 -0
  149. package/dist/edit/odt/list.d.cts +2 -0
  150. package/dist/edit/odt/list.d.ts +2 -0
  151. package/dist/edit/odt/list.js +79 -0
  152. package/dist/edit/odt/paragraph.cjs +84 -0
  153. package/dist/edit/odt/paragraph.d.cts +2 -0
  154. package/dist/edit/odt/paragraph.d.ts +2 -0
  155. package/dist/edit/odt/paragraph.js +82 -0
  156. package/dist/edit/odt/props.cjs +26 -0
  157. package/dist/edit/odt/props.d.cts +7 -0
  158. package/dist/edit/odt/props.d.ts +7 -0
  159. package/dist/edit/odt/props.js +23 -0
  160. package/dist/edit/odt/run.cjs +82 -0
  161. package/dist/edit/odt/run.d.cts +2 -0
  162. package/dist/edit/odt/run.d.ts +2 -0
  163. package/dist/edit/odt/run.js +80 -0
  164. package/dist/edit/odt/scaffold.cjs +109 -0
  165. package/dist/edit/odt/scaffold.d.cts +5 -0
  166. package/dist/edit/odt/scaffold.d.ts +5 -0
  167. package/dist/edit/odt/scaffold.js +108 -0
  168. package/dist/edit/odt/table.cjs +123 -0
  169. package/dist/edit/odt/table.d.cts +37 -0
  170. package/dist/edit/odt/table.d.ts +37 -0
  171. package/dist/edit/odt/table.js +119 -0
  172. package/dist/edit/pptx/content.cjs +49 -0
  173. package/dist/edit/pptx/content.d.cts +6 -0
  174. package/dist/edit/pptx/content.d.ts +6 -0
  175. package/dist/edit/pptx/content.js +48 -0
  176. package/dist/edit/pptx/editor.cjs +187 -0
  177. package/dist/edit/pptx/editor.d.cts +20 -0
  178. package/dist/edit/pptx/editor.d.ts +20 -0
  179. package/dist/edit/pptx/editor.js +184 -0
  180. package/dist/edit/pptx/image.cjs +27 -0
  181. package/dist/edit/pptx/image.d.cts +2 -0
  182. package/dist/edit/pptx/image.d.ts +2 -0
  183. package/dist/edit/pptx/image.js +26 -0
  184. package/dist/edit/pptx/scaffold.cjs +292 -0
  185. package/dist/edit/pptx/scaffold.d.cts +13 -0
  186. package/dist/edit/pptx/scaffold.d.ts +13 -0
  187. package/dist/edit/pptx/scaffold.js +283 -0
  188. package/dist/edit/pptx/shape.cjs +182 -0
  189. package/dist/edit/pptx/shape.d.cts +2 -0
  190. package/dist/edit/pptx/shape.d.ts +2 -0
  191. package/dist/edit/pptx/shape.js +179 -0
  192. package/dist/edit/pptx/slide.cjs +146 -0
  193. package/dist/edit/pptx/slide.d.cts +33 -0
  194. package/dist/edit/pptx/slide.d.ts +33 -0
  195. package/dist/edit/pptx/slide.js +145 -0
  196. package/dist/firebird/backup.cjs +150 -0
  197. package/dist/firebird/backup.d.cts +21 -0
  198. package/dist/firebird/backup.d.ts +21 -0
  199. package/dist/firebird/backup.js +145 -0
  200. package/dist/firebird/blr-types.cjs +118 -0
  201. package/dist/firebird/blr-types.d.cts +2 -0
  202. package/dist/firebird/blr-types.d.ts +2 -0
  203. package/dist/firebird/blr-types.js +90 -0
  204. package/dist/firebird/data.cjs +231 -0
  205. package/dist/firebird/data.d.cts +17 -0
  206. package/dist/firebird/data.d.ts +17 -0
  207. package/dist/firebird/data.js +228 -0
  208. package/dist/firebird/date.cjs +63 -0
  209. package/dist/firebird/date.d.cts +17 -0
  210. package/dist/firebird/date.d.ts +17 -0
  211. package/dist/firebird/date.js +58 -0
  212. package/dist/firebird/reader.cjs +157 -0
  213. package/dist/firebird/reader.d.cts +2 -0
  214. package/dist/firebird/reader.d.ts +2 -0
  215. package/dist/firebird/reader.js +154 -0
  216. package/dist/firebird/schema.cjs +91 -0
  217. package/dist/firebird/schema.d.cts +2 -0
  218. package/dist/firebird/schema.d.ts +2 -0
  219. package/dist/firebird/schema.js +89 -0
  220. package/dist/geometry-DvwdrIij.d.cts +5 -0
  221. package/dist/geometry-DvwdrIij.d.ts +5 -0
  222. package/dist/hsqldb/cache.cjs +88 -0
  223. package/dist/hsqldb/cache.d.cts +13 -0
  224. package/dist/hsqldb/cache.d.ts +13 -0
  225. package/dist/hsqldb/cache.js +84 -0
  226. package/dist/hsqldb/rowformat.cjs +222 -0
  227. package/dist/hsqldb/rowformat.d.cts +21 -0
  228. package/dist/hsqldb/rowformat.d.ts +21 -0
  229. package/dist/hsqldb/rowformat.js +218 -0
  230. package/dist/hsqldb/script.cjs +450 -0
  231. package/dist/hsqldb/script.d.cts +19 -0
  232. package/dist/hsqldb/script.d.ts +19 -0
  233. package/dist/hsqldb/script.js +447 -0
  234. package/dist/image-B-xQWYYS.d.ts +16 -0
  235. package/dist/image-BZDy72Jb.d.cts +16 -0
  236. package/dist/image-BfRLAD9B.d.cts +18 -0
  237. package/dist/image-BfRLAD9B.d.ts +18 -0
  238. package/dist/image-CeqwL-Qs.d.ts +14 -0
  239. package/dist/image-DWX6cNOD.d.cts +14 -0
  240. package/dist/index.cjs +201 -10863
  241. package/dist/index.d.cts +71 -1406
  242. package/dist/index.d.ts +71 -1406
  243. package/dist/index.js +67 -10727
  244. package/dist/layout/drawing.cjs +117 -0
  245. package/dist/layout/drawing.d.cts +13 -0
  246. package/dist/layout/drawing.d.ts +13 -0
  247. package/dist/layout/drawing.js +116 -0
  248. package/dist/layout/engine.cjs +216 -0
  249. package/dist/layout/engine.d.cts +19 -0
  250. package/dist/layout/engine.d.ts +19 -0
  251. package/dist/layout/engine.js +215 -0
  252. package/dist/layout/reconstruct.cjs +809 -0
  253. package/dist/layout/reconstruct.d.cts +12 -0
  254. package/dist/layout/reconstruct.d.ts +12 -0
  255. package/dist/layout/reconstruct.js +805 -0
  256. package/dist/layout/shared.cjs +104 -0
  257. package/dist/layout/shared.d.cts +15 -0
  258. package/dist/layout/shared.d.ts +15 -0
  259. package/dist/layout/shared.js +96 -0
  260. package/dist/layout/sheets.cjs +413 -0
  261. package/dist/layout/sheets.d.cts +14 -0
  262. package/dist/layout/sheets.d.ts +14 -0
  263. package/dist/layout/sheets.js +414 -0
  264. package/dist/layout/slides.cjs +194 -0
  265. package/dist/layout/slides.d.cts +25 -0
  266. package/dist/layout/slides.d.ts +25 -0
  267. package/dist/layout/slides.js +192 -0
  268. package/dist/list-BuBM9rwQ.d.cts +24 -0
  269. package/dist/list-CvKxhy3y.d.ts +24 -0
  270. package/dist/mathml/compose.cjs +53 -0
  271. package/dist/mathml/compose.d.cts +8 -0
  272. package/dist/mathml/compose.d.ts +8 -0
  273. package/dist/mathml/compose.js +49 -0
  274. package/dist/mathml/layout-types.cjs +0 -0
  275. package/dist/mathml/layout-types.d.cts +50 -0
  276. package/dist/mathml/layout-types.d.ts +50 -0
  277. package/dist/mathml/layout-types.js +0 -0
  278. package/dist/mathml/layout.cjs +373 -0
  279. package/dist/mathml/layout.d.cts +24 -0
  280. package/dist/mathml/layout.d.ts +24 -0
  281. package/dist/mathml/layout.js +371 -0
  282. package/dist/mathml/length.cjs +41 -0
  283. package/dist/mathml/length.d.cts +4 -0
  284. package/dist/mathml/length.d.ts +4 -0
  285. package/dist/mathml/length.js +40 -0
  286. package/dist/mathml/metrics.cjs +0 -0
  287. package/dist/mathml/metrics.d.cts +44 -0
  288. package/dist/mathml/metrics.d.ts +44 -0
  289. package/dist/mathml/metrics.js +0 -0
  290. package/dist/mathml/nodes.cjs +39 -0
  291. package/dist/mathml/nodes.d.cts +2 -0
  292. package/dist/mathml/nodes.d.ts +2 -0
  293. package/dist/mathml/nodes.js +32 -0
  294. package/dist/mathml/operators.cjs +189 -0
  295. package/dist/mathml/operators.d.cts +13 -0
  296. package/dist/mathml/operators.d.ts +13 -0
  297. package/dist/mathml/operators.js +188 -0
  298. package/dist/mathml/radical.cjs +46 -0
  299. package/dist/mathml/radical.d.cts +10 -0
  300. package/dist/mathml/radical.d.ts +10 -0
  301. package/dist/mathml/radical.js +45 -0
  302. package/dist/mathml/variant.cjs +1160 -0
  303. package/dist/mathml/variant.d.cts +7 -0
  304. package/dist/mathml/variant.d.ts +7 -0
  305. package/dist/mathml/variant.js +1157 -0
  306. package/dist/model/bytes.cjs +88 -0
  307. package/dist/model/bytes.d.cts +12 -0
  308. package/dist/model/bytes.d.ts +12 -0
  309. package/dist/model/bytes.js +80 -0
  310. package/dist/model/color.cjs +26 -0
  311. package/dist/model/color.d.cts +2 -0
  312. package/dist/model/color.d.ts +2 -0
  313. package/dist/model/color.js +2 -0
  314. package/dist/model/content.cjs +34 -0
  315. package/dist/model/content.d.cts +362 -0
  316. package/dist/model/content.d.ts +362 -0
  317. package/dist/model/content.js +32 -0
  318. package/dist/model/formula.cjs +0 -0
  319. package/dist/model/formula.d.cts +8 -0
  320. package/dist/model/formula.d.ts +8 -0
  321. package/dist/model/formula.js +0 -0
  322. package/dist/model/geometry.cjs +55 -0
  323. package/dist/model/geometry.d.cts +2 -0
  324. package/dist/model/geometry.d.ts +2 -0
  325. package/dist/model/geometry.js +12 -0
  326. package/dist/model/style.cjs +20 -0
  327. package/dist/model/style.d.cts +2 -0
  328. package/dist/model/style.d.ts +2 -0
  329. package/dist/model/style.js +2 -0
  330. package/dist/model/units.cjs +55 -0
  331. package/dist/model/units.d.cts +20 -0
  332. package/dist/model/units.d.ts +20 -0
  333. package/dist/model/units.js +38 -0
  334. package/dist/nodes-pArN9ilm.d.cts +27 -0
  335. package/dist/nodes-pArN9ilm.d.ts +27 -0
  336. package/dist/odb/csv.cjs +48 -0
  337. package/dist/odb/csv.d.cts +14 -0
  338. package/dist/odb/csv.d.ts +14 -0
  339. package/dist/odb/csv.js +45 -0
  340. package/dist/odb/read.cjs +87 -0
  341. package/dist/odb/read.d.cts +15 -0
  342. package/dist/odb/read.d.ts +15 -0
  343. package/dist/odb/read.js +85 -0
  344. package/dist/odb/spreadsheet.cjs +68 -0
  345. package/dist/odb/spreadsheet.d.cts +6 -0
  346. package/dist/odb/spreadsheet.d.ts +6 -0
  347. package/dist/odb/spreadsheet.js +67 -0
  348. package/dist/odf/formula/detect.cjs +29 -0
  349. package/dist/odf/formula/detect.d.cts +12 -0
  350. package/dist/odf/formula/detect.d.ts +12 -0
  351. package/dist/odf/formula/detect.js +28 -0
  352. package/dist/odf/formula/placeholder.cjs +37 -0
  353. package/dist/odf/formula/placeholder.d.cts +14 -0
  354. package/dist/odf/formula/placeholder.d.ts +14 -0
  355. package/dist/odf/formula/placeholder.js +36 -0
  356. package/dist/odf/formula/read.cjs +32 -0
  357. package/dist/odf/formula/read.d.cts +11 -0
  358. package/dist/odf/formula/read.d.ts +11 -0
  359. package/dist/odf/formula/read.js +30 -0
  360. package/dist/odf/odg/read.cjs +15 -0
  361. package/dist/odf/odg/read.d.cts +6 -0
  362. package/dist/odf/odg/read.d.ts +6 -0
  363. package/dist/odf/odg/read.js +14 -0
  364. package/dist/odf/odp/read.cjs +45 -0
  365. package/dist/odf/odp/read.d.cts +11 -0
  366. package/dist/odf/odp/read.d.ts +11 -0
  367. package/dist/odf/odp/read.js +44 -0
  368. package/dist/odf/ods/read.cjs +15 -0
  369. package/dist/odf/ods/read.d.cts +6 -0
  370. package/dist/odf/ods/read.d.ts +6 -0
  371. package/dist/odf/ods/read.js +14 -0
  372. package/dist/odf/odt/read.cjs +43 -0
  373. package/dist/odf/odt/read.d.cts +11 -0
  374. package/dist/odf/odt/read.d.ts +11 -0
  375. package/dist/odf/odt/read.js +42 -0
  376. package/dist/odf-package/manifest.cjs +62 -0
  377. package/dist/odf-package/manifest.d.cts +2 -0
  378. package/dist/odf-package/manifest.d.ts +2 -0
  379. package/dist/odf-package/manifest.js +2 -0
  380. package/dist/odf-package/media.cjs +34 -0
  381. package/dist/odf-package/media.d.cts +8 -0
  382. package/dist/odf-package/media.d.ts +8 -0
  383. package/dist/odf-package/media.js +34 -0
  384. package/dist/ooxml/docx/read.cjs +15 -0
  385. package/dist/ooxml/docx/read.d.cts +6 -0
  386. package/dist/ooxml/docx/read.d.ts +6 -0
  387. package/dist/ooxml/docx/read.js +14 -0
  388. package/dist/ooxml/pptx/read.cjs +15 -0
  389. package/dist/ooxml/pptx/read.d.cts +6 -0
  390. package/dist/ooxml/pptx/read.d.ts +6 -0
  391. package/dist/ooxml/pptx/read.js +14 -0
  392. package/dist/opc/content-types.cjs +47 -0
  393. package/dist/opc/content-types.d.cts +7 -0
  394. package/dist/opc/content-types.d.ts +7 -0
  395. package/dist/opc/content-types.js +44 -0
  396. package/dist/opc/media.cjs +45 -0
  397. package/dist/opc/media.d.cts +10 -0
  398. package/dist/opc/media.d.ts +10 -0
  399. package/dist/opc/media.js +44 -0
  400. package/dist/opc/paths.cjs +28 -0
  401. package/dist/opc/paths.d.cts +5 -0
  402. package/dist/opc/paths.d.ts +5 -0
  403. package/dist/opc/paths.js +26 -0
  404. package/dist/opc/rels.cjs +47 -0
  405. package/dist/opc/rels.d.cts +10 -0
  406. package/dist/opc/rels.d.ts +10 -0
  407. package/dist/opc/rels.js +46 -0
  408. package/dist/paragraph-BXbXKPy3.d.cts +30 -0
  409. package/dist/paragraph-CoUi_88j.d.ts +30 -0
  410. package/dist/ports/abort.cjs +7 -0
  411. package/dist/ports/abort.d.cts +4 -0
  412. package/dist/ports/abort.d.ts +4 -0
  413. package/dist/ports/abort.js +6 -0
  414. package/dist/ports/clock.cjs +9 -0
  415. package/dist/ports/clock.d.cts +8 -0
  416. package/dist/ports/clock.d.ts +8 -0
  417. package/dist/ports/clock.js +7 -0
  418. package/dist/reader-DP0Mbaj4.d.cts +41 -0
  419. package/dist/reader-DP0Mbaj4.d.ts +41 -0
  420. package/dist/run-B3GNScJH.d.cts +38 -0
  421. package/dist/run-CJfh8rv3.d.ts +38 -0
  422. package/dist/run-D2rTWHbt.d.ts +38 -0
  423. package/dist/run-F8JN7Vy4.d.cts +38 -0
  424. package/dist/schema-Acco3Ezi.d.cts +22 -0
  425. package/dist/schema-VkAA6pF5.d.ts +22 -0
  426. package/dist/shape-BUfjw5eZ.d.cts +35 -0
  427. package/dist/shape-BfN3m52m.d.ts +30 -0
  428. package/dist/shape-CN2ycxOo.d.cts +30 -0
  429. package/dist/shape-CTkl6kt8.d.ts +35 -0
  430. package/dist/style-DkamR3aY.d.cts +2 -0
  431. package/dist/style-DkamR3aY.d.ts +2 -0
  432. package/dist/vector-ClohqsOe.d.cts +76 -0
  433. package/dist/vector-ClohqsOe.d.ts +76 -0
  434. package/dist/xml/edit.cjs +65 -0
  435. package/dist/xml/edit.d.cts +12 -0
  436. package/dist/xml/edit.d.ts +12 -0
  437. package/dist/xml/edit.js +57 -0
  438. package/dist/xml/entities.cjs +12 -0
  439. package/dist/xml/entities.d.cts +5 -0
  440. package/dist/xml/entities.d.ts +5 -0
  441. package/dist/xml/entities.js +10 -0
  442. package/dist/xml/fragment.cjs +22 -0
  443. package/dist/xml/fragment.d.cts +6 -0
  444. package/dist/xml/fragment.d.ts +6 -0
  445. package/dist/xml/fragment.js +20 -0
  446. package/dist/xml/odf-text.cjs +53 -0
  447. package/dist/xml/odf-text.d.cts +6 -0
  448. package/dist/xml/odf-text.d.ts +6 -0
  449. package/dist/xml/odf-text.js +51 -0
  450. package/dist/xml/query.cjs +33 -0
  451. package/dist/xml/query.d.cts +12 -0
  452. package/dist/xml/query.d.ts +12 -0
  453. package/dist/xml/query.js +29 -0
  454. package/package.json +9 -1
@@ -0,0 +1,124 @@
1
+ import { PAGE_SIZE_A4 } from "../../model/geometry.js";
2
+ import { el } from "../../xml/fragment.js";
3
+ import { ODF_MEDIA_TYPES, setDocumentMediaType, syncManifest, xmlnsAttributes } from "odf.js";
4
+ //#region src/edit/ods/scaffold.ts
5
+ const CONTENT_NS_PREFIXES = [
6
+ "office",
7
+ "style",
8
+ "text",
9
+ "table",
10
+ "fo"
11
+ ];
12
+ const STYLES_NS_PREFIXES = [
13
+ "office",
14
+ "style",
15
+ "table",
16
+ "fo"
17
+ ];
18
+ const META_NS_PREFIXES = [
19
+ "office",
20
+ "meta",
21
+ "dc"
22
+ ];
23
+ const OF_NAMESPACE_ATTR = { "xmlns:of": "urn:oasis:names:tc:opendocument:xmlns:of:1.2" };
24
+ const ODF_VERSION = "1.3";
25
+ const PAGE_LAYOUT_NAME = "PM1";
26
+ const MASTER_PAGE_NAME = "Standard";
27
+ const SHEET_TABLE_STYLE_NAME = "OdsTable";
28
+ const DEFAULT_SHEET_NAME = "Sheet1";
29
+ const DEFAULT_MARGIN = "2cm";
30
+ function declaration() {
31
+ return {
32
+ type: "declaration",
33
+ attributes: [
34
+ {
35
+ name: "version",
36
+ value: "1.0"
37
+ },
38
+ {
39
+ name: "encoding",
40
+ value: "UTF-8"
41
+ },
42
+ {
43
+ name: "standalone",
44
+ value: "yes"
45
+ }
46
+ ]
47
+ };
48
+ }
49
+ function buildPageLayout() {
50
+ return el("style:page-layout", { "style:name": "PM1" }, [el("style:page-layout-properties", {
51
+ "fo:page-width": `${PAGE_SIZE_A4.widthPt}pt`,
52
+ "fo:page-height": `${PAGE_SIZE_A4.heightPt}pt`,
53
+ "fo:margin-top": DEFAULT_MARGIN,
54
+ "fo:margin-right": DEFAULT_MARGIN,
55
+ "fo:margin-bottom": DEFAULT_MARGIN,
56
+ "fo:margin-left": DEFAULT_MARGIN
57
+ })]);
58
+ }
59
+ function buildStylesXml() {
60
+ return el("office:document-styles", {
61
+ ...xmlnsAttributes([...STYLES_NS_PREFIXES]),
62
+ "office:version": ODF_VERSION
63
+ }, [
64
+ el("office:styles"),
65
+ el("office:automatic-styles", {}, [buildPageLayout()]),
66
+ el("office:master-styles", {}, [el("style:master-page", {
67
+ "style:name": MASTER_PAGE_NAME,
68
+ "style:page-layout-name": "PM1"
69
+ })])
70
+ ]);
71
+ }
72
+ function buildSheetTableStyle() {
73
+ return el("style:style", {
74
+ "style:name": SHEET_TABLE_STYLE_NAME,
75
+ "style:family": "table",
76
+ "style:master-page-name": MASTER_PAGE_NAME
77
+ });
78
+ }
79
+ function buildCalculationSettings() {
80
+ return el("table:calculation-settings", {
81
+ "table:automatic-find-labels": "false",
82
+ "table:use-regular-expressions": "false",
83
+ "table:use-wildcards": "true",
84
+ "table:null-year": "1950"
85
+ });
86
+ }
87
+ function buildContentXml() {
88
+ const table = el("table:table", {
89
+ "table:name": DEFAULT_SHEET_NAME,
90
+ "table:style-name": SHEET_TABLE_STYLE_NAME
91
+ });
92
+ return el("office:document-content", {
93
+ ...xmlnsAttributes([...CONTENT_NS_PREFIXES]),
94
+ ...OF_NAMESPACE_ATTR,
95
+ "office:version": ODF_VERSION
96
+ }, [el("office:automatic-styles", {}, [buildSheetTableStyle()]), el("office:body", {}, [el("office:spreadsheet", {}, [buildCalculationSettings(), table])])]);
97
+ }
98
+ function buildMetaXml() {
99
+ return el("office:document-meta", {
100
+ ...xmlnsAttributes([...META_NS_PREFIXES]),
101
+ "office:version": ODF_VERSION
102
+ }, [el("office:meta")]);
103
+ }
104
+ function createEmptyOdsPackage() {
105
+ const pkg = { parts: {
106
+ "content.xml": {
107
+ kind: "xml",
108
+ nodes: [declaration(), buildContentXml()]
109
+ },
110
+ "styles.xml": {
111
+ kind: "xml",
112
+ nodes: [declaration(), buildStylesXml()]
113
+ },
114
+ "meta.xml": {
115
+ kind: "xml",
116
+ nodes: [declaration(), buildMetaXml()]
117
+ }
118
+ } };
119
+ setDocumentMediaType(pkg, ODF_MEDIA_TYPES.ods);
120
+ syncManifest(pkg);
121
+ return pkg;
122
+ }
123
+ //#endregion
124
+ export { DEFAULT_SHEET_NAME, MASTER_PAGE_NAME, PAGE_LAYOUT_NAME, SHEET_TABLE_STYLE_NAME, createEmptyOdsPackage };
@@ -0,0 +1,70 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_xml_edit = require("../../xml/edit.cjs");
3
+ const require_edit_ods_address = require("./address.cjs");
4
+ const require_edit_ods_cell = require("./cell.cjs");
5
+ const require_edit_ods_print_settings = require("./print-settings.cjs");
6
+ let ooxml_js = require("ooxml.js");
7
+ let odf_js = require("odf.js");
8
+ //#region src/edit/ods/sheet.ts
9
+ const NAME_ATTR = "table:name";
10
+ var OdsSheet = class {
11
+ container;
12
+ node;
13
+ pkg;
14
+ removed = false;
15
+ constructor(container, node, pkg) {
16
+ this.container = container;
17
+ this.node = node;
18
+ this.pkg = pkg;
19
+ }
20
+ live() {
21
+ if (this.removed) throw new Error("this OdsSheet has been removed from the spreadsheet and can no longer be used");
22
+ return this.node;
23
+ }
24
+ get name() {
25
+ const value = (0, ooxml_js.attr)(this.live(), NAME_ATTR);
26
+ if (value === void 0) throw new Error("this table:table element has no table:name attribute");
27
+ return value;
28
+ }
29
+ set name(value) {
30
+ require_xml_edit.setAttr(this.live(), NAME_ATTR, value);
31
+ }
32
+ get printSettings() {
33
+ return require_edit_ods_print_settings.readSheetPrintSettings(this.pkg, this.live());
34
+ }
35
+ set printSettings(value) {
36
+ require_edit_ods_print_settings.writeSheetPrintSettings(this.pkg, this.live(), value);
37
+ }
38
+ cell(row, column) {
39
+ const node = require_edit_ods_address.resolveCellNode(this.live(), row, column);
40
+ if (node.tag === "table:covered-table-cell") throw new Error(`cell (${row}, ${column}) is covered by a merged range -- address the merge's own anchor cell instead`);
41
+ return new require_edit_ods_cell.OdsCell(node, this.pkg);
42
+ }
43
+ cellAt(reference) {
44
+ const parsed = (0, odf_js.parseCellReference)(reference);
45
+ if (parsed === void 0) throw new Error(`cellAt: "${reference}" is not a valid A1-style cell reference`);
46
+ return this.cell(parsed.row, parsed.column);
47
+ }
48
+ mergeCells(startRow, startColumn, rowSpan, colSpan) {
49
+ if (!Number.isInteger(rowSpan) || rowSpan < 1 || !Number.isInteger(colSpan) || colSpan < 1) throw new Error(`mergeCells: rowSpan and colSpan must be positive integers, got rowSpan=${rowSpan}, colSpan=${colSpan}`);
50
+ const tableElement = this.live();
51
+ const anchorNode = require_edit_ods_address.resolveCellNode(tableElement, startRow, startColumn);
52
+ if (anchorNode.tag === "table:covered-table-cell") throw new Error(`mergeCells: (${startRow}, ${startColumn}) is already covered by another merged range`);
53
+ if (rowSpan > 1) require_xml_edit.setAttr(anchorNode, "table:number-rows-spanned", String(rowSpan));
54
+ if (colSpan > 1) require_xml_edit.setAttr(anchorNode, "table:number-columns-spanned", String(colSpan));
55
+ for (let rowOffset = 0; rowOffset < rowSpan; rowOffset++) for (let columnOffset = 0; columnOffset < colSpan; columnOffset++) {
56
+ if (rowOffset === 0 && columnOffset === 0) continue;
57
+ const coveredNode = require_edit_ods_address.resolveCellNode(tableElement, startRow + rowOffset, startColumn + columnOffset);
58
+ coveredNode.tag = require_edit_ods_address.COVERED_CELL_TAG;
59
+ coveredNode.attributes = [];
60
+ coveredNode.children = [];
61
+ }
62
+ return new require_edit_ods_cell.OdsCell(anchorNode, this.pkg);
63
+ }
64
+ remove() {
65
+ require_xml_edit.removeChild(this.container, this.live());
66
+ this.removed = true;
67
+ }
68
+ };
69
+ //#endregion
70
+ exports.OdsSheet = OdsSheet;
@@ -0,0 +1,22 @@
1
+ import { t as OdsCell } from "../../cell-CNHPsDEk.cjs";
2
+ import { ContentSheetPrintSettings } from "document-schema.js";
3
+ import { Package, XmlElement, XmlNode } from "odf.js";
4
+ //#region src/edit/ods/sheet.d.ts
5
+ declare class OdsSheet {
6
+ private readonly container;
7
+ private readonly node;
8
+ private readonly pkg;
9
+ private removed;
10
+ constructor(container: XmlNode[], node: XmlElement, pkg: Package);
11
+ private live;
12
+ get name(): string;
13
+ set name(value: string);
14
+ get printSettings(): ContentSheetPrintSettings;
15
+ set printSettings(value: ContentSheetPrintSettings);
16
+ cell(row: number, column: number): OdsCell;
17
+ cellAt(reference: string): OdsCell;
18
+ mergeCells(startRow: number, startColumn: number, rowSpan: number, colSpan: number): OdsCell;
19
+ remove(): void;
20
+ }
21
+ //#endregion
22
+ export { OdsSheet };
@@ -0,0 +1,22 @@
1
+ import { t as OdsCell } from "../../cell-CNHPsDEk.js";
2
+ import { ContentSheetPrintSettings } from "document-schema.js";
3
+ import { Package, XmlElement, XmlNode } from "odf.js";
4
+ //#region src/edit/ods/sheet.d.ts
5
+ declare class OdsSheet {
6
+ private readonly container;
7
+ private readonly node;
8
+ private readonly pkg;
9
+ private removed;
10
+ constructor(container: XmlNode[], node: XmlElement, pkg: Package);
11
+ private live;
12
+ get name(): string;
13
+ set name(value: string);
14
+ get printSettings(): ContentSheetPrintSettings;
15
+ set printSettings(value: ContentSheetPrintSettings);
16
+ cell(row: number, column: number): OdsCell;
17
+ cellAt(reference: string): OdsCell;
18
+ mergeCells(startRow: number, startColumn: number, rowSpan: number, colSpan: number): OdsCell;
19
+ remove(): void;
20
+ }
21
+ //#endregion
22
+ export { OdsSheet };
@@ -0,0 +1,69 @@
1
+ import { removeChild, setAttr } from "../../xml/edit.js";
2
+ import { COVERED_CELL_TAG, resolveCellNode } from "./address.js";
3
+ import { OdsCell } from "./cell.js";
4
+ import { readSheetPrintSettings, writeSheetPrintSettings } from "./print-settings.js";
5
+ import { attr } from "ooxml.js";
6
+ import { parseCellReference } from "odf.js";
7
+ //#region src/edit/ods/sheet.ts
8
+ const NAME_ATTR = "table:name";
9
+ var OdsSheet = class {
10
+ container;
11
+ node;
12
+ pkg;
13
+ removed = false;
14
+ constructor(container, node, pkg) {
15
+ this.container = container;
16
+ this.node = node;
17
+ this.pkg = pkg;
18
+ }
19
+ live() {
20
+ if (this.removed) throw new Error("this OdsSheet has been removed from the spreadsheet and can no longer be used");
21
+ return this.node;
22
+ }
23
+ get name() {
24
+ const value = attr(this.live(), NAME_ATTR);
25
+ if (value === void 0) throw new Error("this table:table element has no table:name attribute");
26
+ return value;
27
+ }
28
+ set name(value) {
29
+ setAttr(this.live(), NAME_ATTR, value);
30
+ }
31
+ get printSettings() {
32
+ return readSheetPrintSettings(this.pkg, this.live());
33
+ }
34
+ set printSettings(value) {
35
+ writeSheetPrintSettings(this.pkg, this.live(), value);
36
+ }
37
+ cell(row, column) {
38
+ const node = resolveCellNode(this.live(), row, column);
39
+ if (node.tag === "table:covered-table-cell") throw new Error(`cell (${row}, ${column}) is covered by a merged range -- address the merge's own anchor cell instead`);
40
+ return new OdsCell(node, this.pkg);
41
+ }
42
+ cellAt(reference) {
43
+ const parsed = parseCellReference(reference);
44
+ if (parsed === void 0) throw new Error(`cellAt: "${reference}" is not a valid A1-style cell reference`);
45
+ return this.cell(parsed.row, parsed.column);
46
+ }
47
+ mergeCells(startRow, startColumn, rowSpan, colSpan) {
48
+ if (!Number.isInteger(rowSpan) || rowSpan < 1 || !Number.isInteger(colSpan) || colSpan < 1) throw new Error(`mergeCells: rowSpan and colSpan must be positive integers, got rowSpan=${rowSpan}, colSpan=${colSpan}`);
49
+ const tableElement = this.live();
50
+ const anchorNode = resolveCellNode(tableElement, startRow, startColumn);
51
+ if (anchorNode.tag === "table:covered-table-cell") throw new Error(`mergeCells: (${startRow}, ${startColumn}) is already covered by another merged range`);
52
+ if (rowSpan > 1) setAttr(anchorNode, "table:number-rows-spanned", String(rowSpan));
53
+ if (colSpan > 1) setAttr(anchorNode, "table:number-columns-spanned", String(colSpan));
54
+ for (let rowOffset = 0; rowOffset < rowSpan; rowOffset++) for (let columnOffset = 0; columnOffset < colSpan; columnOffset++) {
55
+ if (rowOffset === 0 && columnOffset === 0) continue;
56
+ const coveredNode = resolveCellNode(tableElement, startRow + rowOffset, startColumn + columnOffset);
57
+ coveredNode.tag = COVERED_CELL_TAG;
58
+ coveredNode.attributes = [];
59
+ coveredNode.children = [];
60
+ }
61
+ return new OdsCell(anchorNode, this.pkg);
62
+ }
63
+ remove() {
64
+ removeChild(this.container, this.live());
65
+ this.removed = true;
66
+ }
67
+ };
68
+ //#endregion
69
+ export { OdsSheet };
@@ -0,0 +1,49 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_xml_fragment = require("../../xml/fragment.cjs");
3
+ let ooxml_js = require("ooxml.js");
4
+ //#region src/edit/odt/automatic-styles.ts
5
+ const CONTENT_PART_PATH = "content.xml";
6
+ function ensureAutomaticStyles(pkg) {
7
+ const part = pkg.parts[CONTENT_PART_PATH];
8
+ if (part?.kind !== "xml") throw new Error(`ensureAutomaticStyles: package has no ${CONTENT_PART_PATH} part`);
9
+ const root = part.nodes.find((n) => n.type === "element");
10
+ if (root === void 0) throw new Error(`ensureAutomaticStyles: ${CONTENT_PART_PATH} has no root element`);
11
+ for (const child of root.children) if (child.type === "element" && child.tag === "office:automatic-styles") return child;
12
+ const created = require_xml_fragment.el("office:automatic-styles");
13
+ const insertBeforeTags = /* @__PURE__ */ new Set([
14
+ "office:body",
15
+ "office:master-styles",
16
+ "office:settings"
17
+ ]);
18
+ const insertIndex = root.children.findIndex((n) => n.type === "element" && insertBeforeTags.has(n.tag));
19
+ if (insertIndex === -1) root.children.push(created);
20
+ else root.children.splice(insertIndex, 0, created);
21
+ return created;
22
+ }
23
+ function nextStyleName(automaticStyles, tag, prefix) {
24
+ let max = 0;
25
+ for (const child of automaticStyles.children) {
26
+ if (child.type !== "element" || child.tag !== tag) continue;
27
+ const name = (0, ooxml_js.attr)(child, "style:name");
28
+ if (!name?.startsWith(prefix)) continue;
29
+ const rest = name.slice(prefix.length);
30
+ const n = Number.parseInt(rest, 10);
31
+ if (!Number.isNaN(n) && String(n) === rest && n > max) max = n;
32
+ }
33
+ return `${prefix}${max + 1}`;
34
+ }
35
+ const PAGE_BREAK_STYLE_NAME = "OdtPageBreak";
36
+ function ensurePageBreakStyleName(pkg) {
37
+ const automaticStyles = ensureAutomaticStyles(pkg);
38
+ if (automaticStyles.children.find((c) => c.type === "element" && c.tag === "style:style" && (0, ooxml_js.attr)(c, "style:name") === PAGE_BREAK_STYLE_NAME) !== void 0) return PAGE_BREAK_STYLE_NAME;
39
+ automaticStyles.children.push(require_xml_fragment.el("style:style", {
40
+ "style:name": PAGE_BREAK_STYLE_NAME,
41
+ "style:family": "paragraph"
42
+ }, [require_xml_fragment.el("style:paragraph-properties", { "fo:break-before": "page" })]));
43
+ return PAGE_BREAK_STYLE_NAME;
44
+ }
45
+ //#endregion
46
+ exports.CONTENT_PART_PATH = CONTENT_PART_PATH;
47
+ exports.ensureAutomaticStyles = ensureAutomaticStyles;
48
+ exports.ensurePageBreakStyleName = ensurePageBreakStyleName;
49
+ exports.nextStyleName = nextStyleName;
@@ -0,0 +1,8 @@
1
+ import { Package, XmlElement } from "odf.js";
2
+ //#region src/edit/odt/automatic-styles.d.ts
3
+ declare const CONTENT_PART_PATH = "content.xml";
4
+ declare function ensureAutomaticStyles(pkg: Package): XmlElement;
5
+ declare function nextStyleName(automaticStyles: XmlElement, tag: string, prefix: string): string;
6
+ declare function ensurePageBreakStyleName(pkg: Package): string;
7
+ //#endregion
8
+ export { CONTENT_PART_PATH, ensureAutomaticStyles, ensurePageBreakStyleName, nextStyleName };
@@ -0,0 +1,8 @@
1
+ import { Package, XmlElement } from "odf.js";
2
+ //#region src/edit/odt/automatic-styles.d.ts
3
+ declare const CONTENT_PART_PATH = "content.xml";
4
+ declare function ensureAutomaticStyles(pkg: Package): XmlElement;
5
+ declare function nextStyleName(automaticStyles: XmlElement, tag: string, prefix: string): string;
6
+ declare function ensurePageBreakStyleName(pkg: Package): string;
7
+ //#endregion
8
+ export { CONTENT_PART_PATH, ensureAutomaticStyles, ensurePageBreakStyleName, nextStyleName };
@@ -0,0 +1,45 @@
1
+ import { el } from "../../xml/fragment.js";
2
+ import { attr } from "ooxml.js";
3
+ //#region src/edit/odt/automatic-styles.ts
4
+ const CONTENT_PART_PATH = "content.xml";
5
+ function ensureAutomaticStyles(pkg) {
6
+ const part = pkg.parts[CONTENT_PART_PATH];
7
+ if (part?.kind !== "xml") throw new Error(`ensureAutomaticStyles: package has no ${CONTENT_PART_PATH} part`);
8
+ const root = part.nodes.find((n) => n.type === "element");
9
+ if (root === void 0) throw new Error(`ensureAutomaticStyles: ${CONTENT_PART_PATH} has no root element`);
10
+ for (const child of root.children) if (child.type === "element" && child.tag === "office:automatic-styles") return child;
11
+ const created = el("office:automatic-styles");
12
+ const insertBeforeTags = /* @__PURE__ */ new Set([
13
+ "office:body",
14
+ "office:master-styles",
15
+ "office:settings"
16
+ ]);
17
+ const insertIndex = root.children.findIndex((n) => n.type === "element" && insertBeforeTags.has(n.tag));
18
+ if (insertIndex === -1) root.children.push(created);
19
+ else root.children.splice(insertIndex, 0, created);
20
+ return created;
21
+ }
22
+ function nextStyleName(automaticStyles, tag, prefix) {
23
+ let max = 0;
24
+ for (const child of automaticStyles.children) {
25
+ if (child.type !== "element" || child.tag !== tag) continue;
26
+ const name = attr(child, "style:name");
27
+ if (!name?.startsWith(prefix)) continue;
28
+ const rest = name.slice(prefix.length);
29
+ const n = Number.parseInt(rest, 10);
30
+ if (!Number.isNaN(n) && String(n) === rest && n > max) max = n;
31
+ }
32
+ return `${prefix}${max + 1}`;
33
+ }
34
+ const PAGE_BREAK_STYLE_NAME = "OdtPageBreak";
35
+ function ensurePageBreakStyleName(pkg) {
36
+ const automaticStyles = ensureAutomaticStyles(pkg);
37
+ if (automaticStyles.children.find((c) => c.type === "element" && c.tag === "style:style" && attr(c, "style:name") === PAGE_BREAK_STYLE_NAME) !== void 0) return PAGE_BREAK_STYLE_NAME;
38
+ automaticStyles.children.push(el("style:style", {
39
+ "style:name": PAGE_BREAK_STYLE_NAME,
40
+ "style:family": "paragraph"
41
+ }, [el("style:paragraph-properties", { "fo:break-before": "page" })]));
42
+ return PAGE_BREAK_STYLE_NAME;
43
+ }
44
+ //#endregion
45
+ export { CONTENT_PART_PATH, ensureAutomaticStyles, ensurePageBreakStyleName, nextStyleName };
@@ -0,0 +1,110 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_edit_odt_editor = require("./editor.cjs");
3
+ //#region src/edit/odt/content.ts
4
+ function buildOdtPackage(content) {
5
+ if (content.kind !== "wordprocessing") throw new Error("buildOdtPackage requires a wordprocessing ContentDocument");
6
+ const editor = require_edit_odt_editor.createOdt();
7
+ content.sections.forEach((section, sectionIndex) => {
8
+ if (sectionIndex > 0) editor.body.appendPageBreak();
9
+ appendBlocks(editor.body, section.blocks);
10
+ });
11
+ return editor.toPackage();
12
+ }
13
+ function appendBlocks(body, blocks) {
14
+ let i = 0;
15
+ while (i < blocks.length) {
16
+ const block = blocks[i];
17
+ if (block === void 0) {
18
+ i++;
19
+ continue;
20
+ }
21
+ if (block.kind === "paragraph" && block.list !== void 0) {
22
+ const run = [];
23
+ while (i < blocks.length) {
24
+ const candidate = blocks[i];
25
+ if (candidate?.kind !== "paragraph" || candidate.list === void 0) break;
26
+ run.push(candidate);
27
+ i++;
28
+ }
29
+ appendListRun(body, run);
30
+ continue;
31
+ }
32
+ appendBlock(body, block);
33
+ i++;
34
+ }
35
+ }
36
+ function appendListRun(body, paragraphs) {
37
+ let stack = [];
38
+ let lastItem;
39
+ let activeNumId;
40
+ for (const para of paragraphs) {
41
+ const membership = para.list;
42
+ if (membership === void 0) continue;
43
+ if (activeNumId === void 0 || membership.numId !== activeNumId) {
44
+ stack = [body.appendList()];
45
+ lastItem = void 0;
46
+ activeNumId = membership.numId;
47
+ }
48
+ const targetLevel = lastItem === void 0 ? 0 : membership.level;
49
+ while (stack.length - 1 < targetLevel && lastItem !== void 0) {
50
+ stack.push(lastItem.addNestedList());
51
+ lastItem = void 0;
52
+ }
53
+ while (stack.length - 1 > targetLevel) stack.pop();
54
+ const currentList = stack[stack.length - 1];
55
+ if (currentList === void 0) continue;
56
+ const item = currentList.addItem();
57
+ populateParagraph(item.appendParagraph(), para);
58
+ lastItem = item;
59
+ }
60
+ }
61
+ function populateParagraph(paragraph, block) {
62
+ if (block.styleId !== void 0) paragraph.styleId = block.styleId;
63
+ if (block.alignment !== void 0) paragraph.alignment = block.alignment;
64
+ for (const run of block.runs) {
65
+ if (run.text === " ") {
66
+ paragraph.appendTab();
67
+ continue;
68
+ }
69
+ const odtRun = paragraph.appendRun({ text: run.text });
70
+ if (run.bold === true) odtRun.bold = true;
71
+ if (run.italic === true) odtRun.italic = true;
72
+ if (run.underline === true) odtRun.underline = true;
73
+ if (run.fontFamily !== void 0) odtRun.fontFamily = run.fontFamily;
74
+ if (run.sizePt !== void 0) odtRun.sizePt = run.sizePt;
75
+ if (run.color !== void 0) odtRun.color = run.color;
76
+ }
77
+ }
78
+ function appendTable(body, block) {
79
+ const columns = block.columnWidthsPt.length;
80
+ if (block.rows.length === 0 || columns === 0) return;
81
+ const table = body.appendTable({
82
+ rows: block.rows.length,
83
+ columns,
84
+ columnWidthsPt: block.columnWidthsPt
85
+ });
86
+ block.rows.forEach((row, rowIndex) => {
87
+ const tableRow = table.rows()[rowIndex];
88
+ if (tableRow === void 0) return;
89
+ row.cells.forEach((cell, cellIndex) => {
90
+ const tableCell = tableRow.cells()[cellIndex];
91
+ if (tableCell === void 0) return;
92
+ const [firstBlock, ...restBlocks] = cell.blocks;
93
+ const firstParagraph = tableCell.paragraphs()[0];
94
+ if (firstBlock?.kind === "paragraph" && firstParagraph !== void 0) populateParagraph(firstParagraph, firstBlock);
95
+ else if (firstBlock !== void 0) appendCellBlock(tableCell, firstBlock);
96
+ for (const remaining of restBlocks) appendCellBlock(tableCell, remaining);
97
+ });
98
+ });
99
+ }
100
+ function appendCellBlock(cell, block) {
101
+ if (block.kind === "paragraph") populateParagraph(cell.appendParagraph(), block);
102
+ }
103
+ function appendBlock(body, block) {
104
+ if (block.kind === "paragraph") populateParagraph(body.appendParagraph(), block);
105
+ else if (block.kind === "pageBreak") body.appendPageBreak();
106
+ else if (block.kind === "table") appendTable(body, block);
107
+ }
108
+ //#endregion
109
+ exports.buildOdtPackage = buildOdtPackage;
110
+ exports.populateParagraph = populateParagraph;
@@ -0,0 +1,9 @@
1
+ import { ContentDocument } from "../../model/content.cjs";
2
+ import { t as OdtParagraph } from "../../paragraph-BXbXKPy3.cjs";
3
+ import { ContentParagraph } from "document-schema.js";
4
+ import { Package } from "odf.js";
5
+ //#region src/edit/odt/content.d.ts
6
+ declare function buildOdtPackage(content: ContentDocument): Package;
7
+ declare function populateParagraph(paragraph: OdtParagraph, block: ContentParagraph): void;
8
+ //#endregion
9
+ export { buildOdtPackage, populateParagraph };
@@ -0,0 +1,9 @@
1
+ import { ContentDocument } from "../../model/content.js";
2
+ import { t as OdtParagraph } from "../../paragraph-CoUi_88j.js";
3
+ import { ContentParagraph } from "document-schema.js";
4
+ import { Package } from "odf.js";
5
+ //#region src/edit/odt/content.d.ts
6
+ declare function buildOdtPackage(content: ContentDocument): Package;
7
+ declare function populateParagraph(paragraph: OdtParagraph, block: ContentParagraph): void;
8
+ //#endregion
9
+ export { buildOdtPackage, populateParagraph };
@@ -0,0 +1,108 @@
1
+ import { createOdt } from "./editor.js";
2
+ //#region src/edit/odt/content.ts
3
+ function buildOdtPackage(content) {
4
+ if (content.kind !== "wordprocessing") throw new Error("buildOdtPackage requires a wordprocessing ContentDocument");
5
+ const editor = createOdt();
6
+ content.sections.forEach((section, sectionIndex) => {
7
+ if (sectionIndex > 0) editor.body.appendPageBreak();
8
+ appendBlocks(editor.body, section.blocks);
9
+ });
10
+ return editor.toPackage();
11
+ }
12
+ function appendBlocks(body, blocks) {
13
+ let i = 0;
14
+ while (i < blocks.length) {
15
+ const block = blocks[i];
16
+ if (block === void 0) {
17
+ i++;
18
+ continue;
19
+ }
20
+ if (block.kind === "paragraph" && block.list !== void 0) {
21
+ const run = [];
22
+ while (i < blocks.length) {
23
+ const candidate = blocks[i];
24
+ if (candidate?.kind !== "paragraph" || candidate.list === void 0) break;
25
+ run.push(candidate);
26
+ i++;
27
+ }
28
+ appendListRun(body, run);
29
+ continue;
30
+ }
31
+ appendBlock(body, block);
32
+ i++;
33
+ }
34
+ }
35
+ function appendListRun(body, paragraphs) {
36
+ let stack = [];
37
+ let lastItem;
38
+ let activeNumId;
39
+ for (const para of paragraphs) {
40
+ const membership = para.list;
41
+ if (membership === void 0) continue;
42
+ if (activeNumId === void 0 || membership.numId !== activeNumId) {
43
+ stack = [body.appendList()];
44
+ lastItem = void 0;
45
+ activeNumId = membership.numId;
46
+ }
47
+ const targetLevel = lastItem === void 0 ? 0 : membership.level;
48
+ while (stack.length - 1 < targetLevel && lastItem !== void 0) {
49
+ stack.push(lastItem.addNestedList());
50
+ lastItem = void 0;
51
+ }
52
+ while (stack.length - 1 > targetLevel) stack.pop();
53
+ const currentList = stack[stack.length - 1];
54
+ if (currentList === void 0) continue;
55
+ const item = currentList.addItem();
56
+ populateParagraph(item.appendParagraph(), para);
57
+ lastItem = item;
58
+ }
59
+ }
60
+ function populateParagraph(paragraph, block) {
61
+ if (block.styleId !== void 0) paragraph.styleId = block.styleId;
62
+ if (block.alignment !== void 0) paragraph.alignment = block.alignment;
63
+ for (const run of block.runs) {
64
+ if (run.text === " ") {
65
+ paragraph.appendTab();
66
+ continue;
67
+ }
68
+ const odtRun = paragraph.appendRun({ text: run.text });
69
+ if (run.bold === true) odtRun.bold = true;
70
+ if (run.italic === true) odtRun.italic = true;
71
+ if (run.underline === true) odtRun.underline = true;
72
+ if (run.fontFamily !== void 0) odtRun.fontFamily = run.fontFamily;
73
+ if (run.sizePt !== void 0) odtRun.sizePt = run.sizePt;
74
+ if (run.color !== void 0) odtRun.color = run.color;
75
+ }
76
+ }
77
+ function appendTable(body, block) {
78
+ const columns = block.columnWidthsPt.length;
79
+ if (block.rows.length === 0 || columns === 0) return;
80
+ const table = body.appendTable({
81
+ rows: block.rows.length,
82
+ columns,
83
+ columnWidthsPt: block.columnWidthsPt
84
+ });
85
+ block.rows.forEach((row, rowIndex) => {
86
+ const tableRow = table.rows()[rowIndex];
87
+ if (tableRow === void 0) return;
88
+ row.cells.forEach((cell, cellIndex) => {
89
+ const tableCell = tableRow.cells()[cellIndex];
90
+ if (tableCell === void 0) return;
91
+ const [firstBlock, ...restBlocks] = cell.blocks;
92
+ const firstParagraph = tableCell.paragraphs()[0];
93
+ if (firstBlock?.kind === "paragraph" && firstParagraph !== void 0) populateParagraph(firstParagraph, firstBlock);
94
+ else if (firstBlock !== void 0) appendCellBlock(tableCell, firstBlock);
95
+ for (const remaining of restBlocks) appendCellBlock(tableCell, remaining);
96
+ });
97
+ });
98
+ }
99
+ function appendCellBlock(cell, block) {
100
+ if (block.kind === "paragraph") populateParagraph(cell.appendParagraph(), block);
101
+ }
102
+ function appendBlock(body, block) {
103
+ if (block.kind === "paragraph") populateParagraph(body.appendParagraph(), block);
104
+ else if (block.kind === "pageBreak") body.appendPageBreak();
105
+ else if (block.kind === "table") appendTable(body, block);
106
+ }
107
+ //#endregion
108
+ export { buildOdtPackage, populateParagraph };