@verdocs/web-sdk 1.9.15 → 1.9.20

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 (398) hide show
  1. package/dist/cjs/{Envelopes-eacee000.js → Envelopes-eb5c1ea9.js} +21 -6
  2. package/dist/cjs/Envelopes-eb5c1ea9.js.map +1 -0
  3. package/dist/cjs/{Templates-eb100ab3.js → Templates-8ef16e3d.js} +3 -3
  4. package/dist/cjs/Templates-8ef16e3d.js.map +1 -0
  5. package/dist/cjs/{Templates-acde16f2.js → Templates-c983e2a7.js} +4 -4
  6. package/dist/cjs/Templates-c983e2a7.js.map +1 -0
  7. package/dist/cjs/index-6528b430.js +2348 -0
  8. package/dist/cjs/index-6528b430.js.map +1 -0
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{templateStore-42a49905.js → templateStore-4caa4863.js} +2 -2
  11. package/dist/cjs/{templateStore-42a49905.js.map → templateStore-4caa4863.js.map} +1 -1
  12. package/dist/cjs/{utils-beee79a1.js → utils-eb1aab04.js} +26 -15
  13. package/dist/cjs/utils-eb1aab04.js.map +1 -0
  14. package/dist/cjs/verdocs-build.cjs.entry.js +4 -4
  15. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +6 -2
  16. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js.map +1 -1
  17. package/dist/cjs/verdocs-field-date.cjs.entry.js +8 -1
  18. package/dist/cjs/verdocs-field-date.cjs.entry.js.map +1 -1
  19. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +1 -1
  20. package/dist/cjs/verdocs-field-initial.cjs.entry.js +6 -2
  21. package/dist/cjs/verdocs-field-initial.cjs.entry.js.map +1 -1
  22. package/dist/cjs/verdocs-field-payment.cjs.entry.js +1 -1
  23. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +11 -8
  24. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js.map +1 -1
  25. package/dist/cjs/verdocs-field-signature_3.cjs.entry.js +9 -5
  26. package/dist/cjs/verdocs-field-signature_3.cjs.entry.js.map +1 -1
  27. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +5 -1
  28. package/dist/cjs/verdocs-field-textarea.cjs.entry.js.map +1 -1
  29. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +8 -3
  30. package/dist/cjs/verdocs-field-textbox.cjs.entry.js.map +1 -1
  31. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +15 -4
  32. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js.map +1 -1
  33. package/dist/cjs/verdocs-ok-dialog.cjs.entry.js +1 -1
  34. package/dist/cjs/verdocs-ok-dialog.cjs.entry.js.map +1 -1
  35. package/dist/cjs/verdocs-organization-card.cjs.entry.js +2 -2344
  36. package/dist/cjs/verdocs-organization-card.cjs.entry.js.map +1 -1
  37. package/dist/cjs/verdocs-preview.cjs.entry.js +4 -4
  38. package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js +1 -1
  39. package/dist/cjs/verdocs-send.cjs.entry.js +2 -2
  40. package/dist/cjs/verdocs-sign.cjs.entry.js +189 -124
  41. package/dist/cjs/verdocs-sign.cjs.entry.js.map +1 -1
  42. package/dist/cjs/verdocs-template-create_4.cjs.entry.js +4 -4
  43. package/dist/cjs/verdocs-view.cjs.entry.js +2 -2
  44. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  45. package/dist/collection/collection-manifest.json +1 -1
  46. package/dist/collection/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.js +1 -1
  47. package/dist/collection/components/dialogs/verdocs-ok-dialog/verdocs-ok-dialog.js.map +1 -1
  48. package/dist/collection/components/dialogs/verdocs-signature-dialog/verdocs-signature-dialog.js +3 -3
  49. package/dist/collection/components/dialogs/verdocs-signature-dialog/verdocs-signature-dialog.js.map +1 -1
  50. package/dist/collection/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.css +0 -0
  51. package/dist/collection/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.js +23 -1
  52. package/dist/collection/components/elements/verdocs-field-checkbox/verdocs-field-checkbox.js.map +1 -0
  53. package/dist/collection/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.stories.js +0 -0
  54. package/dist/collection/components/elements/verdocs-field-checkbox/verdocs-field-checkbox.stories.js.map +1 -0
  55. package/dist/collection/components/elements/verdocs-field-date/verdocs-field-date.js +25 -0
  56. package/dist/collection/components/elements/verdocs-field-date/verdocs-field-date.js.map +1 -1
  57. package/dist/collection/components/elements/verdocs-field-initial/verdocs-field-initial.css +4 -0
  58. package/dist/collection/components/elements/verdocs-field-initial/verdocs-field-initial.js +22 -0
  59. package/dist/collection/components/elements/verdocs-field-initial/verdocs-field-initial.js.map +1 -1
  60. package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.css +15 -6
  61. package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.js +27 -23
  62. package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.js.map +1 -1
  63. package/dist/collection/components/elements/verdocs-field-signature/verdocs-field-signature.css +4 -0
  64. package/dist/collection/components/elements/verdocs-field-signature/verdocs-field-signature.js +22 -0
  65. package/dist/collection/components/elements/verdocs-field-signature/verdocs-field-signature.js.map +1 -1
  66. package/dist/collection/components/elements/verdocs-field-textarea/verdocs-field-textarea.js +22 -0
  67. package/dist/collection/components/elements/verdocs-field-textarea/verdocs-field-textarea.js.map +1 -1
  68. package/dist/collection/components/elements/verdocs-field-textbox/verdocs-field-textbox.js +24 -1
  69. package/dist/collection/components/elements/verdocs-field-textbox/verdocs-field-textbox.js.map +1 -1
  70. package/dist/collection/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.css +4 -3
  71. package/dist/collection/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.js +32 -3
  72. package/dist/collection/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.js.map +1 -1
  73. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.css +17 -0
  74. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +192 -116
  75. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js.map +1 -1
  76. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.stories.js +3 -5
  77. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.stories.js.map +1 -1
  78. package/dist/collection/utils/Envelopes.js +6 -3
  79. package/dist/collection/utils/Envelopes.js.map +1 -1
  80. package/dist/collection/utils/Templates.js +1 -1
  81. package/dist/collection/utils/Templates.js.map +1 -1
  82. package/dist/collection/utils/utils.js +25 -14
  83. package/dist/collection/utils/utils.js.map +1 -1
  84. package/dist/components/Envelopes.js +21 -7
  85. package/dist/components/Envelopes.js.map +1 -1
  86. package/dist/components/Templates.js +1 -1
  87. package/dist/components/Templates.js.map +1 -1
  88. package/dist/components/Templates2.js +2 -2
  89. package/dist/components/Templates2.js.map +1 -1
  90. package/dist/components/index.d.ts +1 -1
  91. package/dist/components/index2.js +2328 -178
  92. package/dist/components/index2.js.map +1 -1
  93. package/dist/components/index3.js +196 -0
  94. package/dist/components/index3.js.map +1 -0
  95. package/dist/components/templateStore.js +1 -1
  96. package/dist/components/utils.js +25 -14
  97. package/dist/components/utils.js.map +1 -1
  98. package/dist/components/verdocs-field-checkbox.js +6 -1
  99. package/dist/components/verdocs-field-checkbox.js.map +1 -1
  100. package/dist/components/verdocs-field-date.js +8 -0
  101. package/dist/components/verdocs-field-date.js.map +1 -1
  102. package/dist/components/verdocs-field-initial.js +6 -1
  103. package/dist/components/verdocs-field-initial.js.map +1 -1
  104. package/dist/components/verdocs-field-radio-button.js +12 -8
  105. package/dist/components/verdocs-field-radio-button.js.map +1 -1
  106. package/dist/components/verdocs-field-signature2.js +6 -1
  107. package/dist/components/verdocs-field-signature2.js.map +1 -1
  108. package/dist/components/verdocs-field-textarea.js +5 -0
  109. package/dist/components/verdocs-field-textarea.js.map +1 -1
  110. package/dist/components/verdocs-field-textbox.js +7 -1
  111. package/dist/components/verdocs-field-textbox.js.map +1 -1
  112. package/dist/components/verdocs-field-timestamp.js +16 -4
  113. package/dist/components/verdocs-field-timestamp.js.map +1 -1
  114. package/dist/components/verdocs-ok-dialog2.js +1 -1
  115. package/dist/components/verdocs-ok-dialog2.js.map +1 -1
  116. package/dist/components/verdocs-organization-card.js +1 -2343
  117. package/dist/components/verdocs-organization-card.js.map +1 -1
  118. package/dist/components/verdocs-sign.js +193 -124
  119. package/dist/components/verdocs-sign.js.map +1 -1
  120. package/dist/components/verdocs-signature-dialog2.js +3 -3
  121. package/dist/components/verdocs-signature-dialog2.js.map +1 -1
  122. package/dist/docs.json +151 -16
  123. package/dist/esm/{Envelopes-19ca610d.js → Envelopes-979ad8c2.js} +21 -7
  124. package/dist/esm/Envelopes-979ad8c2.js.map +1 -0
  125. package/dist/esm/{Templates-f7c590c0.js → Templates-0638b1e4.js} +3 -3
  126. package/dist/esm/Templates-0638b1e4.js.map +1 -0
  127. package/dist/esm/{Templates-7a534fd1.js → Templates-bfa45a12.js} +4 -4
  128. package/dist/esm/Templates-bfa45a12.js.map +1 -0
  129. package/dist/esm/index-d264c496.js +2346 -0
  130. package/dist/esm/index-d264c496.js.map +1 -0
  131. package/dist/esm/loader.js +1 -1
  132. package/dist/esm/{templateStore-b8512d36.js → templateStore-d9856192.js} +2 -2
  133. package/dist/esm/{templateStore-b8512d36.js.map → templateStore-d9856192.js.map} +1 -1
  134. package/dist/esm/{utils-2e6beff8.js → utils-2dbb5f63.js} +26 -15
  135. package/dist/esm/utils-2dbb5f63.js.map +1 -0
  136. package/dist/esm/verdocs-build.entry.js +4 -4
  137. package/dist/esm/verdocs-field-checkbox.entry.js +6 -2
  138. package/dist/esm/verdocs-field-checkbox.entry.js.map +1 -1
  139. package/dist/esm/verdocs-field-date.entry.js +8 -1
  140. package/dist/esm/verdocs-field-date.entry.js.map +1 -1
  141. package/dist/esm/verdocs-field-dropdown.entry.js +1 -1
  142. package/dist/esm/verdocs-field-initial.entry.js +6 -2
  143. package/dist/esm/verdocs-field-initial.entry.js.map +1 -1
  144. package/dist/esm/verdocs-field-payment.entry.js +1 -1
  145. package/dist/esm/verdocs-field-radio-button.entry.js +12 -9
  146. package/dist/esm/verdocs-field-radio-button.entry.js.map +1 -1
  147. package/dist/esm/verdocs-field-signature_3.entry.js +9 -5
  148. package/dist/esm/verdocs-field-signature_3.entry.js.map +1 -1
  149. package/dist/esm/verdocs-field-textarea.entry.js +5 -1
  150. package/dist/esm/verdocs-field-textarea.entry.js.map +1 -1
  151. package/dist/esm/verdocs-field-textbox.entry.js +8 -3
  152. package/dist/esm/verdocs-field-textbox.entry.js.map +1 -1
  153. package/dist/esm/verdocs-field-timestamp.entry.js +15 -4
  154. package/dist/esm/verdocs-field-timestamp.entry.js.map +1 -1
  155. package/dist/esm/verdocs-ok-dialog.entry.js +1 -1
  156. package/dist/esm/verdocs-ok-dialog.entry.js.map +1 -1
  157. package/dist/esm/verdocs-organization-card.entry.js +1 -2343
  158. package/dist/esm/verdocs-organization-card.entry.js.map +1 -1
  159. package/dist/esm/verdocs-preview.entry.js +4 -4
  160. package/dist/esm/verdocs-quick-functions_3.entry.js +1 -1
  161. package/dist/esm/verdocs-send.entry.js +2 -2
  162. package/dist/esm/verdocs-sign.entry.js +189 -124
  163. package/dist/esm/verdocs-sign.entry.js.map +1 -1
  164. package/dist/esm/verdocs-template-create_4.entry.js +4 -4
  165. package/dist/esm/verdocs-view.entry.js +2 -2
  166. package/dist/esm/verdocs-web-sdk.js +1 -1
  167. package/dist/esm-es5/{Envelopes-19ca610d.js → Envelopes-979ad8c2.js} +2 -2
  168. package/dist/esm-es5/Envelopes-979ad8c2.js.map +1 -0
  169. package/dist/esm-es5/Templates-0638b1e4.js +2 -0
  170. package/dist/esm-es5/Templates-0638b1e4.js.map +1 -0
  171. package/dist/esm-es5/{Templates-7a534fd1.js → Templates-bfa45a12.js} +2 -2
  172. package/dist/esm-es5/Templates-bfa45a12.js.map +1 -0
  173. package/dist/esm-es5/index-d264c496.js +2 -0
  174. package/dist/esm-es5/index-d264c496.js.map +1 -0
  175. package/dist/esm-es5/loader.js +1 -1
  176. package/dist/esm-es5/loader.js.map +1 -1
  177. package/dist/esm-es5/{templateStore-b8512d36.js → templateStore-d9856192.js} +2 -2
  178. package/dist/esm-es5/{templateStore-b8512d36.js.map → templateStore-d9856192.js.map} +0 -0
  179. package/dist/esm-es5/utils-2dbb5f63.js +2 -0
  180. package/dist/esm-es5/utils-2dbb5f63.js.map +1 -0
  181. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  182. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  183. package/dist/esm-es5/verdocs-field-checkbox.entry.js.map +1 -1
  184. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  185. package/dist/esm-es5/verdocs-field-date.entry.js.map +1 -1
  186. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  187. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  188. package/dist/esm-es5/verdocs-field-initial.entry.js.map +1 -1
  189. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  190. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  191. package/dist/esm-es5/verdocs-field-radio-button.entry.js.map +1 -1
  192. package/dist/esm-es5/verdocs-field-signature_3.entry.js +1 -1
  193. package/dist/esm-es5/verdocs-field-signature_3.entry.js.map +1 -1
  194. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  195. package/dist/esm-es5/verdocs-field-textarea.entry.js.map +1 -1
  196. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  197. package/dist/esm-es5/verdocs-field-textbox.entry.js.map +1 -1
  198. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  199. package/dist/esm-es5/verdocs-field-timestamp.entry.js.map +1 -1
  200. package/dist/esm-es5/verdocs-ok-dialog.entry.js +1 -1
  201. package/dist/esm-es5/verdocs-ok-dialog.entry.js.map +1 -1
  202. package/dist/esm-es5/verdocs-organization-card.entry.js +1 -1
  203. package/dist/esm-es5/verdocs-organization-card.entry.js.map +1 -1
  204. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  205. package/dist/esm-es5/verdocs-quick-functions_3.entry.js +1 -1
  206. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  207. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  208. package/dist/esm-es5/verdocs-sign.entry.js.map +1 -1
  209. package/dist/esm-es5/verdocs-template-create_4.entry.js +1 -1
  210. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  211. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  212. package/dist/esm-es5/verdocs-web-sdk.js.map +1 -1
  213. package/dist/types/components/dialogs/verdocs-signature-dialog/verdocs-signature-dialog.d.ts +1 -1
  214. package/dist/types/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.d.ts +4 -0
  215. package/dist/types/components/elements/{verdocs-field-checkbox-group → verdocs-field-checkbox}/verdocs-field-checkbox.stories.d.ts +0 -0
  216. package/dist/types/components/elements/verdocs-field-date/verdocs-field-date.d.ts +4 -0
  217. package/dist/types/components/elements/verdocs-field-initial/verdocs-field-initial.d.ts +4 -0
  218. package/dist/types/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.d.ts +4 -11
  219. package/dist/types/components/elements/verdocs-field-signature/verdocs-field-signature.d.ts +4 -0
  220. package/dist/types/components/elements/verdocs-field-textarea/verdocs-field-textarea.d.ts +4 -0
  221. package/dist/types/components/elements/verdocs-field-textbox/verdocs-field-textbox.d.ts +4 -0
  222. package/dist/types/components/elements/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +4 -0
  223. package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +21 -6
  224. package/dist/types/components.d.ts +70 -10
  225. package/dist/types/utils/utils.d.ts +1 -0
  226. package/dist/verdocs-web-sdk/p-00e0da47.entry.js +2 -0
  227. package/dist/verdocs-web-sdk/p-00e0da47.entry.js.map +1 -0
  228. package/dist/verdocs-web-sdk/p-0189d628.system.entry.js +2 -0
  229. package/dist/verdocs-web-sdk/p-0189d628.system.entry.js.map +1 -0
  230. package/dist/verdocs-web-sdk/{p-f8526821.system.entry.js → p-08d09277.system.entry.js} +2 -2
  231. package/dist/verdocs-web-sdk/{p-f8526821.system.entry.js.map → p-08d09277.system.entry.js.map} +0 -0
  232. package/dist/verdocs-web-sdk/p-150a172e.system.entry.js +2 -0
  233. package/dist/verdocs-web-sdk/p-150a172e.system.entry.js.map +1 -0
  234. package/dist/verdocs-web-sdk/{p-d1f922c2.js → p-19418b30.js} +2 -2
  235. package/dist/verdocs-web-sdk/{p-d1f922c2.js.map → p-19418b30.js.map} +0 -0
  236. package/dist/verdocs-web-sdk/{p-529a754e.system.entry.js → p-1cc7d51c.system.entry.js} +2 -2
  237. package/dist/verdocs-web-sdk/{p-529a754e.system.entry.js.map → p-1cc7d51c.system.entry.js.map} +0 -0
  238. package/dist/verdocs-web-sdk/{p-305e3fb9.system.entry.js → p-1fab9df7.system.entry.js} +2 -2
  239. package/dist/verdocs-web-sdk/p-1fab9df7.system.entry.js.map +1 -0
  240. package/dist/verdocs-web-sdk/{p-4318e931.entry.js → p-24fc5cec.entry.js} +2 -2
  241. package/dist/verdocs-web-sdk/{p-4318e931.entry.js.map → p-24fc5cec.entry.js.map} +0 -0
  242. package/dist/verdocs-web-sdk/{p-9650cab5.system.js → p-2c0e91da.system.js} +2 -2
  243. package/dist/verdocs-web-sdk/p-2c0e91da.system.js.map +1 -0
  244. package/dist/verdocs-web-sdk/{p-aa2d9932.system.entry.js → p-3629c585.system.entry.js} +2 -2
  245. package/dist/verdocs-web-sdk/{p-aa2d9932.system.entry.js.map → p-3629c585.system.entry.js.map} +0 -0
  246. package/dist/verdocs-web-sdk/{p-4a2a1525.entry.js → p-38d63937.entry.js} +2 -2
  247. package/dist/verdocs-web-sdk/{p-4a2a1525.entry.js.map → p-38d63937.entry.js.map} +0 -0
  248. package/dist/verdocs-web-sdk/p-3b4d20a3.system.entry.js +2 -0
  249. package/dist/verdocs-web-sdk/p-3b4d20a3.system.entry.js.map +1 -0
  250. package/dist/verdocs-web-sdk/p-45715eaf.entry.js +2 -0
  251. package/dist/verdocs-web-sdk/p-45715eaf.entry.js.map +1 -0
  252. package/dist/verdocs-web-sdk/{p-6c7a70c0.system.entry.js → p-4e934f5b.system.entry.js} +2 -2
  253. package/dist/verdocs-web-sdk/{p-6c7a70c0.system.entry.js.map → p-4e934f5b.system.entry.js.map} +0 -0
  254. package/dist/verdocs-web-sdk/p-51a3ea62.system.js +2 -0
  255. package/dist/verdocs-web-sdk/p-51a3ea62.system.js.map +1 -0
  256. package/dist/verdocs-web-sdk/{p-620ac97f.entry.js → p-55de5397.entry.js} +2 -2
  257. package/dist/verdocs-web-sdk/{p-620ac97f.entry.js.map → p-55de5397.entry.js.map} +0 -0
  258. package/dist/verdocs-web-sdk/{p-d7c712e8.system.js → p-5742ce8f.system.js} +2 -2
  259. package/dist/verdocs-web-sdk/p-5742ce8f.system.js.map +1 -0
  260. package/dist/verdocs-web-sdk/{p-baa985a4.entry.js → p-751e0c80.entry.js} +2 -2
  261. package/dist/verdocs-web-sdk/{p-baa985a4.entry.js.map → p-751e0c80.entry.js.map} +0 -0
  262. package/dist/verdocs-web-sdk/{p-c6ef13bd.system.entry.js → p-7a7d791e.system.entry.js} +2 -2
  263. package/dist/verdocs-web-sdk/{p-c6ef13bd.system.entry.js.map → p-7a7d791e.system.entry.js.map} +0 -0
  264. package/dist/verdocs-web-sdk/{p-2467a244.entry.js → p-7b019b31.entry.js} +2 -2
  265. package/dist/verdocs-web-sdk/p-7b019b31.entry.js.map +1 -0
  266. package/dist/verdocs-web-sdk/p-7d8bc1c8.entry.js +2 -0
  267. package/dist/verdocs-web-sdk/p-7d8bc1c8.entry.js.map +1 -0
  268. package/dist/verdocs-web-sdk/p-84389de2.system.entry.js +2 -0
  269. package/dist/verdocs-web-sdk/p-84389de2.system.entry.js.map +1 -0
  270. package/dist/verdocs-web-sdk/{p-fb391ca5.entry.js → p-84cb5d2e.entry.js} +2 -2
  271. package/dist/verdocs-web-sdk/p-84cb5d2e.entry.js.map +1 -0
  272. package/dist/verdocs-web-sdk/{p-40565c66.system.entry.js → p-84df823c.system.entry.js} +2 -2
  273. package/dist/verdocs-web-sdk/p-84df823c.system.entry.js.map +1 -0
  274. package/dist/verdocs-web-sdk/p-89d6f165.js +2 -0
  275. package/dist/verdocs-web-sdk/p-89d6f165.js.map +1 -0
  276. package/dist/verdocs-web-sdk/p-8b34ee67.js +2 -0
  277. package/dist/verdocs-web-sdk/p-8b34ee67.js.map +1 -0
  278. package/dist/verdocs-web-sdk/{p-bf6e28ea.system.entry.js → p-8d354dfc.system.entry.js} +2 -2
  279. package/dist/verdocs-web-sdk/p-8d354dfc.system.entry.js.map +1 -0
  280. package/dist/verdocs-web-sdk/{p-00dec610.system.js → p-8ebd80e3.system.js} +2 -2
  281. package/dist/verdocs-web-sdk/{p-00dec610.system.js.map → p-8ebd80e3.system.js.map} +0 -0
  282. package/dist/verdocs-web-sdk/p-9c1e77fe.system.entry.js +2 -0
  283. package/dist/verdocs-web-sdk/p-9c1e77fe.system.entry.js.map +1 -0
  284. package/dist/verdocs-web-sdk/p-9cecb5df.system.js +2 -0
  285. package/dist/verdocs-web-sdk/p-9cecb5df.system.js.map +1 -0
  286. package/dist/verdocs-web-sdk/p-9cf35b81.entry.js +2 -0
  287. package/dist/verdocs-web-sdk/p-9cf35b81.entry.js.map +1 -0
  288. package/dist/verdocs-web-sdk/p-a227f663.system.entry.js +2 -0
  289. package/dist/verdocs-web-sdk/p-a227f663.system.entry.js.map +1 -0
  290. package/dist/verdocs-web-sdk/{p-d52297bc.system.entry.js → p-a389d9c0.system.entry.js} +2 -2
  291. package/dist/verdocs-web-sdk/{p-d52297bc.system.entry.js.map → p-a389d9c0.system.entry.js.map} +0 -0
  292. package/dist/verdocs-web-sdk/p-ab01f71e.js +2 -0
  293. package/dist/verdocs-web-sdk/p-ab01f71e.js.map +1 -0
  294. package/dist/verdocs-web-sdk/p-abb55e0c.system.entry.js +2 -0
  295. package/dist/verdocs-web-sdk/p-abb55e0c.system.entry.js.map +1 -0
  296. package/dist/verdocs-web-sdk/{p-edc2802d.system.entry.js → p-ae794996.system.entry.js} +2 -2
  297. package/dist/verdocs-web-sdk/{p-edc2802d.system.entry.js.map → p-ae794996.system.entry.js.map} +0 -0
  298. package/dist/verdocs-web-sdk/p-b10f26f2.entry.js +2 -0
  299. package/dist/verdocs-web-sdk/p-b10f26f2.entry.js.map +1 -0
  300. package/dist/verdocs-web-sdk/{p-524017b8.entry.js → p-b6b81230.entry.js} +2 -2
  301. package/dist/verdocs-web-sdk/{p-524017b8.entry.js.map → p-b6b81230.entry.js.map} +0 -0
  302. package/dist/verdocs-web-sdk/p-b73576e6.entry.js +2 -0
  303. package/dist/verdocs-web-sdk/p-b73576e6.entry.js.map +1 -0
  304. package/dist/verdocs-web-sdk/{p-b57effa2.system.entry.js → p-bd439481.system.entry.js} +2 -2
  305. package/dist/verdocs-web-sdk/{p-b57effa2.system.entry.js.map → p-bd439481.system.entry.js.map} +0 -0
  306. package/dist/verdocs-web-sdk/p-c16b6ca4.system.js +1 -1
  307. package/dist/verdocs-web-sdk/p-c16b6ca4.system.js.map +1 -1
  308. package/dist/verdocs-web-sdk/p-c2cc4492.js +2 -0
  309. package/dist/verdocs-web-sdk/p-c2cc4492.js.map +1 -0
  310. package/dist/verdocs-web-sdk/{p-8cce81ff.system.entry.js → p-c314c231.system.entry.js} +2 -2
  311. package/dist/verdocs-web-sdk/p-c314c231.system.entry.js.map +1 -0
  312. package/dist/verdocs-web-sdk/p-d2cea7fb.entry.js +2 -0
  313. package/dist/verdocs-web-sdk/p-d2cea7fb.entry.js.map +1 -0
  314. package/dist/verdocs-web-sdk/{p-11fbd83d.entry.js → p-d774ad24.entry.js} +2 -2
  315. package/dist/verdocs-web-sdk/p-d774ad24.entry.js.map +1 -0
  316. package/dist/verdocs-web-sdk/{p-c5794e33.entry.js → p-d7f0c475.entry.js} +2 -2
  317. package/dist/verdocs-web-sdk/{p-c5794e33.entry.js.map → p-d7f0c475.entry.js.map} +0 -0
  318. package/dist/verdocs-web-sdk/p-de241d16.js +2 -0
  319. package/dist/verdocs-web-sdk/p-de241d16.js.map +1 -0
  320. package/dist/verdocs-web-sdk/p-e1f005fc.system.js +2 -0
  321. package/dist/verdocs-web-sdk/p-e1f005fc.system.js.map +1 -0
  322. package/dist/verdocs-web-sdk/{p-a15b9bc8.entry.js → p-f22a201f.entry.js} +2 -2
  323. package/dist/verdocs-web-sdk/{p-a15b9bc8.entry.js.map → p-f22a201f.entry.js.map} +0 -0
  324. package/dist/verdocs-web-sdk/p-f3d4f320.entry.js +2 -0
  325. package/dist/verdocs-web-sdk/p-f3d4f320.entry.js.map +1 -0
  326. package/dist/verdocs-web-sdk/p-fe0c8a20.entry.js +2 -0
  327. package/dist/verdocs-web-sdk/{p-fd99a113.entry.js.map → p-fe0c8a20.entry.js.map} +1 -1
  328. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  329. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js.map +1 -1
  330. package/package.json +12 -12
  331. package/dist/cjs/Envelopes-eacee000.js.map +0 -1
  332. package/dist/cjs/Templates-acde16f2.js.map +0 -1
  333. package/dist/cjs/Templates-eb100ab3.js.map +0 -1
  334. package/dist/cjs/utils-beee79a1.js.map +0 -1
  335. package/dist/collection/components/elements/verdocs-field-checkbox-group/verdocs-field-checkbox.js.map +0 -1
  336. package/dist/collection/components/elements/verdocs-field-checkbox-group/verdocs-field-checkbox.stories.js.map +0 -1
  337. package/dist/esm/Envelopes-19ca610d.js.map +0 -1
  338. package/dist/esm/Templates-7a534fd1.js.map +0 -1
  339. package/dist/esm/Templates-f7c590c0.js.map +0 -1
  340. package/dist/esm/utils-2e6beff8.js.map +0 -1
  341. package/dist/esm-es5/Envelopes-19ca610d.js.map +0 -1
  342. package/dist/esm-es5/Templates-7a534fd1.js.map +0 -1
  343. package/dist/esm-es5/Templates-f7c590c0.js +0 -2
  344. package/dist/esm-es5/Templates-f7c590c0.js.map +0 -1
  345. package/dist/esm-es5/utils-2e6beff8.js +0 -2
  346. package/dist/esm-es5/utils-2e6beff8.js.map +0 -1
  347. package/dist/verdocs-web-sdk/p-11fbd83d.entry.js.map +0 -1
  348. package/dist/verdocs-web-sdk/p-2467a244.entry.js.map +0 -1
  349. package/dist/verdocs-web-sdk/p-26dc355e.entry.js +0 -2
  350. package/dist/verdocs-web-sdk/p-26dc355e.entry.js.map +0 -1
  351. package/dist/verdocs-web-sdk/p-2a153dae.system.entry.js +0 -2
  352. package/dist/verdocs-web-sdk/p-2a153dae.system.entry.js.map +0 -1
  353. package/dist/verdocs-web-sdk/p-305e3fb9.system.entry.js.map +0 -1
  354. package/dist/verdocs-web-sdk/p-339c7685.system.entry.js +0 -2
  355. package/dist/verdocs-web-sdk/p-339c7685.system.entry.js.map +0 -1
  356. package/dist/verdocs-web-sdk/p-3c2550a8.system.entry.js +0 -2
  357. package/dist/verdocs-web-sdk/p-3c2550a8.system.entry.js.map +0 -1
  358. package/dist/verdocs-web-sdk/p-40565c66.system.entry.js.map +0 -1
  359. package/dist/verdocs-web-sdk/p-4a332358.system.entry.js +0 -2
  360. package/dist/verdocs-web-sdk/p-4a332358.system.entry.js.map +0 -1
  361. package/dist/verdocs-web-sdk/p-5a323cf3.system.js +0 -2
  362. package/dist/verdocs-web-sdk/p-5a323cf3.system.js.map +0 -1
  363. package/dist/verdocs-web-sdk/p-68ffd4bf.entry.js +0 -2
  364. package/dist/verdocs-web-sdk/p-68ffd4bf.entry.js.map +0 -1
  365. package/dist/verdocs-web-sdk/p-7ee5530d.system.entry.js +0 -2
  366. package/dist/verdocs-web-sdk/p-7ee5530d.system.entry.js.map +0 -1
  367. package/dist/verdocs-web-sdk/p-81343fb3.js +0 -2
  368. package/dist/verdocs-web-sdk/p-81343fb3.js.map +0 -1
  369. package/dist/verdocs-web-sdk/p-83135a56.entry.js +0 -2
  370. package/dist/verdocs-web-sdk/p-83135a56.entry.js.map +0 -1
  371. package/dist/verdocs-web-sdk/p-8cce81ff.system.entry.js.map +0 -1
  372. package/dist/verdocs-web-sdk/p-9650cab5.system.js.map +0 -1
  373. package/dist/verdocs-web-sdk/p-a5ce60d9.entry.js +0 -2
  374. package/dist/verdocs-web-sdk/p-a5ce60d9.entry.js.map +0 -1
  375. package/dist/verdocs-web-sdk/p-b3ee5dd5.system.entry.js +0 -2
  376. package/dist/verdocs-web-sdk/p-b3ee5dd5.system.entry.js.map +0 -1
  377. package/dist/verdocs-web-sdk/p-b4de55c1.entry.js +0 -2
  378. package/dist/verdocs-web-sdk/p-b4de55c1.entry.js.map +0 -1
  379. package/dist/verdocs-web-sdk/p-b87bda66.js +0 -2
  380. package/dist/verdocs-web-sdk/p-b87bda66.js.map +0 -1
  381. package/dist/verdocs-web-sdk/p-bf6e28ea.system.entry.js.map +0 -1
  382. package/dist/verdocs-web-sdk/p-d534fffb.js +0 -2
  383. package/dist/verdocs-web-sdk/p-d534fffb.js.map +0 -1
  384. package/dist/verdocs-web-sdk/p-d7c712e8.system.js.map +0 -1
  385. package/dist/verdocs-web-sdk/p-deb5b86b.entry.js +0 -2
  386. package/dist/verdocs-web-sdk/p-deb5b86b.entry.js.map +0 -1
  387. package/dist/verdocs-web-sdk/p-df877830.entry.js +0 -2
  388. package/dist/verdocs-web-sdk/p-df877830.entry.js.map +0 -1
  389. package/dist/verdocs-web-sdk/p-df878df9.system.js +0 -2
  390. package/dist/verdocs-web-sdk/p-df878df9.system.js.map +0 -1
  391. package/dist/verdocs-web-sdk/p-e6f928eb.js +0 -2
  392. package/dist/verdocs-web-sdk/p-e6f928eb.js.map +0 -1
  393. package/dist/verdocs-web-sdk/p-e918e13e.entry.js +0 -2
  394. package/dist/verdocs-web-sdk/p-e918e13e.entry.js.map +0 -1
  395. package/dist/verdocs-web-sdk/p-ed55daf4.system.entry.js +0 -2
  396. package/dist/verdocs-web-sdk/p-ed55daf4.system.entry.js.map +0 -1
  397. package/dist/verdocs-web-sdk/p-fb391ca5.entry.js.map +0 -1
  398. package/dist/verdocs-web-sdk/p-fd99a113.entry.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"verdocs-sign.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-sign/verdocs-sign.tsx"],"names":[],"mappings":"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","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Envelopes} from '@verdocs/js-sdk/Envelopes';\nimport {IDocumentField, IRecipient} from '@verdocs/js-sdk/Envelopes/Types';\nimport {updateRecipientStatus} from '@verdocs/js-sdk/Envelopes/Recipients';\nimport {isValidEmail, isValidPhone} from '@verdocs/js-sdk/Templates/Validators';\nimport {Event, EventEmitter, Host, Fragment, Component, Prop, State, h} from '@stencil/core';\nimport {fullNameToInitials, getFieldId, getRoleIndex, renderDocumentField} from '../../../utils/utils';\nimport EnvelopeStore from '../../../utils/envelopeStore';\nimport {getEnvelopeById} from '../../../utils/Envelopes';\nimport {IDocumentPageInfo} from '../../../utils/Types';\nimport {SDKError} from '../../../utils/errors';\nimport {createSignature} from '@verdocs/js-sdk/Envelopes/Signatures';\nimport {updateEnvelopeFieldSignature} from '@verdocs/js-sdk/Envelopes/Envelopes';\n\n/**\n * Display an envelope signing experience. This will display the envelope's attached\n * documents with signing fields overlaid on each page.\n *\n * The component will attempt to initiate a signing session and load the specified\n * envelope. If successful, the recipient's fields will be enabled and the user will\n * be able to sign the envelope's attached documents. If not, an `sdkError` will be\n * thrown and the component will be blank/empty. To provide the best user experience,\n * applications should capture and handle this error to provide the user with\n * instructions/options for next steps based on the application's design and workflow.\n *\n * Unlike other components, this will always create its own endpoint to manage the\n * session session. This endpoint will be included in event callbacks for the\n * convenience of host applications that may wish to make server calls using the\n * signer's credentials once signing is complete (e.g. to obtain copies of\n * the signed attachments.)\n */\n@Component({\n tag: 'verdocs-sign',\n styleUrl: 'verdocs-sign.scss',\n shadow: false,\n})\nexport class VerdocsSign {\n endpoint: VerdocsEndpoint = null;\n\n /**\n * The ID of the envelope to sign.\n */\n @Prop() envelopeId: string | null = null;\n\n /**\n * The ID of the role that will be signing e.g. 'Recipient 1'\n */\n @Prop() roleId: string | null = null;\n\n /**\n * The invite code for the signer.\n */\n @Prop() inviteCode: string | null = null;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when any field is updated. Note that the current active endpoint is\n * provided as a parameter as a convenience for callers when this coimponent\n */\n @Event({composed: true}) fieldUpdated: EventEmitter<{endpoint: VerdocsEndpoint}>;\n\n @State() recipient: IRecipient | null = null;\n @State() signerToken = null;\n // @State() envelope: IEnvelope | null = null;\n // @State() fields: IDocumentField[] = [];\n @State() hasSignature = false;\n @State() nextButtonLabel = 'Start';\n @State() focusedField = '';\n\n @State() finishLater = false;\n @State() showFinishLater = false;\n\n recipientIndex: number = -1;\n fields: IDocumentField[] = [];\n\n componentWillLoad() {\n this.endpoint = new VerdocsEndpoint({sessionType: 'signing'});\n }\n\n async componentDidLoad() {\n if (!this.envelopeId) {\n this.sdkError?.emit(new SDKError('[SIGN] Missing required envelopId', 500, ''));\n return;\n }\n\n if (!this.roleId) {\n this.sdkError?.emit(new SDKError('[SIGN] Missing required roleId', 500, ''));\n return;\n }\n\n if (!this.inviteCode) {\n this.sdkError?.emit(new SDKError('[SIGN] Missing required inviteCode', 500, ''));\n return;\n }\n\n try {\n console.log(`[SIGN] Processing invite code for ${this.envelopeId} / ${this.roleId}`);\n const {session, recipient, signerToken} = await Envelopes.getSigningSession(this.endpoint, {\n envelopeId: this.envelopeId,\n roleId: this.roleId,\n inviteCode: this.inviteCode,\n });\n\n console.log(`[SIGN] Loaded signing session ${session.email} / ${session.profile_id}`);\n\n this.recipient = recipient;\n this.signerToken = signerToken;\n this.endpoint.setToken(signerToken);\n\n if (this.recipient.agreed) {\n this.nextButtonLabel = 'Next';\n }\n\n await getEnvelopeById(this.endpoint, this.envelopeId);\n // const envelope = await Envelopes.getEnvelope(this.endpoint, this.envelopeId);\n // this.envelope = envelope;\n // console.log('[SIGN] Loaded envelope', envelope);\n\n this.recipientIndex = EnvelopeStore.envelope.recipients.findIndex(recipient => recipient.role_name == this.roleId);\n if (this.recipientIndex > -1) {\n this.recipient = EnvelopeStore.envelope.recipients[this.recipientIndex];\n this.fields = this.recipient.fields;\n }\n\n // TODO: Fix service to allow this?\n // const sigs = await getSignatures();\n // console.log('sigs', sigs);\n } catch (e) {\n console.log('Error with signing session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handleClickAgree() {\n updateRecipientStatus(this.endpoint, this.envelopeId, this.roleId, 'update', {agreed: true})\n .then(r => {\n this.nextButtonLabel = 'Next';\n this.recipient = r;\n })\n .catch(e => {\n console.log('Update failure', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n });\n }\n\n async savePDF() {\n const fileName = `${EnvelopeStore.envelope.name} - ${EnvelopeStore.envelope.updated_at.split('T')[0]}.pdf`;\n const data = await Envelopes.getEnvelopeFile(this.endpoint, this.envelopeId, EnvelopeStore.envelope.envelope_document_id);\n\n // This is better in React than doing window.href= or similar to trigger a download. For a description of the technique\n // see https://stackoverflow.com/questions/8126623/downloading-canvas-element-to-an-image\n let xhr = new XMLHttpRequest();\n xhr.responseType = 'blob';\n xhr.onload = function () {\n let a = document.createElement('a');\n a.href = window.URL.createObjectURL(xhr.response);\n a.download = fileName;\n a.style.display = 'none';\n document.body.appendChild(a);\n a.click();\n a.remove();\n };\n\n xhr.open('GET', `data:application/pdf;base64,${data}`);\n xhr.send();\n }\n\n async handleOptionSelected(e) {\n switch (e.detail.id) {\n case 'later':\n this.finishLater = true;\n this.showFinishLater = true;\n // this.router.navigate([`view/sign/${this.envelopeId}/role/${this.roleName}/saved`]);\n // if (!window?.['STORYBOOK_ENV']) {\n // window.alert('User intends to sign later.');\n // }\n break;\n case 'claim':\n break;\n case 'decline':\n break;\n case 'print':\n break;\n case 'download':\n this.savePDF().catch(() => {});\n break;\n }\n }\n\n async handleFieldChange(field: IDocumentField, e: any, optionId?: string) {\n console.log('fieldChange', field, e);\n const {value, checked} = e.target;\n\n switch (field.type) {\n case 'textbox':\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n if (e.response?.status === 401 && e.response?.data?.error === 'jwt expired') {\n console.log('jwt expired');\n }\n console.log('Error updating', e);\n });\n break;\n\n case 'checkbox_group':\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: {options: [{id: optionId, checked}]}})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n console.log('Error updating', e);\n });\n break;\n\n case 'radio_button_group':\n const options = field.settings.options.map(option => ({id: option.id, selected: optionId === option.id}));\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: {options}})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n console.log('Error updating', e);\n });\n break;\n\n case 'dropdown':\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: e.detail})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n console.log('Error updating', e);\n });\n break;\n\n case 'initial':\n console.log('Got initial', e.detail);\n break;\n\n case 'signature':\n console.log('Got signature', e.detail);\n\n const newSignature = await createSignature(this.endpoint, 'signature', e.detail);\n console.log('Created signature', newSignature);\n\n // --data-raw '{\"ip_address\":\"ip_unavailable\"}' \\\n const attachResult = await updateEnvelopeFieldSignature(this.endpoint, this.envelopeId, field.name, newSignature.id);\n console.log('Attach result', attachResult);\n break;\n\n case 'date':\n const iso = e.target.getAttribute('iso');\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, field.name, {prepared: false, value: iso})\n .then(r => console.log('Update result', r))\n .catch(e => {\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n if (e.response?.status === 401 && e.response?.data?.error === 'jwt expired') {\n console.log('jwt expired');\n }\n console.log('Error updating', e);\n });\n break;\n\n default:\n console.log('Unhandled field update', {value, checked}, field);\n break;\n }\n }\n\n isFieldValid(field: IDocumentField) {\n switch (field.type) {\n case 'textbox':\n switch (field.settings?.validator || '') {\n case 'email':\n return isValidEmail(field.settings?.result || '');\n case 'phone':\n return isValidPhone(field.settings?.result || '');\n default:\n return !!field.settings?.result;\n }\n\n case 'signature':\n case 'initial':\n case 'textarea':\n case 'date':\n case 'timestamp':\n case 'attachment':\n return !!field.settings?.result;\n case 'dropdown':\n return !!field.settings?.value;\n case 'checkbox_group':\n const checked = (field.settings?.options?.filter(option => option.checked) || []).length;\n return checked >= (field.settings?.minimum_checked || 0) && checked <= (field.settings?.maximum_checked || 999);\n case 'radio_button_group':\n return (field.settings?.options?.filter(option => option.selected) || []).length > 0;\n // TODO\n // case 'checkbox':\n // return <verdocs-field-checkbox style={style} value={result || ''} id={id} />;\n // case 'payment':\n // return <verdocs-field-payment style={style} field={field} id={id} />;\n default:\n return false;\n }\n }\n\n // (async () => {\n // await customElements.whenDefined('verdocs-field-signature');\n // const els = document.getElementById('verdocs-field-signature');\n // await els.focusField();\n // })();\n\n handleNext() {\n // Find and focus the next incomplete required field\n const requiredFields = this.fields.filter(field => field.required);\n console.log('required Fields', requiredFields);\n\n const focusedIndex = requiredFields.findIndex(field => field.name === this.focusedField);\n console.log('focused Index', focusedIndex);\n\n let nextFocusedIndex = focusedIndex + 1;\n if (nextFocusedIndex >= requiredFields.length) {\n nextFocusedIndex = 0;\n }\n\n const nextRequiredField = requiredFields[nextFocusedIndex];\n console.log('next required field', nextRequiredField);\n\n if (nextRequiredField) {\n const id = getFieldId(nextRequiredField);\n const el = document.getElementById(id) as any;\n console.log('focusing', id, el);\n el?.focusField();\n this.focusedField = nextRequiredField.name;\n }\n }\n\n handlePageRendered(e) {\n const pageInfo = e.detail as IDocumentPageInfo;\n console.log('[SIGN] Page rendered', pageInfo);\n\n const roleIndex = getRoleIndex(EnvelopeStore.roleNames, this.recipient.role_name);\n console.log('rendering fields for recipient', roleIndex);\n const recipientFields = this.recipient.fields.filter(field => field.page === pageInfo.pageNumber);\n // const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);\n console.log('[SIGN] Fields on page', recipientFields);\n recipientFields.forEach(field => {\n const el = renderDocumentField(field, pageInfo, roleIndex, {disabled: false, editable: false, draggable: false});\n if (!el) {\n return;\n }\n\n el.addEventListener('input', e => {\n this.handleFieldChange(field, e);\n });\n\n el.addEventListener('fieldChange', e => {\n this.handleFieldChange(field, e);\n });\n\n el.setAttribute('roleindex', roleIndex);\n el.setAttribute('xScale', pageInfo.xScale);\n el.setAttribute('yScale', pageInfo.yScale);\n el.setAttribute('initials', this.recipient ? fullNameToInitials(this.recipient.full_name) : '');\n el.setAttribute('name', this.recipient?.full_name || '');\n\n // interact(el).draggable({\n // listeners: {\n // start(event) {\n // console.log('[FIELDS] Drag started', event.type, event.target);\n // },\n // move(event) {\n // const oldX = +(event.target.getAttribute('posX') || 0);\n // const oldY = +(event.target.getAttribute('posY') || 0);\n // const xScale = +(event.target.getAttribute('xScale') || 1);\n // const yScale = +(event.target.getAttribute('yScale') || 1);\n // const newX = event.dx / xScale + oldX;\n // const newY = event.dy / yScale + oldY;\n // event.target.setAttribute('posX', newX);\n // event.target.setAttribute('posy', newY);\n // updateCssTransform(event.target, 'translate', `${newX}px, ${newY}px`);\n // },\n // end(event) {\n // console.log('[FIELDS] Drag ended', event);\n // // event.target.setAttribute('posX', 0);\n // // event.target.setAttribute('posy', 0);\n // // updateCssTransform(event.target, 'translate', `${0}px, ${0}px`);\n // },\n // },\n // });\n });\n\n EnvelopeStore.envelope.recipients\n .filter(recipient => recipient.role_name !== this.recipient.role_name)\n .map(otherRecipient => {\n const otherRoleIndex = getRoleIndex(EnvelopeStore.roleNames, otherRecipient.role_name);\n console.log('Rendering fields for other recipient', otherRoleIndex, otherRecipient);\n const recipientFields = otherRecipient.fields.filter(field => field.page === pageInfo.pageNumber);\n // const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);\n console.log('[SIGN] Fields on page', recipientFields);\n recipientFields.forEach(field => {\n const el = renderDocumentField(field, pageInfo, otherRoleIndex, {disabled: true, editable: false, draggable: false});\n if (!el) {\n return;\n }\n\n el.setAttribute('roleindex', otherRoleIndex);\n el.setAttribute('xScale', pageInfo.xScale);\n el.setAttribute('yScale', pageInfo.yScale);\n });\n });\n }\n\n render() {\n if (EnvelopeStore.loading || !EnvelopeStore.envelope) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n const menuOptions = [\n {id: 'later', label: 'Finish Later'}, //\n {id: 'claim', label: 'Claim the Document', disabled: true},\n {id: 'decline', label: 'Decline to Sign'},\n {id: 'print', label: 'Print Without Signing'},\n {id: 'download', label: 'Download'},\n ];\n\n return (\n <Host class={{agreed: this.recipient?.agreed}}>\n {!this.finishLater && (\n <div class=\"intro\">\n <div class=\"inner\">Please review and act on these documents.</div>\n </div>\n )}\n\n <div class=\"header\">\n <div class=\"inner\">\n {!this.finishLater && (\n <div class=\"toolbar\">\n <div class=\"tools\">\n <verdocs-dropdown options={menuOptions} onOptionSelected={e => this.handleOptionSelected(e)} />\n\n {!this.recipient?.agreed ? (\n <div class=\"agree\">\n <verdocs-checkbox name=\"agree\" label=\"I agree to use electronic records and signatures.\" onInput={() => this.handleClickAgree()} />\n </div>\n ) : (\n <div style={{flex: '1'}} />\n )}\n <verdocs-button size=\"small\" label={this.nextButtonLabel} disabled={!this.recipient?.agreed} onClick={() => this.handleNext()} />\n </div>\n </div>\n )}\n </div>\n </div>\n\n {!this.recipient?.agreed ? <div class=\"cover\" /> : <div style={{display: 'none'}} />}\n\n <div class=\"document\">\n {(EnvelopeStore.envelope.documents || []).map(envelopeDocument => {\n const pages = [...(envelopeDocument?.pages || [])];\n pages.sort((a, b) => a.sequence - b.sequence);\n\n return (\n <Fragment>\n {pages.map(page => (\n <verdocs-document-page\n pageImageUri={page.display_uri}\n virtualWidth={612}\n virtualHeight={792}\n pageNumber={page.sequence}\n onPageRendered={e => this.handlePageRendered(e)}\n layers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n ))}\n </Fragment>\n );\n })}\n </div>\n\n {this.showFinishLater && (\n <verdocs-ok-dialog\n heading=\"You've saved your document to finish later.\"\n message=\"To complete the document, use the link in the original email notification inviting you to review and finish the document.\"\n onNext={() => (this.showFinishLater = false)}\n />\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"verdocs-sign.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-sign/verdocs-sign.tsx"],"names":[],"mappings":"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","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {Envelopes} from '@verdocs/js-sdk/Envelopes';\nimport {createInitials} from '@verdocs/js-sdk/Envelopes/Initials';\nimport {createSignature} from '@verdocs/js-sdk/Envelopes/Signatures';\nimport {IDocumentField, IEnvelope, IRecipient} from '@verdocs/js-sdk/Envelopes/Types';\nimport {envelopeRecipientAgree, envelopeRecipientDecline, envelopeRecipientSubmit} from '@verdocs/js-sdk/Envelopes/Recipients';\nimport {isValidEmail, isValidPhone} from '@verdocs/js-sdk/Templates/Validators';\nimport {Event, EventEmitter, Host, Fragment, Component, Prop, State, h} from '@stencil/core';\nimport {updateEnvelopeFieldInitials, updateEnvelopeFieldSignature} from '@verdocs/js-sdk/Envelopes/Envelopes';\nimport {fullNameToInitials, getFieldId, getRoleIndex, renderDocumentField} from '../../../utils/utils';\nimport {getEnvelopeById} from '../../../utils/Envelopes';\nimport EnvelopeStore from '../../../utils/envelopeStore';\nimport {IDocumentPageInfo} from '../../../utils/Types';\nimport {SDKError} from '../../../utils/errors';\n\nconst PrintIcon = `<svg focusable=\"false\" aria-hidden=\"true\" viewBox=\"0 0 24 24\"><path d=\"M19 8H5c-1.66 0-3 1.34-3 3v6h4v4h12v-4h4v-6c0-1.66-1.34-3-3-3zm-3 11H8v-5h8v5zm3-7c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm-1-9H6v4h12V3z\"></path></svg>`;\n\nconst DownloadIcon = `<svg focusable=\"false\" aria-hidden=\"true\" viewBox=\"0 0 24 24\"><path d=\"M5 20h14v-2H5v2zM19 9h-4V3H9v6H5l7 7 7-7z\"></path></svg>`;\n\n/**\n * Display an envelope signing experience. This will display the envelope's attached\n * documents with signing fields overlaid on each page.\n *\n * The component will attempt to initiate a signing session and load the specified\n * envelope. If successful, the recipient's fields will be enabled and the user will\n * be able to sign the envelope's attached documents. If not, an `sdkError` will be\n * thrown and the component will be blank/empty. To provide the best user experience,\n * applications should capture and handle this error to provide the user with\n * instructions/options for next steps based on the application's design and workflow.\n *\n * Unlike other components, this will always create its own endpoint to manage the\n * session session. This endpoint will be included in event callbacks for the\n * convenience of host applications that may wish to make server calls using the\n * signer's credentials once signing is complete (e.g. to obtain copies of\n * the signed attachments.)\n */\n@Component({\n tag: 'verdocs-sign',\n styleUrl: 'verdocs-sign.scss',\n shadow: false,\n})\nexport class VerdocsSign {\n endpoint: VerdocsEndpoint = null;\n\n /**\n * The ID of the envelope to sign.\n */\n @Prop() envelopeId: string | null = null;\n\n /**\n * The ID of the role that will be signing e.g. 'Recipient 1'\n */\n @Prop() roleId: string | null = null;\n\n /**\n * The invite code for the signer.\n */\n @Prop() inviteCode: string | null = null;\n\n /**\n * Event fired if an error occurs. The event details will contain information about the error. Most errors will\n * terminate the process, and the calling application should correct the condition and re-render the component.\n */\n @Event({composed: true}) sdkError: EventEmitter<SDKError>;\n\n /**\n * Event fired when the envelope is updated in any way.\n */\n @Event({composed: true}) envelopeLoaded: EventEmitter<{endpoint: VerdocsEndpoint; envelope: IEnvelope}>;\n\n /**\n * Event fired when the envelope is updated in any way.\n */\n @Event({composed: true}) envelopeUpdated: EventEmitter<{endpoint: VerdocsEndpoint; envelope: IEnvelope; event: string}>;\n\n @State() recipient: IRecipient | null = null;\n @State() signerToken = null;\n // @State() envelope: IEnvelope | null = null;\n // @State() fields: IDocumentField[] = [];\n @State() hasSignature = false;\n @State() nextButtonLabel = 'Start';\n @State() nextSubmits = false;\n @State() errorMessage = '';\n @State() focusedField = '';\n @State() isDone = false;\n @State() showDone = false;\n\n @State() finishLater = false;\n @State() showFinishLater = false;\n\n recipientIndex: number = -1;\n fields: IDocumentField[] = [];\n\n componentWillLoad() {\n this.endpoint = new VerdocsEndpoint({sessionType: 'signing'});\n }\n\n async componentDidLoad() {\n if (!this.envelopeId) {\n this.sdkError?.emit(new SDKError('[SIGN] Missing required envelopId', 500, ''));\n return;\n }\n\n if (!this.roleId) {\n this.sdkError?.emit(new SDKError('[SIGN] Missing required roleId', 500, ''));\n return;\n }\n\n if (!this.inviteCode) {\n this.sdkError?.emit(new SDKError('[SIGN] Missing required inviteCode', 500, ''));\n return;\n }\n\n try {\n console.log(`[SIGN] Processing invite code for ${this.envelopeId} / ${this.roleId}`);\n const {session, recipient, signerToken} = await Envelopes.getSigningSession(this.endpoint, {\n envelopeId: this.envelopeId,\n roleId: this.roleId,\n inviteCode: this.inviteCode,\n });\n\n console.log(`[SIGN] Loaded signing session ${session.email} / ${session.profile_id}`);\n\n this.recipient = recipient;\n this.signerToken = signerToken;\n this.endpoint.setToken(signerToken);\n\n if (this.recipient.agreed) {\n this.nextButtonLabel = 'Next';\n }\n\n await getEnvelopeById(this.endpoint, this.envelopeId);\n // const envelope = await Envelopes.getEnvelope(this.endpoint, this.envelopeId);\n // this.envelope = envelope;\n // console.log('[SIGN] Loaded envelope', envelope);\n\n this.recipientIndex = EnvelopeStore.envelope.recipients.findIndex(recipient => recipient.role_name == this.roleId);\n if (this.recipientIndex > -1) {\n this.recipient = EnvelopeStore.envelope.recipients[this.recipientIndex];\n this.fields = this.recipient.fields;\n }\n\n this.isDone = ['submitted', 'canceled', 'declined'].includes(this.recipient.status);\n console.log('Done', this.isDone);\n\n // TODO: Fix service to allow this?\n // const sigs = await getSignatures();\n // console.log('sigs', sigs);\n\n this.envelopeLoaded?.emit({endpoint: this.endpoint, envelope: EnvelopeStore.envelope});\n } catch (e) {\n console.log('Error with signing session', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n }\n }\n\n handleClickAgree() {\n envelopeRecipientAgree(this.endpoint, this.envelopeId, this.roleId, true)\n .then(r => {\n this.nextButtonLabel = 'Next';\n this.recipient = r;\n this.envelopeUpdated?.emit({endpoint: this.endpoint, envelope: EnvelopeStore.envelope, event: 'agreed'});\n })\n .catch(e => {\n console.log('Update failure', e);\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n });\n }\n\n async savePDF() {\n const fileName = `${EnvelopeStore.envelope.name} - ${EnvelopeStore.envelope.updated_at.split('T')[0]}.pdf`;\n const data = await Envelopes.getEnvelopeFile(this.endpoint, this.envelopeId, EnvelopeStore.envelope.envelope_document_id);\n\n // This is better in React than doing window.href= or similar to trigger a download. For a description of the technique\n // see https://stackoverflow.com/questions/8126623/downloading-canvas-element-to-an-image\n let xhr = new XMLHttpRequest();\n xhr.responseType = 'blob';\n xhr.onload = function () {\n let a = document.createElement('a');\n a.href = window.URL.createObjectURL(xhr.response);\n a.download = fileName;\n a.style.display = 'none';\n document.body.appendChild(a);\n a.click();\n a.remove();\n };\n\n xhr.open('GET', `data:application/pdf;base64,${data}`);\n xhr.send();\n }\n\n async handleOptionSelected(e) {\n switch (e.detail.id) {\n case 'later':\n this.finishLater = true;\n this.showFinishLater = true;\n // this.router.navigate([`view/sign/${this.envelopeId}/role/${this.roleName}/saved`]);\n // if (!window?.['STORYBOOK_ENV']) {\n // window.alert('User intends to sign later.');\n // }\n break;\n case 'claim':\n break;\n case 'decline':\n {\n const declineResult = await envelopeRecipientDecline(this.endpoint, this.envelopeId, this.roleId);\n console.log('Decline result', declineResult);\n this.isDone = true;\n }\n break;\n case 'print':\n window.print();\n break;\n case 'download':\n this.savePDF().catch(() => {});\n break;\n }\n }\n\n saveFieldChange(fieldName: string, fields: Record<string, any>) {\n Envelopes.updateEnvelopeField(this.endpoint, this.envelopeId, fieldName, fields) //\n .catch(e => {\n if (e.response?.status === 401 && e.response?.data?.error === 'jwt expired') {\n // TODO: Do we want to improve the instructions here?\n console.log('[SIGN] Signing session expired');\n this.errorMessage = 'Signing session expired.';\n } else {\n console.log('[SIGN] Server error', e);\n }\n\n this.sdkError?.emit(new SDKError(e.message, e.response?.status, e.response?.data));\n });\n }\n\n async handleFieldChange(field: IDocumentField, e: any) {\n console.log('fieldChange', field, e, e.target.value);\n const {value, checked} = e.target;\n\n switch (field.type) {\n case 'textbox':\n return this.saveFieldChange(field.name, {prepared: false, value});\n\n case 'checkbox_group': {\n const options = field.settings.options.map(option => ({id: option.id, checked: e.target.checked}));\n return this.saveFieldChange(field.name, {prepared: false, value: {options}});\n }\n\n case 'radio_button_group': {\n const options = field.settings.options.map(option => ({id: option.id, selected: e.target.value === option.id}));\n return this.saveFieldChange(field.name, {prepared: false, value: {options}});\n }\n\n case 'dropdown':\n return this.saveFieldChange(field.name, {prepared: false, value: e.detail});\n\n case 'initial':\n const initialsBlob = await (await fetch(e.detail)).blob();\n return createInitials(this.endpoint, 'initial', initialsBlob) //\n .then(newInitials => {\n console.log('New initials', field.name, newInitials);\n updateEnvelopeFieldInitials(this.endpoint, this.envelopeId, field.name, newInitials.id);\n });\n\n case 'signature':\n const signatureBlob = await (await fetch(e.detail)).blob();\n return createSignature(this.endpoint, 'signature', signatureBlob) //\n .then(newSignature => {\n console.log('New sign', field.name, newSignature);\n updateEnvelopeFieldSignature(this.endpoint, this.envelopeId, field.name, newSignature.id);\n });\n\n case 'date':\n const iso = e.target.getAttribute('iso');\n return this.saveFieldChange(field.name, {prepared: false, value: iso});\n\n case 'timestamp':\n console.log('Updating timestamp', {value, ts: e.target.getAttribute('timestamp')});\n break;\n\n default:\n console.log('Unhandled field update', {value, checked}, field);\n break;\n }\n }\n\n isFieldValid(field: IDocumentField) {\n const {required = false} = field;\n const {result = '', value = '', base64 = ''} = field.settings || {};\n switch (field.type) {\n case 'textbox':\n switch (field.settings?.validator || '') {\n case 'email':\n return isValidEmail(result);\n case 'phone':\n return isValidPhone(result);\n default:\n return !required || result !== '';\n }\n\n case 'signature':\n case 'initial':\n return !required || base64 !== '';\n\n // Timestamp fields get automatically filled when the envelope is submitted.\n case 'timestamp':\n return true;\n\n case 'textarea':\n case 'date':\n case 'attachment':\n return !required || result !== '';\n\n case 'dropdown':\n return !required || value !== '';\n\n case 'checkbox_group':\n const checkedCount = (field.settings?.options?.filter(option => option.checked) || []).length;\n return !required || (checkedCount >= (field.settings?.minimum_checked || 0) && checkedCount <= (field.settings?.maximum_checked || 999));\n\n case 'radio_button_group':\n return !required || (field.settings?.options?.filter(option => option.selected) || []).length > 0;\n // TODO\n // case 'checkbox':\n // return <verdocs-field-checkbox style={style} value={result || ''} id={id} />;\n // case 'payment':\n // return <verdocs-field-payment style={style} field={field} id={id} />;\n default:\n return false;\n }\n }\n\n async handleNext() {\n if (this.nextSubmits) {\n try {\n const result = await envelopeRecipientSubmit(this.endpoint, this.envelopeId, this.roleId);\n console.log('[SIGN] Submitted successfully', result);\n this.showDone = true;\n this.isDone = true;\n // updateRecipientStatus()\n } catch (e) {\n console.log('Error submitting', e);\n }\n return;\n // You're done.\n // You can access the Verdoc at any time by clicking on the link from invitation email.\n //\n // After all recipients have completed their actions, you will receive an email with the document and envelope certificate attached.\n //\n // Thank you for using Verdocs.\n // Got it, thanks\n }\n\n // Find and focus the next incomplete required field\n const requiredFields = this.fields.filter(field => field.required);\n const focusedIndex = requiredFields.findIndex(field => field.name === this.focusedField);\n\n let nextFocusedIndex = focusedIndex + 1;\n if (nextFocusedIndex >= requiredFields.length) {\n nextFocusedIndex = 0;\n }\n\n let nextRequiredField = requiredFields[nextFocusedIndex];\n\n // Skip signature and initial fields that are already filled in. We have to count our \"skips\" just in case, to avoid infinite loops.\n let skips = 0;\n if (skips < requiredFields.length && ['signature', 'initial'].includes(nextRequiredField.type) && nextRequiredField.settings?.result === 'signed') {\n skips++;\n nextFocusedIndex++;\n if (nextFocusedIndex >= requiredFields.length) {\n nextFocusedIndex = 0;\n }\n nextRequiredField = requiredFields[nextFocusedIndex];\n }\n\n if (skips >= requiredFields.length) {\n nextRequiredField = null;\n }\n\n if (nextRequiredField) {\n const id = getFieldId(nextRequiredField);\n const el = document.getElementById(id) as any;\n el?.focusField();\n this.focusedField = nextRequiredField.name;\n }\n }\n\n // See if everything that \"needs to be\" filled in is, and all \"fillable fields\" are valid\n checkRecipientFields() {\n const someFieldsInvalid = this.recipient.fields.map(field => this.isFieldValid(field)).some(fieldValid => !fieldValid);\n console.log({someFieldsInvalid});\n if (!someFieldsInvalid) {\n this.nextButtonLabel = 'Finish';\n this.nextSubmits = true;\n } else {\n this.nextSubmits = false;\n }\n }\n\n attachFieldAttributes(pageInfo, field, roleIndex, el) {\n el.addEventListener('input', e => this.handleFieldChange(field, e).finally(() => this.checkRecipientFields()));\n el.addEventListener('fieldChange', e => this.handleFieldChange(field, e).finally(() => this.checkRecipientFields()));\n\n el.setAttribute('roleindex', roleIndex);\n el.setAttribute('xScale', pageInfo.xScale);\n el.setAttribute('yScale', pageInfo.yScale);\n el.setAttribute('initials', this.recipient ? fullNameToInitials(this.recipient.full_name) : '');\n el.setAttribute('name', this.recipient?.full_name || '');\n }\n\n handlePageRendered(e) {\n const pageInfo = e.detail as IDocumentPageInfo;\n const roleIndex = getRoleIndex(EnvelopeStore.roleNames, this.recipient.role_name);\n const recipientFields = this.recipient.fields.filter(field => field.page === pageInfo.pageNumber);\n console.log('[SIGN] Page rendered, adding fields', {pageInfo, roleIndex, recipientFields});\n\n recipientFields.forEach(field => {\n const el = renderDocumentField(field, pageInfo, roleIndex, {disabled: false, editable: false, draggable: false, done: this.isDone});\n if (!el) {\n return;\n }\n\n if (Array.isArray(el)) {\n el.map(e => this.attachFieldAttributes(pageInfo, field, roleIndex, e));\n } else {\n this.attachFieldAttributes(pageInfo, field, roleIndex, el);\n }\n\n // interact(el).draggable({\n // listeners: {\n // start(event) {\n // console.log('[FIELDS] Drag started', event.type, event.target);\n // },\n // move(event) {\n // const oldX = +(event.target.getAttribute('posX') || 0);\n // const oldY = +(event.target.getAttribute('posY') || 0);\n // const xScale = +(event.target.getAttribute('xScale') || 1);\n // const yScale = +(event.target.getAttribute('yScale') || 1);\n // const newX = event.dx / xScale + oldX;\n // const newY = event.dy / yScale + oldY;\n // event.target.setAttribute('posX', newX);\n // event.target.setAttribute('posy', newY);\n // updateCssTransform(event.target, 'translate', `${newX}px, ${newY}px`);\n // },\n // end(event) {\n // console.log('[FIELDS] Drag ended', event);\n // // event.target.setAttribute('posX', 0);\n // // event.target.setAttribute('posy', 0);\n // // updateCssTransform(event.target, 'translate', `${0}px, ${0}px`);\n // },\n // },\n // });\n });\n\n // Render fields for \"the other\" recipients\n EnvelopeStore.envelope.recipients\n .filter(recipient => recipient.role_name !== this.recipient.role_name)\n .map(otherRecipient => {\n const otherRoleIndex = getRoleIndex(EnvelopeStore.roleNames, otherRecipient.role_name);\n const recipientFields = otherRecipient.fields.filter(field => field.page === pageInfo.pageNumber);\n // const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);\n recipientFields.forEach(field => {\n const el = renderDocumentField(field, pageInfo, otherRoleIndex, {disabled: true, editable: false, draggable: false, done: this.isDone});\n if (!el) {\n return;\n }\n\n el.setAttribute('roleindex', otherRoleIndex);\n el.setAttribute('xScale', pageInfo.xScale);\n el.setAttribute('yScale', pageInfo.yScale);\n });\n });\n\n this.checkRecipientFields();\n }\n\n render() {\n if (EnvelopeStore.loading || !EnvelopeStore.envelope) {\n return (\n <Host>\n <verdocs-loader />\n </Host>\n );\n }\n\n const menuOptions = [\n {id: 'later', label: 'Finish Later'}, //\n // {id: 'claim', label: 'Claim the Document', disabled: true},\n {id: 'decline', label: 'Decline to Sign'},\n {id: 'print', label: 'Print Without Signing', disabled: true},\n {id: 'download', label: 'Download'},\n ];\n\n return (\n <Host class={{agreed: this.recipient?.agreed}}>\n {!this.isDone && !this.finishLater && (\n <div class=\"intro\">\n <div class=\"inner\">Please review and act on these documents.</div>\n </div>\n )}\n\n <div class=\"header\">\n <div class=\"inner\">\n <div class=\"toolbar\">\n <div class=\"tools\">\n {!this.isDone && !this.finishLater && <verdocs-dropdown options={menuOptions} onOptionSelected={e => this.handleOptionSelected(e)} />}\n\n {!this.recipient?.agreed ? (\n <div class=\"agree\">\n <verdocs-checkbox name=\"agree\" label=\"I agree to use electronic records and signatures.\" onInput={() => this.handleClickAgree()} />\n </div>\n ) : (\n <Fragment>\n <img src=\"https://verdocs.com/assets/white-logo.svg\" alt=\"Verdocs Logo\" class=\"logo\" />\n <div class=\"title\">{EnvelopeStore.envelope.name}</div>\n <div style={{flex: '1'}} />\n <div innerHTML={PrintIcon} style={{width: '24px', height: '24px', fill: '#ffffff', cursor: 'pointer'}} onClick={() => window.print()} />\n <div\n innerHTML={DownloadIcon}\n style={{width: '24px', height: '24px', fill: '#ffffff', cursor: 'pointer', marginLeft: '16px', maginRight: '30px'}}\n onClick={() => this.savePDF()}\n />\n </Fragment>\n )}\n\n {!this.isDone && !this.finishLater && (\n <verdocs-button size=\"small\" label={this.nextButtonLabel} disabled={!this.recipient?.agreed} onClick={() => this.handleNext()} />\n )}\n </div>\n </div>\n </div>\n </div>\n\n {!this.isDone && !this.recipient?.agreed ? <div class=\"cover\" /> : <div style={{display: 'none'}} />}\n\n <div class=\"document\">\n {(EnvelopeStore.envelope.documents || []).map(envelopeDocument => {\n const pages = [...(envelopeDocument?.pages || [])];\n pages.sort((a, b) => a.sequence - b.sequence);\n\n return (\n <Fragment>\n {pages.map(page => (\n <verdocs-document-page\n pageImageUri={page.display_uri}\n virtualWidth={612}\n virtualHeight={792}\n pageNumber={page.sequence}\n onPageRendered={e => this.handlePageRendered(e)}\n layers={[\n {name: 'page', type: 'canvas'},\n {name: 'controls', type: 'div'},\n ]}\n />\n ))}\n </Fragment>\n );\n })}\n </div>\n\n {this.showFinishLater && (\n <verdocs-ok-dialog\n heading=\"You've saved your document to finish later.\"\n message=\"To complete the document, use the link in the original email notification inviting you to review and finish the document.\"\n onNext={() => (this.showFinishLater = false)}\n />\n )}\n\n {this.errorMessage && <verdocs-ok-dialog heading=\"Network Error\" message={this.errorMessage} onNext={() => (this.errorMessage = '')} />}\n {this.showDone && (\n <verdocs-ok-dialog\n heading=\"You're Done!\"\n message=\"You can access the Verdoc at any time by clicking on the link from the invitation email.<br /><br />After all recipients have completed their actions, you will receive an email with the document and envelope certificate attached.\"\n onNext={() => (this.showDone = false)}\n />\n )}\n </Host>\n );\n }\n}\n"]}
@@ -6,12 +6,10 @@ export default {
6
6
  envelopeId: '92f3dd1e-9ff2-44c3-8c96-32a5b650ed6d',
7
7
  roleId: 'Seller',
8
8
  inviteCode: '67aad4b04fbb83c03d238f7404113b6b',
9
+ // roleId: 'Buyer',
10
+ // inviteCode: '3b6e2a7abcc35808c9fc946d64e91abe',
9
11
  },
10
- argTypes: {
11
- envelopeId: { control: { type: 'string' } },
12
- roleId: { control: { type: 'string' } },
13
- inviteCode: { control: { type: 'string' } },
14
- },
12
+ argTypes: {},
15
13
  parameters: {
16
14
  layout: 'fullscreen',
17
15
  },
@@ -1 +1 @@
1
- {"version":3,"file":"verdocs-sign.stories.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-sign/verdocs-sign.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,eAAe;EACb,KAAK,EAAE,aAAa;EACpB,SAAS,EAAE,cAAc;EACzB,IAAI,EAAE;IACJ,UAAU,EAAE,sCAAsC;IAClD,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,kCAAkC;GAC/C;EACD,QAAQ,EAAE;IACR,UAAU,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAC;IACvC,MAAM,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAC;IACnC,UAAU,EAAE,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EAAC;GACxC;EACD,UAAU,EAAE;IACV,MAAM,EAAE,YAAY;GACrB;CACM,CAAC;AAEV,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,IAAI,CAAA,6BAA6B,UAAU,YAAY,MAAM,gBAAgB,UAAU,KAAK,CAAC","sourcesContent":["import {html} from 'lit-html';\nimport {Meta} from '@storybook/web-components';\n\nexport default {\n title: 'Embeds/Sign',\n component: 'verdocs-sign',\n args: {\n envelopeId: '92f3dd1e-9ff2-44c3-8c96-32a5b650ed6d',\n roleId: 'Seller',\n inviteCode: '67aad4b04fbb83c03d238f7404113b6b',\n },\n argTypes: {\n envelopeId: {control: {type: 'string'}},\n roleId: {control: {type: 'string'}},\n inviteCode: {control: {type: 'string'}},\n },\n parameters: {\n layout: 'fullscreen',\n },\n} as Meta;\n\nexport const Sign = ({envelopeId, roleId, inviteCode}) => html`<verdocs-sign .envelopeId=${envelopeId} .roleId=${roleId} .inviteCode=${inviteCode} />`;\n"]}
1
+ {"version":3,"file":"verdocs-sign.stories.js","sourceRoot":"","sources":["../../../../src/components/embeds/verdocs-sign/verdocs-sign.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,UAAU,CAAC;AAG9B,eAAe;EACb,KAAK,EAAE,aAAa;EACpB,SAAS,EAAE,cAAc;EACzB,IAAI,EAAE;IACJ,UAAU,EAAE,sCAAsC;IAClD,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,kCAAkC;IAC9C,mBAAmB;IACnB,kDAAkD;GACnD;EACD,QAAQ,EAAE,EAAE;EACZ,UAAU,EAAE;IACV,MAAM,EAAE,YAAY;GACrB;CACM,CAAC;AAEV,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,IAAI,CAAA,6BAA6B,UAAU,YAAY,MAAM,gBAAgB,UAAU,KAAK,CAAC","sourcesContent":["import {html} from 'lit-html';\nimport {Meta} from '@storybook/web-components';\n\nexport default {\n title: 'Embeds/Sign',\n component: 'verdocs-sign',\n args: {\n envelopeId: '92f3dd1e-9ff2-44c3-8c96-32a5b650ed6d',\n roleId: 'Seller',\n inviteCode: '67aad4b04fbb83c03d238f7404113b6b',\n // roleId: 'Buyer',\n // inviteCode: '3b6e2a7abcc35808c9fc946d64e91abe',\n },\n argTypes: {},\n parameters: {\n layout: 'fullscreen',\n },\n} as Meta;\n\nexport const Sign = ({envelopeId, roleId, inviteCode}) => html`<verdocs-sign .envelopeId=${envelopeId} .roleId=${roleId} .inviteCode=${inviteCode} />`;\n"]}
@@ -3,17 +3,20 @@ import EnvelopeStore from './envelopeStore';
3
3
  // Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into
4
4
  // child elements.
5
5
  export const getEnvelopeById = async (endpoint, envelopeId) => {
6
- var _a;
6
+ var _a, _b;
7
7
  EnvelopeStore.envelope = null;
8
8
  if (!envelopeId) {
9
9
  console.log(`[ENVELOPES] Missing required envelope ID`);
10
10
  return;
11
11
  }
12
+ if (((_a = EnvelopeStore.envelope) === null || _a === void 0 ? void 0 : _a.id) === envelopeId) {
13
+ return;
14
+ }
12
15
  EnvelopeStore.error = '';
13
16
  EnvelopeStore.loading = true;
14
17
  try {
15
18
  console.log(`[ENVELOPES] Loading envelope ${envelopeId}`);
16
- const envelope = await getEnvelope(endpoint, envelopeId);
19
+ const envelope = await getEnvelope(endpoint, envelopeId, true);
17
20
  if (!envelope) {
18
21
  console.log('[ENVELOPES] Unable to load envelope');
19
22
  return;
@@ -23,7 +26,7 @@ export const getEnvelopeById = async (endpoint, envelopeId) => {
23
26
  }
24
27
  catch (e) {
25
28
  EnvelopeStore.loading = false;
26
- EnvelopeStore.error = ((_a = e === null || e === void 0 ? void 0 : e.response) === null || _a === void 0 ? void 0 : _a.status) === 401 ? 'Authentication required' : e.message;
29
+ EnvelopeStore.error = ((_b = e === null || e === void 0 ? void 0 : e.response) === null || _b === void 0 ? void 0 : _b.status) === 401 ? 'Authentication required' : e.message;
27
30
  console.log('[ENVELOPES] Error loading envelope', e);
28
31
  throw e;
29
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Envelopes.js","sourceRoot":"","sources":["../../src/utils/Envelopes.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,uIAAuI;AACvI,kBAAkB;AAClB,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,QAAyB,EAAE,UAAkB,EAAE,EAAE;;EACrF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;EAE9B,IAAI,CAAC,UAAU,EAAE;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO;GACR;EAED,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;EACzB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;EAE7B,IAAI;IACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,EAAE;MACb,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;MACnD,OAAO;KACR;IAED,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAClC,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;GAC/B;EAAC,OAAO,CAAC,EAAE;IACV,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;IAC9B,aAAa,CAAC,KAAK,GAAG,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,0CAAE,MAAM,MAAK,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1F,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC;GACT;AACH,CAAC,CAAC","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {getEnvelope} from '@verdocs/js-sdk/Envelopes/Envelopes';\nimport EnvelopeStore from './envelopeStore';\n\n// Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into\n// child elements.\nexport const getEnvelopeById = async (endpoint: VerdocsEndpoint, envelopeId: string) => {\n EnvelopeStore.envelope = null;\n\n if (!envelopeId) {\n console.log(`[ENVELOPES] Missing required envelope ID`);\n return;\n }\n\n EnvelopeStore.error = '';\n EnvelopeStore.loading = true;\n\n try {\n console.log(`[ENVELOPES] Loading envelope ${envelopeId}`);\n const envelope = await getEnvelope(endpoint, envelopeId);\n if (!envelope) {\n console.log('[ENVELOPES] Unable to load envelope');\n return;\n }\n\n EnvelopeStore.envelope = envelope;\n EnvelopeStore.loading = false;\n } catch (e) {\n EnvelopeStore.loading = false;\n EnvelopeStore.error = e?.response?.status === 401 ? 'Authentication required' : e.message;\n console.log('[ENVELOPES] Error loading envelope', e);\n throw e;\n }\n};\n"]}
1
+ {"version":3,"file":"Envelopes.js","sourceRoot":"","sources":["../../src/utils/Envelopes.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,uIAAuI;AACvI,kBAAkB;AAClB,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,QAAyB,EAAE,UAAkB,EAAE,EAAE;;EACrF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;EAE9B,IAAI,CAAC,UAAU,EAAE;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO;GACR;EAED,IAAI,CAAA,MAAA,aAAa,CAAC,QAAQ,0CAAE,EAAE,MAAK,UAAU,EAAE;IAC7C,OAAO;GACR;EAED,aAAa,CAAC,KAAK,GAAG,EAAE,CAAC;EACzB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;EAE7B,IAAI;IACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ,EAAE;MACb,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;MACnD,OAAO;KACR;IAED,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAClC,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;GAC/B;EAAC,OAAO,CAAC,EAAE;IACV,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;IAC9B,aAAa,CAAC,KAAK,GAAG,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,0CAAE,MAAM,MAAK,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1F,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC;GACT;AACH,CAAC,CAAC","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {getEnvelope} from '@verdocs/js-sdk/Envelopes/Envelopes';\nimport EnvelopeStore from './envelopeStore';\n\n// Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into\n// child elements.\nexport const getEnvelopeById = async (endpoint: VerdocsEndpoint, envelopeId: string) => {\n EnvelopeStore.envelope = null;\n\n if (!envelopeId) {\n console.log(`[ENVELOPES] Missing required envelope ID`);\n return;\n }\n\n if (EnvelopeStore.envelope?.id === envelopeId) {\n return;\n }\n\n EnvelopeStore.error = '';\n EnvelopeStore.loading = true;\n\n try {\n console.log(`[ENVELOPES] Loading envelope ${envelopeId}`);\n const envelope = await getEnvelope(endpoint, envelopeId, true);\n if (!envelope) {\n console.log('[ENVELOPES] Unable to load envelope');\n return;\n }\n\n EnvelopeStore.envelope = envelope;\n EnvelopeStore.loading = false;\n } catch (e) {\n EnvelopeStore.loading = false;\n EnvelopeStore.error = e?.response?.status === 401 ? 'Authentication required' : e.message;\n console.log('[ENVELOPES] Error loading envelope', e);\n throw e;\n }\n};\n"]}
@@ -9,7 +9,7 @@ export const loadTemplate = async (endpoint, templateId) => {
9
9
  TemplateStore.loading = true;
10
10
  try {
11
11
  console.log(`[TEMPLATES] Loading template ${templateId}`);
12
- const template = await getTemplate(endpoint, templateId);
12
+ const template = await getTemplate(endpoint, templateId, true);
13
13
  if (!template) {
14
14
  console.log('[TEMPLATES] Unable to load template');
15
15
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"Templates.js","sourceRoot":"","sources":["../../src/utils/Templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,QAAyB,EAAE,UAAkB,EAAE,EAAE;EAClF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;EAE9B,IAAI,CAAC,UAAU,EAAE;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO;GACR;EAED,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;EAE7B,IAAI;IACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,EAAE;MACb,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;MACnD,OAAO;KACR;IAED,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAClC,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;GAC/B;EAAC,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC;GACT;AACH,CAAC,CAAC","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {getTemplate} from '@verdocs/js-sdk/Templates/Templates';\nimport TemplateStore from './templateStore';\n\nexport const loadTemplate = async (endpoint: VerdocsEndpoint, templateId: string) => {\n TemplateStore.template = null;\n\n if (!templateId) {\n console.log(`[TEMPLATES] Missing required template ID`);\n return;\n }\n\n TemplateStore.loading = true;\n\n try {\n console.log(`[TEMPLATES] Loading template ${templateId}`);\n const template = await getTemplate(endpoint, templateId);\n if (!template) {\n console.log('[TEMPLATES] Unable to load template');\n return;\n }\n\n TemplateStore.template = template;\n TemplateStore.loading = false;\n } catch (e) {\n console.log('[TEMPLATES] Error loading template', e);\n throw e;\n }\n};\n"]}
1
+ {"version":3,"file":"Templates.js","sourceRoot":"","sources":["../../src/utils/Templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,WAAW,EAAC,MAAM,qCAAqC,CAAC;AAChE,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,QAAyB,EAAE,UAAkB,EAAE,EAAE;EAClF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;EAE9B,IAAI,CAAC,UAAU,EAAE;IACf,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO;GACR;EAED,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;EAE7B,IAAI;IACF,OAAO,CAAC,GAAG,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ,EAAE;MACb,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;MACnD,OAAO;KACR;IAED,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAClC,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;GAC/B;EAAC,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC;GACT;AACH,CAAC,CAAC","sourcesContent":["import {VerdocsEndpoint} from '@verdocs/js-sdk';\nimport {getTemplate} from '@verdocs/js-sdk/Templates/Templates';\nimport TemplateStore from './templateStore';\n\nexport const loadTemplate = async (endpoint: VerdocsEndpoint, templateId: string) => {\n TemplateStore.template = null;\n\n if (!templateId) {\n console.log(`[TEMPLATES] Missing required template ID`);\n return;\n }\n\n TemplateStore.loading = true;\n\n try {\n console.log(`[TEMPLATES] Loading template ${templateId}`);\n const template = await getTemplate(endpoint, templateId, true);\n if (!template) {\n console.log('[TEMPLATES] Unable to load template');\n return;\n }\n\n TemplateStore.template = template;\n TemplateStore.loading = false;\n } catch (e) {\n console.log('[TEMPLATES] Error loading template', e);\n throw e;\n }\n};\n"]}
@@ -63,7 +63,7 @@ export const getFieldOptionId = (field, index) => {
63
63
  return `verdocs-doc-fld-${field.name}-${index}`;
64
64
  };
65
65
  export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) => {
66
- const { disabled = false, editable = false, draggable = false } = fieldOptions;
66
+ const { disabled = false, editable = false, draggable = false, done = false } = fieldOptions;
67
67
  const controlsDiv = document.getElementById(docPage.containerId + '-controls');
68
68
  if (!controlsDiv) {
69
69
  return;
@@ -89,20 +89,27 @@ export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) =>
89
89
  el.setAttribute('id', id);
90
90
  el.setAttribute('roleIndex', roleIndex);
91
91
  if (disabled) {
92
+ el.setAttribute('tabindex', -1);
92
93
  el.setAttribute('disabled', true);
93
94
  }
95
+ else {
96
+ el.setAttribute('tabIndex', 1);
97
+ }
94
98
  if (editable) {
95
99
  el.setAttribute('editable', true);
96
100
  }
97
101
  if (draggable) {
98
102
  el.setAttribute('draggable', true);
99
103
  }
104
+ if (done) {
105
+ el.setAttribute('done', true);
106
+ }
100
107
  setControlStyles(el, field, docPage.xScale, docPage.yScale);
101
108
  controlsDiv.appendChild(el);
102
109
  return el;
103
110
  }
104
111
  case 'checkbox_group':
105
- (field.settings || field.setting || {}).options.forEach((_, checkboxIndex) => {
112
+ return (field.settings || field.setting || {}).options.map((_, checkboxIndex) => {
106
113
  const id = getFieldOptionId(field, checkboxIndex);
107
114
  const existingField = document.getElementById(id);
108
115
  if (existingField) {
@@ -117,32 +124,36 @@ export const renderDocumentField = (field, docPage, roleIndex, fieldOptions) =>
117
124
  if (disabled) {
118
125
  cbEl.setAttribute('disabled', true);
119
126
  }
127
+ if (done) {
128
+ cbEl.setAttribute('done', true);
129
+ }
120
130
  setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);
121
131
  controlsDiv.appendChild(cbEl);
122
132
  return cbEl;
123
133
  });
124
- break;
125
134
  case 'radio_button_group':
126
- (field.settings || field.setting || {}).options.forEach((_, buttonIndex) => {
135
+ return (field.settings || field.setting || {}).options.map((_, buttonIndex) => {
127
136
  const id = getFieldOptionId(field, buttonIndex);
128
137
  const existingField = document.getElementById(id);
129
138
  if (existingField) {
130
139
  setControlStyles(existingField, field, docPage.xScale, docPage.yScale);
131
140
  return;
132
141
  }
133
- const cbEl = document.createElement(`verdocs-field-radio-button`);
134
- cbEl.field = field;
135
- cbEl.setAttribute('id', id);
136
- cbEl.setAttribute('roleIndex', roleIndex);
137
- cbEl.setAttribute('option', buttonIndex);
142
+ const radioEl = document.createElement(`verdocs-field-radio-button`);
143
+ radioEl.field = field;
144
+ radioEl.setAttribute('id', id);
145
+ radioEl.setAttribute('roleIndex', roleIndex);
146
+ radioEl.setAttribute('option', buttonIndex);
138
147
  if (disabled) {
139
- cbEl.setAttribute('disabled', true);
148
+ radioEl.setAttribute('disabled', true);
140
149
  }
141
- setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, buttonIndex);
142
- controlsDiv.appendChild(cbEl);
143
- return cbEl;
150
+ if (done) {
151
+ radioEl.setAttribute('done', true);
152
+ }
153
+ setControlStyles(radioEl, field, docPage.xScale, docPage.yScale, buttonIndex);
154
+ controlsDiv.appendChild(radioEl);
155
+ return radioEl;
144
156
  });
145
- break;
146
157
  // case 'attachment':
147
158
  // el = document.createElement('verdocs-field-attachment');
148
159
  // el.setAttribute('value', result || '');
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// These should probably all move to JS-SDK\nimport {rescale} from '@verdocs/js-sdk/Utils/Fields';\n// import {getRGBA} from '@verdocs/js-sdk/Utils/Colors';\nimport {ITemplateField} from '@verdocs/js-sdk/Templates/Types';\nimport {IDocumentField} from '@verdocs/js-sdk/Envelopes/Types';\nimport {IDocumentPageInfo} from './Types';\n\nexport const integerSequence = (start: number, count: number): number[] =>\n Array(count)\n .fill(1)\n .map((_, index) => index + start);\n\nexport const fullNameToInitials = (name: string) =>\n name\n .split(' ')\n .map(word => word[0])\n .join('');\n\nexport const defaultWidth = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 82;\n }\n\n return 150;\n};\n\nexport const defaultHeight = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 41;\n }\n\n return 50;\n};\n\nexport const setControlStyles = (el: HTMLElement, field: ITemplateField | IDocumentField, xScale: number, yScale: number, option?: number) => {\n const settings = (field as ITemplateField).setting || (field as IDocumentField).settings;\n let {x = 0, y = 0, width = defaultWidth(field), height = defaultHeight(field)} = settings;\n\n const optionSettings = option !== undefined && settings.options[option] ? settings.options[option] : null;\n if (optionSettings) {\n x = optionSettings.x ?? x;\n y = optionSettings.y ?? y;\n width = optionSettings.width ?? width;\n height = optionSettings.height ?? height;\n }\n\n el.style.width = `${width}px`;\n el.style.height = `${height}px`;\n el.style.position = 'absolute';\n el.style.left = `${rescale(xScale, x)}px`;\n el.style.bottom = `${rescale(yScale, y)}px`;\n el.style.transform = `scale(${xScale}, ${yScale})`;\n // el.style.backgroundColor = field['rgba'] || getRGBA(roleIndex);\n};\n\nexport const getFieldId = (field: ITemplateField | IDocumentField) => {\n return `verdocs-doc-fld-${field.name}`;\n};\n\nexport const getFieldOptionId = (field: ITemplateField | IDocumentField, index: number) => {\n return `verdocs-doc-fld-${field.name}-${index}`;\n};\n\ninterface IFieldOptions {\n disabled?: boolean;\n editable?: boolean;\n draggable?: boolean;\n}\n\nexport const renderDocumentField = (field: ITemplateField | IDocumentField, docPage: IDocumentPageInfo, roleIndex: number, fieldOptions: IFieldOptions) => {\n const {disabled = false, editable = false, draggable = false} = fieldOptions;\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n return;\n }\n\n switch (field.type) {\n case 'attachment':\n case 'date':\n case 'dropdown':\n case 'initial':\n case 'payment':\n case 'signature':\n case 'timestamp':\n case 'textarea':\n case 'textbox': {\n const id = getFieldId(field);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const el: any = document.createElement(`verdocs-field-${field.type}`);\n el.field = field;\n el.setAttribute('id', id);\n el.setAttribute('roleIndex', roleIndex);\n if (disabled) {\n el.setAttribute('disabled', true);\n }\n if (editable) {\n el.setAttribute('editable', true);\n }\n if (draggable) {\n el.setAttribute('draggable', true);\n }\n setControlStyles(el, field, docPage.xScale, docPage.yScale);\n controlsDiv.appendChild(el);\n\n return el;\n }\n\n case 'checkbox_group':\n ((field as any).settings || (field as any).setting || {}).options.forEach((_, checkboxIndex) => {\n const id = getFieldOptionId(field, checkboxIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const cbEl: any = document.createElement(`verdocs-field-checkbox`);\n cbEl.field = field;\n cbEl.setAttribute('id', id);\n cbEl.setAttribute('roleIndex', roleIndex);\n cbEl.setAttribute('option', checkboxIndex);\n if (disabled) {\n cbEl.setAttribute('disabled', true);\n }\n setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);\n controlsDiv.appendChild(cbEl);\n\n return cbEl;\n });\n\n break;\n\n case 'radio_button_group':\n ((field as any).settings || (field as any).setting || {}).options.forEach((_, buttonIndex) => {\n const id = getFieldOptionId(field, buttonIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const cbEl: any = document.createElement(`verdocs-field-radio-button`);\n cbEl.field = field;\n cbEl.setAttribute('id', id);\n cbEl.setAttribute('roleIndex', roleIndex);\n cbEl.setAttribute('option', buttonIndex);\n if (disabled) {\n cbEl.setAttribute('disabled', true);\n }\n setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, buttonIndex);\n controlsDiv.appendChild(cbEl);\n\n return cbEl;\n });\n\n break;\n\n // case 'attachment':\n // el = document.createElement('verdocs-field-attachment');\n // el.setAttribute('value', result || '');\n // break;\n // case 'payment':\n // el = document.createElement('verdocs-field-payment');\n // break;\n default:\n console.log('[PREVIEW] Skipping unsupported field type', field);\n return null;\n }\n};\n\nexport const getRoleIndex = (roles: string[], role: string) => roles.indexOf(role) || 0;\n\n// TODO: We can clean this up a lot if we alter the API to emit both setting and settings regardless of the source type,\n// but then merge the SDK types to encourage developers to use just `settings`.\nexport const getFieldSettings = (field: ITemplateField | IDocumentField) => {\n if ((field as ITemplateField).setting) {\n return (field as ITemplateField).setting;\n }\n\n if ((field as IDocumentField).settings) {\n return (field as IDocumentField).settings;\n }\n\n return {x: 0, y: 0, required: false, disabled: false, result: '', value: ''};\n};\n\n/**\n * Helper function to safely set/update components in a CSS transform attribute. Transform is normally set as a string of\n * `operation1(param) operation2(param) ...` components, which makes updating them a bit of a pain. This will remove the\n * specified component if it's already set and replace it with the new value, without touching the other components that\n * may already be set. Note that this operation moves the component to the end of the transform chain so it's not meant\n * to be used for order-sensitive components e.g. translate-then-rotate.\n */\nexport const updateCssTransform = (el: HTMLElement, key: string, value: string) => {\n // e.g. 'scale(1.87908, 1.87908) translate(0px, 0px);'\n const currentTransform = el.style.transform;\n // e.g. ['scale(1.87908, 1.87908)', 'scale', '1.87908, 1.87908', ...], [ 'translate(0px, 0px)', 'translate', '0px, 0px']]\n const components = [...currentTransform.matchAll(/(\\w+)\\(([^)]*)\\)/gi)];\n el.style.transform = [\n components //\n .filter(component => component[1] !== key) // Remove the entry if it's already set\n .map(component => component[0]), // Convert back the remaining entries\n `${key}(${value})`,\n ].join(' ');\n};\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// These should probably all move to JS-SDK\nimport {rescale} from '@verdocs/js-sdk/Utils/Fields';\n// import {getRGBA} from '@verdocs/js-sdk/Utils/Colors';\nimport {ITemplateField} from '@verdocs/js-sdk/Templates/Types';\nimport {IDocumentField} from '@verdocs/js-sdk/Envelopes/Types';\nimport {IDocumentPageInfo} from './Types';\n\nexport const integerSequence = (start: number, count: number): number[] =>\n Array(count)\n .fill(1)\n .map((_, index) => index + start);\n\nexport const fullNameToInitials = (name: string) =>\n name\n .split(' ')\n .map(word => word[0])\n .join('');\n\nexport const defaultWidth = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 82;\n }\n\n return 150;\n};\n\nexport const defaultHeight = (field: ITemplateField | IDocumentField) => {\n switch (field.type) {\n case 'attachment':\n case 'payment':\n return 24;\n case 'checkbox':\n case 'checkbox_group':\n case 'radio_button_group':\n return 14;\n case 'signature':\n case 'initial':\n return 41;\n }\n\n return 50;\n};\n\nexport const setControlStyles = (el: HTMLElement, field: ITemplateField | IDocumentField, xScale: number, yScale: number, option?: number) => {\n const settings = (field as ITemplateField).setting || (field as IDocumentField).settings;\n let {x = 0, y = 0, width = defaultWidth(field), height = defaultHeight(field)} = settings;\n\n const optionSettings = option !== undefined && settings.options[option] ? settings.options[option] : null;\n if (optionSettings) {\n x = optionSettings.x ?? x;\n y = optionSettings.y ?? y;\n width = optionSettings.width ?? width;\n height = optionSettings.height ?? height;\n }\n\n el.style.width = `${width}px`;\n el.style.height = `${height}px`;\n el.style.position = 'absolute';\n el.style.left = `${rescale(xScale, x)}px`;\n el.style.bottom = `${rescale(yScale, y)}px`;\n el.style.transform = `scale(${xScale}, ${yScale})`;\n // el.style.backgroundColor = field['rgba'] || getRGBA(roleIndex);\n};\n\nexport const getFieldId = (field: ITemplateField | IDocumentField) => {\n return `verdocs-doc-fld-${field.name}`;\n};\n\nexport const getFieldOptionId = (field: ITemplateField | IDocumentField, index: number) => {\n return `verdocs-doc-fld-${field.name}-${index}`;\n};\n\ninterface IFieldOptions {\n disabled?: boolean;\n editable?: boolean;\n draggable?: boolean;\n done?: boolean;\n}\n\nexport const renderDocumentField = (field: ITemplateField | IDocumentField, docPage: IDocumentPageInfo, roleIndex: number, fieldOptions: IFieldOptions) => {\n const {disabled = false, editable = false, draggable = false, done = false} = fieldOptions;\n const controlsDiv = document.getElementById(docPage.containerId + '-controls');\n if (!controlsDiv) {\n return;\n }\n\n switch (field.type) {\n case 'attachment':\n case 'date':\n case 'dropdown':\n case 'initial':\n case 'payment':\n case 'signature':\n case 'timestamp':\n case 'textarea':\n case 'textbox': {\n const id = getFieldId(field);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const el: any = document.createElement(`verdocs-field-${field.type}`);\n el.field = field;\n el.setAttribute('id', id);\n el.setAttribute('roleIndex', roleIndex);\n\n if (disabled) {\n el.setAttribute('tabindex', -1);\n el.setAttribute('disabled', true);\n } else {\n el.setAttribute('tabIndex', 1);\n }\n\n if (editable) {\n el.setAttribute('editable', true);\n }\n\n if (draggable) {\n el.setAttribute('draggable', true);\n }\n\n if (done) {\n el.setAttribute('done', true);\n }\n\n setControlStyles(el, field, docPage.xScale, docPage.yScale);\n controlsDiv.appendChild(el);\n\n return el;\n }\n\n case 'checkbox_group':\n return ((field as any).settings || (field as any).setting || {}).options.map((_, checkboxIndex) => {\n const id = getFieldOptionId(field, checkboxIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const cbEl: any = document.createElement(`verdocs-field-checkbox`);\n cbEl.field = field;\n cbEl.setAttribute('id', id);\n cbEl.setAttribute('roleIndex', roleIndex);\n cbEl.setAttribute('option', checkboxIndex);\n if (disabled) {\n cbEl.setAttribute('disabled', true);\n }\n if (done) {\n cbEl.setAttribute('done', true);\n }\n setControlStyles(cbEl, field, docPage.xScale, docPage.yScale, checkboxIndex);\n controlsDiv.appendChild(cbEl);\n\n return cbEl;\n });\n\n case 'radio_button_group':\n return ((field as any).settings || (field as any).setting || {}).options.map((_, buttonIndex) => {\n const id = getFieldOptionId(field, buttonIndex);\n const existingField = document.getElementById(id);\n if (existingField) {\n setControlStyles(existingField, field, docPage.xScale, docPage.yScale);\n return;\n }\n\n const radioEl: any = document.createElement(`verdocs-field-radio-button`);\n radioEl.field = field;\n radioEl.setAttribute('id', id);\n radioEl.setAttribute('roleIndex', roleIndex);\n radioEl.setAttribute('option', buttonIndex);\n if (disabled) {\n radioEl.setAttribute('disabled', true);\n }\n if (done) {\n radioEl.setAttribute('done', true);\n }\n setControlStyles(radioEl, field, docPage.xScale, docPage.yScale, buttonIndex);\n controlsDiv.appendChild(radioEl);\n\n return radioEl;\n });\n\n // case 'attachment':\n // el = document.createElement('verdocs-field-attachment');\n // el.setAttribute('value', result || '');\n // break;\n // case 'payment':\n // el = document.createElement('verdocs-field-payment');\n // break;\n default:\n console.log('[PREVIEW] Skipping unsupported field type', field);\n return null;\n }\n};\n\nexport const getRoleIndex = (roles: string[], role: string) => roles.indexOf(role) || 0;\n\n// TODO: We can clean this up a lot if we alter the API to emit both setting and settings regardless of the source type,\n// but then merge the SDK types to encourage developers to use just `settings`.\nexport const getFieldSettings = (field: ITemplateField | IDocumentField) => {\n if ((field as ITemplateField).setting) {\n return (field as ITemplateField).setting;\n }\n\n if ((field as IDocumentField).settings) {\n return (field as IDocumentField).settings;\n }\n\n return {x: 0, y: 0, required: false, disabled: false, result: '', value: ''};\n};\n\n/**\n * Helper function to safely set/update components in a CSS transform attribute. Transform is normally set as a string of\n * `operation1(param) operation2(param) ...` components, which makes updating them a bit of a pain. This will remove the\n * specified component if it's already set and replace it with the new value, without touching the other components that\n * may already be set. Note that this operation moves the component to the end of the transform chain so it's not meant\n * to be used for order-sensitive components e.g. translate-then-rotate.\n */\nexport const updateCssTransform = (el: HTMLElement, key: string, value: string) => {\n // e.g. 'scale(1.87908, 1.87908) translate(0px, 0px);'\n const currentTransform = el.style.transform;\n // e.g. ['scale(1.87908, 1.87908)', 'scale', '1.87908, 1.87908', ...], [ 'translate(0px, 0px)', 'translate', '0px, 0px']]\n const components = [...currentTransform.matchAll(/(\\w+)\\(([^)]*)\\)/gi)];\n el.style.transform = [\n components //\n .filter(component => component[1] !== key) // Remove the entry if it's already set\n .map(component => component[0]), // Convert back the remaining entries\n `${key}(${value})`,\n ].join(' ');\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import { d as decodeAccessTokenBody } from './VerdocsEndpoint.js';
2
- import { c as createStore } from './index2.js';
2
+ import { c as createStore } from './index3.js';
3
3
 
4
4
  var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
5
5
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
@@ -57,10 +57,10 @@ var getSigningSession = function (endpoint, params) { return __awaiter(void 0, v
57
57
  /**
58
58
  * Get all metadata for an Envelope.
59
59
  */
60
- var getEnvelope = function (endpoint, envelopeId) { return __awaiter(void 0, void 0, void 0, function () {
60
+ var getEnvelope = function (endpoint, envelopeId, ssr) { return __awaiter(void 0, void 0, void 0, function () {
61
61
  return __generator(this, function (_a) {
62
62
  return [2 /*return*/, endpoint.api //
63
- .get("/envelopes/".concat(envelopeId))
63
+ .get("/envelopes/".concat(envelopeId) + (ssr ? '?ssr=true' : ''))
64
64
  .then(function (r) { return r.data; })];
65
65
  });
66
66
  }); };
@@ -99,6 +99,17 @@ var updateEnvelopeFieldSignature = function (endpoint, envelopeId, fieldName, si
99
99
  .then(function (r) { return r.data; })];
100
100
  });
101
101
  }); };
102
+ /**
103
+ * Update a Document signature field. Signature fields are ID-driven. Call `Document.createSignature()` first to create a
104
+ * signature for a Recipient, then call `Documents.updateDocumentFieldSignature()` to attach it to a field.
105
+ */
106
+ var updateEnvelopeFieldInitials = function (endpoint, envelopeId, fieldName, initialId) { return __awaiter(void 0, void 0, void 0, function () {
107
+ return __generator(this, function (_a) {
108
+ return [2 /*return*/, endpoint.api //
109
+ .put("/envelopes/".concat(envelopeId, "/fields/").concat(fieldName, "/initial/").concat(initialId))
110
+ .then(function (r) { return r.data; })];
111
+ });
112
+ }); };
102
113
 
103
114
  // NOTE: Do not attempt to convert this to a named-export module. It triggers compilation issues in Rollup that I spent days trying to
104
115
  const { state, onChange } = createStore({
@@ -127,17 +138,20 @@ onChange('envelope', async (newEnvelope) => {
127
138
  // Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into
128
139
  // child elements.
129
140
  const getEnvelopeById = async (endpoint, envelopeId) => {
130
- var _a;
141
+ var _a, _b;
131
142
  state.envelope = null;
132
143
  if (!envelopeId) {
133
144
  console.log(`[ENVELOPES] Missing required envelope ID`);
134
145
  return;
135
146
  }
147
+ if (((_a = state.envelope) === null || _a === void 0 ? void 0 : _a.id) === envelopeId) {
148
+ return;
149
+ }
136
150
  state.error = '';
137
151
  state.loading = true;
138
152
  try {
139
153
  console.log(`[ENVELOPES] Loading envelope ${envelopeId}`);
140
- const envelope = await getEnvelope(endpoint, envelopeId);
154
+ const envelope = await getEnvelope(endpoint, envelopeId, true);
141
155
  if (!envelope) {
142
156
  console.log('[ENVELOPES] Unable to load envelope');
143
157
  return;
@@ -147,12 +161,12 @@ const getEnvelopeById = async (endpoint, envelopeId) => {
147
161
  }
148
162
  catch (e) {
149
163
  state.loading = false;
150
- state.error = ((_a = e === null || e === void 0 ? void 0 : e.response) === null || _a === void 0 ? void 0 : _a.status) === 401 ? 'Authentication required' : e.message;
164
+ state.error = ((_b = e === null || e === void 0 ? void 0 : e.response) === null || _b === void 0 ? void 0 : _b.status) === 401 ? 'Authentication required' : e.message;
151
165
  console.log('[ENVELOPES] Error loading envelope', e);
152
166
  throw e;
153
167
  }
154
168
  };
155
169
 
156
- export { getEnvelopeById as a, getEnvelopeFile as b, updateEnvelopeFieldSignature as c, getSigningSession as g, state as s, updateEnvelopeField as u };
170
+ export { getEnvelopeById as a, getEnvelopeFile as b, updateEnvelopeFieldSignature as c, updateEnvelopeFieldInitials as d, getSigningSession as g, state as s, updateEnvelopeField as u };
157
171
 
158
172
  //# sourceMappingURL=Envelopes.js.map