@verdocs/web-sdk 1.9.38 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/dist/cjs/Envelopes-68058bbe.js +118 -0
  2. package/dist/cjs/{Envelopes-f2f8dd92.js → Envelopes-d30cba62.js} +2 -2
  3. package/dist/cjs/{VerdocsEndpoint-257ebdb3.js → VerdocsEndpoint-38feb32a.js} +57 -25
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{utils-0ec89d7d.js → utils-712ba3ec.js} +20 -115
  6. package/dist/cjs/verdocs-auth.cjs.entry.js +1 -1
  7. package/dist/cjs/verdocs-build.cjs.entry.js +4 -1
  8. package/dist/cjs/{verdocs-button-panel_3.cjs.entry.js → verdocs-button-panel_2.cjs.entry.js} +0 -19
  9. package/dist/cjs/verdocs-component-error.cjs.entry.js +20 -0
  10. package/dist/cjs/verdocs-contact-picker.cjs.entry.js +1 -1
  11. package/dist/cjs/verdocs-document-page_2.cjs.entry.js +3 -2
  12. package/dist/cjs/verdocs-dropdown.cjs.entry.js +1 -0
  13. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +221 -0
  14. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +2 -1
  15. package/dist/cjs/verdocs-field-date.cjs.entry.js +2 -1
  16. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +2 -1
  17. package/dist/cjs/verdocs-field-initial.cjs.entry.js +2 -1
  18. package/dist/cjs/verdocs-field-payment.cjs.entry.js +2 -1
  19. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +3 -2
  20. package/dist/cjs/verdocs-field-signature.cjs.entry.js +70 -0
  21. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +2 -1
  22. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +3 -2
  23. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +2 -1
  24. package/dist/cjs/verdocs-floating-menu_2.cjs.entry.js +151 -0
  25. package/dist/cjs/verdocs-preview.cjs.entry.js +3 -2
  26. package/dist/cjs/verdocs-quick-functions_3.cjs.entry.js +2 -2
  27. package/dist/cjs/verdocs-search.cjs.entry.js +1 -1
  28. package/dist/cjs/verdocs-send.cjs.entry.js +3 -2
  29. package/dist/cjs/verdocs-sign.cjs.entry.js +24 -23
  30. package/dist/cjs/{verdocs-field-signature_3.cjs.entry.js → verdocs-signature-dialog.cjs.entry.js} +0 -104
  31. package/dist/cjs/verdocs-template-create_4.cjs.entry.js +153 -37
  32. package/dist/cjs/verdocs-text-input.cjs.entry.js +25 -0
  33. package/dist/cjs/verdocs-view.cjs.entry.js +4 -3
  34. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  35. package/dist/collection/collection-manifest.json +3 -0
  36. package/dist/collection/components/controls/verdocs-dropdown/verdocs-dropdown.js +1 -0
  37. package/dist/collection/components/controls/verdocs-floating-menu/verdocs-floating-menu.css +91 -0
  38. package/dist/collection/components/controls/verdocs-floating-menu/verdocs-floating-menu.js +158 -0
  39. package/dist/collection/components/controls/verdocs-floating-menu/verdocs-floating-menu.stories.js +49 -0
  40. package/dist/collection/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.css +8 -1
  41. package/dist/collection/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.js +29 -2
  42. package/dist/collection/components/elements/verdocs-component-error/verdocs-component-error.css +16 -0
  43. package/dist/collection/components/elements/verdocs-component-error/verdocs-component-error.js +46 -0
  44. package/dist/collection/components/elements/verdocs-document-page/verdocs-document-page.js +1 -1
  45. package/dist/collection/components/elements/verdocs-envelope-sidebar/verdocs-envelope-sidebar.css +159 -0
  46. package/dist/collection/components/elements/verdocs-envelope-sidebar/verdocs-envelope-sidebar.js +299 -0
  47. package/dist/collection/components/elements/verdocs-envelope-sidebar/verdocs-envelope-sidebar.stories.js +12 -0
  48. package/dist/collection/components/elements/verdocs-field-radio-button-group/verdocs-field-radio-button.css +2 -2
  49. package/dist/collection/components/elements/verdocs-field-textbox/verdocs-field-textbox.css +2 -3
  50. package/dist/collection/components/elements/verdocs-template-create/verdocs-template-create.js +7 -2
  51. package/dist/collection/components/elements/verdocs-template-fields/verdocs-template-fields.css +34 -41
  52. package/dist/collection/components/elements/verdocs-template-fields/verdocs-template-fields.js +128 -34
  53. package/dist/collection/components/elements/verdocs-template-properties/verdocs-template-properties.js +4 -1
  54. package/dist/collection/components/elements/verdocs-template-recipients/verdocs-template-recipients.js +1 -0
  55. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +3 -0
  56. package/dist/collection/utils/utils.js +16 -0
  57. package/dist/components/Envelopes.js +69 -0
  58. package/dist/components/Envelopes2.js +111 -0
  59. package/dist/components/VerdocsEndpoint.js +57 -25
  60. package/dist/components/index.d.ts +3 -0
  61. package/dist/components/index.js +3 -0
  62. package/dist/components/utils.js +18 -110
  63. package/dist/components/verdocs-build.js +19 -28
  64. package/dist/components/verdocs-component-error.d.ts +11 -0
  65. package/dist/components/verdocs-component-error.js +6 -0
  66. package/dist/components/verdocs-component-error2.js +33 -0
  67. package/dist/components/verdocs-document-page2.js +1 -1
  68. package/dist/components/verdocs-dropdown2.js +1 -0
  69. package/dist/components/verdocs-envelope-sidebar.d.ts +11 -0
  70. package/dist/components/verdocs-envelope-sidebar.js +242 -0
  71. package/dist/components/verdocs-field-radio-button.js +1 -1
  72. package/dist/components/verdocs-field-signature.js +116 -1
  73. package/dist/components/verdocs-field-textbox.js +1 -1
  74. package/dist/components/verdocs-floating-menu.d.ts +11 -0
  75. package/dist/components/verdocs-floating-menu.js +6 -0
  76. package/dist/components/verdocs-floating-menu2.js +125 -0
  77. package/dist/components/verdocs-search-activity2.js +1 -1
  78. package/dist/components/verdocs-sign.js +5 -3
  79. package/dist/components/verdocs-template-create2.js +15 -4
  80. package/dist/components/verdocs-template-fields2.js +152 -69
  81. package/dist/components/verdocs-template-properties2.js +14 -5
  82. package/dist/components/verdocs-template-recipients2.js +1 -0
  83. package/dist/components/verdocs-toolbar-icon2.js +8 -3
  84. package/dist/components/verdocs-view2.js +3 -68
  85. package/dist/docs.json +281 -36
  86. package/dist/esm/Envelopes-130fd6ea.js +111 -0
  87. package/dist/esm/{Envelopes-779de57c.js → Envelopes-6982dfc6.js} +1 -1
  88. package/dist/esm/{VerdocsEndpoint-28ba21cc.js → VerdocsEndpoint-6df32d3a.js} +57 -25
  89. package/dist/esm/loader.js +1 -1
  90. package/dist/esm/{utils-06d58b15.js → utils-3d95c588.js} +18 -110
  91. package/dist/esm/verdocs-auth.entry.js +1 -1
  92. package/dist/esm/verdocs-build.entry.js +4 -1
  93. package/dist/esm/{verdocs-button-panel_3.entry.js → verdocs-button-panel_2.entry.js} +1 -19
  94. package/dist/esm/verdocs-component-error.entry.js +16 -0
  95. package/dist/esm/verdocs-contact-picker.entry.js +1 -1
  96. package/dist/esm/verdocs-document-page_2.entry.js +3 -2
  97. package/dist/esm/verdocs-dropdown.entry.js +1 -0
  98. package/dist/esm/verdocs-envelope-sidebar.entry.js +217 -0
  99. package/dist/esm/verdocs-field-checkbox.entry.js +2 -1
  100. package/dist/esm/verdocs-field-date.entry.js +2 -1
  101. package/dist/esm/verdocs-field-dropdown.entry.js +2 -1
  102. package/dist/esm/verdocs-field-initial.entry.js +2 -1
  103. package/dist/esm/verdocs-field-payment.entry.js +2 -1
  104. package/dist/esm/verdocs-field-radio-button.entry.js +3 -2
  105. package/dist/{components/verdocs-field-signature2.js → esm/verdocs-field-signature.entry.js} +12 -64
  106. package/dist/esm/verdocs-field-textarea.entry.js +2 -1
  107. package/dist/esm/verdocs-field-textbox.entry.js +3 -2
  108. package/dist/esm/verdocs-field-timestamp.entry.js +2 -1
  109. package/dist/esm/verdocs-floating-menu_2.entry.js +146 -0
  110. package/dist/esm/verdocs-preview.entry.js +3 -2
  111. package/dist/esm/verdocs-quick-functions_3.entry.js +2 -2
  112. package/dist/esm/verdocs-search.entry.js +1 -1
  113. package/dist/esm/verdocs-send.entry.js +3 -2
  114. package/dist/esm/verdocs-sign.entry.js +5 -4
  115. package/dist/esm/{verdocs-field-signature_3.entry.js → verdocs-signature-dialog.entry.js} +1 -103
  116. package/dist/esm/verdocs-template-create_4.entry.js +153 -37
  117. package/dist/esm/verdocs-text-input.entry.js +21 -0
  118. package/dist/esm/verdocs-view.entry.js +4 -3
  119. package/dist/esm/verdocs-web-sdk.js +1 -1
  120. package/dist/esm-es5/Envelopes-130fd6ea.js +1 -0
  121. package/dist/esm-es5/Envelopes-6982dfc6.js +1 -0
  122. package/dist/esm-es5/VerdocsEndpoint-6df32d3a.js +1 -0
  123. package/dist/esm-es5/loader.js +1 -1
  124. package/dist/esm-es5/utils-3d95c588.js +1 -0
  125. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  126. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  127. package/dist/esm-es5/{verdocs-button-panel_3.entry.js → verdocs-button-panel_2.entry.js} +1 -1
  128. package/dist/esm-es5/verdocs-component-error.entry.js +1 -0
  129. package/dist/esm-es5/verdocs-contact-picker.entry.js +1 -1
  130. package/dist/esm-es5/verdocs-document-page_2.entry.js +1 -1
  131. package/dist/esm-es5/verdocs-dropdown.entry.js +1 -1
  132. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -0
  133. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  134. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  135. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  136. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  137. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  138. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  139. package/dist/esm-es5/verdocs-field-signature.entry.js +1 -0
  140. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  141. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  142. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  143. package/dist/esm-es5/verdocs-floating-menu_2.entry.js +1 -0
  144. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  145. package/dist/esm-es5/verdocs-quick-functions_3.entry.js +1 -1
  146. package/dist/esm-es5/verdocs-search.entry.js +1 -1
  147. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  148. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  149. package/dist/esm-es5/verdocs-signature-dialog.entry.js +1 -0
  150. package/dist/esm-es5/verdocs-template-create_4.entry.js +1 -1
  151. package/dist/esm-es5/verdocs-text-input.entry.js +1 -0
  152. package/dist/esm-es5/verdocs-view.entry.js +1 -1
  153. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  154. package/dist/types/components/controls/verdocs-floating-menu/verdocs-floating-menu.d.ts +31 -0
  155. package/dist/types/components/controls/verdocs-floating-menu/verdocs-floating-menu.stories.d.ts +7 -0
  156. package/dist/types/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.d.ts +5 -0
  157. package/dist/types/components/elements/verdocs-component-error/verdocs-component-error.d.ts +10 -0
  158. package/dist/types/components/elements/verdocs-envelope-sidebar/verdocs-envelope-sidebar.d.ts +39 -0
  159. package/dist/types/components/elements/verdocs-envelope-sidebar/verdocs-envelope-sidebar.stories.d.ts +6 -0
  160. package/dist/types/components/elements/verdocs-template-fields/verdocs-template-fields.d.ts +14 -3
  161. package/dist/types/components.d.ts +97 -0
  162. package/dist/types/utils/Types.d.ts +0 -1
  163. package/dist/types/utils/utils.d.ts +2 -2
  164. package/dist/verdocs-web-sdk/p-03833051.system.entry.js +1 -0
  165. package/dist/verdocs-web-sdk/p-0eb992eb.entry.js +1 -0
  166. package/dist/verdocs-web-sdk/{p-0a33398a.entry.js → p-17fd7860.entry.js} +1 -1
  167. package/dist/verdocs-web-sdk/p-18cf7ea1.system.entry.js +1 -0
  168. package/dist/verdocs-web-sdk/p-1be43032.system.entry.js +1 -0
  169. package/dist/verdocs-web-sdk/p-1ef0501b.entry.js +1 -0
  170. package/dist/verdocs-web-sdk/p-23033619.system.entry.js +1 -0
  171. package/dist/verdocs-web-sdk/{p-89f25d01.entry.js → p-266e163c.entry.js} +1 -1
  172. package/dist/verdocs-web-sdk/{p-ddda809b.system.js → p-2d687108.system.js} +1 -1
  173. package/dist/verdocs-web-sdk/p-2e4dfdc6.js +1 -0
  174. package/dist/verdocs-web-sdk/p-328453a9.system.entry.js +1 -0
  175. package/dist/verdocs-web-sdk/p-3599f81f.entry.js +1 -0
  176. package/dist/verdocs-web-sdk/p-3dbf8bec.entry.js +1 -0
  177. package/dist/verdocs-web-sdk/p-3dcd05aa.system.entry.js +1 -0
  178. package/dist/verdocs-web-sdk/{p-aa3a42a4.system.entry.js → p-45ac2230.system.entry.js} +1 -1
  179. package/dist/verdocs-web-sdk/{p-5597170d.system.entry.js → p-46bb5543.system.entry.js} +1 -1
  180. package/dist/verdocs-web-sdk/{p-4490a384.system.entry.js → p-47dfcf69.system.entry.js} +1 -1
  181. package/dist/verdocs-web-sdk/p-50f82ed8.entry.js +1 -0
  182. package/dist/verdocs-web-sdk/p-5b114f68.system.entry.js +1 -0
  183. package/dist/verdocs-web-sdk/p-5b8dbf0b.system.entry.js +1 -0
  184. package/dist/verdocs-web-sdk/p-5c7ef99f.system.entry.js +1 -0
  185. package/dist/verdocs-web-sdk/{p-14c69e28.system.entry.js → p-5d220e75.system.entry.js} +1 -1
  186. package/dist/verdocs-web-sdk/p-621c7079.system.entry.js +1 -0
  187. package/dist/verdocs-web-sdk/p-644cc3c3.js +1 -0
  188. package/dist/verdocs-web-sdk/{p-72b4fa6b.entry.js → p-6b205bb5.entry.js} +1 -1
  189. package/dist/verdocs-web-sdk/p-787a334a.system.entry.js +1 -0
  190. package/dist/verdocs-web-sdk/p-7b357e1a.entry.js +1 -0
  191. package/dist/verdocs-web-sdk/p-7b66bc0d.system.entry.js +1 -0
  192. package/dist/verdocs-web-sdk/p-804fbf15.entry.js +1 -0
  193. package/dist/verdocs-web-sdk/p-838d889b.system.entry.js +1 -0
  194. package/dist/verdocs-web-sdk/{p-a42a5853.system.entry.js → p-86a8b6ad.system.entry.js} +1 -1
  195. package/dist/verdocs-web-sdk/p-880b619d.js +1 -0
  196. package/dist/verdocs-web-sdk/{p-2d36b5a3.entry.js → p-8a2dbb48.entry.js} +1 -1
  197. package/dist/verdocs-web-sdk/p-8f50fd8e.system.entry.js +1 -0
  198. package/dist/verdocs-web-sdk/p-8f873d8e.system.entry.js +1 -0
  199. package/dist/verdocs-web-sdk/p-90a92236.system.entry.js +1 -0
  200. package/dist/verdocs-web-sdk/p-938a7d4e.system.entry.js +1 -0
  201. package/dist/verdocs-web-sdk/p-95016ea1.entry.js +1 -0
  202. package/dist/verdocs-web-sdk/p-a140f6f9.entry.js +1 -0
  203. package/dist/verdocs-web-sdk/p-a1412c61.system.entry.js +1 -0
  204. package/dist/verdocs-web-sdk/p-a32f90e9.entry.js +1 -0
  205. package/dist/verdocs-web-sdk/p-a4dc6a79.system.js +1 -0
  206. package/dist/verdocs-web-sdk/p-aba1f14b.system.entry.js +1 -0
  207. package/dist/verdocs-web-sdk/{p-123572b9.entry.js → p-ae3b30c6.entry.js} +1 -1
  208. package/dist/verdocs-web-sdk/{p-ba6c3671.system.entry.js → p-b505db92.system.entry.js} +1 -1
  209. package/dist/verdocs-web-sdk/p-b5c21eda.entry.js +1 -0
  210. package/dist/verdocs-web-sdk/p-b8faf8b8.entry.js +1 -0
  211. package/dist/verdocs-web-sdk/p-ba23b639.entry.js +1 -0
  212. package/dist/verdocs-web-sdk/p-c16b6ca4.system.js +1 -1
  213. package/dist/verdocs-web-sdk/p-c3ba021b.entry.js +1 -0
  214. package/dist/verdocs-web-sdk/{p-4f72d7e9.js → p-c4deb4b7.js} +1 -1
  215. package/dist/verdocs-web-sdk/p-c6370ca8.entry.js +1 -0
  216. package/dist/verdocs-web-sdk/p-ce442d55.entry.js +1 -0
  217. package/dist/verdocs-web-sdk/p-d0c587f1.entry.js +1 -0
  218. package/dist/verdocs-web-sdk/p-d30ee967.system.entry.js +1 -0
  219. package/dist/verdocs-web-sdk/p-d36ae684.entry.js +1 -0
  220. package/dist/verdocs-web-sdk/p-d6d95682.system.entry.js +1 -0
  221. package/dist/verdocs-web-sdk/p-d7e31573.system.js +1 -0
  222. package/dist/verdocs-web-sdk/p-d946b1b6.entry.js +1 -0
  223. package/dist/verdocs-web-sdk/p-d9ff093e.system.entry.js +1 -0
  224. package/dist/verdocs-web-sdk/p-e0cfad01.system.js +1 -0
  225. package/dist/verdocs-web-sdk/p-eb68cf29.entry.js +1 -0
  226. package/dist/verdocs-web-sdk/p-ec7a9c6e.entry.js +1 -0
  227. package/dist/verdocs-web-sdk/p-f43721cf.entry.js +1 -0
  228. package/dist/verdocs-web-sdk/p-ff45cca0.entry.js +1 -0
  229. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  230. package/package.json +15 -15
  231. package/dist/esm-es5/Envelopes-779de57c.js +0 -1
  232. package/dist/esm-es5/VerdocsEndpoint-28ba21cc.js +0 -1
  233. package/dist/esm-es5/utils-06d58b15.js +0 -1
  234. package/dist/esm-es5/verdocs-field-signature_3.entry.js +0 -1
  235. package/dist/verdocs-web-sdk/p-0315f91f.system.entry.js +0 -1
  236. package/dist/verdocs-web-sdk/p-0592cb20.system.entry.js +0 -1
  237. package/dist/verdocs-web-sdk/p-0b67a5f1.system.js +0 -1
  238. package/dist/verdocs-web-sdk/p-16fe44ba.entry.js +0 -1
  239. package/dist/verdocs-web-sdk/p-17136749.system.entry.js +0 -1
  240. package/dist/verdocs-web-sdk/p-1cc4f8c2.entry.js +0 -1
  241. package/dist/verdocs-web-sdk/p-24b9c1a3.system.entry.js +0 -1
  242. package/dist/verdocs-web-sdk/p-2c776579.system.entry.js +0 -1
  243. package/dist/verdocs-web-sdk/p-34bed726.system.entry.js +0 -1
  244. package/dist/verdocs-web-sdk/p-34e3df55.entry.js +0 -1
  245. package/dist/verdocs-web-sdk/p-3ee11027.entry.js +0 -1
  246. package/dist/verdocs-web-sdk/p-41b71077.system.entry.js +0 -1
  247. package/dist/verdocs-web-sdk/p-427524bd.entry.js +0 -1
  248. package/dist/verdocs-web-sdk/p-4814e58e.entry.js +0 -1
  249. package/dist/verdocs-web-sdk/p-49d804da.js +0 -1
  250. package/dist/verdocs-web-sdk/p-57165db2.system.entry.js +0 -1
  251. package/dist/verdocs-web-sdk/p-5dec58c2.entry.js +0 -1
  252. package/dist/verdocs-web-sdk/p-5e67c42f.js +0 -1
  253. package/dist/verdocs-web-sdk/p-5faa7077.system.entry.js +0 -1
  254. package/dist/verdocs-web-sdk/p-602a22c7.entry.js +0 -1
  255. package/dist/verdocs-web-sdk/p-6239f230.entry.js +0 -1
  256. package/dist/verdocs-web-sdk/p-63a00853.entry.js +0 -1
  257. package/dist/verdocs-web-sdk/p-69a32638.system.entry.js +0 -1
  258. package/dist/verdocs-web-sdk/p-6a75bbb5.entry.js +0 -1
  259. package/dist/verdocs-web-sdk/p-787252e0.entry.js +0 -1
  260. package/dist/verdocs-web-sdk/p-7a6c829f.system.js +0 -1
  261. package/dist/verdocs-web-sdk/p-85f91c34.system.entry.js +0 -1
  262. package/dist/verdocs-web-sdk/p-893553e7.system.entry.js +0 -1
  263. package/dist/verdocs-web-sdk/p-93bf1041.entry.js +0 -1
  264. package/dist/verdocs-web-sdk/p-99c2766b.entry.js +0 -1
  265. package/dist/verdocs-web-sdk/p-9c595648.system.entry.js +0 -1
  266. package/dist/verdocs-web-sdk/p-a5698580.system.entry.js +0 -1
  267. package/dist/verdocs-web-sdk/p-ac4c1ad8.entry.js +0 -1
  268. package/dist/verdocs-web-sdk/p-b39a41fc.system.entry.js +0 -1
  269. package/dist/verdocs-web-sdk/p-ba02faae.system.entry.js +0 -1
  270. package/dist/verdocs-web-sdk/p-e9e18f1a.entry.js +0 -1
  271. package/dist/verdocs-web-sdk/p-ef845e9c.system.entry.js +0 -1
  272. package/dist/verdocs-web-sdk/p-f80f538d.entry.js +0 -1
  273. package/dist/verdocs-web-sdk/p-fcf9e8f0.entry.js +0 -1
