@itfin/components 1.0.9 → 1.0.10

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 (815) hide show
  1. package/package.json +3 -1
  2. package/src/assets/loading.css +49 -0
  3. package/src/components/button/Button.vue +1 -0
  4. package/src/components/icon/Icon.vue +8 -3
  5. package/src/components/icon/components/airplay.vue +1 -0
  6. package/src/components/icon/components/alarm_clock.vue +1 -0
  7. package/src/components/icon/components/align_horizontal.vue +1 -0
  8. package/src/components/icon/components/align_vertical.vue +1 -0
  9. package/src/components/icon/components/angle.vue +1 -0
  10. package/src/components/icon/components/archive.vue +1 -0
  11. package/src/components/icon/components/arrow_bottom_left.vue +1 -0
  12. package/src/components/icon/components/arrow_bottom_right.vue +1 -0
  13. package/src/components/icon/components/arrow_down.vue +1 -0
  14. package/src/components/icon/components/arrow_down_circle.vue +1 -0
  15. package/src/components/icon/components/arrow_left.vue +1 -0
  16. package/src/components/icon/components/arrow_left_circle.vue +1 -0
  17. package/src/components/icon/components/arrow_right.vue +1 -0
  18. package/src/components/icon/components/arrow_right_circle.vue +1 -0
  19. package/src/components/icon/components/arrow_top_left.vue +1 -0
  20. package/src/components/icon/components/arrow_top_right.vue +1 -0
  21. package/src/components/icon/components/arrow_up.vue +1 -0
  22. package/src/components/icon/components/arrow_up_circle.vue +1 -0
  23. package/src/components/icon/components/audio_wave.vue +1 -0
  24. package/src/components/icon/components/backspace.vue +1 -0
  25. package/src/components/icon/components/backward.vue +1 -0
  26. package/src/components/icon/components/bag.vue +1 -0
  27. package/src/components/icon/components/battery_75.vue +1 -0
  28. package/src/components/icon/components/battery_charging.vue +1 -0
  29. package/src/components/icon/components/battery_empty.vue +1 -0
  30. package/src/components/icon/components/battery_full.vue +1 -0
  31. package/src/components/icon/components/battery_half.vue +1 -0
  32. package/src/components/icon/components/battery_low.vue +1 -0
  33. package/src/components/icon/components/bell.vue +1 -0
  34. package/src/components/icon/components/bell_disabled.vue +1 -0
  35. package/src/components/icon/components/bell_ringing.vue +1 -0
  36. package/src/components/icon/components/bell_snooze.vue +1 -0
  37. package/src/components/icon/components/bluetooth.vue +1 -0
  38. package/src/components/icon/components/book.vue +1 -0
  39. package/src/components/icon/components/book_closed.vue +1 -0
  40. package/src/components/icon/components/book_text.vue +1 -0
  41. package/src/components/icon/components/bookmark.vue +1 -0
  42. package/src/components/icon/components/bookmark_book.vue +1 -0
  43. package/src/components/icon/components/box.vue +1 -0
  44. package/src/components/icon/components/box_download.vue +1 -0
  45. package/src/components/icon/components/box_open.vue +1 -0
  46. package/src/components/icon/components/branch.vue +1 -0
  47. package/src/components/icon/components/briefcase.vue +1 -0
  48. package/src/components/icon/components/browser.vue +1 -0
  49. package/src/components/icon/components/browser_alt.vue +1 -0
  50. package/src/components/icon/components/button_add.vue +1 -0
  51. package/src/components/icon/components/button_minus.vue +1 -0
  52. package/src/components/icon/components/calculator.vue +1 -0
  53. package/src/components/icon/components/calendar.vue +1 -0
  54. package/src/components/icon/components/calendar_add.vue +1 -0
  55. package/src/components/icon/components/calendar_date.vue +1 -0
  56. package/src/components/icon/components/calendar_day.vue +1 -0
  57. package/src/components/icon/components/calendar_days.vue +1 -0
  58. package/src/components/icon/components/calendar_last_day.vue +1 -0
  59. package/src/components/icon/components/calendar_month.vue +1 -0
  60. package/src/components/icon/components/calendar_move.vue +1 -0
  61. package/src/components/icon/components/calendar_remove.vue +1 -0
  62. package/src/components/icon/components/calendar_split.vue +1 -0
  63. package/src/components/icon/components/calendar_week.vue +1 -0
  64. package/src/components/icon/components/camera.vue +1 -0
  65. package/src/components/icon/components/camera_alt.vue +1 -0
  66. package/src/components/icon/components/camera_noflash.vue +1 -0
  67. package/src/components/icon/components/camera_noflash_alt.vue +1 -0
  68. package/src/components/icon/components/capture.vue +1 -0
  69. package/src/components/icon/components/card_timeline.vue +1 -0
  70. package/src/components/icon/components/card_view.vue +1 -0
  71. package/src/components/icon/components/carousel.vue +1 -0
  72. package/src/components/icon/components/cart.vue +1 -0
  73. package/src/components/icon/components/cast.vue +1 -0
  74. package/src/components/icon/components/chain.vue +1 -0
  75. package/src/components/icon/components/chat_add.vue +1 -0
  76. package/src/components/icon/components/check.vue +1 -0
  77. package/src/components/icon/components/check_circle.vue +1 -0
  78. package/src/components/icon/components/check_circle_outside.vue +1 -0
  79. package/src/components/icon/components/checkbox_checked.vue +1 -0
  80. package/src/components/icon/components/checkbox_empty.vue +1 -0
  81. package/src/components/icon/components/chevron_close.vue +1 -0
  82. package/src/components/icon/components/chevron_down.vue +1 -0
  83. package/src/components/icon/components/chevron_down_circle.vue +1 -0
  84. package/src/components/icon/components/chevron_down_double.vue +1 -0
  85. package/src/components/icon/components/chevron_left.vue +1 -0
  86. package/src/components/icon/components/chevron_left_circle.vue +1 -0
  87. package/src/components/icon/components/chevron_left_double.vue +1 -0
  88. package/src/components/icon/components/chevron_open.vue +1 -0
  89. package/src/components/icon/components/chevron_right.vue +1 -0
  90. package/src/components/icon/components/chevron_right_circle.vue +1 -0
  91. package/src/components/icon/components/chevron_right_double.vue +1 -0
  92. package/src/components/icon/components/chevron_up.vue +1 -0
  93. package/src/components/icon/components/chevron_up_circle.vue +1 -0
  94. package/src/components/icon/components/chevron_up_double.vue +1 -0
  95. package/src/components/icon/components/circle.vue +1 -0
  96. package/src/components/icon/components/circle_menu.vue +1 -0
  97. package/src/components/icon/components/circle_split.vue +1 -0
  98. package/src/components/icon/components/clipboard.vue +1 -0
  99. package/src/components/icon/components/clipboard_add.vue +1 -0
  100. package/src/components/icon/components/clipboard_check.vue +1 -0
  101. package/src/components/icon/components/clipboard_copy.vue +1 -0
  102. package/src/components/icon/components/clipboard_cross.vue +1 -0
  103. package/src/components/icon/components/clipboard_notes.vue +1 -0
  104. package/src/components/icon/components/clipboard_remove.vue +1 -0
  105. package/src/components/icon/components/clock.vue +1 -0
  106. package/src/components/icon/components/close.vue +1 -0
  107. package/src/components/icon/components/cloud.vue +1 -0
  108. package/src/components/icon/components/cloud_disconnect.vue +1 -0
  109. package/src/components/icon/components/cloud_download.vue +1 -0
  110. package/src/components/icon/components/cloud_download_alt.vue +1 -0
  111. package/src/components/icon/components/cloud_upload.vue +1 -0
  112. package/src/components/icon/components/cloud_upload_alt.vue +1 -0
  113. package/src/components/icon/components/code.vue +1 -0
  114. package/src/components/icon/components/coffee.vue +1 -0
  115. package/src/components/icon/components/coin.vue +1 -0
  116. package/src/components/icon/components/coins.vue +1 -0
  117. package/src/components/icon/components/compass.vue +1 -0
  118. package/src/components/icon/components/component_add.vue +1 -0
  119. package/src/components/icon/components/contacts.vue +1 -0
  120. package/src/components/icon/components/contract.vue +1 -0
  121. package/src/components/icon/components/create.vue +1 -0
  122. package/src/components/icon/components/credit_card.vue +1 -0
  123. package/src/components/icon/components/crop.vue +1 -0
  124. package/src/components/icon/components/cross.vue +1 -0
  125. package/src/components/icon/components/cross_circle.vue +1 -0
  126. package/src/components/icon/components/crosshair.vue +1 -0
  127. package/src/components/icon/components/cube.vue +1 -0
  128. package/src/components/icon/components/cylinder.vue +1 -0
  129. package/src/components/icon/components/database.vue +1 -0
  130. package/src/components/icon/components/diamond.vue +1 -0
  131. package/src/components/icon/components/directions.vue +1 -0
  132. package/src/components/icon/components/disc.vue +1 -0
  133. package/src/components/icon/components/display.vue +1 -0
  134. package/src/components/icon/components/display_alt.vue +1 -0
  135. package/src/components/icon/components/document.vue +1 -0
  136. package/src/components/icon/components/document_justified.vue +1 -0
  137. package/src/components/icon/components/document_list.vue +1 -0
  138. package/src/components/icon/components/document_stack.vue +1 -0
  139. package/src/components/icon/components/document_words.vue +1 -0
  140. package/src/components/icon/components/door.vue +1 -0
  141. package/src/components/icon/components/door_alt.vue +1 -0
  142. package/src/components/icon/components/download.vue +1 -0
  143. package/src/components/icon/components/download_alt.vue +1 -0
  144. package/src/components/icon/components/downward.vue +1 -0
  145. package/src/components/icon/components/drag.vue +1 -0
  146. package/src/components/icon/components/drag_circle.vue +1 -0
  147. package/src/components/icon/components/drag_vertical.vue +1 -0
  148. package/src/components/icon/components/duplicate.vue +1 -0
  149. package/src/components/icon/components/duplicate_alt.vue +1 -0
  150. package/src/components/icon/components/enter.vue +1 -0
  151. package/src/components/icon/components/enter_alt.vue +1 -0
  152. package/src/components/icon/components/episodes.vue +1 -0
  153. package/src/components/icon/components/exit_left.vue +1 -0
  154. package/src/components/icon/components/exit_right.vue +1 -0
  155. package/src/components/icon/components/expand.vue +1 -0
  156. package/src/components/icon/components/expand_height.vue +1 -0
  157. package/src/components/icon/components/expand_width.vue +1 -0
  158. package/src/components/icon/components/external.vue +1 -0
  159. package/src/components/icon/components/eye.vue +1 -0
  160. package/src/components/icon/components/eye_closed.vue +1 -0
  161. package/src/components/icon/components/eye_no.vue +1 -0
  162. package/src/components/icon/components/face_delighted.vue +1 -0
  163. package/src/components/icon/components/face_happy.vue +1 -0
  164. package/src/components/icon/components/face_neutral.vue +1 -0
  165. package/src/components/icon/components/face_sad.vue +1 -0
  166. package/src/components/icon/components/file_download.vue +1 -0
  167. package/src/components/icon/components/file_upload.vue +1 -0
  168. package/src/components/icon/components/files_history.vue +1 -0
  169. package/src/components/icon/components/files_multi.vue +1 -0
  170. package/src/components/icon/components/files_stack.vue +1 -0
  171. package/src/components/icon/components/film.vue +1 -0
  172. package/src/components/icon/components/filter.vue +1 -0
  173. package/src/components/icon/components/filter_circle.vue +1 -0
  174. package/src/components/icon/components/filter_single.vue +1 -0
  175. package/src/components/icon/components/filtering.vue +1 -0
  176. package/src/components/icon/components/fingerprint.vue +1 -0
  177. package/src/components/icon/components/flag.vue +1 -0
  178. package/src/components/icon/components/flame.vue +7 -0
  179. package/src/components/icon/components/flame_alt.vue +1 -0
  180. package/src/components/icon/components/flip_view.vue +1 -0
  181. package/src/components/icon/components/floppy.vue +1 -0
  182. package/src/components/icon/components/folder_add.vue +1 -0
  183. package/src/components/icon/components/folder_closed.vue +1 -0
  184. package/src/components/icon/components/folder_minus.vue +1 -0
  185. package/src/components/icon/components/folder_open.vue +1 -0
  186. package/src/components/icon/components/fork_git.vue +1 -0
  187. package/src/components/icon/components/forward.vue +1 -0
  188. package/src/components/icon/components/frame.vue +1 -0
  189. package/src/components/icon/components/fullscreen.vue +1 -0
  190. package/src/components/icon/components/funnel.vue +1 -0
  191. package/src/components/icon/components/gauge.vue +1 -0
  192. package/src/components/icon/components/gift.vue +1 -0
  193. package/src/components/icon/components/globe.vue +1 -0
  194. package/src/components/icon/components/gps.vue +1 -0
  195. package/src/components/icon/components/grab.vue +1 -0
  196. package/src/components/icon/components/graph_bar.vue +1 -0
  197. package/src/components/icon/components/graph_box.vue +1 -0
  198. package/src/components/icon/components/graph_increase.vue +1 -0
  199. package/src/components/icon/components/grid.vue +1 -0
  200. package/src/components/icon/components/grid_circles.vue +1 -0
  201. package/src/components/icon/components/grid_circles_add.vue +1 -0
  202. package/src/components/icon/components/grid_small.vue +1 -0
  203. package/src/components/icon/components/grid_squares.vue +1 -0
  204. package/src/components/icon/components/grid_squares_add.vue +1 -0
  205. package/src/components/icon/components/hand.vue +1 -0
  206. package/src/components/icon/components/harddrive.vue +1 -0
  207. package/src/components/icon/components/hash.vue +1 -0
  208. package/src/components/icon/components/heart.vue +1 -0
  209. package/src/components/icon/components/heart_rate.vue +1 -0
  210. package/src/components/icon/components/heart_remove.vue +1 -0
  211. package/src/components/icon/components/height.vue +1 -0
  212. package/src/components/icon/components/hierarchy.vue +1 -0
  213. package/src/components/icon/components/home.vue +1 -0
  214. package/src/components/icon/components/home_alt.vue +1 -0
  215. package/src/components/icon/components/home_check.vue +1 -0
  216. package/src/components/icon/components/home_door.vue +1 -0
  217. package/src/components/icon/components/import.vue +1 -0
  218. package/src/components/icon/components/inbox.vue +1 -0
  219. package/src/components/icon/components/inbox_alt.vue +1 -0
  220. package/src/components/icon/components/info_circle.vue +1 -0
  221. package/src/components/icon/components/iphone_landscape.vue +1 -0
  222. package/src/components/icon/components/iphone_portrait.vue +1 -0
  223. package/src/components/icon/components/jump_backward.vue +1 -0
  224. package/src/components/icon/components/jump_forward.vue +1 -0
  225. package/src/components/icon/components/jump_left.vue +1 -0
  226. package/src/components/icon/components/jump_right.vue +1 -0
  227. package/src/components/icon/components/keyboard.vue +1 -0
  228. package/src/components/icon/components/laptop.vue +1 -0
  229. package/src/components/icon/components/lightbulb.vue +1 -0
  230. package/src/components/icon/components/lightbulb_on.vue +1 -0
  231. package/src/components/icon/components/lightning.vue +1 -0
  232. package/src/components/icon/components/lightning_alt.vue +1 -0
  233. package/src/components/icon/components/lineweight.vue +1 -0
  234. package/src/components/icon/components/link.vue +1 -0
  235. package/src/components/icon/components/link_alt.vue +1 -0
  236. package/src/components/icon/components/link_broken.vue +1 -0
  237. package/src/components/icon/components/link_horizontal.vue +1 -0
  238. package/src/components/icon/components/link_vertical.vue +1 -0
  239. package/src/components/icon/components/list.vue +1 -0
  240. package/src/components/icon/components/list_add.vue +1 -0
  241. package/src/components/icon/components/list_numbered.vue +1 -0
  242. package/src/components/icon/components/loader.vue +1 -0
  243. package/src/components/icon/components/location.vue +1 -0
  244. package/src/components/icon/components/lock.vue +1 -0
  245. package/src/components/icon/components/lock_open.vue +1 -0
  246. package/src/components/icon/components/mail.vue +1 -0
  247. package/src/components/icon/components/mail_add.vue +1 -0
  248. package/src/components/icon/components/mail_delete.vue +1 -0
  249. package/src/components/icon/components/mail_minus.vue +1 -0
  250. package/src/components/icon/components/mail_new.vue +1 -0
  251. package/src/components/icon/components/mail_open.vue +1 -0
  252. package/src/components/icon/components/mail_remove.vue +1 -0
  253. package/src/components/icon/components/marquee.vue +1 -0
  254. package/src/components/icon/components/maximise.vue +1 -0
  255. package/src/components/icon/components/menu_hamburger.vue +1 -0
  256. package/src/components/icon/components/menu_horizontal.vue +1 -0
  257. package/src/components/icon/components/menu_vertical.vue +1 -0
  258. package/src/components/icon/components/message.vue +1 -0
  259. package/src/components/icon/components/message_writing.vue +1 -0
  260. package/src/components/icon/components/microphone.vue +1 -0
  261. package/src/components/icon/components/microphone_disabled.vue +1 -0
  262. package/src/components/icon/components/microphone_muted.vue +1 -0
  263. package/src/components/icon/components/midpoint.vue +1 -0
  264. package/src/components/icon/components/mini_player.vue +1 -0
  265. package/src/components/icon/components/minimise.vue +1 -0
  266. package/src/components/icon/components/minus.vue +1 -0
  267. package/src/components/icon/components/minus_circle.vue +1 -0
  268. package/src/components/icon/components/moon.vue +1 -0
  269. package/src/components/icon/components/move.vue +1 -0
  270. package/src/components/icon/components/newspaper.vue +1 -0
  271. package/src/components/icon/components/no_sign.vue +1 -0
  272. package/src/components/icon/components/notebook.vue +1 -0
  273. package/src/components/icon/components/notification.vue +1 -0
  274. package/src/components/icon/components/nut.vue +1 -0
  275. package/src/components/icon/components/pages.vue +1 -0
  276. package/src/components/icon/components/panel_bottom.vue +1 -0
  277. package/src/components/icon/components/panel_center.vue +1 -0
  278. package/src/components/icon/components/panel_left.vue +1 -0
  279. package/src/components/icon/components/panel_right.vue +1 -0
  280. package/src/components/icon/components/panel_sectioned.vue +1 -0
  281. package/src/components/icon/components/panel_top.vue +1 -0
  282. package/src/components/icon/components/paper.vue +1 -0
  283. package/src/components/icon/components/paper_folded.vue +1 -0
  284. package/src/components/icon/components/paper_plane.vue +1 -0
  285. package/src/components/icon/components/paper_plane_alt.vue +1 -0
  286. package/src/components/icon/components/paperclip.vue +1 -0
  287. package/src/components/icon/components/paragraph_center.vue +1 -0
  288. package/src/components/icon/components/paragraph_end.vue +1 -0
  289. package/src/components/icon/components/paragraph_left.vue +1 -0
  290. package/src/components/icon/components/paragraph_right.vue +1 -0
  291. package/src/components/icon/components/paragraph_start.vue +1 -0
  292. package/src/components/icon/components/pen.vue +1 -0
  293. package/src/components/icon/components/phone_landscape.vue +1 -0
  294. package/src/components/icon/components/phone_portrait.vue +1 -0
  295. package/src/components/icon/components/picture.vue +1 -0
  296. package/src/components/icon/components/pie_half.vue +1 -0
  297. package/src/components/icon/components/pie_quarter.vue +1 -0
  298. package/src/components/icon/components/pie_third.vue +1 -0
  299. package/src/components/icon/components/play_button.vue +1 -0
  300. package/src/components/icon/components/plus.vue +1 -0
  301. package/src/components/icon/components/plus_circle.vue +1 -0
  302. package/src/components/icon/components/postcard.vue +1 -0
  303. package/src/components/icon/components/printer.vue +1 -0
  304. package/src/components/icon/components/projector.vue +1 -0
  305. package/src/components/icon/components/pull_down.vue +1 -0
  306. package/src/components/icon/components/pull_left.vue +1 -0
  307. package/src/components/icon/components/pull_right.vue +1 -0
  308. package/src/components/icon/components/pull_up.vue +1 -0
  309. package/src/components/icon/components/push_down.vue +1 -0
  310. package/src/components/icon/components/push_left.vue +1 -0
  311. package/src/components/icon/components/push_right.vue +1 -0
  312. package/src/components/icon/components/push_up.vue +1 -0
  313. package/src/components/icon/components/question_circle.vue +1 -0
  314. package/src/components/icon/components/radio_on.vue +1 -0
  315. package/src/components/icon/components/receipt.vue +1 -0
  316. package/src/components/icon/components/record.vue +1 -0
  317. package/src/components/icon/components/redo.vue +1 -0
  318. package/src/components/icon/components/refresh.vue +1 -0
  319. package/src/components/icon/components/refresh_alt.vue +1 -0
  320. package/src/components/icon/components/replicate.vue +1 -0
  321. package/src/components/icon/components/replicate_alt.vue +1 -0
  322. package/src/components/icon/components/reset.vue +1 -0
  323. package/src/components/icon/components/reset_alt.vue +1 -0
  324. package/src/components/icon/components/reset_forward.vue +1 -0
  325. package/src/components/icon/components/reset_hard.vue +1 -0
  326. package/src/components/icon/components/reset_temporary.vue +1 -0
  327. package/src/components/icon/components/retweet.vue +1 -0
  328. package/src/components/icon/components/reuse.vue +1 -0
  329. package/src/components/icon/components/reverse.vue +1 -0
  330. package/src/components/icon/components/reverse_alt.vue +1 -0
  331. package/src/components/icon/components/revert.vue +1 -0
  332. package/src/components/icon/components/rocket.vue +1 -0
  333. package/src/components/icon/components/ruler.vue +1 -0
  334. package/src/components/icon/components/scale.vue +1 -0
  335. package/src/components/icon/components/scale_contract.vue +1 -0
  336. package/src/components/icon/components/scale_extend.vue +1 -0
  337. package/src/components/icon/components/scalpel.vue +1 -0
  338. package/src/components/icon/components/search.vue +1 -0
  339. package/src/components/icon/components/server.vue +1 -0
  340. package/src/components/icon/components/settings.vue +1 -0
  341. package/src/components/icon/components/share.vue +1 -0
  342. package/src/components/icon/components/share_alt.vue +1 -0
  343. package/src/components/icon/components/shuffle.vue +1 -0
  344. package/src/components/icon/components/side_menu.vue +1 -0
  345. package/src/components/icon/components/slash_backward.vue +1 -0
  346. package/src/components/icon/components/slash_forward.vue +1 -0
  347. package/src/components/icon/components/sliders.vue +1 -0
  348. package/src/components/icon/components/sort.vue +1 -0
  349. package/src/components/icon/components/sort_alt.vue +1 -0
  350. package/src/components/icon/components/speaker.vue +1 -0
  351. package/src/components/icon/components/speech_bubble.vue +1 -0
  352. package/src/components/icon/components/speech_typing.vue +1 -0
  353. package/src/components/icon/components/split.vue +1 -0
  354. package/src/components/icon/components/split_three.vue +1 -0
  355. package/src/components/icon/components/star.vue +1 -0
  356. package/src/components/icon/components/sun.vue +1 -0
  357. package/src/components/icon/components/support.vue +1 -0
  358. package/src/components/icon/components/swap.vue +1 -0
  359. package/src/components/icon/components/switch.vue +1 -0
  360. package/src/components/icon/components/table.vue +1 -0
  361. package/src/components/icon/components/table_header.vue +1 -0
  362. package/src/components/icon/components/tag.vue +1 -0
  363. package/src/components/icon/components/tag_milestone.vue +1 -0
  364. package/src/components/icon/components/tags.vue +1 -0
  365. package/src/components/icon/components/target.vue +1 -0
  366. package/src/components/icon/components/thread.vue +1 -0
  367. package/src/components/icon/components/thumbs_down.vue +1 -0
  368. package/src/components/icon/components/thumbs_up.vue +1 -0
  369. package/src/components/icon/components/ticket.vue +1 -0
  370. package/src/components/icon/components/timeline.vue +1 -0
  371. package/src/components/icon/components/todo.vue +1 -0
  372. package/src/components/icon/components/toggle.vue +1 -0
  373. package/src/components/icon/components/toggles.vue +1 -0
  374. package/src/components/icon/components/translate.vue +1 -0
  375. package/src/components/icon/components/trash.vue +1 -0
  376. package/src/components/icon/components/trash_alt.vue +1 -0
  377. package/src/components/icon/components/trophy.vue +1 -0
  378. package/src/components/icon/components/tv_mode.vue +1 -0
  379. package/src/components/icon/components/unarchive.vue +1 -0
  380. package/src/components/icon/components/undo.vue +1 -0
  381. package/src/components/icon/components/undo_history.vue +1 -0
  382. package/src/components/icon/components/unlink_horizontal.vue +1 -0
  383. package/src/components/icon/components/unlink_vertical.vue +1 -0
  384. package/src/components/icon/components/upload.vue +1 -0
  385. package/src/components/icon/components/upload_alt.vue +1 -0
  386. package/src/components/icon/components/upward.vue +1 -0
  387. package/src/components/icon/components/user.vue +1 -0
  388. package/src/components/icon/components/user_add.vue +1 -0
  389. package/src/components/icon/components/user_circle.vue +1 -0
  390. package/src/components/icon/components/user_male.vue +1 -0
  391. package/src/components/icon/components/user_male_circle.vue +1 -0
  392. package/src/components/icon/components/user_remove.vue +1 -0
  393. package/src/components/icon/components/users.vue +1 -0
  394. package/src/components/icon/components/venn.vue +1 -0
  395. package/src/components/icon/components/version.vue +1 -0
  396. package/src/components/icon/components/versions.vue +1 -0
  397. package/src/components/icon/components/video.vue +1 -0
  398. package/src/components/icon/components/volume_0.vue +1 -0
  399. package/src/components/icon/components/volume_add.vue +1 -0
  400. package/src/components/icon/components/volume_disabled.vue +1 -0
  401. package/src/components/icon/components/volume_high.vue +1 -0
  402. package/src/components/icon/components/volume_low.vue +1 -0
  403. package/src/components/icon/components/volume_minus.vue +1 -0
  404. package/src/components/icon/components/volume_muted.vue +1 -0
  405. package/src/components/icon/components/wallet.vue +1 -0
  406. package/src/components/icon/components/warning_circle.vue +1 -0
  407. package/src/components/icon/components/warning_hex.vue +1 -0
  408. package/src/components/icon/components/warning_triangle.vue +1 -0
  409. package/src/components/icon/components/waves.vue +1 -0
  410. package/src/components/icon/components/width.vue +1 -0
  411. package/src/components/icon/components/wifi.vue +1 -0
  412. package/src/components/icon/components/wifi_error.vue +1 -0
  413. package/src/components/icon/components/wifi_none.vue +1 -0
  414. package/src/components/icon/components/window.vue +1 -0
  415. package/src/components/icon/components/window_collapse_left.vue +1 -0
  416. package/src/components/icon/components/window_collapse_right.vue +1 -0
  417. package/src/components/icon/components/window_content.vue +1 -0
  418. package/src/components/icon/components/wrap_back.vue +1 -0
  419. package/src/components/icon/components/wrap_forward.vue +1 -0
  420. package/src/components/icon/components/write.vue +1 -0
  421. package/src/components/icon/components/zoom_cancel.vue +1 -0
  422. package/src/components/icon/components/zoom_in.vue +1 -0
  423. package/src/components/icon/components/zoom_out.vue +1 -0
  424. package/src/components/icon/components/zoom_reset.vue +1 -0
  425. package/src/components/icon/convert-icons.js +24 -0
  426. package/src/components/icon/icons.js +422 -0
  427. package/src/components/icon/index.stories.js +44 -0
  428. package/src/components/pdf-viewer/PdfViewer.vue +1354 -0
  429. package/src/components/pdf-viewer/images/loading-icon.svg +26 -0
  430. package/src/components/pdf-viewer/images/shadow.png +0 -0
  431. package/src/components/pdf-viewer/images/treeitem-collapsed.png +0 -0
  432. package/src/components/pdf-viewer/images/treeitem-collapsed@2x.png +0 -0
  433. package/src/components/pdf-viewer/images/treeitem-expanded.png +0 -0
  434. package/src/components/pdf-viewer/images/treeitem-expanded@2x.png +0 -0
  435. package/src/components/pdf-viewer/index.stories.js +44 -0
  436. package/src/components/pdf-viewer/pdfjs-dist/CODE_OF_CONDUCT.md +15 -0
  437. package/src/components/pdf-viewer/pdfjs-dist/LICENSE +177 -0
  438. package/src/components/pdf-viewer/pdfjs-dist/README.md +14 -0
  439. package/src/components/pdf-viewer/pdfjs-dist/bower.json +14 -0
  440. package/src/components/pdf-viewer/pdfjs-dist/build/pdf.js +13421 -0
  441. package/src/components/pdf-viewer/pdfjs-dist/build/pdf.js.map +1 -0
  442. package/src/components/pdf-viewer/pdfjs-dist/build/pdf.min.js +22 -0
  443. package/src/components/pdf-viewer/pdfjs-dist/build/pdf.worker.entry.js +19 -0
  444. package/src/components/pdf-viewer/pdfjs-dist/build/pdf.worker.js +45929 -0
  445. package/src/components/pdf-viewer/pdfjs-dist/build/pdf.worker.js.map +1 -0
  446. package/src/components/pdf-viewer/pdfjs-dist/build/pdf.worker.min.js +22 -0
  447. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78-EUC-H.bcmap +0 -0
  448. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78-EUC-V.bcmap +0 -0
  449. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78-H.bcmap +0 -0
  450. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78-RKSJ-H.bcmap +0 -0
  451. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78-RKSJ-V.bcmap +0 -0
  452. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78-V.bcmap +0 -0
  453. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78ms-RKSJ-H.bcmap +0 -0
  454. package/src/components/pdf-viewer/pdfjs-dist/cmaps/78ms-RKSJ-V.bcmap +0 -0
  455. package/src/components/pdf-viewer/pdfjs-dist/cmaps/83pv-RKSJ-H.bcmap +0 -0
  456. package/src/components/pdf-viewer/pdfjs-dist/cmaps/90ms-RKSJ-H.bcmap +0 -0
  457. package/src/components/pdf-viewer/pdfjs-dist/cmaps/90ms-RKSJ-V.bcmap +0 -0
  458. package/src/components/pdf-viewer/pdfjs-dist/cmaps/90msp-RKSJ-H.bcmap +0 -0
  459. package/src/components/pdf-viewer/pdfjs-dist/cmaps/90msp-RKSJ-V.bcmap +0 -0
  460. package/src/components/pdf-viewer/pdfjs-dist/cmaps/90pv-RKSJ-H.bcmap +0 -0
  461. package/src/components/pdf-viewer/pdfjs-dist/cmaps/90pv-RKSJ-V.bcmap +0 -0
  462. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Add-H.bcmap +0 -0
  463. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Add-RKSJ-H.bcmap +0 -0
  464. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Add-RKSJ-V.bcmap +0 -0
  465. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Add-V.bcmap +0 -0
  466. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-0.bcmap +0 -0
  467. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-1.bcmap +0 -0
  468. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-2.bcmap +0 -0
  469. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-3.bcmap +0 -0
  470. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-4.bcmap +0 -0
  471. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-5.bcmap +0 -0
  472. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-6.bcmap +0 -0
  473. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
  474. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-GB1-0.bcmap +0 -0
  475. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-GB1-1.bcmap +0 -0
  476. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-GB1-2.bcmap +0 -0
  477. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-GB1-3.bcmap +0 -0
  478. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-GB1-4.bcmap +0 -0
  479. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-GB1-5.bcmap +0 -0
  480. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
  481. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-0.bcmap +0 -0
  482. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-1.bcmap +0 -0
  483. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-2.bcmap +0 -0
  484. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-3.bcmap +0 -0
  485. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-4.bcmap +0 -0
  486. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-5.bcmap +0 -0
  487. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-6.bcmap +0 -0
  488. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
  489. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Korea1-0.bcmap +0 -0
  490. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Korea1-1.bcmap +0 -0
  491. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Korea1-2.bcmap +0 -0
  492. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
  493. package/src/components/pdf-viewer/pdfjs-dist/cmaps/B5-H.bcmap +0 -0
  494. package/src/components/pdf-viewer/pdfjs-dist/cmaps/B5-V.bcmap +0 -0
  495. package/src/components/pdf-viewer/pdfjs-dist/cmaps/B5pc-H.bcmap +0 -0
  496. package/src/components/pdf-viewer/pdfjs-dist/cmaps/B5pc-V.bcmap +0 -0
  497. package/src/components/pdf-viewer/pdfjs-dist/cmaps/CNS-EUC-H.bcmap +0 -0
  498. package/src/components/pdf-viewer/pdfjs-dist/cmaps/CNS-EUC-V.bcmap +0 -0
  499. package/src/components/pdf-viewer/pdfjs-dist/cmaps/CNS1-H.bcmap +0 -0
  500. package/src/components/pdf-viewer/pdfjs-dist/cmaps/CNS1-V.bcmap +0 -0
  501. package/src/components/pdf-viewer/pdfjs-dist/cmaps/CNS2-H.bcmap +0 -0
  502. package/src/components/pdf-viewer/pdfjs-dist/cmaps/CNS2-V.bcmap +3 -0
  503. package/src/components/pdf-viewer/pdfjs-dist/cmaps/ETHK-B5-H.bcmap +0 -0
  504. package/src/components/pdf-viewer/pdfjs-dist/cmaps/ETHK-B5-V.bcmap +0 -0
  505. package/src/components/pdf-viewer/pdfjs-dist/cmaps/ETen-B5-H.bcmap +0 -0
  506. package/src/components/pdf-viewer/pdfjs-dist/cmaps/ETen-B5-V.bcmap +0 -0
  507. package/src/components/pdf-viewer/pdfjs-dist/cmaps/ETenms-B5-H.bcmap +3 -0
  508. package/src/components/pdf-viewer/pdfjs-dist/cmaps/ETenms-B5-V.bcmap +0 -0
  509. package/src/components/pdf-viewer/pdfjs-dist/cmaps/EUC-H.bcmap +0 -0
  510. package/src/components/pdf-viewer/pdfjs-dist/cmaps/EUC-V.bcmap +0 -0
  511. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Ext-H.bcmap +0 -0
  512. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Ext-RKSJ-H.bcmap +0 -0
  513. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Ext-RKSJ-V.bcmap +0 -0
  514. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Ext-V.bcmap +0 -0
  515. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GB-EUC-H.bcmap +0 -0
  516. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GB-EUC-V.bcmap +0 -0
  517. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GB-H.bcmap +4 -0
  518. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GB-V.bcmap +0 -0
  519. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBK-EUC-H.bcmap +0 -0
  520. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBK-EUC-V.bcmap +0 -0
  521. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBK2K-H.bcmap +0 -0
  522. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBK2K-V.bcmap +0 -0
  523. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBKp-EUC-H.bcmap +0 -0
  524. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBKp-EUC-V.bcmap +0 -0
  525. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBT-EUC-H.bcmap +0 -0
  526. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBT-EUC-V.bcmap +0 -0
  527. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBT-H.bcmap +0 -0
  528. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBT-V.bcmap +0 -0
  529. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBTpc-EUC-H.bcmap +0 -0
  530. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBTpc-EUC-V.bcmap +0 -0
  531. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBpc-EUC-H.bcmap +0 -0
  532. package/src/components/pdf-viewer/pdfjs-dist/cmaps/GBpc-EUC-V.bcmap +0 -0
  533. package/src/components/pdf-viewer/pdfjs-dist/cmaps/H.bcmap +0 -0
  534. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKdla-B5-H.bcmap +0 -0
  535. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKdla-B5-V.bcmap +0 -0
  536. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKdlb-B5-H.bcmap +0 -0
  537. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKdlb-B5-V.bcmap +0 -0
  538. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKgccs-B5-H.bcmap +0 -0
  539. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKgccs-B5-V.bcmap +0 -0
  540. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKm314-B5-H.bcmap +0 -0
  541. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKm314-B5-V.bcmap +0 -0
  542. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKm471-B5-H.bcmap +0 -0
  543. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKm471-B5-V.bcmap +0 -0
  544. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKscs-B5-H.bcmap +0 -0
  545. package/src/components/pdf-viewer/pdfjs-dist/cmaps/HKscs-B5-V.bcmap +0 -0
  546. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Hankaku.bcmap +0 -0
  547. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Hiragana.bcmap +0 -0
  548. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSC-EUC-H.bcmap +0 -0
  549. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSC-EUC-V.bcmap +0 -0
  550. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSC-H.bcmap +0 -0
  551. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSC-Johab-H.bcmap +0 -0
  552. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSC-Johab-V.bcmap +0 -0
  553. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSC-V.bcmap +0 -0
  554. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSCms-UHC-H.bcmap +0 -0
  555. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
  556. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
  557. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSCms-UHC-V.bcmap +0 -0
  558. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSCpc-EUC-H.bcmap +0 -0
  559. package/src/components/pdf-viewer/pdfjs-dist/cmaps/KSCpc-EUC-V.bcmap +0 -0
  560. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Katakana.bcmap +0 -0
  561. package/src/components/pdf-viewer/pdfjs-dist/cmaps/LICENSE +36 -0
  562. package/src/components/pdf-viewer/pdfjs-dist/cmaps/NWP-H.bcmap +0 -0
  563. package/src/components/pdf-viewer/pdfjs-dist/cmaps/NWP-V.bcmap +0 -0
  564. package/src/components/pdf-viewer/pdfjs-dist/cmaps/RKSJ-H.bcmap +0 -0
  565. package/src/components/pdf-viewer/pdfjs-dist/cmaps/RKSJ-V.bcmap +0 -0
  566. package/src/components/pdf-viewer/pdfjs-dist/cmaps/Roman.bcmap +0 -0
  567. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UCS2-H.bcmap +0 -0
  568. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UCS2-V.bcmap +0 -0
  569. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UTF16-H.bcmap +0 -0
  570. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UTF16-V.bcmap +0 -0
  571. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UTF32-H.bcmap +0 -0
  572. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UTF32-V.bcmap +0 -0
  573. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UTF8-H.bcmap +0 -0
  574. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniCNS-UTF8-V.bcmap +0 -0
  575. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UCS2-H.bcmap +0 -0
  576. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UCS2-V.bcmap +0 -0
  577. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UTF16-H.bcmap +0 -0
  578. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UTF16-V.bcmap +0 -0
  579. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UTF32-H.bcmap +0 -0
  580. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UTF32-V.bcmap +0 -0
  581. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UTF8-H.bcmap +0 -0
  582. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniGB-UTF8-V.bcmap +0 -0
  583. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UCS2-H.bcmap +0 -0
  584. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
  585. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
  586. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UCS2-V.bcmap +0 -0
  587. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UTF16-H.bcmap +0 -0
  588. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UTF16-V.bcmap +0 -0
  589. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UTF32-H.bcmap +0 -0
  590. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UTF32-V.bcmap +0 -0
  591. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UTF8-H.bcmap +0 -0
  592. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS-UTF8-V.bcmap +0 -0
  593. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
  594. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
  595. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
  596. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
  597. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
  598. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
  599. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
  600. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
  601. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
  602. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
  603. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
  604. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
  605. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
  606. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UCS2-H.bcmap +0 -0
  607. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UCS2-V.bcmap +0 -0
  608. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UTF16-H.bcmap +0 -0
  609. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UTF16-V.bcmap +0 -0
  610. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UTF32-H.bcmap +0 -0
  611. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UTF32-V.bcmap +0 -0
  612. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UTF8-H.bcmap +0 -0
  613. package/src/components/pdf-viewer/pdfjs-dist/cmaps/UniKS-UTF8-V.bcmap +0 -0
  614. package/src/components/pdf-viewer/pdfjs-dist/cmaps/V.bcmap +0 -0
  615. package/src/components/pdf-viewer/pdfjs-dist/cmaps/WP-Symbol.bcmap +0 -0
  616. package/src/components/pdf-viewer/pdfjs-dist/es5/build/pdf.js +25473 -0
  617. package/src/components/pdf-viewer/pdfjs-dist/es5/build/pdf.js.map +1 -0
  618. package/src/components/pdf-viewer/pdfjs-dist/es5/build/pdf.worker.entry.js +19 -0
  619. package/src/components/pdf-viewer/pdfjs-dist/es5/build/pdf.worker.js +57878 -0
  620. package/src/components/pdf-viewer/pdfjs-dist/es5/build/pdf.worker.js.map +1 -0
  621. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-check.svg +11 -0
  622. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-comment.svg +16 -0
  623. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-help.svg +26 -0
  624. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-insert.svg +10 -0
  625. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-key.svg +11 -0
  626. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-newparagraph.svg +11 -0
  627. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-noicon.svg +7 -0
  628. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-note.svg +42 -0
  629. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/annotation-paragraph.svg +16 -0
  630. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/loading-icon.gif +0 -0
  631. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/shadow.png +0 -0
  632. package/src/components/pdf-viewer/pdfjs-dist/es5/web/images/texture.png +0 -0
  633. package/src/components/pdf-viewer/pdfjs-dist/es5/web/pdf_viewer.css +407 -0
  634. package/src/components/pdf-viewer/pdfjs-dist/es5/web/pdf_viewer.js +7757 -0
  635. package/src/components/pdf-viewer/pdfjs-dist/es5/web/pdf_viewer.js.map +1 -0
  636. package/src/components/pdf-viewer/pdfjs-dist/image_decoders/pdf.image_decoders.js +7994 -0
  637. package/src/components/pdf-viewer/pdfjs-dist/image_decoders/pdf.image_decoders.js.map +1 -0
  638. package/src/components/pdf-viewer/pdfjs-dist/image_decoders/pdf.image_decoders.min.js +22 -0
  639. package/src/components/pdf-viewer/pdfjs-dist/lib/README.md +7 -0
  640. package/src/components/pdf-viewer/pdfjs-dist/lib/core/annotation.js +1098 -0
  641. package/src/components/pdf-viewer/pdfjs-dist/lib/core/arithmetic_decoder.js +369 -0
  642. package/src/components/pdf-viewer/pdfjs-dist/lib/core/bidi.js +327 -0
  643. package/src/components/pdf-viewer/pdfjs-dist/lib/core/ccitt.js +720 -0
  644. package/src/components/pdf-viewer/pdfjs-dist/lib/core/ccitt_stream.js +82 -0
  645. package/src/components/pdf-viewer/pdfjs-dist/lib/core/cff_parser.js +1818 -0
  646. package/src/components/pdf-viewer/pdfjs-dist/lib/core/charsets.js +33 -0
  647. package/src/components/pdf-viewer/pdfjs-dist/lib/core/chunked_stream.js +628 -0
  648. package/src/components/pdf-viewer/pdfjs-dist/lib/core/cmap.js +912 -0
  649. package/src/components/pdf-viewer/pdfjs-dist/lib/core/colorspace.js +1061 -0
  650. package/src/components/pdf-viewer/pdfjs-dist/lib/core/core_utils.js +152 -0
  651. package/src/components/pdf-viewer/pdfjs-dist/lib/core/crypto.js +1605 -0
  652. package/src/components/pdf-viewer/pdfjs-dist/lib/core/document.js +760 -0
  653. package/src/components/pdf-viewer/pdfjs-dist/lib/core/encodings.js +69 -0
  654. package/src/components/pdf-viewer/pdfjs-dist/lib/core/evaluator.js +3576 -0
  655. package/src/components/pdf-viewer/pdfjs-dist/lib/core/font_renderer.js +981 -0
  656. package/src/components/pdf-viewer/pdfjs-dist/lib/core/fonts.js +3239 -0
  657. package/src/components/pdf-viewer/pdfjs-dist/lib/core/function.js +1366 -0
  658. package/src/components/pdf-viewer/pdfjs-dist/lib/core/glyphlist.js +4556 -0
  659. package/src/components/pdf-viewer/pdfjs-dist/lib/core/image.js +707 -0
  660. package/src/components/pdf-viewer/pdfjs-dist/lib/core/image_utils.js +94 -0
  661. package/src/components/pdf-viewer/pdfjs-dist/lib/core/jbig2.js +2223 -0
  662. package/src/components/pdf-viewer/pdfjs-dist/lib/core/jbig2_stream.js +99 -0
  663. package/src/components/pdf-viewer/pdfjs-dist/lib/core/jpeg_stream.js +236 -0
  664. package/src/components/pdf-viewer/pdfjs-dist/lib/core/jpg.js +1264 -0
  665. package/src/components/pdf-viewer/pdfjs-dist/lib/core/jpx.js +2351 -0
  666. package/src/components/pdf-viewer/pdfjs-dist/lib/core/jpx_stream.js +102 -0
  667. package/src/components/pdf-viewer/pdfjs-dist/lib/core/metrics.js +2969 -0
  668. package/src/components/pdf-viewer/pdfjs-dist/lib/core/murmurhash3.js +141 -0
  669. package/src/components/pdf-viewer/pdfjs-dist/lib/core/obj.js +2262 -0
  670. package/src/components/pdf-viewer/pdfjs-dist/lib/core/operator_list.js +672 -0
  671. package/src/components/pdf-viewer/pdfjs-dist/lib/core/parser.js +1322 -0
  672. package/src/components/pdf-viewer/pdfjs-dist/lib/core/pattern.js +954 -0
  673. package/src/components/pdf-viewer/pdfjs-dist/lib/core/pdf_manager.js +222 -0
  674. package/src/components/pdf-viewer/pdfjs-dist/lib/core/primitives.js +329 -0
  675. package/src/components/pdf-viewer/pdfjs-dist/lib/core/ps_parser.js +269 -0
  676. package/src/components/pdf-viewer/pdfjs-dist/lib/core/standard_fonts.js +759 -0
  677. package/src/components/pdf-viewer/pdfjs-dist/lib/core/stream.js +1317 -0
  678. package/src/components/pdf-viewer/pdfjs-dist/lib/core/type1_parser.js +726 -0
  679. package/src/components/pdf-viewer/pdfjs-dist/lib/core/unicode.js +1899 -0
  680. package/src/components/pdf-viewer/pdfjs-dist/lib/core/worker.js +551 -0
  681. package/src/components/pdf-viewer/pdfjs-dist/lib/core/worker_stream.js +168 -0
  682. package/src/components/pdf-viewer/pdfjs-dist/lib/display/annotation_layer.js +1048 -0
  683. package/src/components/pdf-viewer/pdfjs-dist/lib/display/api.js +2206 -0
  684. package/src/components/pdf-viewer/pdfjs-dist/lib/display/api_compatibility.js +47 -0
  685. package/src/components/pdf-viewer/pdfjs-dist/lib/display/canvas.js +2088 -0
  686. package/src/components/pdf-viewer/pdfjs-dist/lib/display/content_disposition.js +203 -0
  687. package/src/components/pdf-viewer/pdfjs-dist/lib/display/display_utils.js +524 -0
  688. package/src/components/pdf-viewer/pdfjs-dist/lib/display/fetch_stream.js +301 -0
  689. package/src/components/pdf-viewer/pdfjs-dist/lib/display/font_loader.js +402 -0
  690. package/src/components/pdf-viewer/pdfjs-dist/lib/display/metadata.js +143 -0
  691. package/src/components/pdf-viewer/pdfjs-dist/lib/display/network.js +572 -0
  692. package/src/components/pdf-viewer/pdfjs-dist/lib/display/network_utils.js +107 -0
  693. package/src/components/pdf-viewer/pdfjs-dist/lib/display/node_stream.js +482 -0
  694. package/src/components/pdf-viewer/pdfjs-dist/lib/display/pattern_helper.js +496 -0
  695. package/src/components/pdf-viewer/pdfjs-dist/lib/display/svg.js +1511 -0
  696. package/src/components/pdf-viewer/pdfjs-dist/lib/display/text_layer.js +698 -0
  697. package/src/components/pdf-viewer/pdfjs-dist/lib/display/transport_stream.js +370 -0
  698. package/src/components/pdf-viewer/pdfjs-dist/lib/display/webgl.js +462 -0
  699. package/src/components/pdf-viewer/pdfjs-dist/lib/display/worker_options.js +31 -0
  700. package/src/components/pdf-viewer/pdfjs-dist/lib/display/xml_parser.js +458 -0
  701. package/src/components/pdf-viewer/pdfjs-dist/lib/examples/node/domstubs.js +302 -0
  702. package/src/components/pdf-viewer/pdfjs-dist/lib/external/webL10n/l10n.js +1028 -0
  703. package/src/components/pdf-viewer/pdfjs-dist/lib/pdf.js +104 -0
  704. package/src/components/pdf-viewer/pdfjs-dist/lib/pdf.worker.js +29 -0
  705. package/src/components/pdf-viewer/pdfjs-dist/lib/shared/compatibility.js +24 -0
  706. package/src/components/pdf-viewer/pdfjs-dist/lib/shared/is_node.js +29 -0
  707. package/src/components/pdf-viewer/pdfjs-dist/lib/shared/message_handler.js +516 -0
  708. package/src/components/pdf-viewer/pdfjs-dist/lib/shared/util.js +837 -0
  709. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/annotation_spec.js +2238 -0
  710. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/api_spec.js +1613 -0
  711. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/bidi_spec.js +41 -0
  712. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/cff_parser_spec.js +322 -0
  713. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/clitests_helper.js +39 -0
  714. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/cmap_spec.js +357 -0
  715. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/colorspace_spec.js +342 -0
  716. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/core_utils_spec.js +211 -0
  717. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/crypto_spec.js +537 -0
  718. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/custom_spec.js +108 -0
  719. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/display_svg_spec.js +160 -0
  720. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/display_utils_spec.js +263 -0
  721. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/document_spec.js +42 -0
  722. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/encodings_spec.js +45 -0
  723. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/evaluator_spec.js +322 -0
  724. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/fetch_stream_spec.js +111 -0
  725. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/function_spec.js +645 -0
  726. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/jasmine-boot.js +155 -0
  727. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/message_handler_spec.js +365 -0
  728. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/metadata_spec.js +118 -0
  729. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/murmurhash3_spec.js +71 -0
  730. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/network_spec.js +120 -0
  731. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/network_utils_spec.js +349 -0
  732. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/node_stream_spec.js +227 -0
  733. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/parser_spec.js +240 -0
  734. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/pdf_find_controller_spec.js +199 -0
  735. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/pdf_find_utils_spec.js +63 -0
  736. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/pdf_history_spec.js +95 -0
  737. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/primitives_spec.js +333 -0
  738. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/stream_spec.js +78 -0
  739. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/test_utils.js +217 -0
  740. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/testreporter.js +102 -0
  741. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/type1_parser_spec.js +104 -0
  742. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/ui_utils_spec.js +711 -0
  743. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/unicode_spec.js +121 -0
  744. package/src/components/pdf-viewer/pdfjs-dist/lib/test/unit/util_spec.js +241 -0
  745. package/src/components/pdf-viewer/pdfjs-dist/lib/web/annotation_layer_builder.js +126 -0
  746. package/src/components/pdf-viewer/pdfjs-dist/lib/web/app.js +2424 -0
  747. package/src/components/pdf-viewer/pdfjs-dist/lib/web/app_options.js +257 -0
  748. package/src/components/pdf-viewer/pdfjs-dist/lib/web/base_viewer.js +1127 -0
  749. package/src/components/pdf-viewer/pdfjs-dist/lib/web/chromecom.js +392 -0
  750. package/src/components/pdf-viewer/pdfjs-dist/lib/web/debugger.js +670 -0
  751. package/src/components/pdf-viewer/pdfjs-dist/lib/web/download_manager.js +100 -0
  752. package/src/components/pdf-viewer/pdfjs-dist/lib/web/firefox_print_service.js +119 -0
  753. package/src/components/pdf-viewer/pdfjs-dist/lib/web/firefoxcom.js +363 -0
  754. package/src/components/pdf-viewer/pdfjs-dist/lib/web/genericcom.js +69 -0
  755. package/src/components/pdf-viewer/pdfjs-dist/lib/web/genericl10n.js +65 -0
  756. package/src/components/pdf-viewer/pdfjs-dist/lib/web/grab_to_pan.js +180 -0
  757. package/src/components/pdf-viewer/pdfjs-dist/lib/web/interfaces.js +125 -0
  758. package/src/components/pdf-viewer/pdfjs-dist/lib/web/overlay_manager.js +126 -0
  759. package/src/components/pdf-viewer/pdfjs-dist/lib/web/password_prompt.js +94 -0
  760. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_attachment_viewer.js +164 -0
  761. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_cursor_tools.js +139 -0
  762. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_document_properties.js +315 -0
  763. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_find_bar.js +226 -0
  764. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_find_controller.js +696 -0
  765. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_find_utils.js +111 -0
  766. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_history.js +601 -0
  767. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_link_service.js +455 -0
  768. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_outline_viewer.js +215 -0
  769. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_page_view.js +613 -0
  770. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_presentation_mode.js +420 -0
  771. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_print_service.js +316 -0
  772. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_rendering_queue.js +151 -0
  773. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_sidebar.js +397 -0
  774. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_sidebar_resizer.js +164 -0
  775. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_single_page_viewer.js +137 -0
  776. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_thumbnail_view.js +425 -0
  777. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_thumbnail_viewer.js +272 -0
  778. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_viewer.component.js +147 -0
  779. package/src/components/pdf-viewer/pdfjs-dist/lib/web/pdf_viewer.js +102 -0
  780. package/src/components/pdf-viewer/pdfjs-dist/lib/web/preferences.js +162 -0
  781. package/src/components/pdf-viewer/pdfjs-dist/lib/web/secondary_toolbar.js +333 -0
  782. package/src/components/pdf-viewer/pdfjs-dist/lib/web/text_layer_builder.js +401 -0
  783. package/src/components/pdf-viewer/pdfjs-dist/lib/web/toolbar.js +285 -0
  784. package/src/components/pdf-viewer/pdfjs-dist/lib/web/ui_utils.js +802 -0
  785. package/src/components/pdf-viewer/pdfjs-dist/lib/web/view_history.js +112 -0
  786. package/src/components/pdf-viewer/pdfjs-dist/lib/web/viewer_compatibility.js +38 -0
  787. package/src/components/pdf-viewer/pdfjs-dist/package.json +54 -0
  788. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-check.svg +11 -0
  789. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-comment.svg +16 -0
  790. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-help.svg +26 -0
  791. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-insert.svg +10 -0
  792. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-key.svg +11 -0
  793. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-newparagraph.svg +11 -0
  794. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-noicon.svg +7 -0
  795. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-note.svg +42 -0
  796. package/src/components/pdf-viewer/pdfjs-dist/web/images/annotation-paragraph.svg +16 -0
  797. package/src/components/pdf-viewer/pdfjs-dist/web/images/loading-icon.gif +0 -0
  798. package/src/components/pdf-viewer/pdfjs-dist/web/images/shadow.png +0 -0
  799. package/src/components/pdf-viewer/pdfjs-dist/web/images/texture.png +0 -0
  800. package/src/components/pdf-viewer/pdfjs-dist/web/pdf_viewer.css +407 -0
  801. package/src/components/pdf-viewer/pdfjs-dist/web/pdf_viewer.js +6394 -0
  802. package/src/components/pdf-viewer/pdfjs-dist/web/pdf_viewer.js.map +1 -0
  803. package/src/components/pdf-viewer/pdfjs-dist/webpack.js +33 -0
  804. package/src/components/pdf-viewer/styles/_annotation_layer_builder.scss +205 -0
  805. package/src/components/pdf-viewer/styles/_colors.scss +551 -0
  806. package/src/components/pdf-viewer/styles/_pdf_viewer.scss +131 -0
  807. package/src/components/pdf-viewer/styles/_text_layer_builder.scss +76 -0
  808. package/src/components/pdf-viewer/styles/_variables.scss +63 -0
  809. package/src/components/pdf-viewer/styles/_viewer.scss +1413 -0
  810. package/src/components/pdf-viewer/styles/index.css +0 -0
  811. package/src/components/pdf-viewer/styles/index.scss +4 -0
  812. package/src/components/pdf-viewer/utils/constants.js +1 -0
  813. package/src/components/pdf-viewer/utils/locale.js +290 -0
  814. package/src/components/pdf-viewer/utils/pdf-config.js +137 -0
  815. package/src/components/pdf-viewer/utils/toolbar-config.js +60 -0
