@laminapdf/sdk 0.2.0-alpha.2 → 0.2.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/README.md +63 -8
  2. package/dist/api.d.ts +8 -3
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +4 -2
  5. package/dist/api.js.map +1 -1
  6. package/dist/builder.d.ts +43 -22
  7. package/dist/builder.d.ts.map +1 -1
  8. package/dist/builder.js +122 -83
  9. package/dist/builder.js.map +1 -1
  10. package/dist/document.d.ts +89 -22
  11. package/dist/document.d.ts.map +1 -1
  12. package/dist/document.js +177 -67
  13. package/dist/document.js.map +1 -1
  14. package/dist/errors.d.ts +5 -5
  15. package/dist/errors.d.ts.map +1 -1
  16. package/dist/errors.js +10 -16
  17. package/dist/errors.js.map +1 -1
  18. package/dist/extract-job.d.ts +100 -0
  19. package/dist/extract-job.d.ts.map +1 -0
  20. package/dist/extract-job.js +177 -0
  21. package/dist/extract-job.js.map +1 -0
  22. package/dist/extract.d.ts +57 -0
  23. package/dist/extract.d.ts.map +1 -0
  24. package/dist/extract.js +5 -0
  25. package/dist/extract.js.map +1 -0
  26. package/dist/font.d.ts +13 -6
  27. package/dist/font.d.ts.map +1 -1
  28. package/dist/font.js +50 -20
  29. package/dist/font.js.map +1 -1
  30. package/dist/generated/builder-enums.d.ts +3 -3
  31. package/dist/generated/builder-enums.d.ts.map +1 -1
  32. package/dist/generated/builder-enums.js +10 -0
  33. package/dist/generated/builder-enums.js.map +1 -1
  34. package/dist/generated/codes.d.ts +18 -6
  35. package/dist/generated/codes.d.ts.map +1 -1
  36. package/dist/generated/codes.js +114 -5
  37. package/dist/generated/codes.js.map +1 -1
  38. package/dist/generated/explain.d.ts.map +1 -1
  39. package/dist/generated/explain.js +45 -11
  40. package/dist/generated/explain.js.map +1 -1
  41. package/dist/generated/extract.d.ts +282 -0
  42. package/dist/generated/extract.d.ts.map +1 -0
  43. package/dist/generated/extract.js +4 -0
  44. package/dist/generated/extract.js.map +1 -0
  45. package/dist/init.d.ts +13 -5
  46. package/dist/init.d.ts.map +1 -1
  47. package/dist/init.js +23 -11
  48. package/dist/init.js.map +1 -1
  49. package/dist/internal/handle.d.ts +58 -0
  50. package/dist/internal/handle.d.ts.map +1 -0
  51. package/dist/internal/handle.js +113 -0
  52. package/dist/internal/handle.js.map +1 -0
  53. package/dist/internal/instance.d.ts +56 -0
  54. package/dist/internal/instance.d.ts.map +1 -0
  55. package/dist/internal/instance.js +125 -0
  56. package/dist/internal/instance.js.map +1 -0
  57. package/dist/source/http.d.ts +1 -1
  58. package/dist/source/http.js +2 -2
  59. package/dist/source/http.js.map +1 -1
  60. package/dist/source/range.d.ts +6 -1
  61. package/dist/source/range.d.ts.map +1 -1
  62. package/dist/source/range.js +10 -6
  63. package/dist/source/range.js.map +1 -1
  64. package/dist/text.d.ts +3 -3
  65. package/dist/text.d.ts.map +1 -1
  66. package/dist/text.js +3 -3
  67. package/dist/text.js.map +1 -1
  68. package/dist/types.d.ts +19 -1
  69. package/dist/types.d.ts.map +1 -1
  70. package/dist/version.d.ts +1 -1
  71. package/dist/version.js +2 -2
  72. package/dist/version.js.map +1 -1
  73. package/dist/worker/client.d.ts +3 -2
  74. package/dist/worker/client.d.ts.map +1 -1
  75. package/dist/worker/client.js +6 -4
  76. package/dist/worker/client.js.map +1 -1
  77. package/dist/worker/entry.js +1 -1
  78. package/dist/worker/entry.js.map +1 -1
  79. package/dist/worker/server.d.ts.map +1 -1
  80. package/dist/worker/server.js +42 -9
  81. package/dist/worker/server.js.map +1 -1
  82. package/dist/worker/support.d.ts +13 -3
  83. package/dist/worker/support.d.ts.map +1 -1
  84. package/dist/worker/support.js +5 -0
  85. package/dist/worker/support.js.map +1 -1
  86. package/dist/worker/types.d.ts +8 -1
  87. package/dist/worker/types.d.ts.map +1 -1
  88. package/docs/AGENTS.md +14 -0
  89. package/docs/api/README.md +166 -0
  90. package/docs/api/classes/Builder.md +467 -0
  91. package/docs/api/classes/Document.md +854 -0
  92. package/docs/api/classes/ExtractJob.md +236 -0
  93. package/docs/api/classes/Font.md +74 -0
  94. package/docs/api/classes/Image.md +140 -0
  95. package/docs/api/classes/LaminaPdfError.md +189 -0
  96. package/docs/api/classes/Page.md +178 -0
  97. package/docs/api/classes/PageRef.md +253 -0
  98. package/docs/api/classes/PageText.md +129 -0
  99. package/docs/api/classes/PageTextRun.md +167 -0
  100. package/docs/api/classes/PendingPath.md +97 -0
  101. package/docs/api/classes/SaveJob.md +205 -0
  102. package/docs/api/classes/Surface.md +331 -0
  103. package/docs/api/classes/Transaction.md +111 -0
  104. package/docs/api/functions/callbackSource.md +33 -0
  105. package/docs/api/functions/extractWithModels.md +70 -0
  106. package/docs/api/functions/httpRangeSource.md +48 -0
  107. package/docs/api/functions/init.md +36 -0
  108. package/docs/api/functions/isExtractLoaded.md +21 -0
  109. package/docs/api/functions/isInitialized.md +19 -0
  110. package/docs/api/functions/isLaminaPdfError.md +41 -0
  111. package/docs/api/functions/isTextLoaded.md +19 -0
  112. package/docs/api/functions/loadExtract.md +28 -0
  113. package/docs/api/functions/loadText.md +28 -0
  114. package/docs/api/functions/onLeak.md +29 -0
  115. package/docs/api/functions/reset.md +22 -0
  116. package/docs/api/functions/wasmMemory.md +22 -0
  117. package/docs/api/interfaces/BuilderOptions.md +108 -0
  118. package/docs/api/interfaces/ByteRange.md +29 -0
  119. package/docs/api/interfaces/ChunkOptions.md +37 -0
  120. package/docs/api/interfaces/Diagnostic.md +67 -0
  121. package/docs/api/interfaces/ExtractOptions.md +92 -0
  122. package/docs/api/interfaces/ExtractResult.md +37 -0
  123. package/docs/api/interfaces/FontInfo.md +37 -0
  124. package/docs/api/interfaces/HostModels.md +57 -0
  125. package/docs/api/interfaces/HttpRangeOptions.md +78 -0
  126. package/docs/api/interfaces/InitOptions.md +40 -0
  127. package/docs/api/interfaces/LayoutRegion.md +38 -0
  128. package/docs/api/interfaces/Leak.md +21 -0
  129. package/docs/api/interfaces/Location.md +53 -0
  130. package/docs/api/interfaces/ModelInfo.md +45 -0
  131. package/docs/api/interfaces/ModelRequest.md +45 -0
  132. package/docs/api/interfaces/Models.md +45 -0
  133. package/docs/api/interfaces/OcrWord.md +37 -0
  134. package/docs/api/interfaces/OpLog.md +25 -0
  135. package/docs/api/interfaces/OpenOptions.md +37 -0
  136. package/docs/api/interfaces/PageTextOptions.md +21 -0
  137. package/docs/api/interfaces/PathBuilder.md +195 -0
  138. package/docs/api/interfaces/QuadPoint.md +25 -0
  139. package/docs/api/interfaces/RangeOptions.md +54 -0
  140. package/docs/api/interfaces/RangeSource.md +59 -0
  141. package/docs/api/interfaces/StrokeStyle.md +61 -0
  142. package/docs/api/interfaces/TagSpec.md +69 -0
  143. package/docs/api/interfaces/TextBoxOptions.md +93 -0
  144. package/docs/api/interfaces/TextGlyph.md +29 -0
  145. package/docs/api/interfaces/TextOptions.md +101 -0
  146. package/docs/api/interfaces/WasmMemory.md +37 -0
  147. package/docs/api/type-aliases/AfRelationship.md +15 -0
  148. package/docs/api/type-aliases/Align.md +15 -0
  149. package/docs/api/type-aliases/ArtifactKind.md +15 -0
  150. package/docs/api/type-aliases/AttachmentOptions.md +15 -0
  151. package/docs/api/type-aliases/BlendMode.md +15 -0
  152. package/docs/api/type-aliases/BoxRect.md +15 -0
  153. package/docs/api/type-aliases/BuildOptions.md +15 -0
  154. package/docs/api/type-aliases/Cell.md +71 -0
  155. package/docs/api/type-aliases/Chunk.md +79 -0
  156. package/docs/api/type-aliases/Color.md +16 -0
  157. package/docs/api/type-aliases/Coordinates.md +55 -0
  158. package/docs/api/type-aliases/Direction.md +15 -0
  159. package/docs/api/type-aliases/DocumentInfo.md +15 -0
  160. package/docs/api/type-aliases/DropReason.md +15 -0
  161. package/docs/api/type-aliases/Dropped.md +59 -0
  162. package/docs/api/type-aliases/Edited.md +15 -0
  163. package/docs/api/type-aliases/ErrorCode.md +15 -0
  164. package/docs/api/type-aliases/ErrorKind.md +15 -0
  165. package/docs/api/type-aliases/ExtractFormat.md +15 -0
  166. package/docs/api/type-aliases/ExtractJobOptions.md +31 -0
  167. package/docs/api/type-aliases/ExtractStep.md +61 -0
  168. package/docs/api/type-aliases/ExtractedBlock.md +94 -0
  169. package/docs/api/type-aliases/ExtractedPage.md +73 -0
  170. package/docs/api/type-aliases/ExtractedSource.md +48 -0
  171. package/docs/api/type-aliases/Extraction.md +22 -0
  172. package/docs/api/type-aliases/FillRule.md +15 -0
  173. package/docs/api/type-aliases/Fit.md +15 -0
  174. package/docs/api/type-aliases/Flags.md +15 -0
  175. package/docs/api/type-aliases/Generator.md +43 -0
  176. package/docs/api/type-aliases/GlyphQuad.md +15 -0
  177. package/docs/api/type-aliases/InfoPatch.md +15 -0
  178. package/docs/api/type-aliases/LaminaPdfWarning.md +16 -0
  179. package/docs/api/type-aliases/LimitName.md +15 -0
  180. package/docs/api/type-aliases/Limits.md +15 -0
  181. package/docs/api/type-aliases/LineBox.md +15 -0
  182. package/docs/api/type-aliases/LineCap.md +15 -0
  183. package/docs/api/type-aliases/LineJoin.md +15 -0
  184. package/docs/api/type-aliases/LinkTarget.md +15 -0
  185. package/docs/api/type-aliases/Metadata.md +15 -0
  186. package/docs/api/type-aliases/ModelResult.md +15 -0
  187. package/docs/api/type-aliases/Op.md +15 -0
  188. package/docs/api/type-aliases/OutlineEntry.md +15 -0
  189. package/docs/api/type-aliases/OutlineNode.md +15 -0
  190. package/docs/api/type-aliases/Overflow.md +15 -0
  191. package/docs/api/type-aliases/PageInfo.md +15 -0
  192. package/docs/api/type-aliases/PageLabel.md +15 -0
  193. package/docs/api/type-aliases/PageSizeName.md +15 -0
  194. package/docs/api/type-aliases/Point.md +15 -0
  195. package/docs/api/type-aliases/Profile.md +15 -0
  196. package/docs/api/type-aliases/Progress.md +15 -0
  197. package/docs/api/type-aliases/ReadingOrder.md +15 -0
  198. package/docs/api/type-aliases/Rect.md +15 -0
  199. package/docs/api/type-aliases/Region.md +31 -0
  200. package/docs/api/type-aliases/RegionLabel.md +15 -0
  201. package/docs/api/type-aliases/RenderMode.md +15 -0
  202. package/docs/api/type-aliases/Rotation.md +15 -0
  203. package/docs/api/type-aliases/SaveOptions.md +15 -0
  204. package/docs/api/type-aliases/SaveReport.md +15 -0
  205. package/docs/api/type-aliases/Span.md +74 -0
  206. package/docs/api/type-aliases/SplitOn.md +15 -0
  207. package/docs/api/type-aliases/Standard14.md +15 -0
  208. package/docs/api/type-aliases/StructRef.md +41 -0
  209. package/docs/api/type-aliases/StructSource.md +17 -0
  210. package/docs/api/type-aliases/StructureKid.md +15 -0
  211. package/docs/api/type-aliases/StructureNode.md +16 -0
  212. package/docs/api/type-aliases/TableDetector.md +15 -0
  213. package/docs/api/type-aliases/TableMode.md +15 -0
  214. package/docs/api/type-aliases/TableScope.md +15 -0
  215. package/docs/api/type-aliases/Tag.md +15 -0
  216. package/docs/api/type-aliases/TagName.md +15 -0
  217. package/docs/api/type-aliases/Target.md +15 -0
  218. package/docs/api/type-aliases/TargetView.md +18 -0
  219. package/docs/api/type-aliases/TextLayer.md +72 -0
  220. package/docs/api/type-aliases/TextLayerStatus.md +15 -0
  221. package/docs/api/type-aliases/TextLayout.md +15 -0
  222. package/docs/api/type-aliases/TextRange.md +33 -0
  223. package/docs/api/type-aliases/TextRunInfo.md +15 -0
  224. package/docs/api/type-aliases/Transform.md +15 -0
  225. package/docs/api/type-aliases/UndoOutcome.md +15 -0
  226. package/docs/api/type-aliases/ViewerPreferences.md +15 -0
  227. package/docs/api/type-aliases/WarningCode.md +15 -0
  228. package/docs/api/type-aliases/WasmSource.md +16 -0
  229. package/docs/api/variables/Matrix.md +99 -0
  230. package/docs/api/variables/PAGE_SIZES.md +15 -0
  231. package/docs/api/variables/TAG_NAMES.md +15 -0
  232. package/docs/errors/README.md +173 -0
  233. package/docs/errors/aes-padding-invalid.md +34 -0
  234. package/docs/errors/already-initialized.md +34 -0
  235. package/docs/errors/binary-output-to-terminal.md +35 -0
  236. package/docs/errors/builder-finished.md +35 -0
  237. package/docs/errors/cancelled.md +35 -0
  238. package/docs/errors/cmap-invalid.md +42 -0
  239. package/docs/errors/collection-index.md +33 -0
  240. package/docs/errors/color-components.md +33 -0
  241. package/docs/errors/content-bad-operands.md +36 -0
  242. package/docs/errors/content-path-unpainted.md +36 -0
  243. package/docs/errors/content-resource-missing.md +37 -0
  244. package/docs/errors/content-syntax.md +36 -0
  245. package/docs/errors/content-unbalanced-bt.md +36 -0
  246. package/docs/errors/content-unbalanced-marked.md +36 -0
  247. package/docs/errors/content-unbalanced-q.md +36 -0
  248. package/docs/errors/content-unknown-operator.md +37 -0
  249. package/docs/errors/covered-text.md +33 -0
  250. package/docs/errors/data-pending.md +34 -0
  251. package/docs/errors/decompress.md +34 -0
  252. package/docs/errors/device-color-without-output-intent.md +33 -0
  253. package/docs/errors/direct-page.md +34 -0
  254. package/docs/errors/disposed.md +34 -0
  255. package/docs/errors/document-changed.md +34 -0
  256. package/docs/errors/embedded-file-forbidden.md +35 -0
  257. package/docs/errors/embedded-file-without-mime-type.md +36 -0
  258. package/docs/errors/encoding-full.md +34 -0
  259. package/docs/errors/encrypted-base.md +33 -0
  260. package/docs/errors/extract-column-order-uncertain.md +38 -0
  261. package/docs/errors/extract-limit-blocks.md +35 -0
  262. package/docs/errors/extract-module-not-loaded.md +37 -0
  263. package/docs/errors/extract-needs-ocr.md +37 -0
  264. package/docs/errors/extract-reading-order-ambiguous.md +32 -0
  265. package/docs/errors/extract-struct-tree-ignored.md +32 -0
  266. package/docs/errors/extract-table-ambiguous.md +32 -0
  267. package/docs/errors/extract-table-limit.md +35 -0
  268. package/docs/errors/extract-untagged-content.md +32 -0
  269. package/docs/errors/fetch-failed.md +34 -0
  270. package/docs/errors/flate-truncated.md +34 -0
  271. package/docs/errors/flow-content-too-large.md +34 -0
  272. package/docs/errors/flow-keep-broken.md +34 -0
  273. package/docs/errors/flow-layout-unstable.md +38 -0
  274. package/docs/errors/font-invalid.md +36 -0
  275. package/docs/errors/font-mismatch.md +34 -0
  276. package/docs/errors/font-not-embeddable.md +34 -0
  277. package/docs/errors/font-not-embedded.md +35 -0
  278. package/docs/errors/font-not-shapable.md +33 -0
  279. package/docs/errors/glyph-out-of-range.md +34 -0
  280. package/docs/errors/glyph-without-unicode.md +37 -0
  281. package/docs/errors/heading-level-skipped.md +36 -0
  282. package/docs/errors/image-data-length.md +33 -0
  283. package/docs/errors/image-too-large.md +32 -0
  284. package/docs/errors/inline-image-unterminated.md +36 -0
  285. package/docs/errors/input-unreadable.md +37 -0
  286. package/docs/errors/instance-reset.md +34 -0
  287. package/docs/errors/invalid-argument.md +33 -0
  288. package/docs/errors/invalid-axis-value.md +32 -0
  289. package/docs/errors/invalid-box.md +34 -0
  290. package/docs/errors/invalid-color.md +32 -0
  291. package/docs/errors/invalid-command-line.md +44 -0
  292. package/docs/errors/invalid-date.md +34 -0
  293. package/docs/errors/invalid-entry.md +34 -0
  294. package/docs/errors/invalid-feature.md +32 -0
  295. package/docs/errors/invalid-font.md +32 -0
  296. package/docs/errors/invalid-geometry.md +32 -0
  297. package/docs/errors/invalid-icc-profile.md +32 -0
  298. package/docs/errors/invalid-image.md +33 -0
  299. package/docs/errors/invalid-op-log.md +33 -0
  300. package/docs/errors/invalid-page-label.md +34 -0
  301. package/docs/errors/invalid-page-labels.md +32 -0
  302. package/docs/errors/invalid-page-range.md +37 -0
  303. package/docs/errors/invalid-rotate.md +34 -0
  304. package/docs/errors/invalid-spans.md +39 -0
  305. package/docs/errors/invalid-structure-nesting.md +38 -0
  306. package/docs/errors/invalid-structure.md +34 -0
  307. package/docs/errors/invalid-text-range.md +33 -0
  308. package/docs/errors/job-finished.md +34 -0
  309. package/docs/errors/limit-exceeded.md +38 -0
  310. package/docs/errors/link-without-contents.md +33 -0
  311. package/docs/errors/link-without-structure.md +37 -0
  312. package/docs/errors/markdown-html-ignored.md +33 -0
  313. package/docs/errors/markdown-image-missing.md +34 -0
  314. package/docs/errors/missing-alt-text.md +33 -0
  315. package/docs/errors/missing-glyph.md +33 -0
  316. package/docs/errors/missing-header.md +37 -0
  317. package/docs/errors/missing-lang.md +32 -0
  318. package/docs/errors/missing-root.md +34 -0
  319. package/docs/errors/missing-title.md +32 -0
  320. package/docs/errors/model-failed.md +33 -0
  321. package/docs/errors/model-needs-host.md +40 -0
  322. package/docs/errors/model-result-unexpected.md +36 -0
  323. package/docs/errors/name-tree-node-skipped.md +34 -0
  324. package/docs/errors/nested-transaction.md +34 -0
  325. package/docs/errors/no-pending-save.md +32 -0
  326. package/docs/errors/no-transaction.md +33 -0
  327. package/docs/errors/not-initialized.md +35 -0
  328. package/docs/errors/not-pdf.md +33 -0
  329. package/docs/errors/not-rebased.md +35 -0
  330. package/docs/errors/object-number-out-of-range.md +38 -0
  331. package/docs/errors/objstm-index-mismatch.md +36 -0
  332. package/docs/errors/out-of-memory.md +38 -0
  333. package/docs/errors/outline-cycle.md +34 -0
  334. package/docs/errors/outline-item-skipped.md +34 -0
  335. package/docs/errors/output-unwritable.md +37 -0
  336. package/docs/errors/overwrite-refused.md +36 -0
  337. package/docs/errors/page-count-mismatch.md +34 -0
  338. package/docs/errors/page-index-out-of-range.md +34 -0
  339. package/docs/errors/page-tree-node-skipped.md +35 -0
  340. package/docs/errors/password-required.md +36 -0
  341. package/docs/errors/path-outside-roots.md +32 -0
  342. package/docs/errors/perms-mismatch.md +34 -0
  343. package/docs/errors/profile-version-conflict.md +35 -0
  344. package/docs/errors/redaction-not-applied.md +32 -0
  345. package/docs/errors/reference-cycle.md +35 -0
  346. package/docs/errors/render-backend-unavailable.md +32 -0
  347. package/docs/errors/render-failed.md +33 -0
  348. package/docs/errors/render-too-large.md +36 -0
  349. package/docs/errors/repaired-base.md +34 -0
  350. package/docs/errors/requires-rewrite.md +38 -0
  351. package/docs/errors/revision-index-out-of-range.md +34 -0
  352. package/docs/errors/saved-not-rebased.md +34 -0
  353. package/docs/errors/sink-not-empty.md +33 -0
  354. package/docs/errors/sink.md +31 -0
  355. package/docs/errors/source-budget-exceeded.md +34 -0
  356. package/docs/errors/source-changed.md +33 -0
  357. package/docs/errors/source.md +30 -0
  358. package/docs/errors/stale-generation.md +34 -0
  359. package/docs/errors/stream-length-recovered.md +37 -0
  360. package/docs/errors/strict.md +34 -0
  361. package/docs/errors/subset-failed.md +31 -0
  362. package/docs/errors/syntax.md +34 -0
  363. package/docs/errors/tag-element-not-open.md +41 -0
  364. package/docs/errors/tag-element-unclosed.md +34 -0
  365. package/docs/errors/text-in-earlier-revision.md +36 -0
  366. package/docs/errors/text-module-not-loaded.md +36 -0
  367. package/docs/errors/text-overflow.md +34 -0
  368. package/docs/errors/tounicode-conflict.md +32 -0
  369. package/docs/errors/type.md +34 -0
  370. package/docs/errors/unexpected-eof.md +34 -0
  371. package/docs/errors/unknown-axis.md +33 -0
  372. package/docs/errors/unknown-code.md +36 -0
  373. package/docs/errors/unknown-destination.md +33 -0
  374. package/docs/errors/unknown-font.md +33 -0
  375. package/docs/errors/unknown-option.md +33 -0
  376. package/docs/errors/unknown-page.md +34 -0
  377. package/docs/errors/unmapped-glyph.md +36 -0
  378. package/docs/errors/unnumbered-heading-misused.md +34 -0
  379. package/docs/errors/unset-object.md +30 -0
  380. package/docs/errors/unsupported-filter.md +34 -0
  381. package/docs/errors/unsupported-image.md +33 -0
  382. package/docs/errors/unsupported-layout-option.md +33 -0
  383. package/docs/errors/unsupported-security-handler.md +34 -0
  384. package/docs/errors/unsupported-version.md +32 -0
  385. package/docs/errors/untagged-content.md +35 -0
  386. package/docs/errors/warnings-truncated.md +35 -0
  387. package/docs/errors/wasm-trap.md +37 -0
  388. package/docs/errors/whole-font-rebuilt.md +30 -0
  389. package/docs/errors/worker-crashed.md +33 -0
  390. package/docs/errors/worker-failed.md +32 -0
  391. package/docs/errors/worker-version-mismatch.md +34 -0
  392. package/docs/errors/would-invalidate-signatures.md +38 -0
  393. package/docs/errors/wrong-document.md +33 -0
  394. package/docs/errors/wrong-password.md +34 -0
  395. package/docs/errors/xobject-cycle.md +36 -0
  396. package/docs/errors/xref-repaired.md +36 -0
  397. package/docs/errors/xrefstm-ignored.md +34 -0
  398. package/docs/llms.txt +94 -0
  399. package/docs/pages/concepts/dependencies.md +44 -0
  400. package/docs/pages/concepts/drawing-pages.md +76 -0
  401. package/docs/pages/concepts/errors-and-warnings.md +68 -0
  402. package/docs/pages/concepts/how-lamina-thinks.md +98 -0
  403. package/docs/pages/concepts/pages-and-coordinates.md +75 -0
  404. package/docs/pages/guides/accessible-pdfs.md +262 -0
  405. package/docs/pages/guides/archival-pdfs.md +433 -0
  406. package/docs/pages/guides/edit-a-pdf.md +143 -0
  407. package/docs/pages/guides/flowing-pages.md +379 -0
  408. package/docs/pages/guides/fonts-and-text.md +204 -0
  409. package/docs/pages/guides/images-and-vectors.md +221 -0
  410. package/docs/pages/guides/keep-the-page-responsive.md +85 -0
  411. package/docs/pages/guides/links-outlines-and-metadata.md +224 -0
  412. package/docs/pages/guides/open-large-files.md +69 -0
  413. package/docs/pages/guides/password-protected-files.md +70 -0
  414. package/docs/pages/guides/save-a-pdf.md +154 -0
  415. package/docs/pages/guides/test-generated-pdfs.md +324 -0
  416. package/docs/pages/guides/untrusted-files.md +82 -0
  417. package/docs/pages/index.md +33 -0
  418. package/docs/pages/install.md +79 -0
  419. package/docs/pages/quick-start/browser.md +71 -0
  420. package/docs/pages/quick-start/bun.md +64 -0
  421. package/docs/pages/quick-start/deno.md +62 -0
  422. package/docs/pages/quick-start/node.md +65 -0
  423. package/docs/pages/quick-start/rust.md +62 -0
  424. package/docs/pages/quick-start/workers.md +139 -0
  425. package/docs/pages/recipes/cloudflare-worker.md +115 -0
  426. package/docs/pages/recipes/element-flow.md +248 -0
  427. package/docs/pages/recipes/extract-markdown.md +152 -0
  428. package/docs/pages/recipes/generate-then-edit.md +142 -0
  429. package/docs/pages/recipes/hello.md +101 -0
  430. package/docs/pages/recipes/images-and-vectors.md +216 -0
  431. package/docs/pages/recipes/invoice.md +233 -0
  432. package/docs/pages/recipes/links-and-outlines.md +222 -0
  433. package/docs/pages/recipes/multilingual.md +196 -0
  434. package/docs/pages/recipes/open-untrusted.md +65 -0
  435. package/docs/pages/recipes/pdf-a-archive.md +212 -0
  436. package/docs/pages/recipes/pdf-a3-invoice-with-xml.md +229 -0
  437. package/docs/pages/recipes/pdf-ua-report.md +244 -0
  438. package/docs/pages/recipes/report.md +125 -0
  439. package/docs/pages/recipes/web-worker-client.md +64 -0
  440. package/docs/pages/recipes.md +48 -0
  441. package/docs/pages/reference/benchmarks.md +93 -0
  442. package/docs/pages/reference/changelog.md +134 -0
  443. package/docs/pages/reference/codes.md +14 -0
  444. package/docs/pages/reference/glossary.md +108 -0
  445. package/docs/pages/reference/rust.md +36 -0
  446. package/docs/pages/reference/stability.md +59 -0
  447. package/docs/pages/start/coding-agents.md +45 -0
  448. package/docs/pages/start/first-pdf.md +81 -0
  449. package/docs/pages/troubleshooting.md +74 -0
  450. package/docs/renames.json +86 -0
  451. package/docs/schemas/error.schema.json +322 -0
  452. package/docs/schemas/renames.schema.json +29 -0
  453. package/package.json +7 -3
  454. package/schemas/error.schema.json +37 -3