@@ -1,8 +1,8 @@
1
1
  import interact from 'interactjs';
2
2
  import { VerdocsEndpoint } from '@verdocs/js-sdk';
3
- import { getRGBA } from '@verdocs/js-sdk/Utils/Colors';
3
+ import { createField, editField } from '@verdocs/js-sdk/Templates/Fields';
4
4
  import { h, Host } from '@stencil/core';
5
- import { getRoleIndex, renderDocumentField, updateCssTransform } from '../../../utils/utils';
5
+ import { defaultHeight, defaultWidth, getRoleIndex, renderDocumentField, updateCssTransform } from '../../../utils/utils';
6
6
  import TemplateStore from '../../../utils/templateStore';
7
7
  import { loadTemplate } from '../../../utils/Templates';
8
8
  import { SDKError } from '../../../utils/errors';
@@ -13,14 +13,31 @@ const iconRadio = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24
13
13
  const iconDatepicker = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path d="M7.6 13.925q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375Zm4.4 0q-.55 0-.925-.375t-.375-.925q0-.55.375-.937.375-.388.925-.388t.925.388q.375.387.375.937t-.375.925q-.375.375-.925.375ZM5.3 22.85q-1.325 0-2.238-.912-.912-.913-.912-2.238V6.3q0-1.325.912-2.238.913-.912 2.238-.912H6v-2h2.575v2h6.85v-2H18v2h.7q1.325 0 2.238.912.912.913.912 2.238v13.4q0 1.325-.912 2.238-.913.912-2.238.912Zm0-3.15h13.4V10H5.3v9.7ZM5.3 8h13.4V6.3H5.3Zm0 0V6.3 8Z"/></svg>';
