@adnsistemas/pdf-lib 2.8.1 → 2.9.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 (753) hide show
  1. package/README.md +7 -2
  2. package/cjs/api/PDFDocument.d.ts +3 -0
  3. package/cjs/api/PDFDocument.d.ts.map +1 -1
  4. package/cjs/api/PDFDocument.js +22 -15
  5. package/cjs/api/PDFDocument.js.map +1 -1
  6. package/cjs/api/PDFFont.d.ts.map +1 -1
  7. package/cjs/api/PDFFont.js +4 -2
  8. package/cjs/api/PDFFont.js.map +1 -1
  9. package/cjs/api/PDFPage.d.ts.map +1 -1
  10. package/cjs/api/PDFPage.js +5 -4
  11. package/cjs/api/PDFPage.js.map +1 -1
  12. package/cjs/api/form/PDFButton.d.ts +3 -0
  13. package/cjs/api/form/PDFButton.d.ts.map +1 -1
  14. package/cjs/api/form/PDFButton.js +6 -1
  15. package/cjs/api/form/PDFButton.js.map +1 -1
  16. package/cjs/api/form/PDFCheckBox.d.ts +3 -0
  17. package/cjs/api/form/PDFCheckBox.d.ts.map +1 -1
  18. package/cjs/api/form/PDFCheckBox.js +6 -1
  19. package/cjs/api/form/PDFCheckBox.js.map +1 -1
  20. package/cjs/api/form/PDFDropdown.d.ts +3 -0
  21. package/cjs/api/form/PDFDropdown.d.ts.map +1 -1
  22. package/cjs/api/form/PDFDropdown.js +6 -1
  23. package/cjs/api/form/PDFDropdown.js.map +1 -1
  24. package/cjs/api/form/PDFField.d.ts +3 -0
  25. package/cjs/api/form/PDFField.d.ts.map +1 -1
  26. package/cjs/api/form/PDFField.js +5 -0
  27. package/cjs/api/form/PDFField.js.map +1 -1
  28. package/cjs/api/form/PDFForm.d.ts.map +1 -1
  29. package/cjs/api/form/PDFForm.js +24 -22
  30. package/cjs/api/form/PDFForm.js.map +1 -1
  31. package/cjs/api/form/PDFOptionList.d.ts +3 -0
  32. package/cjs/api/form/PDFOptionList.d.ts.map +1 -1
  33. package/cjs/api/form/PDFOptionList.js +6 -1
  34. package/cjs/api/form/PDFOptionList.js.map +1 -1
  35. package/cjs/api/form/PDFRadioGroup.d.ts +3 -0
  36. package/cjs/api/form/PDFRadioGroup.d.ts.map +1 -1
  37. package/cjs/api/form/PDFRadioGroup.js +7 -2
  38. package/cjs/api/form/PDFRadioGroup.js.map +1 -1
  39. package/cjs/api/form/PDFSignature.d.ts +3 -0
  40. package/cjs/api/form/PDFSignature.d.ts.map +1 -1
  41. package/cjs/api/form/PDFSignature.js +5 -0
  42. package/cjs/api/form/PDFSignature.js.map +1 -1
  43. package/cjs/api/form/PDFTextField.d.ts +3 -0
  44. package/cjs/api/form/PDFTextField.d.ts.map +1 -1
  45. package/cjs/api/form/PDFTextField.js +6 -1
  46. package/cjs/api/form/PDFTextField.js.map +1 -1
  47. package/cjs/api/objects.d.ts +61 -0
  48. package/cjs/api/objects.d.ts.map +1 -1
  49. package/cjs/api/objects.js +97 -4
  50. package/cjs/api/objects.js.map +1 -1
  51. package/cjs/api/operators.d.ts +28 -24
  52. package/cjs/api/operators.d.ts.map +1 -1
  53. package/cjs/api/operators.js +33 -29
  54. package/cjs/api/operators.js.map +1 -1
  55. package/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  56. package/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts.map +1 -1
  57. package/cjs/api/snapshot/DefaultDocumentSnapshot.js +5 -0
  58. package/cjs/api/snapshot/DefaultDocumentSnapshot.js.map +1 -1
  59. package/cjs/api/snapshot/DocumentSnapshot.d.ts +2 -0
  60. package/cjs/api/snapshot/DocumentSnapshot.d.ts.map +1 -1
  61. package/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  62. package/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts.map +1 -1
  63. package/cjs/api/snapshot/IncrementalDocumentSnapshot.js +5 -0
  64. package/cjs/api/snapshot/IncrementalDocumentSnapshot.js.map +1 -1
  65. package/cjs/core/PDFContext.d.ts +1 -1
  66. package/cjs/core/PDFContext.d.ts.map +1 -1
  67. package/cjs/core/PDFContext.js +33 -35
  68. package/cjs/core/PDFContext.js.map +1 -1
  69. package/cjs/core/PDFObjectCopier.d.ts.map +1 -1
  70. package/cjs/core/PDFObjectCopier.js +6 -9
  71. package/cjs/core/PDFObjectCopier.js.map +1 -1
  72. package/cjs/core/acroform/PDFAcroButton.d.ts.map +1 -1
  73. package/cjs/core/acroform/PDFAcroButton.js +7 -3
  74. package/cjs/core/acroform/PDFAcroButton.js.map +1 -1
  75. package/cjs/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  76. package/cjs/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
  77. package/cjs/core/acroform/PDFAcroCheckBox.js +6 -1
  78. package/cjs/core/acroform/PDFAcroCheckBox.js.map +1 -1
  79. package/cjs/core/acroform/PDFAcroChoice.d.ts.map +1 -1
  80. package/cjs/core/acroform/PDFAcroChoice.js +22 -9
  81. package/cjs/core/acroform/PDFAcroChoice.js.map +1 -1
  82. package/cjs/core/acroform/PDFAcroComboBox.d.ts +3 -0
  83. package/cjs/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
  84. package/cjs/core/acroform/PDFAcroComboBox.js +5 -0
  85. package/cjs/core/acroform/PDFAcroComboBox.js.map +1 -1
  86. package/cjs/core/acroform/PDFAcroField.d.ts +3 -0
  87. package/cjs/core/acroform/PDFAcroField.d.ts.map +1 -1
  88. package/cjs/core/acroform/PDFAcroField.js +9 -4
  89. package/cjs/core/acroform/PDFAcroField.js.map +1 -1
  90. package/cjs/core/acroform/PDFAcroForm.d.ts +3 -0
  91. package/cjs/core/acroform/PDFAcroForm.d.ts.map +1 -1
  92. package/cjs/core/acroform/PDFAcroForm.js +7 -4
  93. package/cjs/core/acroform/PDFAcroForm.js.map +1 -1
  94. package/cjs/core/acroform/PDFAcroListBox.d.ts +3 -0
  95. package/cjs/core/acroform/PDFAcroListBox.d.ts.map +1 -1
  96. package/cjs/core/acroform/PDFAcroListBox.js +5 -0
  97. package/cjs/core/acroform/PDFAcroListBox.js.map +1 -1
  98. package/cjs/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  99. package/cjs/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
  100. package/cjs/core/acroform/PDFAcroNonTerminal.js +5 -0
  101. package/cjs/core/acroform/PDFAcroNonTerminal.js.map +1 -1
  102. package/cjs/core/acroform/PDFAcroPushButton.d.ts +3 -0
  103. package/cjs/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
  104. package/cjs/core/acroform/PDFAcroPushButton.js +5 -0
  105. package/cjs/core/acroform/PDFAcroPushButton.js.map +1 -1
  106. package/cjs/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  107. package/cjs/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
  108. package/cjs/core/acroform/PDFAcroRadioButton.js +6 -1
  109. package/cjs/core/acroform/PDFAcroRadioButton.js.map +1 -1
  110. package/cjs/core/acroform/PDFAcroSignature.d.ts +3 -0
  111. package/cjs/core/acroform/PDFAcroSignature.d.ts.map +1 -1
  112. package/cjs/core/acroform/PDFAcroSignature.js +5 -0
  113. package/cjs/core/acroform/PDFAcroSignature.js.map +1 -1
  114. package/cjs/core/acroform/PDFAcroText.d.ts +3 -0
  115. package/cjs/core/acroform/PDFAcroText.d.ts.map +1 -1
  116. package/cjs/core/acroform/PDFAcroText.js +9 -5
  117. package/cjs/core/acroform/PDFAcroText.js.map +1 -1
  118. package/cjs/core/acroform/utils.d.ts.map +1 -1
  119. package/cjs/core/acroform/utils.js +11 -7
  120. package/cjs/core/acroform/utils.js.map +1 -1
  121. package/cjs/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
  122. package/cjs/core/annotation/AppearanceCharacteristics.js +12 -11
  123. package/cjs/core/annotation/AppearanceCharacteristics.js.map +1 -1
  124. package/cjs/core/annotation/BorderStyle.d.ts.map +1 -1
  125. package/cjs/core/annotation/BorderStyle.js +2 -2
  126. package/cjs/core/annotation/BorderStyle.js.map +1 -1
  127. package/cjs/core/annotation/PDFAnnotation.d.ts.map +1 -1
  128. package/cjs/core/annotation/PDFAnnotation.js +4 -3
  129. package/cjs/core/annotation/PDFAnnotation.js.map +1 -1
  130. package/cjs/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
  131. package/cjs/core/annotation/PDFWidgetAnnotation.js +8 -9
  132. package/cjs/core/annotation/PDFWidgetAnnotation.js.map +1 -1
  133. package/cjs/core/crypto.d.ts +3 -0
  134. package/cjs/core/crypto.d.ts.map +1 -1
  135. package/cjs/core/crypto.js +10 -5
  136. package/cjs/core/crypto.js.map +1 -1
  137. package/cjs/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
  138. package/cjs/core/embedders/PDFPageEmbedder.js +3 -4
  139. package/cjs/core/embedders/PDFPageEmbedder.js.map +1 -1
  140. package/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -0
  141. package/cjs/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
  142. package/cjs/core/embedders/StandardFontEmbedder.js +5 -0
  143. package/cjs/core/embedders/StandardFontEmbedder.js.map +1 -1
  144. package/cjs/core/interactive/ViewerPreferences.d.ts.map +1 -1
  145. package/cjs/core/interactive/ViewerPreferences.js +5 -6
  146. package/cjs/core/interactive/ViewerPreferences.js.map +1 -1
  147. package/cjs/core/objects/PDFArray.d.ts +3 -0
  148. package/cjs/core/objects/PDFArray.d.ts.map +1 -1
  149. package/cjs/core/objects/PDFArray.js +6 -1
  150. package/cjs/core/objects/PDFArray.js.map +1 -1
  151. package/cjs/core/objects/PDFBool.d.ts +3 -0
  152. package/cjs/core/objects/PDFBool.d.ts.map +1 -1
  153. package/cjs/core/objects/PDFBool.js +5 -0
  154. package/cjs/core/objects/PDFBool.js.map +1 -1
  155. package/cjs/core/objects/PDFDict.d.ts +3 -0
  156. package/cjs/core/objects/PDFDict.d.ts.map +1 -1
  157. package/cjs/core/objects/PDFDict.js +5 -0
  158. package/cjs/core/objects/PDFDict.js.map +1 -1
  159. package/cjs/core/objects/PDFHexString.d.ts +3 -0
  160. package/cjs/core/objects/PDFHexString.d.ts.map +1 -1
  161. package/cjs/core/objects/PDFHexString.js +5 -0
  162. package/cjs/core/objects/PDFHexString.js.map +1 -1
  163. package/cjs/core/objects/PDFInvalidObject.d.ts +3 -0
  164. package/cjs/core/objects/PDFInvalidObject.d.ts.map +1 -1
  165. package/cjs/core/objects/PDFInvalidObject.js +5 -0
  166. package/cjs/core/objects/PDFInvalidObject.js.map +1 -1
  167. package/cjs/core/objects/PDFName.d.ts +3 -0
  168. package/cjs/core/objects/PDFName.d.ts.map +1 -1
  169. package/cjs/core/objects/PDFName.js +5 -0
  170. package/cjs/core/objects/PDFName.js.map +1 -1
  171. package/cjs/core/objects/PDFNull.d.ts +3 -0
  172. package/cjs/core/objects/PDFNull.d.ts.map +1 -1
  173. package/cjs/core/objects/PDFNull.js +5 -0
  174. package/cjs/core/objects/PDFNull.js.map +1 -1
  175. package/cjs/core/objects/PDFNumber.d.ts +3 -0
  176. package/cjs/core/objects/PDFNumber.d.ts.map +1 -1
  177. package/cjs/core/objects/PDFNumber.js +5 -0
  178. package/cjs/core/objects/PDFNumber.js.map +1 -1
  179. package/cjs/core/objects/PDFObject.d.ts +3 -0
  180. package/cjs/core/objects/PDFObject.d.ts.map +1 -1
  181. package/cjs/core/objects/PDFObject.js +5 -0
  182. package/cjs/core/objects/PDFObject.js.map +1 -1
  183. package/cjs/core/objects/PDFRawStream.d.ts +3 -0
  184. package/cjs/core/objects/PDFRawStream.d.ts.map +1 -1
  185. package/cjs/core/objects/PDFRawStream.js +5 -0
  186. package/cjs/core/objects/PDFRawStream.js.map +1 -1
  187. package/cjs/core/objects/PDFRef.d.ts +3 -0
  188. package/cjs/core/objects/PDFRef.d.ts.map +1 -1
  189. package/cjs/core/objects/PDFRef.js +5 -0
  190. package/cjs/core/objects/PDFRef.js.map +1 -1
  191. package/cjs/core/objects/PDFStream.d.ts +3 -0
  192. package/cjs/core/objects/PDFStream.d.ts.map +1 -1
  193. package/cjs/core/objects/PDFStream.js +5 -0
  194. package/cjs/core/objects/PDFStream.js.map +1 -1
  195. package/cjs/core/objects/PDFString.d.ts +3 -0
  196. package/cjs/core/objects/PDFString.d.ts.map +1 -1
  197. package/cjs/core/objects/PDFString.js +5 -0
  198. package/cjs/core/objects/PDFString.js.map +1 -1
  199. package/cjs/core/operators/PDFOperator.d.ts.map +1 -1
  200. package/cjs/core/operators/PDFOperator.js +9 -4
  201. package/cjs/core/operators/PDFOperator.js.map +1 -1
  202. package/cjs/core/parser/PDFObjectParser.d.ts.map +1 -1
  203. package/cjs/core/parser/PDFObjectParser.js +2 -1
  204. package/cjs/core/parser/PDFObjectParser.js.map +1 -1
  205. package/cjs/core/parser/PDFParser.d.ts.map +1 -1
  206. package/cjs/core/parser/PDFParser.js +8 -7
  207. package/cjs/core/parser/PDFParser.js.map +1 -1
  208. package/cjs/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
  209. package/cjs/core/parser/PDFXRefStreamParser.js +8 -3
  210. package/cjs/core/parser/PDFXRefStreamParser.js.map +1 -1
  211. package/cjs/core/streams/decode.d.ts.map +1 -1
  212. package/cjs/core/streams/decode.js +5 -5
  213. package/cjs/core/streams/decode.js.map +1 -1
  214. package/cjs/core/structures/PDFCatalog.d.ts +3 -0
  215. package/cjs/core/structures/PDFCatalog.d.ts.map +1 -1
  216. package/cjs/core/structures/PDFCatalog.js +5 -0
  217. package/cjs/core/structures/PDFCatalog.js.map +1 -1
  218. package/cjs/core/structures/PDFContentStream.d.ts +3 -0
  219. package/cjs/core/structures/PDFContentStream.d.ts.map +1 -1
  220. package/cjs/core/structures/PDFContentStream.js +5 -0
  221. package/cjs/core/structures/PDFContentStream.js.map +1 -1
  222. package/cjs/core/structures/PDFObjectStream.d.ts +3 -0
  223. package/cjs/core/structures/PDFObjectStream.d.ts.map +1 -1
  224. package/cjs/core/structures/PDFObjectStream.js +5 -0
  225. package/cjs/core/structures/PDFObjectStream.js.map +1 -1
  226. package/cjs/core/structures/PDFPageLeaf.d.ts +3 -0
  227. package/cjs/core/structures/PDFPageLeaf.d.ts.map +1 -1
  228. package/cjs/core/structures/PDFPageLeaf.js +7 -3
  229. package/cjs/core/structures/PDFPageLeaf.js.map +1 -1
  230. package/cjs/core/structures/PDFPageTree.d.ts +3 -0
  231. package/cjs/core/structures/PDFPageTree.d.ts.map +1 -1
  232. package/cjs/core/structures/PDFPageTree.js +11 -7
  233. package/cjs/core/structures/PDFPageTree.js.map +1 -1
  234. package/cjs/core/writers/PDFStreamWriter.d.ts +3 -0
  235. package/cjs/core/writers/PDFStreamWriter.d.ts.map +1 -1
  236. package/cjs/core/writers/PDFStreamWriter.js +11 -12
  237. package/cjs/core/writers/PDFStreamWriter.js.map +1 -1
  238. package/cjs/core/writers/PDFWriter.d.ts +3 -0
  239. package/cjs/core/writers/PDFWriter.d.ts.map +1 -1
  240. package/cjs/core/writers/PDFWriter.js +13 -8
  241. package/cjs/core/writers/PDFWriter.js.map +1 -1
  242. package/cjs/utils/elements/Arc.d.ts +3 -0
  243. package/cjs/utils/elements/Arc.d.ts.map +1 -1
  244. package/cjs/utils/elements/Arc.js +6 -1
  245. package/cjs/utils/elements/Arc.js.map +1 -1
  246. package/cjs/utils/elements/Circle.d.ts +3 -0
  247. package/cjs/utils/elements/Circle.d.ts.map +1 -1
  248. package/cjs/utils/elements/Circle.js +6 -1
  249. package/cjs/utils/elements/Circle.js.map +1 -1
  250. package/cjs/utils/elements/Ellipse.d.ts +3 -0
  251. package/cjs/utils/elements/Ellipse.d.ts.map +1 -1
  252. package/cjs/utils/elements/Ellipse.js +6 -1
  253. package/cjs/utils/elements/Ellipse.js.map +1 -1
  254. package/cjs/utils/elements/GraphElement.d.ts +2 -0
  255. package/cjs/utils/elements/GraphElement.d.ts.map +1 -1
  256. package/cjs/utils/elements/GraphElement.js.map +1 -1
  257. package/cjs/utils/elements/Line.d.ts +3 -0
  258. package/cjs/utils/elements/Line.d.ts.map +1 -1
  259. package/cjs/utils/elements/Line.js +6 -1
  260. package/cjs/utils/elements/Line.js.map +1 -1
  261. package/cjs/utils/elements/Plot.d.ts +3 -0
  262. package/cjs/utils/elements/Plot.d.ts.map +1 -1
  263. package/cjs/utils/elements/Plot.js +9 -2
  264. package/cjs/utils/elements/Plot.js.map +1 -1
  265. package/cjs/utils/elements/Point.d.ts +3 -0
  266. package/cjs/utils/elements/Point.d.ts.map +1 -1
  267. package/cjs/utils/elements/Point.js +6 -1
  268. package/cjs/utils/elements/Point.js.map +1 -1
  269. package/cjs/utils/elements/Rectangle.d.ts +3 -0
  270. package/cjs/utils/elements/Rectangle.d.ts.map +1 -1
  271. package/cjs/utils/elements/Rectangle.js +6 -1
  272. package/cjs/utils/elements/Rectangle.js.map +1 -1
  273. package/cjs/utils/elements/Segment.d.ts +3 -0
  274. package/cjs/utils/elements/Segment.d.ts.map +1 -1
  275. package/cjs/utils/elements/Segment.js +8 -4
  276. package/cjs/utils/elements/Segment.js.map +1 -1
  277. package/cjs/utils/intersections.d.ts.map +1 -1
  278. package/cjs/utils/intersections.js +32 -35
  279. package/cjs/utils/intersections.js.map +1 -1
  280. package/dist/pdf-lib.esm.js +4794 -4480
  281. package/dist/pdf-lib.esm.js.map +1 -1
  282. package/dist/pdf-lib.esm.min.js +3 -3
  283. package/dist/pdf-lib.esm.min.js.map +1 -1
  284. package/dist/pdf-lib.js +4794 -4479
  285. package/dist/pdf-lib.js.map +1 -1
  286. package/dist/pdf-lib.min.js +3 -3
  287. package/dist/pdf-lib.min.js.map +1 -1
  288. package/es/api/PDFDocument.d.ts +3 -0
  289. package/es/api/PDFDocument.d.ts.map +1 -1
  290. package/es/api/PDFDocument.js +23 -16
  291. package/es/api/PDFDocument.js.map +1 -1
  292. package/es/api/PDFFont.d.ts.map +1 -1
  293. package/es/api/PDFFont.js +4 -2
  294. package/es/api/PDFFont.js.map +1 -1
  295. package/es/api/PDFPage.d.ts.map +1 -1
  296. package/es/api/PDFPage.js +6 -5
  297. package/es/api/PDFPage.js.map +1 -1
  298. package/es/api/form/PDFButton.d.ts +3 -0
  299. package/es/api/form/PDFButton.d.ts.map +1 -1
  300. package/es/api/form/PDFButton.js +7 -2
  301. package/es/api/form/PDFButton.js.map +1 -1
  302. package/es/api/form/PDFCheckBox.d.ts +3 -0
  303. package/es/api/form/PDFCheckBox.d.ts.map +1 -1
  304. package/es/api/form/PDFCheckBox.js +7 -2
  305. package/es/api/form/PDFCheckBox.js.map +1 -1
  306. package/es/api/form/PDFDropdown.d.ts +3 -0
  307. package/es/api/form/PDFDropdown.d.ts.map +1 -1
  308. package/es/api/form/PDFDropdown.js +7 -2
  309. package/es/api/form/PDFDropdown.js.map +1 -1
  310. package/es/api/form/PDFField.d.ts +3 -0
  311. package/es/api/form/PDFField.d.ts.map +1 -1
  312. package/es/api/form/PDFField.js +5 -0
  313. package/es/api/form/PDFField.js.map +1 -1
  314. package/es/api/form/PDFForm.d.ts.map +1 -1
  315. package/es/api/form/PDFForm.js +25 -23
  316. package/es/api/form/PDFForm.js.map +1 -1
  317. package/es/api/form/PDFOptionList.d.ts +3 -0
  318. package/es/api/form/PDFOptionList.d.ts.map +1 -1
  319. package/es/api/form/PDFOptionList.js +7 -2
  320. package/es/api/form/PDFOptionList.js.map +1 -1
  321. package/es/api/form/PDFRadioGroup.d.ts +3 -0
  322. package/es/api/form/PDFRadioGroup.d.ts.map +1 -1
  323. package/es/api/form/PDFRadioGroup.js +8 -3
  324. package/es/api/form/PDFRadioGroup.js.map +1 -1
  325. package/es/api/form/PDFSignature.d.ts +3 -0
  326. package/es/api/form/PDFSignature.d.ts.map +1 -1
  327. package/es/api/form/PDFSignature.js +5 -0
  328. package/es/api/form/PDFSignature.js.map +1 -1
  329. package/es/api/form/PDFTextField.d.ts +3 -0
  330. package/es/api/form/PDFTextField.d.ts.map +1 -1
  331. package/es/api/form/PDFTextField.js +7 -2
  332. package/es/api/form/PDFTextField.js.map +1 -1
  333. package/es/api/objects.d.ts +61 -0
  334. package/es/api/objects.d.ts.map +1 -1
  335. package/es/api/objects.js +95 -3
  336. package/es/api/objects.js.map +1 -1
  337. package/es/api/operators.d.ts +28 -24
  338. package/es/api/operators.d.ts.map +1 -1
  339. package/es/api/operators.js +32 -28
  340. package/es/api/operators.js.map +1 -1
  341. package/es/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  342. package/es/api/snapshot/DefaultDocumentSnapshot.d.ts.map +1 -1
  343. package/es/api/snapshot/DefaultDocumentSnapshot.js +5 -0
  344. package/es/api/snapshot/DefaultDocumentSnapshot.js.map +1 -1
  345. package/es/api/snapshot/DocumentSnapshot.d.ts +2 -0
  346. package/es/api/snapshot/DocumentSnapshot.d.ts.map +1 -1
  347. package/es/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  348. package/es/api/snapshot/IncrementalDocumentSnapshot.d.ts.map +1 -1
  349. package/es/api/snapshot/IncrementalDocumentSnapshot.js +5 -0
  350. package/es/api/snapshot/IncrementalDocumentSnapshot.js.map +1 -1
  351. package/es/core/PDFContext.d.ts +1 -1
  352. package/es/core/PDFContext.d.ts.map +1 -1
  353. package/es/core/PDFContext.js +33 -35
  354. package/es/core/PDFContext.js.map +1 -1
  355. package/es/core/PDFObjectCopier.d.ts.map +1 -1
  356. package/es/core/PDFObjectCopier.js +6 -9
  357. package/es/core/PDFObjectCopier.js.map +1 -1
  358. package/es/core/acroform/PDFAcroButton.d.ts.map +1 -1
  359. package/es/core/acroform/PDFAcroButton.js +7 -3
  360. package/es/core/acroform/PDFAcroButton.js.map +1 -1
  361. package/es/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  362. package/es/core/acroform/PDFAcroCheckBox.d.ts.map +1 -1
  363. package/es/core/acroform/PDFAcroCheckBox.js +6 -1
  364. package/es/core/acroform/PDFAcroCheckBox.js.map +1 -1
  365. package/es/core/acroform/PDFAcroChoice.d.ts.map +1 -1
  366. package/es/core/acroform/PDFAcroChoice.js +22 -9
  367. package/es/core/acroform/PDFAcroChoice.js.map +1 -1
  368. package/es/core/acroform/PDFAcroComboBox.d.ts +3 -0
  369. package/es/core/acroform/PDFAcroComboBox.d.ts.map +1 -1
  370. package/es/core/acroform/PDFAcroComboBox.js +5 -0
  371. package/es/core/acroform/PDFAcroComboBox.js.map +1 -1
  372. package/es/core/acroform/PDFAcroField.d.ts +3 -0
  373. package/es/core/acroform/PDFAcroField.d.ts.map +1 -1
  374. package/es/core/acroform/PDFAcroField.js +9 -4
  375. package/es/core/acroform/PDFAcroField.js.map +1 -1
  376. package/es/core/acroform/PDFAcroForm.d.ts +3 -0
  377. package/es/core/acroform/PDFAcroForm.d.ts.map +1 -1
  378. package/es/core/acroform/PDFAcroForm.js +7 -4
  379. package/es/core/acroform/PDFAcroForm.js.map +1 -1
  380. package/es/core/acroform/PDFAcroListBox.d.ts +3 -0
  381. package/es/core/acroform/PDFAcroListBox.d.ts.map +1 -1
  382. package/es/core/acroform/PDFAcroListBox.js +5 -0
  383. package/es/core/acroform/PDFAcroListBox.js.map +1 -1
  384. package/es/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  385. package/es/core/acroform/PDFAcroNonTerminal.d.ts.map +1 -1
  386. package/es/core/acroform/PDFAcroNonTerminal.js +5 -0
  387. package/es/core/acroform/PDFAcroNonTerminal.js.map +1 -1
  388. package/es/core/acroform/PDFAcroPushButton.d.ts +3 -0
  389. package/es/core/acroform/PDFAcroPushButton.d.ts.map +1 -1
  390. package/es/core/acroform/PDFAcroPushButton.js +5 -0
  391. package/es/core/acroform/PDFAcroPushButton.js.map +1 -1
  392. package/es/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  393. package/es/core/acroform/PDFAcroRadioButton.d.ts.map +1 -1
  394. package/es/core/acroform/PDFAcroRadioButton.js +6 -1
  395. package/es/core/acroform/PDFAcroRadioButton.js.map +1 -1
  396. package/es/core/acroform/PDFAcroSignature.d.ts +3 -0
  397. package/es/core/acroform/PDFAcroSignature.d.ts.map +1 -1
  398. package/es/core/acroform/PDFAcroSignature.js +5 -0
  399. package/es/core/acroform/PDFAcroSignature.js.map +1 -1
  400. package/es/core/acroform/PDFAcroText.d.ts +3 -0
  401. package/es/core/acroform/PDFAcroText.d.ts.map +1 -1
  402. package/es/core/acroform/PDFAcroText.js +9 -5
  403. package/es/core/acroform/PDFAcroText.js.map +1 -1
  404. package/es/core/acroform/utils.d.ts.map +1 -1
  405. package/es/core/acroform/utils.js +11 -7
  406. package/es/core/acroform/utils.js.map +1 -1
  407. package/es/core/annotation/AppearanceCharacteristics.d.ts.map +1 -1
  408. package/es/core/annotation/AppearanceCharacteristics.js +12 -11
  409. package/es/core/annotation/AppearanceCharacteristics.js.map +1 -1
  410. package/es/core/annotation/BorderStyle.d.ts.map +1 -1
  411. package/es/core/annotation/BorderStyle.js +2 -2
  412. package/es/core/annotation/BorderStyle.js.map +1 -1
  413. package/es/core/annotation/PDFAnnotation.d.ts.map +1 -1
  414. package/es/core/annotation/PDFAnnotation.js +4 -3
  415. package/es/core/annotation/PDFAnnotation.js.map +1 -1
  416. package/es/core/annotation/PDFWidgetAnnotation.d.ts.map +1 -1
  417. package/es/core/annotation/PDFWidgetAnnotation.js +8 -9
  418. package/es/core/annotation/PDFWidgetAnnotation.js.map +1 -1
  419. package/es/core/crypto.d.ts +3 -0
  420. package/es/core/crypto.d.ts.map +1 -1
  421. package/es/core/crypto.js +10 -5
  422. package/es/core/crypto.js.map +1 -1
  423. package/es/core/embedders/PDFPageEmbedder.d.ts.map +1 -1
  424. package/es/core/embedders/PDFPageEmbedder.js +3 -4
  425. package/es/core/embedders/PDFPageEmbedder.js.map +1 -1
  426. package/es/core/embedders/StandardFontEmbedder.d.ts +3 -0
  427. package/es/core/embedders/StandardFontEmbedder.d.ts.map +1 -1
  428. package/es/core/embedders/StandardFontEmbedder.js +5 -0
  429. package/es/core/embedders/StandardFontEmbedder.js.map +1 -1
  430. package/es/core/interactive/ViewerPreferences.d.ts.map +1 -1
  431. package/es/core/interactive/ViewerPreferences.js +5 -6
  432. package/es/core/interactive/ViewerPreferences.js.map +1 -1
  433. package/es/core/objects/PDFArray.d.ts +3 -0
  434. package/es/core/objects/PDFArray.d.ts.map +1 -1
  435. package/es/core/objects/PDFArray.js +6 -1
  436. package/es/core/objects/PDFArray.js.map +1 -1
  437. package/es/core/objects/PDFBool.d.ts +3 -0
  438. package/es/core/objects/PDFBool.d.ts.map +1 -1
  439. package/es/core/objects/PDFBool.js +5 -0
  440. package/es/core/objects/PDFBool.js.map +1 -1
  441. package/es/core/objects/PDFDict.d.ts +3 -0
  442. package/es/core/objects/PDFDict.d.ts.map +1 -1
  443. package/es/core/objects/PDFDict.js +5 -0
  444. package/es/core/objects/PDFDict.js.map +1 -1
  445. package/es/core/objects/PDFHexString.d.ts +3 -0
  446. package/es/core/objects/PDFHexString.d.ts.map +1 -1
  447. package/es/core/objects/PDFHexString.js +5 -0
  448. package/es/core/objects/PDFHexString.js.map +1 -1
  449. package/es/core/objects/PDFInvalidObject.d.ts +3 -0
  450. package/es/core/objects/PDFInvalidObject.d.ts.map +1 -1
  451. package/es/core/objects/PDFInvalidObject.js +5 -0
  452. package/es/core/objects/PDFInvalidObject.js.map +1 -1
  453. package/es/core/objects/PDFName.d.ts +3 -0
  454. package/es/core/objects/PDFName.d.ts.map +1 -1
  455. package/es/core/objects/PDFName.js +5 -0
  456. package/es/core/objects/PDFName.js.map +1 -1
  457. package/es/core/objects/PDFNull.d.ts +3 -0
  458. package/es/core/objects/PDFNull.d.ts.map +1 -1
  459. package/es/core/objects/PDFNull.js +5 -0
  460. package/es/core/objects/PDFNull.js.map +1 -1
  461. package/es/core/objects/PDFNumber.d.ts +3 -0
  462. package/es/core/objects/PDFNumber.d.ts.map +1 -1
  463. package/es/core/objects/PDFNumber.js +5 -0
  464. package/es/core/objects/PDFNumber.js.map +1 -1
  465. package/es/core/objects/PDFObject.d.ts +3 -0
  466. package/es/core/objects/PDFObject.d.ts.map +1 -1
  467. package/es/core/objects/PDFObject.js +5 -0
  468. package/es/core/objects/PDFObject.js.map +1 -1
  469. package/es/core/objects/PDFRawStream.d.ts +3 -0
  470. package/es/core/objects/PDFRawStream.d.ts.map +1 -1
  471. package/es/core/objects/PDFRawStream.js +5 -0
  472. package/es/core/objects/PDFRawStream.js.map +1 -1
  473. package/es/core/objects/PDFRef.d.ts +3 -0
  474. package/es/core/objects/PDFRef.d.ts.map +1 -1
  475. package/es/core/objects/PDFRef.js +5 -0
  476. package/es/core/objects/PDFRef.js.map +1 -1
  477. package/es/core/objects/PDFStream.d.ts +3 -0
  478. package/es/core/objects/PDFStream.d.ts.map +1 -1
  479. package/es/core/objects/PDFStream.js +5 -0
  480. package/es/core/objects/PDFStream.js.map +1 -1
  481. package/es/core/objects/PDFString.d.ts +3 -0
  482. package/es/core/objects/PDFString.d.ts.map +1 -1
  483. package/es/core/objects/PDFString.js +5 -0
  484. package/es/core/objects/PDFString.js.map +1 -1
  485. package/es/core/operators/PDFOperator.d.ts.map +1 -1
  486. package/es/core/operators/PDFOperator.js +9 -4
  487. package/es/core/operators/PDFOperator.js.map +1 -1
  488. package/es/core/parser/PDFObjectParser.d.ts.map +1 -1
  489. package/es/core/parser/PDFObjectParser.js +2 -1
  490. package/es/core/parser/PDFObjectParser.js.map +1 -1
  491. package/es/core/parser/PDFParser.d.ts.map +1 -1
  492. package/es/core/parser/PDFParser.js +8 -7
  493. package/es/core/parser/PDFParser.js.map +1 -1
  494. package/es/core/parser/PDFXRefStreamParser.d.ts.map +1 -1
  495. package/es/core/parser/PDFXRefStreamParser.js +8 -3
  496. package/es/core/parser/PDFXRefStreamParser.js.map +1 -1
  497. package/es/core/streams/decode.d.ts.map +1 -1
  498. package/es/core/streams/decode.js +5 -5
  499. package/es/core/streams/decode.js.map +1 -1
  500. package/es/core/structures/PDFCatalog.d.ts +3 -0
  501. package/es/core/structures/PDFCatalog.d.ts.map +1 -1
  502. package/es/core/structures/PDFCatalog.js +5 -0
  503. package/es/core/structures/PDFCatalog.js.map +1 -1
  504. package/es/core/structures/PDFContentStream.d.ts +3 -0
  505. package/es/core/structures/PDFContentStream.d.ts.map +1 -1
  506. package/es/core/structures/PDFContentStream.js +5 -0
  507. package/es/core/structures/PDFContentStream.js.map +1 -1
  508. package/es/core/structures/PDFObjectStream.d.ts +3 -0
  509. package/es/core/structures/PDFObjectStream.d.ts.map +1 -1
  510. package/es/core/structures/PDFObjectStream.js +5 -0
  511. package/es/core/structures/PDFObjectStream.js.map +1 -1
  512. package/es/core/structures/PDFPageLeaf.d.ts +3 -0
  513. package/es/core/structures/PDFPageLeaf.d.ts.map +1 -1
  514. package/es/core/structures/PDFPageLeaf.js +7 -3
  515. package/es/core/structures/PDFPageLeaf.js.map +1 -1
  516. package/es/core/structures/PDFPageTree.d.ts +3 -0
  517. package/es/core/structures/PDFPageTree.d.ts.map +1 -1
  518. package/es/core/structures/PDFPageTree.js +11 -7
  519. package/es/core/structures/PDFPageTree.js.map +1 -1
  520. package/es/core/writers/PDFStreamWriter.d.ts +3 -0
  521. package/es/core/writers/PDFStreamWriter.d.ts.map +1 -1
  522. package/es/core/writers/PDFStreamWriter.js +11 -12
  523. package/es/core/writers/PDFStreamWriter.js.map +1 -1
  524. package/es/core/writers/PDFWriter.d.ts +3 -0
  525. package/es/core/writers/PDFWriter.d.ts.map +1 -1
  526. package/es/core/writers/PDFWriter.js +14 -9
  527. package/es/core/writers/PDFWriter.js.map +1 -1
  528. package/es/utils/elements/Arc.d.ts +3 -0
  529. package/es/utils/elements/Arc.d.ts.map +1 -1
  530. package/es/utils/elements/Arc.js +6 -1
  531. package/es/utils/elements/Arc.js.map +1 -1
  532. package/es/utils/elements/Circle.d.ts +3 -0
  533. package/es/utils/elements/Circle.d.ts.map +1 -1
  534. package/es/utils/elements/Circle.js +6 -1
  535. package/es/utils/elements/Circle.js.map +1 -1
  536. package/es/utils/elements/Ellipse.d.ts +3 -0
  537. package/es/utils/elements/Ellipse.d.ts.map +1 -1
  538. package/es/utils/elements/Ellipse.js +6 -1
  539. package/es/utils/elements/Ellipse.js.map +1 -1
  540. package/es/utils/elements/GraphElement.d.ts +2 -0
  541. package/es/utils/elements/GraphElement.d.ts.map +1 -1
  542. package/es/utils/elements/GraphElement.js.map +1 -1
  543. package/es/utils/elements/Line.d.ts +3 -0
  544. package/es/utils/elements/Line.d.ts.map +1 -1
  545. package/es/utils/elements/Line.js +6 -1
  546. package/es/utils/elements/Line.js.map +1 -1
  547. package/es/utils/elements/Plot.d.ts +3 -0
  548. package/es/utils/elements/Plot.d.ts.map +1 -1
  549. package/es/utils/elements/Plot.js +9 -2
  550. package/es/utils/elements/Plot.js.map +1 -1
  551. package/es/utils/elements/Point.d.ts +3 -0
  552. package/es/utils/elements/Point.d.ts.map +1 -1
  553. package/es/utils/elements/Point.js +6 -1
  554. package/es/utils/elements/Point.js.map +1 -1
  555. package/es/utils/elements/Rectangle.d.ts +3 -0
  556. package/es/utils/elements/Rectangle.d.ts.map +1 -1
  557. package/es/utils/elements/Rectangle.js +6 -1
  558. package/es/utils/elements/Rectangle.js.map +1 -1
  559. package/es/utils/elements/Segment.d.ts +3 -0
  560. package/es/utils/elements/Segment.d.ts.map +1 -1
  561. package/es/utils/elements/Segment.js +8 -4
  562. package/es/utils/elements/Segment.js.map +1 -1
  563. package/es/utils/intersections.d.ts.map +1 -1
  564. package/es/utils/intersections.js +32 -35
  565. package/es/utils/intersections.js.map +1 -1
  566. package/package.json +1 -1
  567. package/src/api/PDFDocument.ts +41 -36
  568. package/src/api/PDFFont.ts +5 -3
  569. package/src/api/PDFPage.ts +10 -6
  570. package/src/api/form/PDFButton.ts +10 -8
  571. package/src/api/form/PDFCheckBox.ts +7 -2
  572. package/src/api/form/PDFDropdown.ts +9 -3
  573. package/src/api/form/PDFField.ts +5 -0
  574. package/src/api/form/PDFForm.ts +53 -34
  575. package/src/api/form/PDFOptionList.ts +9 -3
  576. package/src/api/form/PDFRadioGroup.ts +8 -3
  577. package/src/api/form/PDFSignature.ts +5 -0
  578. package/src/api/form/PDFTextField.ts +9 -3
  579. package/src/api/objects.ts +90 -3
  580. package/src/api/operators.ts +32 -28
  581. package/src/api/snapshot/DefaultDocumentSnapshot.ts +6 -0
  582. package/src/api/snapshot/DocumentSnapshot.ts +3 -0
  583. package/src/api/snapshot/IncrementalDocumentSnapshot.ts +6 -0
  584. package/src/core/PDFContext.ts +53 -39
  585. package/src/core/PDFObjectCopier.ts +6 -5
  586. package/src/core/acroform/PDFAcroButton.ts +20 -10
  587. package/src/core/acroform/PDFAcroCheckBox.ts +6 -1
  588. package/src/core/acroform/PDFAcroChoice.ts +43 -17
  589. package/src/core/acroform/PDFAcroComboBox.ts +5 -0
  590. package/src/core/acroform/PDFAcroField.ts +14 -5
  591. package/src/core/acroform/PDFAcroForm.ts +7 -3
  592. package/src/core/acroform/PDFAcroListBox.ts +5 -0
  593. package/src/core/acroform/PDFAcroNonTerminal.ts +5 -0
  594. package/src/core/acroform/PDFAcroPushButton.ts +5 -0
  595. package/src/core/acroform/PDFAcroRadioButton.ts +6 -1
  596. package/src/core/acroform/PDFAcroSignature.ts +5 -0
  597. package/src/core/acroform/PDFAcroText.ts +12 -3
  598. package/src/core/acroform/utils.ts +16 -7
  599. package/src/core/annotation/AppearanceCharacteristics.ts +23 -8
  600. package/src/core/annotation/BorderStyle.ts +2 -1
  601. package/src/core/annotation/PDFAnnotation.ts +7 -2
  602. package/src/core/annotation/PDFWidgetAnnotation.ts +13 -8
  603. package/src/core/crypto.ts +13 -5
  604. package/src/core/embedders/PDFPageEmbedder.ts +5 -4
  605. package/src/core/embedders/StandardFontEmbedder.ts +5 -0
  606. package/src/core/interactive/ViewerPreferences.ts +9 -4
  607. package/src/core/objects/PDFArray.ts +7 -2
  608. package/src/core/objects/PDFBool.ts +5 -0
  609. package/src/core/objects/PDFDict.ts +5 -0
  610. package/src/core/objects/PDFHexString.ts +5 -0
  611. package/src/core/objects/PDFInvalidObject.ts +5 -0
  612. package/src/core/objects/PDFName.ts +5 -0
  613. package/src/core/objects/PDFNull.ts +5 -0
  614. package/src/core/objects/PDFNumber.ts +5 -0
  615. package/src/core/objects/PDFObject.ts +6 -0
  616. package/src/core/objects/PDFRawStream.ts +5 -0
  617. package/src/core/objects/PDFRef.ts +5 -0
  618. package/src/core/objects/PDFStream.ts +5 -0
  619. package/src/core/objects/PDFString.ts +5 -0
  620. package/src/core/operators/PDFOperator.ts +11 -5
  621. package/src/core/parser/PDFObjectParser.ts +3 -2
  622. package/src/core/parser/PDFParser.ts +13 -8
  623. package/src/core/parser/PDFXRefStreamParser.ts +9 -4
  624. package/src/core/streams/decode.ts +10 -9
  625. package/src/core/structures/PDFCatalog.ts +5 -0
  626. package/src/core/structures/PDFContentStream.ts +5 -0
  627. package/src/core/structures/PDFObjectStream.ts +5 -0
  628. package/src/core/structures/PDFPageLeaf.ts +9 -4
  629. package/src/core/structures/PDFPageTree.ts +28 -13
  630. package/src/core/writers/PDFStreamWriter.ts +11 -11
  631. package/src/core/writers/PDFWriter.ts +19 -12
  632. package/src/utils/elements/Arc.ts +9 -4
  633. package/src/utils/elements/Circle.ts +8 -3
  634. package/src/utils/elements/Ellipse.ts +9 -4
  635. package/src/utils/elements/GraphElement.ts +3 -0
  636. package/src/utils/elements/Line.ts +12 -4
  637. package/src/utils/elements/Plot.ts +9 -2
  638. package/src/utils/elements/Point.ts +7 -2
  639. package/src/utils/elements/Rectangle.ts +8 -3
  640. package/src/utils/elements/Segment.ts +10 -6
  641. package/src/utils/intersections.ts +81 -51
  642. package/ts3.4/cjs/api/PDFDocument.d.ts +3 -0
  643. package/ts3.4/cjs/api/form/PDFButton.d.ts +3 -0
  644. package/ts3.4/cjs/api/form/PDFCheckBox.d.ts +3 -0
  645. package/ts3.4/cjs/api/form/PDFDropdown.d.ts +3 -0
  646. package/ts3.4/cjs/api/form/PDFField.d.ts +3 -0
  647. package/ts3.4/cjs/api/form/PDFOptionList.d.ts +3 -0
  648. package/ts3.4/cjs/api/form/PDFRadioGroup.d.ts +3 -0
  649. package/ts3.4/cjs/api/form/PDFSignature.d.ts +3 -0
  650. package/ts3.4/cjs/api/form/PDFTextField.d.ts +3 -0
  651. package/ts3.4/cjs/api/objects.d.ts +61 -0
  652. package/ts3.4/cjs/api/operators.d.ts +28 -24
  653. package/ts3.4/cjs/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  654. package/ts3.4/cjs/api/snapshot/DocumentSnapshot.d.ts +2 -0
  655. package/ts3.4/cjs/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  656. package/ts3.4/cjs/core/PDFContext.d.ts +1 -1
  657. package/ts3.4/cjs/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  658. package/ts3.4/cjs/core/acroform/PDFAcroComboBox.d.ts +3 -0
  659. package/ts3.4/cjs/core/acroform/PDFAcroField.d.ts +3 -0
  660. package/ts3.4/cjs/core/acroform/PDFAcroForm.d.ts +3 -0
  661. package/ts3.4/cjs/core/acroform/PDFAcroListBox.d.ts +3 -0
  662. package/ts3.4/cjs/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  663. package/ts3.4/cjs/core/acroform/PDFAcroPushButton.d.ts +3 -0
  664. package/ts3.4/cjs/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  665. package/ts3.4/cjs/core/acroform/PDFAcroSignature.d.ts +3 -0
  666. package/ts3.4/cjs/core/acroform/PDFAcroText.d.ts +3 -0
  667. package/ts3.4/cjs/core/crypto.d.ts +3 -0
  668. package/ts3.4/cjs/core/embedders/StandardFontEmbedder.d.ts +3 -0
  669. package/ts3.4/cjs/core/objects/PDFArray.d.ts +3 -0
  670. package/ts3.4/cjs/core/objects/PDFBool.d.ts +3 -0
  671. package/ts3.4/cjs/core/objects/PDFDict.d.ts +3 -0
  672. package/ts3.4/cjs/core/objects/PDFHexString.d.ts +3 -0
  673. package/ts3.4/cjs/core/objects/PDFInvalidObject.d.ts +3 -0
  674. package/ts3.4/cjs/core/objects/PDFName.d.ts +3 -0
  675. package/ts3.4/cjs/core/objects/PDFNull.d.ts +3 -0
  676. package/ts3.4/cjs/core/objects/PDFNumber.d.ts +3 -0
  677. package/ts3.4/cjs/core/objects/PDFObject.d.ts +3 -0
  678. package/ts3.4/cjs/core/objects/PDFRawStream.d.ts +3 -0
  679. package/ts3.4/cjs/core/objects/PDFRef.d.ts +3 -0
  680. package/ts3.4/cjs/core/objects/PDFStream.d.ts +3 -0
  681. package/ts3.4/cjs/core/objects/PDFString.d.ts +3 -0
  682. package/ts3.4/cjs/core/structures/PDFCatalog.d.ts +3 -0
  683. package/ts3.4/cjs/core/structures/PDFContentStream.d.ts +3 -0
  684. package/ts3.4/cjs/core/structures/PDFObjectStream.d.ts +3 -0
  685. package/ts3.4/cjs/core/structures/PDFPageLeaf.d.ts +3 -0
  686. package/ts3.4/cjs/core/structures/PDFPageTree.d.ts +3 -0
  687. package/ts3.4/cjs/core/writers/PDFStreamWriter.d.ts +3 -0
  688. package/ts3.4/cjs/core/writers/PDFWriter.d.ts +3 -0
  689. package/ts3.4/cjs/utils/elements/Arc.d.ts +3 -0
  690. package/ts3.4/cjs/utils/elements/Circle.d.ts +3 -0
  691. package/ts3.4/cjs/utils/elements/Ellipse.d.ts +3 -0
  692. package/ts3.4/cjs/utils/elements/GraphElement.d.ts +2 -0
  693. package/ts3.4/cjs/utils/elements/Line.d.ts +3 -0
  694. package/ts3.4/cjs/utils/elements/Plot.d.ts +3 -0
  695. package/ts3.4/cjs/utils/elements/Point.d.ts +3 -0
  696. package/ts3.4/cjs/utils/elements/Rectangle.d.ts +3 -0
  697. package/ts3.4/cjs/utils/elements/Segment.d.ts +3 -0
  698. package/ts3.4/es/api/PDFDocument.d.ts +3 -0
  699. package/ts3.4/es/api/form/PDFButton.d.ts +3 -0
  700. package/ts3.4/es/api/form/PDFCheckBox.d.ts +3 -0
  701. package/ts3.4/es/api/form/PDFDropdown.d.ts +3 -0
  702. package/ts3.4/es/api/form/PDFField.d.ts +3 -0
  703. package/ts3.4/es/api/form/PDFOptionList.d.ts +3 -0
  704. package/ts3.4/es/api/form/PDFRadioGroup.d.ts +3 -0
  705. package/ts3.4/es/api/form/PDFSignature.d.ts +3 -0
  706. package/ts3.4/es/api/form/PDFTextField.d.ts +3 -0
  707. package/ts3.4/es/api/objects.d.ts +61 -0
  708. package/ts3.4/es/api/operators.d.ts +28 -24
  709. package/ts3.4/es/api/snapshot/DefaultDocumentSnapshot.d.ts +3 -0
  710. package/ts3.4/es/api/snapshot/DocumentSnapshot.d.ts +2 -0
  711. package/ts3.4/es/api/snapshot/IncrementalDocumentSnapshot.d.ts +3 -0
  712. package/ts3.4/es/core/PDFContext.d.ts +1 -1
  713. package/ts3.4/es/core/acroform/PDFAcroCheckBox.d.ts +3 -0
  714. package/ts3.4/es/core/acroform/PDFAcroComboBox.d.ts +3 -0
  715. package/ts3.4/es/core/acroform/PDFAcroField.d.ts +3 -0
  716. package/ts3.4/es/core/acroform/PDFAcroForm.d.ts +3 -0
  717. package/ts3.4/es/core/acroform/PDFAcroListBox.d.ts +3 -0
  718. package/ts3.4/es/core/acroform/PDFAcroNonTerminal.d.ts +3 -0
  719. package/ts3.4/es/core/acroform/PDFAcroPushButton.d.ts +3 -0
  720. package/ts3.4/es/core/acroform/PDFAcroRadioButton.d.ts +3 -0
  721. package/ts3.4/es/core/acroform/PDFAcroSignature.d.ts +3 -0
  722. package/ts3.4/es/core/acroform/PDFAcroText.d.ts +3 -0
  723. package/ts3.4/es/core/crypto.d.ts +3 -0
  724. package/ts3.4/es/core/embedders/StandardFontEmbedder.d.ts +3 -0
  725. package/ts3.4/es/core/objects/PDFArray.d.ts +3 -0
  726. package/ts3.4/es/core/objects/PDFBool.d.ts +3 -0
  727. package/ts3.4/es/core/objects/PDFDict.d.ts +3 -0
  728. package/ts3.4/es/core/objects/PDFHexString.d.ts +3 -0
  729. package/ts3.4/es/core/objects/PDFInvalidObject.d.ts +3 -0
  730. package/ts3.4/es/core/objects/PDFName.d.ts +3 -0
  731. package/ts3.4/es/core/objects/PDFNull.d.ts +3 -0
  732. package/ts3.4/es/core/objects/PDFNumber.d.ts +3 -0
  733. package/ts3.4/es/core/objects/PDFObject.d.ts +3 -0
  734. package/ts3.4/es/core/objects/PDFRawStream.d.ts +3 -0
  735. package/ts3.4/es/core/objects/PDFRef.d.ts +3 -0
  736. package/ts3.4/es/core/objects/PDFStream.d.ts +3 -0
  737. package/ts3.4/es/core/objects/PDFString.d.ts +3 -0
  738. package/ts3.4/es/core/structures/PDFCatalog.d.ts +3 -0
  739. package/ts3.4/es/core/structures/PDFContentStream.d.ts +3 -0
  740. package/ts3.4/es/core/structures/PDFObjectStream.d.ts +3 -0
  741. package/ts3.4/es/core/structures/PDFPageLeaf.d.ts +3 -0
  742. package/ts3.4/es/core/structures/PDFPageTree.d.ts +3 -0
  743. package/ts3.4/es/core/writers/PDFStreamWriter.d.ts +3 -0
  744. package/ts3.4/es/core/writers/PDFWriter.d.ts +3 -0
  745. package/ts3.4/es/utils/elements/Arc.d.ts +3 -0
  746. package/ts3.4/es/utils/elements/Circle.d.ts +3 -0
  747. package/ts3.4/es/utils/elements/Ellipse.d.ts +3 -0
  748. package/ts3.4/es/utils/elements/GraphElement.d.ts +2 -0
  749. package/ts3.4/es/utils/elements/Line.d.ts +3 -0
  750. package/ts3.4/es/utils/elements/Plot.d.ts +3 -0
  751. package/ts3.4/es/utils/elements/Point.d.ts +3 -0
  752. package/ts3.4/es/utils/elements/Rectangle.d.ts +3 -0
  753. package/ts3.4/es/utils/elements/Segment.d.ts +3 -0