@@ -0,0 +1,2238 @@
1
+ /**
2
+ * @licstart The following is the entire license notice for the
3
+ * Javascript code in this page
4
+ *
5
+ * Copyright 2020 Mozilla Foundation
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ *
19
+ * @licend The above is the entire license notice for the
20
+ * Javascript code in this page
21
+ */
22
+ "use strict";
23
+
24
+ var _annotation = require("../../core/annotation.js");
25
+
26
+ var _util = require("../../shared/util.js");
27
+
28
+ var _test_utils = require("./test_utils.js");
29
+
30
+ var _primitives = require("../../core/primitives.js");
31
+
32
+ var _parser = require("../../core/parser.js");
33
+
34
+ var _stream = require("../../core/stream.js");
35
+
36
+ describe("annotation", function () {
37
+ class PDFManagerMock {
38
+ constructor(params) {
39
+ this.docBaseUrl = params.docBaseUrl || null;
40
+ }
41
+
42
+ ensure(obj, prop, args) {
43
+ return new Promise(function (resolve) {
44
+ const value = obj[prop];
45
+
46
+ if (typeof value === "function") {
47
+ resolve(value.apply(obj, args));
48
+ } else {
49
+ resolve(value);
50
+ }
51
+ });
52
+ }
53
+
54
+ }
55
+
56
+ let pdfManagerMock, idFactoryMock;
57
+ beforeAll(function (done) {
58
+ pdfManagerMock = new PDFManagerMock({
59
+ docBaseUrl: null
60
+ });
61
+ idFactoryMock = (0, _test_utils.createIdFactory)(0);
62
+ done();
63
+ });
64
+ afterAll(function () {
65
+ pdfManagerMock = null;
66
+ idFactoryMock = null;
67
+ });
68
+ describe("AnnotationFactory", function () {
69
+ it("should get id for annotation", function (done) {
70
+ const annotationDict = new _primitives.Dict();
71
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
72
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
73
+
74
+ const annotationRef = _primitives.Ref.get(10, 0);
75
+
76
+ const xref = new _test_utils.XRefMock([{
77
+ ref: annotationRef,
78
+ data: annotationDict
79
+ }]);
80
+
81
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
82
+ data
83
+ }) => {
84
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
85
+ expect(data.id).toEqual("10R");
86
+ done();
87
+ }, done.fail);
88
+ });
89
+ it("should handle, and get fallback IDs for, annotations that are not " + "indirect objects (issue 7569)", function (done) {
90
+ const annotationDict = new _primitives.Dict();
91
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
92
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
93
+ const xref = new _test_utils.XRefMock();
94
+ const idFactory = (0, _test_utils.createIdFactory)(0);
95
+
96
+ const annotation1 = _annotation.AnnotationFactory.create(xref, annotationDict, pdfManagerMock, idFactory).then(({
97
+ data
98
+ }) => {
99
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
100
+ expect(data.id).toEqual("annot_p0_1");
101
+ });
102
+
103
+ const annotation2 = _annotation.AnnotationFactory.create(xref, annotationDict, pdfManagerMock, idFactory).then(({
104
+ data
105
+ }) => {
106
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
107
+ expect(data.id).toEqual("annot_p0_2");
108
+ });
109
+
110
+ Promise.all([annotation1, annotation2]).then(done, done.fail);
111
+ });
112
+ it("should handle missing /Subtype", function (done) {
113
+ const annotationDict = new _primitives.Dict();
114
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
115
+
116
+ const annotationRef = _primitives.Ref.get(1, 0);
117
+
118
+ const xref = new _test_utils.XRefMock([{
119
+ ref: annotationRef,
120
+ data: annotationDict
121
+ }]);
122
+
123
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
124
+ data
125
+ }) => {
126
+ expect(data.annotationType).toBeUndefined();
127
+ done();
128
+ }, done.fail);
129
+ });
130
+ });
131
+ describe("getQuadPoints", function () {
132
+ let dict, rect;
133
+ beforeEach(function (done) {
134
+ dict = new _primitives.Dict();
135
+ rect = [];
136
+ done();
137
+ });
138
+ afterEach(function () {
139
+ dict = null;
140
+ rect = null;
141
+ });
142
+ it("should ignore missing quadpoints", function () {
143
+ expect((0, _annotation.getQuadPoints)(dict, rect)).toEqual(null);
144
+ });
145
+ it("should ignore non-array values", function () {
146
+ dict.set("QuadPoints", "foo");
147
+ expect((0, _annotation.getQuadPoints)(dict, rect)).toEqual(null);
148
+ });
149
+ it("should ignore arrays where the length is not a multiple of eight", function () {
150
+ dict.set("QuadPoints", [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
151
+ expect((0, _annotation.getQuadPoints)(dict, rect)).toEqual(null);
152
+ });
153
+ it("should ignore quadpoints if one coordinate lies outside the rectangle", function () {
154
+ rect = [10, 10, 20, 20];
155
+ const inputs = [[11, 11, 12, 12, 9, 13, 14, 14], [11, 11, 12, 12, 13, 9, 14, 14], [11, 11, 12, 12, 21, 13, 14, 14], [11, 11, 12, 12, 13, 21, 14, 14]];
156
+
157
+ for (const input of inputs) {
158
+ dict.set("QuadPoints", input);
159
+ expect((0, _annotation.getQuadPoints)(dict, rect)).toEqual(null);
160
+ }
161
+ });
162
+ it("should process valid quadpoints arrays", function () {
163
+ rect = [10, 10, 20, 20];
164
+ dict.set("QuadPoints", [11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16, 16, 17, 17, 18, 18]);
165
+ expect((0, _annotation.getQuadPoints)(dict, rect)).toEqual([[{
166
+ x: 11,
167
+ y: 11
168
+ }, {
169
+ x: 12,
170
+ y: 12
171
+ }, {
172
+ x: 13,
173
+ y: 13
174
+ }, {
175
+ x: 14,
176
+ y: 14
177
+ }], [{
178
+ x: 15,
179
+ y: 15
180
+ }, {
181
+ x: 16,
182
+ y: 16
183
+ }, {
184
+ x: 17,
185
+ y: 17
186
+ }, {
187
+ x: 18,
188
+ y: 18
189
+ }]]);
190
+ });
191
+ });
192
+ describe("Annotation", function () {
193
+ let dict, ref;
194
+ beforeAll(function (done) {
195
+ dict = new _primitives.Dict();
196
+ ref = _primitives.Ref.get(1, 0);
197
+ done();
198
+ });
199
+ afterAll(function () {
200
+ dict = ref = null;
201
+ });
202
+ it("should set and get valid contents", function () {
203
+ const annotation = new _annotation.Annotation({
204
+ dict,
205
+ ref
206
+ });
207
+ annotation.setContents("Foo bar baz");
208
+ expect(annotation.contents).toEqual("Foo bar baz");
209
+ });
210
+ it("should not set and get invalid contents", function () {
211
+ const annotation = new _annotation.Annotation({
212
+ dict,
213
+ ref
214
+ });
215
+ annotation.setContents(undefined);
216
+ expect(annotation.contents).toEqual("");
217
+ });
218
+ it("should set and get a valid modification date", function () {
219
+ const annotation = new _annotation.Annotation({
220
+ dict,
221
+ ref
222
+ });
223
+ annotation.setModificationDate("D:20190422");
224
+ expect(annotation.modificationDate).toEqual("D:20190422");
225
+ });
226
+ it("should not set and get an invalid modification date", function () {
227
+ const annotation = new _annotation.Annotation({
228
+ dict,
229
+ ref
230
+ });
231
+ annotation.setModificationDate(undefined);
232
+ expect(annotation.modificationDate).toEqual(null);
233
+ });
234
+ it("should set and get flags", function () {
235
+ const annotation = new _annotation.Annotation({
236
+ dict,
237
+ ref
238
+ });
239
+ annotation.setFlags(13);
240
+ expect(annotation.hasFlag(_util.AnnotationFlag.INVISIBLE)).toEqual(true);
241
+ expect(annotation.hasFlag(_util.AnnotationFlag.NOZOOM)).toEqual(true);
242
+ expect(annotation.hasFlag(_util.AnnotationFlag.PRINT)).toEqual(true);
243
+ expect(annotation.hasFlag(_util.AnnotationFlag.READONLY)).toEqual(false);
244
+ });
245
+ it("should be viewable and not printable by default", function () {
246
+ const annotation = new _annotation.Annotation({
247
+ dict,
248
+ ref
249
+ });
250
+ expect(annotation.viewable).toEqual(true);
251
+ expect(annotation.printable).toEqual(false);
252
+ });
253
+ it("should set and get a valid rectangle", function () {
254
+ const annotation = new _annotation.Annotation({
255
+ dict,
256
+ ref
257
+ });
258
+ annotation.setRectangle([117, 694, 164.298, 720]);
259
+ expect(annotation.rectangle).toEqual([117, 694, 164.298, 720]);
260
+ });
261
+ it("should not set and get an invalid rectangle", function () {
262
+ const annotation = new _annotation.Annotation({
263
+ dict,
264
+ ref
265
+ });
266
+ annotation.setRectangle([117, 694, 164.298]);
267
+ expect(annotation.rectangle).toEqual([0, 0, 0, 0]);
268
+ });
269
+ it("should reject a color if it is not an array", function () {
270
+ const annotation = new _annotation.Annotation({
271
+ dict,
272
+ ref
273
+ });
274
+ annotation.setColor("red");
275
+ expect(annotation.color).toEqual(new Uint8ClampedArray([0, 0, 0]));
276
+ });
277
+ it("should set and get a transparent color", function () {
278
+ const annotation = new _annotation.Annotation({
279
+ dict,
280
+ ref
281
+ });
282
+ annotation.setColor([]);
283
+ expect(annotation.color).toEqual(null);
284
+ });
285
+ it("should set and get a grayscale color", function () {
286
+ const annotation = new _annotation.Annotation({
287
+ dict,
288
+ ref
289
+ });
290
+ annotation.setColor([0.4]);
291
+ expect(annotation.color).toEqual(new Uint8ClampedArray([102, 102, 102]));
292
+ });
293
+ it("should set and get an RGB color", function () {
294
+ const annotation = new _annotation.Annotation({
295
+ dict,
296
+ ref
297
+ });
298
+ annotation.setColor([0, 0, 1]);
299
+ expect(annotation.color).toEqual(new Uint8ClampedArray([0, 0, 255]));
300
+ });
301
+ it("should set and get a CMYK color", function () {
302
+ const annotation = new _annotation.Annotation({
303
+ dict,
304
+ ref
305
+ });
306
+ annotation.setColor([0.1, 0.92, 0.84, 0.02]);
307
+ expect(annotation.color).toEqual(new Uint8ClampedArray([234, 59, 48]));
308
+ });
309
+ it("should not set and get an invalid color", function () {
310
+ const annotation = new _annotation.Annotation({
311
+ dict,
312
+ ref
313
+ });
314
+ annotation.setColor([0.4, 0.6]);
315
+ expect(annotation.color).toEqual(new Uint8ClampedArray([0, 0, 0]));
316
+ });
317
+ });
318
+ describe("AnnotationBorderStyle", function () {
319
+ it("should set and get a valid width", function () {
320
+ const borderStyle = new _annotation.AnnotationBorderStyle();
321
+ borderStyle.setWidth(3);
322
+ expect(borderStyle.width).toEqual(3);
323
+ });
324
+ it("should not set and get an invalid width", function () {
325
+ const borderStyle = new _annotation.AnnotationBorderStyle();
326
+ borderStyle.setWidth("three");
327
+ expect(borderStyle.width).toEqual(1);
328
+ });
329
+ it("should set the width to zero, when the input is a `Name` (issue 10385)", function () {
330
+ const borderStyleZero = new _annotation.AnnotationBorderStyle();
331
+ borderStyleZero.setWidth(_primitives.Name.get("0"));
332
+ const borderStyleFive = new _annotation.AnnotationBorderStyle();
333
+ borderStyleFive.setWidth(_primitives.Name.get("5"));
334
+ expect(borderStyleZero.width).toEqual(0);
335
+ expect(borderStyleFive.width).toEqual(0);
336
+ });
337
+ it("should set and get a valid style", function () {
338
+ const borderStyle = new _annotation.AnnotationBorderStyle();
339
+ borderStyle.setStyle(_primitives.Name.get("D"));
340
+ expect(borderStyle.style).toEqual(_util.AnnotationBorderStyleType.DASHED);
341
+ });
342
+ it("should not set and get an invalid style", function () {
343
+ const borderStyle = new _annotation.AnnotationBorderStyle();
344
+ borderStyle.setStyle("Dashed");
345
+ expect(borderStyle.style).toEqual(_util.AnnotationBorderStyleType.SOLID);
346
+ });
347
+ it("should set and get a valid dash array", function () {
348
+ const borderStyle = new _annotation.AnnotationBorderStyle();
349
+ borderStyle.setDashArray([1, 2, 3]);
350
+ expect(borderStyle.dashArray).toEqual([1, 2, 3]);
351
+ });
352
+ it("should not set and get an invalid dash array", function () {
353
+ const borderStyle = new _annotation.AnnotationBorderStyle();
354
+ borderStyle.setDashArray([0, 0]);
355
+ expect(borderStyle.dashArray).toEqual([3]);
356
+ });
357
+ it("should set and get a valid horizontal corner radius", function () {
358
+ const borderStyle = new _annotation.AnnotationBorderStyle();
359
+ borderStyle.setHorizontalCornerRadius(3);
360
+ expect(borderStyle.horizontalCornerRadius).toEqual(3);
361
+ });
362
+ it("should not set and get an invalid horizontal corner radius", function () {
363
+ const borderStyle = new _annotation.AnnotationBorderStyle();
364
+ borderStyle.setHorizontalCornerRadius("three");
365
+ expect(borderStyle.horizontalCornerRadius).toEqual(0);
366
+ });
367
+ it("should set and get a valid vertical corner radius", function () {
368
+ const borderStyle = new _annotation.AnnotationBorderStyle();
369
+ borderStyle.setVerticalCornerRadius(3);
370
+ expect(borderStyle.verticalCornerRadius).toEqual(3);
371
+ });
372
+ it("should not set and get an invalid vertical corner radius", function () {
373
+ const borderStyle = new _annotation.AnnotationBorderStyle();
374
+ borderStyle.setVerticalCornerRadius("three");
375
+ expect(borderStyle.verticalCornerRadius).toEqual(0);
376
+ });
377
+ });
378
+ describe("MarkupAnnotation", function () {
379
+ let dict, ref;
380
+ beforeAll(function (done) {
381
+ dict = new _primitives.Dict();
382
+ ref = _primitives.Ref.get(1, 0);
383
+ done();
384
+ });
385
+ afterAll(function () {
386
+ dict = ref = null;
387
+ });
388
+ it("should set and get a valid creation date", function () {
389
+ const markupAnnotation = new _annotation.MarkupAnnotation({
390
+ dict,
391
+ ref
392
+ });
393
+ markupAnnotation.setCreationDate("D:20190422");
394
+ expect(markupAnnotation.creationDate).toEqual("D:20190422");
395
+ });
396
+ it("should not set and get an invalid creation date", function () {
397
+ const markupAnnotation = new _annotation.MarkupAnnotation({
398
+ dict,
399
+ ref
400
+ });
401
+ markupAnnotation.setCreationDate(undefined);
402
+ expect(markupAnnotation.creationDate).toEqual(null);
403
+ });
404
+ it("should not parse IRT/RT when not defined", function (done) {
405
+ dict.set("Type", _primitives.Name.get("Annot"));
406
+ dict.set("Subtype", _primitives.Name.get("Text"));
407
+ const xref = new _test_utils.XRefMock([{
408
+ ref,
409
+ data: dict
410
+ }]);
411
+
412
+ _annotation.AnnotationFactory.create(xref, ref, pdfManagerMock, idFactoryMock).then(({
413
+ data
414
+ }) => {
415
+ expect(data.inReplyTo).toBeUndefined();
416
+ expect(data.replyType).toBeUndefined();
417
+ done();
418
+ }, done.fail);
419
+ });
420
+ it("should parse IRT and set default RT when not defined.", function (done) {
421
+ const annotationRef = _primitives.Ref.get(819, 0);
422
+
423
+ const annotationDict = new _primitives.Dict();
424
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
425
+ annotationDict.set("Subtype", _primitives.Name.get("Text"));
426
+
427
+ const replyRef = _primitives.Ref.get(820, 0);
428
+
429
+ const replyDict = new _primitives.Dict();
430
+ replyDict.set("Type", _primitives.Name.get("Annot"));
431
+ replyDict.set("Subtype", _primitives.Name.get("Text"));
432
+ replyDict.set("IRT", annotationRef);
433
+ const xref = new _test_utils.XRefMock([{
434
+ ref: annotationRef,
435
+ data: annotationDict
436
+ }, {
437
+ ref: replyRef,
438
+ data: replyDict
439
+ }]);
440
+ annotationDict.assignXref(xref);
441
+ replyDict.assignXref(xref);
442
+
443
+ _annotation.AnnotationFactory.create(xref, replyRef, pdfManagerMock, idFactoryMock).then(({
444
+ data
445
+ }) => {
446
+ expect(data.inReplyTo).toEqual(annotationRef.toString());
447
+ expect(data.replyType).toEqual("R");
448
+ done();
449
+ }, done.fail);
450
+ });
451
+ it("should parse IRT/RT for a group type", function (done) {
452
+ const annotationRef = _primitives.Ref.get(819, 0);
453
+
454
+ const annotationDict = new _primitives.Dict();
455
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
456
+ annotationDict.set("Subtype", _primitives.Name.get("Text"));
457
+ annotationDict.set("T", "ParentTitle");
458
+ annotationDict.set("Contents", "ParentText");
459
+ annotationDict.set("CreationDate", "D:20180423");
460
+ annotationDict.set("M", "D:20190423");
461
+ annotationDict.set("C", [0, 0, 1]);
462
+
463
+ const popupRef = _primitives.Ref.get(820, 0);
464
+
465
+ const popupDict = new _primitives.Dict();
466
+ popupDict.set("Type", _primitives.Name.get("Annot"));
467
+ popupDict.set("Subtype", _primitives.Name.get("Popup"));
468
+ popupDict.set("Parent", annotationRef);
469
+ annotationDict.set("Popup", popupRef);
470
+
471
+ const replyRef = _primitives.Ref.get(821, 0);
472
+
473
+ const replyDict = new _primitives.Dict();
474
+ replyDict.set("Type", _primitives.Name.get("Annot"));
475
+ replyDict.set("Subtype", _primitives.Name.get("Text"));
476
+ replyDict.set("IRT", annotationRef);
477
+ replyDict.set("RT", _primitives.Name.get("Group"));
478
+ replyDict.set("T", "ReplyTitle");
479
+ replyDict.set("Contents", "ReplyText");
480
+ replyDict.set("CreationDate", "D:20180523");
481
+ replyDict.set("M", "D:20190523");
482
+ replyDict.set("C", [0.4]);
483
+ const xref = new _test_utils.XRefMock([{
484
+ ref: annotationRef,
485
+ data: annotationDict
486
+ }, {
487
+ ref: popupRef,
488
+ data: popupDict
489
+ }, {
490
+ ref: replyRef,
491
+ data: replyDict
492
+ }]);
493
+ annotationDict.assignXref(xref);
494
+ popupDict.assignXref(xref);
495
+ replyDict.assignXref(xref);
496
+
497
+ _annotation.AnnotationFactory.create(xref, replyRef, pdfManagerMock, idFactoryMock).then(({
498
+ data
499
+ }) => {
500
+ expect(data.inReplyTo).toEqual(annotationRef.toString());
501
+ expect(data.replyType).toEqual("Group");
502
+ expect(data.title).toEqual("ParentTitle");
503
+ expect(data.contents).toEqual("ParentText");
504
+ expect(data.creationDate).toEqual("D:20180423");
505
+ expect(data.modificationDate).toEqual("D:20190423");
506
+ expect(data.color).toEqual(new Uint8ClampedArray([0, 0, 255]));
507
+ expect(data.hasPopup).toEqual(true);
508
+ done();
509
+ }, done.fail);
510
+ });
511
+ it("should parse IRT/RT for a reply type", function (done) {
512
+ const annotationRef = _primitives.Ref.get(819, 0);
513
+
514
+ const annotationDict = new _primitives.Dict();
515
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
516
+ annotationDict.set("Subtype", _primitives.Name.get("Text"));
517
+ annotationDict.set("T", "ParentTitle");
518
+ annotationDict.set("Contents", "ParentText");
519
+ annotationDict.set("CreationDate", "D:20180423");
520
+ annotationDict.set("M", "D:20190423");
521
+ annotationDict.set("C", [0, 0, 1]);
522
+
523
+ const popupRef = _primitives.Ref.get(820, 0);
524
+
525
+ const popupDict = new _primitives.Dict();
526
+ popupDict.set("Type", _primitives.Name.get("Annot"));
527
+ popupDict.set("Subtype", _primitives.Name.get("Popup"));
528
+ popupDict.set("Parent", annotationRef);
529
+ annotationDict.set("Popup", popupRef);
530
+
531
+ const replyRef = _primitives.Ref.get(821, 0);
532
+
533
+ const replyDict = new _primitives.Dict();
534
+ replyDict.set("Type", _primitives.Name.get("Annot"));
535
+ replyDict.set("Subtype", _primitives.Name.get("Text"));
536
+ replyDict.set("IRT", annotationRef);
537
+ replyDict.set("RT", _primitives.Name.get("R"));
538
+ replyDict.set("T", "ReplyTitle");
539
+ replyDict.set("Contents", "ReplyText");
540
+ replyDict.set("CreationDate", "D:20180523");
541
+ replyDict.set("M", "D:20190523");
542
+ replyDict.set("C", [0.4]);
543
+ const xref = new _test_utils.XRefMock([{
544
+ ref: annotationRef,
545
+ data: annotationDict
546
+ }, {
547
+ ref: popupRef,
548
+ data: popupDict
549
+ }, {
550
+ ref: replyRef,
551
+ data: replyDict
552
+ }]);
553
+ annotationDict.assignXref(xref);
554
+ popupDict.assignXref(xref);
555
+ replyDict.assignXref(xref);
556
+
557
+ _annotation.AnnotationFactory.create(xref, replyRef, pdfManagerMock, idFactoryMock).then(({
558
+ data
559
+ }) => {
560
+ expect(data.inReplyTo).toEqual(annotationRef.toString());
561
+ expect(data.replyType).toEqual("R");
562
+ expect(data.title).toEqual("ReplyTitle");
563
+ expect(data.contents).toEqual("ReplyText");
564
+ expect(data.creationDate).toEqual("D:20180523");
565
+ expect(data.modificationDate).toEqual("D:20190523");
566
+ expect(data.color).toEqual(new Uint8ClampedArray([102, 102, 102]));
567
+ expect(data.hasPopup).toEqual(false);
568
+ done();
569
+ }, done.fail);
570
+ });
571
+ });
572
+ describe("TextAnnotation", function () {
573
+ it("should not parse state model and state when not defined", function (done) {
574
+ const annotationRef = _primitives.Ref.get(819, 0);
575
+
576
+ const annotationDict = new _primitives.Dict();
577
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
578
+ annotationDict.set("Subtype", _primitives.Name.get("Text"));
579
+ annotationDict.set("Contents", "TestText");
580
+
581
+ const replyRef = _primitives.Ref.get(820, 0);
582
+
583
+ const replyDict = new _primitives.Dict();
584
+ replyDict.set("Type", _primitives.Name.get("Annot"));
585
+ replyDict.set("Subtype", _primitives.Name.get("Text"));
586
+ replyDict.set("IRT", annotationRef);
587
+ replyDict.set("RT", _primitives.Name.get("R"));
588
+ replyDict.set("Contents", "ReplyText");
589
+ const xref = new _test_utils.XRefMock([{
590
+ ref: annotationRef,
591
+ data: annotationDict
592
+ }, {
593
+ ref: replyRef,
594
+ data: replyDict
595
+ }]);
596
+ annotationDict.assignXref(xref);
597
+ replyDict.assignXref(xref);
598
+
599
+ _annotation.AnnotationFactory.create(xref, replyRef, pdfManagerMock, idFactoryMock).then(({
600
+ data
601
+ }) => {
602
+ expect(data.stateModel).toBeNull();
603
+ expect(data.state).toBeNull();
604
+ done();
605
+ }, done.fail);
606
+ });
607
+ it("should correctly parse state model and state when defined", function (done) {
608
+ const annotationRef = _primitives.Ref.get(819, 0);
609
+
610
+ const annotationDict = new _primitives.Dict();
611
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
612
+ annotationDict.set("Subtype", _primitives.Name.get("Text"));
613
+
614
+ const replyRef = _primitives.Ref.get(820, 0);
615
+
616
+ const replyDict = new _primitives.Dict();
617
+ replyDict.set("Type", _primitives.Name.get("Annot"));
618
+ replyDict.set("Subtype", _primitives.Name.get("Text"));
619
+ replyDict.set("IRT", annotationRef);
620
+ replyDict.set("RT", _primitives.Name.get("R"));
621
+ replyDict.set("StateModel", "Review");
622
+ replyDict.set("State", "Rejected");
623
+ const xref = new _test_utils.XRefMock([{
624
+ ref: annotationRef,
625
+ data: annotationDict
626
+ }, {
627
+ ref: replyRef,
628
+ data: replyDict
629
+ }]);
630
+ annotationDict.assignXref(xref);
631
+ replyDict.assignXref(xref);
632
+
633
+ _annotation.AnnotationFactory.create(xref, replyRef, pdfManagerMock, idFactoryMock).then(({
634
+ data
635
+ }) => {
636
+ expect(data.stateModel).toEqual("Review");
637
+ expect(data.state).toEqual("Rejected");
638
+ done();
639
+ }, done.fail);
640
+ });
641
+ });
642
+ describe("LinkAnnotation", function () {
643
+ it("should correctly parse a URI action", function (done) {
644
+ const actionDict = new _primitives.Dict();
645
+ actionDict.set("Type", _primitives.Name.get("Action"));
646
+ actionDict.set("S", _primitives.Name.get("URI"));
647
+ actionDict.set("URI", "http://www.ctan.org/tex-archive/info/lshort");
648
+ const annotationDict = new _primitives.Dict();
649
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
650
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
651
+ annotationDict.set("A", actionDict);
652
+
653
+ const annotationRef = _primitives.Ref.get(820, 0);
654
+
655
+ const xref = new _test_utils.XRefMock([{
656
+ ref: annotationRef,
657
+ data: annotationDict
658
+ }]);
659
+
660
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
661
+ data
662
+ }) => {
663
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
664
+ expect(data.url).toEqual("http://www.ctan.org/tex-archive/info/lshort");
665
+ expect(data.unsafeUrl).toEqual("http://www.ctan.org/tex-archive/info/lshort");
666
+ expect(data.dest).toBeUndefined();
667
+ done();
668
+ }, done.fail);
669
+ });
670
+ it("should correctly parse a URI action, where the URI entry " + "is missing a protocol", function (done) {
671
+ const actionDict = new _primitives.Dict();
672
+ actionDict.set("Type", _primitives.Name.get("Action"));
673
+ actionDict.set("S", _primitives.Name.get("URI"));
674
+ actionDict.set("URI", "www.hmrc.gov.uk");
675
+ const annotationDict = new _primitives.Dict();
676
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
677
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
678
+ annotationDict.set("A", actionDict);
679
+
680
+ const annotationRef = _primitives.Ref.get(353, 0);
681
+
682
+ const xref = new _test_utils.XRefMock([{
683
+ ref: annotationRef,
684
+ data: annotationDict
685
+ }]);
686
+
687
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
688
+ data
689
+ }) => {
690
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
691
+ expect(data.url).toEqual("http://www.hmrc.gov.uk/");
692
+ expect(data.unsafeUrl).toEqual("http://www.hmrc.gov.uk");
693
+ expect(data.dest).toBeUndefined();
694
+ done();
695
+ }, done.fail);
696
+ });
697
+ it("should correctly parse a URI action, where the URI entry " + "has an incorrect encoding (bug 1122280)", function (done) {
698
+ const actionStream = new _stream.StringStream("<<\n" + "/Type /Action\n" + "/S /URI\n" + "/URI (http://www.example.com/\\303\\274\\303\\266\\303\\244)\n" + ">>\n");
699
+ const parser = new _parser.Parser({
700
+ lexer: new _parser.Lexer(actionStream),
701
+ xref: null
702
+ });
703
+ const actionDict = parser.getObj();
704
+ const annotationDict = new _primitives.Dict();
705
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
706
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
707
+ annotationDict.set("A", actionDict);
708
+
709
+ const annotationRef = _primitives.Ref.get(8, 0);
710
+
711
+ const xref = new _test_utils.XRefMock([{
712
+ ref: annotationRef,
713
+ data: annotationDict
714
+ }]);
715
+
716
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
717
+ data
718
+ }) => {
719
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
720
+ expect(data.url).toEqual(new URL((0, _util.stringToUTF8String)("http://www.example.com/\xC3\xBC\xC3\xB6\xC3\xA4")).href);
721
+ expect(data.unsafeUrl).toEqual((0, _util.stringToUTF8String)("http://www.example.com/\xC3\xBC\xC3\xB6\xC3\xA4"));
722
+ expect(data.dest).toBeUndefined();
723
+ done();
724
+ }, done.fail);
725
+ });
726
+ it("should correctly parse a GoTo action", function (done) {
727
+ const actionDict = new _primitives.Dict();
728
+ actionDict.set("Type", _primitives.Name.get("Action"));
729
+ actionDict.set("S", _primitives.Name.get("GoTo"));
730
+ actionDict.set("D", "page.157");
731
+ const annotationDict = new _primitives.Dict();
732
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
733
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
734
+ annotationDict.set("A", actionDict);
735
+
736
+ const annotationRef = _primitives.Ref.get(798, 0);
737
+
738
+ const xref = new _test_utils.XRefMock([{
739
+ ref: annotationRef,
740
+ data: annotationDict
741
+ }]);
742
+
743
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
744
+ data
745
+ }) => {
746
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
747
+ expect(data.url).toBeUndefined();
748
+ expect(data.unsafeUrl).toBeUndefined();
749
+ expect(data.dest).toEqual("page.157");
750
+ done();
751
+ }, done.fail);
752
+ });
753
+ it("should correctly parse a GoToR action, where the FileSpec entry " + "is a string containing a relative URL", function (done) {
754
+ const actionDict = new _primitives.Dict();
755
+ actionDict.set("Type", _primitives.Name.get("Action"));
756
+ actionDict.set("S", _primitives.Name.get("GoToR"));
757
+ actionDict.set("F", "../../0013/001346/134685E.pdf");
758
+ actionDict.set("D", "4.3");
759
+ actionDict.set("NewWindow", true);
760
+ const annotationDict = new _primitives.Dict();
761
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
762
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
763
+ annotationDict.set("A", actionDict);
764
+
765
+ const annotationRef = _primitives.Ref.get(489, 0);
766
+
767
+ const xref = new _test_utils.XRefMock([{
768
+ ref: annotationRef,
769
+ data: annotationDict
770
+ }]);
771
+
772
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
773
+ data
774
+ }) => {
775
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
776
+ expect(data.url).toBeUndefined();
777
+ expect(data.unsafeUrl).toEqual("../../0013/001346/134685E.pdf#4.3");
778
+ expect(data.dest).toBeUndefined();
779
+ expect(data.newWindow).toEqual(true);
780
+ done();
781
+ }, done.fail);
782
+ });
783
+ it("should correctly parse a GoToR action, containing a relative URL, " + 'with the "docBaseUrl" parameter specified', function (done) {
784
+ const actionDict = new _primitives.Dict();
785
+ actionDict.set("Type", _primitives.Name.get("Action"));
786
+ actionDict.set("S", _primitives.Name.get("GoToR"));
787
+ actionDict.set("F", "../../0013/001346/134685E.pdf");
788
+ actionDict.set("D", "4.3");
789
+ const annotationDict = new _primitives.Dict();
790
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
791
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
792
+ annotationDict.set("A", actionDict);
793
+
794
+ const annotationRef = _primitives.Ref.get(489, 0);
795
+
796
+ const xref = new _test_utils.XRefMock([{
797
+ ref: annotationRef,
798
+ data: annotationDict
799
+ }]);
800
+ const pdfManager = new PDFManagerMock({
801
+ docBaseUrl: "http://www.example.com/test/pdfs/qwerty.pdf"
802
+ });
803
+
804
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManager, idFactoryMock).then(({
805
+ data
806
+ }) => {
807
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
808
+ expect(data.url).toEqual("http://www.example.com/0013/001346/134685E.pdf#4.3");
809
+ expect(data.unsafeUrl).toEqual("../../0013/001346/134685E.pdf#4.3");
810
+ expect(data.dest).toBeUndefined();
811
+ done();
812
+ }, done.fail);
813
+ });
814
+ it("should correctly parse a GoToR action, with named destination", function (done) {
815
+ const actionDict = new _primitives.Dict();
816
+ actionDict.set("Type", _primitives.Name.get("Action"));
817
+ actionDict.set("S", _primitives.Name.get("GoToR"));
818
+ actionDict.set("F", "http://www.example.com/test.pdf");
819
+ actionDict.set("D", "15");
820
+ const annotationDict = new _primitives.Dict();
821
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
822
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
823
+ annotationDict.set("A", actionDict);
824
+
825
+ const annotationRef = _primitives.Ref.get(495, 0);
826
+
827
+ const xref = new _test_utils.XRefMock([{
828
+ ref: annotationRef,
829
+ data: annotationDict
830
+ }]);
831
+
832
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
833
+ data
834
+ }) => {
835
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
836
+ expect(data.url).toEqual("http://www.example.com/test.pdf#15");
837
+ expect(data.unsafeUrl).toEqual("http://www.example.com/test.pdf#15");
838
+ expect(data.dest).toBeUndefined();
839
+ expect(data.newWindow).toBeFalsy();
840
+ done();
841
+ }, done.fail);
842
+ });
843
+ it("should correctly parse a GoToR action, with explicit destination array", function (done) {
844
+ const actionDict = new _primitives.Dict();
845
+ actionDict.set("Type", _primitives.Name.get("Action"));
846
+ actionDict.set("S", _primitives.Name.get("GoToR"));
847
+ actionDict.set("F", "http://www.example.com/test.pdf");
848
+ actionDict.set("D", [14, _primitives.Name.get("XYZ"), null, 298.043, null]);
849
+ const annotationDict = new _primitives.Dict();
850
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
851
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
852
+ annotationDict.set("A", actionDict);
853
+
854
+ const annotationRef = _primitives.Ref.get(489, 0);
855
+
856
+ const xref = new _test_utils.XRefMock([{
857
+ ref: annotationRef,
858
+ data: annotationDict
859
+ }]);
860
+
861
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
862
+ data
863
+ }) => {
864
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
865
+ expect(data.url).toEqual(new URL("http://www.example.com/test.pdf#" + '[14,{"name":"XYZ"},null,298.043,null]').href);
866
+ expect(data.unsafeUrl).toEqual("http://www.example.com/test.pdf#" + '[14,{"name":"XYZ"},null,298.043,null]');
867
+ expect(data.dest).toBeUndefined();
868
+ expect(data.newWindow).toBeFalsy();
869
+ done();
870
+ }, done.fail);
871
+ });
872
+ it("should correctly parse a Launch action, where the FileSpec dict " + 'contains a relative URL, with the "docBaseUrl" parameter specified', function (done) {
873
+ const fileSpecDict = new _primitives.Dict();
874
+ fileSpecDict.set("Type", _primitives.Name.get("FileSpec"));
875
+ fileSpecDict.set("F", "Part II/Part II.pdf");
876
+ fileSpecDict.set("UF", "Part II/Part II.pdf");
877
+ const actionDict = new _primitives.Dict();
878
+ actionDict.set("Type", _primitives.Name.get("Action"));
879
+ actionDict.set("S", _primitives.Name.get("Launch"));
880
+ actionDict.set("F", fileSpecDict);
881
+ actionDict.set("NewWindow", true);
882
+ const annotationDict = new _primitives.Dict();
883
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
884
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
885
+ annotationDict.set("A", actionDict);
886
+
887
+ const annotationRef = _primitives.Ref.get(88, 0);
888
+
889
+ const xref = new _test_utils.XRefMock([{
890
+ ref: annotationRef,
891
+ data: annotationDict
892
+ }]);
893
+ const pdfManager = new PDFManagerMock({
894
+ docBaseUrl: "http://www.example.com/test/pdfs/qwerty.pdf"
895
+ });
896
+
897
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManager, idFactoryMock).then(({
898
+ data
899
+ }) => {
900
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
901
+ expect(data.url).toEqual(new URL("http://www.example.com/test/pdfs/Part II/Part II.pdf").href);
902
+ expect(data.unsafeUrl).toEqual("Part II/Part II.pdf");
903
+ expect(data.dest).toBeUndefined();
904
+ expect(data.newWindow).toEqual(true);
905
+ done();
906
+ }, done.fail);
907
+ });
908
+ it("should recover valid URLs from JavaScript actions having certain " + "white-listed formats", function (done) {
909
+ function checkJsAction(params) {
910
+ const jsEntry = params.jsEntry;
911
+ const expectedUrl = params.expectedUrl;
912
+ const expectedUnsafeUrl = params.expectedUnsafeUrl;
913
+ const expectedNewWindow = params.expectedNewWindow;
914
+ const actionDict = new _primitives.Dict();
915
+ actionDict.set("Type", _primitives.Name.get("Action"));
916
+ actionDict.set("S", _primitives.Name.get("JavaScript"));
917
+ actionDict.set("JS", jsEntry);
918
+ const annotationDict = new _primitives.Dict();
919
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
920
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
921
+ annotationDict.set("A", actionDict);
922
+
923
+ const annotationRef = _primitives.Ref.get(46, 0);
924
+
925
+ const xref = new _test_utils.XRefMock([{
926
+ ref: annotationRef,
927
+ data: annotationDict
928
+ }]);
929
+ return _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
930
+ data
931
+ }) => {
932
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
933
+ expect(data.url).toEqual(expectedUrl);
934
+ expect(data.unsafeUrl).toEqual(expectedUnsafeUrl);
935
+ expect(data.dest).toBeUndefined();
936
+ expect(data.newWindow).toEqual(expectedNewWindow);
937
+ });
938
+ }
939
+
940
+ const annotation1 = checkJsAction({
941
+ jsEntry: 'function someFun() { return "qwerty"; } someFun();',
942
+ expectedUrl: undefined,
943
+ expectedUnsafeUrl: undefined,
944
+ expectedNewWindow: undefined
945
+ });
946
+ const annotation2 = checkJsAction({
947
+ jsEntry: "window.open('http://www.example.com/test.pdf')",
948
+ expectedUrl: new URL("http://www.example.com/test.pdf").href,
949
+ expectedUnsafeUrl: "http://www.example.com/test.pdf",
950
+ expectedNewWindow: undefined
951
+ });
952
+ const annotation3 = checkJsAction({
953
+ jsEntry: new _stream.StringStream('app.launchURL("http://www.example.com/test.pdf", true)'),
954
+ expectedUrl: new URL("http://www.example.com/test.pdf").href,
955
+ expectedUnsafeUrl: "http://www.example.com/test.pdf",
956
+ expectedNewWindow: true
957
+ });
958
+ Promise.all([annotation1, annotation2, annotation3]).then(done, done.fail);
959
+ });
960
+ it("should correctly parse a Named action", function (done) {
961
+ const actionDict = new _primitives.Dict();
962
+ actionDict.set("Type", _primitives.Name.get("Action"));
963
+ actionDict.set("S", _primitives.Name.get("Named"));
964
+ actionDict.set("N", _primitives.Name.get("GoToPage"));
965
+ const annotationDict = new _primitives.Dict();
966
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
967
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
968
+ annotationDict.set("A", actionDict);
969
+
970
+ const annotationRef = _primitives.Ref.get(12, 0);
971
+
972
+ const xref = new _test_utils.XRefMock([{
973
+ ref: annotationRef,
974
+ data: annotationDict
975
+ }]);
976
+
977
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
978
+ data
979
+ }) => {
980
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
981
+ expect(data.url).toBeUndefined();
982
+ expect(data.unsafeUrl).toBeUndefined();
983
+ expect(data.action).toEqual("GoToPage");
984
+ done();
985
+ }, done.fail);
986
+ });
987
+ it("should correctly parse a simple Dest", function (done) {
988
+ const annotationDict = new _primitives.Dict();
989
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
990
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
991
+ annotationDict.set("Dest", _primitives.Name.get("LI0"));
992
+
993
+ const annotationRef = _primitives.Ref.get(583, 0);
994
+
995
+ const xref = new _test_utils.XRefMock([{
996
+ ref: annotationRef,
997
+ data: annotationDict
998
+ }]);
999
+
1000
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
1001
+ data
1002
+ }) => {
1003
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
1004
+ expect(data.url).toBeUndefined();
1005
+ expect(data.unsafeUrl).toBeUndefined();
1006
+ expect(data.dest).toEqual("LI0");
1007
+ done();
1008
+ }, done.fail);
1009
+ });
1010
+ it("should correctly parse a simple Dest, with explicit destination array", function (done) {
1011
+ const annotationDict = new _primitives.Dict();
1012
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
1013
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
1014
+ annotationDict.set("Dest", [_primitives.Ref.get(17, 0), _primitives.Name.get("XYZ"), 0, 841.89, null]);
1015
+
1016
+ const annotationRef = _primitives.Ref.get(10, 0);
1017
+
1018
+ const xref = new _test_utils.XRefMock([{
1019
+ ref: annotationRef,
1020
+ data: annotationDict
1021
+ }]);
1022
+
1023
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
1024
+ data
1025
+ }) => {
1026
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
1027
+ expect(data.url).toBeUndefined();
1028
+ expect(data.unsafeUrl).toBeUndefined();
1029
+ expect(data.dest).toEqual([{
1030
+ num: 17,
1031
+ gen: 0
1032
+ }, {
1033
+ name: "XYZ"
1034
+ }, 0, 841.89, null]);
1035
+ done();
1036
+ }, done.fail);
1037
+ });
1038
+ it("should correctly parse a Dest, which violates the specification " + "by containing a dictionary", function (done) {
1039
+ const destDict = new _primitives.Dict();
1040
+ destDict.set("Type", _primitives.Name.get("Action"));
1041
+ destDict.set("S", _primitives.Name.get("GoTo"));
1042
+ destDict.set("D", "page.157");
1043
+ const annotationDict = new _primitives.Dict();
1044
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
1045
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
1046
+ annotationDict.set("Dest", destDict);
1047
+
1048
+ const annotationRef = _primitives.Ref.get(798, 0);
1049
+
1050
+ const xref = new _test_utils.XRefMock([{
1051
+ ref: annotationRef,
1052
+ data: annotationDict
1053
+ }]);
1054
+
1055
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
1056
+ data
1057
+ }) => {
1058
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
1059
+ expect(data.url).toBeUndefined();
1060
+ expect(data.unsafeUrl).toBeUndefined();
1061
+ expect(data.dest).toEqual("page.157");
1062
+ done();
1063
+ }, done.fail);
1064
+ });
1065
+ it("should not set quadpoints if not defined", function (done) {
1066
+ const annotationDict = new _primitives.Dict();
1067
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
1068
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
1069
+
1070
+ const annotationRef = _primitives.Ref.get(121, 0);
1071
+
1072
+ const xref = new _test_utils.XRefMock([{
1073
+ ref: annotationRef,
1074
+ data: annotationDict
1075
+ }]);
1076
+
1077
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
1078
+ data
1079
+ }) => {
1080
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
1081
+ expect(data.quadPoints).toBeUndefined();
1082
+ done();
1083
+ }, done.fail);
1084
+ });
1085
+ it("should set quadpoints if defined", function (done) {
1086
+ const annotationDict = new _primitives.Dict();
1087
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
1088
+ annotationDict.set("Subtype", _primitives.Name.get("Link"));
1089
+ annotationDict.set("Rect", [10, 10, 20, 20]);
1090
+ annotationDict.set("QuadPoints", [11, 11, 12, 12, 13, 13, 14, 14]);
1091
+
1092
+ const annotationRef = _primitives.Ref.get(121, 0);
1093
+
1094
+ const xref = new _test_utils.XRefMock([{
1095
+ ref: annotationRef,
1096
+ data: annotationDict
1097
+ }]);
1098
+
1099
+ _annotation.AnnotationFactory.create(xref, annotationRef, pdfManagerMock, idFactoryMock).then(({
1100
+ data
1101
+ }) => {
1102
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINK);
1103
+ expect(data.quadPoints).toEqual([[{
1104
+ x: 11,
1105
+ y: 11
1106
+ }, {
1107
+ x: 12,
1108
+ y: 12
1109
+ }, {
1110
+ x: 13,
1111
+ y: 13
1112
+ }, {
1113
+ x: 14,
1114
+ y: 14
1115
+ }]]);
1116
+ done();
1117
+ }, done.fail);
1118
+ });
1119
+ });
1120
+ describe("WidgetAnnotation", function () {
1121
+ let widgetDict;
1122
+ beforeEach(function (done) {
1123
+ widgetDict = new _primitives.Dict();
1124
+ widgetDict.set("Type", _primitives.Name.get("Annot"));
1125
+ widgetDict.set("Subtype", _primitives.Name.get("Widget"));
1126
+ done();
1127
+ });
1128
+ afterEach(function () {
1129
+ widgetDict = null;
1130
+ });
1131
+ it("should handle unknown field names", function (done) {
1132
+ const widgetRef = _primitives.Ref.get(20, 0);
1133
+
1134
+ const xref = new _test_utils.XRefMock([{
1135
+ ref: widgetRef,
1136
+ data: widgetDict
1137
+ }]);
1138
+
1139
+ _annotation.AnnotationFactory.create(xref, widgetRef, pdfManagerMock, idFactoryMock).then(({
1140
+ data
1141
+ }) => {
1142
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1143
+ expect(data.fieldName).toEqual("");
1144
+ done();
1145
+ }, done.fail);
1146
+ });
1147
+ it("should construct the field name when there are no ancestors", function (done) {
1148
+ widgetDict.set("T", "foo");
1149
+
1150
+ const widgetRef = _primitives.Ref.get(21, 0);
1151
+
1152
+ const xref = new _test_utils.XRefMock([{
1153
+ ref: widgetRef,
1154
+ data: widgetDict
1155
+ }]);
1156
+
1157
+ _annotation.AnnotationFactory.create(xref, widgetRef, pdfManagerMock, idFactoryMock).then(({
1158
+ data
1159
+ }) => {
1160
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1161
+ expect(data.fieldName).toEqual("foo");
1162
+ done();
1163
+ }, done.fail);
1164
+ });
1165
+ it("should construct the field name when there are ancestors", function (done) {
1166
+ const firstParent = new _primitives.Dict();
1167
+ firstParent.set("T", "foo");
1168
+ const secondParent = new _primitives.Dict();
1169
+ secondParent.set("Parent", firstParent);
1170
+ secondParent.set("T", "bar");
1171
+ widgetDict.set("Parent", secondParent);
1172
+ widgetDict.set("T", "baz");
1173
+
1174
+ const widgetRef = _primitives.Ref.get(22, 0);
1175
+
1176
+ const xref = new _test_utils.XRefMock([{
1177
+ ref: widgetRef,
1178
+ data: widgetDict
1179
+ }]);
1180
+
1181
+ _annotation.AnnotationFactory.create(xref, widgetRef, pdfManagerMock, idFactoryMock).then(({
1182
+ data
1183
+ }) => {
1184
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1185
+ expect(data.fieldName).toEqual("foo.bar.baz");
1186
+ done();
1187
+ }, done.fail);
1188
+ });
1189
+ it("should construct the field name if a parent is not a dictionary " + "(issue 8143)", function (done) {
1190
+ const parentDict = new _primitives.Dict();
1191
+ parentDict.set("Parent", null);
1192
+ parentDict.set("T", "foo");
1193
+ widgetDict.set("Parent", parentDict);
1194
+ widgetDict.set("T", "bar");
1195
+
1196
+ const widgetRef = _primitives.Ref.get(22, 0);
1197
+
1198
+ const xref = new _test_utils.XRefMock([{
1199
+ ref: widgetRef,
1200
+ data: widgetDict
1201
+ }]);
1202
+
1203
+ _annotation.AnnotationFactory.create(xref, widgetRef, pdfManagerMock, idFactoryMock).then(({
1204
+ data
1205
+ }) => {
1206
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1207
+ expect(data.fieldName).toEqual("foo.bar");
1208
+ done();
1209
+ }, done.fail);
1210
+ });
1211
+ });
1212
+ describe("TextWidgetAnnotation", function () {
1213
+ let textWidgetDict;
1214
+ beforeEach(function (done) {
1215
+ textWidgetDict = new _primitives.Dict();
1216
+ textWidgetDict.set("Type", _primitives.Name.get("Annot"));
1217
+ textWidgetDict.set("Subtype", _primitives.Name.get("Widget"));
1218
+ textWidgetDict.set("FT", _primitives.Name.get("Tx"));
1219
+ done();
1220
+ });
1221
+ afterEach(function () {
1222
+ textWidgetDict = null;
1223
+ });
1224
+ it("should handle unknown text alignment, maximum length and flags", function (done) {
1225
+ const textWidgetRef = _primitives.Ref.get(124, 0);
1226
+
1227
+ const xref = new _test_utils.XRefMock([{
1228
+ ref: textWidgetRef,
1229
+ data: textWidgetDict
1230
+ }]);
1231
+
1232
+ _annotation.AnnotationFactory.create(xref, textWidgetRef, pdfManagerMock, idFactoryMock).then(({
1233
+ data
1234
+ }) => {
1235
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1236
+ expect(data.textAlignment).toEqual(null);
1237
+ expect(data.maxLen).toEqual(null);
1238
+ expect(data.readOnly).toEqual(false);
1239
+ expect(data.multiLine).toEqual(false);
1240
+ expect(data.comb).toEqual(false);
1241
+ done();
1242
+ }, done.fail);
1243
+ });
1244
+ it("should not set invalid text alignment, maximum length and flags", function (done) {
1245
+ textWidgetDict.set("Q", "center");
1246
+ textWidgetDict.set("MaxLen", "five");
1247
+ textWidgetDict.set("Ff", "readonly");
1248
+
1249
+ const textWidgetRef = _primitives.Ref.get(43, 0);
1250
+
1251
+ const xref = new _test_utils.XRefMock([{
1252
+ ref: textWidgetRef,
1253
+ data: textWidgetDict
1254
+ }]);
1255
+
1256
+ _annotation.AnnotationFactory.create(xref, textWidgetRef, pdfManagerMock, idFactoryMock).then(({
1257
+ data
1258
+ }) => {
1259
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1260
+ expect(data.textAlignment).toEqual(null);
1261
+ expect(data.maxLen).toEqual(null);
1262
+ expect(data.readOnly).toEqual(false);
1263
+ expect(data.multiLine).toEqual(false);
1264
+ expect(data.comb).toEqual(false);
1265
+ done();
1266
+ }, done.fail);
1267
+ });
1268
+ it("should set valid text alignment, maximum length and flags", function (done) {
1269
+ textWidgetDict.set("Q", 1);
1270
+ textWidgetDict.set("MaxLen", 20);
1271
+ textWidgetDict.set("Ff", _util.AnnotationFieldFlag.READONLY + _util.AnnotationFieldFlag.MULTILINE);
1272
+
1273
+ const textWidgetRef = _primitives.Ref.get(84, 0);
1274
+
1275
+ const xref = new _test_utils.XRefMock([{
1276
+ ref: textWidgetRef,
1277
+ data: textWidgetDict
1278
+ }]);
1279
+
1280
+ _annotation.AnnotationFactory.create(xref, textWidgetRef, pdfManagerMock, idFactoryMock).then(({
1281
+ data
1282
+ }) => {
1283
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1284
+ expect(data.textAlignment).toEqual(1);
1285
+ expect(data.maxLen).toEqual(20);
1286
+ expect(data.readOnly).toEqual(true);
1287
+ expect(data.multiLine).toEqual(true);
1288
+ done();
1289
+ }, done.fail);
1290
+ });
1291
+ it("should reject comb fields without a maximum length", function (done) {
1292
+ textWidgetDict.set("Ff", _util.AnnotationFieldFlag.COMB);
1293
+
1294
+ const textWidgetRef = _primitives.Ref.get(46, 0);
1295
+
1296
+ const xref = new _test_utils.XRefMock([{
1297
+ ref: textWidgetRef,
1298
+ data: textWidgetDict
1299
+ }]);
1300
+
1301
+ _annotation.AnnotationFactory.create(xref, textWidgetRef, pdfManagerMock, idFactoryMock).then(({
1302
+ data
1303
+ }) => {
1304
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1305
+ expect(data.comb).toEqual(false);
1306
+ done();
1307
+ }, done.fail);
1308
+ });
1309
+ it("should accept comb fields with a maximum length", function (done) {
1310
+ textWidgetDict.set("MaxLen", 20);
1311
+ textWidgetDict.set("Ff", _util.AnnotationFieldFlag.COMB);
1312
+
1313
+ const textWidgetRef = _primitives.Ref.get(46, 0);
1314
+
1315
+ const xref = new _test_utils.XRefMock([{
1316
+ ref: textWidgetRef,
1317
+ data: textWidgetDict
1318
+ }]);
1319
+
1320
+ _annotation.AnnotationFactory.create(xref, textWidgetRef, pdfManagerMock, idFactoryMock).then(({
1321
+ data
1322
+ }) => {
1323
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1324
+ expect(data.comb).toEqual(true);
1325
+ done();
1326
+ }, done.fail);
1327
+ });
1328
+ it("should only accept comb fields when the flags are valid", function (done) {
1329
+ const invalidFieldFlags = [_util.AnnotationFieldFlag.MULTILINE, _util.AnnotationFieldFlag.PASSWORD, _util.AnnotationFieldFlag.FILESELECT];
1330
+ let flags = _util.AnnotationFieldFlag.COMB + _util.AnnotationFieldFlag.MULTILINE + _util.AnnotationFieldFlag.PASSWORD + _util.AnnotationFieldFlag.FILESELECT;
1331
+ let promise = Promise.resolve();
1332
+
1333
+ for (let i = 0, ii = invalidFieldFlags.length; i <= ii; i++) {
1334
+ promise = promise.then(() => {
1335
+ textWidgetDict.set("MaxLen", 20);
1336
+ textWidgetDict.set("Ff", flags);
1337
+
1338
+ const textWidgetRef = _primitives.Ref.get(93, 0);
1339
+
1340
+ const xref = new _test_utils.XRefMock([{
1341
+ ref: textWidgetRef,
1342
+ data: textWidgetDict
1343
+ }]);
1344
+ return _annotation.AnnotationFactory.create(xref, textWidgetRef, pdfManagerMock, idFactoryMock).then(({
1345
+ data
1346
+ }) => {
1347
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1348
+ const valid = invalidFieldFlags.length === 0;
1349
+ expect(data.comb).toEqual(valid);
1350
+
1351
+ if (!valid) {
1352
+ flags -= invalidFieldFlags.pop();
1353
+ }
1354
+ });
1355
+ });
1356
+ }
1357
+
1358
+ promise.then(done, done.fail);
1359
+ });
1360
+ });
1361
+ describe("ButtonWidgetAnnotation", function () {
1362
+ let buttonWidgetDict;
1363
+ beforeEach(function (done) {
1364
+ buttonWidgetDict = new _primitives.Dict();
1365
+ buttonWidgetDict.set("Type", _primitives.Name.get("Annot"));
1366
+ buttonWidgetDict.set("Subtype", _primitives.Name.get("Widget"));
1367
+ buttonWidgetDict.set("FT", _primitives.Name.get("Btn"));
1368
+ done();
1369
+ });
1370
+ afterEach(function () {
1371
+ buttonWidgetDict = null;
1372
+ });
1373
+ it("should handle checkboxes with export value", function (done) {
1374
+ buttonWidgetDict.set("V", _primitives.Name.get("1"));
1375
+ const appearanceStatesDict = new _primitives.Dict();
1376
+ const exportValueOptionsDict = new _primitives.Dict();
1377
+ exportValueOptionsDict.set("Off", 0);
1378
+ exportValueOptionsDict.set("Checked", 1);
1379
+ appearanceStatesDict.set("D", exportValueOptionsDict);
1380
+ buttonWidgetDict.set("AP", appearanceStatesDict);
1381
+
1382
+ const buttonWidgetRef = _primitives.Ref.get(124, 0);
1383
+
1384
+ const xref = new _test_utils.XRefMock([{
1385
+ ref: buttonWidgetRef,
1386
+ data: buttonWidgetDict
1387
+ }]);
1388
+
1389
+ _annotation.AnnotationFactory.create(xref, buttonWidgetRef, pdfManagerMock, idFactoryMock).then(({
1390
+ data
1391
+ }) => {
1392
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1393
+ expect(data.checkBox).toEqual(true);
1394
+ expect(data.fieldValue).toEqual("1");
1395
+ expect(data.radioButton).toEqual(false);
1396
+ expect(data.exportValue).toEqual("Checked");
1397
+ done();
1398
+ }, done.fail);
1399
+ });
1400
+ it("should handle checkboxes without export value", function (done) {
1401
+ buttonWidgetDict.set("V", _primitives.Name.get("1"));
1402
+
1403
+ const buttonWidgetRef = _primitives.Ref.get(124, 0);
1404
+
1405
+ const xref = new _test_utils.XRefMock([{
1406
+ ref: buttonWidgetRef,
1407
+ data: buttonWidgetDict
1408
+ }]);
1409
+
1410
+ _annotation.AnnotationFactory.create(xref, buttonWidgetRef, pdfManagerMock, idFactoryMock).then(({
1411
+ data
1412
+ }) => {
1413
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1414
+ expect(data.checkBox).toEqual(true);
1415
+ expect(data.fieldValue).toEqual("1");
1416
+ expect(data.radioButton).toEqual(false);
1417
+ done();
1418
+ }, done.fail);
1419
+ });
1420
+ it("should handle radio buttons with a field value", function (done) {
1421
+ const parentDict = new _primitives.Dict();
1422
+ parentDict.set("V", _primitives.Name.get("1"));
1423
+ const normalAppearanceStateDict = new _primitives.Dict();
1424
+ normalAppearanceStateDict.set("2", null);
1425
+ const appearanceStatesDict = new _primitives.Dict();
1426
+ appearanceStatesDict.set("N", normalAppearanceStateDict);
1427
+ buttonWidgetDict.set("Ff", _util.AnnotationFieldFlag.RADIO);
1428
+ buttonWidgetDict.set("Parent", parentDict);
1429
+ buttonWidgetDict.set("AP", appearanceStatesDict);
1430
+
1431
+ const buttonWidgetRef = _primitives.Ref.get(124, 0);
1432
+
1433
+ const xref = new _test_utils.XRefMock([{
1434
+ ref: buttonWidgetRef,
1435
+ data: buttonWidgetDict
1436
+ }]);
1437
+
1438
+ _annotation.AnnotationFactory.create(xref, buttonWidgetRef, pdfManagerMock, idFactoryMock).then(({
1439
+ data
1440
+ }) => {
1441
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1442
+ expect(data.checkBox).toEqual(false);
1443
+ expect(data.radioButton).toEqual(true);
1444
+ expect(data.fieldValue).toEqual("1");
1445
+ expect(data.buttonValue).toEqual("2");
1446
+ done();
1447
+ }, done.fail);
1448
+ });
1449
+ it("should handle radio buttons without a field value", function (done) {
1450
+ const normalAppearanceStateDict = new _primitives.Dict();
1451
+ normalAppearanceStateDict.set("2", null);
1452
+ const appearanceStatesDict = new _primitives.Dict();
1453
+ appearanceStatesDict.set("N", normalAppearanceStateDict);
1454
+ buttonWidgetDict.set("Ff", _util.AnnotationFieldFlag.RADIO);
1455
+ buttonWidgetDict.set("AP", appearanceStatesDict);
1456
+
1457
+ const buttonWidgetRef = _primitives.Ref.get(124, 0);
1458
+
1459
+ const xref = new _test_utils.XRefMock([{
1460
+ ref: buttonWidgetRef,
1461
+ data: buttonWidgetDict
1462
+ }]);
1463
+
1464
+ _annotation.AnnotationFactory.create(xref, buttonWidgetRef, pdfManagerMock, idFactoryMock).then(({
1465
+ data
1466
+ }) => {
1467
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1468
+ expect(data.checkBox).toEqual(false);
1469
+ expect(data.radioButton).toEqual(true);
1470
+ expect(data.fieldValue).toEqual(null);
1471
+ expect(data.buttonValue).toEqual("2");
1472
+ done();
1473
+ }, done.fail);
1474
+ });
1475
+ });
1476
+ describe("ChoiceWidgetAnnotation", function () {
1477
+ let choiceWidgetDict;
1478
+ beforeEach(function (done) {
1479
+ choiceWidgetDict = new _primitives.Dict();
1480
+ choiceWidgetDict.set("Type", _primitives.Name.get("Annot"));
1481
+ choiceWidgetDict.set("Subtype", _primitives.Name.get("Widget"));
1482
+ choiceWidgetDict.set("FT", _primitives.Name.get("Ch"));
1483
+ done();
1484
+ });
1485
+ afterEach(function () {
1486
+ choiceWidgetDict = null;
1487
+ });
1488
+ it("should handle missing option arrays", function (done) {
1489
+ const choiceWidgetRef = _primitives.Ref.get(122, 0);
1490
+
1491
+ const xref = new _test_utils.XRefMock([{
1492
+ ref: choiceWidgetRef,
1493
+ data: choiceWidgetDict
1494
+ }]);
1495
+
1496
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1497
+ data
1498
+ }) => {
1499
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1500
+ expect(data.options).toEqual([]);
1501
+ done();
1502
+ }, done.fail);
1503
+ });
1504
+ it("should handle option arrays with array elements", function (done) {
1505
+ const optionBarRef = _primitives.Ref.get(20, 0);
1506
+
1507
+ const optionBarStr = "Bar";
1508
+
1509
+ const optionOneRef = _primitives.Ref.get(10, 0);
1510
+
1511
+ const optionOneArr = ["bar_export", optionBarRef];
1512
+ const options = [["foo_export", "Foo"], optionOneRef];
1513
+ const expected = [{
1514
+ exportValue: "foo_export",
1515
+ displayValue: "Foo"
1516
+ }, {
1517
+ exportValue: "bar_export",
1518
+ displayValue: "Bar"
1519
+ }];
1520
+ choiceWidgetDict.set("Opt", options);
1521
+
1522
+ const choiceWidgetRef = _primitives.Ref.get(123, 0);
1523
+
1524
+ const xref = new _test_utils.XRefMock([{
1525
+ ref: choiceWidgetRef,
1526
+ data: choiceWidgetDict
1527
+ }, {
1528
+ ref: optionBarRef,
1529
+ data: optionBarStr
1530
+ }, {
1531
+ ref: optionOneRef,
1532
+ data: optionOneArr
1533
+ }]);
1534
+
1535
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1536
+ data
1537
+ }) => {
1538
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1539
+ expect(data.options).toEqual(expected);
1540
+ done();
1541
+ }, done.fail);
1542
+ });
1543
+ it("should handle option arrays with string elements", function (done) {
1544
+ const optionBarRef = _primitives.Ref.get(10, 0);
1545
+
1546
+ const optionBarStr = "Bar";
1547
+ const options = ["Foo", optionBarRef];
1548
+ const expected = [{
1549
+ exportValue: "Foo",
1550
+ displayValue: "Foo"
1551
+ }, {
1552
+ exportValue: "Bar",
1553
+ displayValue: "Bar"
1554
+ }];
1555
+ choiceWidgetDict.set("Opt", options);
1556
+
1557
+ const choiceWidgetRef = _primitives.Ref.get(981, 0);
1558
+
1559
+ const xref = new _test_utils.XRefMock([{
1560
+ ref: choiceWidgetRef,
1561
+ data: choiceWidgetDict
1562
+ }, {
1563
+ ref: optionBarRef,
1564
+ data: optionBarStr
1565
+ }]);
1566
+
1567
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1568
+ data
1569
+ }) => {
1570
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1571
+ expect(data.options).toEqual(expected);
1572
+ done();
1573
+ }, done.fail);
1574
+ });
1575
+ it("should handle inherited option arrays (issue 8094)", function (done) {
1576
+ const options = [["Value1", "Description1"], ["Value2", "Description2"]];
1577
+ const expected = [{
1578
+ exportValue: "Value1",
1579
+ displayValue: "Description1"
1580
+ }, {
1581
+ exportValue: "Value2",
1582
+ displayValue: "Description2"
1583
+ }];
1584
+ const parentDict = new _primitives.Dict();
1585
+ parentDict.set("Opt", options);
1586
+ choiceWidgetDict.set("Parent", parentDict);
1587
+
1588
+ const choiceWidgetRef = _primitives.Ref.get(123, 0);
1589
+
1590
+ const xref = new _test_utils.XRefMock([{
1591
+ ref: choiceWidgetRef,
1592
+ data: choiceWidgetDict
1593
+ }]);
1594
+
1595
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1596
+ data
1597
+ }) => {
1598
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1599
+ expect(data.options).toEqual(expected);
1600
+ done();
1601
+ }, done.fail);
1602
+ });
1603
+ it("should sanitize display values in option arrays (issue 8947)", function (done) {
1604
+ const options = ["\xFE\xFF\x00F\x00o\x00o"];
1605
+ const expected = [{
1606
+ exportValue: "\xFE\xFF\x00F\x00o\x00o",
1607
+ displayValue: "Foo"
1608
+ }];
1609
+ choiceWidgetDict.set("Opt", options);
1610
+
1611
+ const choiceWidgetRef = _primitives.Ref.get(984, 0);
1612
+
1613
+ const xref = new _test_utils.XRefMock([{
1614
+ ref: choiceWidgetRef,
1615
+ data: choiceWidgetDict
1616
+ }]);
1617
+
1618
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1619
+ data
1620
+ }) => {
1621
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1622
+ expect(data.options).toEqual(expected);
1623
+ done();
1624
+ }, done.fail);
1625
+ });
1626
+ it("should handle array field values", function (done) {
1627
+ const fieldValue = ["Foo", "Bar"];
1628
+ choiceWidgetDict.set("V", fieldValue);
1629
+
1630
+ const choiceWidgetRef = _primitives.Ref.get(968, 0);
1631
+
1632
+ const xref = new _test_utils.XRefMock([{
1633
+ ref: choiceWidgetRef,
1634
+ data: choiceWidgetDict
1635
+ }]);
1636
+
1637
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1638
+ data
1639
+ }) => {
1640
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1641
+ expect(data.fieldValue).toEqual(fieldValue);
1642
+ done();
1643
+ }, done.fail);
1644
+ });
1645
+ it("should handle string field values", function (done) {
1646
+ const fieldValue = "Foo";
1647
+ choiceWidgetDict.set("V", fieldValue);
1648
+
1649
+ const choiceWidgetRef = _primitives.Ref.get(978, 0);
1650
+
1651
+ const xref = new _test_utils.XRefMock([{
1652
+ ref: choiceWidgetRef,
1653
+ data: choiceWidgetDict
1654
+ }]);
1655
+
1656
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1657
+ data
1658
+ }) => {
1659
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1660
+ expect(data.fieldValue).toEqual([fieldValue]);
1661
+ done();
1662
+ }, done.fail);
1663
+ });
1664
+ it("should handle unknown flags", function (done) {
1665
+ const choiceWidgetRef = _primitives.Ref.get(166, 0);
1666
+
1667
+ const xref = new _test_utils.XRefMock([{
1668
+ ref: choiceWidgetRef,
1669
+ data: choiceWidgetDict
1670
+ }]);
1671
+
1672
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1673
+ data
1674
+ }) => {
1675
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1676
+ expect(data.readOnly).toEqual(false);
1677
+ expect(data.combo).toEqual(false);
1678
+ expect(data.multiSelect).toEqual(false);
1679
+ done();
1680
+ }, done.fail);
1681
+ });
1682
+ it("should not set invalid flags", function (done) {
1683
+ choiceWidgetDict.set("Ff", "readonly");
1684
+
1685
+ const choiceWidgetRef = _primitives.Ref.get(165, 0);
1686
+
1687
+ const xref = new _test_utils.XRefMock([{
1688
+ ref: choiceWidgetRef,
1689
+ data: choiceWidgetDict
1690
+ }]);
1691
+
1692
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1693
+ data
1694
+ }) => {
1695
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1696
+ expect(data.readOnly).toEqual(false);
1697
+ expect(data.combo).toEqual(false);
1698
+ expect(data.multiSelect).toEqual(false);
1699
+ done();
1700
+ }, done.fail);
1701
+ });
1702
+ it("should set valid flags", function (done) {
1703
+ choiceWidgetDict.set("Ff", _util.AnnotationFieldFlag.READONLY + _util.AnnotationFieldFlag.COMBO + _util.AnnotationFieldFlag.MULTISELECT);
1704
+
1705
+ const choiceWidgetRef = _primitives.Ref.get(512, 0);
1706
+
1707
+ const xref = new _test_utils.XRefMock([{
1708
+ ref: choiceWidgetRef,
1709
+ data: choiceWidgetDict
1710
+ }]);
1711
+
1712
+ _annotation.AnnotationFactory.create(xref, choiceWidgetRef, pdfManagerMock, idFactoryMock).then(({
1713
+ data
1714
+ }) => {
1715
+ expect(data.annotationType).toEqual(_util.AnnotationType.WIDGET);
1716
+ expect(data.readOnly).toEqual(true);
1717
+ expect(data.combo).toEqual(true);
1718
+ expect(data.multiSelect).toEqual(true);
1719
+ done();
1720
+ }, done.fail);
1721
+ });
1722
+ });
1723
+ describe("LineAnnotation", function () {
1724
+ it("should set the line coordinates", function (done) {
1725
+ const lineDict = new _primitives.Dict();
1726
+ lineDict.set("Type", _primitives.Name.get("Annot"));
1727
+ lineDict.set("Subtype", _primitives.Name.get("Line"));
1728
+ lineDict.set("L", [1, 2, 3, 4]);
1729
+
1730
+ const lineRef = _primitives.Ref.get(122, 0);
1731
+
1732
+ const xref = new _test_utils.XRefMock([{
1733
+ ref: lineRef,
1734
+ data: lineDict
1735
+ }]);
1736
+
1737
+ _annotation.AnnotationFactory.create(xref, lineRef, pdfManagerMock, idFactoryMock).then(({
1738
+ data
1739
+ }) => {
1740
+ expect(data.annotationType).toEqual(_util.AnnotationType.LINE);
1741
+ expect(data.lineCoordinates).toEqual([1, 2, 3, 4]);
1742
+ done();
1743
+ }, done.fail);
1744
+ });
1745
+ });
1746
+ describe("FileAttachmentAnnotation", function () {
1747
+ it("should correctly parse a file attachment", function (done) {
1748
+ const fileStream = new _stream.StringStream("<<\n" + "/Type /EmbeddedFile\n" + "/Subtype /text#2Fplain\n" + ">>\n" + "stream\n" + "Test attachment" + "endstream\n");
1749
+ const parser = new _parser.Parser({
1750
+ lexer: new _parser.Lexer(fileStream),
1751
+ xref: null,
1752
+ allowStreams: true
1753
+ });
1754
+
1755
+ const fileStreamRef = _primitives.Ref.get(18, 0);
1756
+
1757
+ const fileStreamDict = parser.getObj();
1758
+ const embeddedFileDict = new _primitives.Dict();
1759
+ embeddedFileDict.set("F", fileStreamRef);
1760
+
1761
+ const fileSpecRef = _primitives.Ref.get(19, 0);
1762
+
1763
+ const fileSpecDict = new _primitives.Dict();
1764
+ fileSpecDict.set("Type", _primitives.Name.get("Filespec"));
1765
+ fileSpecDict.set("Desc", "");
1766
+ fileSpecDict.set("EF", embeddedFileDict);
1767
+ fileSpecDict.set("UF", "Test.txt");
1768
+
1769
+ const fileAttachmentRef = _primitives.Ref.get(20, 0);
1770
+
1771
+ const fileAttachmentDict = new _primitives.Dict();
1772
+ fileAttachmentDict.set("Type", _primitives.Name.get("Annot"));
1773
+ fileAttachmentDict.set("Subtype", _primitives.Name.get("FileAttachment"));
1774
+ fileAttachmentDict.set("FS", fileSpecRef);
1775
+ fileAttachmentDict.set("T", "Topic");
1776
+ fileAttachmentDict.set("Contents", "Test.txt");
1777
+ const xref = new _test_utils.XRefMock([{
1778
+ ref: fileStreamRef,
1779
+ data: fileStreamDict
1780
+ }, {
1781
+ ref: fileSpecRef,
1782
+ data: fileSpecDict
1783
+ }, {
1784
+ ref: fileAttachmentRef,
1785
+ data: fileAttachmentDict
1786
+ }]);
1787
+ embeddedFileDict.assignXref(xref);
1788
+ fileSpecDict.assignXref(xref);
1789
+ fileAttachmentDict.assignXref(xref);
1790
+
1791
+ _annotation.AnnotationFactory.create(xref, fileAttachmentRef, pdfManagerMock, idFactoryMock).then(({
1792
+ data
1793
+ }) => {
1794
+ expect(data.annotationType).toEqual(_util.AnnotationType.FILEATTACHMENT);
1795
+ expect(data.file.filename).toEqual("Test.txt");
1796
+ expect(data.file.content).toEqual((0, _util.stringToBytes)("Test attachment"));
1797
+ done();
1798
+ }, done.fail);
1799
+ });
1800
+ });
1801
+ describe("PopupAnnotation", function () {
1802
+ it("should inherit properties from its parent", function (done) {
1803
+ const parentDict = new _primitives.Dict();
1804
+ parentDict.set("Type", _primitives.Name.get("Annot"));
1805
+ parentDict.set("Subtype", _primitives.Name.get("Text"));
1806
+ parentDict.set("M", "D:20190423");
1807
+ parentDict.set("C", [0, 0, 1]);
1808
+ const popupDict = new _primitives.Dict();
1809
+ popupDict.set("Type", _primitives.Name.get("Annot"));
1810
+ popupDict.set("Subtype", _primitives.Name.get("Popup"));
1811
+ popupDict.set("Parent", parentDict);
1812
+
1813
+ const popupRef = _primitives.Ref.get(13, 0);
1814
+
1815
+ const xref = new _test_utils.XRefMock([{
1816
+ ref: popupRef,
1817
+ data: popupDict
1818
+ }]);
1819
+
1820
+ _annotation.AnnotationFactory.create(xref, popupRef, pdfManagerMock, idFactoryMock).then(({
1821
+ data,
1822
+ viewable
1823
+ }) => {
1824
+ expect(data.annotationType).toEqual(_util.AnnotationType.POPUP);
1825
+ expect(data.modificationDate).toEqual("D:20190423");
1826
+ expect(data.color).toEqual(new Uint8ClampedArray([0, 0, 255]));
1827
+ done();
1828
+ }, done.fail);
1829
+ });
1830
+ it("should handle missing parent properties", function (done) {
1831
+ const parentDict = new _primitives.Dict();
1832
+ parentDict.set("Type", _primitives.Name.get("Annot"));
1833
+ parentDict.set("Subtype", _primitives.Name.get("Text"));
1834
+ const popupDict = new _primitives.Dict();
1835
+ popupDict.set("Type", _primitives.Name.get("Annot"));
1836
+ popupDict.set("Subtype", _primitives.Name.get("Popup"));
1837
+ popupDict.set("Parent", parentDict);
1838
+
1839
+ const popupRef = _primitives.Ref.get(13, 0);
1840
+
1841
+ const xref = new _test_utils.XRefMock([{
1842
+ ref: popupRef,
1843
+ data: popupDict
1844
+ }]);
1845
+
1846
+ _annotation.AnnotationFactory.create(xref, popupRef, pdfManagerMock, idFactoryMock).then(({
1847
+ data,
1848
+ viewable
1849
+ }) => {
1850
+ expect(data.annotationType).toEqual(_util.AnnotationType.POPUP);
1851
+ expect(data.modificationDate).toEqual(null);
1852
+ expect(data.color).toEqual(null);
1853
+ done();
1854
+ }, done.fail);
1855
+ });
1856
+ it("should inherit the parent flags when the Popup is not viewable, " + "but the parent is (PR 7352)", function (done) {
1857
+ const parentDict = new _primitives.Dict();
1858
+ parentDict.set("Type", _primitives.Name.get("Annot"));
1859
+ parentDict.set("Subtype", _primitives.Name.get("Text"));
1860
+ parentDict.set("F", 28);
1861
+ const popupDict = new _primitives.Dict();
1862
+ popupDict.set("Type", _primitives.Name.get("Annot"));
1863
+ popupDict.set("Subtype", _primitives.Name.get("Popup"));
1864
+ popupDict.set("F", 25);
1865
+ popupDict.set("Parent", parentDict);
1866
+
1867
+ const popupRef = _primitives.Ref.get(13, 0);
1868
+
1869
+ const xref = new _test_utils.XRefMock([{
1870
+ ref: popupRef,
1871
+ data: popupDict
1872
+ }]);
1873
+
1874
+ _annotation.AnnotationFactory.create(xref, popupRef, pdfManagerMock, idFactoryMock).then(({
1875
+ data,
1876
+ viewable
1877
+ }) => {
1878
+ expect(data.annotationType).toEqual(_util.AnnotationType.POPUP);
1879
+ expect(data.annotationFlags).toEqual(25);
1880
+ expect(viewable).toEqual(true);
1881
+ done();
1882
+ }, done.fail);
1883
+ });
1884
+ it("should correctly inherit Contents from group-master annotation " + "if parent has ReplyType == Group", function (done) {
1885
+ const annotationRef = _primitives.Ref.get(819, 0);
1886
+
1887
+ const annotationDict = new _primitives.Dict();
1888
+ annotationDict.set("Type", _primitives.Name.get("Annot"));
1889
+ annotationDict.set("Subtype", _primitives.Name.get("Text"));
1890
+ annotationDict.set("T", "Correct Title");
1891
+ annotationDict.set("Contents", "Correct Text");
1892
+ annotationDict.set("M", "D:20190423");
1893
+ annotationDict.set("C", [0, 0, 1]);
1894
+
1895
+ const replyRef = _primitives.Ref.get(820, 0);
1896
+
1897
+ const replyDict = new _primitives.Dict();
1898
+ replyDict.set("Type", _primitives.Name.get("Annot"));
1899
+ replyDict.set("Subtype", _primitives.Name.get("Text"));
1900
+ replyDict.set("IRT", annotationRef);
1901
+ replyDict.set("RT", _primitives.Name.get("Group"));
1902
+ replyDict.set("T", "Reply Title");
1903
+ replyDict.set("Contents", "Reply Text");
1904
+ replyDict.set("M", "D:20190523");
1905
+ replyDict.set("C", [0.4]);
1906
+
1907
+ const popupRef = _primitives.Ref.get(821, 0);
1908
+
1909
+ const popupDict = new _primitives.Dict();
1910
+ popupDict.set("Type", _primitives.Name.get("Annot"));
1911
+ popupDict.set("Subtype", _primitives.Name.get("Popup"));
1912
+ popupDict.set("T", "Wrong Title");
1913
+ popupDict.set("Contents", "Wrong Text");
1914
+ popupDict.set("Parent", replyRef);
1915
+ popupDict.set("M", "D:20190623");
1916
+ popupDict.set("C", [0.8]);
1917
+ replyDict.set("Popup", popupRef);
1918
+ const xref = new _test_utils.XRefMock([{
1919
+ ref: annotationRef,
1920
+ data: annotationDict
1921
+ }, {
1922
+ ref: replyRef,
1923
+ data: replyDict
1924
+ }, {
1925
+ ref: popupRef,
1926
+ data: popupDict
1927
+ }]);
1928
+ annotationDict.assignXref(xref);
1929
+ popupDict.assignXref(xref);
1930
+ replyDict.assignXref(xref);
1931
+
1932
+ _annotation.AnnotationFactory.create(xref, popupRef, pdfManagerMock, idFactoryMock).then(({
1933
+ data
1934
+ }) => {
1935
+ expect(data.title).toEqual("Correct Title");
1936
+ expect(data.contents).toEqual("Correct Text");
1937
+ expect(data.modificationDate).toEqual("D:20190423");
1938
+ expect(data.color).toEqual(new Uint8ClampedArray([0, 0, 255]));
1939
+ done();
1940
+ }, done.fail);
1941
+ });
1942
+ });
1943
+ describe("InkAnnotation", function () {
1944
+ it("should handle a single ink list", function (done) {
1945
+ const inkDict = new _primitives.Dict();
1946
+ inkDict.set("Type", _primitives.Name.get("Annot"));
1947
+ inkDict.set("Subtype", _primitives.Name.get("Ink"));
1948
+ inkDict.set("InkList", [[1, 1, 1, 2, 2, 2, 3, 3]]);
1949
+
1950
+ const inkRef = _primitives.Ref.get(142, 0);
1951
+
1952
+ const xref = new _test_utils.XRefMock([{
1953
+ ref: inkRef,
1954
+ data: inkDict
1955
+ }]);
1956
+
1957
+ _annotation.AnnotationFactory.create(xref, inkRef, pdfManagerMock, idFactoryMock).then(({
1958
+ data
1959
+ }) => {
1960
+ expect(data.annotationType).toEqual(_util.AnnotationType.INK);
1961
+ expect(data.inkLists.length).toEqual(1);
1962
+ expect(data.inkLists[0]).toEqual([{
1963
+ x: 1,
1964
+ y: 1
1965
+ }, {
1966
+ x: 1,
1967
+ y: 2
1968
+ }, {
1969
+ x: 2,
1970
+ y: 2
1971
+ }, {
1972
+ x: 3,
1973
+ y: 3
1974
+ }]);
1975
+ done();
1976
+ }, done.fail);
1977
+ });
1978
+ it("should handle multiple ink lists", function (done) {
1979
+ const inkDict = new _primitives.Dict();
1980
+ inkDict.set("Type", _primitives.Name.get("Annot"));
1981
+ inkDict.set("Subtype", _primitives.Name.get("Ink"));
1982
+ inkDict.set("InkList", [[1, 1, 1, 2], [3, 3, 4, 5]]);
1983
+
1984
+ const inkRef = _primitives.Ref.get(143, 0);
1985
+
1986
+ const xref = new _test_utils.XRefMock([{
1987
+ ref: inkRef,
1988
+ data: inkDict
1989
+ }]);
1990
+
1991
+ _annotation.AnnotationFactory.create(xref, inkRef, pdfManagerMock, idFactoryMock).then(({
1992
+ data
1993
+ }) => {
1994
+ expect(data.annotationType).toEqual(_util.AnnotationType.INK);
1995
+ expect(data.inkLists.length).toEqual(2);
1996
+ expect(data.inkLists[0]).toEqual([{
1997
+ x: 1,
1998
+ y: 1
1999
+ }, {
2000
+ x: 1,
2001
+ y: 2
2002
+ }]);
2003
+ expect(data.inkLists[1]).toEqual([{
2004
+ x: 3,
2005
+ y: 3
2006
+ }, {
2007
+ x: 4,
2008
+ y: 5
2009
+ }]);
2010
+ done();
2011
+ }, done.fail);
2012
+ });
2013
+ });
2014
+ describe("HightlightAnnotation", function () {
2015
+ it("should not set quadpoints if not defined", function (done) {
2016
+ const highlightDict = new _primitives.Dict();
2017
+ highlightDict.set("Type", _primitives.Name.get("Annot"));
2018
+ highlightDict.set("Subtype", _primitives.Name.get("Highlight"));
2019
+
2020
+ const highlightRef = _primitives.Ref.get(121, 0);
2021
+
2022
+ const xref = new _test_utils.XRefMock([{
2023
+ ref: highlightRef,
2024
+ data: highlightDict
2025
+ }]);
2026
+
2027
+ _annotation.AnnotationFactory.create(xref, highlightRef, pdfManagerMock, idFactoryMock).then(({
2028
+ data
2029
+ }) => {
2030
+ expect(data.annotationType).toEqual(_util.AnnotationType.HIGHLIGHT);
2031
+ expect(data.quadPoints).toBeUndefined();
2032
+ done();
2033
+ }, done.fail);
2034
+ });
2035
+ it("should set quadpoints if defined", function (done) {
2036
+ const highlightDict = new _primitives.Dict();
2037
+ highlightDict.set("Type", _primitives.Name.get("Annot"));
2038
+ highlightDict.set("Subtype", _primitives.Name.get("Highlight"));
2039
+ highlightDict.set("Rect", [10, 10, 20, 20]);
2040
+ highlightDict.set("QuadPoints", [11, 11, 12, 12, 13, 13, 14, 14]);
2041
+
2042
+ const highlightRef = _primitives.Ref.get(121, 0);
2043
+
2044
+ const xref = new _test_utils.XRefMock([{
2045
+ ref: highlightRef,
2046
+ data: highlightDict
2047
+ }]);
2048
+
2049
+ _annotation.AnnotationFactory.create(xref, highlightRef, pdfManagerMock, idFactoryMock).then(({
2050
+ data
2051
+ }) => {
2052
+ expect(data.annotationType).toEqual(_util.AnnotationType.HIGHLIGHT);
2053
+ expect(data.quadPoints).toEqual([[{
2054
+ x: 11,
2055
+ y: 11
2056
+ }, {
2057
+ x: 12,
2058
+ y: 12
2059
+ }, {
2060
+ x: 13,
2061
+ y: 13
2062
+ }, {
2063
+ x: 14,
2064
+ y: 14
2065
+ }]]);
2066
+ done();
2067
+ }, done.fail);
2068
+ });
2069
+ });
2070
+ describe("UnderlineAnnotation", function () {
2071
+ it("should not set quadpoints if not defined", function (done) {
2072
+ const underlineDict = new _primitives.Dict();
2073
+ underlineDict.set("Type", _primitives.Name.get("Annot"));
2074
+ underlineDict.set("Subtype", _primitives.Name.get("Underline"));
2075
+
2076
+ const underlineRef = _primitives.Ref.get(121, 0);
2077
+
2078
+ const xref = new _test_utils.XRefMock([{
2079
+ ref: underlineRef,
2080
+ data: underlineDict
2081
+ }]);
2082
+
2083
+ _annotation.AnnotationFactory.create(xref, underlineRef, pdfManagerMock, idFactoryMock).then(({
2084
+ data
2085
+ }) => {
2086
+ expect(data.annotationType).toEqual(_util.AnnotationType.UNDERLINE);
2087
+ expect(data.quadPoints).toBeUndefined();
2088
+ done();
2089
+ }, done.fail);
2090
+ });
2091
+ it("should set quadpoints if defined", function (done) {
2092
+ const underlineDict = new _primitives.Dict();
2093
+ underlineDict.set("Type", _primitives.Name.get("Annot"));
2094
+ underlineDict.set("Subtype", _primitives.Name.get("Underline"));
2095
+ underlineDict.set("Rect", [10, 10, 20, 20]);
2096
+ underlineDict.set("QuadPoints", [11, 11, 12, 12, 13, 13, 14, 14]);
2097
+
2098
+ const underlineRef = _primitives.Ref.get(121, 0);
2099
+
2100
+ const xref = new _test_utils.XRefMock([{
2101
+ ref: underlineRef,
2102
+ data: underlineDict
2103
+ }]);
2104
+
2105
+ _annotation.AnnotationFactory.create(xref, underlineRef, pdfManagerMock, idFactoryMock).then(({
2106
+ data
2107
+ }) => {
2108
+ expect(data.annotationType).toEqual(_util.AnnotationType.UNDERLINE);
2109
+ expect(data.quadPoints).toEqual([[{
2110
+ x: 11,
2111
+ y: 11
2112
+ }, {
2113
+ x: 12,
2114
+ y: 12
2115
+ }, {
2116
+ x: 13,
2117
+ y: 13
2118
+ }, {
2119
+ x: 14,
2120
+ y: 14
2121
+ }]]);
2122
+ done();
2123
+ }, done.fail);
2124
+ });
2125
+ });
2126
+ describe("SquigglyAnnotation", function () {
2127
+ it("should not set quadpoints if not defined", function (done) {
2128
+ const squigglyDict = new _primitives.Dict();
2129
+ squigglyDict.set("Type", _primitives.Name.get("Annot"));
2130
+ squigglyDict.set("Subtype", _primitives.Name.get("Squiggly"));
2131
+
2132
+ const squigglyRef = _primitives.Ref.get(121, 0);
2133
+
2134
+ const xref = new _test_utils.XRefMock([{
2135
+ ref: squigglyRef,
2136
+ data: squigglyDict
2137
+ }]);
2138
+
2139
+ _annotation.AnnotationFactory.create(xref, squigglyRef, pdfManagerMock, idFactoryMock).then(({
2140
+ data
2141
+ }) => {
2142
+ expect(data.annotationType).toEqual(_util.AnnotationType.SQUIGGLY);
2143
+ expect(data.quadPoints).toBeUndefined();
2144
+ done();
2145
+ }, done.fail);
2146
+ });
2147
+ it("should set quadpoints if defined", function (done) {
2148
+ const squigglyDict = new _primitives.Dict();
2149
+ squigglyDict.set("Type", _primitives.Name.get("Annot"));
2150
+ squigglyDict.set("Subtype", _primitives.Name.get("Squiggly"));
2151
+ squigglyDict.set("Rect", [10, 10, 20, 20]);
2152
+ squigglyDict.set("QuadPoints", [11, 11, 12, 12, 13, 13, 14, 14]);
2153
+
2154
+ const squigglyRef = _primitives.Ref.get(121, 0);
2155
+
2156
+ const xref = new _test_utils.XRefMock([{
2157
+ ref: squigglyRef,
2158
+ data: squigglyDict
2159
+ }]);
2160
+
2161
+ _annotation.AnnotationFactory.create(xref, squigglyRef, pdfManagerMock, idFactoryMock).then(({
2162
+ data
2163
+ }) => {
2164
+ expect(data.annotationType).toEqual(_util.AnnotationType.SQUIGGLY);
2165
+ expect(data.quadPoints).toEqual([[{
2166
+ x: 11,
2167
+ y: 11
2168
+ }, {
2169
+ x: 12,
2170
+ y: 12
2171
+ }, {
2172
+ x: 13,
2173
+ y: 13
2174
+ }, {
2175
+ x: 14,
2176
+ y: 14
2177
+ }]]);
2178
+ done();
2179
+ }, done.fail);
2180
+ });
2181
+ });
2182
+ describe("StrikeOutAnnotation", function () {
2183
+ it("should not set quadpoints if not defined", function (done) {
2184
+ const strikeOutDict = new _primitives.Dict();
2185
+ strikeOutDict.set("Type", _primitives.Name.get("Annot"));
2186
+ strikeOutDict.set("Subtype", _primitives.Name.get("StrikeOut"));
2187
+
2188
+ const strikeOutRef = _primitives.Ref.get(121, 0);
2189
+
2190
+ const xref = new _test_utils.XRefMock([{
2191
+ ref: strikeOutRef,
2192
+ data: strikeOutDict
2193
+ }]);
2194
+
2195
+ _annotation.AnnotationFactory.create(xref, strikeOutRef, pdfManagerMock, idFactoryMock).then(({
2196
+ data
2197
+ }) => {
2198
+ expect(data.annotationType).toEqual(_util.AnnotationType.STRIKEOUT);
2199
+ expect(data.quadPoints).toBeUndefined();
2200
+ done();
2201
+ }, done.fail);
2202
+ });
2203
+ it("should set quadpoints if defined", function (done) {
2204
+ const strikeOutDict = new _primitives.Dict();
2205
+ strikeOutDict.set("Type", _primitives.Name.get("Annot"));
2206
+ strikeOutDict.set("Subtype", _primitives.Name.get("StrikeOut"));
2207
+ strikeOutDict.set("Rect", [10, 10, 20, 20]);
2208
+ strikeOutDict.set("QuadPoints", [11, 11, 12, 12, 13, 13, 14, 14]);
2209
+
2210
+ const strikeOutRef = _primitives.Ref.get(121, 0);
2211
+
2212
+ const xref = new _test_utils.XRefMock([{
2213
+ ref: strikeOutRef,
2214
+ data: strikeOutDict
2215
+ }]);
2216
+
2217
+ _annotation.AnnotationFactory.create(xref, strikeOutRef, pdfManagerMock, idFactoryMock).then(({
2218
+ data
2219
+ }) => {
2220
+ expect(data.annotationType).toEqual(_util.AnnotationType.STRIKEOUT);
2221
+ expect(data.quadPoints).toEqual([[{
2222
+ x: 11,
2223
+ y: 11
2224
+ }, {
2225
+ x: 12,
2226
+ y: 12
2227
+ }, {
2228
+ x: 13,
2229
+ y: 13
2230
+ }, {
2231
+ x: 14,
2232
+ y: 14
2233
+ }]]);
2234
+ done();
2235
+ }, done.fail);
2236
+ });
2237
+ });
2238
+ });