@verdocs/web-sdk 4.2.158 → 5.0.1

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 (491) hide show
  1. package/dist/cjs/Datastore-b1742da2.js +1783 -0
  2. package/dist/cjs/{index-2589e4d1.js → index-ccac8641.js} +11 -27
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/{utils-6d673ca1.js → utils-ba1e95e0.js} +3 -2
  5. package/dist/cjs/verdocs-auth.cjs.entry.js +1 -1
  6. package/dist/cjs/verdocs-build.cjs.entry.js +22 -13
  7. package/dist/cjs/verdocs-button-panel_2.cjs.entry.js +1 -1
  8. package/dist/cjs/{verdocs-button_3.cjs.entry.js → verdocs-button_2.cjs.entry.js} +1 -56
  9. package/dist/cjs/{verdocs-checkbox_4.cjs.entry.js → verdocs-checkbox_6.cjs.entry.js} +115 -24
  10. package/dist/cjs/verdocs-contact-picker_2.cjs.entry.js +2 -2
  11. package/dist/cjs/verdocs-dialog.cjs.entry.js +1 -1
  12. package/dist/cjs/verdocs-dropdown.cjs.entry.js +1 -1
  13. package/dist/cjs/verdocs-envelope-document-page.cjs.entry.js +2 -2
  14. package/dist/cjs/verdocs-envelope-recipient-link_2.cjs.entry.js +30 -15
  15. package/dist/cjs/verdocs-envelope-recipient-summary.cjs.entry.js +32 -17
  16. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +64 -45
  17. package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +2 -2
  18. package/dist/cjs/verdocs-field-attachment_13.cjs.entry.js +104 -155
  19. package/dist/cjs/verdocs-field-payment.cjs.entry.js +38 -25
  20. package/dist/cjs/verdocs-file-chooser_2.cjs.entry.js +1 -1
  21. package/dist/cjs/verdocs-kba-dialog_2.cjs.entry.js +27 -5
  22. package/dist/cjs/verdocs-ok-dialog.cjs.entry.js +1 -1
  23. package/dist/cjs/verdocs-organization-card_2.cjs.entry.js +1 -1
  24. package/dist/cjs/verdocs-pagination_2.cjs.entry.js +2 -2
  25. package/dist/cjs/{verdocs-preview_9.cjs.entry.js → verdocs-preview_6.cjs.entry.js} +252 -469
  26. package/dist/cjs/verdocs-quick-functions.cjs.entry.js +1 -1
  27. package/dist/cjs/verdocs-radio-button.cjs.entry.js +1 -1
  28. package/dist/cjs/verdocs-search-box.cjs.entry.js +1 -1
  29. package/dist/cjs/verdocs-search-tabs.cjs.entry.js +1 -1
  30. package/dist/cjs/verdocs-sign.cjs.entry.js +11 -12
  31. package/dist/cjs/verdocs-spinner.cjs.entry.js +1 -1
  32. package/dist/cjs/verdocs-status-indicator.cjs.entry.js +1 -1
  33. package/dist/cjs/verdocs-table.cjs.entry.js +1 -1
  34. package/dist/cjs/verdocs-template-card.cjs.entry.js +1 -1
  35. package/dist/cjs/verdocs-template-create.cjs.entry.js +108 -0
  36. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +78 -63
  37. package/dist/cjs/verdocs-template-role-properties.cjs.entry.js +58 -37
  38. package/dist/cjs/verdocs-template-star.cjs.entry.js +2 -2
  39. package/dist/cjs/verdocs-template-tags.cjs.entry.js +2 -2
  40. package/dist/cjs/verdocs-templates-list.cjs.entry.js +1 -1
  41. package/dist/cjs/verdocs-toggle.cjs.entry.js +1 -1
  42. package/dist/cjs/verdocs-web-sdk.cjs.js +3 -3
  43. package/dist/collection/collection-manifest.json +2 -4
  44. package/dist/collection/components/controls/verdocs-text-input/verdocs-text-input.js +5 -21
  45. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +27 -40
  46. package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.js +27 -28
  47. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js +45 -44
  48. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +12 -11
  49. package/dist/collection/components/embeds/verdocs-view/verdocs-view.js +28 -28
  50. package/dist/collection/components/envelopes/verdocs-envelope-recipient-link/verdocs-envelope-recipient-link.js +34 -15
  51. package/dist/collection/components/envelopes/verdocs-envelope-recipient-summary/verdocs-envelope-recipient-summary.js +35 -17
  52. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.js +67 -45
  53. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +29 -18
  54. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +30 -20
  55. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +30 -22
  56. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +29 -17
  57. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +30 -18
  58. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +192 -139
  59. package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.js +30 -20
  60. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +30 -18
  61. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +31 -19
  62. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.css +31 -0
  63. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +44 -44
  64. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +29 -17
  65. package/dist/collection/components/templates/verdocs-template-attachments/verdocs-template-attachments.js +37 -17
  66. package/dist/collection/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.js +37 -32
  67. package/dist/collection/components/templates/verdocs-template-create/verdocs-template-create.js +7 -15
  68. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.css +6 -0
  69. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.js +79 -61
  70. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +48 -24
  71. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +63 -61
  72. package/dist/collection/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.js +61 -36
  73. package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.js +63 -46
  74. package/dist/collection/components/templates/verdocs-template-star/verdocs-template-star.js +1 -1
  75. package/dist/collection/components/templates/verdocs-template-tags/verdocs-template-tags.js +1 -1
  76. package/dist/collection/utils/Datastore.js +141 -0
  77. package/dist/collection/utils/Templates.js +2 -0
  78. package/dist/collection/utils/utils.js +3 -2
  79. package/dist/components/index.js +1 -5
  80. package/dist/components/{p-3044c9cb.js → p-070bebd7.js} +1 -1
  81. package/dist/components/{p-1b60debe.js → p-0a69031f.js} +29 -28
  82. package/dist/components/{p-69881420.js → p-0ca7012b.js} +1 -1
  83. package/dist/components/{p-b2bf338f.js → p-0d063bf9.js} +65 -35
  84. package/dist/components/{p-ac7578f6.js → p-0e332769.js} +1 -1
  85. package/dist/components/{p-a655b737.js → p-15d530b8.js} +6 -6
  86. package/dist/components/{p-71dd305b.js → p-18999830.js} +2 -2
  87. package/dist/components/{p-90540412.js → p-1ae5d7e0.js} +1 -1
  88. package/dist/components/{p-8f942993.js → p-1ca705bc.js} +31 -30
  89. package/dist/components/{p-4d2f2954.js → p-1e2e8b1c.js} +1 -1
  90. package/dist/components/{p-c7a21595.js → p-1e67ebdf.js} +67 -42
  91. package/dist/components/{p-fe2dca8c.js → p-22da6d14.js} +2 -2
  92. package/dist/components/{p-945d225a.js → p-22e52874.js} +90 -88
  93. package/dist/components/{p-85ef4d07.js → p-2548f3f0.js} +49 -38
  94. package/dist/components/{p-263dc67d.js → p-315d6592.js} +1 -1
  95. package/dist/components/{p-4dc4418a.js → p-3201d529.js} +1 -1
  96. package/dist/components/{p-7786799a.js → p-324ed895.js} +8 -4
  97. package/dist/components/{p-b679d760.js → p-49153610.js} +32 -31
  98. package/dist/components/{p-03660739.js → p-4afcdc84.js} +30 -31
  99. package/dist/components/{p-b0af9b72.js → p-4bc5ac82.js} +3 -2
  100. package/dist/components/{p-ffe8b41d.js → p-4dd750e9.js} +1 -1
  101. package/dist/components/{p-82fb3284.js → p-58c2bd5d.js} +1 -1
  102. package/dist/components/{p-d3170dcd.js → p-5a9cea40.js} +4 -4
  103. package/dist/components/{p-8b27ce22.js → p-5d4bbcd0.js} +1 -1
  104. package/dist/components/{p-1e66385b.js → p-5d82a9f3.js} +64 -57
  105. package/dist/components/{p-877eaf65.js → p-5eb45a4f.js} +1 -1
  106. package/dist/components/{p-62f8b36c.js → p-6400f542.js} +36 -14
  107. package/dist/components/{p-e4ac6259.js → p-6fcd99d1.js} +2 -2
  108. package/dist/components/{p-921297ba.js → p-84ae0283.js} +1 -1
  109. package/dist/components/{p-7927a846.js → p-8d3c0b4c.js} +2 -2
  110. package/dist/components/{p-83a2fa2f.js → p-8fbc64e9.js} +72 -55
  111. package/dist/components/{p-0e64ccc3.js → p-9bb47a5a.js} +1 -1
  112. package/dist/components/{p-12594438.js → p-9c3fd545.js} +31 -31
  113. package/dist/components/{p-fe533b11.js → p-a22a3b1b.js} +125 -101
  114. package/dist/components/{p-df4ac086.js → p-a3e12c74.js} +2 -2
  115. package/dist/components/{p-6e8c00bc.js → p-b0c02eb8.js} +31 -30
  116. package/dist/components/{p-6b369b14.js → p-b16c202a.js} +1 -1
  117. package/dist/components/{p-3518350d.js → p-b9034018.js} +4 -4
  118. package/dist/components/{p-c7db1c7d.js → p-c25e82b9.js} +52 -53
  119. package/dist/components/{p-4535a9fd.js → p-c7b00ce6.js} +36 -17
  120. package/dist/components/{p-e4a852b5.js → p-c8fedb4e.js} +7 -6
  121. package/dist/components/{p-83245875.js → p-cf6ea837.js} +2 -2
  122. package/dist/components/{p-b8cd75c0.js → p-d9704a51.js} +55 -45
  123. package/dist/components/p-da4d4eed.js +1781 -0
  124. package/dist/components/{p-cdf871dd.js → p-dd701894.js} +29 -28
  125. package/dist/components/p-ea5954bd.js +4 -0
  126. package/dist/components/{p-42a676b7.js → p-ec894daf.js} +2 -2
  127. package/dist/components/{p-72e959a7.js → p-ecc818bb.js} +30 -31
  128. package/dist/components/{p-ed9a1a21.js → p-ed88b8d2.js} +44 -24
  129. package/dist/components/{p-556596e4.js → p-f72b9c45.js} +1 -1
  130. package/dist/components/{p-a7bbe96b.js → p-f990140a.js} +3 -3
  131. package/dist/components/{p-db4a15fd.js → p-fcad60f5.js} +1 -1
  132. package/dist/components/{p-0162bdd3.js → p-fd96322b.js} +30 -33
  133. package/dist/components/verdocs-auth.js +4 -4
  134. package/dist/components/verdocs-build.js +99 -103
  135. package/dist/components/verdocs-button-panel.js +1 -1
  136. package/dist/components/verdocs-button.js +1 -1
  137. package/dist/components/verdocs-checkbox.js +1 -1
  138. package/dist/components/verdocs-component-error.js +1 -1
  139. package/dist/components/verdocs-contact-picker.js +1 -1
  140. package/dist/components/verdocs-dialog.js +1 -1
  141. package/dist/components/verdocs-dropdown.js +1 -1
  142. package/dist/components/verdocs-envelope-document-page.js +1 -1
  143. package/dist/components/verdocs-envelope-recipient-link.js +1 -1
  144. package/dist/components/verdocs-envelope-recipient-summary.js +37 -19
  145. package/dist/components/verdocs-envelope-sidebar.js +76 -54
  146. package/dist/components/verdocs-envelopes-list.js +12 -12
  147. package/dist/components/verdocs-field-attachment.js +1 -1
  148. package/dist/components/verdocs-field-checkbox.js +1 -1
  149. package/dist/components/verdocs-field-date.js +1 -1
  150. package/dist/components/verdocs-field-dropdown.js +1 -1
  151. package/dist/components/verdocs-field-initial.js +1 -1
  152. package/dist/components/verdocs-field-payment.js +106 -33
  153. package/dist/components/verdocs-field-radio.js +1 -1
  154. package/dist/components/verdocs-field-signature.js +1 -1
  155. package/dist/components/verdocs-field-textarea.js +1 -1
  156. package/dist/components/verdocs-field-textbox.js +1 -1
  157. package/dist/components/verdocs-field-timestamp.js +1 -1
  158. package/dist/components/verdocs-file-chooser.js +1 -1
  159. package/dist/components/verdocs-help-icon.js +1 -1
  160. package/dist/components/verdocs-initial-dialog.js +1 -1
  161. package/dist/components/verdocs-kba-dialog.js +1 -1
  162. package/dist/components/verdocs-loader.js +1 -1
  163. package/dist/components/verdocs-ok-dialog.js +1 -1
  164. package/dist/components/verdocs-organization-card.js +2 -2
  165. package/dist/components/verdocs-pagination.js +1 -1
  166. package/dist/components/verdocs-portal.js +1 -1
  167. package/dist/components/verdocs-preview.js +1 -1
  168. package/dist/components/verdocs-progress-bar.js +1 -1
  169. package/dist/components/verdocs-quick-filter.js +1 -1
  170. package/dist/components/verdocs-quick-functions.js +1 -1
  171. package/dist/components/verdocs-radio-button.js +1 -1
  172. package/dist/components/verdocs-search-box.js +1 -1
  173. package/dist/components/verdocs-search-tabs.js +1 -1
  174. package/dist/components/verdocs-select-input.js +1 -1
  175. package/dist/components/verdocs-send.js +1 -1
  176. package/dist/components/verdocs-sign.js +24 -23
  177. package/dist/components/verdocs-signature-dialog.js +1 -1
  178. package/dist/components/verdocs-spinner.js +1 -1
  179. package/dist/components/verdocs-status-indicator.js +1 -1
  180. package/dist/components/verdocs-switch.js +1 -1
  181. package/dist/components/verdocs-table.js +1 -1
  182. package/dist/components/verdocs-tabs.js +1 -1
  183. package/dist/components/verdocs-template-attachments.js +1 -1
  184. package/dist/components/verdocs-template-build-tabs.js +1 -1
  185. package/dist/components/verdocs-template-card.js +1 -1
  186. package/dist/components/verdocs-template-create.js +148 -1
  187. package/dist/components/verdocs-template-document-page.js +1 -1
  188. package/dist/components/verdocs-template-field-properties.js +1 -1
  189. package/dist/components/verdocs-template-fields.js +1 -1
  190. package/dist/components/verdocs-template-role-properties.js +1 -1
  191. package/dist/components/verdocs-template-roles.js +1 -1
  192. package/dist/components/verdocs-template-star.js +1 -1
  193. package/dist/components/verdocs-template-tags.js +2 -2
  194. package/dist/components/verdocs-templates-list.js +11 -11
  195. package/dist/components/verdocs-text-input.js +1 -1
  196. package/dist/components/verdocs-toggle-button.js +1 -1
  197. package/dist/components/verdocs-toggle.js +1 -1
  198. package/dist/components/verdocs-toolbar-icon.js +1 -1
  199. package/dist/components/verdocs-upload-dialog.js +1 -1
  200. package/dist/components/verdocs-view.js +1 -1
  201. package/dist/esm/Datastore-52fcbac6.js +1781 -0
  202. package/dist/esm/{index-c8587076.js → index-272d51a4.js} +12 -26
  203. package/dist/esm/loader.js +3 -3
  204. package/dist/esm/{utils-27fa12eb.js → utils-47de6f79.js} +3 -2
  205. package/dist/esm/verdocs-auth.entry.js +1 -1
  206. package/dist/esm/verdocs-build.entry.js +23 -14
  207. package/dist/esm/verdocs-button-panel_2.entry.js +1 -1
  208. package/dist/esm/{verdocs-button_3.entry.js → verdocs-button_2.entry.js} +2 -56
  209. package/dist/esm/{verdocs-checkbox_4.entry.js → verdocs-checkbox_6.entry.js} +115 -26
  210. package/dist/esm/verdocs-contact-picker_2.entry.js +2 -2
  211. package/dist/esm/verdocs-dialog.entry.js +1 -1
  212. package/dist/esm/verdocs-dropdown.entry.js +1 -1
  213. package/dist/esm/verdocs-envelope-document-page.entry.js +2 -2
  214. package/dist/esm/verdocs-envelope-recipient-link_2.entry.js +31 -16
  215. package/dist/esm/verdocs-envelope-recipient-summary.entry.js +33 -18
  216. package/dist/esm/verdocs-envelope-sidebar.entry.js +65 -46
  217. package/dist/esm/verdocs-envelopes-list.entry.js +2 -2
  218. package/dist/esm/verdocs-field-attachment_13.entry.js +104 -155
  219. package/dist/esm/verdocs-field-payment.entry.js +38 -25
  220. package/dist/esm/verdocs-file-chooser_2.entry.js +1 -1
  221. package/dist/esm/verdocs-kba-dialog_2.entry.js +27 -5
  222. package/dist/esm/verdocs-ok-dialog.entry.js +1 -1
  223. package/dist/esm/verdocs-organization-card_2.entry.js +1 -1
  224. package/dist/esm/verdocs-pagination_2.entry.js +2 -2
  225. package/dist/esm/{verdocs-preview_9.entry.js → verdocs-preview_6.entry.js} +256 -470
  226. package/dist/esm/verdocs-quick-functions.entry.js +1 -1
  227. package/dist/esm/verdocs-radio-button.entry.js +1 -1
  228. package/dist/esm/verdocs-search-box.entry.js +1 -1
  229. package/dist/esm/verdocs-search-tabs.entry.js +1 -1
  230. package/dist/esm/verdocs-sign.entry.js +11 -12
  231. package/dist/esm/verdocs-spinner.entry.js +1 -1
  232. package/dist/esm/verdocs-status-indicator.entry.js +1 -1
  233. package/dist/esm/verdocs-table.entry.js +1 -1
  234. package/dist/esm/verdocs-template-card.entry.js +1 -1
  235. package/dist/{components/p-f9cc62a7.js → esm/verdocs-template-create.entry.js} +15 -69
  236. package/dist/esm/verdocs-template-document-page_2.entry.js +79 -64
  237. package/dist/esm/verdocs-template-role-properties.entry.js +59 -38
  238. package/dist/esm/verdocs-template-star.entry.js +2 -2
  239. package/dist/esm/verdocs-template-tags.entry.js +2 -2
  240. package/dist/esm/verdocs-templates-list.entry.js +1 -1
  241. package/dist/esm/verdocs-toggle.entry.js +1 -1
  242. package/dist/esm/verdocs-web-sdk.js +4 -4
  243. package/dist/esm-es5/Datastore-52fcbac6.js +1 -0
  244. package/dist/esm-es5/index-272d51a4.js +1 -0
  245. package/dist/esm-es5/loader.js +1 -1
  246. package/dist/esm-es5/{utils-27fa12eb.js → utils-47de6f79.js} +1 -1
  247. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  248. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  249. package/dist/esm-es5/verdocs-button-panel_2.entry.js +1 -1
  250. package/dist/esm-es5/verdocs-button_2.entry.js +1 -0
  251. package/dist/esm-es5/verdocs-checkbox_6.entry.js +1 -0
  252. package/dist/esm-es5/verdocs-contact-picker_2.entry.js +1 -1
  253. package/dist/esm-es5/verdocs-dialog.entry.js +1 -1
  254. package/dist/esm-es5/verdocs-dropdown.entry.js +1 -1
  255. package/dist/esm-es5/verdocs-envelope-document-page.entry.js +1 -1
  256. package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js +1 -1
  257. package/dist/esm-es5/verdocs-envelope-recipient-summary.entry.js +1 -1
  258. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  259. package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
  260. package/dist/esm-es5/verdocs-field-attachment_13.entry.js +1 -1
  261. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  262. package/dist/esm-es5/verdocs-file-chooser_2.entry.js +1 -1
  263. package/dist/esm-es5/verdocs-kba-dialog_2.entry.js +1 -1
  264. package/dist/esm-es5/verdocs-ok-dialog.entry.js +1 -1
  265. package/dist/esm-es5/verdocs-organization-card_2.entry.js +1 -1
  266. package/dist/esm-es5/verdocs-pagination_2.entry.js +1 -1
  267. package/dist/esm-es5/verdocs-preview_6.entry.js +1 -0
  268. package/dist/esm-es5/verdocs-quick-functions.entry.js +1 -1
  269. package/dist/esm-es5/verdocs-radio-button.entry.js +1 -1
  270. package/dist/esm-es5/verdocs-search-box.entry.js +1 -1
  271. package/dist/esm-es5/verdocs-search-tabs.entry.js +1 -1
  272. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  273. package/dist/esm-es5/verdocs-spinner.entry.js +1 -1
  274. package/dist/esm-es5/verdocs-status-indicator.entry.js +1 -1
  275. package/dist/esm-es5/verdocs-table.entry.js +1 -1
  276. package/dist/esm-es5/verdocs-template-card.entry.js +1 -1
  277. package/dist/esm-es5/verdocs-template-create.entry.js +1 -0
  278. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  279. package/dist/esm-es5/verdocs-template-role-properties.entry.js +1 -1
  280. package/dist/esm-es5/verdocs-template-star.entry.js +1 -1
  281. package/dist/esm-es5/verdocs-template-tags.entry.js +1 -1
  282. package/dist/esm-es5/verdocs-templates-list.entry.js +1 -1
  283. package/dist/esm-es5/verdocs-toggle.entry.js +1 -1
  284. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  285. package/dist/types/components/controls/verdocs-text-input/verdocs-text-input.d.ts +0 -2
  286. package/dist/types/components/embeds/verdocs-build/verdocs-build.d.ts +8 -32
  287. package/dist/types/components/embeds/verdocs-preview/verdocs-preview.d.ts +6 -8
  288. package/dist/types/components/embeds/verdocs-send/verdocs-send.d.ts +7 -6
  289. package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +3 -3
  290. package/dist/types/components/embeds/verdocs-view/verdocs-view.d.ts +6 -5
  291. package/dist/types/components/envelopes/verdocs-envelope-recipient-link/verdocs-envelope-recipient-link.d.ts +6 -3
  292. package/dist/types/components/envelopes/verdocs-envelope-recipient-summary/verdocs-envelope-recipient-summary.d.ts +6 -3
  293. package/dist/types/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.d.ts +8 -4
  294. package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +6 -7
  295. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +6 -7
  296. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +6 -7
  297. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +6 -7
  298. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +6 -7
  299. package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +44 -30
  300. package/dist/types/components/fields/verdocs-field-radio/verdocs-field-radio.d.ts +6 -7
  301. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +6 -7
  302. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +6 -7
  303. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +5 -12
  304. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +6 -7
  305. package/dist/types/components/templates/verdocs-template-attachments/verdocs-template-attachments.d.ts +6 -2
  306. package/dist/types/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.d.ts +7 -4
  307. package/dist/types/components/templates/verdocs-template-document-page/verdocs-template-document-page.d.ts +7 -4
  308. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.d.ts +7 -8
  309. package/dist/types/components/templates/verdocs-template-fields/verdocs-template-fields.d.ts +6 -8
  310. package/dist/types/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.d.ts +7 -7
  311. package/dist/types/components/templates/verdocs-template-roles/verdocs-template-roles.d.ts +7 -6
  312. package/dist/types/components.d.ts +176 -330
  313. package/dist/types/utils/Datastore.d.ts +24 -0
  314. package/dist/types/utils/Templates.d.ts +3 -0
  315. package/dist/types/utils/utils.d.ts +1 -1
  316. package/dist/verdocs-web-sdk/{p-98c5f5a5.entry.js → p-0ca1e87c.entry.js} +1 -1
  317. package/dist/verdocs-web-sdk/p-0e9de098.entry.js +1 -0
  318. package/dist/verdocs-web-sdk/{p-fc053d00.entry.js → p-167e3d7e.entry.js} +1 -1
  319. package/dist/verdocs-web-sdk/{p-7bd37bca.entry.js → p-2a1287ec.entry.js} +1 -1
  320. package/dist/verdocs-web-sdk/{p-6419b913.system.js → p-2be751c4.system.js} +1 -1
  321. package/dist/verdocs-web-sdk/{p-cb30f11e.entry.js → p-2f73c9de.entry.js} +1 -1
  322. package/dist/verdocs-web-sdk/p-3364cc13.system.entry.js +1 -0
  323. package/dist/verdocs-web-sdk/{p-196bc80f.system.entry.js → p-37d747fb.system.entry.js} +1 -1
  324. package/dist/verdocs-web-sdk/p-386d789c.system.entry.js +1 -0
  325. package/dist/verdocs-web-sdk/p-3a1fa556.system.entry.js +1 -0
  326. package/dist/verdocs-web-sdk/{p-0fd57194.entry.js → p-41cbf650.entry.js} +1 -1
  327. package/dist/verdocs-web-sdk/{p-26715b8b.entry.js → p-4b36ca30.entry.js} +1 -1
  328. package/dist/verdocs-web-sdk/{p-98501408.system.entry.js → p-4e9e154f.system.entry.js} +1 -1
  329. package/dist/verdocs-web-sdk/{p-a3778013.system.entry.js → p-511a4ecc.system.entry.js} +1 -1
  330. package/dist/verdocs-web-sdk/{p-65a4e01e.entry.js → p-524f37a0.entry.js} +1 -1
  331. package/dist/verdocs-web-sdk/{p-13fe8650.system.entry.js → p-53f4c7c3.system.entry.js} +1 -1
  332. package/dist/verdocs-web-sdk/p-54f085d1.entry.js +1 -0
  333. package/dist/verdocs-web-sdk/{p-cca517dc.entry.js → p-584113d1.entry.js} +1 -1
  334. package/dist/verdocs-web-sdk/{p-f8cad58e.entry.js → p-5f1a000c.entry.js} +1 -1
  335. package/dist/verdocs-web-sdk/{p-256f07fd.system.entry.js → p-62f15675.system.entry.js} +1 -1
  336. package/dist/verdocs-web-sdk/{p-9b921211.js → p-650697bd.js} +1 -1
  337. package/dist/verdocs-web-sdk/{p-c06d2604.entry.js → p-65c5398e.entry.js} +1 -1
  338. package/dist/verdocs-web-sdk/{p-0446030b.entry.js → p-6ced37ed.entry.js} +1 -1
  339. package/dist/verdocs-web-sdk/{p-16619383.entry.js → p-7464b84f.entry.js} +1 -1
  340. package/dist/verdocs-web-sdk/{p-6e3fa0c4.system.entry.js → p-761f6656.system.entry.js} +1 -1
  341. package/dist/verdocs-web-sdk/{p-30bc5986.entry.js → p-76cc40fe.entry.js} +1 -1
  342. package/dist/verdocs-web-sdk/{p-c45dc777.entry.js → p-771c2f92.entry.js} +1 -1
  343. package/dist/verdocs-web-sdk/p-78191329.system.entry.js +1 -0
  344. package/dist/verdocs-web-sdk/{p-f3c995d8.system.entry.js → p-7c8938e7.system.entry.js} +1 -1
  345. package/dist/verdocs-web-sdk/{p-1ce2f724.system.entry.js → p-80ce3711.system.entry.js} +1 -1
  346. package/dist/verdocs-web-sdk/p-81c8663f.entry.js +1 -0
  347. package/dist/verdocs-web-sdk/p-8221a48f.entry.js +1 -0
  348. package/dist/verdocs-web-sdk/p-860b9f94.system.entry.js +1 -0
  349. package/dist/verdocs-web-sdk/p-89cdecac.system.entry.js +1 -0
  350. package/dist/verdocs-web-sdk/p-8a2ff048.entry.js +1 -0
  351. package/dist/verdocs-web-sdk/p-8c03fc69.entry.js +1 -0
  352. package/dist/verdocs-web-sdk/p-8d401072.system.entry.js +1 -0
  353. package/dist/verdocs-web-sdk/{p-921b56fd.system.entry.js → p-914e131c.system.entry.js} +1 -1
  354. package/dist/verdocs-web-sdk/{p-5737f0ae.system.js → p-9186f42e.system.js} +1 -1
  355. package/dist/verdocs-web-sdk/{p-8e233a6b.system.entry.js → p-9227d400.system.entry.js} +1 -1
  356. package/dist/verdocs-web-sdk/p-92ce6180.entry.js +1 -0
  357. package/dist/verdocs-web-sdk/p-9567cb7d.system.entry.js +1 -0
  358. package/dist/verdocs-web-sdk/p-97b00cae.system.entry.js +1 -0
  359. package/dist/verdocs-web-sdk/{p-4b4801ad.system.entry.js → p-982f1b36.system.entry.js} +1 -1
  360. package/dist/verdocs-web-sdk/{p-1b6736fe.system.entry.js → p-9d0b0e36.system.entry.js} +1 -1
  361. package/dist/verdocs-web-sdk/{p-6d1d86ff.system.entry.js → p-a08886c1.system.entry.js} +1 -1
  362. package/dist/verdocs-web-sdk/{p-e25e1dcf.entry.js → p-a165607e.entry.js} +1 -1
  363. package/dist/verdocs-web-sdk/p-a242aa80.system.entry.js +1 -0
  364. package/dist/verdocs-web-sdk/{p-5d6a2fda.system.entry.js → p-a9635106.system.entry.js} +1 -1
  365. package/dist/verdocs-web-sdk/p-aebb0cd9.system.entry.js +1 -0
  366. package/dist/verdocs-web-sdk/p-b0b958a0.entry.js +1 -0
  367. package/dist/verdocs-web-sdk/p-b8737f7b.entry.js +1 -0
  368. package/dist/verdocs-web-sdk/{p-49988769.js → p-b9654a5e.js} +2 -2
  369. package/dist/verdocs-web-sdk/p-bb0effe1.entry.js +1 -0
  370. package/dist/verdocs-web-sdk/p-bcc23811.entry.js +1 -0
  371. package/dist/verdocs-web-sdk/{p-0c3a471b.entry.js → p-bd7406ae.entry.js} +1 -1
  372. package/dist/verdocs-web-sdk/{p-e8d91957.entry.js → p-bdd7b3d3.entry.js} +1 -1
  373. package/dist/verdocs-web-sdk/{p-c5818330.entry.js → p-c1728f5c.entry.js} +1 -1
  374. package/dist/verdocs-web-sdk/p-c18c718f.system.js +1 -0
  375. package/dist/verdocs-web-sdk/{p-731066de.system.entry.js → p-c6fd3e53.system.entry.js} +1 -1
  376. package/dist/verdocs-web-sdk/p-c7cd6843.entry.js +1 -0
  377. package/dist/verdocs-web-sdk/{p-4f7c72f9.system.entry.js → p-c9f40726.system.entry.js} +1 -1
  378. package/dist/verdocs-web-sdk/p-ca712f40.system.entry.js +1 -0
  379. package/dist/verdocs-web-sdk/p-cbb75c5e.system.entry.js +1 -0
  380. package/dist/verdocs-web-sdk/{p-751b0280.entry.js → p-d475fff3.entry.js} +1 -1
  381. package/dist/verdocs-web-sdk/{p-91c4298b.system.entry.js → p-d5870e33.system.entry.js} +1 -1
  382. package/dist/verdocs-web-sdk/{p-e5126f26.system.entry.js → p-d8dae4e9.system.entry.js} +1 -1
  383. package/dist/verdocs-web-sdk/{p-93093a7a.system.entry.js → p-d98cbd0f.system.entry.js} +1 -1
  384. package/dist/verdocs-web-sdk/p-da4d4eed.js +1 -0
  385. package/dist/verdocs-web-sdk/{p-2298c22e.entry.js → p-ddb17b3e.entry.js} +1 -1
  386. package/dist/verdocs-web-sdk/p-df04f0ca.entry.js +1 -0
  387. package/dist/verdocs-web-sdk/{p-9ff1be63.entry.js → p-df392ef9.entry.js} +1 -1
  388. package/dist/verdocs-web-sdk/p-e2b70dfb.system.js +1 -0
  389. package/dist/verdocs-web-sdk/{p-2aea0c7b.system.entry.js → p-e438bd02.system.entry.js} +1 -1
  390. package/dist/verdocs-web-sdk/{p-0c42cb22.system.entry.js → p-e5d291f3.system.entry.js} +1 -1
  391. package/dist/verdocs-web-sdk/{p-7f1e0c5e.entry.js → p-e6dbb0f7.entry.js} +1 -1
  392. package/dist/verdocs-web-sdk/{p-c4d61c66.entry.js → p-e83cd333.entry.js} +1 -1
  393. package/dist/verdocs-web-sdk/p-edfb1951.system.entry.js +1 -0
  394. package/dist/verdocs-web-sdk/p-f4fcf7a5.entry.js +1 -0
  395. package/dist/verdocs-web-sdk/{p-97b951e6.system.entry.js → p-f5d01982.system.entry.js} +1 -1
  396. package/dist/verdocs-web-sdk/{p-6e55af26.system.entry.js → p-f9b37af2.system.entry.js} +1 -1
  397. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  398. package/dist/verdocs-web-sdk/verdocs-web-sdk.js +1 -1
  399. package/package.json +3 -3
  400. package/dist/cjs/EnvelopeStore-f1cd9bd3.js +0 -96
  401. package/dist/cjs/TemplateFieldStore-7bcc0f7a.js +0 -44
  402. package/dist/cjs/TemplateRoleStore-e8bb00ec.js +0 -51
  403. package/dist/cjs/TemplateStore-db21be4d.js +0 -99
  404. package/dist/cjs/index-2a189d85.js +0 -3721
  405. package/dist/cjs/index-76d03a35.js +0 -196
  406. package/dist/cjs/verdocs-loader.cjs.entry.js +0 -20
  407. package/dist/collection/components/templates/verdocs-template-name/verdocs-template-name.css +0 -0
  408. package/dist/collection/components/templates/verdocs-template-name/verdocs-template-name.js +0 -196
  409. package/dist/collection/components/templates/verdocs-template-visibillity/verdocs-template-visibility.css +0 -86
  410. package/dist/collection/components/templates/verdocs-template-visibillity/verdocs-template-visibility.js +0 -203
  411. package/dist/collection/utils/EnvelopeStore.js +0 -90
  412. package/dist/collection/utils/TemplateFieldStore.js +0 -36
  413. package/dist/collection/utils/TemplateRoleStore.js +0 -41
  414. package/dist/collection/utils/TemplateStore.js +0 -94
  415. package/dist/components/p-00d39dca.js +0 -39
  416. package/dist/components/p-0933fb2d.js +0 -127
  417. package/dist/components/p-09d28afd.js +0 -97
  418. package/dist/components/p-3555cef1.js +0 -122
  419. package/dist/components/p-474b6663.js +0 -1314
  420. package/dist/components/p-821f2345.js +0 -93
  421. package/dist/components/p-9b5a4f9e.js +0 -44
  422. package/dist/components/p-a706bac9.js +0 -3719
  423. package/dist/components/verdocs-template-name.d.ts +0 -11
  424. package/dist/components/verdocs-template-name.js +0 -6
  425. package/dist/components/verdocs-template-visibility.d.ts +0 -11
  426. package/dist/components/verdocs-template-visibility.js +0 -6
  427. package/dist/esm/EnvelopeStore-4599b7d3.js +0 -93
  428. package/dist/esm/TemplateFieldStore-909147d8.js +0 -39
  429. package/dist/esm/TemplateRoleStore-2fef1fdb.js +0 -44
  430. package/dist/esm/TemplateStore-ace14a8b.js +0 -97
  431. package/dist/esm/index-24d8ae6a.js +0 -194
  432. package/dist/esm/index-7588a071.js +0 -3719
  433. package/dist/esm/verdocs-loader.entry.js +0 -16
  434. package/dist/esm-es5/EnvelopeStore-4599b7d3.js +0 -1
  435. package/dist/esm-es5/TemplateFieldStore-909147d8.js +0 -1
  436. package/dist/esm-es5/TemplateRoleStore-2fef1fdb.js +0 -1
  437. package/dist/esm-es5/TemplateStore-ace14a8b.js +0 -1
  438. package/dist/esm-es5/index-24d8ae6a.js +0 -1
  439. package/dist/esm-es5/index-7588a071.js +0 -1
  440. package/dist/esm-es5/index-c8587076.js +0 -1
  441. package/dist/esm-es5/verdocs-button_3.entry.js +0 -1
  442. package/dist/esm-es5/verdocs-checkbox_4.entry.js +0 -1
  443. package/dist/esm-es5/verdocs-loader.entry.js +0 -1
  444. package/dist/esm-es5/verdocs-preview_9.entry.js +0 -1
  445. package/dist/types/components/templates/verdocs-template-name/verdocs-template-name.d.ts +0 -41
  446. package/dist/types/components/templates/verdocs-template-visibillity/verdocs-template-visibility.d.ts +0 -42
  447. package/dist/types/utils/EnvelopeStore.d.ts +0 -12
  448. package/dist/types/utils/TemplateFieldStore.d.ts +0 -9
  449. package/dist/types/utils/TemplateRoleStore.d.ts +0 -11
  450. package/dist/types/utils/TemplateStore.d.ts +0 -16
  451. package/dist/verdocs-web-sdk/p-0c51c5be.entry.js +0 -1
  452. package/dist/verdocs-web-sdk/p-194f9f4d.entry.js +0 -1
  453. package/dist/verdocs-web-sdk/p-1bb57e5d.entry.js +0 -1
  454. package/dist/verdocs-web-sdk/p-2211234d.system.js +0 -1
  455. package/dist/verdocs-web-sdk/p-2305c1e8.system.entry.js +0 -1
  456. package/dist/verdocs-web-sdk/p-341d540f.system.entry.js +0 -1
  457. package/dist/verdocs-web-sdk/p-368a36ea.system.js +0 -1
  458. package/dist/verdocs-web-sdk/p-36b5d46e.entry.js +0 -1
  459. package/dist/verdocs-web-sdk/p-483f3d7f.entry.js +0 -1
  460. package/dist/verdocs-web-sdk/p-569434fb.system.js +0 -1
  461. package/dist/verdocs-web-sdk/p-56c1ebd6.entry.js +0 -1
  462. package/dist/verdocs-web-sdk/p-5bf2910c.system.entry.js +0 -1
  463. package/dist/verdocs-web-sdk/p-60da2bbe.system.entry.js +0 -1
  464. package/dist/verdocs-web-sdk/p-6fda3817.js +0 -1
  465. package/dist/verdocs-web-sdk/p-79e222f8.entry.js +0 -1
  466. package/dist/verdocs-web-sdk/p-7d18cb23.system.entry.js +0 -1
  467. package/dist/verdocs-web-sdk/p-7d593603.system.js +0 -1
  468. package/dist/verdocs-web-sdk/p-9515e206.system.entry.js +0 -1
  469. package/dist/verdocs-web-sdk/p-9fabdbb1.system.entry.js +0 -1
  470. package/dist/verdocs-web-sdk/p-a04aac80.entry.js +0 -1
  471. package/dist/verdocs-web-sdk/p-a706bac9.js +0 -1
  472. package/dist/verdocs-web-sdk/p-b17843d9.system.js +0 -1
  473. package/dist/verdocs-web-sdk/p-b56793c4.entry.js +0 -1
  474. package/dist/verdocs-web-sdk/p-b7a9f07d.system.entry.js +0 -1
  475. package/dist/verdocs-web-sdk/p-b84d1a25.system.entry.js +0 -1
  476. package/dist/verdocs-web-sdk/p-bb253149.js +0 -1
  477. package/dist/verdocs-web-sdk/p-bd642df2.js +0 -1
  478. package/dist/verdocs-web-sdk/p-c7115b35.system.entry.js +0 -1
  479. package/dist/verdocs-web-sdk/p-cde4c155.js +0 -1
  480. package/dist/verdocs-web-sdk/p-d86c8c1a.entry.js +0 -1
  481. package/dist/verdocs-web-sdk/p-dbddb752.system.entry.js +0 -1
  482. package/dist/verdocs-web-sdk/p-dcd3eb1b.js +0 -1
  483. package/dist/verdocs-web-sdk/p-e123f19c.entry.js +0 -1
  484. package/dist/verdocs-web-sdk/p-e294b6c2.system.entry.js +0 -1
  485. package/dist/verdocs-web-sdk/p-e48b387d.system.entry.js +0 -1
  486. package/dist/verdocs-web-sdk/p-e83a163d.entry.js +0 -1
  487. package/dist/verdocs-web-sdk/p-e952ab89.system.entry.js +0 -1
  488. package/dist/verdocs-web-sdk/p-f08eb8bf.entry.js +0 -1
  489. package/dist/verdocs-web-sdk/p-f5064e0c.system.js +0 -1
  490. package/dist/verdocs-web-sdk/p-f79b8537.system.js +0 -1
  491. package/dist/verdocs-web-sdk/p-fa06e241.entry.js +0 -1