@@ -1,5 +1,6 @@
1
1
  import pako from 'pako';
2
- import type { DocumentSnapshot } from '../api';
2
+ import type { DocumentSnapshot } from '../api/snapshot/DocumentSnapshot';
3
+ import { isPDFInstance, PDFClasses } from '../api/objects';
3
4
 
4
5
  import PDFHeader from './document/PDFHeader';
5
6
  import { UnexpectedObjectTypeError } from './errors';
@@ -181,17 +182,24 @@ class PDFContext {
181
182
  // removed in next breaking API change.
182
183
  const preservePDFNull = types.includes(PDFNull);
183
184
 
184
- const result = ref instanceof PDFRef ? this.indirectObjects.get(ref) : ref;
185
+ const result = isPDFInstance(ref, PDFClasses.PDFRef)
186
+ ? this.indirectObjects.get(ref as PDFRef)
187
+ : ref;
185
188
 
186
- if (!result || (result === PDFNull && !preservePDFNull)) return undefined;
189
+ if (
190
+ !result ||
191
+ (isPDFInstance(result, PDFClasses.PDFNull) && !preservePDFNull)
192
+ )
193
+ return undefined;
187
194
 
188
195
  for (let idx = 0, len = types.length; idx < len; idx++) {
189
196
  const type = types[idx];
190
- if (type === PDFNull) {
191
- if (result === PDFNull) return result;
192
- } else {
193
- if (result instanceof type) return result;
194
- }
197
+ if (
198
+ isPDFInstance(type, PDFClasses.PDFNull) &&
199
+ isPDFInstance(result, PDFClasses.PDFNull)
200
+ )
201
+ return result;
202
+ if (isPDFInstance(result, type)) return result;
195
203
  }
196
204
  throw new UnexpectedObjectTypeError(types, result);
197
205
  }