package/dist/font.js CHANGED
@@ -1,5 +1,6 @@
1
- import { guard } from "./errors.js";
1
+ import { packageError } from "./errors.js";
2
2
  import { baseModule } from "./init.js";
3
+ import { disposable, forget, watch } from "./internal/handle.js";
3
4
  /**
4
5
  * A font to draw text with: TrueType or OpenType bytes (subset to the glyphs drawn and embedded)
5
6
  * or one of the standard 14. Needs the text module (`init({ text: true })`).
@@ -31,8 +32,8 @@ export class Font {
31
32
  return new Font(undefined, name);
32
33
  }
33
34
  }
34
- function decode(glue, source) {
35
- return guard(() => {
35
+ function decode(instance, source) {
36
+ return instance.call((glue) => {
36
37
  switch (source.kind) {
37
38
  case "jpeg":
38
39
  return glue.WasmImage.jpeg(source.bytes);
@@ -48,11 +49,13 @@ function decode(glue, source) {
48
49
  * The bytes are copied when the image is created. It is decoded once per WASM module, the first
49
50
  * time a builder of that module draws it (or `width`/`height` is read), so problems with the
50
51
  * data (`invalid-image`, `unsupported-image`, …) surface there. Written once per document however
51
- * often it is drawn.
52
+ * often it is drawn. It keeps its bytes, so it outlives `reset()` and decodes again.
52
53
  */
