art-bd-ui 1.0.21 → 1.0.23

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 (613) hide show
  1. package/dist/cjs/_virtual/common.js +5 -0
  2. package/dist/cjs/_virtual/dayjs.min.js +11 -0
  3. package/dist/cjs/_virtual/dayjs.min2.js +5 -0
  4. package/dist/cjs/_virtual/deflate.js +5 -0
  5. package/dist/cjs/_virtual/deflate2.js +5 -0
  6. package/dist/cjs/_virtual/index10.js +5 -0
  7. package/dist/cjs/_virtual/index5.js +2 -8
  8. package/dist/cjs/_virtual/index6.js +4 -4
  9. package/dist/cjs/_virtual/index7.js +8 -2
  10. package/dist/cjs/_virtual/index8.js +8 -2
  11. package/dist/cjs/_virtual/index9.js +2 -2
  12. package/dist/cjs/_virtual/inflate.js +5 -0
  13. package/dist/cjs/_virtual/inflate2.js +5 -0
  14. package/dist/cjs/_virtual/quarterOfYear.js +11 -0
  15. package/dist/cjs/_virtual/quarterOfYear2.js +5 -0
  16. package/dist/cjs/_virtual/strings.js +5 -0
  17. package/dist/cjs/_virtual/trees.js +5 -0
  18. package/dist/cjs/_virtual/warning.js +11 -0
  19. package/dist/cjs/components/ui/date-pickers/date-input/date-input.js +116 -0
  20. package/dist/cjs/components/ui/date-pickers/date-range-picker/date-range-picker.js +64 -0
  21. package/dist/cjs/components/ui/date-pickers/date-time-picker/date-time-picker.js +2 -2
  22. package/dist/cjs/components/ui/pdf-content/hooks/use-page-layout.js +49 -0
  23. package/dist/cjs/components/ui/pdf-content/hooks/use-pdf-scale.js +23 -0
  24. package/dist/cjs/components/ui/pdf-content/hooks/use-virtual-pages.js +90 -0
  25. package/dist/cjs/components/ui/pdf-content/pdf-content.js +91 -0
  26. package/dist/cjs/components/ui/pdf-content/pdf-page.js +20 -0
  27. package/dist/cjs/components/ui/pdf-content/utils.js +7 -0
  28. package/dist/cjs/components/ui/pdf-viewer/pdf-field-types.js +144 -0
  29. package/dist/cjs/components/ui/pdf-viewer/pdf-viewer.js +48 -0
  30. package/dist/cjs/components/ui/pdf-viewer/pdf-worker-client.js +24 -0
  31. package/dist/cjs/components/ui/pdf-viewer/toolbar.js +13 -0
  32. package/dist/cjs/components/ui/pdf-viewer/use-filled-pdf.js +67 -0
  33. package/dist/cjs/components/ui/pdf-viewer/utils.js +284 -0
  34. package/dist/cjs/components/ui/rich-editor/rich-content-preview.js +342 -0
  35. package/dist/cjs/components/ui/rich-editor/rich-content-renderer.js +115 -41
  36. package/dist/cjs/components/ui/rich-editor/toolbar.js +6 -3
  37. package/dist/cjs/hooks/use-intersection.js +24 -0
  38. package/dist/cjs/hooks/use-raf-throttle.js +20 -0
  39. package/dist/cjs/hooks/use-resize-observer.js +20 -0
  40. package/dist/cjs/index.js +28 -3
  41. package/dist/cjs/node_modules/@ckeditor/ckeditor5-mention/dist/index.js +1 -1
  42. package/dist/cjs/node_modules/@ckeditor/ckeditor5-paragraph/dist/index.js +1 -1
  43. package/dist/cjs/node_modules/@ckeditor/ckeditor5-ui/dist/index.js +1 -1
  44. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Courier-Bold.compressed.json.js +7 -0
  45. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Courier-BoldOblique.compressed.json.js +7 -0
  46. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Courier-Oblique.compressed.json.js +7 -0
  47. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Courier.compressed.json.js +7 -0
  48. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Encoding.js +39 -0
  49. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Font.js +87 -0
  50. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Helvetica-Bold.compressed.json.js +7 -0
  51. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Helvetica-BoldOblique.compressed.json.js +7 -0
  52. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Helvetica-Oblique.compressed.json.js +7 -0
  53. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Helvetica.compressed.json.js +7 -0
  54. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Symbol.compressed.json.js +7 -0
  55. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Times-Bold.compressed.json.js +7 -0
  56. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Times-BoldItalic.compressed.json.js +7 -0
  57. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Times-Italic.compressed.json.js +7 -0
  58. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/Times-Roman.compressed.json.js +7 -0
  59. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/ZapfDingbats.compressed.json.js +7 -0
  60. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/all-encodings.compressed.json.js +7 -0
  61. package/dist/cjs/node_modules/@pdf-lib/standard-fonts/es/utils.js +69 -0
  62. package/dist/cjs/node_modules/@pdf-lib/upng/UPNG.js +1019 -0
  63. package/dist/cjs/node_modules/attr-accept/dist/es/index.js +1 -1
  64. package/dist/cjs/node_modules/chrono-node/dist/esm/calculation/mergingCalculation.js +76 -0
  65. package/dist/cjs/node_modules/chrono-node/dist/esm/calculation/years.js +34 -0
  66. package/dist/cjs/node_modules/chrono-node/dist/esm/chrono.js +113 -0
  67. package/dist/cjs/node_modules/chrono-node/dist/esm/common/abstractRefiners.js +41 -0
  68. package/dist/cjs/node_modules/chrono-node/dist/esm/common/calculation/weekdays.js +68 -0
  69. package/dist/cjs/node_modules/chrono-node/dist/esm/common/casualReferences.js +136 -0
  70. package/dist/cjs/node_modules/chrono-node/dist/esm/common/parsers/AbstractParserWithWordBoundary.js +33 -0
  71. package/dist/cjs/node_modules/chrono-node/dist/esm/common/parsers/AbstractTimeExpressionParser.js +336 -0
  72. package/dist/cjs/node_modules/chrono-node/dist/esm/common/parsers/ISOFormatParser.js +70 -0
  73. package/dist/cjs/node_modules/chrono-node/dist/esm/common/parsers/SlashDateFormatParser.js +79 -0
  74. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/AbstractMergeDateRangeRefiner.js +65 -0
  75. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/AbstractMergeDateTimeRefiner.js +24 -0
  76. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/ExtractTimezoneAbbrRefiner.js +57 -0
  77. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/ExtractTimezoneOffsetRefiner.js +42 -0
  78. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/ForwardDateRefiner.js +78 -0
  79. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/MergeWeekdayComponentRefiner.js +26 -0
  80. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/OverlapRemovalRefiner.js +41 -0
  81. package/dist/cjs/node_modules/chrono-node/dist/esm/common/refiners/UnlikelyFormatFilter.js +54 -0
  82. package/dist/cjs/node_modules/chrono-node/dist/esm/configurations.js +23 -0
  83. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/configuration.js +66 -0
  84. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/constants.js +277 -0
  85. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/index.js +36 -0
  86. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENCasualDateParser.js +55 -0
  87. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENCasualTimeParser.js +41 -0
  88. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENMonthNameLittleEndianParser.js +58 -0
  89. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js +72 -0
  90. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENMonthNameParser.js +46 -0
  91. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENRelativeDateFormatParser.js +57 -0
  92. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENSlashMonthFormatParser.js +21 -0
  93. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeExpressionParser.js +61 -0
  94. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitAgoFormatParser.js +31 -0
  95. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js +38 -0
  96. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitLaterFormatParser.js +30 -0
  97. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitWithinFormatParser.js +39 -0
  98. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENWeekdayParser.js +67 -0
  99. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/parsers/ENYearMonthDayParser.js +51 -0
  100. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/refiners/ENExtractYearSuffixRefiner.js +37 -0
  101. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeDateRangeRefiner.js +13 -0
  102. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeDateTimeRefiner.js +13 -0
  103. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeRelativeAfterDateRefiner.js +33 -0
  104. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeRelativeFollowByDateRefiner.js +39 -0
  105. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.js +38 -0
  106. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/constants.js +342 -0
  107. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/index.js +71 -0
  108. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/AbstractParserWithWordBoundaryChecking.js +24 -0
  109. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKCasualDateParser.js +35 -0
  110. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKCasualTimeParser.js +52 -0
  111. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKMonthNameLittleEndianParser.js +55 -0
  112. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKMonthNameParser.js +43 -0
  113. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKRelativeDateFormatParser.js +63 -0
  114. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeExpressionParser.js +60 -0
  115. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeUnitAgoFormatParser.js +21 -0
  116. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeUnitCasualRelativeFormatParser.js +28 -0
  117. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeUnitWithinFormatParser.js +25 -0
  118. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKWeekdayParser.js +48 -0
  119. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/refiners/UKMergeDateRangeRefiner.js +13 -0
  120. package/dist/cjs/node_modules/chrono-node/dist/esm/locales/uk/refiners/UKMergeDateTimeRefiner.js +13 -0
  121. package/dist/cjs/node_modules/chrono-node/dist/esm/results.js +269 -0
  122. package/dist/cjs/node_modules/chrono-node/dist/esm/timezone.js +278 -0
  123. package/dist/cjs/node_modules/chrono-node/dist/esm/types.js +32 -0
  124. package/dist/cjs/node_modules/chrono-node/dist/esm/utils/dates.js +9 -0
  125. package/dist/cjs/node_modules/chrono-node/dist/esm/utils/dayjs.js +43 -0
  126. package/dist/cjs/node_modules/chrono-node/dist/esm/utils/pattern.js +30 -0
  127. package/dist/cjs/node_modules/chrono-node/dist/esm/utils/timeunits.js +30 -0
  128. package/dist/cjs/node_modules/color-parse/index.js +1 -1
  129. package/dist/cjs/node_modules/comlink/dist/esm/comlink.js +360 -0
  130. package/dist/cjs/node_modules/dayjs/dayjs.min.js +18 -0
  131. package/dist/cjs/node_modules/dayjs/plugin/quarterOfYear.js +18 -0
  132. package/dist/cjs/node_modules/dequal/dist/index.js +88 -0
  133. package/dist/cjs/node_modules/make-cancellable-promise/dist/index.js +20 -0
  134. package/dist/cjs/node_modules/make-event-props/dist/index.js +151 -0
  135. package/dist/cjs/node_modules/merge-refs/dist/index.js +40 -0
  136. package/dist/cjs/node_modules/pako/index.js +29 -0
  137. package/dist/cjs/node_modules/pako/lib/deflate.js +417 -0
  138. package/dist/cjs/node_modules/pako/lib/inflate.js +442 -0
  139. package/dist/cjs/node_modules/pako/lib/utils/common.js +119 -0
  140. package/dist/cjs/node_modules/pako/lib/utils/strings.js +199 -0
  141. package/dist/cjs/node_modules/pako/lib/zlib/adler32.js +62 -0
  142. package/dist/cjs/node_modules/pako/lib/zlib/constants.js +79 -0
  143. package/dist/cjs/node_modules/pako/lib/zlib/crc32.js +70 -0
  144. package/dist/cjs/node_modules/pako/lib/zlib/deflate.js +1891 -0
  145. package/dist/cjs/node_modules/pako/lib/zlib/gzheader.js +69 -0
  146. package/dist/cjs/node_modules/pako/lib/zlib/inffast.js +356 -0
  147. package/dist/cjs/node_modules/pako/lib/zlib/inflate.js +1570 -0
  148. package/dist/cjs/node_modules/pako/lib/zlib/inftrees.js +356 -0
  149. package/dist/cjs/node_modules/pako/lib/zlib/messages.js +43 -0
  150. package/dist/cjs/node_modules/pako/lib/zlib/trees.js +1235 -0
  151. package/dist/cjs/node_modules/pako/lib/zlib/zstream.js +58 -0
  152. package/dist/cjs/node_modules/pdf-lib/es/api/PDFDocument.js +1444 -0
  153. package/dist/cjs/node_modules/pdf-lib/es/api/PDFDocumentOptions.js +9 -0
  154. package/dist/cjs/node_modules/pdf-lib/es/api/PDFEmbeddedFile.js +154 -0
  155. package/dist/cjs/node_modules/pdf-lib/es/api/PDFEmbeddedPage.js +170 -0
  156. package/dist/cjs/node_modules/pdf-lib/es/api/PDFFont.js +218 -0
  157. package/dist/cjs/node_modules/pdf-lib/es/api/PDFImage.js +207 -0
  158. package/dist/cjs/node_modules/pdf-lib/es/api/PDFJavaScript.js +143 -0
  159. package/dist/cjs/node_modules/pdf-lib/es/api/PDFPage.js +1518 -0
  160. package/dist/cjs/node_modules/pdf-lib/es/api/PDFPageOptions.js +17 -0
  161. package/dist/cjs/node_modules/pdf-lib/es/api/StandardFonts.js +19 -0
  162. package/dist/cjs/node_modules/pdf-lib/es/api/colors.js +72 -0
  163. package/dist/cjs/node_modules/pdf-lib/es/api/errors.js +166 -0
  164. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFButton.js +295 -0
  165. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFCheckBox.js +311 -0
  166. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFDropdown.js +655 -0
  167. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFField.js +459 -0
  168. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFForm.js +802 -0
  169. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFOptionList.js +574 -0
  170. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFRadioGroup.js +490 -0
  171. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFSignature.js +118 -0
  172. package/dist/cjs/node_modules/pdf-lib/es/api/form/PDFTextField.js +814 -0
  173. package/dist/cjs/node_modules/pdf-lib/es/api/form/appearances.js +433 -0
  174. package/dist/cjs/node_modules/pdf-lib/es/api/image/alignment.js +8 -0
  175. package/dist/cjs/node_modules/pdf-lib/es/api/objects.js +84 -0
  176. package/dist/cjs/node_modules/pdf-lib/es/api/operations.js +491 -0
  177. package/dist/cjs/node_modules/pdf-lib/es/api/operators.js +285 -0
  178. package/dist/cjs/node_modules/pdf-lib/es/api/rotations.js +81 -0
  179. package/dist/cjs/node_modules/pdf-lib/es/api/sizes.js +6 -0
  180. package/dist/cjs/node_modules/pdf-lib/es/api/svgPath.js +381 -0
  181. package/dist/cjs/node_modules/pdf-lib/es/api/text/alignment.js +8 -0
  182. package/dist/cjs/node_modules/pdf-lib/es/api/text/layout.js +220 -0
  183. package/dist/cjs/node_modules/pdf-lib/es/core/PDFContext.js +209 -0
  184. package/dist/cjs/node_modules/pdf-lib/es/core/PDFObjectCopier.js +121 -0
  185. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroButton.js +99 -0
  186. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroCheckBox.js +53 -0
  187. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroChoice.js +130 -0
  188. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroComboBox.js +29 -0
  189. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroField.js +156 -0
  190. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroForm.js +80 -0
  191. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroListBox.js +27 -0
  192. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroNonTerminal.js +37 -0
  193. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroPushButton.js +29 -0
  194. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroRadioButton.js +60 -0
  195. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroSignature.js +19 -0
  196. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroTerminal.js +73 -0
  197. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/PDFAcroText.js +76 -0
  198. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/flags.js +148 -0
  199. package/dist/cjs/node_modules/pdf-lib/es/core/acroform/utils.js +128 -0
  200. package/dist/cjs/node_modules/pdf-lib/es/core/annotation/AppearanceCharacteristics.js +125 -0
  201. package/dist/cjs/node_modules/pdf-lib/es/core/annotation/BorderStyle.js +31 -0
  202. package/dist/cjs/node_modules/pdf-lib/es/core/annotation/PDFAnnotation.js +125 -0
  203. package/dist/cjs/node_modules/pdf-lib/es/core/annotation/PDFWidgetAnnotation.js +113 -0
  204. package/dist/cjs/node_modules/pdf-lib/es/core/annotation/flags.js +83 -0
  205. package/dist/cjs/node_modules/pdf-lib/es/core/document/PDFCrossRefSection.js +131 -0
  206. package/dist/cjs/node_modules/pdf-lib/es/core/document/PDFHeader.js +49 -0
  207. package/dist/cjs/node_modules/pdf-lib/es/core/document/PDFTrailer.js +50 -0
  208. package/dist/cjs/node_modules/pdf-lib/es/core/document/PDFTrailerDict.js +34 -0
  209. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/CMap.js +48 -0
  210. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/CustomFontEmbedder.js +248 -0
  211. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/CustomFontSubsetEmbedder.js +77 -0
  212. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/FileEmbedder.js +76 -0
  213. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/FontFlags.js +38 -0
  214. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/JavaScriptEmbedder.js +38 -0
  215. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/JpegEmbedder.js +109 -0
  216. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/PDFPageEmbedder.js +98 -0
  217. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/PngEmbedder.js +71 -0
  218. package/dist/cjs/node_modules/pdf-lib/es/core/embedders/StandardFontEmbedder.js +106 -0
  219. package/dist/cjs/node_modules/pdf-lib/es/core/errors.js +327 -0
  220. package/dist/cjs/node_modules/pdf-lib/es/core/interactive/ViewerPreferences.js +517 -0
  221. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFArray.js +120 -0
  222. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFBool.js +55 -0
  223. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFDict.js +141 -0
  224. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFHexString.js +82 -0
  225. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFInvalidObject.js +35 -0
  226. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFName.js +146 -0
  227. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFNull.js +37 -0
  228. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFNumber.js +47 -0
  229. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFObject.js +25 -0
  230. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFRawStream.js +42 -0
  231. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFRef.js +55 -0
  232. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFStream.js +78 -0
  233. package/dist/cjs/node_modules/pdf-lib/es/core/objects/PDFString.js +124 -0
  234. package/dist/cjs/node_modules/pdf-lib/es/core/operators/PDFOperator.js +65 -0
  235. package/dist/cjs/node_modules/pdf-lib/es/core/operators/PDFOperatorNames.js +91 -0
  236. package/dist/cjs/node_modules/pdf-lib/es/core/parser/BaseParser.js +117 -0
  237. package/dist/cjs/node_modules/pdf-lib/es/core/parser/ByteStream.js +66 -0
  238. package/dist/cjs/node_modules/pdf-lib/es/core/parser/PDFObjectParser.js +241 -0
  239. package/dist/cjs/node_modules/pdf-lib/es/core/parser/PDFObjectStreamParser.js +78 -0
  240. package/dist/cjs/node_modules/pdf-lib/es/core/parser/PDFParser.js +364 -0
  241. package/dist/cjs/node_modules/pdf-lib/es/core/parser/PDFXRefStreamParser.js +94 -0
  242. package/dist/cjs/node_modules/pdf-lib/es/core/streams/Ascii85Stream.js +90 -0
  243. package/dist/cjs/node_modules/pdf-lib/es/core/streams/AsciiHexStream.js +78 -0
  244. package/dist/cjs/node_modules/pdf-lib/es/core/streams/DecodeStream.js +151 -0
  245. package/dist/cjs/node_modules/pdf-lib/es/core/streams/FlateStream.js +366 -0
  246. package/dist/cjs/node_modules/pdf-lib/es/core/streams/LZWStream.js +140 -0
  247. package/dist/cjs/node_modules/pdf-lib/es/core/streams/RunLengthStream.js +58 -0
  248. package/dist/cjs/node_modules/pdf-lib/es/core/streams/Stream.js +108 -0
  249. package/dist/cjs/node_modules/pdf-lib/es/core/streams/decode.js +59 -0
  250. package/dist/cjs/node_modules/pdf-lib/es/core/structures/PDFCatalog.js +98 -0
  251. package/dist/cjs/node_modules/pdf-lib/es/core/structures/PDFContentStream.js +63 -0
  252. package/dist/cjs/node_modules/pdf-lib/es/core/structures/PDFCrossRefStream.js +195 -0
  253. package/dist/cjs/node_modules/pdf-lib/es/core/structures/PDFFlateStream.js +42 -0
  254. package/dist/cjs/node_modules/pdf-lib/es/core/structures/PDFObjectStream.js +86 -0
  255. package/dist/cjs/node_modules/pdf-lib/es/core/structures/PDFPageLeaf.js +209 -0
  256. package/dist/cjs/node_modules/pdf-lib/es/core/structures/PDFPageTree.js +180 -0
  257. package/dist/cjs/node_modules/pdf-lib/es/core/syntax/CharCodes.js +68 -0
  258. package/dist/cjs/node_modules/pdf-lib/es/core/syntax/Delimiters.js +17 -0
  259. package/dist/cjs/node_modules/pdf-lib/es/core/syntax/Irregular.js +13 -0
  260. package/dist/cjs/node_modules/pdf-lib/es/core/syntax/Keywords.js +85 -0
  261. package/dist/cjs/node_modules/pdf-lib/es/core/syntax/Numeric.js +27 -0
  262. package/dist/cjs/node_modules/pdf-lib/es/core/syntax/Whitespace.js +13 -0
  263. package/dist/cjs/node_modules/pdf-lib/es/core/writers/PDFStreamWriter.js +122 -0
  264. package/dist/cjs/node_modules/pdf-lib/es/core/writers/PDFWriter.js +153 -0
  265. package/dist/cjs/node_modules/pdf-lib/es/utils/Cache.js +25 -0
  266. package/dist/cjs/node_modules/pdf-lib/es/utils/arrays.js +145 -0
  267. package/dist/cjs/node_modules/pdf-lib/es/utils/async.js +13 -0
  268. package/dist/cjs/node_modules/pdf-lib/es/utils/base64.js +89 -0
  269. package/dist/cjs/node_modules/pdf-lib/es/utils/errors.js +7 -0
  270. package/dist/cjs/node_modules/pdf-lib/es/utils/numbers.js +59 -0
  271. package/dist/cjs/node_modules/pdf-lib/es/utils/objects.js +16 -0
  272. package/dist/cjs/node_modules/pdf-lib/es/utils/pdfDocEncoding.js +70 -0
  273. package/dist/cjs/node_modules/pdf-lib/es/utils/png.js +62 -0
  274. package/dist/cjs/node_modules/pdf-lib/es/utils/rng.js +22 -0
  275. package/dist/cjs/node_modules/pdf-lib/es/utils/strings.js +154 -0
  276. package/dist/cjs/node_modules/pdf-lib/es/utils/unicode.js +247 -0
  277. package/dist/cjs/node_modules/pdf-lib/es/utils/validators.js +200 -0
  278. package/dist/cjs/node_modules/pdfjs-dist/build/pdf.js +25600 -0
  279. package/dist/cjs/node_modules/prop-types/index.js +1 -1
  280. package/dist/cjs/node_modules/prop-types/node_modules/react-is/index.js +1 -1
  281. package/dist/cjs/node_modules/react-pdf/dist/Document.js +311 -0
  282. package/dist/cjs/node_modules/react-pdf/dist/DocumentContext.js +10 -0
  283. package/dist/cjs/node_modules/react-pdf/dist/LinkService.js +155 -0
  284. package/dist/cjs/node_modules/react-pdf/dist/Message.js +11 -0
  285. package/dist/cjs/node_modules/react-pdf/dist/Page/AnnotationLayer.css.js +10 -0
  286. package/dist/cjs/node_modules/react-pdf/dist/Page/AnnotationLayer.js +152 -0
  287. package/dist/cjs/node_modules/react-pdf/dist/Page/Canvas.js +104 -0
  288. package/dist/cjs/node_modules/react-pdf/dist/Page/TextLayer.css.js +10 -0
  289. package/dist/cjs/node_modules/react-pdf/dist/Page/TextLayer.js +183 -0
  290. package/dist/cjs/node_modules/react-pdf/dist/Page.js +256 -0
  291. package/dist/cjs/node_modules/react-pdf/dist/PageContext.js +10 -0
  292. package/dist/cjs/node_modules/react-pdf/dist/PasswordResponses.js +11 -0
  293. package/dist/cjs/node_modules/react-pdf/dist/StructTree.js +81 -0
  294. package/dist/cjs/node_modules/react-pdf/dist/StructTreeItem.js +27 -0
  295. package/dist/cjs/node_modules/react-pdf/dist/index.js +9 -0
  296. package/dist/cjs/node_modules/react-pdf/dist/shared/constants.js +62 -0
  297. package/dist/cjs/node_modules/react-pdf/dist/shared/hooks/useDocumentContext.js +12 -0
  298. package/dist/cjs/node_modules/react-pdf/dist/shared/hooks/usePageContext.js +12 -0
  299. package/dist/cjs/node_modules/react-pdf/dist/shared/hooks/useResolver.js +23 -0
  300. package/dist/cjs/node_modules/react-pdf/dist/shared/structTreeUtils.js +75 -0
  301. package/dist/cjs/node_modules/react-pdf/dist/shared/utils.js +163 -0
  302. package/dist/cjs/node_modules/tiny-invariant/dist/esm/tiny-invariant.js +19 -0
  303. package/dist/cjs/node_modules/tslib/tslib.es6.js +54 -0
  304. package/dist/cjs/node_modules/warning/warning.js +73 -0
  305. package/dist/cjs/utils/file.js +69 -0
  306. package/dist/esm/_virtual/common.js +3 -0
  307. package/dist/esm/_virtual/dayjs.min.js +7 -0
  308. package/dist/esm/_virtual/dayjs.min2.js +3 -0
  309. package/dist/esm/_virtual/deflate.js +3 -0
  310. package/dist/esm/_virtual/deflate2.js +3 -0
  311. package/dist/esm/_virtual/index10.js +3 -0
  312. package/dist/esm/_virtual/index5.js +2 -6
  313. package/dist/esm/_virtual/index6.js +4 -4
  314. package/dist/esm/_virtual/index7.js +6 -2
  315. package/dist/esm/_virtual/index8.js +6 -2
  316. package/dist/esm/_virtual/index9.js +2 -2
  317. package/dist/esm/_virtual/inflate.js +3 -0
  318. package/dist/esm/_virtual/inflate2.js +3 -0
  319. package/dist/esm/_virtual/quarterOfYear.js +7 -0
  320. package/dist/esm/_virtual/quarterOfYear2.js +3 -0
  321. package/dist/esm/_virtual/strings.js +3 -0
  322. package/dist/esm/_virtual/trees.js +3 -0
  323. package/dist/esm/_virtual/warning.js +7 -0
  324. package/dist/esm/components/ui/date-pickers/date-input/date-input.js +114 -0
  325. package/dist/esm/components/ui/date-pickers/date-range-picker/date-range-picker.js +62 -0
  326. package/dist/esm/components/ui/date-pickers/date-time-picker/date-time-picker.js +2 -2
  327. package/dist/esm/components/ui/pdf-content/hooks/use-page-layout.js +47 -0
  328. package/dist/esm/components/ui/pdf-content/hooks/use-pdf-scale.js +21 -0
  329. package/dist/esm/components/ui/pdf-content/hooks/use-virtual-pages.js +88 -0
  330. package/dist/esm/components/ui/pdf-content/pdf-content.js +88 -0
  331. package/dist/esm/components/ui/pdf-content/pdf-page.js +18 -0
  332. package/dist/esm/components/ui/pdf-content/utils.js +5 -0
  333. package/dist/esm/components/ui/pdf-viewer/pdf-field-types.js +140 -0
  334. package/dist/esm/components/ui/pdf-viewer/pdf-viewer.js +46 -0
  335. package/dist/esm/components/ui/pdf-viewer/pdf-worker-client.js +21 -0
  336. package/dist/esm/components/ui/pdf-viewer/toolbar.js +11 -0
  337. package/dist/esm/components/ui/pdf-viewer/use-filled-pdf.js +65 -0
  338. package/dist/esm/components/ui/pdf-viewer/utils.js +280 -0
  339. package/dist/esm/components/ui/rich-editor/rich-content-preview.js +321 -0
  340. package/dist/esm/components/ui/rich-editor/rich-content-renderer.js +114 -40
  341. package/dist/esm/components/ui/rich-editor/toolbar.js +6 -3
  342. package/dist/esm/hooks/use-intersection.js +22 -0
  343. package/dist/esm/hooks/use-raf-throttle.js +18 -0
  344. package/dist/esm/hooks/use-resize-observer.js +18 -0
  345. package/dist/esm/index.js +11 -0
  346. package/dist/esm/node_modules/@ckeditor/ckeditor5-mention/dist/index.js +1 -1
  347. package/dist/esm/node_modules/@ckeditor/ckeditor5-paragraph/dist/index.js +1 -1
  348. package/dist/esm/node_modules/@ckeditor/ckeditor5-ui/dist/index.js +1 -1
  349. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Courier-Bold.compressed.json.js +3 -0
  350. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Courier-BoldOblique.compressed.json.js +3 -0
  351. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Courier-Oblique.compressed.json.js +3 -0
  352. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Courier.compressed.json.js +3 -0
  353. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Encoding.js +37 -0
  354. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Font.js +85 -0
  355. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Helvetica-Bold.compressed.json.js +3 -0
  356. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Helvetica-BoldOblique.compressed.json.js +3 -0
  357. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Helvetica-Oblique.compressed.json.js +3 -0
  358. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Helvetica.compressed.json.js +3 -0
  359. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Symbol.compressed.json.js +3 -0
  360. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Times-Bold.compressed.json.js +3 -0
  361. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Times-BoldItalic.compressed.json.js +3 -0
  362. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Times-Italic.compressed.json.js +3 -0
  363. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/Times-Roman.compressed.json.js +3 -0
  364. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/ZapfDingbats.compressed.json.js +3 -0
  365. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/all-encodings.compressed.json.js +3 -0
  366. package/dist/esm/node_modules/@pdf-lib/standard-fonts/es/utils.js +65 -0
  367. package/dist/esm/node_modules/@pdf-lib/upng/UPNG.js +1015 -0
  368. package/dist/esm/node_modules/attr-accept/dist/es/index.js +1 -1
  369. package/dist/esm/node_modules/chrono-node/dist/esm/calculation/mergingCalculation.js +73 -0
  370. package/dist/esm/node_modules/chrono-node/dist/esm/calculation/years.js +31 -0
  371. package/dist/esm/node_modules/chrono-node/dist/esm/chrono.js +110 -0
  372. package/dist/esm/node_modules/chrono-node/dist/esm/common/abstractRefiners.js +38 -0
  373. package/dist/esm/node_modules/chrono-node/dist/esm/common/calculation/weekdays.js +62 -0
  374. package/dist/esm/node_modules/chrono-node/dist/esm/common/casualReferences.js +121 -0
  375. package/dist/esm/node_modules/chrono-node/dist/esm/common/parsers/AbstractParserWithWordBoundary.js +31 -0
  376. package/dist/esm/node_modules/chrono-node/dist/esm/common/parsers/AbstractTimeExpressionParser.js +334 -0
  377. package/dist/esm/node_modules/chrono-node/dist/esm/common/parsers/ISOFormatParser.js +66 -0
  378. package/dist/esm/node_modules/chrono-node/dist/esm/common/parsers/SlashDateFormatParser.js +75 -0
  379. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/AbstractMergeDateRangeRefiner.js +61 -0
  380. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/AbstractMergeDateTimeRefiner.js +20 -0
  381. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/ExtractTimezoneAbbrRefiner.js +53 -0
  382. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/ExtractTimezoneOffsetRefiner.js +38 -0
  383. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/ForwardDateRefiner.js +74 -0
  384. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/MergeWeekdayComponentRefiner.js +22 -0
  385. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/OverlapRemovalRefiner.js +37 -0
  386. package/dist/esm/node_modules/chrono-node/dist/esm/common/refiners/UnlikelyFormatFilter.js +50 -0
  387. package/dist/esm/node_modules/chrono-node/dist/esm/configurations.js +21 -0
  388. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/configuration.js +62 -0
  389. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/constants.js +260 -0
  390. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/index.js +17 -0
  391. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENCasualDateParser.js +51 -0
  392. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENCasualTimeParser.js +37 -0
  393. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENMonthNameLittleEndianParser.js +54 -0
  394. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js +68 -0
  395. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENMonthNameParser.js +42 -0
  396. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENRelativeDateFormatParser.js +53 -0
  397. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENSlashMonthFormatParser.js +17 -0
  398. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeExpressionParser.js +57 -0
  399. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitAgoFormatParser.js +27 -0
  400. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js +34 -0
  401. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitLaterFormatParser.js +26 -0
  402. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENTimeUnitWithinFormatParser.js +35 -0
  403. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENWeekdayParser.js +63 -0
  404. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/parsers/ENYearMonthDayParser.js +47 -0
  405. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/refiners/ENExtractYearSuffixRefiner.js +33 -0
  406. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeDateRangeRefiner.js +9 -0
  407. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeDateTimeRefiner.js +9 -0
  408. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeRelativeAfterDateRefiner.js +29 -0
  409. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/refiners/ENMergeRelativeFollowByDateRefiner.js +35 -0
  410. package/dist/esm/node_modules/chrono-node/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.js +34 -0
  411. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/constants.js +326 -0
  412. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/index.js +52 -0
  413. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/AbstractParserWithWordBoundaryChecking.js +21 -0
  414. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKCasualDateParser.js +31 -0
  415. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKCasualTimeParser.js +48 -0
  416. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKMonthNameLittleEndianParser.js +51 -0
  417. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKMonthNameParser.js +39 -0
  418. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKRelativeDateFormatParser.js +59 -0
  419. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeExpressionParser.js +56 -0
  420. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeUnitAgoFormatParser.js +17 -0
  421. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeUnitCasualRelativeFormatParser.js +24 -0
  422. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKTimeUnitWithinFormatParser.js +21 -0
  423. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/parsers/UKWeekdayParser.js +44 -0
  424. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/refiners/UKMergeDateRangeRefiner.js +9 -0
  425. package/dist/esm/node_modules/chrono-node/dist/esm/locales/uk/refiners/UKMergeDateTimeRefiner.js +9 -0
  426. package/dist/esm/node_modules/chrono-node/dist/esm/results.js +265 -0
  427. package/dist/esm/node_modules/chrono-node/dist/esm/timezone.js +273 -0
  428. package/dist/esm/node_modules/chrono-node/dist/esm/types.js +32 -0
  429. package/dist/esm/node_modules/chrono-node/dist/esm/utils/dates.js +7 -0
  430. package/dist/esm/node_modules/chrono-node/dist/esm/utils/dayjs.js +37 -0
  431. package/dist/esm/node_modules/chrono-node/dist/esm/utils/pattern.js +26 -0
  432. package/dist/esm/node_modules/chrono-node/dist/esm/utils/timeunits.js +27 -0
  433. package/dist/esm/node_modules/color-parse/index.js +1 -1
  434. package/dist/esm/node_modules/comlink/dist/esm/comlink.js +350 -0
  435. package/dist/esm/node_modules/dayjs/dayjs.min.js +16 -0
  436. package/dist/esm/node_modules/dayjs/plugin/quarterOfYear.js +16 -0
  437. package/dist/esm/node_modules/dequal/dist/index.js +86 -0
  438. package/dist/esm/node_modules/make-cancellable-promise/dist/index.js +16 -0
  439. package/dist/esm/node_modules/make-event-props/dist/index.js +128 -0
  440. package/dist/esm/node_modules/merge-refs/dist/index.js +36 -0
  441. package/dist/esm/node_modules/pako/index.js +27 -0
  442. package/dist/esm/node_modules/pako/lib/deflate.js +415 -0
  443. package/dist/esm/node_modules/pako/lib/inflate.js +440 -0
  444. package/dist/esm/node_modules/pako/lib/utils/common.js +117 -0
  445. package/dist/esm/node_modules/pako/lib/utils/strings.js +197 -0
  446. package/dist/esm/node_modules/pako/lib/zlib/adler32.js +60 -0
  447. package/dist/esm/node_modules/pako/lib/zlib/constants.js +77 -0
  448. package/dist/esm/node_modules/pako/lib/zlib/crc32.js +68 -0
  449. package/dist/esm/node_modules/pako/lib/zlib/deflate.js +1889 -0
  450. package/dist/esm/node_modules/pako/lib/zlib/gzheader.js +67 -0
  451. package/dist/esm/node_modules/pako/lib/zlib/inffast.js +354 -0
  452. package/dist/esm/node_modules/pako/lib/zlib/inflate.js +1568 -0
  453. package/dist/esm/node_modules/pako/lib/zlib/inftrees.js +354 -0
  454. package/dist/esm/node_modules/pako/lib/zlib/messages.js +41 -0
  455. package/dist/esm/node_modules/pako/lib/zlib/trees.js +1233 -0
  456. package/dist/esm/node_modules/pako/lib/zlib/zstream.js +56 -0
  457. package/dist/esm/node_modules/pdf-lib/es/api/PDFDocument.js +1440 -0
  458. package/dist/esm/node_modules/pdf-lib/es/api/PDFDocumentOptions.js +9 -0
  459. package/dist/esm/node_modules/pdf-lib/es/api/PDFEmbeddedFile.js +150 -0
  460. package/dist/esm/node_modules/pdf-lib/es/api/PDFEmbeddedPage.js +166 -0
  461. package/dist/esm/node_modules/pdf-lib/es/api/PDFFont.js +214 -0
  462. package/dist/esm/node_modules/pdf-lib/es/api/PDFImage.js +203 -0
  463. package/dist/esm/node_modules/pdf-lib/es/api/PDFJavaScript.js +139 -0
  464. package/dist/esm/node_modules/pdf-lib/es/api/PDFPage.js +1514 -0
  465. package/dist/esm/node_modules/pdf-lib/es/api/PDFPageOptions.js +17 -0
  466. package/dist/esm/node_modules/pdf-lib/es/api/StandardFonts.js +19 -0
  467. package/dist/esm/node_modules/pdf-lib/es/api/colors.js +64 -0
  468. package/dist/esm/node_modules/pdf-lib/es/api/errors.js +153 -0
  469. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFButton.js +291 -0
  470. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFCheckBox.js +307 -0
  471. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFDropdown.js +651 -0
  472. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFField.js +454 -0
  473. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFForm.js +798 -0
  474. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFOptionList.js +570 -0
  475. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFRadioGroup.js +486 -0
  476. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFSignature.js +114 -0
  477. package/dist/esm/node_modules/pdf-lib/es/api/form/PDFTextField.js +810 -0
  478. package/dist/esm/node_modules/pdf-lib/es/api/form/appearances.js +425 -0
  479. package/dist/esm/node_modules/pdf-lib/es/api/image/alignment.js +8 -0
  480. package/dist/esm/node_modules/pdf-lib/es/api/objects.js +80 -0
  481. package/dist/esm/node_modules/pdf-lib/es/api/operations.js +474 -0
  482. package/dist/esm/node_modules/pdf-lib/es/api/operators.js +245 -0
  483. package/dist/esm/node_modules/pdf-lib/es/api/rotations.js +72 -0
  484. package/dist/esm/node_modules/pdf-lib/es/api/sizes.js +4 -0
  485. package/dist/esm/node_modules/pdf-lib/es/api/svgPath.js +379 -0
  486. package/dist/esm/node_modules/pdf-lib/es/api/text/alignment.js +8 -0
  487. package/dist/esm/node_modules/pdf-lib/es/api/text/layout.js +216 -0
  488. package/dist/esm/node_modules/pdf-lib/es/core/PDFContext.js +205 -0
  489. package/dist/esm/node_modules/pdf-lib/es/core/PDFObjectCopier.js +117 -0
  490. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroButton.js +95 -0
  491. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroCheckBox.js +49 -0
  492. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroChoice.js +126 -0
  493. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroComboBox.js +25 -0
  494. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroField.js +152 -0
  495. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroForm.js +76 -0
  496. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroListBox.js +23 -0
  497. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroNonTerminal.js +33 -0
  498. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroPushButton.js +25 -0
  499. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroRadioButton.js +56 -0
  500. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroSignature.js +15 -0
  501. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroTerminal.js +69 -0
  502. package/dist/esm/node_modules/pdf-lib/es/core/acroform/PDFAcroText.js +72 -0
  503. package/dist/esm/node_modules/pdf-lib/es/core/acroform/flags.js +148 -0
  504. package/dist/esm/node_modules/pdf-lib/es/core/acroform/utils.js +125 -0
  505. package/dist/esm/node_modules/pdf-lib/es/core/annotation/AppearanceCharacteristics.js +121 -0
  506. package/dist/esm/node_modules/pdf-lib/es/core/annotation/BorderStyle.js +27 -0
  507. package/dist/esm/node_modules/pdf-lib/es/core/annotation/PDFAnnotation.js +121 -0
  508. package/dist/esm/node_modules/pdf-lib/es/core/annotation/PDFWidgetAnnotation.js +109 -0
  509. package/dist/esm/node_modules/pdf-lib/es/core/annotation/flags.js +83 -0
  510. package/dist/esm/node_modules/pdf-lib/es/core/document/PDFCrossRefSection.js +127 -0
  511. package/dist/esm/node_modules/pdf-lib/es/core/document/PDFHeader.js +45 -0
  512. package/dist/esm/node_modules/pdf-lib/es/core/document/PDFTrailer.js +46 -0
  513. package/dist/esm/node_modules/pdf-lib/es/core/document/PDFTrailerDict.js +30 -0
  514. package/dist/esm/node_modules/pdf-lib/es/core/embedders/CMap.js +46 -0
  515. package/dist/esm/node_modules/pdf-lib/es/core/embedders/CustomFontEmbedder.js +244 -0
  516. package/dist/esm/node_modules/pdf-lib/es/core/embedders/CustomFontSubsetEmbedder.js +73 -0
  517. package/dist/esm/node_modules/pdf-lib/es/core/embedders/FileEmbedder.js +72 -0
  518. package/dist/esm/node_modules/pdf-lib/es/core/embedders/FontFlags.js +36 -0
  519. package/dist/esm/node_modules/pdf-lib/es/core/embedders/JavaScriptEmbedder.js +34 -0
  520. package/dist/esm/node_modules/pdf-lib/es/core/embedders/JpegEmbedder.js +105 -0
  521. package/dist/esm/node_modules/pdf-lib/es/core/embedders/PDFPageEmbedder.js +94 -0
  522. package/dist/esm/node_modules/pdf-lib/es/core/embedders/PngEmbedder.js +67 -0
  523. package/dist/esm/node_modules/pdf-lib/es/core/embedders/StandardFontEmbedder.js +102 -0
  524. package/dist/esm/node_modules/pdf-lib/es/core/errors.js +299 -0
  525. package/dist/esm/node_modules/pdf-lib/es/core/interactive/ViewerPreferences.js +513 -0
  526. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFArray.js +116 -0
  527. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFBool.js +51 -0
  528. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFDict.js +137 -0
  529. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFHexString.js +78 -0
  530. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFInvalidObject.js +31 -0
  531. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFName.js +142 -0
  532. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFNull.js +33 -0
  533. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFNumber.js +43 -0
  534. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFObject.js +21 -0
  535. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFRawStream.js +38 -0
  536. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFRef.js +51 -0
  537. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFStream.js +74 -0
  538. package/dist/esm/node_modules/pdf-lib/es/core/objects/PDFString.js +120 -0
  539. package/dist/esm/node_modules/pdf-lib/es/core/operators/PDFOperator.js +61 -0
  540. package/dist/esm/node_modules/pdf-lib/es/core/operators/PDFOperatorNames.js +87 -0
  541. package/dist/esm/node_modules/pdf-lib/es/core/parser/BaseParser.js +113 -0
  542. package/dist/esm/node_modules/pdf-lib/es/core/parser/ByteStream.js +62 -0
  543. package/dist/esm/node_modules/pdf-lib/es/core/parser/PDFObjectParser.js +237 -0
  544. package/dist/esm/node_modules/pdf-lib/es/core/parser/PDFObjectStreamParser.js +74 -0
  545. package/dist/esm/node_modules/pdf-lib/es/core/parser/PDFParser.js +360 -0
  546. package/dist/esm/node_modules/pdf-lib/es/core/parser/PDFXRefStreamParser.js +90 -0
  547. package/dist/esm/node_modules/pdf-lib/es/core/streams/Ascii85Stream.js +86 -0
  548. package/dist/esm/node_modules/pdf-lib/es/core/streams/AsciiHexStream.js +74 -0
  549. package/dist/esm/node_modules/pdf-lib/es/core/streams/DecodeStream.js +147 -0
  550. package/dist/esm/node_modules/pdf-lib/es/core/streams/FlateStream.js +362 -0
  551. package/dist/esm/node_modules/pdf-lib/es/core/streams/LZWStream.js +136 -0
  552. package/dist/esm/node_modules/pdf-lib/es/core/streams/RunLengthStream.js +54 -0
  553. package/dist/esm/node_modules/pdf-lib/es/core/streams/Stream.js +104 -0
  554. package/dist/esm/node_modules/pdf-lib/es/core/streams/decode.js +57 -0
  555. package/dist/esm/node_modules/pdf-lib/es/core/structures/PDFCatalog.js +94 -0
  556. package/dist/esm/node_modules/pdf-lib/es/core/structures/PDFContentStream.js +59 -0
  557. package/dist/esm/node_modules/pdf-lib/es/core/structures/PDFCrossRefStream.js +191 -0
  558. package/dist/esm/node_modules/pdf-lib/es/core/structures/PDFFlateStream.js +38 -0
  559. package/dist/esm/node_modules/pdf-lib/es/core/structures/PDFObjectStream.js +82 -0
  560. package/dist/esm/node_modules/pdf-lib/es/core/structures/PDFPageLeaf.js +205 -0
  561. package/dist/esm/node_modules/pdf-lib/es/core/structures/PDFPageTree.js +176 -0
  562. package/dist/esm/node_modules/pdf-lib/es/core/syntax/CharCodes.js +64 -0
  563. package/dist/esm/node_modules/pdf-lib/es/core/syntax/Delimiters.js +15 -0
  564. package/dist/esm/node_modules/pdf-lib/es/core/syntax/Irregular.js +11 -0
  565. package/dist/esm/node_modules/pdf-lib/es/core/syntax/Keywords.js +83 -0
  566. package/dist/esm/node_modules/pdf-lib/es/core/syntax/Numeric.js +23 -0
  567. package/dist/esm/node_modules/pdf-lib/es/core/syntax/Whitespace.js +11 -0
  568. package/dist/esm/node_modules/pdf-lib/es/core/writers/PDFStreamWriter.js +118 -0
  569. package/dist/esm/node_modules/pdf-lib/es/core/writers/PDFWriter.js +149 -0
  570. package/dist/esm/node_modules/pdf-lib/es/utils/Cache.js +21 -0
  571. package/dist/esm/node_modules/pdf-lib/es/utils/arrays.js +131 -0
  572. package/dist/esm/node_modules/pdf-lib/es/utils/async.js +11 -0
  573. package/dist/esm/node_modules/pdf-lib/es/utils/base64.js +85 -0
  574. package/dist/esm/node_modules/pdf-lib/es/utils/errors.js +5 -0
  575. package/dist/esm/node_modules/pdf-lib/es/utils/numbers.js +55 -0
  576. package/dist/esm/node_modules/pdf-lib/es/utils/objects.js +11 -0
  577. package/dist/esm/node_modules/pdf-lib/es/utils/pdfDocEncoding.js +68 -0
  578. package/dist/esm/node_modules/pdf-lib/es/utils/png.js +60 -0
  579. package/dist/esm/node_modules/pdf-lib/es/utils/rng.js +20 -0
  580. package/dist/esm/node_modules/pdf-lib/es/utils/strings.js +134 -0
  581. package/dist/esm/node_modules/pdf-lib/es/utils/unicode.js +239 -0
  582. package/dist/esm/node_modules/pdf-lib/es/utils/validators.js +182 -0
  583. package/dist/esm/node_modules/pdfjs-dist/build/pdf.js +25542 -0
  584. package/dist/esm/node_modules/prop-types/index.js +1 -1
  585. package/dist/esm/node_modules/prop-types/node_modules/react-is/index.js +1 -1
  586. package/dist/esm/node_modules/react-pdf/dist/Document.js +308 -0
  587. package/dist/esm/node_modules/react-pdf/dist/DocumentContext.js +6 -0
  588. package/dist/esm/node_modules/react-pdf/dist/LinkService.js +151 -0
  589. package/dist/esm/node_modules/react-pdf/dist/Message.js +7 -0
  590. package/dist/esm/node_modules/react-pdf/dist/Page/AnnotationLayer.css.js +6 -0
  591. package/dist/esm/node_modules/react-pdf/dist/Page/AnnotationLayer.js +148 -0
  592. package/dist/esm/node_modules/react-pdf/dist/Page/Canvas.js +100 -0
  593. package/dist/esm/node_modules/react-pdf/dist/Page/TextLayer.css.js +6 -0
  594. package/dist/esm/node_modules/react-pdf/dist/Page/TextLayer.js +179 -0
  595. package/dist/esm/node_modules/react-pdf/dist/Page.js +252 -0
  596. package/dist/esm/node_modules/react-pdf/dist/PageContext.js +6 -0
  597. package/dist/esm/node_modules/react-pdf/dist/PasswordResponses.js +7 -0
  598. package/dist/esm/node_modules/react-pdf/dist/StructTree.js +77 -0
  599. package/dist/esm/node_modules/react-pdf/dist/StructTreeItem.js +23 -0
  600. package/dist/esm/node_modules/react-pdf/dist/index.js +7 -0
  601. package/dist/esm/node_modules/react-pdf/dist/shared/constants.js +59 -0
  602. package/dist/esm/node_modules/react-pdf/dist/shared/hooks/useDocumentContext.js +8 -0
  603. package/dist/esm/node_modules/react-pdf/dist/shared/hooks/usePageContext.js +8 -0
  604. package/dist/esm/node_modules/react-pdf/dist/shared/hooks/useResolver.js +19 -0
  605. package/dist/esm/node_modules/react-pdf/dist/shared/structTreeUtils.js +68 -0
  606. package/dist/esm/node_modules/react-pdf/dist/shared/utils.js +146 -0
  607. package/dist/esm/node_modules/tiny-invariant/dist/esm/tiny-invariant.js +15 -0
  608. package/dist/esm/node_modules/tslib/tslib.es6.js +52 -1
  609. package/dist/esm/node_modules/warning/warning.js +71 -0
  610. package/dist/esm/utils/file.js +66 -0
  611. package/dist/styles.css +21 -0
  612. package/dist/types/index.d.ts +176 -12
  613. package/package.json +5 -1