14
14
  const iconSignature = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path d="m9.225 21.225 4.65-4.65h8.45v4.65Zm-5.35-2.2H5.05l8.5-8.5-1.175-1.175-8.5 8.5Zm14.25-9.95L13.8 4.8l1.325-1.325q.625-.65 1.525-.663.9-.012 1.6.663l1.225 1.175q.675.675.663 1.562-.013.888-.663 1.513ZM16.7 10.55 6 21.225H1.675V16.9L12.35 6.225Zm-3.725-.625-.6-.575 1.175 1.175Z"/></svg>';
15
15
  const iconInitial = '<svg xmlns="http://www.w3.org/2000/svg" height="24" width="24"><path d="M6.225 20.775V7h-5V3.225H15V7h-5v13.775Zm9.775 0v-8h-3V9h9.775v3.775h-3v8Z"/></svg>';
16
+ const menuOptions = [
17
+ { id: 'attachment', tooltip: 'Attachment', icon: 'A' },
18
+ { id: 'checkbox', tooltip: 'Check Box', icon: iconCheck },
19
+ { id: 'date', tooltip: 'Date', icon: iconDatepicker },
20
+ { id: 'dropdown', tooltip: 'Dropdown', icon: 'O' },
21
+ { id: 'initial', tooltip: 'Initials', icon: iconInitial },
22
+ { id: 'payment', tooltip: 'Payment', icon: 'P' },
23
+ { id: 'radio', tooltip: 'Radio Button', icon: iconRadio },
24
+ { id: 'signature', tooltip: 'Signature', icon: iconSignature },
25
+ { id: 'textarea', tooltip: 'Text Area', icon: iconMultiline },
26
+ { id: 'textbox', tooltip: 'Text Box', icon: iconSingleline },
27
+ { id: 'timestamp', tooltip: 'Timestamp', icon: 'X' },
28
+ ];
16
29
  /**
17
30
  * Displays a builder experience for laying out fields in a template. Note that this experience requires a large display area to
18
31
  * present all of the required controls, so it is primarily intended to be used in desktop environments.
19
32
  */