@@ -214,24 +222,27 @@ class PDFContext {
214
222
  ): PDFString | PDFHexString;
215
223
 
216
224
  lookup(ref: LookupKey, ...types: any[]) {
217
- const result = ref instanceof PDFRef ? this.indirectObjects.get(ref) : ref;
225
+ const result = isPDFInstance(ref, PDFClasses.PDFRef)
226
+ ? this.indirectObjects.get(ref as PDFRef)
227
+ : ref;
218
228
 
219
229
  if (types.length === 0) return result;
220
230
 
221
231
  for (let idx = 0, len = types.length; idx < len; idx++) {
222
232
  const type = types[idx];
223
- if (type === PDFNull) {
224
- if (result === PDFNull) return result;
225
- } else {
226
- if (result instanceof type) return result;
227
- }
233
+ if (
234
+ isPDFInstance(type, PDFClasses.PDFNull) &&
235
+ isPDFInstance(result, PDFClasses.PDFNull)
236
+ )
237
+ return result;
238
+ if (isPDFInstance(result, type)) return result;
228
239
  }
229
240
 
230
241
  throw new UnexpectedObjectTypeError(types, result);
231
242
  }
232
243
 
233
244
  getRef(pdfObject: PDFObject | PDFRef): PDFRef | undefined {
234
- if (pdfObject instanceof PDFRef) return pdfObject;
245
+ if (isPDFInstance(pdfObject, PDFClasses.PDFRef)) return pdfObject as PDFRef;
235
246
  return this.getObjectRef(pdfObject);
236
247
  }