@@ -0,0 +1,810 @@
1
+ import { __extends } from '../../../../tslib/tslib.es6.js';
2
+ import PDFPage from '../PDFPage.js';
3
+ import PDFFont from '../PDFFont.js';
4
+ import PDFField, { assertFieldAppearanceOptions } from './PDFField.js';
5
+ import { normalizeAppearance, defaultTextFieldAppearanceProvider } from './appearances.js';
6
+ import { rgb } from '../colors.js';
7
+ import { degrees } from '../rotations.js';
8
+ import { RichTextFieldReadError, ExceededMaxLengthError, InvalidMaxLengthError } from '../errors.js';
9
+ import { ImageAlignment } from '../image/alignment.js';
10
+ import { TextAlignment } from '../text/alignment.js';
11
+ import '../../core/errors.js';
12
+ import '../../core/syntax/CharCodes.js';
13
+ import '../../core/PDFContext.js';
14
+ import '../../core/PDFObjectCopier.js';
15
+ import '../../core/writers/PDFWriter.js';
16
+ import '../../core/writers/PDFStreamWriter.js';
17
+ import '../../core/document/PDFHeader.js';
18
+ import '../../core/document/PDFTrailer.js';
19
+ import '../../core/document/PDFTrailerDict.js';
20
+ import '../../core/document/PDFCrossRefSection.js';
21
+ import '../../core/embedders/StandardFontEmbedder.js';
22
+ import '../../core/embedders/CustomFontEmbedder.js';
23
+ import '../../core/embedders/CustomFontSubsetEmbedder.js';
24
+ import '../../core/embedders/FileEmbedder.js';
25
+ import '../../core/embedders/JpegEmbedder.js';
26
+ import '../../core/embedders/PngEmbedder.js';
27
+ import '../../core/embedders/PDFPageEmbedder.js';
28
+ import '../../core/interactive/ViewerPreferences.js';
29
+ import '../../core/objects/PDFObject.js';
30
+ import '../../core/objects/PDFBool.js';
31
+ import '../../core/objects/PDFNumber.js';
32
+ import '../../core/objects/PDFString.js';
33
+ import PDFHexString from '../../core/objects/PDFHexString.js';
34
+ import '../../core/objects/PDFName.js';
35
+ import '../../core/objects/PDFNull.js';
36
+ import '../../core/objects/PDFArray.js';
37
+ import '../../core/objects/PDFDict.js';
38
+ import '../../core/objects/PDFRef.js';
39
+ import '../../core/objects/PDFInvalidObject.js';
40
+ import PDFStream from '../../core/objects/PDFStream.js';
41
+ import '../../core/objects/PDFRawStream.js';
42
+ import '../../core/structures/PDFCatalog.js';
43
+ import '../../core/structures/PDFContentStream.js';
44
+ import '../../core/structures/PDFCrossRefStream.js';
45
+ import '../../core/structures/PDFObjectStream.js';
46
+ import '../../core/structures/PDFPageTree.js';
47
+ import '../../core/structures/PDFPageLeaf.js';
48
+ import '../../core/structures/PDFFlateStream.js';
49
+ import '../../core/operators/PDFOperator.js';
50
+ import '../../core/operators/PDFOperatorNames.js';
51
+ import '../../core/parser/PDFObjectParser.js';
52
+ import '../../core/parser/PDFObjectStreamParser.js';
53
+ import '../../core/parser/PDFParser.js';
54
+ import '../../core/parser/PDFXRefStreamParser.js';
55
+ import '../../core/streams/Ascii85Stream.js';
56
+ import '../../core/streams/AsciiHexStream.js';
57
+ import '../../core/streams/FlateStream.js';
58
+ import '../../core/streams/LZWStream.js';
59
+ import '../../core/streams/RunLengthStream.js';
60
+ import '../../core/streams/Stream.js';
61
+ import '../../core/annotation/PDFAnnotation.js';
62
+ import '../../core/annotation/PDFWidgetAnnotation.js';
63
+ import '../../core/annotation/AppearanceCharacteristics.js';
64
+ import '../../core/annotation/flags.js';
65
+ import '../../core/acroform/PDFAcroButton.js';
66
+ import '../../core/acroform/PDFAcroCheckBox.js';
67
+ import '../../core/acroform/PDFAcroChoice.js';
68
+ import '../../core/acroform/PDFAcroComboBox.js';
69
+ import '../../core/acroform/PDFAcroField.js';
70
+ import '../../core/acroform/PDFAcroForm.js';
71
+ import '../../core/acroform/PDFAcroListBox.js';
72
+ import '../../core/acroform/PDFAcroNonTerminal.js';
73
+ import '../../core/acroform/PDFAcroPushButton.js';
74
+ import '../../core/acroform/PDFAcroRadioButton.js';
75
+ import '../../core/acroform/PDFAcroSignature.js';
76
+ import '../../core/acroform/PDFAcroTerminal.js';
77
+ import PDFAcroText from '../../core/acroform/PDFAcroText.js';
78
+ import { AcroTextFlags } from '../../core/acroform/flags.js';
79
+ import '../../utils/base64.js';
80
+ import '../../utils/unicode.js';
81
+ import '../../utils/objects.js';
82
+ import { assertIs, assertOrUndefined, assertIsOneOf, assertRangeOrUndefined, assertPositive } from '../../utils/validators.js';
83
+ import '../../utils/pdfDocEncoding.js';
84
+ import '../../utils/Cache.js';
85
+
86
+ /**
87
+ * Represents a text field of a [[PDFForm]].
88
+ *
89
+ * [[PDFTextField]] fields are boxes that display text entered by the user. The
90
+ * purpose of a text field is to enable users to enter text or view text values
91
+ * in the document prefilled by software. Users can click on a text field and
92
+ * input text via their keyboard. Some text fields allow multiple lines of text
93
+ * to be entered (see [[PDFTextField.isMultiline]]).
94
+ */
95
+ var PDFTextField = /** @class */ (function (_super) {
96
+ __extends(PDFTextField, _super);
97
+ function PDFTextField(acroText, ref, doc) {
98
+ var _this = _super.call(this, acroText, ref, doc) || this;
99
+ assertIs(acroText, 'acroText', [[PDFAcroText, 'PDFAcroText']]);
100
+ _this.acroField = acroText;
101
+ return _this;
102
+ }
103
+ /**
104
+ * Get the text that this field contains. This text is visible to users who
105
+ * view this field in a PDF reader.
106
+ *
107
+ * For example:
108
+ * ```js
109
+ * const textField = form.getTextField('some.text.field')
110
+ * const text = textField.getText()
111
+ * console.log('Text field contents:', text)
112
+ * ```
113
+ *
114
+ * Note that if this text field contains no underlying value, `undefined`
115
+ * will be returned. Text fields may also contain an underlying value that
116
+ * is simply an empty string (`''`). This detail is largely irrelevant for
117
+ * most applications. In general, you'll want to treat both cases the same
118
+ * way and simply consider the text field to be empty. In either case, the
119
+ * text field will appear empty to users when viewed in a PDF reader.
120
+ *
121
+ * An error will be thrown if this is a rich text field. `pdf-lib` does not
122
+ * support reading rich text fields. Nor do most PDF readers and writers.
123
+ * Rich text fields are based on XFA (XML Forms Architecture). Relatively few
124
+ * PDFs use rich text fields or XFA. Unlike PDF itself, XFA is not an ISO
125
+ * standard. XFA has been deprecated in PDF 2.0:
126
+ * * https://en.wikipedia.org/wiki/XFA
127
+ * * http://blog.pdfshareforms.com/pdf-2-0-release-bid-farewell-xfa-forms/
128
+ *
129
+ * @returns The text contained in this text field.
130
+ */
131
+ PDFTextField.prototype.getText = function () {
132
+ var value = this.acroField.getValue();
133
+ if (!value && this.isRichFormatted()) {
134
+ throw new RichTextFieldReadError(this.getName());
135
+ }
136
+ return value === null || value === void 0 ? void 0 : value.decodeText();
137
+ };
138
+ /**
139
+ * Set the text for this field. This operation is analogous to a human user
140
+ * clicking on the text field in a PDF reader and typing in text via their
141
+ * keyboard. This method will update the underlying state of the text field
142
+ * to indicate what text has been set. PDF libraries and readers will be able
143
+ * to extract these values from the saved document and determine what text
144
+ * was set.
145
+ *
146
+ * For example:
147
+ * ```js
148
+ * const textField = form.getTextField('best.superhero.text.field')
149
+ * textField.setText('One Punch Man')
150
+ * ```
151
+ *
152
+ * This method will mark this text field as dirty, causing its appearance
153
+ * streams to be updated when either [[PDFDocument.save]] or
154
+ * [[PDFForm.updateFieldAppearances]] is called. The updated streams will
155
+ * display the text this field contains inside the widgets of this text
156
+ * field.
157
+ *
158
+ * **IMPORTANT:** The default font used to update appearance streams is
159
+ * [[StandardFonts.Helvetica]]. Note that this is a WinAnsi font. This means
160
+ * that encoding errors will be thrown if this field contains text outside
161
+ * the WinAnsi character set (the latin alphabet).
162
+ *
163
+ * Embedding a custom font and passing it to
164
+ * [[PDFForm.updateFieldAppearances]] or [[PDFTextField.updateAppearances]]
165
+ * allows you to generate appearance streams with characters outside the
166
+ * latin alphabet (assuming the custom font supports them).
167
+ *
168
+ * If this is a rich text field, it will be converted to a standard text
169
+ * field in order to set the text. `pdf-lib` does not support writing rich
170
+ * text strings. Nor do most PDF readers and writers. See
171
+ * [[PDFTextField.getText]] for more information about rich text fields and
172
+ * their deprecation in PDF 2.0.
173
+ *
174
+ * @param text The text this field should contain.
175
+ */
176
+ PDFTextField.prototype.setText = function (text) {
177
+ assertOrUndefined(text, 'text', ['string']);
178
+ var maxLength = this.getMaxLength();
179
+ if (maxLength !== undefined && text && text.length > maxLength) {
180
+ throw new ExceededMaxLengthError(text.length, maxLength, this.getName());
181
+ }
182
+ this.markAsDirty();
183
+ this.disableRichFormatting();
184
+ if (text) {
185
+ this.acroField.setValue(PDFHexString.fromText(text));
186
+ }
187
+ else {
188
+ this.acroField.removeValue();
189
+ }
190
+ };
191
+ /**
192
+ * Get the alignment for this text field. This value represents the
193
+ * justification of the text when it is displayed to the user in PDF readers.
194
+ * There are three possible alignments: left, center, and right. For example:
195
+ * ```js
196
+ * const textField = form.getTextField('some.text.field')
197
+ * const alignment = textField.getAlignment()
198
+ * if (alignment === TextAlignment.Left) console.log('Text is left justified')
199
+ * if (alignment === TextAlignment.Center) console.log('Text is centered')
200
+ * if (alignment === TextAlignment.Right) console.log('Text is right justified')
201
+ * ```
202
+ * @returns The alignment of this text field.
203
+ */
204
+ PDFTextField.prototype.getAlignment = function () {
205
+ var quadding = this.acroField.getQuadding();
206
+ // prettier-ignore
207
+ return (quadding === 0 ? TextAlignment.Left
208
+ : quadding === 1 ? TextAlignment.Center
209
+ : quadding === 2 ? TextAlignment.Right
210
+ : TextAlignment.Left);
211
+ };
212
+ /**
213
+ * Set the alignment for this text field. This will determine the
214
+ * justification of the text when it is displayed to the user in PDF readers.
215
+ * There are three possible alignments: left, center, and right. For example:
216
+ * ```js
217
+ * const textField = form.getTextField('some.text.field')
218
+ *
219
+ * // Text will be left justified when displayed
220
+ * textField.setAlignment(TextAlignment.Left)
221
+ *
222
+ * // Text will be centered when displayed
223
+ * textField.setAlignment(TextAlignment.Center)
224
+ *
225
+ * // Text will be right justified when displayed
226
+ * textField.setAlignment(TextAlignment.Right)
227
+ * ```
228
+ * This method will mark this text field as dirty. See
229
+ * [[PDFTextField.setText]] for more details about what this means.
230
+ * @param alignment The alignment for this text field.
231
+ */
232
+ PDFTextField.prototype.setAlignment = function (alignment) {
233
+ assertIsOneOf(alignment, 'alignment', TextAlignment);
234
+ this.markAsDirty();
235
+ this.acroField.setQuadding(alignment);
236
+ };
237
+ /**
238
+ * Get the maximum length of this field. This value represents the maximum
239
+ * number of characters that can be typed into this field by the user. If
240
+ * this field does not have a maximum length, `undefined` is returned.
241
+ * For example:
242
+ * ```js
243
+ * const textField = form.getTextField('some.text.field')
244
+ * const maxLength = textField.getMaxLength()
245
+ * if (maxLength === undefined) console.log('No max length')
246
+ * else console.log(`Max length is ${maxLength}`)
247
+ * ```
248
+ * @returns The maximum number of characters allowed in this field, or
249
+ * `undefined` if no limit exists.
250
+ */
251
+ PDFTextField.prototype.getMaxLength = function () {
252
+ return this.acroField.getMaxLength();
253
+ };
254
+ /**
255
+ * Set the maximum length of this field. This limits the number of characters
256
+ * that can be typed into this field by the user. This also limits the length
257
+ * of the string that can be passed to [[PDFTextField.setText]]. This limit
258
+ * can be removed by passing `undefined` as `maxLength`. For example:
259
+ * ```js
260
+ * const textField = form.getTextField('some.text.field')
261
+ *
262
+ * // Allow between 0 and 5 characters to be entered
263
+ * textField.setMaxLength(5)
264
+ *
265
+ * // Allow any number of characters to be entered
266
+ * textField.setMaxLength(undefined)
267
+ * ```
268
+ * This method will mark this text field as dirty. See
269
+ * [[PDFTextField.setText]] for more details about what this means.
270
+ * @param maxLength The maximum number of characters allowed in this field, or
271
+ * `undefined` to remove the limit.
272
+ */
273
+ PDFTextField.prototype.setMaxLength = function (maxLength) {
274
+ assertRangeOrUndefined(maxLength, 'maxLength', 0, Number.MAX_SAFE_INTEGER);
275
+ this.markAsDirty();
276
+ if (maxLength === undefined) {
277
+ this.acroField.removeMaxLength();
278
+ }
279
+ else {
280
+ var text = this.getText();
281
+ if (text && text.length > maxLength) {
282
+ throw new InvalidMaxLengthError(text.length, maxLength, this.getName());
283
+ }
284
+ this.acroField.setMaxLength(maxLength);
285
+ }
286
+ };
287
+ /**
288
+ * Remove the maximum length for this text field. This allows any number of
289
+ * characters to be typed into this field by the user. For example:
290
+ * ```js
291
+ * const textField = form.getTextField('some.text.field')
292
+ * textField.removeMaxLength()
293
+ * ```
294
+ * Calling this method is equivalent to passing `undefined` to
295
+ * [[PDFTextField.setMaxLength]].
296
+ */
297
+ PDFTextField.prototype.removeMaxLength = function () {
298
+ this.markAsDirty();
299
+ this.acroField.removeMaxLength();
300
+ };
301
+ /**
302
+ * Display an image inside the bounds of this text field's widgets. For example:
303
+ * ```js
304
+ * const pngImage = await pdfDoc.embedPng(...)
305
+ * const textField = form.getTextField('some.text.field')
306
+ * textField.setImage(pngImage)
307
+ * ```
308
+ * This will update the appearances streams for each of this text field's widgets.
309
+ * @param image The image that should be displayed.
310
+ */
311
+ PDFTextField.prototype.setImage = function (image) {
312
+ var fieldAlignment = this.getAlignment();
313
+ // prettier-ignore
314
+ var alignment = fieldAlignment === TextAlignment.Center ? ImageAlignment.Center
315
+ : fieldAlignment === TextAlignment.Right ? ImageAlignment.Right
316
+ : ImageAlignment.Left;
317
+ var widgets = this.acroField.getWidgets();
318
+ for (var idx = 0, len = widgets.length; idx < len; idx++) {
319
+ var widget = widgets[idx];
320
+ var streamRef = this.createImageAppearanceStream(widget, image, alignment);
321
+ this.updateWidgetAppearances(widget, { normal: streamRef });
322
+ }
323
+ this.markAsClean();
324
+ };
325
+ /**
326
+ * Set the font size for this field. Larger font sizes will result in larger
327
+ * text being displayed when PDF readers render this text field. Font sizes
328
+ * may be integer or floating point numbers. Supplying a negative font size
329
+ * will cause this method to throw an error.
330
+ *
331
+ * For example:
332
+ * ```js
333
+ * const textField = form.getTextField('some.text.field')
334
+ * textField.setFontSize(4)
335
+ * textField.setFontSize(15.7)
336
+ * ```
337
+ *
338
+ * > This method depends upon the existence of a default appearance
339
+ * > (`/DA`) string. If this field does not have a default appearance string,
340
+ * > or that string does not contain a font size (via the `Tf` operator),
341
+ * > then this method will throw an error.
342
+ *
343
+ * @param fontSize The font size to be used when rendering text in this field.
344
+ */
345
+ PDFTextField.prototype.setFontSize = function (fontSize) {
346
+ assertPositive(fontSize, 'fontSize');
347
+ this.acroField.setFontSize(fontSize);
348
+ this.markAsDirty();
349
+ };
350
+ /**
351
+ * Returns `true` if each line of text is shown on a new line when this
352
+ * field is displayed in a PDF reader. The alternative is that all lines of
353
+ * text are merged onto a single line when displayed. See
354
+ * [[PDFTextField.enableMultiline]] and [[PDFTextField.disableMultiline]].
355
+ * For example:
356
+ * ```js
357
+ * const textField = form.getTextField('some.text.field')
358
+ * if (textField.isMultiline()) console.log('Multiline is enabled')
359
+ * ```
360
+ * @returns Whether or not this is a multiline text field.
361
+ */
362
+ PDFTextField.prototype.isMultiline = function () {
363
+ return this.acroField.hasFlag(AcroTextFlags.Multiline);
364
+ };
365
+ /**
366
+ * Display each line of text on a new line when this field is displayed in a
367
+ * PDF reader. For example:
368
+ * ```js
369
+ * const textField = form.getTextField('some.text.field')
370
+ * textField.enableMultiline()
371
+ * ```
372
+ * This method will mark this text field as dirty. See
373
+ * [[PDFTextField.setText]] for more details about what this means.
374
+ */
375
+ PDFTextField.prototype.enableMultiline = function () {
376
+ this.markAsDirty();
377
+ this.acroField.setFlagTo(AcroTextFlags.Multiline, true);
378
+ };
379
+ /**
380
+ * Display each line of text on the same line when this field is displayed
381
+ * in a PDF reader. For example:
382
+ * ```js
383
+ * const textField = form.getTextField('some.text.field')
384
+ * textField.disableMultiline()
385
+ * ```
386
+ * This method will mark this text field as dirty. See
387
+ * [[PDFTextField.setText]] for more details about what this means.
388
+ */
389
+ PDFTextField.prototype.disableMultiline = function () {
390
+ this.markAsDirty();
391
+ this.acroField.setFlagTo(AcroTextFlags.Multiline, false);
392
+ };
393
+ /**
394
+ * Returns `true` if this is a password text field. This means that the field
395
+ * is intended for storing a secure password. See
396
+ * [[PDFTextField.enablePassword]] and [[PDFTextField.disablePassword]].
397
+ * For example:
398
+ * ```js
399
+ * const textField = form.getTextField('some.text.field')
400
+ * if (textField.isPassword()) console.log('Password is enabled')
401
+ * ```
402
+ * @returns Whether or not this is a password text field.
403
+ */
404
+ PDFTextField.prototype.isPassword = function () {
405
+ return this.acroField.hasFlag(AcroTextFlags.Password);
406
+ };
407
+ /**
408
+ * Indicate that this text field is intended for storing a secure password.
409
+ * For example:
410
+ * ```js
411
+ * const textField = form.getTextField('some.text.field')
412
+ * textField.enablePassword()
413
+ * ```
414
+ * Values entered into password text fields should not be displayed on the
415
+ * screen by PDF readers. Most PDF readers will display the value as
416
+ * asterisks or bullets. PDF readers should never store values entered by the
417
+ * user into password text fields. Similarly, applications should not
418
+ * write data to a password text field.
419
+ *
420
+ * **Please note that this method does not cause entered values to be
421
+ * encrypted or secured in any way! It simply sets a flag that PDF software
422
+ * and readers can access to determine the _purpose_ of this field.**
423
+ */
424
+ PDFTextField.prototype.enablePassword = function () {
425
+ this.acroField.setFlagTo(AcroTextFlags.Password, true);
426
+ };
427
+ /**
428
+ * Indicate that this text field is **not** intended for storing a secure
429
+ * password. For example:
430
+ * ```js
431
+ * const textField = form.getTextField('some.text.field')
432
+ * textField.disablePassword()
433
+ * ```
434
+ */
435
+ PDFTextField.prototype.disablePassword = function () {
436
+ this.acroField.setFlagTo(AcroTextFlags.Password, false);
437
+ };
438
+ /**
439
+ * Returns `true` if the contents of this text field represent a file path.
440
+ * See [[PDFTextField.enableFileSelection]] and
441
+ * [[PDFTextField.disableFileSelection]]. For example:
442
+ * ```js
443
+ * const textField = form.getTextField('some.text.field')
444
+ * if (textField.isFileSelector()) console.log('Is a file selector')
445
+ * ```
446
+ * @returns Whether or not this field should contain file paths.
447
+ */
448
+ PDFTextField.prototype.isFileSelector = function () {
449
+ return this.acroField.hasFlag(AcroTextFlags.FileSelect);
450
+ };
451
+ /**
452
+ * Indicate that this text field is intended to store a file path. The
453
+ * contents of the file stored at that path should be submitted as the value
454
+ * of the field. For example:
455
+ * ```js
456
+ * const textField = form.getTextField('some.text.field')
457
+ * textField.enableFileSelection()
458
+ * ```
459
+ */
460
+ PDFTextField.prototype.enableFileSelection = function () {
461
+ this.acroField.setFlagTo(AcroTextFlags.FileSelect, true);
462
+ };
463
+ /**
464
+ * Indicate that this text field is **not** intended to store a file path.
465
+ * For example:
466
+ * ```js
467
+ * const textField = form.getTextField('some.text.field')
468
+ * textField.disableFileSelection()
469
+ * ```
470
+ */
471
+ PDFTextField.prototype.disableFileSelection = function () {
472
+ this.acroField.setFlagTo(AcroTextFlags.FileSelect, false);
473
+ };
474
+ /**
475
+ * Returns `true` if the text entered in this field should be spell checked
476
+ * by PDF readers. See [[PDFTextField.enableSpellChecking]] and
477
+ * [[PDFTextField.disableSpellChecking]]. For example:
478
+ * ```js
479
+ * const textField = form.getTextField('some.text.field')
480
+ * if (textField.isSpellChecked()) console.log('Spell checking is enabled')
481
+ * ```
482
+ * @returns Whether or not this field should be spell checked.
483
+ */
484
+ PDFTextField.prototype.isSpellChecked = function () {
485
+ return !this.acroField.hasFlag(AcroTextFlags.DoNotSpellCheck);
486
+ };
487
+ /**
488
+ * Allow PDF readers to spell check the text entered in this field.
489
+ * For example:
490
+ * ```js
491
+ * const textField = form.getTextField('some.text.field')
492
+ * textField.enableSpellChecking()
493
+ * ```
494
+ */
495
+ PDFTextField.prototype.enableSpellChecking = function () {
496
+ this.acroField.setFlagTo(AcroTextFlags.DoNotSpellCheck, false);
497
+ };
498
+ /**
499
+ * Do not allow PDF readers to spell check the text entered in this field.
500
+ * For example:
501
+ * ```js
502
+ * const textField = form.getTextField('some.text.field')
503
+ * textField.disableSpellChecking()
504
+ * ```
505
+ */
506
+ PDFTextField.prototype.disableSpellChecking = function () {
507
+ this.acroField.setFlagTo(AcroTextFlags.DoNotSpellCheck, true);
508
+ };
509
+ /**
510
+ * Returns `true` if PDF readers should allow the user to scroll the text
511
+ * field when its contents do not fit within the field's view bounds. See
512
+ * [[PDFTextField.enableScrolling]] and [[PDFTextField.disableScrolling]].
513
+ * For example:
514
+ * ```js
515
+ * const textField = form.getTextField('some.text.field')
516
+ * if (textField.isScrollable()) console.log('Scrolling is enabled')
517
+ * ```
518
+ * @returns Whether or not the field is scrollable in PDF readers.
519
+ */
520
+ PDFTextField.prototype.isScrollable = function () {
521
+ return !this.acroField.hasFlag(AcroTextFlags.DoNotScroll);
522
+ };
523
+ /**
524
+ * Allow PDF readers to present a scroll bar to the user when the contents
525
+ * of this text field do not fit within its view bounds. For example:
526
+ * ```js
527
+ * const textField = form.getTextField('some.text.field')
528
+ * textField.enableScrolling()
529
+ * ```
530
+ * A horizontal scroll bar should be shown for singleline fields. A vertical
531
+ * scroll bar should be shown for multiline fields.
532
+ */
533
+ PDFTextField.prototype.enableScrolling = function () {
534
+ this.acroField.setFlagTo(AcroTextFlags.DoNotScroll, false);
535
+ };
536
+ /**
537
+ * Do not allow PDF readers to present a scroll bar to the user when the
538
+ * contents of this text field do not fit within its view bounds. For example:
539
+ * ```js
540
+ * const textField = form.getTextField('some.text.field')
541
+ * textField.disableScrolling()
542
+ * ```
543
+ */
544
+ PDFTextField.prototype.disableScrolling = function () {
545
+ this.acroField.setFlagTo(AcroTextFlags.DoNotScroll, true);
546
+ };
547
+ /**
548
+ * Returns `true` if this is a combed text field. This means that the field
549
+ * is split into `n` equal size cells with one character in each (where `n`
550
+ * is equal to the max length of the text field). The result is that all
551
+ * characters in this field are displayed an equal distance apart from one
552
+ * another. See [[PDFTextField.enableCombing]] and
553
+ * [[PDFTextField.disableCombing]]. For example:
554
+ * ```js
555
+ * const textField = form.getTextField('some.text.field')
556
+ * if (textField.isCombed()) console.log('Combing is enabled')
557
+ * ```
558
+ * Note that in order for a text field to be combed, the following must be
559
+ * true (in addition to enabling combing):
560
+ * * It must not be a multiline field (see [[PDFTextField.isMultiline]])
561
+ * * It must not be a password field (see [[PDFTextField.isPassword]])
562
+ * * It must not be a file selector field (see [[PDFTextField.isFileSelector]])
563
+ * * It must have a max length defined (see [[PDFTextField.setMaxLength]])
564
+ * @returns Whether or not this field is combed.
565
+ */
566
+ PDFTextField.prototype.isCombed = function () {
567
+ return (this.acroField.hasFlag(AcroTextFlags.Comb) &&
568
+ !this.isMultiline() &&
569
+ !this.isPassword() &&
570
+ !this.isFileSelector() &&
571
+ this.getMaxLength() !== undefined);
572
+ };
573
+ /**
574
+ * Split this field into `n` equal size cells with one character in each
575
+ * (where `n` is equal to the max length of the text field). This will cause
576
+ * all characters in the field to be displayed an equal distance apart from
577
+ * one another. For example:
578
+ * ```js
579
+ * const textField = form.getTextField('some.text.field')
580
+ * textField.enableCombing()
581
+ * ```
582
+ *
583
+ * In addition to calling this method, text fields must have a max length
584
+ * defined in order to be combed (see [[PDFTextField.setMaxLength]]).
585
+ *
586
+ * This method will also call the following three methods internally:
587
+ * * [[PDFTextField.disableMultiline]]
588
+ * * [[PDFTextField.disablePassword]]
589
+ * * [[PDFTextField.disableFileSelection]]
590
+ *
591
+ * This method will mark this text field as dirty. See
592
+ * [[PDFTextField.setText]] for more details about what this means.
593
+ */
594
+ PDFTextField.prototype.enableCombing = function () {
595
+ if (this.getMaxLength() === undefined) {
596
+ var msg = "PDFTextFields must have a max length in order to be combed";
597
+ console.warn(msg);
598
+ }
599
+ this.markAsDirty();
600
+ this.disableMultiline();
601
+ this.disablePassword();
602
+ this.disableFileSelection();
603
+ this.acroField.setFlagTo(AcroTextFlags.Comb, true);
604
+ };
605
+ /**
606
+ * Turn off combing for this text field. For example:
607
+ * ```js
608
+ * const textField = form.getTextField('some.text.field')
609
+ * textField.disableCombing()
610
+ * ```
611
+ * See [[PDFTextField.isCombed]] and [[PDFTextField.enableCombing]] for more
612
+ * information about what combing is.
613
+ *
614
+ * This method will mark this text field as dirty. See
615
+ * [[PDFTextField.setText]] for more details about what this means.
616
+ */
617
+ PDFTextField.prototype.disableCombing = function () {
618
+ this.markAsDirty();
619
+ this.acroField.setFlagTo(AcroTextFlags.Comb, false);
620
+ };
621
+ /**
622
+ * Returns `true` if this text field contains rich text. See
623
+ * [[PDFTextField.enableRichFormatting]] and
624
+ * [[PDFTextField.disableRichFormatting]]. For example:
625
+ * ```js
626
+ * const textField = form.getTextField('some.text.field')
627
+ * if (textField.isRichFormatted()) console.log('Rich formatting enabled')
628
+ * ```
629
+ * @returns Whether or not this field contains rich text.
630
+ */
631
+ PDFTextField.prototype.isRichFormatted = function () {
632
+ return this.acroField.hasFlag(AcroTextFlags.RichText);
633
+ };
634
+ /**
635
+ * Indicate that this field contains XFA data - or rich text. For example:
636
+ * ```js
637
+ * const textField = form.getTextField('some.text.field')
638
+ * textField.enableRichFormatting()
639
+ * ```
640
+ * Note that `pdf-lib` does not support reading or writing rich text fields.
641
+ * Nor do most PDF readers and writers. Rich text fields are based on XFA
642
+ * (XML Forms Architecture). Relatively few PDFs use rich text fields or XFA.
643
+ * Unlike PDF itself, XFA is not an ISO standard. XFA has been deprecated in
644
+ * PDF 2.0:
645
+ * * https://en.wikipedia.org/wiki/XFA
646
+ * * http://blog.pdfshareforms.com/pdf-2-0-release-bid-farewell-xfa-forms/
647
+ */
648
+ PDFTextField.prototype.enableRichFormatting = function () {
649
+ this.acroField.setFlagTo(AcroTextFlags.RichText, true);
650
+ };
651
+ /**
652
+ * Indicate that this is a standard text field that does not XFA data (rich
653
+ * text). For example:
654
+ * ```js
655
+ * const textField = form.getTextField('some.text.field')
656
+ * textField.disableRichFormatting()
657
+ * ```
658
+ */
659
+ PDFTextField.prototype.disableRichFormatting = function () {
660
+ this.acroField.setFlagTo(AcroTextFlags.RichText, false);
661
+ };
662
+ /**
663
+ * Show this text field on the specified page. For example:
664
+ * ```js
665
+ * const ubuntuFont = await pdfDoc.embedFont(ubuntuFontBytes)
666
+ * const page = pdfDoc.addPage()
667
+ *
668
+ * const form = pdfDoc.getForm()
669
+ * const textField = form.createTextField('best.gundam')
670
+ * textField.setText('Exia')
671
+ *
672
+ * textField.addToPage(page, {
673
+ * x: 50,
674
+ * y: 75,
675
+ * width: 200,
676
+ * height: 100,
677
+ * textColor: rgb(1, 0, 0),
678
+ * backgroundColor: rgb(0, 1, 0),
679
+ * borderColor: rgb(0, 0, 1),
680
+ * borderWidth: 2,
681
+ * rotate: degrees(90),
682
+ * font: ubuntuFont,
683
+ * })
684
+ * ```
685
+ * This will create a new widget for this text field.
686
+ * @param page The page to which this text field widget should be added.
687
+ * @param options The options to be used when adding this text field widget.
688
+ */
689
+ PDFTextField.prototype.addToPage = function (page, options) {
690
+ var _a, _b, _c, _d, _e, _f, _g;
691
+ assertIs(page, 'page', [[PDFPage, 'PDFPage']]);
692
+ assertFieldAppearanceOptions(options);
693
+ if (!options)
694
+ options = {};
695
+ if (!('textColor' in options))
696
+ options.textColor = rgb(0, 0, 0);
697
+ if (!('backgroundColor' in options))
698
+ options.backgroundColor = rgb(1, 1, 1);
699
+ if (!('borderColor' in options))
700
+ options.borderColor = rgb(0, 0, 0);
701
+ if (!('borderWidth' in options))
702
+ options.borderWidth = 1;
703
+ // Create a widget for this text field
704
+ var widget = this.createWidget({
705
+ x: (_a = options.x) !== null && _a !== void 0 ? _a : 0,
706
+ y: (_b = options.y) !== null && _b !== void 0 ? _b : 0,
707
+ width: (_c = options.width) !== null && _c !== void 0 ? _c : 200,
708
+ height: (_d = options.height) !== null && _d !== void 0 ? _d : 50,
709
+ textColor: options.textColor,
710
+ backgroundColor: options.backgroundColor,
711
+ borderColor: options.borderColor,
712
+ borderWidth: (_e = options.borderWidth) !== null && _e !== void 0 ? _e : 0,
713
+ rotate: (_f = options.rotate) !== null && _f !== void 0 ? _f : degrees(0),
714
+ hidden: options.hidden,
715
+ page: page.ref,
716
+ });
717
+ var widgetRef = this.doc.context.register(widget.dict);
718
+ // Add widget to this field
719
+ this.acroField.addWidget(widgetRef);
720
+ // Set appearance streams for widget
721
+ var font = (_g = options.font) !== null && _g !== void 0 ? _g : this.doc.getForm().getDefaultFont();
722
+ this.updateWidgetAppearance(widget, font);
723
+ // Add widget to the given page
724
+ page.node.addAnnot(widgetRef);
725
+ };
726
+ /**
727
+ * Returns `true` if this text field has been marked as dirty, or if any of
728
+ * this text field's widgets do not have an appearance stream. For example:
729
+ * ```js
730
+ * const textField = form.getTextField('some.text.field')
731
+ * if (textField.needsAppearancesUpdate()) console.log('Needs update')
732
+ * ```
733
+ * @returns Whether or not this text field needs an appearance update.
734
+ */
735
+ PDFTextField.prototype.needsAppearancesUpdate = function () {
736
+ var _a;
737
+ if (this.isDirty())
738
+ return true;
739
+ var widgets = this.acroField.getWidgets();
740
+ for (var idx = 0, len = widgets.length; idx < len; idx++) {
741
+ var widget = widgets[idx];
742
+ var hasAppearances = ((_a = widget.getAppearances()) === null || _a === void 0 ? void 0 : _a.normal) instanceof PDFStream;
743
+ if (!hasAppearances)
744
+ return true;
745
+ }
746
+ return false;
747
+ };
748
+ /**
749
+ * Update the appearance streams for each of this text field's widgets using
750
+ * the default appearance provider for text fields. For example:
751
+ * ```js
752
+ * const helvetica = await pdfDoc.embedFont(StandardFonts.Helvetica)
753
+ * const textField = form.getTextField('some.text.field')
754
+ * textField.defaultUpdateAppearances(helvetica)
755
+ * ```
756
+ * @param font The font to be used for creating the appearance streams.
757
+ */
758
+ PDFTextField.prototype.defaultUpdateAppearances = function (font) {
759
+ assertIs(font, 'font', [[PDFFont, 'PDFFont']]);
760
+ this.updateAppearances(font);
761
+ };
762
+ /**
763
+ * Update the appearance streams for each of this text field's widgets using
764
+ * the given appearance provider. If no `provider` is passed, the default
765
+ * appearance provider for text fields will be used. For example:
766
+ * ```js
767
+ * const helvetica = await pdfDoc.embedFont(StandardFonts.Helvetica)
768
+ * const textField = form.getTextField('some.text.field')
769
+ * textField.updateAppearances(helvetica, (field, widget, font) => {
770
+ * ...
771
+ * return drawTextField(...)
772
+ * })
773
+ * ```
774
+ * @param font The font to be used for creating the appearance streams.
775
+ * @param provider Optionally, the appearance provider to be used for
776
+ * generating the contents of the appearance streams.
777
+ */
778
+ PDFTextField.prototype.updateAppearances = function (font, provider) {
779
+ assertIs(font, 'font', [[PDFFont, 'PDFFont']]);
780
+ assertOrUndefined(provider, 'provider', [Function]);
781
+ var widgets = this.acroField.getWidgets();
782
+ for (var idx = 0, len = widgets.length; idx < len; idx++) {
783
+ var widget = widgets[idx];
784
+ this.updateWidgetAppearance(widget, font, provider);
785
+ }
786
+ this.markAsClean();
787
+ };
788
+ PDFTextField.prototype.updateWidgetAppearance = function (widget, font, provider) {
789
+ var apProvider = provider !== null && provider !== void 0 ? provider : defaultTextFieldAppearanceProvider;
790
+ var appearances = normalizeAppearance(apProvider(this, widget, font));
791
+ this.updateWidgetAppearanceWithFont(widget, font, appearances);
792
+ };
793
+ /**
794
+ * > **NOTE:** You probably don't want to call this method directly. Instead,
795
+ * > consider using the [[PDFForm.getTextField]] method, which will create an
796
+ * > instance of [[PDFTextField]] for you.
797
+ *
798
+ * Create an instance of [[PDFTextField]] from an existing acroText and ref
799
+ *
800
+ * @param acroText The underlying `PDFAcroText` for this text field.
801
+ * @param ref The unique reference for this text field.
802
+ * @param doc The document to which this text field will belong.
803
+ */
804
+ PDFTextField.of = function (acroText, ref, doc) {
805
+ return new PDFTextField(acroText, ref, doc);
806
+ };
807
+ return PDFTextField;
808
+ }(PDFField));
809
+
810
+ export { PDFTextField as default };