@verdocs/web-sdk 6.7.8 → 6.8.2

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 (449) hide show
  1. package/dist/cjs/{Icons-Dr02rZHd.js → Icons-GgNiIFTt.js} +4 -2
  2. package/dist/{esm/Icons-COC8ZzcY.js.map → cjs/Icons-GgNiIFTt.js.map} +1 -1
  3. package/dist/cjs/{Toast-CFBM1R4z.js → Toast-BgG-6jAg.js} +7 -3
  4. package/dist/cjs/{Toast-CFBM1R4z.js.map → Toast-BgG-6jAg.js.map} +1 -1
  5. package/dist/cjs/index-CQ5bTnED.js +6 -2
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/cjs/{utils-DjHWIYcY.js → utils-ecG41L2k.js} +11 -6
  8. package/dist/cjs/utils-ecG41L2k.js.map +1 -0
  9. package/dist/cjs/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-view.entry.cjs.js.map +1 -0
  10. package/dist/cjs/{verdocs-adopt-signature-dialog_8.cjs.entry.js → verdocs-adopt-signature-dialog_7.cjs.entry.js} +3 -74
  11. package/dist/cjs/verdocs-auth.cjs.entry.js +3 -4
  12. package/dist/cjs/verdocs-auth.entry.cjs.js.map +1 -1
  13. package/dist/cjs/verdocs-button_3.cjs.entry.js +1 -1
  14. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +1 -1
  15. package/dist/cjs/verdocs-date-input.cjs.entry.js +1 -1
  16. package/dist/cjs/verdocs-download-dialog_4.cjs.entry.js +1 -1
  17. package/dist/cjs/verdocs-envelope-recipient-link_2.cjs.entry.js +1 -1
  18. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +1 -1
  19. package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +2 -2
  20. package/dist/cjs/verdocs-field-attachment_11.cjs.entry.js +48 -27
  21. package/dist/cjs/verdocs-field-payment.cjs.entry.js +9 -1
  22. package/dist/cjs/verdocs-field-payment.entry.cjs.js.map +1 -1
  23. package/dist/cjs/verdocs-file-chooser_2.cjs.entry.js +1 -1
  24. package/dist/cjs/verdocs-pagination_2.cjs.entry.js +1 -1
  25. package/dist/cjs/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.cjs.js.map +1 -1
  26. package/dist/cjs/verdocs-preview_7.cjs.entry.js +3 -16
  27. package/dist/cjs/verdocs-sign.cjs.entry.js +61 -10
  28. package/dist/cjs/verdocs-sign.entry.cjs.js.map +1 -1
  29. package/dist/cjs/verdocs-signing-progress.cjs.entry.js +77 -0
  30. package/dist/cjs/verdocs-signing-progress.entry.cjs.js.map +1 -0
  31. package/dist/cjs/verdocs-template-document-page.verdocs-toolbar-icon.entry.cjs.js.map +1 -1
  32. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +11 -11
  33. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  34. package/dist/collection/components/embeds/verdocs-auth/verdocs-auth.js +2 -3
  35. package/dist/collection/components/embeds/verdocs-auth/verdocs-auth.js.map +1 -1
  36. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +62 -15
  37. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  38. package/dist/collection/components/envelopes/verdocs-contact-picker/verdocs-contact-picker.js +1 -1
  39. package/dist/collection/components/envelopes/verdocs-status-indicator/verdocs-status-indicator.js +1 -1
  40. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +26 -0
  41. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js.map +1 -1
  42. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +26 -0
  43. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js.map +1 -1
  44. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +22 -5
  45. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js.map +1 -1
  46. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +27 -0
  47. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js.map +1 -1
  48. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +22 -5
  49. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js.map +1 -1
  50. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +26 -0
  51. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js.map +1 -1
  52. package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.js +26 -0
  53. package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.js.map +1 -1
  54. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +22 -5
  55. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js.map +1 -1
  56. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +22 -5
  57. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js.map +1 -1
  58. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +22 -5
  59. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js.map +1 -1
  60. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +26 -0
  61. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js.map +1 -1
  62. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.js +10 -10
  63. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.js.map +1 -1
  64. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +0 -13
  65. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js.map +1 -1
  66. package/dist/collection/utils/Icons.js +1 -0
  67. package/dist/collection/utils/Icons.js.map +1 -1
  68. package/dist/collection/utils/Toast.js +5 -1
  69. package/dist/collection/utils/Toast.js.map +1 -1
  70. package/dist/collection/utils/utils.js +9 -4
  71. package/dist/collection/utils/utils.js.map +1 -1
  72. package/dist/components/{p-BhfPQRmb.js → p--qy4LrSt.js} +3 -3
  73. package/dist/components/{p-BhfPQRmb.js.map → p--qy4LrSt.js.map} +1 -1
  74. package/dist/components/{p-Du758Jse.js → p-4iMdAi-F.js} +4 -3
  75. package/dist/components/p-4iMdAi-F.js.map +1 -0
  76. package/dist/components/{p-CuOkNuk2.js → p-5374ZOPB.js} +3 -3
  77. package/dist/components/{p-CuOkNuk2.js.map → p-5374ZOPB.js.map} +1 -1
  78. package/dist/components/{p-D3vX2BjV.js → p-6scipSAA.js} +4 -4
  79. package/dist/components/{p-D3vX2BjV.js.map → p-6scipSAA.js.map} +1 -1
  80. package/dist/components/{p-BuPGeecy.js → p-8aKU2veY.js} +3 -3
  81. package/dist/components/{p-BuPGeecy.js.map → p-8aKU2veY.js.map} +1 -1
  82. package/dist/components/{p-CdaVcvEc.js → p-B4HqZ5yO.js} +13 -5
  83. package/dist/components/p-B4HqZ5yO.js.map +1 -0
  84. package/dist/components/{p-Ji7aYztL.js → p-B91pFl_v.js} +16 -16
  85. package/dist/components/{p-Ji7aYztL.js.map → p-B91pFl_v.js.map} +1 -1
  86. package/dist/components/{p-BhAmsiGS.js → p-BF4y1YRU.js} +3 -3
  87. package/dist/components/{p-BhAmsiGS.js.map → p-BF4y1YRU.js.map} +1 -1
  88. package/dist/components/{p-CbqdqC8j.js → p-BYz85yxG.js} +14 -5
  89. package/dist/components/p-BYz85yxG.js.map +1 -0
  90. package/dist/components/{p-BHEOQ17Z.js → p-Bw4ea7Kw.js} +9 -10
  91. package/dist/components/p-Bw4ea7Kw.js.map +1 -0
  92. package/dist/components/{p-DBBlAqIk.js → p-Bys760t8.js} +9 -10
  93. package/dist/components/p-Bys760t8.js.map +1 -0
  94. package/dist/components/{p-XEyZOtxy.js → p-C8STy7JQ.js} +4 -4
  95. package/dist/components/{p-XEyZOtxy.js.map → p-C8STy7JQ.js.map} +1 -1
  96. package/dist/components/{p-CEkIWhd-.js → p-CErFd8ng.js} +4 -4
  97. package/dist/components/{p-CEkIWhd-.js.map → p-CErFd8ng.js.map} +1 -1
  98. package/dist/components/{p-BnrYh7lb.js → p-CNwYj4cS.js} +13 -5
  99. package/dist/components/p-CNwYj4cS.js.map +1 -0
  100. package/dist/components/{p-B_5Ul4Jm.js → p-CRIrD66O.js} +3 -3
  101. package/dist/components/{p-B_5Ul4Jm.js.map → p-CRIrD66O.js.map} +1 -1
  102. package/dist/components/{p-ClKxADje.js → p-Cal5IvqT.js} +3 -3
  103. package/dist/components/{p-ClKxADje.js.map → p-Cal5IvqT.js.map} +1 -1
  104. package/dist/components/{p-CF5pFKnE.js → p-CcCp1gLW.js} +9 -10
  105. package/dist/components/p-CcCp1gLW.js.map +1 -0
  106. package/dist/components/{p-Dd2t1rHp.js → p-CdoA0Vhp.js} +25 -25
  107. package/dist/components/p-CdoA0Vhp.js.map +1 -0
  108. package/dist/components/{p-XXMNFK4_.js → p-CherENoi.js} +3 -3
  109. package/dist/components/{p-XXMNFK4_.js.map → p-CherENoi.js.map} +1 -1
  110. package/dist/components/{p-D98i71vl.js → p-Cp7g7TMK.js} +4 -4
  111. package/dist/components/{p-D98i71vl.js.map → p-Cp7g7TMK.js.map} +1 -1
  112. package/dist/components/{p-BYxr_9pG.js → p-CwA1DkPT.js} +4 -4
  113. package/dist/components/{p-BYxr_9pG.js.map → p-CwA1DkPT.js.map} +1 -1
  114. package/dist/components/{p-P4_At65H.js → p-D0JcxROc.js} +9 -10
  115. package/dist/components/p-D0JcxROc.js.map +1 -0
  116. package/dist/components/{p-YBSd2E-F.js → p-D1tvdWaA.js} +4 -4
  117. package/dist/components/{p-YBSd2E-F.js.map → p-D1tvdWaA.js.map} +1 -1
  118. package/dist/components/{p-BFALqJGq.js → p-D5iqEzJy.js} +13 -5
  119. package/dist/components/p-D5iqEzJy.js.map +1 -0
  120. package/dist/components/{p-CyvDgtoV.js → p-D97GxsI-.js} +7 -3
  121. package/dist/components/p-D97GxsI-.js.map +1 -0
  122. package/dist/components/{p-CiKj592X.js → p-DaWDoIag.js} +4 -4
  123. package/dist/components/{p-CiKj592X.js.map → p-DaWDoIag.js.map} +1 -1
  124. package/dist/components/{p-Dk8BEvRP.js → p-Dpu4D5bv.js} +12 -7
  125. package/dist/components/p-Dpu4D5bv.js.map +1 -0
  126. package/dist/components/{p-YnO0Tmc-.js → p-DtpXCLdt.js} +4 -4
  127. package/dist/components/{p-YnO0Tmc-.js.map → p-DtpXCLdt.js.map} +1 -1
  128. package/dist/components/{p-BZMRf_1r.js → p-DyfpSDn-.js} +3 -3
  129. package/dist/components/{p-BZMRf_1r.js.map → p-DyfpSDn-.js.map} +1 -1
  130. package/dist/components/{p-0SpRA2X8.js → p-_igYrwND.js} +3 -3
  131. package/dist/components/{p-0SpRA2X8.js.map → p-_igYrwND.js.map} +1 -1
  132. package/dist/components/{p-DLnIBwoL.js → p-b0kPOapT.js} +18 -31
  133. package/dist/components/p-b0kPOapT.js.map +1 -0
  134. package/dist/components/{p-BXNOWeQl.js → p-hDK3S4nn.js} +3 -3
  135. package/dist/components/{p-BXNOWeQl.js.map → p-hDK3S4nn.js.map} +1 -1
  136. package/dist/components/{p-BOEjAXQi.js → p-tSwumenv.js} +3 -3
  137. package/dist/components/{p-BOEjAXQi.js.map → p-tSwumenv.js.map} +1 -1
  138. package/dist/components/{p-jeLHHnry.js → p-wSGGYtAF.js} +13 -5
  139. package/dist/components/p-wSGGYtAF.js.map +1 -0
  140. package/dist/components/{p-2a5BepGH.js → p-yvuxqHqW.js} +9 -10
  141. package/dist/components/p-yvuxqHqW.js.map +1 -0
  142. package/dist/components/verdocs-adopt-signature-dialog.js +1 -1
  143. package/dist/components/verdocs-auth.js +4 -5
  144. package/dist/components/verdocs-auth.js.map +1 -1
  145. package/dist/components/verdocs-build.js +23 -23
  146. package/dist/components/verdocs-contact-picker.js +1 -1
  147. package/dist/components/verdocs-date-input.js +1 -1
  148. package/dist/components/verdocs-envelope-document-page.js +1 -1
  149. package/dist/components/verdocs-envelope-recipient-link.js +1 -1
  150. package/dist/components/verdocs-envelope-sidebar.js +4 -4
  151. package/dist/components/verdocs-envelope-update-recipient.js +1 -1
  152. package/dist/components/verdocs-envelopes-list.js +4 -4
  153. package/dist/components/verdocs-field-attachment.js +1 -1
  154. package/dist/components/verdocs-field-checkbox.js +1 -1
  155. package/dist/components/verdocs-field-date.js +1 -1
  156. package/dist/components/verdocs-field-dropdown.js +1 -1
  157. package/dist/components/verdocs-field-initial.js +1 -1
  158. package/dist/components/verdocs-field-payment.js +11 -3
  159. package/dist/components/verdocs-field-payment.js.map +1 -1
  160. package/dist/components/verdocs-field-radio.js +1 -1
  161. package/dist/components/verdocs-field-signature.js +1 -1
  162. package/dist/components/verdocs-field-textarea.js +1 -1
  163. package/dist/components/verdocs-field-textbox.js +1 -1
  164. package/dist/components/verdocs-field-timestamp.js +1 -1
  165. package/dist/components/verdocs-file-chooser.js +1 -1
  166. package/dist/components/verdocs-initial-dialog.js +1 -1
  167. package/dist/components/verdocs-kba-dialog.js +1 -1
  168. package/dist/components/verdocs-otp-dialog.js +1 -1
  169. package/dist/components/verdocs-passcode-dialog.js +1 -1
  170. package/dist/components/verdocs-preview.js +1 -1
  171. package/dist/components/verdocs-quick-filter.js +1 -1
  172. package/dist/components/verdocs-send.js +1 -1
  173. package/dist/components/verdocs-sign.js +105 -60
  174. package/dist/components/verdocs-sign.js.map +1 -1
  175. package/dist/components/verdocs-signature-dialog.js +1 -1
  176. package/dist/components/verdocs-signing-progress.js +97 -1
  177. package/dist/components/verdocs-signing-progress.js.map +1 -1
  178. package/dist/components/verdocs-template-attachments.js +1 -1
  179. package/dist/components/verdocs-template-build-tabs.js +1 -1
  180. package/dist/components/verdocs-template-document-page.js +1 -1
  181. package/dist/components/verdocs-template-field-properties.js +1 -1
  182. package/dist/components/verdocs-template-fields.js +1 -1
  183. package/dist/components/verdocs-template-role-properties.js +1 -1
  184. package/dist/components/verdocs-template-roles.js +1 -1
  185. package/dist/components/verdocs-template-settings.js +1 -1
  186. package/dist/components/verdocs-templates-list.js +2 -2
  187. package/dist/components/verdocs-text-input.js +1 -1
  188. package/dist/components/verdocs-view.js +1 -1
  189. package/dist/custom-elements.json +2507 -0
  190. package/dist/esm/{Icons-COC8ZzcY.js → Icons-uiSvPcsq.js} +4 -3
  191. package/dist/{cjs/Icons-Dr02rZHd.js.map → esm/Icons-uiSvPcsq.js.map} +1 -1
  192. package/dist/esm/{Toast-CyvDgtoV.js → Toast-D97GxsI-.js} +7 -3
  193. package/dist/esm/{Toast-CyvDgtoV.js.map → Toast-D97GxsI-.js.map} +1 -1
  194. package/dist/esm/index-BIRwgFLv.js +6 -2
  195. package/dist/esm/loader.js +1 -1
  196. package/dist/esm/{utils-Deu82Q9L.js → utils-CerrMWqr.js} +12 -7
  197. package/dist/esm/utils-CerrMWqr.js.map +1 -0
  198. package/dist/esm/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-view.entry.js.map +1 -0
  199. package/dist/esm/{verdocs-adopt-signature-dialog_8.entry.js → verdocs-adopt-signature-dialog_7.entry.js} +5 -75
  200. package/dist/esm/verdocs-auth.entry.js +3 -4
  201. package/dist/esm/verdocs-auth.entry.js.map +1 -1
  202. package/dist/esm/verdocs-button_3.entry.js +1 -1
  203. package/dist/esm/verdocs-contact-picker.entry.js +1 -1
  204. package/dist/esm/verdocs-date-input.entry.js +1 -1
  205. package/dist/esm/verdocs-download-dialog_4.entry.js +1 -1
  206. package/dist/esm/verdocs-envelope-recipient-link_2.entry.js +1 -1
  207. package/dist/esm/verdocs-envelope-sidebar.entry.js +1 -1
  208. package/dist/esm/verdocs-envelopes-list.entry.js +2 -2
  209. package/dist/esm/verdocs-field-attachment_11.entry.js +48 -27
  210. package/dist/esm/verdocs-field-payment.entry.js +9 -1
  211. package/dist/esm/verdocs-field-payment.entry.js.map +1 -1
  212. package/dist/esm/verdocs-file-chooser_2.entry.js +1 -1
  213. package/dist/esm/verdocs-pagination_2.entry.js +1 -1
  214. package/dist/esm/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.js.map +1 -1
  215. package/dist/esm/verdocs-preview_7.entry.js +3 -16
  216. package/dist/esm/verdocs-sign.entry.js +61 -10
  217. package/dist/esm/verdocs-sign.entry.js.map +1 -1
  218. package/dist/{components/p-DsyPm0eu.js → esm/verdocs-signing-progress.entry.js} +11 -38
  219. package/dist/esm/verdocs-signing-progress.entry.js.map +1 -0
  220. package/dist/esm/verdocs-template-document-page.verdocs-toolbar-icon.entry.js.map +1 -1
  221. package/dist/esm/verdocs-template-document-page_2.entry.js +11 -11
  222. package/dist/esm/verdocs-web-sdk.js +1 -1
  223. package/dist/esm-es5/{Icons-COC8ZzcY.js → Icons-uiSvPcsq.js} +2 -2
  224. package/dist/esm-es5/{Icons-COC8ZzcY.js.map → Icons-uiSvPcsq.js.map} +1 -1
  225. package/dist/esm-es5/{Toast-CyvDgtoV.js → Toast-D97GxsI-.js} +2 -2
  226. package/dist/esm-es5/{Toast-CyvDgtoV.js.map → Toast-D97GxsI-.js.map} +1 -1
  227. package/dist/esm-es5/index-BIRwgFLv.js +1 -1
  228. package/dist/esm-es5/loader.js +1 -1
  229. package/dist/esm-es5/utils-CerrMWqr.js +2 -0
  230. package/dist/esm-es5/utils-CerrMWqr.js.map +1 -0
  231. package/dist/esm-es5/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-view.entry.js.map +1 -0
  232. package/dist/esm-es5/verdocs-adopt-signature-dialog_7.entry.js +2 -0
  233. package/dist/esm-es5/verdocs-adopt-signature-dialog_7.entry.js.map +1 -0
  234. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  235. package/dist/esm-es5/verdocs-auth.entry.js.map +1 -1
  236. package/dist/esm-es5/verdocs-button_3.entry.js +1 -1
  237. package/dist/esm-es5/verdocs-contact-picker.entry.js +2 -2
  238. package/dist/esm-es5/verdocs-date-input.entry.js +1 -1
  239. package/dist/esm-es5/verdocs-download-dialog_4.entry.js +1 -1
  240. package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js +1 -1
  241. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  242. package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
  243. package/dist/esm-es5/verdocs-field-attachment_11.entry.js +1 -1
  244. package/dist/esm-es5/verdocs-field-attachment_11.entry.js.map +1 -1
  245. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  246. package/dist/esm-es5/verdocs-field-payment.entry.js.map +1 -1
  247. package/dist/esm-es5/verdocs-file-chooser_2.entry.js +1 -1
  248. package/dist/esm-es5/verdocs-pagination_2.entry.js +1 -1
  249. package/dist/esm-es5/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.js.map +1 -1
  250. package/dist/esm-es5/verdocs-preview_7.entry.js +1 -1
  251. package/dist/esm-es5/verdocs-preview_7.entry.js.map +1 -1
  252. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  253. package/dist/esm-es5/verdocs-sign.entry.js.map +1 -1
  254. package/dist/esm-es5/verdocs-signing-progress.entry.js +2 -0
  255. package/dist/esm-es5/verdocs-signing-progress.entry.js.map +1 -0
  256. package/dist/esm-es5/verdocs-template-document-page.verdocs-toolbar-icon.entry.js.map +1 -1
  257. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  258. package/dist/esm-es5/verdocs-template-document-page_2.entry.js.map +1 -1
  259. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  260. package/dist/globals.css +25 -0
  261. package/dist/overrides.css +4 -0
  262. package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +4 -6
  263. package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +5 -0
  264. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +5 -0
  265. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +5 -1
  266. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +7 -1
  267. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +5 -1
  268. package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +5 -0
  269. package/dist/types/components/fields/verdocs-field-radio/verdocs-field-radio.d.ts +5 -0
  270. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +5 -1
  271. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +5 -1
  272. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +5 -1
  273. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +5 -0
  274. package/dist/types/components/templates/verdocs-template-fields/verdocs-template-fields.d.ts +0 -1
  275. package/dist/types/components.d.ts +90 -22
  276. package/dist/types/utils/Icons.d.ts +1 -0
  277. package/dist/verdocs-web-sdk/{p-B1XDpnEI.system.js.map → p-0-YdlCL1.system.js.map} +1 -1
  278. package/dist/verdocs-web-sdk/{p-056535b3.entry.js → p-048d4433.entry.js} +2 -2
  279. package/dist/verdocs-web-sdk/p-066b9068.entry.js +2 -0
  280. package/dist/verdocs-web-sdk/p-066b9068.entry.js.map +1 -0
  281. package/dist/verdocs-web-sdk/p-0c24c1b8.entry.js +2 -0
  282. package/dist/verdocs-web-sdk/p-0c24c1b8.entry.js.map +1 -0
  283. package/dist/verdocs-web-sdk/{p-ec6cde3b.entry.js → p-178ccb4a.entry.js} +2 -2
  284. package/dist/verdocs-web-sdk/{p-12cddd31.system.entry.js → p-1c2f170a.system.entry.js} +2 -2
  285. package/dist/verdocs-web-sdk/{p-cc45f0ef.system.entry.js → p-3295f0be.system.entry.js} +2 -2
  286. package/dist/verdocs-web-sdk/{p-890af2e3.system.entry.js → p-333d4a2e.system.entry.js} +2 -2
  287. package/dist/verdocs-web-sdk/p-46b44d60.entry.js +2 -0
  288. package/dist/verdocs-web-sdk/p-46b44d60.entry.js.map +1 -0
  289. package/dist/verdocs-web-sdk/{p-178d03a6.system.entry.js → p-49cd823f.system.entry.js} +2 -2
  290. package/dist/verdocs-web-sdk/{p-8113ca1b.entry.js → p-4d0a53c0.entry.js} +2 -2
  291. package/dist/verdocs-web-sdk/p-4d2642f5.system.entry.js +2 -0
  292. package/dist/verdocs-web-sdk/p-4d2642f5.system.entry.js.map +1 -0
  293. package/dist/verdocs-web-sdk/{p-c1b0b0a8.entry.js → p-5340c596.entry.js} +2 -2
  294. package/dist/verdocs-web-sdk/{p-4671fd0b.entry.js → p-53be15dc.entry.js} +2 -2
  295. package/dist/verdocs-web-sdk/p-56bb100f.system.entry.js +2 -0
  296. package/dist/verdocs-web-sdk/p-56bb100f.system.entry.js.map +1 -0
  297. package/dist/verdocs-web-sdk/{p-d9fea7c9.system.entry.js → p-59243cd3.system.entry.js} +3 -3
  298. package/dist/verdocs-web-sdk/p-59243cd3.system.entry.js.map +1 -0
  299. package/dist/verdocs-web-sdk/{p-7c7ce93e.system.entry.js → p-63c0f31d.system.entry.js} +2 -2
  300. package/dist/verdocs-web-sdk/p-64b9e2de.entry.js +2 -0
  301. package/dist/verdocs-web-sdk/p-64b9e2de.entry.js.map +1 -0
  302. package/dist/verdocs-web-sdk/{p-3f43a818.system.entry.js → p-69e35ea8.system.entry.js} +2 -2
  303. package/dist/verdocs-web-sdk/{p-6148dc32.entry.js → p-72ff97d7.entry.js} +3 -3
  304. package/dist/verdocs-web-sdk/p-72ff97d7.entry.js.map +1 -0
  305. package/dist/verdocs-web-sdk/{p-2d393705.entry.js → p-7a086c18.entry.js} +2 -2
  306. package/dist/verdocs-web-sdk/p-7f7da7d6.system.entry.js +2 -0
  307. package/dist/verdocs-web-sdk/p-7f7da7d6.system.entry.js.map +1 -0
  308. package/dist/verdocs-web-sdk/{p-04fcf283.entry.js → p-8b2d4ca5.entry.js} +3 -3
  309. package/dist/verdocs-web-sdk/{p-04fcf283.entry.js.map → p-8b2d4ca5.entry.js.map} +1 -1
  310. package/dist/verdocs-web-sdk/p-B-lvFg2a.system.js.map +1 -0
  311. package/dist/verdocs-web-sdk/p-B390zQJa.js +2 -0
  312. package/dist/verdocs-web-sdk/p-B390zQJa.js.map +1 -0
  313. package/dist/verdocs-web-sdk/p-B8zpaHu-.system.js +1 -1
  314. package/dist/verdocs-web-sdk/p-BREkr6mU.system.js.map +1 -0
  315. package/dist/verdocs-web-sdk/p-BWHKc078.system.js.map +1 -0
  316. package/dist/verdocs-web-sdk/{p-DZCgLJyz.system.js.map → p-BcNo_mbk.system.js.map} +1 -1
  317. package/dist/verdocs-web-sdk/p-BjX323yE.system.js.map +1 -0
  318. package/dist/verdocs-web-sdk/p-BnNnWnOr.system.js.map +1 -0
  319. package/dist/verdocs-web-sdk/p-C-5pmv-B.system.js.map +1 -0
  320. package/dist/verdocs-web-sdk/{p-CLk8bJUK.system.js.map → p-C0HruX7m.system.js.map} +1 -1
  321. package/dist/verdocs-web-sdk/{p-32jbwDH-.system.js.map → p-CC3ukJv1.system.js.map} +1 -1
  322. package/dist/verdocs-web-sdk/{p-H1Tf5vYL.system.js.map → p-CEiXLEdr.system.js.map} +1 -1
  323. package/dist/verdocs-web-sdk/p-CVkABARN.system.js.map +1 -0
  324. package/dist/verdocs-web-sdk/{p-B4iIFpTv.system.js.map → p-CWh-S6N5.system.js.map} +1 -1
  325. package/dist/verdocs-web-sdk/{p--IsJSUgl.system.js.map → p-CY7jihMi.system.js.map} +1 -1
  326. package/dist/verdocs-web-sdk/{p-CyvDgtoV.js → p-D97GxsI-.js} +2 -2
  327. package/dist/verdocs-web-sdk/{p-CyvDgtoV.js.map → p-D97GxsI-.js.map} +1 -1
  328. package/dist/verdocs-web-sdk/{p-DwOCgVjl.system.js → p-DejNzlEq.system.js} +2 -2
  329. package/dist/verdocs-web-sdk/{p-DwOCgVjl.system.js.map → p-DejNzlEq.system.js.map} +1 -1
  330. package/dist/verdocs-web-sdk/{p-CrzDCQEM.system.js → p-Dj475wLP.system.js} +2 -2
  331. package/dist/verdocs-web-sdk/{p-CrzDCQEM.system.js.map → p-Dj475wLP.system.js.map} +1 -1
  332. package/dist/verdocs-web-sdk/{p-Bz9aRrx5.system.js.map → p-ESsv28K0.system.js.map} +1 -1
  333. package/dist/verdocs-web-sdk/{p-DiSsW5Ao.system.js.map → p-H6g35dUh.system.js.map} +1 -1
  334. package/dist/verdocs-web-sdk/p-LGooaeHw.system.js.map +1 -0
  335. package/dist/verdocs-web-sdk/p-b2108c5c.system.entry.js +2 -0
  336. package/dist/verdocs-web-sdk/p-b2108c5c.system.entry.js.map +1 -0
  337. package/dist/verdocs-web-sdk/p-b5db2ed4.entry.js +2 -0
  338. package/dist/verdocs-web-sdk/p-b5db2ed4.entry.js.map +1 -0
  339. package/dist/verdocs-web-sdk/p-be9c544d.system.entry.js +2 -0
  340. package/dist/verdocs-web-sdk/p-be9c544d.system.entry.js.map +1 -0
  341. package/dist/verdocs-web-sdk/p-bf7fb952.entry.js +2 -0
  342. package/dist/verdocs-web-sdk/p-bf7fb952.entry.js.map +1 -0
  343. package/dist/verdocs-web-sdk/{p-648b7df3.entry.js → p-c0c4b822.entry.js} +2 -2
  344. package/dist/verdocs-web-sdk/p-cec41aeb.entry.js +2 -0
  345. package/dist/verdocs-web-sdk/p-cec41aeb.entry.js.map +1 -0
  346. package/dist/verdocs-web-sdk/p-d026af3f.system.entry.js +2 -0
  347. package/dist/verdocs-web-sdk/p-d026af3f.system.entry.js.map +1 -0
  348. package/dist/verdocs-web-sdk/p-d4cfa91a.system.entry.js +2 -0
  349. package/dist/verdocs-web-sdk/p-d4cfa91a.system.entry.js.map +1 -0
  350. package/dist/verdocs-web-sdk/{p-9041335d.system.entry.js → p-e4b13df9.system.entry.js} +2 -2
  351. package/dist/verdocs-web-sdk/p-e4b13df9.system.entry.js.map +1 -0
  352. package/dist/verdocs-web-sdk/{p-9ec65cad.system.entry.js → p-f1ca6e1c.system.entry.js} +2 -2
  353. package/dist/verdocs-web-sdk/{p-fb2a67ee.system.entry.js → p-f4c4a49e.system.entry.js} +2 -2
  354. package/dist/verdocs-web-sdk/p-f4c4a49e.system.entry.js.map +1 -0
  355. package/dist/verdocs-web-sdk/p-f589tneI.system.js +2 -0
  356. package/dist/verdocs-web-sdk/p-f589tneI.system.js.map +1 -0
  357. package/dist/verdocs-web-sdk/{p-63c200f1.entry.js → p-fe5aabfb.entry.js} +2 -2
  358. package/dist/verdocs-web-sdk/{p-COC8ZzcY.js → p-uiSvPcsq.js} +2 -2
  359. package/dist/verdocs-web-sdk/{p-COC8ZzcY.js.map → p-uiSvPcsq.js.map} +1 -1
  360. package/dist/verdocs-web-sdk/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-view.entry.esm.js.map +1 -0
  361. package/dist/verdocs-web-sdk/verdocs-auth.entry.esm.js.map +1 -1
  362. package/dist/verdocs-web-sdk/verdocs-field-payment.entry.esm.js.map +1 -1
  363. package/dist/verdocs-web-sdk/verdocs-preview.verdocs-send.verdocs-template-attachments.verdocs-template-build-tabs.verdocs-template-fields.verdocs-template-roles.verdocs-template-settings.entry.esm.js.map +1 -1
  364. package/dist/verdocs-web-sdk/verdocs-sign.entry.esm.js.map +1 -1
  365. package/dist/verdocs-web-sdk/verdocs-signing-progress.entry.esm.js.map +1 -0
  366. package/dist/verdocs-web-sdk/verdocs-template-document-page.verdocs-toolbar-icon.entry.esm.js.map +1 -1
  367. package/dist/verdocs-web-sdk/verdocs-web-sdk.css +1 -1
  368. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  369. package/package.json +3 -3
  370. package/dist/cjs/utils-DjHWIYcY.js.map +0 -1
  371. package/dist/cjs/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.cjs.js.map +0 -1
  372. package/dist/components/p-2a5BepGH.js.map +0 -1
  373. package/dist/components/p-BFALqJGq.js.map +0 -1
  374. package/dist/components/p-BHEOQ17Z.js.map +0 -1
  375. package/dist/components/p-BnrYh7lb.js.map +0 -1
  376. package/dist/components/p-CF5pFKnE.js.map +0 -1
  377. package/dist/components/p-CbqdqC8j.js.map +0 -1
  378. package/dist/components/p-CdaVcvEc.js.map +0 -1
  379. package/dist/components/p-CyvDgtoV.js.map +0 -1
  380. package/dist/components/p-DBBlAqIk.js.map +0 -1
  381. package/dist/components/p-DLnIBwoL.js.map +0 -1
  382. package/dist/components/p-Dd2t1rHp.js.map +0 -1
  383. package/dist/components/p-Dk8BEvRP.js.map +0 -1
  384. package/dist/components/p-DsyPm0eu.js.map +0 -1
  385. package/dist/components/p-Du758Jse.js.map +0 -1
  386. package/dist/components/p-P4_At65H.js.map +0 -1
  387. package/dist/components/p-jeLHHnry.js.map +0 -1
  388. package/dist/esm/utils-Deu82Q9L.js.map +0 -1
  389. package/dist/esm/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.js.map +0 -1
  390. package/dist/esm-es5/utils-Deu82Q9L.js +0 -2
  391. package/dist/esm-es5/utils-Deu82Q9L.js.map +0 -1
  392. package/dist/esm-es5/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.js.map +0 -1
  393. package/dist/esm-es5/verdocs-adopt-signature-dialog_8.entry.js +0 -2
  394. package/dist/esm-es5/verdocs-adopt-signature-dialog_8.entry.js.map +0 -1
  395. package/dist/verdocs-web-sdk/p-2fc45c1b.system.entry.js +0 -2
  396. package/dist/verdocs-web-sdk/p-2fc45c1b.system.entry.js.map +0 -1
  397. package/dist/verdocs-web-sdk/p-305673ce.entry.js +0 -2
  398. package/dist/verdocs-web-sdk/p-305673ce.entry.js.map +0 -1
  399. package/dist/verdocs-web-sdk/p-43517ad0.entry.js +0 -2
  400. package/dist/verdocs-web-sdk/p-43517ad0.entry.js.map +0 -1
  401. package/dist/verdocs-web-sdk/p-442d1d67.entry.js +0 -2
  402. package/dist/verdocs-web-sdk/p-442d1d67.entry.js.map +0 -1
  403. package/dist/verdocs-web-sdk/p-4b154306.system.entry.js +0 -2
  404. package/dist/verdocs-web-sdk/p-4b154306.system.entry.js.map +0 -1
  405. package/dist/verdocs-web-sdk/p-54ba1ad7.entry.js +0 -2
  406. package/dist/verdocs-web-sdk/p-54ba1ad7.entry.js.map +0 -1
  407. package/dist/verdocs-web-sdk/p-6148dc32.entry.js.map +0 -1
  408. package/dist/verdocs-web-sdk/p-61c4fa10.entry.js +0 -2
  409. package/dist/verdocs-web-sdk/p-61c4fa10.entry.js.map +0 -1
  410. package/dist/verdocs-web-sdk/p-66a7ac9e.system.entry.js +0 -2
  411. package/dist/verdocs-web-sdk/p-66a7ac9e.system.entry.js.map +0 -1
  412. package/dist/verdocs-web-sdk/p-9041335d.system.entry.js.map +0 -1
  413. package/dist/verdocs-web-sdk/p-BgKRsvh1.system.js +0 -2
  414. package/dist/verdocs-web-sdk/p-BgKRsvh1.system.js.map +0 -1
  415. package/dist/verdocs-web-sdk/p-BhSJlV9V.system.js.map +0 -1
  416. package/dist/verdocs-web-sdk/p-CUAJG_9-.system.js.map +0 -1
  417. package/dist/verdocs-web-sdk/p-CvP5xl4d.system.js.map +0 -1
  418. package/dist/verdocs-web-sdk/p-D6E34dJC.system.js.map +0 -1
  419. package/dist/verdocs-web-sdk/p-DCaBxbVE.system.js.map +0 -1
  420. package/dist/verdocs-web-sdk/p-DmMl-ZBy.system.js.map +0 -1
  421. package/dist/verdocs-web-sdk/p-Do292p0X.system.js.map +0 -1
  422. package/dist/verdocs-web-sdk/p-a2135508.system.entry.js +0 -2
  423. package/dist/verdocs-web-sdk/p-a2135508.system.entry.js.map +0 -1
  424. package/dist/verdocs-web-sdk/p-c9065579.system.entry.js +0 -2
  425. package/dist/verdocs-web-sdk/p-c9065579.system.entry.js.map +0 -1
  426. package/dist/verdocs-web-sdk/p-d8b02448.system.entry.js +0 -2
  427. package/dist/verdocs-web-sdk/p-d8b02448.system.entry.js.map +0 -1
  428. package/dist/verdocs-web-sdk/p-d9fea7c9.system.entry.js.map +0 -1
  429. package/dist/verdocs-web-sdk/p-f5fc60d8.entry.js +0 -2
  430. package/dist/verdocs-web-sdk/p-f5fc60d8.entry.js.map +0 -1
  431. package/dist/verdocs-web-sdk/p-fb2a67ee.system.entry.js.map +0 -1
  432. package/dist/verdocs-web-sdk/p-oC6bZSel.js +0 -2
  433. package/dist/verdocs-web-sdk/p-oC6bZSel.js.map +0 -1
  434. package/dist/verdocs-web-sdk/verdocs-adopt-signature-dialog.verdocs-delegate-dialog.verdocs-disclosure-dialog.verdocs-kba-dialog.verdocs-otp-dialog.verdocs-passcode-dialog.verdocs-signing-progress.verdocs-view.entry.esm.js.map +0 -1
  435. /package/dist/verdocs-web-sdk/{p-056535b3.entry.js.map → p-048d4433.entry.js.map} +0 -0
  436. /package/dist/verdocs-web-sdk/{p-ec6cde3b.entry.js.map → p-178ccb4a.entry.js.map} +0 -0
  437. /package/dist/verdocs-web-sdk/{p-12cddd31.system.entry.js.map → p-1c2f170a.system.entry.js.map} +0 -0
  438. /package/dist/verdocs-web-sdk/{p-cc45f0ef.system.entry.js.map → p-3295f0be.system.entry.js.map} +0 -0
  439. /package/dist/verdocs-web-sdk/{p-890af2e3.system.entry.js.map → p-333d4a2e.system.entry.js.map} +0 -0
  440. /package/dist/verdocs-web-sdk/{p-178d03a6.system.entry.js.map → p-49cd823f.system.entry.js.map} +0 -0
  441. /package/dist/verdocs-web-sdk/{p-8113ca1b.entry.js.map → p-4d0a53c0.entry.js.map} +0 -0
  442. /package/dist/verdocs-web-sdk/{p-c1b0b0a8.entry.js.map → p-5340c596.entry.js.map} +0 -0
  443. /package/dist/verdocs-web-sdk/{p-4671fd0b.entry.js.map → p-53be15dc.entry.js.map} +0 -0
  444. /package/dist/verdocs-web-sdk/{p-7c7ce93e.system.entry.js.map → p-63c0f31d.system.entry.js.map} +0 -0
  445. /package/dist/verdocs-web-sdk/{p-3f43a818.system.entry.js.map → p-69e35ea8.system.entry.js.map} +0 -0
  446. /package/dist/verdocs-web-sdk/{p-2d393705.entry.js.map → p-7a086c18.entry.js.map} +0 -0
  447. /package/dist/verdocs-web-sdk/{p-648b7df3.entry.js.map → p-c0c4b822.entry.js.map} +0 -0
  448. /package/dist/verdocs-web-sdk/{p-9ec65cad.system.entry.js.map → p-f1ca6e1c.system.entry.js.map} +0 -0
  449. /package/dist/verdocs-web-sdk/{p-63c200f1.entry.js.map → p-fe5aabfb.entry.js.map} +0 -0