20
33
  export class VerdocsTemplateFields {
21
34
  constructor() {
35
+ this.pageHeights = {};
36
+ this.cachedPageInfo = {};
22
37
  this.endpoint = VerdocsEndpoint.getDefault();
23
38
  this.templateId = null;
39
+ this.placing = null;
40
+ this.selectedRoleName = '';
24
41
  }
25
42
  async componentWillLoad() {
26
43
  var _a, _b, _c, _d, _e, _f;
@@ -30,9 +47,15 @@ export class VerdocsTemplateFields {
30
47
  console.log(`[FIELDS] Missing required template ID ${this.templateId}`);
31
48
  return;
32
49
  }
50
+ if (!this.endpoint.session) {
51
+ console.log('[BUILD] Unable to start builder session, must be authenticated');
52
+ return;
53
+ }
33
54
  try {
34
- console.log(`[FIELDS] Loading template ${this.templateId}`);
55
+ console.log(`[FIELDS] Loading template ${this.templateId}`, this.endpoint.session);
35
56
  await loadTemplate(this.endpoint, this.templateId);
57
+ this.selectedRoleName = TemplateStore.roleNames[0];
58
+ console.log('Starting with role', this.selectedRoleName);
36
59
  }
37
60
  catch (e) {
38
61
  console.log('[FIELDS] Error loading template', e);
@@ -45,30 +68,40 @@ export class VerdocsTemplateFields {
45
68
  }
46
69
  }
47
70
  componentDidRender() {
48
- // console.log('rendered', this.page0El, this.toolbarEl);
49
- // console.log('w', this.page0El.clientWidth);
50
- // console.log('t', this.toolbarEl.clientWidth);
51
71
  interact.dynamicDrop(true);
52
- this.toolbarEl.style.width = `${this.page0El.clientWidth}px`;
53
72
  }
54
73
  async handleFieldChange(field, e, optionId) {
55
74
  console.log('[FIELDS] handleFieldChange', field, e, optionId);
56
75
  }
76
+ attachFieldAttributes(pageInfo, field, roleIndex, el) {
77
+ el.addEventListener('input', e => this.handleFieldChange(field, e));
78
+ el.setAttribute('roleindex', roleIndex);
79
+ el.setAttribute('pageNumber', pageInfo.pageNumber);
80
+ el.setAttribute('xScale', pageInfo.xScale);
81
+ el.setAttribute('yScale', pageInfo.yScale);
82
+ el.setAttribute('name', field.name);
83
+ }
57
84
  handlePageRendered(e) {
58
85
  const pageInfo = e.detail;
59
86
  console.log('[FIELDS] Page rendered', pageInfo);
87
+ this.cachedPageInfo[pageInfo.pageNumber] = pageInfo;
88
+ this.pageHeights[pageInfo.pageNumber] = pageInfo.naturalHeight;
89
+ console.log('tsf', pageInfo.pageNumber, TemplateStore.fields);
60
90
  const fields = TemplateStore.fields.filter(field => field.page_sequence === pageInfo.pageNumber);
61
91
  // const fields = this.fields.filter(field => field.page_sequence === pageInfo.renderedPage.pageNumber);
62
92
  console.log('[FIELDS] Fields on page', fields);
63
93
  fields.forEach(field => {
64
- const el = renderDocumentField(field, pageInfo, getRoleIndex(TemplateStore.roleNames, field.role_name), { disabled: true, editable: true, draggable: true });
94
+ const roleIndex = getRoleIndex(TemplateStore.roleNames, field.role_name);
95
+ const el = renderDocumentField(field, pageInfo, roleIndex, { disabled: true, editable: true, draggable: true });
65
96
  if (!el) {
66
97
  return;
67
98
  }
68
- el.addEventListener('input', e => this.handleFieldChange(field, e));
69
- el.addEventListener('recipientChanged', e => el.setAttribute('roleindex', getRoleIndex(TemplateStore.roleNames, e.detail)));
70
- el.setAttribute('xScale', pageInfo.xScale);
71
- el.setAttribute('yScale', pageInfo.yScale);
99
+ if (Array.isArray(el)) {
100
+ el.map(e => this.attachFieldAttributes(pageInfo, field, roleIndex, e));
101
+ }
102
+ else {
103
+ this.attachFieldAttributes(pageInfo, field, roleIndex, el);
104
+ }
72
105
  interact(el).draggable({
73
106
  listeners: {
74
107
  start(event) {
@@ -85,42 +118,97 @@ export class VerdocsTemplateFields {
85
118
  event.target.setAttribute('posy', newY);
86
119
  updateCssTransform(event.target, 'translate', `${newX}px, ${newY}px`);
87
120
  },
88
- end(event) {
89
- console.log('[FIELDS] Drag ended', event);
90
- // event.target.setAttribute('posX', 0);
91
- // event.target.setAttribute('posy', 0);
92
- // updateCssTransform(event.target, 'translate', `${0}px, ${0}px`);
93
- },
121
+ end: this.handleMoveField.bind(this),
94
122
  },
95
123
  });
96
124
  });
97
125
  }
126
+ async handleMoveField(e) {
127
+ const pageNumber = e.target.getAttribute('pageNumber');
128
+ const { naturalWidth = 612, naturalHeight = 792, renderedHeight = 792 } = this.cachedPageInfo[pageNumber];
129
+ console.log('[FIELDS] Drag ended', pageNumber, e.target);
130
+ const clientRect = e.target.getBoundingClientRect();
131
+ const parent = e.target.parentElement;
132
+ const parentRect = parent.getBoundingClientRect();
133
+ // These two being backwards is not a mistake. Left measures "over" from the left (positive displacement) while bottom measures
134
+ // "up" from the bottom (negative displacement).
135
+ const newX = Math.max(clientRect.left - parentRect.left, 0);
136
+ const newY = Math.max(renderedHeight - (parentRect.bottom - clientRect.bottom), 0);
137
+ const { x, y } = this.viewCoordinatesToPageCoordinates(newX, newY, pageNumber, naturalWidth - e.rect.width, naturalHeight - e.rect.height);
138
+ const name = e.target.getAttribute('name');
139
+ const field = TemplateStore.fields.find(field => field.name === name);
140
+ if (field) {
141
+ field.setting.x = x;
142
+ field.setting.y = y;
143
+ const edited = await editField(this.endpoint, this.templateId, name, field);
144
+ console.log('edited field', edited);
145
+ this.handlePageRendered({ detail: this.cachedPageInfo[pageNumber] });
146
+ }
147
+ }
148
+ generateFieldName(type, pageNumber) {
149
+ var _a;
150
+ const page = (_a = TemplateStore.template.pages) === null || _a === void 0 ? void 0 : _a[pageNumber - 1];
151
+ const fields = (page === null || page === void 0 ? void 0 : page.fields) || [];
152
+ return `${type}P${pageNumber}-${fields.length}`;
153
+ }
154
+ // Scale the X,Y clicks to the virtual page dimensions. Also ensure the field doesn't go off the page.
155
+ viewCoordinatesToPageCoordinates(viewX, viewY, pageNumber, xMax, yMax) {
156
+ const { xScale = 1, yScale = 1, renderedHeight = 792 } = this.cachedPageInfo[pageNumber];
157
+ const x = Math.floor(Math.min(viewX / xScale, xMax));
158
+ const y = Math.floor(Math.min(Math.max(renderedHeight - viewY, 0) / yScale, yMax));
159
+ return { x, y };
160
+ }
161
+ async handleClickPage(e, page) {
162
+ if (this.placing) {
163
+ const pageNumber = page.sequence;
164
+ const clickedX = e.offsetX;
165
+ const clickedY = e.offsetY;
166
+ const width = defaultWidth({ type: this.placing });
167
+ const height = defaultHeight({ type: this.placing });
168
+ const { naturalWidth = 612, naturalHeight = 792 } = this.cachedPageInfo[pageNumber];
169
+ const { x, y } = this.viewCoordinatesToPageCoordinates(clickedX, clickedY, pageNumber, naturalWidth - width, naturalHeight - height);
170
+ const field = {
171
+ name: this.generateFieldName(this.placing, pageNumber),
172
+ role_name: this.selectedRoleName,
173
+ template_id: this.templateId,
174
+ type: this.placing,
175
+ required: true,
176
+ page_sequence: pageNumber,
177
+ validator: null,
178
+ setting: {
179
+ width,
180
+ height,
181
+ x,
182
+ y,
183
+ result: '',
184
+ },
185
+ };
186
+ const saved = await createField(this.endpoint, this.templateId, field);
187
+ console.log('Saved field', saved);
188
+ TemplateStore.fields.push(saved);
189
+ this.placing = null;
190
+ this.handlePageRendered({ detail: this.cachedPageInfo[pageNumber] });
191
+ }
192
+ }
98
193
  render() {
99
- const testField = {
100
- template_id: '',
101
- name: 'test',
102
- role_name: 'Recipient 1',
103
- type: 'textbox',
104
- required: true,
105
- setting: {
106
- x: 0,
107
- y: 0,
108
- },
109
- page_sequence: 0,
110
- };
194
+ if (!this.endpoint.session) {
195
+ return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
196
+ }
111
197
  // TODO: Render a better error
112
198
  if (TemplateStore.loading || !TemplateStore.template) {
113
199
  return (h(Host, null, h("verdocs-loader", null)));
114
200
  }
115
201
  const pages = [...TemplateStore.template.pages];
116
202
  pages.sort((a, b) => a.sequence - b.sequence);
117
- return (h(Host, null, h("div", { class: "fields-bar", ref: el => (this.toolbarEl = el) }, h("div", { class: "label" }, "Add Field:"), h("verdocs-toolbar-icon", { icon: iconSingleline, text: "Single-line Text Box", onClick: () => console.log('single press') }), h("verdocs-toolbar-icon", { icon: iconMultiline, text: "Multi-line Text Box", onClick: () => console.log('multi press') }), h("verdocs-toolbar-icon", { icon: iconCheck, text: "Checkbox", onClick: () => console.log('check press') }), h("verdocs-toolbar-icon", { icon: iconRadio, text: "Radio Button", onClick: () => console.log('radio press') }), h("verdocs-toolbar-icon", { icon: iconDatepicker, text: "Date Picker", onClick: () => console.log('date press') }), h("verdocs-toolbar-icon", { icon: iconSignature, text: "Signature", onClick: () => console.log('signature press') }), h("verdocs-toolbar-icon", { icon: iconInitial, text: "Initials", onClick: () => console.log('initial press') }), h("div", { style: { flex: '1' } }), h("button", { onClick: () => { var _a; return (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit(TemplateStore.template); }, disabled: true, class: "operation" }, "Save"), h("button", { onClick: () => { var _a; return (_a = this.cancel) === null || _a === void 0 ? void 0 : _a.emit(); }, class: "operation" }, "Close")), h("div", { class: "page-0", ref: el => (this.page0El = el) }, h("div", { class: "user-placed-fields" }, h("div", { class: "title" }, "User-Placed Fields"), h("verdocs-field-signature", { field: testField, style: { width: '82px', height: '41px', left: '20px', top: '40px', transform: 'scale(1,1)', backgroundColor: getRGBA(0) }, moveable: true, editable: true }))), h("div", { class: "pages" }, pages.map(page => {
118
- console.log('rendering page', page);
119
- return (h("verdocs-document-page", { pageImageUri: page.display_uri, virtualWidth: 612, virtualHeight: 792, pageNumber: page.sequence, onPageRendered: e => this.handlePageRendered(e), layers: [
203
+ return (h(Host, { class: this.placing ? { [`placing-${this.placing}`]: true } : {} }, h("div", { class: "pages" }, pages.map(page => {
204
+ // console.log('rendering page', page);
205
+ return (h("verdocs-document-page", { pageImageUri: page.display_uri, virtualWidth: 612, virtualHeight: 792, onClick: (e) => this.handleClickPage(e, page), pageNumber: page.sequence, onPageRendered: e => this.handlePageRendered(e), layers: [
120
206
  { name: 'page', type: 'canvas' },
121
207
  { name: 'controls', type: 'div' },
122
208
  ] }));
123
- }))));
209
+ })), h("verdocs-floating-menu", { options: menuOptions, onOptionSelected: e => {
210
+ this.placing = e.detail.id;
211
+ } })));
124
212
  }
125
213
  static get is() { return "verdocs-template-fields"; }
126
214
  static get originalStyleUrls() {
@@ -176,6 +264,12 @@ export class VerdocsTemplateFields {
176
264
  }
177
265
  };
178
266
  }
267
+ static get states() {
268
+ return {
269
+ "placing": {},
270
+ "selectedRoleName": {}
271
+ };
272
+ }
179
273
  static get events() {
180
274
  return [{
181
275
  "method": "next",
@@ -1,5 +1,5 @@
1
1
  import { VerdocsEndpoint } from '@verdocs/js-sdk';
2
- import { h } from '@stencil/core';
2
+ import { h, Host } from '@stencil/core';
3
3
  import { getTemplate } from '@verdocs/js-sdk/Templates/Templates';
4
4
  import { SDKError } from '../../../utils/errors';
5
5
  import TemplateStore from '../../../utils/templateStore';
@@ -54,6 +54,9 @@ export class VerdocsTemplateProperties {
54
54
  });
55
55
  }
56
56
  render() {
57
+ if (!this.endpoint.session) {
58
+ return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
59
+ }
57
60
  return (h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("h5", null, "Template Name"), h("fieldset", null, h("verdocs-text-input", { value: this.name, autocomplete: "off", onInput: (e) => (this.name = e.target.value) })), h("h5", null, "Reminders"), h("fieldset", null, h("div", { class: "input-row" }, h("label", null, "Send Automatic Reminders"), h("verdocs-checkbox", { name: "automatic-reminders", checked: this.sendReminders, value: "on", onInput: (e) => (this.sendReminders = e.target.checked) })), h("div", { class: "input-row" }, h("label", null, "Days Before First Reminder"), h("verdocs-text-input", { value: this.firstReminderDays, onInput: (e) => (this.firstReminderDays = e.target.value) })), h("div", { class: "input-row" }, h("label", null, "Days Between Reminders"), h("verdocs-text-input", { value: this.reminderDays, onInput: (e) => (this.reminderDays = e.target.value) }))), h("h5", null, "Template Visibility"), h("fieldset", null, h("div", { class: "radio-row" }, h("verdocs-radio-button", { name: "visibility", checked: true, value: "private", onChange: () => (this.visibility = 'private') }), h("label", { htmlFor: "verdocs-radio-button-visibility-private" }, h("div", { class: "title" }, "Private"), h("div", { class: "description" }, "Only you can share and use this template"))), h("div", { class: "radio-row" }, h("verdocs-radio-button", { name: "visibility", checked: true, value: "shared", onChange: () => (this.visibility = 'shared') }), h("label", { htmlFor: "verdocs-radio-button-visibility-shared" }, h("div", { class: "title" }, "Shared to your organization"), h("div", { class: "description" }, "Give access to your organization to share and use this template"))), h("div", { class: "radio-row" }, h("verdocs-radio-button", { name: "visibility", checked: true, value: "shared_public", onChange: () => (this.visibility = 'shared_public') }), h("label", { htmlFor: "verdocs-radio-button-visibility-shared_public" }, h("div", { class: "title" }, "Shared to your organization and Public"), h("div", { class: "description" }, "Give access to your organization to share this template, and anyone on the Web can find and use this template"))), h("div", { class: "radio-row" }, h("verdocs-radio-button", { name: "visibility", checked: this.visibility === 'public', value: "public", onChange: () => (this.visibility = 'public') }), h("label", { htmlFor: "verdocs-radio-button-visibility-public" }, h("div", { class: "title" }, "Public"), h("div", { class: "description" }, "Anyone on the Web can find and use this template")))), h("div", { class: "buttons" }, h("div", { class: "flex-fill" }), h("verdocs-button", { variant: "outline", label: "Cancel", size: "small", onClick: e => this.handleCancel(e) }), h("verdocs-button", { label: "OK", size: "small", onClick: e => this.handleSubmit(e) }))));
58
61
  }
59
62
  static get is() { return "verdocs-template-properties"; }
@@ -48,6 +48,7 @@ export class VerdocsTemplateRecipients {
48
48
  this.orderedRoles = [];
49
49
  }
50
50
  componentWillLoad() {
51
+ this.endpoint.loadSession();
51
52
  if (this.templateRole) {
52
53
  this.name = this.templateRole.full_name || '';
53
54
  this.email = this.templateRole.email || '';
@@ -53,6 +53,9 @@ export class VerdocsBuild {
53
53
  this.step = 'fields';
54
54
  }
55
55
  render() {
56
+ if (!this.endpoint.session) {
57
+ return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
58
+ }
56
59
  return (h(Host, null, this.step === 'create' && h("verdocs-template-create", { onCancel: e => this.handleCancel(e), onNext: e => this.handleTemplateCreated(e) }), this.step === 'properties' && h("verdocs-template-properties", { onCancel: e => this.handleCancel(e), onNext: e => this.handlePropertiesUpdated(e) }), this.step === 'recipients' && h("verdocs-template-recipients", { onCancel: e => this.handleCancel(e), onNext: e => this.handleRecipientsUpdated(e) }), this.step === 'fields' && h("verdocs-template-fields", { onCancel: e => this.handleCancel(e), onNext: e => this.handleCancel(e) })));
57
60
  }
58
61
  static get is() { return "verdocs-build"; }
@@ -3,6 +3,14 @@ import { Envelopes } from '@verdocs/js-sdk/Envelopes';
3
3
  import { downloadBlob } from '@verdocs/js-sdk/Utils/Files';
4
4
  export const defaultWidth = (field) => {
5
5
  switch (field.type) {
6
+ case 'textbox':
7
+ return 150;
8
+ case 'timestamp':
9
+ return 64;
10
+ case 'date':
11
+ return 64;
12
+ case 'dropdown':
13
+ return 64;
6
14
  case 'attachment':
7
15
  case 'payment':
8
16
  return 24;
@@ -20,6 +28,14 @@ export const defaultWidth = (field) => {
20
28
  };
21
29
  export const defaultHeight = (field) => {
22
30
  switch (field.type) {
31
+ case 'textbox':
32
+ return 15;
33
+ case 'timestamp':
34
+ return 15;
35
+ case 'date':
36
+ return 15;
37
+ case 'dropdown':
38
+ return 15;
23
39
  case 'attachment':
24
40
  case 'payment':
25
41
  return 24;
@@ -0,0 +1,69 @@
1
+ import { d as getEnvelope } from './Envelopes2.js';
2
+ import { c as createStore } from './index3.js';
3
+ import { g as getTemplate } from './Templates2.js';
4
+
5
+ // NOTE: Do not attempt to convert this to a named-export module. It triggers compilation issues in Rollup that I spent days trying to
6
+ const { state, onChange } = createStore({
7
+ envelope: null,
8
+ template: null,
9
+ loadProgress: 0,
10
+ loading: true,
11
+ error: '',
12
+ roleNames: [],
13
+ dirty: false,
14
+ });
15
+ onChange('envelope', async (newEnvelope) => {
16
+ if (!newEnvelope) {
17
+ console.log('[ENVELOPESTORE] Clearing envelope');
18
+ state.roleNames = [];
19
+ state.dirty = false;
20
+ state.loading = false;
21
+ state.error = '';
22
+ state.loadProgress = 0;
23
+ return;
24
+ }
25
+ console.log('[ENVELOPESTORE] Loaded envelope', newEnvelope);
26
+ state.roleNames = newEnvelope.recipients.map(recipient => recipient.role_name);
27
+ console.log('[ENVELOPESTORE] Loaded roles', state.roleNames);
28
+ });
29
+
30
+ // Allows envelope data to be cached for reuse between components, without parent components having to prop-drill entire envelopes into
31
+ // child elements.
32
+ const getEnvelopeById = async (endpoint, envelopeId) => {
33
+ var _a, _b;
34
+ if (!envelopeId) {
35
+ console.log(`[ENVELOPES] Missing required envelope ID`);
36
+ return;
37
+ }
38
+ if (((_a = state.envelope) === null || _a === void 0 ? void 0 : _a.id) === envelopeId) {
39
+ console.log(`[ENVELOPES] Skipping load for already-loaded envelope ID`);
40
+ return;
41
+ }
42
+ state.error = '';
43
+ state.loading = true;
44
+ state.envelope = null;
45
+ try {
46
+ console.log(`[ENVELOPES] Loading envelope ${envelopeId}`);
47
+ const envelope = await getEnvelope(endpoint, envelopeId, true);
48
+ if (!envelope) {
49
+ console.log('[ENVELOPES] Unable to load envelope');
50
+ return;
51
+ }
52
+ state.envelope = envelope;
53
+ const template = await getTemplate(endpoint, envelope.template_id, true);
54
+ if (!envelope) {
55
+ console.log('[ENVELOPES] Unable to load template');
56
+ return;
57
+ }
58
+ state.template = template;
59
+ state.loading = false;
60
+ }
61
+ catch (e) {
62
+ state.loading = false;
63
+ 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;
64
+ console.log('[ENVELOPES] Error loading envelope', e);
65
+ throw e;
66
+ }
67
+ };
68
+
69
+ export { getEnvelopeById as g, state as s };
@@ -0,0 +1,111 @@
1
+ import { d as decodeAccessTokenBody } from './Token.js';
2
+
3
+ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ var __generator = (undefined && undefined.__generator) || function (thisArg, body) {
13
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
14
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
15
+ function verb(n) { return function (v) { return step([n, v]); }; }
16
+ function step(op) {
17
+ if (f) throw new TypeError("Generator is already executing.");
18
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
19
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
20
+ if (y = 0, t) op = [op[0] & 2, t.value];
21
+ switch (op[0]) {
22
+ case 0: case 1: t = op; break;
23
+ case 4: _.label++; return { value: op[1], done: false };
24
+ case 5: _.label++; y = op[1]; op = [0]; continue;
25
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
26
+ default:
27
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
28
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
29
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
30
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
31
+ if (t[2]) _.ops.pop();
32
+ _.trys.pop(); continue;
33
+ }
34
+ op = body.call(thisArg, _);
35
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
36
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
37
+ }
38
+ };
39
+ /**
40
+ * Get a signing session for an Envelope.
41
+ */
42
+ var getSigningSession = function (endpoint, params) { return __awaiter(void 0, void 0, void 0, function () {
43
+ return __generator(this, function (_a) {
44
+ return [2 /*return*/, endpoint.api //
45
+ .get("/envelopes/".concat(params.envelopeId, "/recipients/").concat(encodeURIComponent(params.roleId), "/invitation/").concat(params.inviteCode))
46
+ .then(function (r) {
47
+ var _a;
48
+ // Avoiding a jsonwebtoken dependency here - we don't actually need the whole library
49
+ var signerToken = ((_a = r.headers) === null || _a === void 0 ? void 0 : _a.signer_token) || '';
50
+ var session = decodeAccessTokenBody(signerToken);
51
+ endpoint.setToken(signerToken);
52
+ return { recipient: r.data, session: session, signerToken: signerToken };
53
+ })];
54
+ });
55
+ }); };
56
+ /**
57
+ * Get all metadata for an Envelope.
58
+ */
59
+ var getEnvelope = function (endpoint, envelopeId, ssr) { return __awaiter(void 0, void 0, void 0, function () {
60
+ return __generator(this, function (_a) {
61
+ return [2 /*return*/, endpoint.api //
62
+ .get("/envelopes/".concat(envelopeId) + (ssr ? '?ssr=true' : ''))
63
+ .then(function (r) { return r.data; })];
64
+ });
65
+ }); };
66
+ /**
67
+ * Get (binary download) a file attached to an Envelope. It is important to use this method
68
+ * rather than a direct A HREF or similar link to set the authorization headers for the
69
+ * request.
70
+ */
71
+ var getEnvelopeFile = function (endpoint, envelopeId, documentId) { return __awaiter(void 0, void 0, void 0, function () {
72
+ return __generator(this, function (_a) {
73
+ return [2 /*return*/, endpoint.api //
74
+ .get("/envelopes/".concat(envelopeId, "/envelope_documents/").concat(documentId, "?file=true"), { responseType: 'blob' })
75
+ .then(function (r) { return r.data; })];
76
+ });
77
+ }); };
78
+ /**
79
+ * Update a Document field. Typically called during the signing process as a Recipient fills in fields.
80
+ */
81
+ var updateEnvelopeField = function (endpoint, envelopeId, fieldName, value) { return __awaiter(void 0, void 0, void 0, function () {
82
+ return __generator(this, function (_a) {
83
+ return [2 /*return*/, endpoint.api //
84
+ .put("/envelopes/".concat(envelopeId, "/fields/").concat(fieldName), value)
85
+ .then(function (r) { return r.data; })];
86
+ });
87
+ }); };
88
+ /**
89
+ * Update a Document signature field. Signature fields are ID-driven. Call `Document.createSignature()` first to create a
90
+ * signature for a Recipient, then call `Documents.updateDocumentFieldSignature()` to attach it to a field.
91
+ */
92
+ var updateEnvelopeFieldSignature = function (endpoint, envelopeId, fieldName, signatureId) { return __awaiter(void 0, void 0, void 0, function () {
93
+ return __generator(this, function (_a) {
94
+ return [2 /*return*/, endpoint.api //
95
+ .put("/envelopes/".concat(envelopeId, "/fields/").concat(fieldName, "/signature/").concat(signatureId))
96
+ .then(function (r) { return r.data; })];
97
+ });
98
+ }); };
99
+ /**
100
+ * Update a Document signature field. Signature fields are ID-driven. Call `Document.createSignature()` first to create a
101
+ * signature for a Recipient, then call `Documents.updateDocumentFieldSignature()` to attach it to a field.
102
+ */
103
+ var updateEnvelopeFieldInitials = function (endpoint, envelopeId, fieldName, initialId) { return __awaiter(void 0, void 0, void 0, function () {
104
+ return __generator(this, function (_a) {
105
+ return [2 /*return*/, endpoint.api //
106
+ .put("/envelopes/".concat(envelopeId, "/fields/").concat(fieldName, "/initial/").concat(initialId))
107
+ .then(function (r) { return r.data; })];
108
+ });
109
+ }); };
110
+
111
+ export { updateEnvelopeFieldSignature as a, updateEnvelopeFieldInitials as b, getEnvelopeFile as c, getEnvelope as d, getSigningSession as g, updateEnvelopeField as u };