53
54
  export class Image {
54
55
  #source;
56
+ /** The decoded copy in each module, with the generation of the instance it lives in. */
55
57
  #decoded = new Map();
58
+ #freed = false;
56
59
  constructor(source) {
57
60
  this.#source = source;
58
61
  }
@@ -70,34 +73,61 @@ export class Image {
70
73
  }
71
74
  /** Width in pixels (decodes the image if no module has yet). @throws {@link LaminaPdfError} as `in`. */
72
75
  get width() {
73
- return this.#any().width;
76
+ const [instance, image] = this.#any();
77
+ return instance.call(() => image.width);
74
78
  }
75
79
  /** Height in pixels (decodes the image if no module has yet). @throws {@link LaminaPdfError} as `in`. */
76
80
  get height() {
77
- return this.#any().height;
81
+ const [instance, image] = this.#any();
82
+ return instance.call(() => image.height);
78
83
  }
84
+ /** A decoded copy, in any module (the base module when none has one). */
79
85
  #any() {
80
- for (const image of this.#decoded.values())
81
- return image;
82
- return this.in(baseModule());
86
+ for (const [instance, held] of this.#decoded) {
87
+ instance.live();
88
+ if (held.generation === instance.generation)
89
+ return [instance, held.image];
90
+ }
91
+ const base = baseModule();
92
+ return [base, this.in(base)];
83
93
  }
84
- /** Frees the image's WASM memory now (otherwise when it is garbage-collected). */
94
+ /**
95
+ * Frees the image's WASM memory now; without it, the garbage collector frees it later. A second
96
+ * call does nothing, and any other call afterwards throws `disposed`. Prefer `using`.
97
+ */
85
98
  free() {
86
- for (const image of this.#decoded.values())
87
- image.free();
99
+ if (this.#freed)
100
+ return;
101
+ this.#freed = true;
102
+ forget(this);
103
+ for (const [instance, held] of this.#decoded) {
104
+ if (instance.owns(held.generation))
105
+ held.image.free();
106
+ }
88
107
  this.#decoded.clear();
89
108
  }
109
+ /** Frees the image at the end of a `using` block (an alias of `free()`). */
110
+ [Symbol.dispose]() {
111
+ this.free();
112
+ }
90
113
  /**
91
- * @internal The image in `glue`'s instance, decoded there at first use.
92
- * @throws {@link LaminaPdfError} `invalid-image`, `unsupported-image`, `image-too-large`, `image-data-length`.
114
+ * @internal The image in `instance`, decoded there at first use (and again after a reset).
115
+ * @throws {@link LaminaPdfError} `disposed`; `invalid-image`, `unsupported-image`,
116
+ * `image-too-large`, `image-data-length`.
93
117
  */
94
- in(glue) {
95
- let image = this.#decoded.get(glue);
96
- if (image === undefined) {
97
- image = decode(glue, this.#source);
98
- this.#decoded.set(glue, image);
99
- }
118
+ in(instance) {
119
+ if (this.#freed)
120
+ throw packageError("disposed", "the Image was used after free() or its using block");
121
+ instance.live();
122
+ const held = this.#decoded.get(instance);
123
+ if (held !== undefined && held.generation === instance.generation)
124
+ return held.image;
125
+ const image = decode(instance, this.#source);
126
+ if (this.#decoded.size === 0)
127
+ watch(this, "Image");
128
+ this.#decoded.set(instance, { generation: instance.generation, image });
100
129
  return image;
101
130
  }
102
131
  }
132
+ disposable(Image);
103
133
  //# sourceMappingURL=font.js.map
package/dist/font.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"font.js","sourceRoot":"","sources":["../src/font.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"font.js","sourceRoot":"","sources":["../src/font.ts"],"names":[],"mappings":"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"}
@@ -15,15 +15,15 @@ export declare const BLEND_MODES: readonly ["normal", "multiply", "screen", "ove
15
15
  /** Blend modes (`/BM`), camelCase. */
16
16
  export type BlendMode = (typeof BLEND_MODES)[number];
17
17
  /** Every ArtifactKind, as the WASM module names it. */
18
- export declare const ARTIFACT_KINDS: readonly ["layout", "page", "pagination", "background"];
19
- /** What kind of artifact (content outside the logical structure). */
18
+ export declare const ARTIFACT_KINDS: readonly ["layout", "page", "pagination", "background", "header", "footer", "watermark"];
19
+ /** What kind of artifact (content outside the logical structure); `header`, `footer` and `watermark` are pagination artifacts that say which. */
20
20
  export type ArtifactKind = (typeof ARTIFACT_KINDS)[number];
21
21
  /** Every TableScope, as the WASM module names it. */
22
22
  export declare const TABLE_SCOPES: readonly ["row", "column", "both"];
23
23
  /** Which header cells a `TH` heads (`/Scope`). */
24
24
  export type TableScope = (typeof TABLE_SCOPES)[number];
25
25
  /** Every TagName, as the WASM module names it. */
26
- export declare const TAG_NAMES: readonly ["Document", "Part", "Sect", "H1", "H2", "H3", "H4", "H5", "H6", "P", "L", "LI", "Lbl", "LBody", "Table", "TR", "TH", "TD", "Figure", "Caption", "Link", "Span", "Quote", "Note", "Code"];
26
+ export declare const TAG_NAMES: readonly ["Document", "Part", "Sect", "H1", "H2", "H3", "H4", "H5", "H6", "P", "L", "LI", "Lbl", "LBody", "Table", "TR", "TH", "TD", "Figure", "Caption", "Link", "Span", "Quote", "Note", "Code", "THead", "TBody", "TFoot", "TOC", "TOCI", "Reference", "BlockQuote"];
27
27
  /** A standard structure type (ISO 32000-1 §14.8.4). */
28
28
  export type TagName = (typeof TAG_NAMES)[number];
29
29
  //# sourceMappingURL=builder-enums.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder-enums.d.ts","sourceRoot":"","sources":["../../src/generated/builder-enums.ts"],"names":[],"mappings":"AAGA,mDAAmD;AACnD,eAAO,MAAM,UAAU,YACrB,SAAS,EACT,SAAS,CACD,CAAC;AAEX,2DAA2D;AAC3D,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,kDAAkD;AAClD,eAAO,MAAM,SAAS,YACpB,MAAM,EACN,OAAO,EACP,QAAQ,CACA,CAAC;AAEX,oCAAoC;AACpC,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjD,mDAAmD;AACnD,eAAO,MAAM,UAAU,YACrB,OAAO,EACP,OAAO,EACP,OAAO,CACC,CAAC;AAEX,6BAA6B;AAC7B,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,oDAAoD;AACpD,eAAO,MAAM,WAAW,YACtB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,YAAY,CACJ,CAAC;AAEX,sCAAsC;AACtC,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,uDAAuD;AACvD,eAAO,MAAM,cAAc,YACzB,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,YAAY,CACJ,CAAC;AAEX,qEAAqE;AACrE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,qDAAqD;AACrD,eAAO,MAAM,YAAY,YACvB,KAAK,EACL,QAAQ,EACR,MAAM,CACE,CAAC;AAEX,kDAAkD;AAClD,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,kDAAkD;AAClD,eAAO,MAAM,SAAS,YACpB,UAAU,EACV,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,GAAG,EACH,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,CACE,CAAC;AAEX,uDAAuD;AACvD,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"builder-enums.d.ts","sourceRoot":"","sources":["../../src/generated/builder-enums.ts"],"names":[],"mappings":"AAGA,mDAAmD;AACnD,eAAO,MAAM,UAAU,YACrB,SAAS,EACT,SAAS,CACD,CAAC;AAEX,2DAA2D;AAC3D,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,kDAAkD;AAClD,eAAO,MAAM,SAAS,YACpB,MAAM,EACN,OAAO,EACP,QAAQ,CACA,CAAC;AAEX,oCAAoC;AACpC,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjD,mDAAmD;AACnD,eAAO,MAAM,UAAU,YACrB,OAAO,EACP,OAAO,EACP,OAAO,CACC,CAAC;AAEX,6BAA6B;AAC7B,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,oDAAoD;AACpD,eAAO,MAAM,WAAW,YACtB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,KAAK,EACL,YAAY,EACZ,OAAO,EACP,YAAY,CACJ,CAAC;AAEX,sCAAsC;AACtC,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,uDAAuD;AACvD,eAAO,MAAM,cAAc,YACzB,QAAQ,EACR,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,QAAQ,EACR,WAAW,CACH,CAAC;AAEX,iJAAiJ;AACjJ,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,qDAAqD;AACrD,eAAO,MAAM,YAAY,YACvB,KAAK,EACL,QAAQ,EACR,MAAM,CACE,CAAC;AAEX,kDAAkD;AAClD,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,kDAAkD;AAClD,eAAO,MAAM,SAAS,YACpB,UAAU,EACV,MAAM,EACN,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,GAAG,EACH,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,EACP,OAAO,EACP,OAAO,EACP,KAAK,EACL,MAAM,EACN,WAAW,EACX,YAAY,CACJ,CAAC;AAEX,uDAAuD;AACvD,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -42,6 +42,9 @@ export const ARTIFACT_KINDS = [
42
42
  "page",
43
43
  "pagination",
44
44
  "background",
45
+ "header",
46
+ "footer",
47
+ "watermark",
45
48
  ];
46
49
  /** Every TableScope, as the WASM module names it. */
47
50
  export const TABLE_SCOPES = [
@@ -76,5 +79,12 @@ export const TAG_NAMES = [
76
79
  "Quote",
77
80
  "Note",
78
81
  "Code",
82
+ "THead",
83
+ "TBody",
84
+ "TFoot",
85
+ "TOC",
86
+ "TOCI",
87
+ "Reference",
88
+ "BlockQuote",
79
89
  ];
80
90
  //# sourceMappingURL=builder-enums.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder-enums.js","sourceRoot":"","sources":["../../src/generated/builder-enums.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,4HAA4H;AAE5H,mDAAmD;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,SAAS;IACT,SAAS;CACD,CAAC;AAKX,kDAAkD;AAClD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,MAAM;IACN,OAAO;IACP,QAAQ;CACA,CAAC;AAKX,mDAAmD;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO;IACP,OAAO;IACP,OAAO;CACC,CAAC;AAKX,oDAAoD;AACpD,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,SAAS;IACT,YAAY;IACZ,WAAW;IACX,WAAW;IACX,WAAW;IACX,YAAY;IACZ,WAAW;IACX,KAAK;IACL,YAAY;IACZ,OAAO;IACP,YAAY;CACJ,CAAC;AAKX,uDAAuD;AACvD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,QAAQ;IACR,MAAM;IACN,YAAY;IACZ,YAAY;CACJ,CAAC;AAKX,qDAAqD;AACrD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK;IACL,QAAQ;IACR,MAAM;CACE,CAAC;AAKX,kDAAkD;AAClD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,UAAU;IACV,MAAM;IACN,MAAM;IACN,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,GAAG;IACH,IAAI;IACJ,KAAK;IACL,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,QAAQ;IACR,SAAS;IACT,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;CACE,CAAC"}
1
+ {"version":3,"file":"builder-enums.js","sourceRoot":"","sources":["../../src/generated/builder-enums.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,4HAA4H;AAE5H,mDAAmD;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,SAAS;IACT,SAAS;CACD,CAAC;AAKX,kDAAkD;AAClD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,MAAM;IACN,OAAO;IACP,QAAQ;CACA,CAAC;AAKX,mDAAmD;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO;IACP,OAAO;IACP,OAAO;CACC,CAAC;AAKX,oDAAoD;AACpD,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,SAAS;IACT,YAAY;IACZ,WAAW;IACX,WAAW;IACX,WAAW;IACX,YAAY;IACZ,WAAW;IACX,KAAK;IACL,YAAY;IACZ,OAAO;IACP,YAAY;CACJ,CAAC;AAKX,uDAAuD;AACvD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,QAAQ;IACR,MAAM;IACN,YAAY;IACZ,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,WAAW;CACH,CAAC;AAKX,qDAAqD;AACrD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK;IACL,QAAQ;IACR,MAAM;CACE,CAAC;AAKX,kDAAkD;AAClD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,UAAU;IACV,MAAM;IACN,MAAM;IACN,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,GAAG;IACH,IAAI;IACJ,KAAK;IACL,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,IAAI;IACJ,QAAQ;IACR,SAAS;IACT,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,OAAO;IACP,OAAO;IACP,OAAO;IACP,KAAK;IACL,MAAM;IACN,WAAW;IACX,YAAY;CACJ,CAAC"}
@@ -1,9 +1,9 @@
1
1
  /** The nine kinds of ADR 0026 §2: what the caller can do about an error. */
2
2
  export type ErrorKind = "input" | "io" | "unsupported" | "limit" | "security" | "usage" | "state" | "cancelled" | "internal";
3
3
  /** Every error code (ADR 0026 §3; `fixtures/codes.json`). */
4
- export type ErrorCode = "not-pdf" | "missing-root" | "reference-cycle" | "limit-exceeded" | "strict" | "data-pending" | "source" | "type" | "invalid-structure" | "unset-object" | "repaired-base" | "encrypted-base" | "password-required" | "wrong-password" | "unsupported-security-handler" | "unexpected-eof" | "syntax" | "unsupported-filter" | "decompress" | "nested-transaction" | "no-transaction" | "unknown-page" | "direct-page" | "unsupported-version" | "invalid-op-log" | "saved-not-rebased" | "no-pending-save" | "sink" | "not-rebased" | "sink-not-empty" | "would-invalidate-signatures" | "requires-rewrite" | "invalid-font" | "collection-index" | "unknown-axis" | "font-not-embeddable" | "missing-glyph" | "glyph-out-of-range" | "unknown-font" | "subset-failed" | "invalid-axis-value" | "wrong-document" | "invalid-feature" | "invalid-text-range" | "unsupported-layout-option" | "font-mismatch" | "encoding-full" | "font-not-shapable" | "invalid-image" | "unsupported-image" | "image-too-large" | "image-data-length" | "invalid-icc-profile" | "color-components" | "invalid-color" | "invalid-geometry" | "text-overflow" | "page-index-out-of-range" | "unknown-destination" | "invalid-page-labels" | "profile-version-conflict" | "missing-title" | "missing-lang" | "missing-alt-text" | "untagged-content" | "heading-level-skipped" | "unnumbered-heading-misused" | "invalid-structure-nesting" | "link-without-structure" | "link-without-contents" | "font-not-embedded" | "glyph-without-unicode" | "device-color-without-output-intent" | "embedded-file-forbidden" | "embedded-file-without-mime-type" | "render-too-large" | "render-failed" | "render-backend-unavailable" | "cancelled" | "job-finished" | "document-changed" | "builder-finished" | "invalid-argument" | "source-budget-exceeded" | "unknown-option" | "already-initialized" | "extract-module-not-loaded" | "fetch-failed" | "not-initialized" | "source-changed" | "text-module-not-loaded" | "disposed" | "worker-version-mismatch" | "worker-crashed" | "worker-failed";
4
+ export type ErrorCode = "not-pdf" | "missing-root" | "reference-cycle" | "limit-exceeded" | "strict" | "data-pending" | "source" | "type" | "invalid-structure" | "unset-object" | "repaired-base" | "encrypted-base" | "password-required" | "wrong-password" | "unsupported-security-handler" | "unexpected-eof" | "syntax" | "unsupported-filter" | "decompress" | "nested-transaction" | "no-transaction" | "unknown-page" | "direct-page" | "unsupported-version" | "invalid-op-log" | "saved-not-rebased" | "no-pending-save" | "sink" | "not-rebased" | "sink-not-empty" | "would-invalidate-signatures" | "requires-rewrite" | "invalid-font" | "collection-index" | "unknown-axis" | "font-not-embeddable" | "missing-glyph" | "glyph-out-of-range" | "unknown-font" | "subset-failed" | "invalid-axis-value" | "wrong-document" | "invalid-feature" | "invalid-text-range" | "invalid-spans" | "unsupported-layout-option" | "font-mismatch" | "encoding-full" | "font-not-shapable" | "invalid-image" | "unsupported-image" | "image-too-large" | "image-data-length" | "invalid-icc-profile" | "color-components" | "invalid-color" | "invalid-geometry" | "text-overflow" | "page-index-out-of-range" | "unknown-destination" | "invalid-page-labels" | "tag-element-not-open" | "tag-element-unclosed" | "profile-version-conflict" | "missing-title" | "missing-lang" | "missing-alt-text" | "untagged-content" | "heading-level-skipped" | "unnumbered-heading-misused" | "invalid-structure-nesting" | "link-without-structure" | "link-without-contents" | "font-not-embedded" | "glyph-without-unicode" | "device-color-without-output-intent" | "embedded-file-forbidden" | "embedded-file-without-mime-type" | "flow-content-too-large" | "flow-layout-unstable" | "render-too-large" | "render-failed" | "render-backend-unavailable" | "model-failed" | "model-result-unexpected" | "model-needs-host" | "cancelled" | "job-finished" | "document-changed" | "revision-index-out-of-range" | "builder-finished" | "disposed" | "invalid-argument" | "source-budget-exceeded" | "unknown-option" | "already-initialized" | "extract-module-not-loaded" | "fetch-failed" | "not-initialized" | "source-changed" | "text-module-not-loaded" | "worker-version-mismatch" | "worker-crashed" | "worker-failed" | "wasm-trap" | "out-of-memory" | "instance-reset" | "invalid-command-line" | "invalid-page-range" | "binary-output-to-terminal" | "unknown-code" | "overwrite-refused" | "input-unreadable" | "output-unwritable" | "path-outside-roots";
5
5
  /** Every warning code (ADR 0026 §3; `fixtures/codes.json`). */
6
- export type WarningCode = "missing-header" | "xref-repaired" | "xrefstm-ignored" | "stream-length-recovered" | "stale-generation" | "page-tree-node-skipped" | "page-count-mismatch" | "flate-truncated" | "objstm-index-mismatch" | "object-number-out-of-range" | "aes-padding-invalid" | "perms-mismatch" | "warnings-truncated" | "invalid-box" | "invalid-rotate" | "name-tree-node-skipped" | "outline-cycle" | "outline-item-skipped" | "invalid-date" | "invalid-page-label" | "invalid-entry" | "content-unknown-operator" | "content-bad-operands" | "content-unbalanced-q" | "content-unbalanced-bt" | "content-unbalanced-marked" | "content-syntax" | "content-resource-missing" | "inline-image-unterminated" | "xobject-cycle" | "content-path-unpainted" | "font-invalid" | "cmap-invalid" | "unmapped-glyph" | "tounicode-conflict" | "whole-font-rebuilt";
6
+ export type WarningCode = "missing-header" | "xref-repaired" | "xrefstm-ignored" | "stream-length-recovered" | "stale-generation" | "page-tree-node-skipped" | "page-count-mismatch" | "flate-truncated" | "objstm-index-mismatch" | "object-number-out-of-range" | "aes-padding-invalid" | "perms-mismatch" | "warnings-truncated" | "invalid-box" | "invalid-rotate" | "name-tree-node-skipped" | "outline-cycle" | "outline-item-skipped" | "invalid-date" | "invalid-page-label" | "invalid-entry" | "content-unknown-operator" | "content-bad-operands" | "content-unbalanced-q" | "content-unbalanced-bt" | "content-unbalanced-marked" | "content-syntax" | "content-resource-missing" | "inline-image-unterminated" | "xobject-cycle" | "content-path-unpainted" | "font-invalid" | "cmap-invalid" | "unmapped-glyph" | "extract-limit-blocks" | "extract-reading-order-ambiguous" | "extract-table-ambiguous" | "extract-table-limit" | "extract-struct-tree-ignored" | "extract-untagged-content" | "extract-needs-ocr" | "extract-column-order-uncertain" | "tounicode-conflict" | "whole-font-rebuilt" | "flow-keep-broken" | "markdown-html-ignored" | "markdown-image-missing" | "covered-text" | "redaction-not-applied" | "text-in-earlier-revision";
7
7
  /** The names of the `Limits` (ADR 0003 §3), as `data.limit` of `limit-exceeded`. */
8
8
  export type LimitName = "max_nesting_depth" | "max_stream_decoded" | "max_decoded_total" | "max_filter_chain" | "max_resolve_depth" | "max_page_tree_depth" | "max_tree_depth" | "max_string_length" | "max_content_operators" | "max_xobject_depth" | "max_image_pixels" | "max_read_window";
9
9
  /** Every error code, in `codes.json` order. */
@@ -49,6 +49,10 @@ export declare const RAISED_BY_PACKAGE: {
49
49
  readonly kind: "state";
50
50
  readonly hint: "create a new builder or page: a finished one takes no more drawing, pages, fonts or settings";
51
51
  };
52
+ readonly disposed: {
53
+ readonly kind: "state";
54
+ readonly hint: "free a handle only after its last use; to keep working, open the document again or create a new builder";
55
+ };
52
56
  readonly "invalid-argument": {
53
57
  readonly kind: "usage";
54
58
  readonly hint: "pass the value the type declarations describe; the data field says what was wrong";
@@ -77,10 +81,6 @@ export declare const RAISED_BY_PACKAGE: {
77
81
  readonly kind: "state";
78
82
  readonly hint: "load the text module with init and the text option, or with loadText, before creating the builder that draws text";
79
83
  };
80
- readonly disposed: {
81
- readonly kind: "state";
82
- readonly hint: "free a handle only after its last use; to keep working, open the document again or create a new builder";
83
- };
84
84
  readonly "worker-version-mismatch": {
85
85
  readonly kind: "usage";
86
86
  readonly hint: "serve the worker file from the same @laminapdf/sdk build as the page; don't load it from a CDN or an older deploy";
@@ -93,5 +93,17 @@ export declare const RAISED_BY_PACKAGE: {
93
93
  readonly kind: "internal";
94
94
  readonly hint: "this is a bug in Lamina PDF: report it with the call and the message; the worker keeps running";
95
95
  };
96
+ readonly "wasm-trap": {
97
+ readonly kind: "internal";
98
+ readonly hint: "open the document again and retry; report the file and the call if it traps again";
99
+ };
100
+ readonly "out-of-memory": {
101
+ readonly kind: "limit";
102
+ readonly hint: "open fewer or smaller documents at once and free each when done; lower the open limits so hostile files fail sooner";
103
+ };
104
+ readonly "instance-reset": {
105
+ readonly kind: "state";
106
+ readonly hint: "open the document again or create a new builder: nothing from the old instance survives";
107
+ };
96
108
  };
97
109
  //# sourceMappingURL=codes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../src/generated/codes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../src/generated/codes.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,7 @@ export const ERROR_CODES = [
46
46
  "wrong-document",
47
47
  "invalid-feature",
48
48
  "invalid-text-range",
49
+ "invalid-spans",
49
50
  "unsupported-layout-option",
50
51
  "font-mismatch",
51
52
  "encoding-full",
@@ -62,6 +63,8 @@ export const ERROR_CODES = [
62
63
  "page-index-out-of-range",
63
64
  "unknown-destination",
64
65
  "invalid-page-labels",
66
+ "tag-element-not-open",
67
+ "tag-element-unclosed",
65
68
  "profile-version-conflict",
66
69
  "missing-title",
67
70
  "missing-lang",
@@ -77,13 +80,20 @@ export const ERROR_CODES = [
77
80
  "device-color-without-output-intent",
78
81
  "embedded-file-forbidden",
79
82
  "embedded-file-without-mime-type",
83
+ "flow-content-too-large",
84
+ "flow-layout-unstable",
80
85
  "render-too-large",
81
86
  "render-failed",
82
87
  "render-backend-unavailable",
88
+ "model-failed",
89
+ "model-result-unexpected",
90
+ "model-needs-host",
83
91
  "cancelled",
84
92
  "job-finished",
85
93
  "document-changed",
94
+ "revision-index-out-of-range",
86
95
  "builder-finished",
96
+ "disposed",
87
97
  "invalid-argument",
88
98
  "source-budget-exceeded",
89
99
  "unknown-option",
@@ -93,10 +103,20 @@ export const ERROR_CODES = [
93
103
  "not-initialized",
94
104
  "source-changed",
95
105
  "text-module-not-loaded",
96
- "disposed",
97
106
  "worker-version-mismatch",
98
107
  "worker-crashed",
99
108
  "worker-failed",
109
+ "wasm-trap",
110
+ "out-of-memory",
111
+ "instance-reset",
112
+ "invalid-command-line",
113
+ "invalid-page-range",
114
+ "binary-output-to-terminal",
115
+ "unknown-code",
116
+ "overwrite-refused",
117
+ "input-unreadable",
118
+ "output-unwritable",
119
+ "path-outside-roots",
100
120
  ];
101
121
  /** Every warning code, in `codes.json` order. */
102
122
  export const WARNING_CODES = [
@@ -134,8 +154,22 @@ export const WARNING_CODES = [
134
154
  "font-invalid",
135
155
  "cmap-invalid",
136
156
  "unmapped-glyph",
157
+ "extract-limit-blocks",
158
+ "extract-reading-order-ambiguous",
159
+ "extract-table-ambiguous",
160
+ "extract-table-limit",
161
+ "extract-struct-tree-ignored",
162
+ "extract-untagged-content",
163
+ "extract-needs-ocr",
164
+ "extract-column-order-uncertain",
137
165
  "tounicode-conflict",
138
166
  "whole-font-rebuilt",
167
+ "flow-keep-broken",
168
+ "markdown-html-ignored",
169
+ "markdown-image-missing",
170
+ "covered-text",
171
+ "redaction-not-applied",
172
+ "text-in-earlier-revision",
139
173
  ];
140
174
  /** The kind of every code. */
141
175
  export const KINDS = {
@@ -173,6 +207,14 @@ export const KINDS = {
173
207
  "font-invalid": "input",
174
208
  "cmap-invalid": "input",
175
209
  "unmapped-glyph": "input",
210
+ "extract-limit-blocks": "limit",
211
+ "extract-reading-order-ambiguous": "unsupported",
212
+ "extract-table-ambiguous": "unsupported",
213
+ "extract-table-limit": "limit",
214
+ "extract-struct-tree-ignored": "input",
215
+ "extract-untagged-content": "input",
216
+ "extract-needs-ocr": "unsupported",
217
+ "extract-column-order-uncertain": "unsupported",
176
218
  "not-pdf": "input",
177
219
  "missing-root": "input",
178
220
  "reference-cycle": "input",
@@ -217,6 +259,7 @@ export const KINDS = {
217
259
  "wrong-document": "usage",
218
260
  "invalid-feature": "usage",
219
261
  "invalid-text-range": "usage",
262
+ "invalid-spans": "usage",
220
263
  "unsupported-layout-option": "unsupported",
221
264
  "font-mismatch": "usage",
222
265
  "encoding-full": "limit",
@@ -235,6 +278,8 @@ export const KINDS = {
235
278
  "page-index-out-of-range": "usage",
236
279
  "unknown-destination": "usage",
237
280
  "invalid-page-labels": "usage",
281
+ "tag-element-not-open": "usage",
282
+ "tag-element-unclosed": "usage",
238
283
  "profile-version-conflict": "usage",
239
284
  "missing-title": "usage",
240
285
  "missing-lang": "usage",
@@ -250,13 +295,26 @@ export const KINDS = {
250
295
  "device-color-without-output-intent": "usage",
251
296
  "embedded-file-forbidden": "usage",
252
297
  "embedded-file-without-mime-type": "usage",
298
+ "flow-content-too-large": "usage",
299
+ "flow-layout-unstable": "internal",
300
+ "flow-keep-broken": "usage",
301
+ "markdown-html-ignored": "unsupported",
302
+ "markdown-image-missing": "usage",
253
303
  "render-too-large": "limit",
254
304
  "render-failed": "input",
255
305
  "render-backend-unavailable": "io",
306
+ "model-failed": "internal",
307
+ "model-result-unexpected": "usage",
308
+ "model-needs-host": "usage",
256
309
  "cancelled": "cancelled",
257
310
  "job-finished": "state",
258
311
  "document-changed": "state",
312
+ "revision-index-out-of-range": "usage",
313
+ "covered-text": "security",
314
+ "redaction-not-applied": "security",
315
+ "text-in-earlier-revision": "security",
259
316
  "builder-finished": "state",
317
+ "disposed": "state",
260
318
  "invalid-argument": "usage",
261
319
  "source-budget-exceeded": "limit",
262
320
  "unknown-option": "usage",
@@ -266,10 +324,20 @@ export const KINDS = {
266
324
  "not-initialized": "state",
267
325
  "source-changed": "io",
268
326
  "text-module-not-loaded": "state",
269
- "disposed": "state",
270
327
  "worker-version-mismatch": "usage",
271
328
  "worker-crashed": "internal",
272
329
  "worker-failed": "internal",
330
+ "wasm-trap": "internal",
331
+ "out-of-memory": "limit",
332
+ "instance-reset": "state",
333
+ "invalid-command-line": "usage",
334
+ "invalid-page-range": "usage",
335
+ "binary-output-to-terminal": "usage",
336
+ "unknown-code": "usage",
337
+ "overwrite-refused": "state",
338
+ "input-unreadable": "io",
339
+ "output-unwritable": "io",
340
+ "path-outside-roots": "security",
273
341
  };
274
342
  /** The hint of every code (ADR 0026 §5), with its `{limit}`/`{option}` parameters unfilled. */
275
343
  export const HINTS = {
@@ -307,6 +375,14 @@ export const HINTS = {
307
375
  "font-invalid": "nothing to do; extracted text or positions for that font may be off",
308
376
  "cmap-invalid": "nothing to do; the bad entries were skipped and the rest of the CMap is used",
309
377
  "unmapped-glyph": "nothing to do; those glyphs extract as U+FFFD (the file needs a ToUnicode CMap)",
378
+ "extract-limit-blocks": "raise ExtractLimits::max_blocks_per_page if the page really has that many blocks",
379
+ "extract-reading-order-ambiguous": "nothing to do; check the order of that page's blocks, or ask for content order",
380
+ "extract-table-ambiguous": "nothing to do; check that table's cells, whose text may be split across neighbours",
381
+ "extract-table-limit": "raise ExtractLimits::max_table_cells if the page really has a table that big",
382
+ "extract-struct-tree-ignored": "nothing to do; ReadingOrder::Tagged uses the tree anyway",
383
+ "extract-untagged-content": "nothing to do; tag that text in the file to give it a place in the reading order",
384
+ "extract-needs-ocr": "run OCR or a vision model on this page; the page's textLayer in the JSON says which case it is",
385
+ "extract-column-order-uncertain": "check the page, or send it to a layout model; the warning's reason says which guess was made",
310
386
  "not-pdf": "check that the bytes passed to open are a PDF file",
311
387
  "missing-root": "use another copy of the file: this one has no usable catalog",
312
388
  "reference-cycle": "use another copy of the file, or repair it with another tool",
@@ -351,6 +427,7 @@ export const HINTS = {
351
427
  "wrong-document": "use one FontRegistry per document and finish it with that document",
352
428
  "invalid-feature": "write it as liga=0, -liga, smcp or aalt=2 (HarfBuzz syntax without ranges)",
353
429
  "invalid-text-range": "take ranges from Lamina PDF's results (line_breaks, itemize, break_lines) and pass the same text",
430
+ "invalid-spans": "give spans in text order, each starting where the one before ends, from byte 0 to the end of the text, between grapheme clusters, each with at least one font from the list",
354
431
  "unsupported-layout-option": "leave the option at its default; justification comes with a later release",
355
432
  "font-mismatch": "pass the key of the font the run was shaped with (the font index of each line run maps to your keys)",
356
433
  "encoding-full": "embed a font with Font::from_bytes, or split the text across two registrations of the standard font",
@@ -369,6 +446,8 @@ export const HINTS = {
369
446
  "page-index-out-of-range": "use a 0-based index below the document's page count",
370
447
  "unknown-destination": "define it with Builder::destination before the build finishes, or link to a page",
371
448
  "invalid-page-labels": "give ranges sorted by first page, the first at page 0, numbered from 1",
449
+ "tag-element-not-open": "resume and close only elements this builder's pages opened with open_element, and close each once",
450
+ "tag-element-unclosed": "close each element from open_element with Builder::close_element once its last page is finished",
372
451
  "profile-version-conflict": "leave the version at 1.7 (the default) or lower; PDF 2.0 needs PDF/A-4 or PDF/UA-2, which Lamina PDF doesn't write yet",
373
452
  "missing-title": "set a title with Builder::metadata (Metadata::with_title)",
374
453
  "missing-lang": "set the language with Builder::lang, such as \"en-GB\"",
@@ -380,17 +459,30 @@ export const HINTS = {
380
459
  "link-without-structure": "draw links outside artifacts, so the builder gives each one a Link element",
381
460
  "link-without-contents": "pass a description as the link's contents",
382
461
  "font-not-embedded": "load a font file with Builder::font instead of Builder::standard_font",
383
- "glyph-without-unicode": "use text whose glyphs each stand for characters, or choose PDF/A-2b, which doesn't need Unicode",
462
+ "glyph-without-unicode": "remove NUL characters (U+0000) from the text, or choose PDF/A-2b, which doesn't need Unicode",
384
463
  "device-color-without-output-intent": "use RGB or gray colours, or a CMYK colour with an ICC profile (Color::icc)",
385
464
  "embedded-file-forbidden": "choose PDF/A-3b, which allows attached files of any kind",
386
465
  "embedded-file-without-mime-type": "pass the file's MIME type, such as text/xml or application/octet-stream",
466
+ "flow-content-too-large": "make the figure smaller, the text size smaller or the page's margins narrower",
467
+ "flow-layout-unstable": "report the flow that fails; a page break after the contents block may avoid it until it is fixed",
468
+ "flow-keep-broken": "split the keep group or drop keep-with-next on a heading chain, or use a taller page",
469
+ "markdown-html-ignored": "write the content in Markdown instead of HTML, or remove the HTML",
470
+ "markdown-image-missing": "pass the image's bytes with MarkdownBuildOptions::with_image under the path the Markdown uses",
387
471
  "render-too-large": "request smaller tiles (256 to 512 pixels at high zoom) or raise RenderLimits if the larger bitmap is intended",
388
472
  "render-failed": "the file may be damaged or use a feature this engine can't draw; try the other backend, or report the file",
389
473
  "render-backend-unavailable": "run cargo xtask fetch-pdfium or set LAMINA_PDF_PDFIUM_DIR to the folder holding the PDFium library",
474
+ "model-failed": "check the plug-in's own logs; extract without the model to get the rules-only result",
475
+ "model-result-unexpected": "call provide only while request() returns a request, with the result its kind asks for",
476
+ "model-needs-host": "step an extraction job and hand it each result with provide, or give the plug-in a page renderer",
390
477
  "cancelled": "nothing to do: this is the outcome the caller asked for; start a new job to try again",
391
478
  "job-finished": "stop stepping a job once a step returned its result or an error; create a new job",
392
479
  "document-changed": "pass the document the job was created from, and don't change it while the job runs; create a new job",
480
+ "revision-index-out-of-range": "ask for an index below the document's revision count",
481
+ "covered-text": "remove the text itself with a tool that deletes what a redaction covers, then save a full rewrite",
482
+ "redaction-not-applied": "apply the redactions in a tool that removes what they cover, then save a full rewrite",
483
+ "text-in-earlier-revision": "save the file as a full rewrite, which keeps only the latest revision",
393
484
  "builder-finished": "create a new builder or page: a finished one takes no more drawing, pages, fonts or settings",
485
+ "disposed": "free a handle only after its last use; to keep working, open the document again or create a new builder",
394
486
  "invalid-argument": "pass the value the type declarations describe; the data field says what was wrong",
395
487
  "source-budget-exceeded": "raise the source's budget, or open the file with fewer bytes fetched (smaller blocks, no readahead)",
396
488
  "unknown-option": "remove the key or correct its spelling; didYouMean lists the closest known names",
@@ -400,10 +492,20 @@ export const HINTS = {
400
492
  "not-initialized": "await init() once before calling anything else in @laminapdf/sdk",
401
493
  "source-changed": "open the file again; the document already read parts of the old version and can't mix in the new one",
402
494
  "text-module-not-loaded": "load the text module with init and the text option, or with loadText, before creating the builder that draws text",
403
- "disposed": "free a handle only after its last use; to keep working, open the document again or create a new builder",
404
495
  "worker-version-mismatch": "serve the worker file from the same @laminapdf/sdk build as the page; don't load it from a CDN or an older deploy",
405
496
  "worker-crashed": "call client.restart() and open the document again; report the file if it keeps happening",
406
497
  "worker-failed": "this is a bug in Lamina PDF: report it with the call and the message; the worker keeps running",
498
+ "wasm-trap": "open the document again and retry; report the file and the call if it traps again",
499
+ "out-of-memory": "open fewer or smaller documents at once and free each when done; lower the open limits so hostile files fail sooner",
500
+ "instance-reset": "open the document again or create a new builder: nothing from the old instance survives",
501
+ "invalid-command-line": "run the command with --help to see its arguments",
502
+ "invalid-page-range": "write pages as 1-5, z for the last page, r2 for the second from the end, or x3 to leave page 3 out; data.position is the character where the range went wrong",
503
+ "binary-output-to-terminal": "redirect standard output to a file or a pipe, or write to a file with -o",
504
+ "unknown-code": "check the spelling against didYouMean, or list every code at the docs URL",
505
+ "overwrite-refused": "pass --force, or write to a new file with -o",
506
+ "input-unreadable": "check that the file exists and that you can read it; data.input names it",
507
+ "output-unwritable": "check that the output's folder exists, that you can write to it and that the disk has room",
508
+ "path-outside-roots": "use a path inside one of the server's --root folders, or start the server with another --root",
407
509
  };
408
510
  /** `docsUrl` = base + code + suffix (ADR 0026 §6). */
409
511
  export const DOCS_URL = { base: "https://github.com/laudebugs/laminapdf/blob/main/docs/errors/", suffix: ".md" };
@@ -419,14 +521,18 @@ export const ERROR_GROUPS = [
419
521
  "textErrors",
420
522
  "buildErrors",
421
523
  "renderErrors",
524
+ "extractErrors",
422
525
  "facadeErrors",
423
526
  "bindingErrors",
424
527
  "packageErrors",
528
+ "cliErrors",
425
529
  ];
426
530
  /** The groups of `codes.json` that list warnings. */
427
531
  export const WARNING_GROUPS = [
428
532
  "warnings",
429
533
  "textWarnings",
534
+ "buildWarnings",
535
+ "facadeWarnings",
430
536
  ];
431
537
  /** The groups whose codes only `@laminapdf/sdk` raises (not in the Rust enums or the WASM). */
432
538
  export const TS_ONLY_GROUPS = [
@@ -438,6 +544,7 @@ export const RAISED_BY_PACKAGE = {
438
544
  "no-transaction": { kind: "state", hint: "call begin first, or use transact" },
439
545
  "cancelled": { kind: "cancelled", hint: "nothing to do: this is the outcome the caller asked for; start a new job to try again" },
440
546
  "builder-finished": { kind: "state", hint: "create a new builder or page: a finished one takes no more drawing, pages, fonts or settings" },
547
+ "disposed": { kind: "state", hint: "free a handle only after its last use; to keep working, open the document again or create a new builder" },
441
548
  "invalid-argument": { kind: "usage", hint: "pass the value the type declarations describe; the data field says what was wrong" },
442
549
  "already-initialized": { kind: "state", hint: "call init and loadText with a source once, before the first load; later calls need no source" },
443
550
  "extract-module-not-loaded": { kind: "state", hint: "load the extract module (init with the extract option, or loadExtract) or the text module before opening the document" },
@@ -445,9 +552,11 @@ export const RAISED_BY_PACKAGE = {
445
552
  "not-initialized": { kind: "state", hint: "await init() once before calling anything else in @laminapdf/sdk" },
446
553
  "source-changed": { kind: "io", hint: "open the file again; the document already read parts of the old version and can't mix in the new one" },
447
554
  "text-module-not-loaded": { kind: "state", hint: "load the text module with init and the text option, or with loadText, before creating the builder that draws text" },
448
- "disposed": { kind: "state", hint: "free a handle only after its last use; to keep working, open the document again or create a new builder" },
449
555
  "worker-version-mismatch": { kind: "usage", hint: "serve the worker file from the same @laminapdf/sdk build as the page; don't load it from a CDN or an older deploy" },
450
556
  "worker-crashed": { kind: "internal", hint: "call client.restart() and open the document again; report the file if it keeps happening" },
451
557
  "worker-failed": { kind: "internal", hint: "this is a bug in Lamina PDF: report it with the call and the message; the worker keeps running" },
558
+ "wasm-trap": { kind: "internal", hint: "open the document again and retry; report the file and the call if it traps again" },
559
+ "out-of-memory": { kind: "limit", hint: "open fewer or smaller documents at once and free each when done; lower the open limits so hostile files fail sooner" },
560
+ "instance-reset": { kind: "state", hint: "open the document again or create a new builder: nothing from the old instance survives" },
452
561
  };
453
562
  //# sourceMappingURL=codes.js.map