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,27 @@
1
+ //#region src/mathml/nodes.d.ts
2
+ interface MathMlAttribute {
3
+ readonly name: string;
4
+ readonly value: string;
5
+ }
6
+ interface MathMlElement {
7
+ readonly type: 'element';
8
+ readonly tag: string;
9
+ readonly attributes: readonly MathMlAttribute[];
10
+ readonly children: readonly MathMlNode[];
11
+ }
12
+ interface MathMlText {
13
+ readonly type: 'text';
14
+ readonly value: string;
15
+ }
16
+ type MathMlNode = MathMlElement | MathMlText | {
17
+ readonly type: 'cdata' | 'comment' | 'declaration' | 'pi';
18
+ };
19
+ declare function isMathMlElement(node: MathMlNode): node is MathMlElement;
20
+ declare function localName(tag: string): string;
21
+ declare function elementLocalName(element: MathMlElement): string;
22
+ declare function attrValue(element: MathMlElement, name: string): string | undefined;
23
+ declare function elementChildren(node: MathMlElement): readonly MathMlElement[];
24
+ declare function firstChildByLocalName(node: MathMlElement, name: string): MathMlElement | undefined;
25
+ declare function textContent(node: MathMlNode): string;
26
+ //#endregion
27
+ export { attrValue as a, firstChildByLocalName as c, textContent as d, MathMlText as i, isMathMlElement as l, MathMlElement as n, elementChildren as o, MathMlNode as r, elementLocalName as s, MathMlAttribute as t, localName as u };
@@ -0,0 +1,27 @@
1
+ //#region src/mathml/nodes.d.ts
2
+ interface MathMlAttribute {
3
+ readonly name: string;
4
+ readonly value: string;
5
+ }
6
+ interface MathMlElement {
7
+ readonly type: 'element';
8
+ readonly tag: string;
9
+ readonly attributes: readonly MathMlAttribute[];
10
+ readonly children: readonly MathMlNode[];
11
+ }
12
+ interface MathMlText {
13
+ readonly type: 'text';
14
+ readonly value: string;
15
+ }
16
+ type MathMlNode = MathMlElement | MathMlText | {
17
+ readonly type: 'cdata' | 'comment' | 'declaration' | 'pi';
18
+ };
19
+ declare function isMathMlElement(node: MathMlNode): node is MathMlElement;
20
+ declare function localName(tag: string): string;
21
+ declare function elementLocalName(element: MathMlElement): string;
22
+ declare function attrValue(element: MathMlElement, name: string): string | undefined;
23
+ declare function elementChildren(node: MathMlElement): readonly MathMlElement[];
24
+ declare function firstChildByLocalName(node: MathMlElement, name: string): MathMlElement | undefined;
25
+ declare function textContent(node: MathMlNode): string;
26
+ //#endregion
27
+ export { attrValue as a, firstChildByLocalName as c, textContent as d, MathMlText as i, isMathMlElement as l, MathMlElement as n, elementChildren as o, MathMlNode as r, elementLocalName as s, MathMlAttribute as t, localName as u };
@@ -0,0 +1,48 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_hsqldb_script = require("../hsqldb/script.cjs");
3
+ //#region src/odb/csv.ts
4
+ var OdbTableNotSpecifiedError = class extends Error {
5
+ availableTables;
6
+ constructor(availableTables) {
7
+ super(`odbToCsv: this .odb has more than one table (${availableTables.join(", ")}) -- pass { table: '<name>' } to select one`);
8
+ this.name = "OdbTableNotSpecifiedError";
9
+ this.availableTables = availableTables;
10
+ }
11
+ };
12
+ var OdbTableNotFoundError = class extends Error {
13
+ table;
14
+ availableTables;
15
+ constructor(table, availableTables) {
16
+ super(`odbToCsv: table "${table}" not found -- available table(s): ${availableTables.length === 0 ? "(none)" : availableTables.join(", ")}`);
17
+ this.name = "OdbTableNotFoundError";
18
+ this.table = table;
19
+ this.availableTables = availableTables;
20
+ }
21
+ };
22
+ const CSV_QUOTE_NEEDED_RE = /[",\n\r]/;
23
+ function csvField(value) {
24
+ return CSV_QUOTE_NEEDED_RE.test(value) ? `"${value.replace(/"/g, "\"\"")}"` : value;
25
+ }
26
+ function selectTable(tables, tableName) {
27
+ const availableNames = tables.map((table) => table.tableName);
28
+ if (tableName !== void 0) {
29
+ const found = tables.find((table) => table.tableName === tableName);
30
+ if (found === void 0) throw new OdbTableNotFoundError(tableName, availableNames);
31
+ return found;
32
+ }
33
+ if (tables.length === 0) throw new OdbTableNotFoundError("(unspecified)", availableNames);
34
+ if (tables.length > 1) throw new OdbTableNotSpecifiedError(availableNames);
35
+ const only = tables[0];
36
+ if (only === void 0) throw new OdbTableNotFoundError("(unspecified)", availableNames);
37
+ return only;
38
+ }
39
+ function buildOdbTableCsv(tables, tableName) {
40
+ const table = selectTable(tables, tableName);
41
+ const lines = [table.columns.map((column) => csvField(column.name)).join(",")];
42
+ for (const row of table.rows) lines.push(row.map((cell) => csvField(require_hsqldb_script.displayTextFor(cell))).join(","));
43
+ return new TextEncoder().encode(`${lines.join("\r\n")}\r\n`);
44
+ }
45
+ //#endregion
46
+ exports.OdbTableNotFoundError = OdbTableNotFoundError;
47
+ exports.OdbTableNotSpecifiedError = OdbTableNotSpecifiedError;
48
+ exports.buildOdbTableCsv = buildOdbTableCsv;
@@ -0,0 +1,14 @@
1
+ import { HsqldbTable } from "../hsqldb/script.cjs";
2
+ //#region src/odb/csv.d.ts
3
+ declare class OdbTableNotSpecifiedError extends Error {
4
+ readonly availableTables: readonly string[];
5
+ constructor(availableTables: readonly string[]);
6
+ }
7
+ declare class OdbTableNotFoundError extends Error {
8
+ readonly table: string;
9
+ readonly availableTables: readonly string[];
10
+ constructor(table: string, availableTables: readonly string[]);
11
+ }
12
+ declare function buildOdbTableCsv(tables: readonly HsqldbTable[], tableName: string | undefined): Uint8Array<ArrayBuffer>;
13
+ //#endregion
14
+ export { OdbTableNotFoundError, OdbTableNotSpecifiedError, buildOdbTableCsv };
@@ -0,0 +1,14 @@
1
+ import { HsqldbTable } from "../hsqldb/script.js";
2
+ //#region src/odb/csv.d.ts
3
+ declare class OdbTableNotSpecifiedError extends Error {
4
+ readonly availableTables: readonly string[];
5
+ constructor(availableTables: readonly string[]);
6
+ }
7
+ declare class OdbTableNotFoundError extends Error {
8
+ readonly table: string;
9
+ readonly availableTables: readonly string[];
10
+ constructor(table: string, availableTables: readonly string[]);
11
+ }
12
+ declare function buildOdbTableCsv(tables: readonly HsqldbTable[], tableName: string | undefined): Uint8Array<ArrayBuffer>;
13
+ //#endregion
14
+ export { OdbTableNotFoundError, OdbTableNotSpecifiedError, buildOdbTableCsv };
@@ -0,0 +1,45 @@
1
+ import { displayTextFor } from "../hsqldb/script.js";
2
+ //#region src/odb/csv.ts
3
+ var OdbTableNotSpecifiedError = class extends Error {
4
+ availableTables;
5
+ constructor(availableTables) {
6
+ super(`odbToCsv: this .odb has more than one table (${availableTables.join(", ")}) -- pass { table: '<name>' } to select one`);
7
+ this.name = "OdbTableNotSpecifiedError";
8
+ this.availableTables = availableTables;
9
+ }
10
+ };
11
+ var OdbTableNotFoundError = class extends Error {
12
+ table;
13
+ availableTables;
14
+ constructor(table, availableTables) {
15
+ super(`odbToCsv: table "${table}" not found -- available table(s): ${availableTables.length === 0 ? "(none)" : availableTables.join(", ")}`);
16
+ this.name = "OdbTableNotFoundError";
17
+ this.table = table;
18
+ this.availableTables = availableTables;
19
+ }
20
+ };
21
+ const CSV_QUOTE_NEEDED_RE = /[",\n\r]/;
22
+ function csvField(value) {
23
+ return CSV_QUOTE_NEEDED_RE.test(value) ? `"${value.replace(/"/g, "\"\"")}"` : value;
24
+ }
25
+ function selectTable(tables, tableName) {
26
+ const availableNames = tables.map((table) => table.tableName);
27
+ if (tableName !== void 0) {
28
+ const found = tables.find((table) => table.tableName === tableName);
29
+ if (found === void 0) throw new OdbTableNotFoundError(tableName, availableNames);
30
+ return found;
31
+ }
32
+ if (tables.length === 0) throw new OdbTableNotFoundError("(unspecified)", availableNames);
33
+ if (tables.length > 1) throw new OdbTableNotSpecifiedError(availableNames);
34
+ const only = tables[0];
35
+ if (only === void 0) throw new OdbTableNotFoundError("(unspecified)", availableNames);
36
+ return only;
37
+ }
38
+ function buildOdbTableCsv(tables, tableName) {
39
+ const table = selectTable(tables, tableName);
40
+ const lines = [table.columns.map((column) => csvField(column.name)).join(",")];
41
+ for (const row of table.rows) lines.push(row.map((cell) => csvField(displayTextFor(cell))).join(","));
42
+ return new TextEncoder().encode(`${lines.join("\r\n")}\r\n`);
43
+ }
44
+ //#endregion
45
+ export { OdbTableNotFoundError, OdbTableNotSpecifiedError, buildOdbTableCsv };
@@ -0,0 +1,87 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_hsqldb_script = require("../hsqldb/script.cjs");
3
+ const require_hsqldb_cache = require("../hsqldb/cache.cjs");
4
+ const require_firebird_backup = require("../firebird/backup.cjs");
5
+ let odf_js = require("odf.js");
6
+ //#region src/odb/read.ts
7
+ var OdbNoEmbeddedDataSourceError = class extends Error {
8
+ url;
9
+ constructor(url) {
10
+ super(url === void 0 ? "readOdbTables: this .odb package has no embedded data source -- its office:database has no db:data-source/db:connection-data at all, so embedded vs external cannot be determined" : `readOdbTables: this .odb package has no embedded data source -- its connection ("${url}") points at an external datasource (MySQL/PostgreSQL/JDBC/ODBC or similar), which is permanently out of scope for readOdbTables`);
11
+ this.name = "OdbNoEmbeddedDataSourceError";
12
+ this.url = url;
13
+ }
14
+ };
15
+ var OdbUnsupportedFormatError = class extends Error {
16
+ format;
17
+ constructor(format, detail) {
18
+ super(`readOdbTables: ${detail} is not yet supported`);
19
+ this.name = "OdbUnsupportedFormatError";
20
+ this.format = format;
21
+ }
22
+ };
23
+ const DATABASE_SCRIPT_PART = "database/script";
24
+ const DATABASE_DATA_PART = "database/data";
25
+ const DATABASE_PROPERTIES_PART = "database/properties";
26
+ const DATABASE_FIREBIRD_PART = "database/firebird.fbk";
27
+ function isXmlMediaType(mediaType) {
28
+ return mediaType === "text/xml" || mediaType === "application/xml" || mediaType.endsWith("+xml");
29
+ }
30
+ function isZlibHeader(bytes) {
31
+ if (bytes.length < 2) return false;
32
+ const cmf = bytes[0];
33
+ const flg = bytes[1];
34
+ if (cmf === void 0 || flg === void 0) return false;
35
+ return (cmf & 15) === 8 && (cmf * 256 + flg) % 31 === 0;
36
+ }
37
+ function classifyScriptBytes(bytes) {
38
+ if (isZlibHeader(bytes)) return "compressed";
39
+ for (const byte of bytes) if (byte < 32 && byte !== 9 && byte !== 10 && byte !== 13) return "binary";
40
+ try {
41
+ new TextDecoder("utf-8", { fatal: true }).decode(bytes);
42
+ } catch {
43
+ return "binary";
44
+ }
45
+ return "text";
46
+ }
47
+ function readOdbTables(pkg) {
48
+ const inventory = (0, odf_js.readOdbInventory)(pkg);
49
+ if (inventory.connection === void 0 || inventory.connection.type === "external") throw new OdbNoEmbeddedDataSourceError(inventory.connection?.url);
50
+ const url = inventory.connection.url;
51
+ if (url === void 0) throw new OdbUnsupportedFormatError("unrecognised-engine", "an embedded connection with no connection url to identify its engine");
52
+ const engine = url.slice(14);
53
+ if (engine === "firebird") {
54
+ const firebirdPart = pkg.parts[DATABASE_FIREBIRD_PART];
55
+ if (firebirdPart === void 0) throw new OdbUnsupportedFormatError("unrecognised-engine", `an embedded Firebird engine with no ${DATABASE_FIREBIRD_PART} part -- an unrecognised embedded storage shape`);
56
+ if (firebirdPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_FIREBIRD_PART} is not a binary part (found kind "${firebirdPart.kind}") -- malformed .odb package`);
57
+ const backupBytes = (0, odf_js.base64ToBytes)(firebirdPart.base64);
58
+ return require_firebird_backup.readFirebirdBackup(backupBytes).tables;
59
+ }
60
+ if (engine !== "hsqldb") throw new OdbUnsupportedFormatError("unrecognised-engine", `the embedded "${engine}" database engine`);
61
+ const manifestEntry = (0, odf_js.readManifest)(pkg).entries.find((entry) => entry.fullPath === DATABASE_SCRIPT_PART);
62
+ if (manifestEntry !== void 0 && isXmlMediaType(manifestEntry.mediaType)) throw new Error(`readOdbTables: ${DATABASE_SCRIPT_PART} is declared as an XML sub-document in the manifest (media type "${manifestEntry.mediaType}") -- not a recognised HSQLDB script part`);
63
+ const scriptPart = pkg.parts[DATABASE_SCRIPT_PART];
64
+ if (scriptPart === void 0) throw new OdbUnsupportedFormatError("unrecognised-engine", `an embedded HSQLDB engine with no ${DATABASE_SCRIPT_PART} part -- an unrecognised embedded storage shape`);
65
+ if (scriptPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_SCRIPT_PART} is not a binary part (found kind "${scriptPart.kind}") -- malformed .odb package`);
66
+ const scriptBytes = (0, odf_js.base64ToBytes)(scriptPart.base64);
67
+ const classification = classifyScriptBytes(scriptBytes);
68
+ if (classification === "compressed") throw new OdbUnsupportedFormatError("hsqldb-compressed", "HSQLDB's compressed whole-script format (hsqldb.script_format=3) -- a zlib-wrapped copy of the same length-prefixed binary DDL/DML statement encoding hsqldb.script_format=1 uses, not compressed SQL text");
69
+ if (classification === "binary") throw new OdbUnsupportedFormatError("hsqldb-binary", "HSQLDB's binary whole-script format (hsqldb.script_format=1) -- a length-prefixed, COMMAND-tagged binary encoding of the script's own DDL/DML statements themselves, a materially different and larger undertaking than CACHED-table row-store decoding (Tier 2)");
70
+ return withCachedTableRows(pkg, require_hsqldb_script.parseHsqldbScript(scriptBytes), scriptBytes);
71
+ }
72
+ function withCachedTableRows(pkg, tables, scriptBytes) {
73
+ const dataPart = pkg.parts[DATABASE_DATA_PART];
74
+ if (dataPart === void 0) return tables;
75
+ if (dataPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_DATA_PART} is not a binary part (found kind "${dataPart.kind}") -- malformed .odb package`);
76
+ const propertiesPart = pkg.parts[DATABASE_PROPERTIES_PART];
77
+ if (propertiesPart === void 0) throw new Error(`readOdbTables: ${DATABASE_DATA_PART} is present but ${DATABASE_PROPERTIES_PART} is not -- malformed .odb package (a CACHED-table row store always ships alongside its own properties file, which this decoder needs for the cache file's own scale)`);
78
+ if (propertiesPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_PROPERTIES_PART} is not a binary part (found kind "${propertiesPart.kind}") -- malformed .odb package`);
79
+ const scriptText = new TextDecoder("utf-8", { fatal: true }).decode(scriptBytes);
80
+ const dataBytes = (0, odf_js.base64ToBytes)(dataPart.base64);
81
+ const propertiesText = new TextDecoder("utf-8", { fatal: true }).decode((0, odf_js.base64ToBytes)(propertiesPart.base64));
82
+ return require_hsqldb_cache.decodeHsqldbCachedTables(tables, scriptText, dataBytes, propertiesText);
83
+ }
84
+ //#endregion
85
+ exports.OdbNoEmbeddedDataSourceError = OdbNoEmbeddedDataSourceError;
86
+ exports.OdbUnsupportedFormatError = OdbUnsupportedFormatError;
87
+ exports.readOdbTables = readOdbTables;
@@ -0,0 +1,15 @@
1
+ import { HsqldbTable } from "../hsqldb/script.cjs";
2
+ import { Package } from "odf.js";
3
+ //#region src/odb/read.d.ts
4
+ declare class OdbNoEmbeddedDataSourceError extends Error {
5
+ readonly url: string | undefined;
6
+ constructor(url: string | undefined);
7
+ }
8
+ type OdbUnsupportedFormat = 'hsqldb-binary' | 'hsqldb-compressed' | 'unrecognised-engine';
9
+ declare class OdbUnsupportedFormatError extends Error {
10
+ readonly format: OdbUnsupportedFormat;
11
+ constructor(format: OdbUnsupportedFormat, detail: string);
12
+ }
13
+ declare function readOdbTables(pkg: Package): readonly HsqldbTable[];
14
+ //#endregion
15
+ export { OdbNoEmbeddedDataSourceError, OdbUnsupportedFormat, OdbUnsupportedFormatError, readOdbTables };
@@ -0,0 +1,15 @@
1
+ import { HsqldbTable } from "../hsqldb/script.js";
2
+ import { Package } from "odf.js";
3
+ //#region src/odb/read.d.ts
4
+ declare class OdbNoEmbeddedDataSourceError extends Error {
5
+ readonly url: string | undefined;
6
+ constructor(url: string | undefined);
7
+ }
8
+ type OdbUnsupportedFormat = 'hsqldb-binary' | 'hsqldb-compressed' | 'unrecognised-engine';
9
+ declare class OdbUnsupportedFormatError extends Error {
10
+ readonly format: OdbUnsupportedFormat;
11
+ constructor(format: OdbUnsupportedFormat, detail: string);
12
+ }
13
+ declare function readOdbTables(pkg: Package): readonly HsqldbTable[];
14
+ //#endregion
15
+ export { OdbNoEmbeddedDataSourceError, OdbUnsupportedFormat, OdbUnsupportedFormatError, readOdbTables };
@@ -0,0 +1,85 @@
1
+ import { readManifest } from "../odf-package/manifest.js";
2
+ import { parseHsqldbScript } from "../hsqldb/script.js";
3
+ import { decodeHsqldbCachedTables } from "../hsqldb/cache.js";
4
+ import { readFirebirdBackup } from "../firebird/backup.js";
5
+ import { base64ToBytes, readOdbInventory } from "odf.js";
6
+ //#region src/odb/read.ts
7
+ var OdbNoEmbeddedDataSourceError = class extends Error {
8
+ url;
9
+ constructor(url) {
10
+ super(url === void 0 ? "readOdbTables: this .odb package has no embedded data source -- its office:database has no db:data-source/db:connection-data at all, so embedded vs external cannot be determined" : `readOdbTables: this .odb package has no embedded data source -- its connection ("${url}") points at an external datasource (MySQL/PostgreSQL/JDBC/ODBC or similar), which is permanently out of scope for readOdbTables`);
11
+ this.name = "OdbNoEmbeddedDataSourceError";
12
+ this.url = url;
13
+ }
14
+ };
15
+ var OdbUnsupportedFormatError = class extends Error {
16
+ format;
17
+ constructor(format, detail) {
18
+ super(`readOdbTables: ${detail} is not yet supported`);
19
+ this.name = "OdbUnsupportedFormatError";
20
+ this.format = format;
21
+ }
22
+ };
23
+ const DATABASE_SCRIPT_PART = "database/script";
24
+ const DATABASE_DATA_PART = "database/data";
25
+ const DATABASE_PROPERTIES_PART = "database/properties";
26
+ const DATABASE_FIREBIRD_PART = "database/firebird.fbk";
27
+ function isXmlMediaType(mediaType) {
28
+ return mediaType === "text/xml" || mediaType === "application/xml" || mediaType.endsWith("+xml");
29
+ }
30
+ function isZlibHeader(bytes) {
31
+ if (bytes.length < 2) return false;
32
+ const cmf = bytes[0];
33
+ const flg = bytes[1];
34
+ if (cmf === void 0 || flg === void 0) return false;
35
+ return (cmf & 15) === 8 && (cmf * 256 + flg) % 31 === 0;
36
+ }
37
+ function classifyScriptBytes(bytes) {
38
+ if (isZlibHeader(bytes)) return "compressed";
39
+ for (const byte of bytes) if (byte < 32 && byte !== 9 && byte !== 10 && byte !== 13) return "binary";
40
+ try {
41
+ new TextDecoder("utf-8", { fatal: true }).decode(bytes);
42
+ } catch {
43
+ return "binary";
44
+ }
45
+ return "text";
46
+ }
47
+ function readOdbTables(pkg) {
48
+ const inventory = readOdbInventory(pkg);
49
+ if (inventory.connection === void 0 || inventory.connection.type === "external") throw new OdbNoEmbeddedDataSourceError(inventory.connection?.url);
50
+ const url = inventory.connection.url;
51
+ if (url === void 0) throw new OdbUnsupportedFormatError("unrecognised-engine", "an embedded connection with no connection url to identify its engine");
52
+ const engine = url.slice(14);
53
+ if (engine === "firebird") {
54
+ const firebirdPart = pkg.parts[DATABASE_FIREBIRD_PART];
55
+ if (firebirdPart === void 0) throw new OdbUnsupportedFormatError("unrecognised-engine", `an embedded Firebird engine with no ${DATABASE_FIREBIRD_PART} part -- an unrecognised embedded storage shape`);
56
+ if (firebirdPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_FIREBIRD_PART} is not a binary part (found kind "${firebirdPart.kind}") -- malformed .odb package`);
57
+ const backupBytes = base64ToBytes(firebirdPart.base64);
58
+ return readFirebirdBackup(backupBytes).tables;
59
+ }
60
+ if (engine !== "hsqldb") throw new OdbUnsupportedFormatError("unrecognised-engine", `the embedded "${engine}" database engine`);
61
+ const manifestEntry = readManifest(pkg).entries.find((entry) => entry.fullPath === DATABASE_SCRIPT_PART);
62
+ if (manifestEntry !== void 0 && isXmlMediaType(manifestEntry.mediaType)) throw new Error(`readOdbTables: ${DATABASE_SCRIPT_PART} is declared as an XML sub-document in the manifest (media type "${manifestEntry.mediaType}") -- not a recognised HSQLDB script part`);
63
+ const scriptPart = pkg.parts[DATABASE_SCRIPT_PART];
64
+ if (scriptPart === void 0) throw new OdbUnsupportedFormatError("unrecognised-engine", `an embedded HSQLDB engine with no ${DATABASE_SCRIPT_PART} part -- an unrecognised embedded storage shape`);
65
+ if (scriptPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_SCRIPT_PART} is not a binary part (found kind "${scriptPart.kind}") -- malformed .odb package`);
66
+ const scriptBytes = base64ToBytes(scriptPart.base64);
67
+ const classification = classifyScriptBytes(scriptBytes);
68
+ if (classification === "compressed") throw new OdbUnsupportedFormatError("hsqldb-compressed", "HSQLDB's compressed whole-script format (hsqldb.script_format=3) -- a zlib-wrapped copy of the same length-prefixed binary DDL/DML statement encoding hsqldb.script_format=1 uses, not compressed SQL text");
69
+ if (classification === "binary") throw new OdbUnsupportedFormatError("hsqldb-binary", "HSQLDB's binary whole-script format (hsqldb.script_format=1) -- a length-prefixed, COMMAND-tagged binary encoding of the script's own DDL/DML statements themselves, a materially different and larger undertaking than CACHED-table row-store decoding (Tier 2)");
70
+ return withCachedTableRows(pkg, parseHsqldbScript(scriptBytes), scriptBytes);
71
+ }
72
+ function withCachedTableRows(pkg, tables, scriptBytes) {
73
+ const dataPart = pkg.parts[DATABASE_DATA_PART];
74
+ if (dataPart === void 0) return tables;
75
+ if (dataPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_DATA_PART} is not a binary part (found kind "${dataPart.kind}") -- malformed .odb package`);
76
+ const propertiesPart = pkg.parts[DATABASE_PROPERTIES_PART];
77
+ if (propertiesPart === void 0) throw new Error(`readOdbTables: ${DATABASE_DATA_PART} is present but ${DATABASE_PROPERTIES_PART} is not -- malformed .odb package (a CACHED-table row store always ships alongside its own properties file, which this decoder needs for the cache file's own scale)`);
78
+ if (propertiesPart.kind !== "binary") throw new Error(`readOdbTables: ${DATABASE_PROPERTIES_PART} is not a binary part (found kind "${propertiesPart.kind}") -- malformed .odb package`);
79
+ const scriptText = new TextDecoder("utf-8", { fatal: true }).decode(scriptBytes);
80
+ const dataBytes = base64ToBytes(dataPart.base64);
81
+ const propertiesText = new TextDecoder("utf-8", { fatal: true }).decode(base64ToBytes(propertiesPart.base64));
82
+ return decodeHsqldbCachedTables(tables, scriptText, dataBytes, propertiesText);
83
+ }
84
+ //#endregion
85
+ export { OdbNoEmbeddedDataSourceError, OdbUnsupportedFormatError, readOdbTables };
@@ -0,0 +1,68 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ require("../model/content.cjs");
3
+ const require_hsqldb_script = require("../hsqldb/script.cjs");
4
+ let document_schema_js = require("document-schema.js");
5
+ //#region src/odb/spreadsheet.ts
6
+ const HEADER_ROW_INDEX = 0;
7
+ const COLUMN_WIDTH_PT = 64;
8
+ const ROW_HEIGHT_PT = 15;
9
+ const MARGIN_PT = 56.69291338582677;
10
+ const DEFAULT_PRINT_SETTINGS = {
11
+ pageSize: document_schema_js.PAGE_SIZE_A4,
12
+ margins: {
13
+ topPt: MARGIN_PT,
14
+ rightPt: MARGIN_PT,
15
+ bottomPt: MARGIN_PT,
16
+ leftPt: MARGIN_PT
17
+ },
18
+ gridlines: true,
19
+ headers: true,
20
+ pageOrder: "downThenOver"
21
+ };
22
+ function tableToSheet(table) {
23
+ const cells = table.columns.map((column, columnIndex) => ({
24
+ row: HEADER_ROW_INDEX,
25
+ column: columnIndex,
26
+ value: {
27
+ kind: "string",
28
+ value: column.name
29
+ },
30
+ displayText: column.name
31
+ }));
32
+ table.rows.forEach((row, rowIndex) => {
33
+ row.forEach((value, columnIndex) => {
34
+ cells.push({
35
+ row: rowIndex + 1,
36
+ column: columnIndex,
37
+ value,
38
+ displayText: require_hsqldb_script.displayTextFor(value)
39
+ });
40
+ });
41
+ });
42
+ const columns = table.columns.map((_, index) => ({
43
+ index,
44
+ widthPt: COLUMN_WIDTH_PT
45
+ }));
46
+ const rows = Array.from({ length: table.rows.length + 1 }, (_unused, index) => ({
47
+ index,
48
+ heightPt: ROW_HEIGHT_PT
49
+ }));
50
+ return {
51
+ name: table.tableName,
52
+ cells,
53
+ columns,
54
+ rows,
55
+ images: [],
56
+ printSettings: DEFAULT_PRINT_SETTINGS
57
+ };
58
+ }
59
+ function odbTablesToSpreadsheetDocument(tables) {
60
+ return {
61
+ kind: "spreadsheet",
62
+ formatVersion: 1,
63
+ metadata: {},
64
+ sheets: tables.map(tableToSheet)
65
+ };
66
+ }
67
+ //#endregion
68
+ exports.odbTablesToSpreadsheetDocument = odbTablesToSpreadsheetDocument;
@@ -0,0 +1,6 @@
1
+ import { ContentDocument } from "../model/content.cjs";
2
+ import { HsqldbTable } from "../hsqldb/script.cjs";
3
+ //#region src/odb/spreadsheet.d.ts
4
+ declare function odbTablesToSpreadsheetDocument(tables: readonly HsqldbTable[]): ContentDocument;
5
+ //#endregion
6
+ export { odbTablesToSpreadsheetDocument };
@@ -0,0 +1,6 @@
1
+ import { ContentDocument } from "../model/content.js";
2
+ import { HsqldbTable } from "../hsqldb/script.js";
3
+ //#region src/odb/spreadsheet.d.ts
4
+ declare function odbTablesToSpreadsheetDocument(tables: readonly HsqldbTable[]): ContentDocument;
5
+ //#endregion
6
+ export { odbTablesToSpreadsheetDocument };
@@ -0,0 +1,67 @@
1
+ import "../model/content.js";
2
+ import { PAGE_SIZE_A4 } from "../model/geometry.js";
3
+ import { displayTextFor } from "../hsqldb/script.js";
4
+ //#region src/odb/spreadsheet.ts
5
+ const HEADER_ROW_INDEX = 0;
6
+ const COLUMN_WIDTH_PT = 64;
7
+ const ROW_HEIGHT_PT = 15;
8
+ const MARGIN_PT = 56.69291338582677;
9
+ const DEFAULT_PRINT_SETTINGS = {
10
+ pageSize: PAGE_SIZE_A4,
11
+ margins: {
12
+ topPt: MARGIN_PT,
13
+ rightPt: MARGIN_PT,
14
+ bottomPt: MARGIN_PT,
15
+ leftPt: MARGIN_PT
16
+ },
17
+ gridlines: true,
18
+ headers: true,
19
+ pageOrder: "downThenOver"
20
+ };
21
+ function tableToSheet(table) {
22
+ const cells = table.columns.map((column, columnIndex) => ({
23
+ row: HEADER_ROW_INDEX,
24
+ column: columnIndex,
25
+ value: {
26
+ kind: "string",
27
+ value: column.name
28
+ },
29
+ displayText: column.name
30
+ }));
31
+ table.rows.forEach((row, rowIndex) => {
32
+ row.forEach((value, columnIndex) => {
33
+ cells.push({
34
+ row: rowIndex + 1,
35
+ column: columnIndex,
36
+ value,
37
+ displayText: displayTextFor(value)
38
+ });
39
+ });
40
+ });
41
+ const columns = table.columns.map((_, index) => ({
42
+ index,
43
+ widthPt: COLUMN_WIDTH_PT
44
+ }));
45
+ const rows = Array.from({ length: table.rows.length + 1 }, (_unused, index) => ({
46
+ index,
47
+ heightPt: ROW_HEIGHT_PT
48
+ }));
49
+ return {
50
+ name: table.tableName,
51
+ cells,
52
+ columns,
53
+ rows,
54
+ images: [],
55
+ printSettings: DEFAULT_PRINT_SETTINGS
56
+ };
57
+ }
58
+ function odbTablesToSpreadsheetDocument(tables) {
59
+ return {
60
+ kind: "spreadsheet",
61
+ formatVersion: 1,
62
+ metadata: {},
63
+ sheets: tables.map(tableToSheet)
64
+ };
65
+ }
66
+ //#endregion
67
+ export { odbTablesToSpreadsheetDocument };
@@ -0,0 +1,29 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_odf_formula_read = require("./read.cjs");
3
+ let odf_js = require("odf.js");
4
+ //#region src/odf/formula/detect.ts
5
+ function subPackagePathFromHref(href) {
6
+ return href.replace(/^#?\.\//, "");
7
+ }
8
+ function detectEmbeddedFormulaFrames(containerChildren, pkg) {
9
+ const out = [];
10
+ for (const child of containerChildren) {
11
+ if (child.type !== "element" || child.tag !== "draw:frame") continue;
12
+ const objectElement = (0, odf_js.childrenWithTag)(child, "draw:object")[0];
13
+ if (objectElement === void 0) continue;
14
+ const href = (0, odf_js.attrValue)(objectElement, "xlink:href");
15
+ if (href === void 0) continue;
16
+ const formula = require_odf_formula_read.readOdfEmbeddedFormula(pkg, subPackagePathFromHref(href));
17
+ if (formula === void 0) continue;
18
+ const shape = (0, odf_js.readDrawFrame)(child, [], pkg);
19
+ if (shape === void 0) continue;
20
+ out.push({
21
+ frameElement: child,
22
+ formula,
23
+ frame: shape.frame
24
+ });
25
+ }
26
+ return out;
27
+ }
28
+ //#endregion
29
+ exports.detectEmbeddedFormulaFrames = detectEmbeddedFormulaFrames;
@@ -0,0 +1,12 @@
1
+ import { t as Box } from "../../geometry-DvwdrIij.cjs";
2
+ import { EmbeddedFormula } from "../../model/formula.cjs";
3
+ import { Package, XmlElement, XmlNode } from "odf.js";
4
+ //#region src/odf/formula/detect.d.ts
5
+ interface DetectedFormulaFrame {
6
+ readonly frameElement: XmlElement;
7
+ readonly formula: EmbeddedFormula;
8
+ readonly frame: Box;
9
+ }
10
+ declare function detectEmbeddedFormulaFrames(containerChildren: readonly XmlNode[], pkg: Package): readonly DetectedFormulaFrame[];
11
+ //#endregion
12
+ export { DetectedFormulaFrame, detectEmbeddedFormulaFrames };
@@ -0,0 +1,12 @@
1
+ import { t as Box } from "../../geometry-DvwdrIij.js";
2
+ import { EmbeddedFormula } from "../../model/formula.js";
3
+ import { Package, XmlElement, XmlNode } from "odf.js";
4
+ //#region src/odf/formula/detect.d.ts
5
+ interface DetectedFormulaFrame {
6
+ readonly frameElement: XmlElement;
7
+ readonly formula: EmbeddedFormula;
8
+ readonly frame: Box;
9
+ }
10
+ declare function detectEmbeddedFormulaFrames(containerChildren: readonly XmlNode[], pkg: Package): readonly DetectedFormulaFrame[];
11
+ //#endregion
12
+ export { DetectedFormulaFrame, detectEmbeddedFormulaFrames };
@@ -0,0 +1,28 @@
1
+ import { readOdfEmbeddedFormula } from "./read.js";
2
+ import { attrValue, childrenWithTag, readDrawFrame } from "odf.js";
3
+ //#region src/odf/formula/detect.ts
4
+ function subPackagePathFromHref(href) {
5
+ return href.replace(/^#?\.\//, "");
6
+ }
7
+ function detectEmbeddedFormulaFrames(containerChildren, pkg) {
8
+ const out = [];
9
+ for (const child of containerChildren) {
10
+ if (child.type !== "element" || child.tag !== "draw:frame") continue;
11
+ const objectElement = childrenWithTag(child, "draw:object")[0];
12
+ if (objectElement === void 0) continue;
13
+ const href = attrValue(objectElement, "xlink:href");
14
+ if (href === void 0) continue;
15
+ const formula = readOdfEmbeddedFormula(pkg, subPackagePathFromHref(href));
16
+ if (formula === void 0) continue;
17
+ const shape = readDrawFrame(child, [], pkg);
18
+ if (shape === void 0) continue;
19
+ out.push({
20
+ frameElement: child,
21
+ formula,
22
+ frame: shape.frame
23
+ });
24
+ }
25
+ return out;
26
+ }
27
+ //#endregion
28
+ export { detectEmbeddedFormulaFrames };