237
248
 
@@ -261,7 +272,7 @@ class PDFContext {
261
272
  obj(literal: LiteralArray): PDFArray;
262
273
 
263
274
  obj(literal: Literal) {
264
- if (literal instanceof PDFObject) {
275
+ if (isPDFInstance(literal, PDFClasses.PDFObject)) {
265
276
  return literal;
266
277
  } else if (literal === null || literal === undefined) {
267
278
  return PDFNull;
@@ -321,34 +332,35 @@ class PDFContext {
321
332
  }: LiteralConfig = {},
322
333
  ): Literal | PDFObject {
323
334
  const cfg = { deep, literalRef, literalStreamDict, literalString };
324
- if (obj instanceof PDFArray) {
325
- const lit = obj.asArray();
335
+ if (isPDFInstance(obj, PDFClasses.PDFArray)) {
336
+ const lit = (obj as PDFArray).asArray();
326
337
  return deep ? lit.map((value) => this.getLiteral(value, cfg)) : lit;
327
- } else if (obj instanceof PDFBool) {
328
- return obj.asBoolean();
329
- } else if (obj instanceof PDFDict) {
338
+ } else if (isPDFInstance(obj, PDFClasses.PDFBool)) {
339
+ return (obj as PDFBool).asBoolean();
340
+ } else if (isPDFInstance(obj, PDFClasses.PDFDict)) {
330
341
  const lit: LiteralObject = {};
331
- const entries = obj.entries();
342
+ const entries = (obj as PDFDict).entries();
332
343
  for (let idx = 0, len = entries.length; idx < len; idx++) {
333
344
  const [name, value] = entries[idx];
334
345
  lit[this.getLiteral(name)] = deep ? this.getLiteral(value, cfg) : value;
335
346
  }
336
347
  return lit;
337
- } else if (obj instanceof PDFName) {
338
- return obj.decodeText();
348
+ } else if (isPDFInstance(obj, PDFClasses.PDFName)) {
349
+ return (obj as PDFName).decodeText();
339
350
  } else if (obj === PDFNull) {
340
351
  return null;
341
- } else if (obj instanceof PDFNumber) {
342
- return obj.asNumber();
343
- } else if (obj instanceof PDFRef && literalRef) {
344
- return obj.objectNumber;
345
- } else if (obj instanceof PDFStream && literalStreamDict) {
346
- return this.getLiteral(obj.dict, cfg);
352
+ } else if (isPDFInstance(obj, PDFClasses.PDFNumber)) {
353
+ return (obj as PDFNumber).asNumber();
354
+ } else if (isPDFInstance(obj, PDFClasses.PDFRef) && literalRef) {
355
+ return (obj as PDFRef).objectNumber;
356
+ } else if (isPDFInstance(obj, PDFClasses.PDFStream) && literalStreamDict) {
357
+ return this.getLiteral((obj as PDFStream).dict, cfg);
347
358
  } else if (
348
- (obj instanceof PDFString || obj instanceof PDFHexString) &&
359
+ (isPDFInstance(obj, PDFClasses.PDFString) ||
360
+ isPDFInstance(obj, PDFClasses.PDFHexString)) &&
349
361
  literalString
350
362
  ) {
351
- return obj.asString();
363
+ return (obj as PDFString | PDFHexString).asString();
352
364
  }
353
365
  return obj;
354
366
  }
@@ -457,17 +469,19 @@ class PDFContext {
457
469
  private objectContains(container: PDFObject, target: PDFObject): boolean {
458
470
  if (container === target) return true;
459
471
 
460
- if (container instanceof PDFDict) {
461
- const values = container.values();
472
+ if (isPDFInstance(container, PDFClasses.PDFDict)) {
473
+ const values = (container as PDFDict).values();
462
474
  for (let i = 0, len = values.length; i < len; i++) {
463
475
  if (this.objectContains(values[i], target)) return true;
464
476
  }
465
- } else if (container instanceof PDFArray) {
466
- for (let i = 0, len = container.size(); i < len; i++) {
467
- if (this.objectContains(container.get(i), target)) return true;
477
+ } else if (isPDFInstance(container, PDFClasses.PDFArray)) {
478
+ for (let i = 0, len = (container as PDFArray).size(); i < len; i++) {
479
+ if (this.objectContains((container as PDFArray).get(i), target))
480
+ return true;
468
481
  }
469
- } else if (container instanceof PDFStream) {
470
- if (this.objectContains(container.dict, target)) return true;
482
+ } else if (isPDFInstance(container, PDFClasses.PDFStream)) {
483
+ if (this.objectContains((container as PDFStream).dict, target))
484
+ return true;
471
485
  }
472
486
 
473
487
  return false;
@@ -1,3 +1,4 @@
1
+ import { isPDFInstance, PDFClasses } from '../api/objects';
1
2
  import PDFArray from './objects/PDFArray';
2
3
  import PDFDict from './objects/PDFDict';
3
4
  import PDFName from './objects/PDFName';
@@ -43,11 +44,11 @@ class PDFObjectCopier {
43
44
 
44
45
  // prettier-ignore
45
46
  copy = <T extends PDFObject>(object: T): T => (
46
- object instanceof PDFPageLeaf ? this.copyPDFPage(object)
47
- : object instanceof PDFDict ? this.copyPDFDict(object)
48
- : object instanceof PDFArray ? this.copyPDFArray(object)
49
- : object instanceof PDFStream ? this.copyPDFStream(object)
50
- : object instanceof PDFRef ? this.copyPDFIndirectObject(object)
47
+ isPDFInstance(object, PDFClasses.PDFPageLeaf) ? this.copyPDFPage(object as any as PDFPageLeaf)
48
+ : isPDFInstance(object, PDFClasses.PDFDict) ? this.copyPDFDict(object as any as PDFDict)
49
+ : isPDFInstance(object, PDFClasses.PDFArray) ? this.copyPDFArray(object as any as PDFArray)
50
+ : isPDFInstance(object, PDFClasses.PDFStream) ? this.copyPDFStream(object as any as PDFStream)
51
+ : isPDFInstance(object, PDFClasses.PDFRef) ? this.copyPDFIndirectObject(object as any as PDFRef)
51
52
  : object.clone()
52
53
  ) as T;
53
54
 
@@ -6,6 +6,7 @@ import PDFName from '../objects/PDFName';
6
6
  import PDFRef from '../objects/PDFRef';
7
7
  import PDFAcroTerminal from './PDFAcroTerminal';
8
8
  import { IndexOutOfBoundsError } from '../errors';
9
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
9
10
 
10
11
  class PDFAcroButton extends PDFAcroTerminal {
11
12
  Opt(): PDFString | PDFHexString | PDFArray | undefined {
@@ -26,15 +27,21 @@ class PDFAcroButton extends PDFAcroTerminal {
26
27
 
27
28
  if (!opt) return undefined;
28
29
 
29
- if (opt instanceof PDFString || opt instanceof PDFHexString) {
30
- return [opt];
30
+ if (
31
+ isPDFInstance(opt, PDFClasses.PDFString) ||
32
+ isPDFInstance(opt, PDFClasses.PDFHexString)
33
+ ) {
34
+ return [opt as PDFString | PDFHexString];
31
35
  }
32
36
 
33
37
  const values: (PDFString | PDFHexString)[] = [];
34
- for (let idx = 0, len = opt.size(); idx < len; idx++) {
35
- const value = opt.lookup(idx);
36
- if (value instanceof PDFString || value instanceof PDFHexString) {
37
- values.push(value);
38
+ for (let idx = 0, len = (opt as PDFArray).size(); idx < len; idx++) {
39
+ const value = (opt as PDFArray).lookup(idx);
40
+ if (
41
+ isPDFInstance(value, PDFClasses.PDFString) ||
42
+ isPDFInstance(value, PDFClasses.PDFHexString)
43
+ ) {
44
+ values.push(value as PDFString | PDFHexString);
38
45
  }
39
46
  }
40
47
 
@@ -46,14 +53,17 @@ class PDFAcroButton extends PDFAcroTerminal {
46
53
 
47
54
  if (!opt) return;
48
55
 
49
- if (opt instanceof PDFString || opt instanceof PDFHexString) {
56
+ if (
57
+ isPDFInstance(opt, PDFClasses.PDFString) ||
58
+ isPDFInstance(opt, PDFClasses.PDFHexString)
59
+ ) {
50
60
  if (idx !== 0) throw new IndexOutOfBoundsError(idx, 0, 0);
51
61
  this.setOpt([]);
52
62
  } else {
53
- if (idx < 0 || idx > opt.size()) {
54
- throw new IndexOutOfBoundsError(idx, 0, opt.size());
63
+ if (idx < 0 || idx > (opt as PDFArray).size()) {
64
+ throw new IndexOutOfBoundsError(idx, 0, (opt as PDFArray).size());
55
65
  }
56
- opt.remove(idx);
66
+ (opt as PDFArray).remove(idx);
57
67
  }
58
68
  }
59
69
 
@@ -4,8 +4,13 @@ import PDFDict from '../objects/PDFDict';
4
4
  import PDFName from '../objects/PDFName';
5
5
  import PDFAcroButton from './PDFAcroButton';
6
6
  import { InvalidAcroFieldValueError } from '../errors';
7
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
7
8
 
8
9
  class PDFAcroCheckBox extends PDFAcroButton {
10
+ static className = () => PDFClasses.PDFAcroCheckBox;
11
+ myClass(): PDFClasses {
12
+ return PDFClasses.PDFAcroCheckBox;
13
+ }
9
14
  static fromDict = (dict: PDFDict, ref: PDFRef) =>
10
15
  new PDFAcroCheckBox(dict, ref);
11
16
 
@@ -36,7 +41,7 @@ class PDFAcroCheckBox extends PDFAcroButton {
36
41
 
37
42
  getValue(): PDFName {
38
43
  const v = this.V();
39
- if (v instanceof PDFName) return v;
44
+ if (isPDFInstance(v, PDFClasses.PDFName)) return v as PDFName;
40
45
  return PDFName.of('Off');
41
46
  }
42
47
 
@@ -5,6 +5,7 @@ import PDFArray from '../objects/PDFArray';
5
5
  import PDFName from '../objects/PDFName';
6
6
  import { AcroChoiceFlags } from './flags';
7
7
  import { InvalidAcroFieldValueError, MultiSelectValueError } from '../errors';
8
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
8
9
 
9
10
  class PDFAcroChoice extends PDFAcroTerminal {
10
11
  setValues(values: (PDFString | PDFHexString)[]) {
@@ -62,15 +63,22 @@ class PDFAcroChoice extends PDFAcroTerminal {
62
63
  getValues(): (PDFString | PDFHexString)[] {
63
64
  const v = this.V();
64
65
 
65
- if (v instanceof PDFString || v instanceof PDFHexString) return [v];
66
+ if (
67
+ isPDFInstance(v, PDFClasses.PDFString) ||
68
+ isPDFInstance(v, PDFClasses.PDFHexString)
69
+ )
70
+ return [v as PDFString | PDFHexString];
66
71
 
67
- if (v instanceof PDFArray) {
72
+ if (isPDFInstance(v, PDFClasses.PDFArray)) {
68
73
  const values: (PDFString | PDFHexString)[] = [];
69
74
 
70
- for (let idx = 0, len = v.size(); idx < len; idx++) {
71
- const value = v.lookup(idx);
72
- if (value instanceof PDFString || value instanceof PDFHexString) {
73
- values.push(value);
75
+ for (let idx = 0, len = (v as PDFArray).size(); idx < len; idx++) {
76
+ const value = (v as PDFArray).lookup(idx);
77
+ if (
78
+ isPDFInstance(value, PDFClasses.PDFString) ||
79
+ isPDFInstance(value, PDFClasses.PDFHexString)
80
+ ) {
81
+ values.push(value as PDFString | PDFHexString);
74
82
  }
75
83
  }
76
84
 
@@ -110,31 +118,49 @@ class PDFAcroChoice extends PDFAcroTerminal {
110
118
  const Opt = this.Opt();
111
119
 
112
120
  // Not supposed to happen - Opt _should_ always be `PDFArray | undefined`
113
- if (Opt instanceof PDFString || Opt instanceof PDFHexString) {
114
- return [{ value: Opt, display: Opt }];
121
+ if (
122
+ isPDFInstance(Opt, PDFClasses.PDFString) ||
123
+ isPDFInstance(Opt, PDFClasses.PDFHexString)
124
+ ) {
125
+ return [
126
+ {
127
+ value: Opt as PDFString | PDFHexString,
128
+ display: Opt as PDFString | PDFHexString,
129
+ },
130
+ ];
115
131
  }
116
132
 
117
- if (Opt instanceof PDFArray) {
133
+ if (isPDFInstance(Opt, PDFClasses.PDFArray)) {
118
134
  const res: {
119
135
  value: PDFString | PDFHexString;
120
136
  display: PDFString | PDFHexString;
121
137
  }[] = [];
122
138
 
123
- for (let idx = 0, len = Opt.size(); idx < len; idx++) {
124
- const item = Opt.lookup(idx);
139
+ for (let idx = 0, len = (Opt as PDFArray).size(); idx < len; idx++) {
140
+ const item = (Opt as PDFArray).lookup(idx);
125
141
 
126
142
  // If `item` is a string, use that as both the export and text value
127
- if (item instanceof PDFString || item instanceof PDFHexString) {
128
- res.push({ value: item, display: item });
143
+ if (
144
+ isPDFInstance(item, PDFClasses.PDFString) ||
145
+ isPDFInstance(item, PDFClasses.PDFHexString)
146
+ ) {
147
+ res.push({
148
+ value: item as PDFString | PDFHexString,
149
+ display: item as PDFString | PDFHexString,
150
+ });
129
151
  }
130
152
 
131
153
  // If `item` is an array of one, treat it the same as just a string,
132
154
  // if it's an array of two then `item[0]` is the export value and
133
155
  // `item[1]` is the text value
134
- if (item instanceof PDFArray) {
135
- if (item.size() > 0) {
136
- const first = item.lookup(0, PDFString, PDFHexString);
137
- const second = item.lookupMaybe(1, PDFString, PDFHexString);
156
+ if (isPDFInstance(item, PDFClasses.PDFArray)) {
157
+ if ((item as PDFArray).size() > 0) {
158
+ const first = (item as PDFArray).lookup(0, PDFString, PDFHexString);
159
+ const second = (item as PDFArray).lookupMaybe(
160
+ 1,
161
+ PDFString,
162
+ PDFHexString,
163
+ );
138
164
  res.push({ value: first, display: second || first });
139
165
  }
140
166
  }
@@ -3,8 +3,13 @@ import PDFAcroChoice from './PDFAcroChoice';
3
3
  import PDFContext from '../PDFContext';
4
4
  import PDFRef from '../objects/PDFRef';
5
5
  import { AcroChoiceFlags } from './flags';
6
+ import { PDFClasses } from '../../api/objects';
6
7
 
7
8
  class PDFAcroComboBox extends PDFAcroChoice {
9
+ static className = () => PDFClasses.PDFAcroComboBox;
10
+ myClass(): PDFClasses {
11
+ return PDFClasses.PDFAcroComboBox;
12
+ }
8
13
  static fromDict = (dict: PDFDict, ref: PDFRef) =>
9
14
  new PDFAcroComboBox(dict, ref);
10
15
 
@@ -8,6 +8,7 @@ import PDFArray from '../objects/PDFArray';
8
8
  import PDFRef from '../objects/PDFRef';
9
9
  import { findLastMatch } from '../../utils';
10
10
  import { MissingDAEntryError, MissingTfOperatorError } from '../errors';
11
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
11
12
 
12
13
  // Examples:
13
14
  // `/Helv 12 Tf` -> ['Helv', '12']
@@ -16,6 +17,10 @@ import { MissingDAEntryError, MissingTfOperatorError } from '../errors';
16
17
  const tfRegex =
17
18
  /\/([^\0\t\n\f\r ]+)[\0\t\n\f\r ]*(\d*\.\d+|\d+)?[\0\t\n\f\r ]+Tf/;
18
19
  class PDFAcroField {
20
+ static className = () => PDFClasses.PDFAcroField;
21
+ myClass(): PDFClasses {
22
+ return PDFClasses.PDFAcroField;
23
+ }
19
24
  readonly dict: PDFDict;
20
25
  readonly ref: PDFRef;
21
26
 
@@ -48,7 +53,11 @@ class PDFAcroField {
48
53
 
49
54
  DA(): PDFString | PDFHexString | undefined {
50
55
  const da = this.dict.lookup(PDFName.of('DA'));
51
- if (da instanceof PDFString || da instanceof PDFHexString) return da;
56
+ if (
57
+ isPDFInstance(da, PDFClasses.PDFString) ||
58
+ isPDFInstance(da, PDFClasses.PDFHexString)
59
+ )
60
+ return da as PDFString | PDFHexString;
52
61
  return undefined;
53
62
  }
54
63
 
@@ -62,9 +71,9 @@ class PDFAcroField {
62
71
  // return new PDFAcroField(parent);
63
72
 
64
73
  const parentRef = this.dict.get(PDFName.of('Parent'));
65
- if (parentRef instanceof PDFRef) {
74
+ if (isPDFInstance(parentRef, PDFClasses.PDFRef)) {
66
75
  const parent = this.dict.lookup(PDFName.of('Parent'), PDFDict);
67
- return new PDFAcroField(parent, parentRef);
76
+ return new PDFAcroField(parent, parentRef as PDFRef);
68
77
  }
69
78
 
70
79
  return undefined;
@@ -97,8 +106,8 @@ class PDFAcroField {
97
106
  getDefaultAppearance(): string | undefined {
98
107
  const DA = this.DA();
99
108
 
100
- if (DA instanceof PDFHexString) {
101
- return DA.decodeText();
109
+ if (isPDFInstance(DA, PDFClasses.PDFHexString)) {
110
+ return (DA as PDFHexString).decodeText();
102
111
  }
103
112
 
104
113
  return DA?.asString();
@@ -4,10 +4,14 @@ import PDFArray from '../objects/PDFArray';
4
4
  import PDFName from '../objects/PDFName';
5
5
  import PDFRef from '../objects/PDFRef';
6
6
  import PDFAcroField from './PDFAcroField';
7
- import PDFAcroNonTerminal from './PDFAcroNonTerminal';
8
7
  import { createPDFAcroField, createPDFAcroFields } from './utils';
8
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
9
9
 
10
10
  class PDFAcroForm {
11
+ static className = () => PDFClasses.PDFAcroForm;
12
+ myClass(): PDFClasses {
13
+ return PDFClasses.PDFAcroForm;
14
+ }
11
15
  readonly dict: PDFDict;
12
16
 
13
17
  static fromDict = (dict: PDFDict) => new PDFAcroForm(dict);
@@ -23,7 +27,7 @@ class PDFAcroForm {
23
27
 
24
28
  Fields(): PDFArray | undefined {
25
29
  const fields = this.dict.lookup(PDFName.of('Fields'));
26
- if (fields instanceof PDFArray) return fields;
30
+ if (isPDFInstance(fields, PDFClasses.PDFArray)) return fields as PDFArray;
27
31
  return undefined;
28
32
  }
29
33
 
@@ -49,7 +53,7 @@ class PDFAcroForm {
49
53
  const field = fields[idx];
50
54
  allFields.push(field);
51
55
  const [fieldModel] = field;
52
- if (fieldModel instanceof PDFAcroNonTerminal) {
56
+ if (isPDFInstance(fieldModel, PDFClasses.PDFAcroNonTerminal)) {
53
57
  pushFields(createPDFAcroFields(fieldModel.Kids()));
54
58
  }
55
59
  }
@@ -2,8 +2,13 @@ import PDFDict from '../objects/PDFDict';
2
2
  import PDFAcroChoice from './PDFAcroChoice';
3
3
  import PDFContext from '../PDFContext';
4
4
  import PDFRef from '../objects/PDFRef';
5
+ import { PDFClasses } from '../../api/objects';
5
6
 
6
7
  class PDFAcroListBox extends PDFAcroChoice {
8
+ static className = () => PDFClasses.PDFAcroListBox;
9
+ myClass(): PDFClasses {
10
+ return PDFClasses.PDFAcroListBox;
11
+ }
7
12
  static fromDict = (dict: PDFDict, ref: PDFRef) =>
8
13
  new PDFAcroListBox(dict, ref);
9
14
 
@@ -3,8 +3,13 @@ import PDFRef from '../objects/PDFRef';
3
3
  import PDFName from '../objects/PDFName';
4
4
  import PDFContext from '../PDFContext';
5
5
  import PDFAcroField from './PDFAcroField';
6
+ import { PDFClasses } from '../../api/objects';
6
7
 
7
8
  class PDFAcroNonTerminal extends PDFAcroField {
9
+ static className = () => PDFClasses.PDFAcroNonTerminal;
10
+ myClass(): PDFClasses {
11
+ return PDFClasses.PDFAcroNonTerminal;
12
+ }
8
13
  static fromDict = (dict: PDFDict, ref: PDFRef) =>
9
14
  new PDFAcroNonTerminal(dict, ref);
10
15
 
@@ -3,8 +3,13 @@ import PDFAcroButton from './PDFAcroButton';
3
3
  import PDFContext from '../PDFContext';
4
4
  import PDFRef from '../objects/PDFRef';
5
5
  import { AcroButtonFlags } from './flags';
6
+ import { PDFClasses } from '../../api/objects';
6
7
 
7
8
  class PDFAcroPushButton extends PDFAcroButton {
9
+ static className = () => PDFClasses.PDFAcroPushButton;
10
+ myClass(): PDFClasses {
11
+ return PDFClasses.PDFAcroPushButton;
12
+ }
8
13
  static fromDict = (dict: PDFDict, ref: PDFRef) =>
9
14
  new PDFAcroPushButton(dict, ref);
10
15
 
@@ -5,8 +5,13 @@ import PDFAcroButton from './PDFAcroButton';
5
5
  import PDFContext from '../PDFContext';
6
6
  import { AcroButtonFlags } from './flags';
7
7
  import { InvalidAcroFieldValueError } from '../errors';
8
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
8
9
 
9
10
  class PDFAcroRadioButton extends PDFAcroButton {
11
+ static className = () => PDFClasses.PDFAcroRadioButton;
12
+ myClass(): PDFClasses {
13
+ return PDFClasses.PDFAcroRadioButton;
14
+ }
10
15
  static fromDict = (dict: PDFDict, ref: PDFRef) =>
11
16
  new PDFAcroRadioButton(dict, ref);
12
17
 
@@ -38,7 +43,7 @@ class PDFAcroRadioButton extends PDFAcroButton {
38
43
 
39
44
  getValue(): PDFName {
40
45
  const v = this.V();
41
- if (v instanceof PDFName) return v;
46
+ if (isPDFInstance(v, PDFClasses.PDFName)) return v as PDFName;
42
47
  return PDFName.of('Off');
43
48
  }
44
49
 
@@ -1,8 +1,13 @@
1
+ import { PDFClasses } from '../../api/objects';
1
2
  import PDFDict from '../objects/PDFDict';
2
3
  import PDFRef from '../objects/PDFRef';
3
4
  import PDFAcroTerminal from './PDFAcroTerminal';
4
5
 
5
6
  class PDFAcroSignature extends PDFAcroTerminal {
7
+ static className = () => PDFClasses.PDFAcroSignature;
8
+ myClass(): PDFClasses {
9
+ return PDFClasses.PDFAcroSignature;
10
+ }
6
11
  static fromDict = (dict: PDFDict, ref: PDFRef) =>
7
12
  new PDFAcroSignature(dict, ref);
8
13
  }
@@ -6,8 +6,13 @@ import PDFHexString from '../objects/PDFHexString';
6
6
  import PDFName from '../objects/PDFName';
7
7
  import PDFRef from '../objects/PDFRef';
8
8
  import PDFAcroTerminal from './PDFAcroTerminal';
9
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
9
10
 
10
11
  class PDFAcroText extends PDFAcroTerminal {
12
+ static className = () => PDFClasses.PDFAcroText;
13
+ myClass(): PDFClasses {
14
+ return PDFClasses.PDFAcroText;
15
+ }
11
16
  static fromDict = (dict: PDFDict, ref: PDFRef) => new PDFAcroText(dict, ref);
12
17
 
13
18
  static create = (context: PDFContext) => {
@@ -21,13 +26,13 @@ class PDFAcroText extends PDFAcroTerminal {
21
26
 
22
27
  MaxLen(): PDFNumber | undefined {
23
28
  const maxLen = this.dict.lookup(PDFName.of('MaxLen'));
24
- if (maxLen instanceof PDFNumber) return maxLen;
29
+ if (isPDFInstance(maxLen, PDFClasses.PDFNumber)) return maxLen as PDFNumber;
25
30
  return undefined;
26
31
  }
27
32
 
28
33
  Q(): PDFNumber | undefined {
29
34
  const q = this.dict.lookup(PDFName.of('Q'));
30
- if (q instanceof PDFNumber) return q;
35
+ if (isPDFInstance(q, PDFClasses.PDFNumber)) return q as PDFNumber;
31
36
  return undefined;
32
37
  }
33
38
 
@@ -68,7 +73,11 @@ class PDFAcroText extends PDFAcroTerminal {
68
73
 
69
74
  getValue(): PDFString | PDFHexString | undefined {
70
75
  const v = this.V();
71
- if (v instanceof PDFString || v instanceof PDFHexString) return v;
76
+ if (
77
+ isPDFInstance(v, PDFClasses.PDFString) ||
78
+ isPDFInstance(v, PDFClasses.PDFHexString)
79
+ )
80
+ return v as PDFString | PDFHexString;
72
81
  return undefined;
73
82
  }
74
83
  }
@@ -18,6 +18,7 @@ import PDFAcroCheckBox from './PDFAcroCheckBox';
18
18
  import PDFAcroComboBox from './PDFAcroComboBox';
19
19
  import PDFAcroListBox from './PDFAcroListBox';
20
20
  import { AcroButtonFlags, AcroChoiceFlags } from './flags';
21
+ import { isPDFInstance, PDFClasses } from '../../api/objects';
21
22
 
22
23
  export const createPDFAcroFields = (
23
24
  kidDicts?: PDFArray,
@@ -28,9 +29,15 @@ export const createPDFAcroFields = (
28
29
  for (let idx = 0, len = kidDicts.size(); idx < len; idx++) {
29
30
  const ref = kidDicts.get(idx);
30
31
  const dict = kidDicts.lookup(idx);
31
- // if (dict instanceof PDFDict) kids.push(PDFAcroField.fromDict(dict));
32
- if (ref instanceof PDFRef && dict instanceof PDFDict) {
33
- kids.push([createPDFAcroField(dict, ref), ref]);
32
+ // if (isPDFInstance(dict, PDFClasses.PDFDict)) kids.push(PDFAcroField.fromDict(dict));
33
+ if (
34
+ isPDFInstance(ref, PDFClasses.PDFRef) &&
35
+ isPDFInstance(dict, PDFClasses.PDFDict)
36
+ ) {
37
+ kids.push([
38
+ createPDFAcroField(dict as PDFDict, ref as PDFRef),
39
+ ref as PDFRef,
40
+ ]);
34
41
  }
35
42
  }
36
43
 
@@ -65,10 +72,12 @@ export const createPDFAcroField = (
65
72
  const isNonTerminalAcroField = (dict: PDFDict): boolean => {
66
73
  const kids = dict.lookup(PDFName.of('Kids'));
67
74
 
68
- if (kids instanceof PDFArray) {
69
- for (let idx = 0, len = kids.size(); idx < len; idx++) {
70
- const kid = kids.lookup(idx);
71
- const kidIsField = kid instanceof PDFDict && kid.has(PDFName.of('T'));
75
+ if (isPDFInstance(kids, PDFClasses.PDFArray)) {
76
+ for (let idx = 0, len = (kids as PDFArray).size(); idx < len; idx++) {
77
+ const kid = (kids as PDFArray).lookup(idx);
78
+ const kidIsField =
79
+ isPDFInstance(kid, PDFClasses.PDFDict) &&
80
+ (kid as PDFDict).has(PDFName.of('T'));
72
81
  if (kidIsField) return true;
73
82
  }
74
83
  }