@@ -81,12 +81,10 @@ export class VerdocsFieldTextbox {
81
81
  }
82
82
  this.showingProperties = false;
83
83
  }
84
- disconnectedCallback() {
85
- try {
84
+ componentDidUpdate() {
85
+ if (this.isPreview) {
86
86
  interact(this.el).unset();
87
- }
88
- catch (e) {
89
- // Element may already be removed from the DOM
87
+ return;
90
88
  }
91
89
  }
92
90
  componentDidRender() {
@@ -285,6 +283,25 @@ export class VerdocsFieldTextbox {
285
283
  "setter": false,
286
284
  "defaultValue": "null"
287
285
  },
286
+ "isPreview": {
287
+ "type": "boolean",
288
+ "mutable": false,
289
+ "complexType": {
290
+ "original": "boolean",
291
+ "resolved": "boolean",
292
+ "references": {}
293
+ },
294
+ "required": false,
295
+ "optional": true,
296
+ "docs": {
297
+ "tags": [],
298
+ "text": "If set to true, it will force interact to unset the el, resulting in no dragging the field."
299
+ },
300
+ "getter": false,
301
+ "setter": false,
302
+ "reflect": true,
303
+ "attribute": "is-preview"
304
+ },
288
305
  "disabled": {
289
306
  "type": "boolean",
290
307
  "mutable": false,
@@ -1 +1 @@
1
- {"version":3,"file":"verdocs-field-textbox.js","sourceRoot":"","sources":["../../../../src/components/fields/verdocs-field-textbox/verdocs-field-textbox.tsx"],"names":[],"mappings":"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","sourcesContent":["import interact from 'interactjs';\nimport {ResizeEvent} from '@interactjs/actions/resize/plugin';\nimport {IEnvelopeField, ITemplate, ITemplateField, updateField, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Component, h, Host, Element, Prop, Method, Event, EventEmitter, Fragment, State, Listen} from '@stencil/core';\nimport {SettingsIcon} from '../../../utils/Icons';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Display a simple 1-line text input field.\n */\n@Component({\n tag: 'verdocs-field-textbox',\n styleUrl: 'verdocs-field-textbox.scss',\n shadow: false,\n})\nexport class VerdocsFieldTextbox {\n @Element() el: HTMLElement;\n private inputEl: HTMLInputElement | HTMLTextAreaElement;\n\n /**\n * Fields may be attached to templates or envelopes, but only template fields may be edited.\n */\n @Prop({reflect: true}) source: 'template' | 'envelope' = 'template';\n\n /**\n * The source template or envelope ID the field is found in.\n */\n @Prop({reflect: true}) sourceid: string = '';\n\n /**\n * The name of the field to display.\n */\n @Prop({reflect: true}) fieldname: string = '';\n\n /**\n * Override the field's settings. This is intended to be used during signing when fields are being\n * mutated.\n */\n @Prop() field: IEnvelopeField | null | undefined = null;\n\n /**\n * If set, overrides the field's settings object. Primarily used to support \"preview\" modes where all fields are disabled.\n */\n @Prop({reflect: true}) disabled?: boolean = false;\n\n /**\n * If set, overrides the field's settings object. Primarily used to support \"preview\" modes where all fields are disabled.\n */\n @Prop({reflect: true}) multiline?: boolean = false;\n\n /**\n * If set, a settings icon will be displayed on hover. The settings shown allow the field's recipient and other settings to be\n * changed, so it should typically only be enabled in the Builder.\n */\n @Prop({reflect: true}) editable?: boolean = false;\n\n /**\n * If set, the field may be dragged to a new location. This should only be enabled in the Builder, or for self-placed fields.\n */\n @Prop({reflect: true}) moveable?: boolean = false;\n\n /**\n * If set, the field is considered \"done\" and is drawn in a display-final-value state.\n */\n @Prop({reflect: true}) done?: boolean = false;\n\n /**\n * If set, the field will be be scaled horizontally by this factor.\n */\n @Prop({reflect: true}) xscale?: number = 1;\n\n /**\n * If set, the field will be be scaled vertically by this factor.\n */\n @Prop({reflect: true}) yscale?: number = 1;\n\n /**\n * The page the field is on\n */\n @Prop({reflect: true}) pagenumber?: number = 1;\n\n /**\n * Event fired when the field's settings are changed.\n */\n @Event({composed: true}) settingsChanged: EventEmitter<{fieldName: string; field: ITemplateField}>;\n\n /**\n * Event fired when the field is deleted.\n */\n @Event({composed: true}) deleted: EventEmitter<{fieldName: string}>;\n\n @State() showingProperties?: boolean = false;\n @State() focused = false;\n\n @Listen('blur', {capture: true})\n handleBlur() {\n this.focused = false;\n }\n\n @Method()\n async focusField() {\n this.inputEl.focus();\n this.focused = true;\n }\n\n @Method()\n async showSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.showPanel) {\n settingsPanel.showPanel();\n }\n }\n\n @Method()\n async hideSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.hidePanel) {\n settingsPanel.hidePanel();\n }\n this.showingProperties = false;\n }\n\n disconnectedCallback() {\n try {\n interact(this.el).unset();\n } catch (e) {\n // Element may already be removed from the DOM\n }\n }\n\n componentDidRender() {\n interact.dynamicDrop(true);\n\n if (this.editable) {\n interact(this.el).resizable({\n edges: {\n top: '.edge-top',\n left: '.edge-left',\n bottom: '.edge-bottom',\n right: '.edge-right',\n },\n modifiers: [\n interact.modifiers.restrictSize({\n min: {width: 30, height: 10},\n }),\n ],\n listeners: {\n start: this.handleResizeStart.bind(this),\n move: this.handleResize.bind(this),\n end: this.handleResizeEnd.bind(this),\n },\n });\n }\n }\n\n handleResizeStart(e: ResizeEvent) {\n e.preventDefault();\n e.stopPropagation();\n e.target.dataset.originalBottom = e.target.style.bottom;\n }\n\n handleResize(e: any) {\n let {width, height} = e.rect;\n\n const dX = e.deltaRect.left;\n const dY = e.deltaRect.bottom;\n const currentLeft = parseFloat(e.target.style.left);\n const currentBottom = parseFloat(e.target.style.bottom);\n\n width /= this.xscale;\n height /= this.yscale;\n\n Object.assign(e.target.style, {\n width: `${width}px`,\n height: `${height}px`,\n left: `${currentLeft + dX}px`,\n bottom: `${currentBottom - dY}px`,\n });\n }\n\n async handleResizeEnd(e: any) {\n const {sourceid, fieldname} = this;\n\n const width = Math.round(parseFloat(e.target.style.width));\n let height = Math.round(parseFloat(e.target.style.height));\n if (height < 10) {\n height = 10;\n }\n const multiline = height > 15;\n\n const newBottom = parseFloat(e.target.style.bottom);\n const originalBottom = parseFloat(e.target.dataset.originalBottom);\n const template = await Store.getTemplate(VerdocsEndpoint.getDefault(), this.sourceid);\n const oldField = template.fields.find(f => f.name === fieldname);\n const y = newBottom !== originalBottom ? newBottom / this.yscale : oldField?.y;\n\n updateField(VerdocsEndpoint.getDefault(), sourceid, fieldname, {width, height, y, multiline})\n .then(async updatedField => {\n const template = await Store.getTemplate(VerdocsEndpoint.getDefault(), this.sourceid);\n const newTemplate = JSON.parse(JSON.stringify(template)) as ITemplate;\n const fieldIndex = newTemplate.fields.findIndex(field => field.name === fieldname);\n if (fieldIndex > -1) {\n newTemplate.fields[fieldIndex] = updatedField;\n }\n Store.updateTemplate(this.sourceid, newTemplate);\n\n this.settingsChanged?.emit({fieldName: fieldname, field: updatedField});\n Object.assign(e.target.dataset, {x: 0, y: 0, h: 0});\n })\n .catch(e => console.log('Field update failed', e));\n }\n\n render() {\n const {source, sourceid, fieldname, editable = false, done = false, disabled = false, focused, xscale = 1, yscale = 1} = this;\n const {index, field} = Store.getField(source, sourceid, fieldname, this.field);\n let {required = false, placeholder = '', label = '', width = 150, height = 15, readonly = false, default: value = '', multiline = false} = field || {};\n const signerClass = `signer-${(index % 10) + 1}`;\n const small = height < 15;\n\n // TODO: Consolidate value/defaultValue handling between template and envelope fields.\n if ((field as any)?.value) {\n value = (field as any)?.value;\n }\n\n // TODO: This is an outdated technique from the old system. We should compute it.\n const maxlength = width / 5;\n\n if (done) {\n return <Host class={{done}}>{value}</Host>;\n }\n\n return (\n <Host class={{required, disabled, done, focused, small, [signerClass]: true}}>\n {editable && <div class=\"edge-top\" />}\n {editable && <div class=\"edge-right\" />}\n {editable && <div class=\"edge-left\" />}\n {editable && <div class=\"edge-bottom\" />}\n\n {label && <label>{label}</label>}\n\n {multiline ? (\n <textarea\n name={fieldname}\n required={required}\n placeholder={placeholder}\n disabled={readonly || disabled}\n ref={el => (this.inputEl = el)}\n onFocus={() => (this.focused = true)}\n onBlur={() => (this.focused = false)}\n >\n {value}\n </textarea>\n ) : (\n <input\n type=\"text\"\n value={value}\n name={fieldname}\n required={required}\n maxlength={maxlength}\n placeholder={placeholder}\n disabled={readonly || disabled}\n ref={el => (this.inputEl = el)}\n onFocus={() => (this.focused = true)}\n onBlur={() => (this.focused = false)}\n />\n )}\n\n {editable && (\n <Fragment>\n <div\n id={`verdocs-settings-panel-trigger-${fieldname}`}\n style={{transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})`}}\n class=\"settings-icon\"\n innerHTML={SettingsIcon}\n onClick={(e: any) => {\n e.stopPropagation();\n this.showingProperties = !this.showingProperties;\n }}\n />\n\n {this.showingProperties && (\n <verdocs-portal anchor={`verdocs-settings-panel-trigger-${fieldname}`} onClickAway={() => (this.showingProperties = false)}>\n <verdocs-template-field-properties\n templateId={sourceid}\n fieldName={fieldname}\n onClose={() => this.hideSettingsPanel()}\n onDelete={() => {\n this.deleted?.emit({fieldName: fieldname});\n return this.hideSettingsPanel();\n }}\n onSettingsChanged={e => {\n this.settingsChanged?.emit(e.detail);\n return this.hideSettingsPanel();\n }}\n helpText={\n 'Text boxes may be used to capture simple text input. Participant-entered values will be stored for later retrieval via the \"name\" field.<br /><br />If marked required, the participant must complete the field before proceeding.'\n }\n />\n </verdocs-portal>\n )}\n </Fragment>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"verdocs-field-textbox.js","sourceRoot":"","sources":["../../../../src/components/fields/verdocs-field-textbox/verdocs-field-textbox.tsx"],"names":[],"mappings":"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","sourcesContent":["import interact from 'interactjs';\nimport {ResizeEvent} from '@interactjs/actions/resize/plugin';\nimport {IEnvelopeField, ITemplate, ITemplateField, updateField, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Component, h, Host, Element, Prop, Method, Event, EventEmitter, Fragment, State, Listen} from '@stencil/core';\nimport {SettingsIcon} from '../../../utils/Icons';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Display a simple 1-line text input field.\n */\n@Component({\n tag: 'verdocs-field-textbox',\n styleUrl: 'verdocs-field-textbox.scss',\n shadow: false,\n})\nexport class VerdocsFieldTextbox {\n @Element() el: HTMLElement;\n private inputEl: HTMLInputElement | HTMLTextAreaElement;\n\n /**\n * Fields may be attached to templates or envelopes, but only template fields may be edited.\n */\n @Prop({reflect: true}) source: 'template' | 'envelope' = 'template';\n\n /**\n * The source template or envelope ID the field is found in.\n */\n @Prop({reflect: true}) sourceid: string = '';\n\n /**\n * The name of the field to display.\n */\n @Prop({reflect: true}) fieldname: string = '';\n\n /**\n * Override the field's settings. This is intended to be used during signing when fields are being\n * mutated.\n */\n @Prop() field: IEnvelopeField | null | undefined = null;\n\n /**\n * If set to true, it will force interact to unset the el, resulting in no dragging the field.\n */\n @Prop({reflect: true}) isPreview?: boolean;\n\n /**\n * If set, overrides the field's settings object. Primarily used to support \"preview\" modes where all fields are disabled.\n */\n @Prop({reflect: true}) disabled?: boolean = false;\n\n /**\n * If set, overrides the field's settings object. Primarily used to support \"preview\" modes where all fields are disabled.\n */\n @Prop({reflect: true}) multiline?: boolean = false;\n\n /**\n * If set, a settings icon will be displayed on hover. The settings shown allow the field's recipient and other settings to be\n * changed, so it should typically only be enabled in the Builder.\n */\n @Prop({reflect: true}) editable?: boolean = false;\n\n /**\n * If set, the field may be dragged to a new location. This should only be enabled in the Builder, or for self-placed fields.\n */\n @Prop({reflect: true}) moveable?: boolean = false;\n\n /**\n * If set, the field is considered \"done\" and is drawn in a display-final-value state.\n */\n @Prop({reflect: true}) done?: boolean = false;\n\n /**\n * If set, the field will be be scaled horizontally by this factor.\n */\n @Prop({reflect: true}) xscale?: number = 1;\n\n /**\n * If set, the field will be be scaled vertically by this factor.\n */\n @Prop({reflect: true}) yscale?: number = 1;\n\n /**\n * The page the field is on\n */\n @Prop({reflect: true}) pagenumber?: number = 1;\n\n /**\n * Event fired when the field's settings are changed.\n */\n @Event({composed: true}) settingsChanged: EventEmitter<{fieldName: string; field: ITemplateField}>;\n\n /**\n * Event fired when the field is deleted.\n */\n @Event({composed: true}) deleted: EventEmitter<{fieldName: string}>;\n\n @State() showingProperties?: boolean = false;\n @State() focused = false;\n\n @Listen('blur', {capture: true})\n handleBlur() {\n this.focused = false;\n }\n\n @Method()\n async focusField() {\n this.inputEl.focus();\n this.focused = true;\n }\n\n @Method()\n async showSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.showPanel) {\n settingsPanel.showPanel();\n }\n }\n\n @Method()\n async hideSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.hidePanel) {\n settingsPanel.hidePanel();\n }\n this.showingProperties = false;\n }\n\n componentDidUpdate() {\n if (this.isPreview) {\n interact(this.el).unset();\n return;\n }\n }\n\n componentDidRender() {\n interact.dynamicDrop(true);\n\n if (this.editable) {\n interact(this.el).resizable({\n edges: {\n top: '.edge-top',\n left: '.edge-left',\n bottom: '.edge-bottom',\n right: '.edge-right',\n },\n modifiers: [\n interact.modifiers.restrictSize({\n min: {width: 30, height: 10},\n }),\n ],\n listeners: {\n start: this.handleResizeStart.bind(this),\n move: this.handleResize.bind(this),\n end: this.handleResizeEnd.bind(this),\n },\n });\n }\n }\n\n handleResizeStart(e: ResizeEvent) {\n e.preventDefault();\n e.stopPropagation();\n e.target.dataset.originalBottom = e.target.style.bottom;\n }\n\n handleResize(e: any) {\n let {width, height} = e.rect;\n\n const dX = e.deltaRect.left;\n const dY = e.deltaRect.bottom;\n const currentLeft = parseFloat(e.target.style.left);\n const currentBottom = parseFloat(e.target.style.bottom);\n\n width /= this.xscale;\n height /= this.yscale;\n\n Object.assign(e.target.style, {\n width: `${width}px`,\n height: `${height}px`,\n left: `${currentLeft + dX}px`,\n bottom: `${currentBottom - dY}px`,\n });\n }\n\n async handleResizeEnd(e: any) {\n const {sourceid, fieldname} = this;\n\n const width = Math.round(parseFloat(e.target.style.width));\n let height = Math.round(parseFloat(e.target.style.height));\n if (height < 10) {\n height = 10;\n }\n const multiline = height > 15;\n\n const newBottom = parseFloat(e.target.style.bottom);\n const originalBottom = parseFloat(e.target.dataset.originalBottom);\n const template = await Store.getTemplate(VerdocsEndpoint.getDefault(), this.sourceid);\n const oldField = template.fields.find(f => f.name === fieldname);\n const y = newBottom !== originalBottom ? newBottom / this.yscale : oldField?.y;\n\n updateField(VerdocsEndpoint.getDefault(), sourceid, fieldname, {width, height, y, multiline})\n .then(async updatedField => {\n const template = await Store.getTemplate(VerdocsEndpoint.getDefault(), this.sourceid);\n const newTemplate = JSON.parse(JSON.stringify(template)) as ITemplate;\n const fieldIndex = newTemplate.fields.findIndex(field => field.name === fieldname);\n if (fieldIndex > -1) {\n newTemplate.fields[fieldIndex] = updatedField;\n }\n Store.updateTemplate(this.sourceid, newTemplate);\n\n this.settingsChanged?.emit({fieldName: fieldname, field: updatedField});\n Object.assign(e.target.dataset, {x: 0, y: 0, h: 0});\n })\n .catch(e => console.log('Field update failed', e));\n }\n\n render() {\n const {source, sourceid, fieldname, editable = false, done = false, disabled = false, focused, xscale = 1, yscale = 1} = this;\n const {index, field} = Store.getField(source, sourceid, fieldname, this.field);\n let {required = false, placeholder = '', label = '', width = 150, height = 15, readonly = false, default: value = '', multiline = false} = field || {};\n const signerClass = `signer-${(index % 10) + 1}`;\n const small = height < 15;\n\n // TODO: Consolidate value/defaultValue handling between template and envelope fields.\n if ((field as any)?.value) {\n value = (field as any)?.value;\n }\n\n // TODO: This is an outdated technique from the old system. We should compute it.\n const maxlength = width / 5;\n\n if (done) {\n return <Host class={{done}}>{value}</Host>;\n }\n\n return (\n <Host class={{required, disabled, done, focused, small, [signerClass]: true}}>\n {editable && <div class=\"edge-top\" />}\n {editable && <div class=\"edge-right\" />}\n {editable && <div class=\"edge-left\" />}\n {editable && <div class=\"edge-bottom\" />}\n\n {label && <label>{label}</label>}\n\n {multiline ? (\n <textarea\n name={fieldname}\n required={required}\n placeholder={placeholder}\n disabled={readonly || disabled}\n ref={el => (this.inputEl = el)}\n onFocus={() => (this.focused = true)}\n onBlur={() => (this.focused = false)}\n >\n {value}\n </textarea>\n ) : (\n <input\n type=\"text\"\n value={value}\n name={fieldname}\n required={required}\n maxlength={maxlength}\n placeholder={placeholder}\n disabled={readonly || disabled}\n ref={el => (this.inputEl = el)}\n onFocus={() => (this.focused = true)}\n onBlur={() => (this.focused = false)}\n />\n )}\n\n {editable && (\n <Fragment>\n <div\n id={`verdocs-settings-panel-trigger-${fieldname}`}\n style={{transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})`}}\n class=\"settings-icon\"\n innerHTML={SettingsIcon}\n onClick={(e: any) => {\n e.stopPropagation();\n this.showingProperties = !this.showingProperties;\n }}\n />\n\n {this.showingProperties && (\n <verdocs-portal anchor={`verdocs-settings-panel-trigger-${fieldname}`} onClickAway={() => (this.showingProperties = false)}>\n <verdocs-template-field-properties\n templateId={sourceid}\n fieldName={fieldname}\n onClose={() => this.hideSettingsPanel()}\n onDelete={() => {\n this.deleted?.emit({fieldName: fieldname});\n return this.hideSettingsPanel();\n }}\n onSettingsChanged={e => {\n this.settingsChanged?.emit(e.detail);\n return this.hideSettingsPanel();\n }}\n helpText={\n 'Text boxes may be used to capture simple text input. Participant-entered values will be stored for later retrieval via the \"name\" field.<br /><br />If marked required, the participant must complete the field before proceeding.'\n }\n />\n </verdocs-portal>\n )}\n </Fragment>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -1,3 +1,4 @@
1
+ import interact from "interactjs";
1
2
  import { format } from "date-fns/format";
2
3
  import { h, Host, Fragment } from "@stencil/core";
3
4
  import { FORMAT_TIMESTAMP } from "../../../utils/Types";
@@ -78,6 +79,12 @@ export class VerdocsFieldTimestamp {
78
79
  }
79
80
  this.showingProperties = false;
80
81
  }
82
+ componentDidUpdate() {
83
+ if (this.isPreview) {
84
+ interact(this.el).unset();
85
+ return;
86
+ }
87
+ }
81
88
  render() {
82
89
  const { source, sourceid, fieldname, editable = false, done = false, disabled = false, focused, xscale = 1, yscale = 1 } = this;
83
90
  const { index, field } = Store.getField(source, sourceid, fieldname, this.field);
@@ -197,6 +204,25 @@ export class VerdocsFieldTimestamp {
197
204
  "setter": false,
198
205
  "defaultValue": "null"
199
206
  },
207
+ "isPreview": {
208
+ "type": "boolean",
209
+ "mutable": false,
210
+ "complexType": {
211
+ "original": "boolean",
212
+ "resolved": "boolean",
213
+ "references": {}
214
+ },
215
+ "required": false,
216
+ "optional": true,
217
+ "docs": {
218
+ "tags": [],
219
+ "text": "If set to true, it will force interact to unset the el, resulting in no dragging the field."
220
+ },
221
+ "getter": false,
222
+ "setter": false,
223
+ "reflect": true,
224
+ "attribute": "is-preview"
225
+ },
200
226
  "disabled": {
201
227
  "type": "boolean",
202
228
  "mutable": false,
@@ -1 +1 @@
1
- {"version":3,"file":"verdocs-field-timestamp.js","sourceRoot":"","sources":["../../../../src/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.tsx"],"names":[],"mappings":"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","sourcesContent":["import {format} from 'date-fns/format';\nimport {ITemplateField, IEnvelopeField} from '@verdocs/js-sdk';\nimport {Component, h, Host, Prop, Method, Event, EventEmitter, Fragment, State, Listen} from '@stencil/core';\nimport {FORMAT_TIMESTAMP} from '../../../utils/Types';\nimport {SettingsIcon} from '../../../utils/Icons';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Display a timestamp. Timestamps are not editable by signers. Instead, they are automatically\n * filled when the signer submits the document.\n */\n@Component({\n tag: 'verdocs-field-timestamp',\n styleUrl: 'verdocs-field-timestamp.scss',\n shadow: false,\n})\nexport class VerdocsFieldTimestamp {\n private el: HTMLInputElement;\n\n /**\n * Fields may be attached to templates or envelopes, but only template fields may be edited.\n */\n @Prop({reflect: true}) source: 'template' | 'envelope' = 'template';\n\n /**\n * The source template or envelope ID the field is found in.\n */\n @Prop({reflect: true}) sourceid: string = '';\n\n /**\n * The name of the field to display.\n */\n @Prop({reflect: true}) fieldname: string = '';\n\n /**\n * Override the field's settings. This is intended to be used during signing when fields are being\n * mutated.\n */\n @Prop() field: IEnvelopeField | null | undefined = null;\n\n /**\n * If set, overrides the field's settings object. Primarily used to support \"preview\" modes where all fields are disabled.\n */\n @Prop({reflect: true}) disabled?: boolean = false;\n\n /**\n * If set, a settings icon will be displayed on hover. The settings shown allow the field's recipient and other settings to be\n * changed, so it should typically only be enabled in the Builder.\n */\n @Prop({reflect: true}) editable?: boolean = false;\n\n /**\n * If set, the field may be dragged to a new location. This should only be enabled in the Builder, or for self-placed fields.\n */\n @Prop({reflect: true}) moveable?: boolean = false;\n\n /**\n * If set, the field is considered \"done\" and is drawn in a display-final-value state.\n */\n @Prop({reflect: true}) done?: boolean = false;\n\n /**\n * If set, the field will be be scaled horizontally by this factor.\n */\n @Prop({reflect: true}) xscale?: number = 1;\n\n /**\n * If set, the field will be be scaled vertically by this factor.\n */\n @Prop({reflect: true}) yscale?: number = 1;\n\n /**\n * The page the field is on\n */\n @Prop() pagenumber?: number = 1;\n\n /**\n * Event fired when the field's settings are changed.\n */\n @Event({composed: true}) settingsChanged: EventEmitter<{fieldName: string; field: ITemplateField}>;\n\n /**\n * Event fired when the field is deleted.\n */\n @Event({composed: true}) deleted: EventEmitter<{fieldName: string}>;\n\n @State() showingProperties?: boolean = false;\n @State() focused = false;\n\n @Listen('blur', {capture: true})\n handleBlur() {\n this.focused = false;\n }\n\n @Method() async focusField() {\n this.el.focus();\n this.focused = true;\n }\n\n @Method()\n async showSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.showPanel) {\n settingsPanel.showPanel();\n }\n }\n\n @Method()\n async hideSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.hidePanel) {\n settingsPanel.hidePanel();\n }\n this.showingProperties = false;\n }\n\n render() {\n const {source, sourceid, fieldname, editable = false, done = false, disabled = false, focused, xscale = 1, yscale = 1} = this;\n\n const {index, field} = Store.getField(source, sourceid, fieldname, this.field);\n const {required = false, placeholder = '', value = '', label = ''} = field || {};\n const signerClass = `signer-${(index % 10) + 1}`;\n\n const formatted = format(new Date(value || new Date().toISOString()), FORMAT_TIMESTAMP);\n\n if (done) {\n return <Host class={{done}}>{formatted}</Host>;\n }\n\n return (\n <Host class={{required, disabled, done, focused, [signerClass]: true}}>\n {label && <label>{label}</label>}\n <input type=\"text\" placeholder={placeholder} value={formatted} disabled={true} ref={el => (this.el = el)} onFocus={() => (this.focused = true)} />\n\n {editable && (\n <Fragment>\n <div\n id={`verdocs-settings-panel-trigger-${fieldname}`}\n style={{transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})`}}\n class=\"settings-icon\"\n innerHTML={SettingsIcon}\n onClick={(e: any) => {\n e.stopPropagation();\n this.showingProperties = !this.showingProperties;\n }}\n />\n\n {this.showingProperties && (\n <verdocs-portal anchor={`verdocs-settings-panel-trigger-${fieldname}`} onClickAway={() => (this.showingProperties = false)}>\n <verdocs-template-field-properties\n templateId={sourceid}\n fieldName={fieldname}\n onClose={() => this.hideSettingsPanel()}\n onDelete={() => {\n this.deleted?.emit({fieldName: fieldname});\n return this.hideSettingsPanel();\n }}\n onSettingsChanged={e => {\n this.settingsChanged?.emit(e.detail);\n return this.hideSettingsPanel();\n }}\n helpText={'Time stamps are automatically set when the recipient signs the document.'}\n />\n </verdocs-portal>\n )}\n </Fragment>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"verdocs-field-timestamp.js","sourceRoot":"","sources":["../../../../src/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.tsx"],"names":[],"mappings":"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","sourcesContent":["import interact from 'interactjs';\nimport {format} from 'date-fns/format';\nimport {ITemplateField, IEnvelopeField} from '@verdocs/js-sdk';\nimport {Component, h, Host, Prop, Method, Event, EventEmitter, Fragment, State, Listen} from '@stencil/core';\nimport {FORMAT_TIMESTAMP} from '../../../utils/Types';\nimport {SettingsIcon} from '../../../utils/Icons';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Display a timestamp. Timestamps are not editable by signers. Instead, they are automatically\n * filled when the signer submits the document.\n */\n@Component({\n tag: 'verdocs-field-timestamp',\n styleUrl: 'verdocs-field-timestamp.scss',\n shadow: false,\n})\nexport class VerdocsFieldTimestamp {\n private el: HTMLInputElement;\n\n /**\n * Fields may be attached to templates or envelopes, but only template fields may be edited.\n */\n @Prop({reflect: true}) source: 'template' | 'envelope' = 'template';\n\n /**\n * The source template or envelope ID the field is found in.\n */\n @Prop({reflect: true}) sourceid: string = '';\n\n /**\n * The name of the field to display.\n */\n @Prop({reflect: true}) fieldname: string = '';\n\n /**\n * Override the field's settings. This is intended to be used during signing when fields are being\n * mutated.\n */\n @Prop() field: IEnvelopeField | null | undefined = null;\n\n /**\n * If set to true, it will force interact to unset the el, resulting in no dragging the field.\n */\n @Prop({reflect: true}) isPreview?: boolean;\n\n /**\n * If set, overrides the field's settings object. Primarily used to support \"preview\" modes where all fields are disabled.\n */\n @Prop({reflect: true}) disabled?: boolean = false;\n\n /**\n * If set, a settings icon will be displayed on hover. The settings shown allow the field's recipient and other settings to be\n * changed, so it should typically only be enabled in the Builder.\n */\n @Prop({reflect: true}) editable?: boolean = false;\n\n /**\n * If set, the field may be dragged to a new location. This should only be enabled in the Builder, or for self-placed fields.\n */\n @Prop({reflect: true}) moveable?: boolean = false;\n\n /**\n * If set, the field is considered \"done\" and is drawn in a display-final-value state.\n */\n @Prop({reflect: true}) done?: boolean = false;\n\n /**\n * If set, the field will be be scaled horizontally by this factor.\n */\n @Prop({reflect: true}) xscale?: number = 1;\n\n /**\n * If set, the field will be be scaled vertically by this factor.\n */\n @Prop({reflect: true}) yscale?: number = 1;\n\n /**\n * The page the field is on\n */\n @Prop() pagenumber?: number = 1;\n\n /**\n * Event fired when the field's settings are changed.\n */\n @Event({composed: true}) settingsChanged: EventEmitter<{fieldName: string; field: ITemplateField}>;\n\n /**\n * Event fired when the field is deleted.\n */\n @Event({composed: true}) deleted: EventEmitter<{fieldName: string}>;\n\n @State() showingProperties?: boolean = false;\n @State() focused = false;\n\n @Listen('blur', {capture: true})\n handleBlur() {\n this.focused = false;\n }\n\n @Method() async focusField() {\n this.el.focus();\n this.focused = true;\n }\n\n @Method()\n async showSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.showPanel) {\n settingsPanel.showPanel();\n }\n }\n\n @Method()\n async hideSettingsPanel() {\n const settingsPanel = document.getElementById(`verdocs-settings-panel-${this.fieldname}`) as any;\n if (settingsPanel && settingsPanel.hidePanel) {\n settingsPanel.hidePanel();\n }\n this.showingProperties = false;\n }\n\n componentDidUpdate() {\n if (this.isPreview) {\n interact(this.el).unset();\n return;\n }\n }\n\n render() {\n const {source, sourceid, fieldname, editable = false, done = false, disabled = false, focused, xscale = 1, yscale = 1} = this;\n\n const {index, field} = Store.getField(source, sourceid, fieldname, this.field);\n const {required = false, placeholder = '', value = '', label = ''} = field || {};\n const signerClass = `signer-${(index % 10) + 1}`;\n\n const formatted = format(new Date(value || new Date().toISOString()), FORMAT_TIMESTAMP);\n\n if (done) {\n return <Host class={{done}}>{formatted}</Host>;\n }\n\n return (\n <Host class={{required, disabled, done, focused, [signerClass]: true}}>\n {label && <label>{label}</label>}\n <input type=\"text\" placeholder={placeholder} value={formatted} disabled={true} ref={el => (this.el = el)} onFocus={() => (this.focused = true)} />\n\n {editable && (\n <Fragment>\n <div\n id={`verdocs-settings-panel-trigger-${fieldname}`}\n style={{transform: `scale(${Math.floor((1 / xscale) * 1000) / 1000}, ${Math.floor((1 / yscale) * 1000) / 1000})`}}\n class=\"settings-icon\"\n innerHTML={SettingsIcon}\n onClick={(e: any) => {\n e.stopPropagation();\n this.showingProperties = !this.showingProperties;\n }}\n />\n\n {this.showingProperties && (\n <verdocs-portal anchor={`verdocs-settings-panel-trigger-${fieldname}`} onClickAway={() => (this.showingProperties = false)}>\n <verdocs-template-field-properties\n templateId={sourceid}\n fieldName={fieldname}\n onClose={() => this.hideSettingsPanel()}\n onDelete={() => {\n this.deleted?.emit({fieldName: fieldname});\n return this.hideSettingsPanel();\n }}\n onSettingsChanged={e => {\n this.settingsChanged?.emit(e.detail);\n return this.hideSettingsPanel();\n }}\n helpText={'Time stamps are automatically set when the recipient signs the document.'}\n />\n </verdocs-portal>\n )}\n </Fragment>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -165,25 +165,25 @@ export class VerdocsTemplateDocumentPage {
165
165
  }
166
166
  switch (type) {
167
167
  case 'textbox':
168
- return (h("verdocs-field-textbox", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, multiline: multiline, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
168
+ return (h("verdocs-field-textbox", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, multiline: multiline, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
169
169
  case 'textarea':
170
- return (h("verdocs-field-textarea", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
170
+ return (h("verdocs-field-textarea", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
171
171
  case 'date':
172
- return (h("verdocs-field-date", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
172
+ return (h("verdocs-field-date", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
173
173
  case 'attachment':
174
- return (h("verdocs-field-attachment", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
174
+ return (h("verdocs-field-attachment", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
175
175
  case 'dropdown':
176
- return (h("verdocs-field-dropdown", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
176
+ return (h("verdocs-field-dropdown", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
177
177
  case 'initial':
178
- return (h("verdocs-field-initial", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
178
+ return (h("verdocs-field-initial", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
179
179
  case 'signature':
180
- return (h("verdocs-field-signature", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, this.xScale, this.yScale) }));
180
+ return (h("verdocs-field-signature", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, this.xScale, this.yScale) }));
181
181
  case 'timestamp':
182
- return (h("verdocs-field-timestamp", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
182
+ return (h("verdocs-field-timestamp", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
183
183
  case 'checkbox':
184
- return (h("verdocs-field-checkbox", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
184
+ return (h("verdocs-field-checkbox", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
185
185
  case 'radio':
186
- return (h("verdocs-field-radio", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, style: getControlStyles(field, xScale, yScale) }));
186
+ return (h("verdocs-field-radio", { id: id, fieldname: name, source: "template", sourceid: templateId, editable: editable, disabled: disabled, done: done, xscale: xScale, yscale: yScale, pagenumber: pageNumber, isPreview: true, style: getControlStyles(field, xScale, yScale) }));
187
187
  default:
188
188
  return h(Fragment, null, name);
189
189
  }
@@ -1 +1 @@
1
- {"version":3,"file":"verdocs-template-document-page.js","sourceRoot":"","sources":["../../../../src/components/templates/verdocs-template-document-page/verdocs-template-document-page.tsx"],"names":[],"mappings":"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","sourcesContent":["// NOTE: This component does not have a story because it's not intended for external use.\n\nimport {getTemplate, getTemplateDocumentPageDisplayUri, type ITemplate, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Component, h, Host, Prop, Event, EventEmitter, State, Element, Fragment} from '@stencil/core';\nimport {IDocumentPageInfo, IPageLayer} from '../../../utils/Types';\nimport {getControlStyles, getFieldId} from '../../../utils/utils';\nimport {throttle} from '../../../utils/utils';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Represents one document page. This is primarily a layout container used to coordinate positions of\n * page-related layers such as the page itself, signature fields, etc. It is not intended to be used\n * on its own as an individual component.\n */\n@Component({\n tag: 'verdocs-template-document-page',\n styleUrl: 'verdocs-template-document-page.scss',\n shadow: false,\n})\nexport class VerdocsTemplateDocumentPage {\n private templateListenerId = null;\n private resizeObserver: ResizeObserver;\n\n @Element() container: HTMLElement;\n\n /**\n * The endpoint to load from.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * Whether the fields should be editable (Builder)\n */\n @Prop() editable = false;\n\n /**\n * Whether the fields should be disabled (Builder)\n */\n @Prop() disabled = false;\n\n /**\n * Whether the field are interactable (done/submitted disables this)\n */\n @Prop() done = false;\n\n /**\n * The ID of the template the document is for.\n */\n @Prop({reflect: true}) templateId: string = '';\n\n /**\n * The ID of the document to display.\n */\n @Prop({reflect: true}) documentId: string = '';\n\n /**\n * The page number being rendered. (Reminder: page numbers are 1-based.)\n */\n @Prop({reflect: true}) pageNumber: number = 1;\n\n /**\n * The \"virtual\" width of the page canvas. Defaults to 612 which at 72dpi is 8.5\" wide. This is used to compute\n * the aspect ratio of the final rendered element when scaling up/down.\n */\n @Prop() virtualWidth: number = 612;\n\n /**\n * The \"virtual\" height of the page canvas. Defaults to 792 which at 72dpi is 11\" tall. This is used to compute\n * the aspect ratio of the final rendered element when scaling up/down.\n */\n @Prop({mutable: true}) virtualHeight: number = 792;\n\n /**\n * The layers that will be rendered. The DOM structure will be a DIV container with one child DIV for each layer.\n * The parent DIV will have a unique ID, and each child DIV will have that ID with the layer name appended, e.g.\n * if `pages` was ['page', 'fields'] the structure will be:\n *\n * ```\n * <div id=\"verdocs-document-page-ker2fr1p9\">\n * <div id=\"verdocs-document-page-ker2fr1p9-page\"></div>\n * <div id=\"verdocs-document-page-ker2fr1p9-fields\"></div>\n * </div>\n * ```\n */\n @Prop() layers: IPageLayer[] = [{name: 'page', type: 'canvas'}];\n\n /**\n * Fired when a page has been rendered. This is also fired when the page is resized.\n */\n @Event() pageRendered: EventEmitter<IDocumentPageInfo>;\n\n @State() containerId = `verdocs-document-page-${Math.random().toString(36).substring(2, 11)}`;\n @State() renderedWidth: number = this.virtualWidth;\n @State() renderedHeight: number = this.virtualHeight;\n @State() naturalWidth: number = this.virtualWidth;\n @State() naturalHeight: number = this.virtualHeight;\n @State() aspectRatio: number = this.virtualWidth / this.virtualHeight;\n @State() skipFirstNotification = true;\n @State() pageDisplayUri = '';\n @State() xScale = 1;\n @State() yScale = 1;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n async componentWillLoad() {\n this.pageDisplayUri = await getTemplateDocumentPageDisplayUri(this.endpoint, this.documentId, this.pageNumber);\n this.listenToTemplate();\n }\n\n componentDidLoad() {\n this.resizeObserver = new ResizeObserver(\n throttle(entries => {\n for (const entry of entries) {\n const renderedWidth = entry.contentRect.width;\n this.renderedWidth = renderedWidth;\n this.renderedHeight = this.virtualHeight * (renderedWidth / this.virtualWidth);\n }\n\n this.notifyRenderedSize();\n }, 100),\n );\n\n this.resizeObserver.observe(this.container);\n }\n\n componentDidUpdate() {\n // This is fired when fields are updated and triggers the parent to re-attach behaviors like drag-and-drop\n this.notifyRenderedSize();\n }\n\n disconnectedCallback() {\n this.resizeObserver?.disconnect();\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n this.template = template;\n this.loading = false;\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n notifyRenderedSize() {\n // We skip one notification because by default we will always get at least two, one when rendering the initial size\n // and a second once we're able to compute the scale size, when the resizeObserver sets renderedWidth/renderedHeight.\n if (this.skipFirstNotification) {\n this.skipFirstNotification = false;\n return;\n }\n\n const xScale = this.renderedWidth / this.virtualWidth;\n if (this.xScale !== xScale) {\n this.xScale = xScale;\n }\n\n const yScale = this.renderedHeight / this.virtualHeight;\n if (this.yScale !== yScale) {\n this.yScale = yScale;\n }\n\n this.pageRendered.emit({\n // container: this.container,\n containerId: this.containerId,\n documentId: this.documentId,\n pageNumber: this.pageNumber,\n virtualWidth: this.virtualWidth,\n virtualHeight: this.virtualHeight,\n renderedWidth: this.renderedWidth,\n renderedHeight: this.renderedHeight,\n naturalWidth: this.naturalWidth,\n naturalHeight: this.naturalHeight,\n aspectRatio: this.aspectRatio,\n xScale,\n yScale,\n });\n }\n\n render() {\n if (this.loading) {\n return (\n <Host>\n <img src=\"https://public-assets.verdocs.com/loading-placeholder.png\" class=\"placeholder\" alt=\"Placeholder page\" />\n </Host>\n );\n }\n\n const height = `${this.renderedHeight}px`;\n\n return (\n <Host id={`${this.containerId}`} style={{height, flex: `0 0 ${height}`}}>\n {this.layers.map(layer =>\n layer.type === 'div' ? (\n <div class=\"verdocs-template-document-page-layer\" id={`${this.containerId}-${layer.name}`} style={{height}}>\n {layer.name === 'controls' &&\n (this.template?.fields || [])\n .filter(field => field && field.document_id === this.documentId && field.page === this.pageNumber)\n .map(field => {\n const id = getFieldId(field);\n let {name, type, multiline} = field;\n const {xScale, yScale, templateId, editable, disabled, done, pageNumber} = this;\n if (field['setting']?.leading > 0 || field['settings']?.leading > 0) {\n type = 'textarea';\n multiline = true;\n }\n switch (type as any) {\n case 'textbox':\n return (\n <verdocs-field-textbox\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n multiline={multiline}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'textarea':\n return (\n <verdocs-field-textarea\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'date':\n return (\n <verdocs-field-date\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'attachment':\n return (\n <verdocs-field-attachment\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'dropdown':\n return (\n <verdocs-field-dropdown\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'initial':\n return (\n <verdocs-field-initial\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'signature':\n return (\n <verdocs-field-signature\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, this.xScale, this.yScale)}\n />\n );\n case 'timestamp':\n return (\n <verdocs-field-timestamp\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'checkbox':\n return (\n <verdocs-field-checkbox\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'radio':\n return (\n <verdocs-field-radio\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n default:\n return <Fragment>{name}</Fragment>;\n }\n })}\n </div>\n ) : this.pageDisplayUri ? (\n <img\n class=\"verdocs-template-document-page-layer img\"\n id={`${this.containerId}-${layer.name}`}\n src={this.pageDisplayUri}\n alt={`Page ${this.pageNumber}`}\n aria-hidden={true}\n loading=\"lazy\"\n onLoad={(e: any) => {\n // Note that all we really care about is the aspect ratio. We track the natural Width and Height but they aren't really that\n // useful as individual values. The image will already have been scaled down to fit a DIV for display (100%, auto height).\n // Builder places fields offset into the rendered display area, not the original document's dimensions. So its X/Y values\n // for a field are based on the responsive Web view the Template editor was seeing. The IMG was scaled down there in the\n // exact same way, so we just honor it. We capture the natural width and height here more as information. Then we use the\n // aspect ratio to adjust the \"virtual\" height in case the page is not 8.5\"x11\".\n // TODO: Store this in the DB with each page.\n this.naturalWidth = e.target.naturalWidth;\n this.naturalHeight = e.target.naturalHeight;\n this.aspectRatio = this.naturalWidth / this.naturalHeight;\n this.virtualHeight = this.virtualWidth / this.aspectRatio;\n this.renderedHeight = e.target.offsetWidth / this.aspectRatio;\n }}\n />\n ) : (\n <div></div>\n ),\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"verdocs-template-document-page.js","sourceRoot":"","sources":["../../../../src/components/templates/verdocs-template-document-page/verdocs-template-document-page.tsx"],"names":[],"mappings":"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","sourcesContent":["// NOTE: This component does not have a story because it's not intended for external use.\n\nimport {getTemplate, getTemplateDocumentPageDisplayUri, type ITemplate, VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Component, h, Host, Prop, Event, EventEmitter, State, Element, Fragment} from '@stencil/core';\nimport {IDocumentPageInfo, IPageLayer} from '../../../utils/Types';\nimport {getControlStyles, getFieldId} from '../../../utils/utils';\nimport {throttle} from '../../../utils/utils';\nimport {Store} from '../../../utils/Datastore';\n\n/**\n * Represents one document page. This is primarily a layout container used to coordinate positions of\n * page-related layers such as the page itself, signature fields, etc. It is not intended to be used\n * on its own as an individual component.\n */\n@Component({\n tag: 'verdocs-template-document-page',\n styleUrl: 'verdocs-template-document-page.scss',\n shadow: false,\n})\nexport class VerdocsTemplateDocumentPage {\n private templateListenerId = null;\n private resizeObserver: ResizeObserver;\n\n @Element() container: HTMLElement;\n\n /**\n * The endpoint to load from.\n */\n @Prop() endpoint: VerdocsEndpoint = VerdocsEndpoint.getDefault();\n\n /**\n * Whether the fields should be editable (Builder)\n */\n @Prop() editable = false;\n\n /**\n * Whether the fields should be disabled (Builder)\n */\n @Prop() disabled = false;\n\n /**\n * Whether the field are interactable (done/submitted disables this)\n */\n @Prop() done = false;\n\n /**\n * The ID of the template the document is for.\n */\n @Prop({reflect: true}) templateId: string = '';\n\n /**\n * The ID of the document to display.\n */\n @Prop({reflect: true}) documentId: string = '';\n\n /**\n * The page number being rendered. (Reminder: page numbers are 1-based.)\n */\n @Prop({reflect: true}) pageNumber: number = 1;\n\n /**\n * The \"virtual\" width of the page canvas. Defaults to 612 which at 72dpi is 8.5\" wide. This is used to compute\n * the aspect ratio of the final rendered element when scaling up/down.\n */\n @Prop() virtualWidth: number = 612;\n\n /**\n * The \"virtual\" height of the page canvas. Defaults to 792 which at 72dpi is 11\" tall. This is used to compute\n * the aspect ratio of the final rendered element when scaling up/down.\n */\n @Prop({mutable: true}) virtualHeight: number = 792;\n\n /**\n * The layers that will be rendered. The DOM structure will be a DIV container with one child DIV for each layer.\n * The parent DIV will have a unique ID, and each child DIV will have that ID with the layer name appended, e.g.\n * if `pages` was ['page', 'fields'] the structure will be:\n *\n * ```\n * <div id=\"verdocs-document-page-ker2fr1p9\">\n * <div id=\"verdocs-document-page-ker2fr1p9-page\"></div>\n * <div id=\"verdocs-document-page-ker2fr1p9-fields\"></div>\n * </div>\n * ```\n */\n @Prop() layers: IPageLayer[] = [{name: 'page', type: 'canvas'}];\n\n /**\n * Fired when a page has been rendered. This is also fired when the page is resized.\n */\n @Event() pageRendered: EventEmitter<IDocumentPageInfo>;\n\n @State() containerId = `verdocs-document-page-${Math.random().toString(36).substring(2, 11)}`;\n @State() renderedWidth: number = this.virtualWidth;\n @State() renderedHeight: number = this.virtualHeight;\n @State() naturalWidth: number = this.virtualWidth;\n @State() naturalHeight: number = this.virtualHeight;\n @State() aspectRatio: number = this.virtualWidth / this.virtualHeight;\n @State() skipFirstNotification = true;\n @State() pageDisplayUri = '';\n @State() xScale = 1;\n @State() yScale = 1;\n\n @State() loading = true;\n @State() template: ITemplate | null = null;\n\n async componentWillLoad() {\n this.pageDisplayUri = await getTemplateDocumentPageDisplayUri(this.endpoint, this.documentId, this.pageNumber);\n this.listenToTemplate();\n }\n\n componentDidLoad() {\n this.resizeObserver = new ResizeObserver(\n throttle(entries => {\n for (const entry of entries) {\n const renderedWidth = entry.contentRect.width;\n this.renderedWidth = renderedWidth;\n this.renderedHeight = this.virtualHeight * (renderedWidth / this.virtualWidth);\n }\n\n this.notifyRenderedSize();\n }, 100),\n );\n\n this.resizeObserver.observe(this.container);\n }\n\n componentDidUpdate() {\n // This is fired when fields are updated and triggers the parent to re-attach behaviors like drag-and-drop\n this.notifyRenderedSize();\n }\n\n disconnectedCallback() {\n this.resizeObserver?.disconnect();\n this.unlistenToTemplate();\n }\n\n async listenToTemplate() {\n this.unlistenToTemplate();\n Store.subscribe(\n 'templates',\n this.templateId,\n () => getTemplate(this.endpoint, this.templateId),\n false,\n (template: ITemplate) => {\n this.template = template;\n this.loading = false;\n },\n );\n }\n\n unlistenToTemplate() {\n if (this.templateListenerId) {\n Store.store.delListener(this.templateListenerId);\n this.templateListenerId = null;\n }\n }\n\n notifyRenderedSize() {\n // We skip one notification because by default we will always get at least two, one when rendering the initial size\n // and a second once we're able to compute the scale size, when the resizeObserver sets renderedWidth/renderedHeight.\n if (this.skipFirstNotification) {\n this.skipFirstNotification = false;\n return;\n }\n\n const xScale = this.renderedWidth / this.virtualWidth;\n if (this.xScale !== xScale) {\n this.xScale = xScale;\n }\n\n const yScale = this.renderedHeight / this.virtualHeight;\n if (this.yScale !== yScale) {\n this.yScale = yScale;\n }\n\n this.pageRendered.emit({\n // container: this.container,\n containerId: this.containerId,\n documentId: this.documentId,\n pageNumber: this.pageNumber,\n virtualWidth: this.virtualWidth,\n virtualHeight: this.virtualHeight,\n renderedWidth: this.renderedWidth,\n renderedHeight: this.renderedHeight,\n naturalWidth: this.naturalWidth,\n naturalHeight: this.naturalHeight,\n aspectRatio: this.aspectRatio,\n xScale,\n yScale,\n });\n }\n\n render() {\n if (this.loading) {\n return (\n <Host>\n <img src=\"https://public-assets.verdocs.com/loading-placeholder.png\" class=\"placeholder\" alt=\"Placeholder page\" />\n </Host>\n );\n }\n\n const height = `${this.renderedHeight}px`;\n\n return (\n <Host id={`${this.containerId}`} style={{height, flex: `0 0 ${height}`}}>\n {this.layers.map(layer =>\n layer.type === 'div' ? (\n <div class=\"verdocs-template-document-page-layer\" id={`${this.containerId}-${layer.name}`} style={{height}}>\n {layer.name === 'controls' &&\n (this.template?.fields || [])\n .filter(field => field && field.document_id === this.documentId && field.page === this.pageNumber)\n .map(field => {\n const id = getFieldId(field);\n let {name, type, multiline} = field;\n const {xScale, yScale, templateId, editable, disabled, done, pageNumber} = this;\n if (field['setting']?.leading > 0 || field['settings']?.leading > 0) {\n type = 'textarea';\n multiline = true;\n }\n switch (type as any) {\n case 'textbox':\n return (\n <verdocs-field-textbox\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n multiline={multiline}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'textarea':\n return (\n <verdocs-field-textarea\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'date':\n return (\n <verdocs-field-date\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'attachment':\n return (\n <verdocs-field-attachment\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'dropdown':\n return (\n <verdocs-field-dropdown\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'initial':\n return (\n <verdocs-field-initial\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'signature':\n return (\n <verdocs-field-signature\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, this.xScale, this.yScale)}\n />\n );\n case 'timestamp':\n return (\n <verdocs-field-timestamp\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'checkbox':\n return (\n <verdocs-field-checkbox\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n case 'radio':\n return (\n <verdocs-field-radio\n id={id}\n fieldname={name}\n source=\"template\"\n sourceid={templateId}\n editable={editable}\n disabled={disabled}\n done={done}\n xscale={xScale}\n yscale={yScale}\n pagenumber={pageNumber}\n isPreview\n style={getControlStyles(field, xScale, yScale)}\n />\n );\n default:\n return <Fragment>{name}</Fragment>;\n }\n })}\n </div>\n ) : this.pageDisplayUri ? (\n <img\n class=\"verdocs-template-document-page-layer img\"\n id={`${this.containerId}-${layer.name}`}\n src={this.pageDisplayUri}\n alt={`Page ${this.pageNumber}`}\n aria-hidden={true}\n loading=\"lazy\"\n onLoad={(e: any) => {\n // Note that all we really care about is the aspect ratio. We track the natural Width and Height but they aren't really that\n // useful as individual values. The image will already have been scaled down to fit a DIV for display (100%, auto height).\n // Builder places fields offset into the rendered display area, not the original document's dimensions. So its X/Y values\n // for a field are based on the responsive Web view the Template editor was seeing. The IMG was scaled down there in the\n // exact same way, so we just honor it. We capture the natural width and height here more as information. Then we use the\n // aspect ratio to adjust the \"virtual\" height in case the page is not 8.5\"x11\".\n // TODO: Store this in the DB with each page.\n this.naturalWidth = e.target.naturalWidth;\n this.naturalHeight = e.target.naturalHeight;\n this.aspectRatio = this.naturalWidth / this.naturalHeight;\n this.virtualHeight = this.virtualWidth / this.aspectRatio;\n this.renderedHeight = e.target.offsetWidth / this.aspectRatio;\n }}\n />\n ) : (\n <div></div>\n ),\n )}\n </Host>\n );\n }\n}\n"]}
@@ -39,7 +39,6 @@ const menuOptions = [
39
39
  export class VerdocsTemplateFields {
40
40
  constructor() {
41
41
  this.templateListenerId = null;
42
- this.draggableEls = [];
43
42
  /**
44
43
  * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.
45
44
  */
@@ -114,15 +113,6 @@ export class VerdocsTemplateFields {
114
113
  }
115
114
  disconnectedCallback() {
116
115
  this.unlistenToTemplate();
117
- this.draggableEls.forEach(el => {
118
- try {
119
- interact(el).unset();
120
- }
121
- catch (e) {
122
- // Element may already be removed from the DOM
123
- }
124
- });
125
- this.draggableEls = [];
126
116
  }
127
117
  async listenToTemplate() {
128
118
  this.unlistenToTemplate();
@@ -189,9 +179,6 @@ export class VerdocsTemplateFields {
189
179
  end: this.handleMoveEnd.bind(this),
190
180
  },
191
181
  });
192
- if (!this.draggableEls.includes(el)) {
193
- this.draggableEls.push(el);
194
- }
195
182
  }
196
183
  async handleMoveField(event) {
197
184
  const oldX = +(event.target.getAttribute('posX') || 0);