@@ -1,9 +1,7 @@
1
- import { integerSequence, VerdocsEndpoint } from "@verdocs/js-sdk";
1
+ import { getTemplate, integerSequence, VerdocsEndpoint } from "@verdocs/js-sdk";
2
2
  import { Host, h, Fragment } from "@stencil/core";
3
- import { getTemplateFieldStore } from "../../../utils/TemplateFieldStore";
4
- import { getTemplateRoleStore } from "../../../utils/TemplateRoleStore";
5
- import { getTemplateStore } from "../../../utils/TemplateStore";
6
3
  import { SDKError } from "../../../utils/errors";
4
+ import { Store } from "../../../utils/Datastore";
7
5
  /**
8
6
  * Display a template preview experience. This will display the template's attached
9
7
  * documents with signing fields overlaid on each page. Fields will be color-coded
@@ -18,16 +16,31 @@ import { SDKError } from "../../../utils/errors";
18
16
  */
19
17
  export class VerdocsPreview {
20
18
  constructor() {
21
- this.templateStore = null;
22
- this.fieldStore = null;
23
- this.roleStore = null;
19
+ this.templateListenerId = null;
24
20
  this.endpoint = VerdocsEndpoint.getDefault();
25
21
  this.templateId = null;
26
22
  this.loading = true;
23
+ this.template = null;
24
+ }
25
+ disconnectedCallback() {
26
+ this.unlistenToTemplate();
27
+ }
28
+ async listenToTemplate() {
29
+ this.unlistenToTemplate();
30
+ Store.subscribe('templates', this.templateId, () => getTemplate(this.endpoint, this.templateId), false, (template) => {
31
+ this.template = template;
32
+ this.loading = false;
33
+ });
34
+ }
35
+ unlistenToTemplate() {
36
+ if (this.templateListenerId) {
37
+ Store.store.delListener(this.templateListenerId);
38
+ this.templateListenerId = null;
39
+ }
27
40
  }
28
41
  onTemplateIdChanged(newTemplateId) {
29
42
  console.log('[PREVIEW] Template ID changed', newTemplateId);
30
- this.loadTemplate(newTemplateId).catch((e) => console.log('Unknown Error', e));
43
+ this.listenToTemplate();
31
44
  }
32
45
  async componentWillLoad() {
33
46
  var _a, _b, _c;
@@ -41,40 +54,25 @@ export class VerdocsPreview {
41
54
  console.log(`[PREVIEW] Missing required template ID ${this.templateId}`);
42
55
  return;
43
56
  }
44
- return this.loadTemplate(this.templateId);
57
+ this.listenToTemplate();
45
58
  }
46
59
  catch (e) {
47
60
  console.log('[PREVIEW] Error with preview session', e);
48
61
  (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
49
62
  }
50
63
  }
51
- async loadTemplate(templateId) {
52
- if (templateId) {
53
- getTemplateStore(this.endpoint, templateId, false)
54
- .then(ts => {
55
- this.templateStore = ts;
56
- this.fieldStore = getTemplateFieldStore(this.templateId);
57
- this.roleStore = getTemplateRoleStore(this.templateId);
58
- this.loading = false;
59
- })
60
- .catch(e => {
61
- console.log('Unable to load template', e);
62
- throw e;
63
- });
64
- }
65
- }
66
64
  handlePageRendered(_e) {
67
65
  // const pageInfo = e.detail as IDocumentPageInfo;
68
- // const fields = this.templateStore?.state?.fields.filter(field => field.page === pageInfo.pageNumber);
66
+ // const fields = (this.template?.fields || []).filter(field => field.page === pageInfo.pageNumber);
69
67
  // console.log('[PREVIEW] Page rendered', pageInfo, fields);
70
68
  // fields.forEach(field => renderDocumentField(field, pageInfo, {disabled: true, editable: false, draggable: false}));
71
69
  }
72
70
  render() {
73
- var _a, _b;
71
+ var _a;
74
72
  if (this.loading) {
75
73
  return (h(Host, null, h("verdocs-loader", null)));
76
74
  }
77
- return (h(Host, null, (((_b = (_a = this.templateStore) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.documents) || []).map(document => {
75
+ return (h(Host, null, (((_a = this.template) === null || _a === void 0 ? void 0 : _a.documents) || []).map(document => {
78
76
  const pageNumbers = integerSequence(1, document.pages);
79
77
  return (h(Fragment, null, pageNumbers.map(pageNumber => {
80
78
  var _a;
@@ -143,7 +141,8 @@ export class VerdocsPreview {
143
141
  }
144
142
  static get states() {
145
143
  return {
146
- "loading": {}
144
+ "loading": {},
145
+ "template": {}
147
146
  };
148
147
  }
149
148
  static get events() {
@@ -1,9 +1,9 @@
1
1
  import { h, Host } from "@stencil/core";
2
- import { createEnvelope, formatFullName, getOrganizationContacts, getRGBA, isValidEmail, VerdocsEndpoint } from "@verdocs/js-sdk";
3
- import { getRoleIndex, getRoleNames, getTemplateRoleStore } from "../../../utils/TemplateRoleStore";
4
- import { getTemplateStore } from "../../../utils/TemplateStore";
2
+ import { createEnvelope, formatFullName, getTemplate, getOrganizationContacts, getRGBA, isValidEmail, VerdocsEndpoint } from "@verdocs/js-sdk";
3
+ import { getRoleIndex, getRoleNames } from "../../../utils/Templates";
5
4
  import { VerdocsToast } from "../../../utils/Toast";
6
5
  import { SDKError } from "../../../utils/errors";
6
+ import { Store } from "../../../utils/Datastore";
7
7
  const editIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" tabindex="-1"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"></path></svg>';
8
8
  const startIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" tabindex="-1"><path d="M2 12C2 6.48 6.48 2 12 2s10 4.48 10 10-4.48 10-10 10S2 17.52 2 12zm10 6c3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6 2.69 6 6 6z"></path></svg>';
9
9
  const stepIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" tabindex="-1"><path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path></svg>';
@@ -27,6 +27,7 @@ const doneIcon = '<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24"
27
27
  */
28
28
  export class VerdocsSend {
29
29
  constructor() {
30
+ this.templateListenerId = null;
30
31
  this.endpoint = VerdocsEndpoint.getDefault();
31
32
  this.templateId = null;
32
33
  this.environment = '';
@@ -35,15 +36,33 @@ export class VerdocsSend {
35
36
  this.sessionContacts = [];
36
37
  this.sending = false;
37
38
  this.rolesCompleted = {};
38
- this.templateStore = null;
39
- this.roleStore = null;
39
+ this.loading = true;
40
+ this.template = null;
41
+ }
42
+ disconnectedCallback() {
43
+ this.unlistenToTemplate();
44
+ }
45
+ async listenToTemplate() {
46
+ console.log('[SEND] Loading template', this.templateId);
47
+ this.unlistenToTemplate();
48
+ Store.subscribe('templates', this.templateId, () => getTemplate(this.endpoint, this.templateId), false, (template) => {
49
+ this.template = template;
50
+ this.loading = false;
51
+ this.rolesCompleted = {};
52
+ });
53
+ }
54
+ unlistenToTemplate() {
55
+ if (this.templateListenerId) {
56
+ Store.store.delListener(this.templateListenerId);
57
+ this.templateListenerId = null;
58
+ }
40
59
  }
41
60
  async reset() {
42
61
  this.rolesCompleted = {};
43
62
  }
44
63
  onTemplateIdChanged(newTemplateId) {
45
64
  console.log('[SEND] Template ID changed', newTemplateId);
46
- this.loadTemplate(newTemplateId).catch((e) => console.log('Unknown Error', e));
65
+ this.listenToTemplate();
47
66
  }
48
67
  async componentWillLoad() {
49
68
  var _a, _b, _c;
@@ -80,37 +99,18 @@ export class VerdocsSend {
80
99
  console.log(`[SEND] Missing required template ID ${this.templateId}`);
81
100
  return;
82
101
  }
83
- return this.loadTemplate(this.templateId);
102
+ this.listenToTemplate();
84
103
  }
85
104
  catch (e) {
86
105
  console.log('[SEND] Error with send session', e);
87
106
  (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
88
107
  }
89
108
  }
90
- async loadTemplate(templateId) {
91
- var _a, _b, _c, _d, _e;
92
- if (!templateId) {
93
- return;
94
- }
95
- try {
96
- this.templateStore = await getTemplateStore(this.endpoint, templateId, false);
97
- this.roleStore = getTemplateRoleStore(templateId);
98
- this.recomputeRolesCompleted();
99
- if (!((_b = (_a = this.templateStore) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.is_sendable)) {
100
- console.warn(`[SEND] Template is not sendable`, templateId);
101
- }
102
- }
103
- catch (e) {
104
- console.log('[SEND] Error with preview session', e);
105
- (_c = this.sdkError) === null || _c === void 0 ? void 0 : _c.emit(new SDKError(e.message, (_d = e.response) === null || _d === void 0 ? void 0 : _d.status, (_e = e.response) === null || _e === void 0 ? void 0 : _e.data));
106
- }
107
- }
108
109
  recomputeRolesCompleted() {
109
110
  var _a;
110
- const roles = ((_a = this.roleStore) === null || _a === void 0 ? void 0 : _a.get('roles')) || [];
111
- const rolesAtLevel = {};
112
111
  this.rolesCompleted = {};
113
- roles.forEach(role => {
112
+ const rolesAtLevel = {};
113
+ (((_a = this.template) === null || _a === void 0 ? void 0 : _a.roles) || []).forEach(role => {
114
114
  const level = role.sequence - 1;
115
115
  rolesAtLevel[level] || (rolesAtLevel[level] = []);
116
116
  const id = `r-${level}-${rolesAtLevel[level].length}`;
@@ -124,15 +124,13 @@ export class VerdocsSend {
124
124
  }
125
125
  getLevels() {
126
126
  var _a;
127
- const roles = ((_a = this.roleStore) === null || _a === void 0 ? void 0 : _a.get('roles')) || [];
128
- const levels = [...new Set(roles.map(role => role.sequence - 1))];
127
+ const levels = [...new Set((((_a = this.template) === null || _a === void 0 ? void 0 : _a.roles) || []).map(role => role.sequence - 1))];
129
128
  levels.sort((a, b) => a - b);
130
129
  return levels;
131
130
  }
132
131
  getRolesAtLevel(level) {
133
132
  var _a;
134
- const roles = ((_a = this.roleStore) === null || _a === void 0 ? void 0 : _a.get('roles')) || [];
135
- const rolesAtLevel = roles
133
+ const rolesAtLevel = (((_a = this.template) === null || _a === void 0 ? void 0 : _a.roles) || [])
136
134
  .filter(role => role.sequence - 1 === level)
137
135
  .map((role, index) => ({
138
136
  ...role,
@@ -165,7 +163,7 @@ export class VerdocsSend {
165
163
  this.showPickerForId = role.id;
166
164
  }
167
165
  handleSend(e) {
168
- var _a, _b, _c;
166
+ var _a, _b;
169
167
  if (this.sending) {
170
168
  console.log('[SEND] Skipping duplicate send', e);
171
169
  return;
@@ -177,7 +175,7 @@ export class VerdocsSend {
177
175
  (_a = this.sendingEnvelope) === null || _a === void 0 ? void 0 : _a.emit({ sending: true });
178
176
  const details = {
179
177
  template_id: this.templateId,
180
- name: ((_c = (_b = this.templateStore) === null || _b === void 0 ? void 0 : _b.state) === null || _c === void 0 ? void 0 : _c.name) || '',
178
+ name: ((_b = this.template) === null || _b === void 0 ? void 0 : _b.name) || 'New Envelope',
181
179
  environment: this.environment,
182
180
  initial_reminder: 0,
183
181
  followup_reminders: 0,
@@ -188,12 +186,12 @@ export class VerdocsSend {
188
186
  console.log('[SEND] Creating envelope', details);
189
187
  createEnvelope(this.endpoint, details)
190
188
  .then(r => {
191
- var _a, _b, _c, _d;
189
+ var _a, _b;
192
190
  console.log('[SEND] Send envelope', r);
193
191
  this.reset().catch((e) => console.log('Unknown Error', e));
194
192
  this.sending = false;
195
193
  (_a = this.sendingEnvelope) === null || _a === void 0 ? void 0 : _a.emit({ sending: false });
196
- (_b = this.send) === null || _b === void 0 ? void 0 : _b.emit({ ...details, name: ((_d = (_c = this.templateStore) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d.name) || 'New Envelope', envelope_id: r.id, envelope: r });
194
+ (_b = this.send) === null || _b === void 0 ? void 0 : _b.emit({ ...details, name: details.name, envelope_id: r.id, envelope: r });
197
195
  })
198
196
  .catch(e => {
199
197
  var _a, _b, _c;
@@ -209,22 +207,25 @@ export class VerdocsSend {
209
207
  (_a = this.exit) === null || _a === void 0 ? void 0 : _a.emit();
210
208
  }
211
209
  render() {
212
- var _a, _b;
210
+ var _a;
211
+ if (this.loading) {
212
+ return (h(Host, null, h("verdocs-loader", null)));
213
+ }
213
214
  if (!this.endpoint.session) {
214
215
  return (h(Host, { style: { display: 'flex' } }, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
215
216
  }
216
217
  const levels = this.getLevels();
217
- const roleNames = getRoleNames(this.roleStore);
218
218
  const rolesAssigned = Object.values(this.rolesCompleted).filter(recipient => isValidEmail(recipient.email));
219
219
  // TODO: Reactivate once SMS is re-enabled
220
220
  // const rolesAssigned = Object.values(this.rolesCompleted).filter(recipient => isValidEmail(recipient.email) || isValidPhone(recipient.phone));
221
- const allRolesAssigned = rolesAssigned.length >= roleNames.length;
222
- // console.log('[SEND] Roles completed', this.rolesCompleted);
223
- return (h(Host, { class: { sendable: (_b = (_a = this.templateStore) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.is_sendable } }, h("div", { class: "recipients" }, h("div", { class: "left-line" }), h("div", { class: `level level-start` }, this.getLevelIcon(-1), h("div", { class: "complete" }, "Send Envelope")), levels.map(level => (h("div", { class: `level level-${level}` }, this.getLevelIcon(level), this.getRolesAtLevel(level).map(role => {
221
+ const allRolesAssigned = rolesAssigned.length >= getRoleNames(this.template).length;
222
+ return (h(Host, { class: { sendable: (_a = this.template) === null || _a === void 0 ? void 0 : _a.is_sendable } }, h("div", { class: "recipients" }, h("div", { class: "left-line" }), h("div", { class: `level level-start` }, this.getLevelIcon(-1), h("div", { class: "complete" }, "Send Envelope")), levels.map(level => (h("div", { class: `level level-${level}` }, this.getLevelIcon(level), this.getRolesAtLevel(level).map(role => {
224
223
  var _a, _b, _c, _d;
225
224
  const unknown = !role.email;
226
225
  const elId = `verdocs-send-recipient-${role.role_name}`;
227
- return unknown ? (h("div", { class: "recipient", "data-ri": getRoleIndex(this.roleStore, role.role_name), "data-rn": role.role_name, style: { backgroundColor: getRGBA(getRoleIndex(this.roleStore, role.role_name)) }, onClick: e => this.handleClickRole(e, role), id: elId }, ((_a = this.rolesCompleted[role.id]) === null || _a === void 0 ? void 0 : _a.first_name) ? formatFullName(this.rolesCompleted[role.id]) : role.role_name, h("div", { class: "icon", innerHTML: editIcon }), this.showPickerForId === role.id && (h("verdocs-portal", { anchor: elId, onClickAway: () => (this.showPickerForId = '') }, h("verdocs-contact-picker", { onExit: () => (this.showPickerForId = ''), onNext: e => this.handleSelectContact(e, role), contactSuggestions: this.sessionContacts, templateRole: (_b = this.rolesCompleted[role.id]) !== null && _b !== void 0 ? _b : role, onSearchContacts: e => { var _a; return (_a = this.searchContacts) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } }))))) : (h("div", { class: "recipient", style: { borderColor: getRGBA(getRoleIndex(this.roleStore, role.role_name)) }, onClick: e => this.handleClickRole(e, role), id: elId }, ((_c = this.rolesCompleted[role.id]) === null || _c === void 0 ? void 0 : _c.first_name) ? formatFullName(this.rolesCompleted[role.id]) : role.role_name, h("div", { class: "icon", innerHTML: editIcon }), this.showPickerForId === role.id && (h("verdocs-portal", { anchor: elId, onClickAway: () => (this.showPickerForId = '') }, h("verdocs-contact-picker", { onExit: () => (this.showPickerForId = ''), onNext: e => this.handleSelectContact(e, role), contactSuggestions: this.sessionContacts, templateRole: ((_d = this.rolesCompleted[role.id]) !== null && _d !== void 0 ? _d : role), onSearchContacts: e => { var _a; return (_a = this.searchContacts) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } })))));
226
+ const roleIndex = getRoleIndex(this.template, role.role_name);
227
+ const rgba = getRGBA(roleIndex);
228
+ return unknown ? (h("div", { class: "recipient", "data-ri": roleIndex, "data-rn": role.role_name, style: { backgroundColor: rgba }, onClick: e => this.handleClickRole(e, role), id: elId }, ((_a = this.rolesCompleted[role.id]) === null || _a === void 0 ? void 0 : _a.first_name) ? formatFullName(this.rolesCompleted[role.id]) : role.role_name, h("div", { class: "icon", innerHTML: editIcon }), this.showPickerForId === role.id && (h("verdocs-portal", { anchor: elId, onClickAway: () => (this.showPickerForId = '') }, h("verdocs-contact-picker", { onExit: () => (this.showPickerForId = ''), onNext: e => this.handleSelectContact(e, role), contactSuggestions: this.sessionContacts, templateRole: (_b = this.rolesCompleted[role.id]) !== null && _b !== void 0 ? _b : role, onSearchContacts: e => { var _a; return (_a = this.searchContacts) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } }))))) : (h("div", { class: "recipient", style: { borderColor: rgba }, onClick: e => this.handleClickRole(e, role), id: elId }, ((_c = this.rolesCompleted[role.id]) === null || _c === void 0 ? void 0 : _c.first_name) ? formatFullName(this.rolesCompleted[role.id]) : role.role_name, h("div", { class: "icon", innerHTML: editIcon }), this.showPickerForId === role.id && (h("verdocs-portal", { anchor: elId, onClickAway: () => (this.showPickerForId = '') }, h("verdocs-contact-picker", { onExit: () => (this.showPickerForId = ''), onNext: e => this.handleSelectContact(e, role), contactSuggestions: this.sessionContacts, templateRole: ((_d = this.rolesCompleted[role.id]) !== null && _d !== void 0 ? _d : role), onSearchContacts: e => { var _a; return (_a = this.searchContacts) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } })))));
228
229
  })))), h("div", { class: `level level-done` }, this.getLevelIcon(levels.length), h("div", { class: "complete" }, "Signing Complete"))), h("div", { class: "buttons" }, h("verdocs-button", { label: "Cancel", size: "small", variant: "outline", onClick: e => this.handleCancel(e), disabled: this.sending }), h("verdocs-button", { label: "Send", size: "small", disabled: !allRolesAssigned || this.sending, onClick: e => this.handleSend(e) }), this.sending && h("verdocs-spinner", null))));
229
230
  }
230
231
  static get is() { return "verdocs-send"; }
@@ -307,8 +308,8 @@ export class VerdocsSend {
307
308
  "sessionContacts": {},
308
309
  "sending": {},
309
310
  "rolesCompleted": {},
310
- "templateStore": {},
311
- "roleStore": {}
311
+ "loading": {},
312
+ "template": {}
312
313
  };
313
314
  }
314
315
  static get events() {
@@ -5,7 +5,6 @@ import { fullNameToInitials, startSigningSession, deleteEnvelopeFieldAttachment,
5
5
  import { getEnvelope, integerSequence, isValidEmail, isValidPhone, submitKbaPin, updateEnvelopeFieldInitials } from "@verdocs/js-sdk";
6
6
  import { createInitials, createSignature, envelopeRecipientAgree, envelopeRecipientDecline, envelopeRecipientSubmit, formatFullName } from "@verdocs/js-sdk";
7
7
  import { getFieldId, renderDocumentField, saveAttachment, updateDocumentFieldValue } from "../../../utils/utils";
8
- import { createTemplateFieldStoreFromEnvelope } from "../../../utils/TemplateFieldStore";
9
8
  import { VerdocsToast } from "../../../utils/Toast";
10
9
  import { SDKError } from "../../../utils/errors";
11
10
  const inProgressMenuOptions = [
@@ -44,7 +43,6 @@ export class VerdocsSign {
44
43
  this.roleId = null;
45
44
  this.inviteCode = null;
46
45
  this.headerTargetId = null;
47
- this.envelope = null;
48
46
  this.roleNames = [];
49
47
  this.sortedRecipients = [];
50
48
  this.recipient = null;
@@ -67,6 +65,8 @@ export class VerdocsSign {
67
65
  this.kbaQuestions = [];
68
66
  this.showSpinner = false;
69
67
  this.kbaChoices = [];
68
+ this.loading = true;
69
+ this.envelope = null;
70
70
  }
71
71
  componentWillLoad() {
72
72
  if (!this.endpoint) {
@@ -90,11 +90,12 @@ export class VerdocsSign {
90
90
  }
91
91
  try {
92
92
  console.log(`[SIGN] Processing invite code for ${this.envelopeId} / ${this.roleId}`);
93
+ // NOTE: We don't listen to the store here because we are often an independent
94
+ // session and might have a different "view" of the envelope.
93
95
  const { envelope, recipient } = await startSigningSession(this.endpoint, this.envelopeId, this.roleId, this.inviteCode);
94
96
  console.log(`[SIGN] Loaded signing session`, envelope, recipient);
95
97
  this.recipient = recipient;
96
98
  this.envelope = envelope;
97
- createTemplateFieldStoreFromEnvelope(this.envelope);
98
99
  this.sortedRecipients = [...this.envelope.recipients];
99
100
  this.sortedRecipients.sort((a, b) => {
100
101
  return a.sequence === b.sequence ? a.order - b.order : a.sequence - b.sequence;
@@ -476,7 +477,7 @@ export class VerdocsSign {
476
477
  const updateResult = await uploadEnvelopeFieldAttachment(this.endpoint, this.envelopeId, field.name, e.detail);
477
478
  this.updateRecipientFieldValue(field.name, updateResult);
478
479
  this.checkRecipientFields();
479
- const newEl = renderDocumentField(field, pageInfo, { disabled: false, editable: false, draggable: false, done: this.isDone });
480
+ const newEl = renderDocumentField('envelope', field, pageInfo, { disabled: false, editable: false, draggable: false, done: this.isDone });
480
481
  this.attachFieldAttributes(pageInfo, field, newEl);
481
482
  this.showSpinner = false;
482
483
  }
@@ -494,7 +495,7 @@ export class VerdocsSign {
494
495
  console.log('[SIGN] Deleted attachment', updateResult);
495
496
  this.updateRecipientFieldValue(field.name, updateResult);
496
497
  this.checkRecipientFields();
497
- const newEl = renderDocumentField(field, pageInfo, { disabled: false, editable: false, draggable: false, done: this.isDone });
498
+ const newEl = renderDocumentField('envelope', field, pageInfo, { disabled: false, editable: false, draggable: false, done: this.isDone });
498
499
  this.attachFieldAttributes(pageInfo, field, newEl);
499
500
  this.showSpinner = false;
500
501
  }
@@ -532,7 +533,7 @@ export class VerdocsSign {
532
533
  if (field.page !== pageInfo.pageNumber) {
533
534
  return;
534
535
  }
535
- const el = renderDocumentField(field, pageInfo, { disabled: false, editable: false, draggable: false, done: this.isDone }, tabIndex);
536
+ const el = renderDocumentField('envelope', field, pageInfo, { disabled: false, editable: false, draggable: false, done: this.isDone }, tabIndex);
536
537
  if (!el) {
537
538
  return;
538
539
  }
@@ -550,7 +551,7 @@ export class VerdocsSign {
550
551
  this.getRecipientFields()
551
552
  .filter(field => field.page === pageInfo.pageNumber)
552
553
  .forEach(field => {
553
- const el = renderDocumentField(field, pageInfo, { disabled: true, editable: false, draggable: false, done: this.isDone });
554
+ const el = renderDocumentField('envelope', field, pageInfo, { disabled: true, editable: false, draggable: false, done: this.isDone });
554
555
  if (!el) {
555
556
  return;
556
557
  }
@@ -577,7 +578,7 @@ export class VerdocsSign {
577
578
  return (h(Host, { class: { agreed: this.agreed } }, h("div", { class: "fatal-error" }, h("img", { src: "https://public-assets.verdocs.com/loading-placeholder.png", class: "placeholder", alt: "Placeholder page" }), h("div", { class: "message" }, h("div", { class: "header" }, this.fatalErrorHeader), h("p", null, this.fatalErrorMessage)))));
578
579
  }
579
580
  if (this.isDone) {
580
- return (h(Host, { class: { agreed: this.agreed } }, h("verdocs-view", { endpoint: this.endpoint, envelopeId: this.envelopeId, envelope: this.envelope, onSdkError: e => { var _a; return (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } }), this.showDone && (h("verdocs-ok-dialog", { heading: "You're Done!", message: `You can access the ${this.documentsSingularPlural} 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.`, onNext: (e) => {
581
+ return (h(Host, { class: { agreed: this.agreed } }, h("verdocs-view", { endpoint: this.endpoint, envelopeId: this.envelopeId, onSdkError: e => { var _a; return (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(e.detail); } }), this.showDone && (h("verdocs-ok-dialog", { heading: "You're Done!", message: `You can access the ${this.documentsSingularPlural} 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.`, onNext: (e) => {
581
582
  e.preventDefault();
582
583
  e.stopPropagation();
583
584
  this.showDone = false;
@@ -670,7 +671,6 @@ export class VerdocsSign {
670
671
  // where everything went. This is also a visual indicator when optional fields weren't filled in by previous actors, or
671
672
  // future signers still need to act. Once we're "done" we flip to showing the envelope's documents which have the final
672
673
  // field vales (so far) stamped into them.
673
- // const templatePage = EnvelopeStore.template?.pages.find(p => p.sequence === page.sequence);
674
674
  // TODO: Confirm that a pure page-number match is good enough to find the matching template page. We need to make sure
675
675
  // we either don't reset our page numbers for additional attachments, or add match-on identifiers to work around that.
676
676
  // console.log('tp', templatePage, page);
@@ -796,7 +796,6 @@ export class VerdocsSign {
796
796
  }
797
797
  static get states() {
798
798
  return {
799
- "envelope": {},
800
799
  "roleNames": {},
801
800
  "sortedRecipients": {},
802
801
  "recipient": {},
@@ -818,7 +817,9 @@ export class VerdocsSign {
818
817
  "kbaStep": {},
819
818
  "kbaQuestions": {},
820
819
  "showSpinner": {},
821
- "kbaChoices": {}
820
+ "kbaChoices": {},
821
+ "loading": {},
822
+ "envelope": {}
822
823
  };
823
824
  }
824
825
  static get events() {
@@ -1,8 +1,8 @@
1
1
  import { cancelEnvelope, getDocumentDownloadLink, getEnvelope, integerSequence, userCanCancelEnvelope, VerdocsEndpoint } from "@verdocs/js-sdk";
2
2
  import { h, Host, Fragment } from "@stencil/core";
3
3
  import { saveEnvelopesAsZip } from "../../../utils/utils";
4
- // import {IDocumentPageInfo} from '../../../utils/Types';
5
4
  import { SDKError } from "../../../utils/errors";
5
+ import { Store } from "../../../utils/Datastore";
6
6
  /**
7
7
  * Render the documents attached to an envelope in read-only (view) mode. All documents are
8
8
  * displayed in order.
@@ -16,14 +16,15 @@ import { SDKError } from "../../../utils/errors";
16
16
  */
17
17
  export class VerdocsView {
18
18
  constructor() {
19
+ this.envelopeListenerId = null;
19
20
  this.endpoint = null;
20
21
  this.envelopeId = '';
21
- this.envelope = null;
22
22
  this.headerTargetId = null;
23
23
  this.canceling = false;
24
- this.roleNames = [];
25
24
  this.showCancelDone = false;
26
25
  this.showLoadError = false;
26
+ this.loading = true;
27
+ this.envelope = null;
27
28
  }
28
29
  async componentWillLoad() {
29
30
  var _a, _b, _c;
@@ -35,12 +36,12 @@ export class VerdocsView {
35
36
  console.error(`[VIEW] Missing required envelopeId`);
36
37
  return;
37
38
  }
39
+ this.listenToEnvelope();
38
40
  if (!this.envelope) {
39
41
  try {
40
42
  console.log('[VIEW] Loading envelope...');
41
43
  this.envelope = await getEnvelope(this.endpoint, this.envelopeId);
42
44
  console.log('[VIEW] Loaded envelope', this.envelope);
43
- this.roleNames = this.envelope.recipients.map(r => r.role_name);
44
45
  }
45
46
  catch (e) {
46
47
  this.showLoadError = true;
@@ -57,6 +58,23 @@ export class VerdocsView {
57
58
  headerTarget.append(headerEl);
58
59
  }
59
60
  }
61
+ disconnectedCallback() {
62
+ this.unlistenToEnvelope();
63
+ }
64
+ async listenToEnvelope() {
65
+ console.log('[SIDEBAR] Loading envelope', this.envelopeId);
66
+ this.unlistenToEnvelope();
67
+ Store.subscribe('envelopes', this.envelopeId, () => getEnvelope(this.endpoint, this.envelopeId), false, (envelope) => {
68
+ this.envelope = envelope;
69
+ this.loading = false;
70
+ });
71
+ }
72
+ unlistenToEnvelope() {
73
+ if (this.envelopeListenerId) {
74
+ Store.store.delListener(this.envelopeListenerId);
75
+ this.envelopeListenerId = null;
76
+ }
77
+ }
60
78
  handlePageRendered(_e) {
61
79
  // const pageInfo = e.detail as IDocumentPageInfo;
62
80
  // console.log('[VIEW] Page rendered', pageInfo);
@@ -133,6 +151,9 @@ export class VerdocsView {
133
151
  }
134
152
  render() {
135
153
  var _a;
154
+ if (this.loading) {
155
+ return (h(Host, null, h("verdocs-loader", null)));
156
+ }
136
157
  if (this.showLoadError) {
137
158
  return (h(Host, null, h("verdocs-ok-dialog", { heading: "Unable to View Envelope", message: `Sorry, that envelope is not valid.`, buttonLabel: "OK", onNext: () => {
138
159
  this.showLoadError = false;
@@ -230,28 +251,6 @@ export class VerdocsView {
230
251
  "reflect": false,
231
252
  "defaultValue": "''"
232
253
  },
233
- "envelope": {
234
- "type": "unknown",
235
- "mutable": true,
236
- "complexType": {
237
- "original": "IEnvelope | null",
238
- "resolved": "IEnvelope",
239
- "references": {
240
- "IEnvelope": {
241
- "location": "import",
242
- "path": "@verdocs/js-sdk",
243
- "id": "node_modules::IEnvelope"
244
- }
245
- }
246
- },
247
- "required": false,
248
- "optional": false,
249
- "docs": {
250
- "tags": [],
251
- "text": "If the envelope is already loaded, the parent may pass it in directly."
252
- },
253
- "defaultValue": "null"
254
- },
255
254
  "headerTargetId": {
256
255
  "type": "string",
257
256
  "mutable": false,
@@ -275,9 +274,10 @@ export class VerdocsView {
275
274
  static get states() {
276
275
  return {
277
276
  "canceling": {},
278
- "roleNames": {},
279
277
  "showCancelDone": {},
280
- "showLoadError": {}
278
+ "showLoadError": {},
279
+ "loading": {},
280
+ "envelope": {}
281
281
  };
282
282
  }
283
283
  static get events() {
@@ -1,26 +1,27 @@
1
1
  import { Host, h } from "@stencil/core";
2
- import { formatFullName, getInPersonLink, VerdocsEndpoint } from "@verdocs/js-sdk";
3
- import { getEnvelopeStore } from "../../../utils/EnvelopeStore";
2
+ import { formatFullName, getEnvelope, getInPersonLink, VerdocsEndpoint } from "@verdocs/js-sdk";
4
3
  import { VerdocsToast } from "../../../utils/Toast";
5
4
  import { SDKError } from "../../../utils/errors";
5
+ import { Store } from "../../../utils/Datastore";
6
6
  /**
7
7
  * Displays a single recipient from an envelope, with the opportunity to copy an in-person
8
8
  * signing link for that recipient to use.
9
9
  */
10
10
  export class VerdocsEnvelopeRecipientLink {
11
11
  constructor() {
12
- this.store = null;
13
- this.recipient = null;
12
+ this.envelopeListenerId = null;
14
13
  this.endpoint = VerdocsEndpoint.getDefault();
15
14
  this.envelopeId = '';
16
15
  this.roleName = '';
17
16
  this.isOpen = undefined;
18
- this.loading = true;
19
17
  this.gettingLink = true;
20
18
  this.link = '';
19
+ this.loading = true;
20
+ this.envelope = null;
21
+ this.recipient = null;
21
22
  }
22
23
  async componentWillLoad() {
23
- var _a, _b, _c, _d, _e, _f;
24
+ var _a, _b, _c;
24
25
  try {
25
26
  this.endpoint.loadSession();
26
27
  if (!this.envelopeId) {
@@ -31,21 +32,37 @@ export class VerdocsEnvelopeRecipientLink {
31
32
  console.log('[RECIPIENT_LINK] Unable to start session, must be authenticated');
32
33
  return;
33
34
  }
34
- this.store = await getEnvelopeStore(this.endpoint, this.envelopeId, true);
35
- this.loading = false;
36
- this.gettingLink = true;
37
- this.recipient = (_c = (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.recipients) === null || _c === void 0 ? void 0 : _c.find(r => r.role_name === this.roleName);
38
- this.getLink(this.recipient);
35
+ this.listenToEnvelope();
39
36
  }
40
37
  catch (e) {
41
38
  console.log('[RECIPIENT_LINK] Error loading envelope', e);
42
- (_d = this.sdkError) === null || _d === void 0 ? void 0 : _d.emit(new SDKError(e.message, (_e = e.response) === null || _e === void 0 ? void 0 : _e.status, (_f = e.response) === null || _f === void 0 ? void 0 : _f.data));
39
+ (_a = this.sdkError) === null || _a === void 0 ? void 0 : _a.emit(new SDKError(e.message, (_b = e.response) === null || _b === void 0 ? void 0 : _b.status, (_c = e.response) === null || _c === void 0 ? void 0 : _c.data));
40
+ }
41
+ }
42
+ disconnectedCallback() {
43
+ this.unlistenToEnvelope();
44
+ }
45
+ async listenToEnvelope() {
46
+ console.log('[SIDEBAR] Loading envelope', this.envelopeId);
47
+ this.unlistenToEnvelope();
48
+ Store.subscribe('envelopes', this.envelopeId, () => getEnvelope(this.endpoint, this.envelopeId), false, (envelope) => {
49
+ var _a;
50
+ this.envelope = envelope;
51
+ this.loading = false;
52
+ this.recipient = (((_a = this.envelope) === null || _a === void 0 ? void 0 : _a.recipients) || []).find(r => r.role_name === this.roleName);
53
+ this.getLink(this.recipient);
54
+ });
55
+ }
56
+ unlistenToEnvelope() {
57
+ if (this.envelopeListenerId) {
58
+ Store.store.delListener(this.envelopeListenerId);
59
+ this.envelopeListenerId = null;
43
60
  }
44
61
  }
45
62
  handleDone(e) {
46
63
  var _a;
47
64
  e.preventDefault();
48
- (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit({ envelope: this.store.state });
65
+ (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit({ envelope: this.envelope });
49
66
  }
50
67
  copyLink(link) {
51
68
  navigator.clipboard
@@ -158,9 +175,11 @@ export class VerdocsEnvelopeRecipientLink {
158
175
  static get states() {
159
176
  return {
160
177
  "isOpen": {},
161
- "loading": {},
162
178
  "gettingLink": {},
163
- "link": {}
179
+ "link": {},
180
+ "loading": {},
181
+ "envelope": {},
182
+ "recipient": {}
164
183
  };
165
184
  }
166
185
  static get events() {