@verdocs/web-sdk 4.2.157 → 5.0.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 (514) hide show
  1. package/dist/cjs/Datastore-b1742da2.js +1783 -0
  2. package/dist/cjs/Icons-02a47df1.js +7 -0
  3. package/dist/cjs/{index-2589e4d1.js → index-ccac8641.js} +19 -31
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/{utils-5accd019.js → utils-ba1e95e0.js} +4 -2
  6. package/dist/cjs/verdocs-auth.cjs.entry.js +1 -1
  7. package/dist/cjs/verdocs-build.cjs.entry.js +22 -13
  8. package/dist/cjs/verdocs-button-panel_2.cjs.entry.js +1 -1
  9. package/dist/cjs/{verdocs-button_3.cjs.entry.js → verdocs-button_2.cjs.entry.js} +1 -56
  10. package/dist/cjs/{verdocs-checkbox_4.cjs.entry.js → verdocs-checkbox_6.cjs.entry.js} +115 -24
  11. package/dist/cjs/verdocs-contact-picker_2.cjs.entry.js +2 -2
  12. package/dist/cjs/verdocs-dialog.cjs.entry.js +1 -1
  13. package/dist/cjs/verdocs-dropdown.cjs.entry.js +1 -1
  14. package/dist/cjs/verdocs-envelope-document-page.cjs.entry.js +2 -2
  15. package/dist/cjs/verdocs-envelope-recipient-link_2.cjs.entry.js +30 -15
  16. package/dist/cjs/verdocs-envelope-recipient-summary.cjs.entry.js +32 -17
  17. package/dist/cjs/verdocs-envelope-sidebar.cjs.entry.js +64 -45
  18. package/dist/cjs/verdocs-envelopes-list.cjs.entry.js +2 -2
  19. package/dist/cjs/verdocs-field-attachment_13.cjs.entry.js +105 -156
  20. package/dist/cjs/verdocs-field-payment.cjs.entry.js +38 -25
  21. package/dist/cjs/{verdocs-file-chooser_2.cjs.entry.js → verdocs-file-chooser.cjs.entry.js} +2 -21
  22. package/dist/cjs/verdocs-kba-dialog_2.cjs.entry.js +27 -5
  23. package/dist/cjs/verdocs-ok-dialog.cjs.entry.js +1 -1
  24. package/dist/cjs/verdocs-organization-card_2.cjs.entry.js +1 -1
  25. package/dist/cjs/verdocs-pagination_2.cjs.entry.js +2 -2
  26. package/dist/cjs/{verdocs-preview_9.cjs.entry.js → verdocs-preview_5.cjs.entry.js} +220 -593
  27. package/dist/cjs/verdocs-progress-bar.cjs.entry.js +25 -0
  28. package/dist/cjs/verdocs-quick-functions.cjs.entry.js +1 -1
  29. package/dist/cjs/verdocs-radio-button.cjs.entry.js +1 -1
  30. package/dist/cjs/verdocs-search-box.cjs.entry.js +1 -1
  31. package/dist/cjs/verdocs-search-tabs.cjs.entry.js +1 -1
  32. package/dist/cjs/verdocs-sign.cjs.entry.js +11 -12
  33. package/dist/cjs/verdocs-spinner.cjs.entry.js +1 -1
  34. package/dist/cjs/verdocs-status-indicator.cjs.entry.js +1 -1
  35. package/dist/cjs/verdocs-table.cjs.entry.js +1 -1
  36. package/dist/cjs/verdocs-template-card.cjs.entry.js +1 -1
  37. package/dist/cjs/verdocs-template-create.cjs.entry.js +108 -0
  38. package/dist/cjs/verdocs-template-document-page_2.cjs.entry.js +78 -63
  39. package/dist/cjs/verdocs-template-role-properties.cjs.entry.js +58 -37
  40. package/dist/cjs/verdocs-template-star.cjs.entry.js +2 -2
  41. package/dist/cjs/verdocs-template-tags.cjs.entry.js +2 -2
  42. package/dist/cjs/verdocs-templates-list.cjs.entry.js +1 -1
  43. package/dist/cjs/verdocs-toggle.cjs.entry.js +1 -1
  44. package/dist/cjs/verdocs-web-sdk.cjs.js +3 -3
  45. package/dist/collection/collection-manifest.json +2 -5
  46. package/dist/collection/components/controls/verdocs-text-input/verdocs-text-input.js +5 -21
  47. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +27 -40
  48. package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.js +27 -28
  49. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js +45 -44
  50. package/dist/collection/components/embeds/verdocs-sign/verdocs-sign.js +12 -11
  51. package/dist/collection/components/embeds/verdocs-view/verdocs-view.js +28 -28
  52. package/dist/collection/components/envelopes/verdocs-envelope-recipient-link/verdocs-envelope-recipient-link.js +34 -15
  53. package/dist/collection/components/envelopes/verdocs-envelope-recipient-summary/verdocs-envelope-recipient-summary.js +35 -17
  54. package/dist/collection/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.js +67 -45
  55. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +29 -18
  56. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +30 -20
  57. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +30 -22
  58. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +29 -17
  59. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +30 -18
  60. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +192 -139
  61. package/dist/collection/components/fields/verdocs-field-radio/verdocs-field-radio.js +30 -20
  62. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +30 -18
  63. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +31 -19
  64. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.css +31 -0
  65. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +44 -44
  66. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +29 -17
  67. package/dist/collection/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.js +37 -32
  68. package/dist/collection/components/templates/verdocs-template-create/verdocs-template-create.js +7 -15
  69. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.css +6 -0
  70. package/dist/collection/components/templates/verdocs-template-document-page/verdocs-template-document-page.js +79 -61
  71. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +48 -24
  72. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +65 -64
  73. package/dist/collection/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.js +61 -36
  74. package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.js +63 -46
  75. package/dist/collection/components/templates/verdocs-template-star/verdocs-template-star.js +1 -1
  76. package/dist/collection/components/templates/verdocs-template-tags/verdocs-template-tags.js +1 -1
  77. package/dist/collection/utils/Datastore.js +141 -0
  78. package/dist/collection/utils/Templates.js +2 -0
  79. package/dist/collection/utils/utils.js +3 -2
  80. package/dist/components/index.js +1 -7
  81. package/dist/components/{p-3044c9cb.js → p-070bebd7.js} +1 -1
  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-12594438.js → p-1030e0b1.js} +32 -32
  86. package/dist/components/{p-b11eb119.js → p-15d530b8.js} +6 -6
  87. package/dist/components/{p-71dd305b.js → p-18999830.js} +2 -2
  88. package/dist/components/{p-90540412.js → p-1ae5d7e0.js} +1 -1
  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-72e959a7.js → p-1fc15f94.js} +31 -32
  92. package/dist/components/{p-85ef4d07.js → p-2548f3f0.js} +49 -38
  93. package/dist/components/{p-9a85b700.js → p-258c3c53.js} +125 -101
  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-4c8548d4.js → p-4bc5ac82.js} +4 -3
  98. package/dist/components/{p-ffe8b41d.js → p-4dd750e9.js} +1 -1
  99. package/dist/components/{p-b679d760.js → p-4e08dcdd.js} +33 -32
  100. package/dist/components/{p-82fb3284.js → p-58c2bd5d.js} +1 -1
  101. package/dist/components/{p-d3170dcd.js → p-5a9cea40.js} +4 -4
  102. package/dist/components/{p-76282bf0.js → p-5d1dec61.js} +52 -53
  103. package/dist/components/{p-8b27ce22.js → p-5d4bbcd0.js} +1 -1
  104. package/dist/components/{p-8cd2e08d.js → p-5d82a9f3.js} +64 -57
  105. package/dist/components/{p-877eaf65.js → p-5eb45a4f.js} +1 -1
  106. package/dist/components/{p-cbb20d7a.js → p-6400f542.js} +36 -14
  107. package/dist/components/{p-6e8c00bc.js → p-642af221.js} +32 -31
  108. package/dist/components/{p-03660739.js → p-649a2ae7.js} +31 -32
  109. package/dist/components/{p-e4ac6259.js → p-6fcd99d1.js} +2 -2
  110. package/dist/components/p-7e9c499e.js +4 -0
  111. package/dist/components/{p-cdf871dd.js → p-81794664.js} +30 -29
  112. package/dist/components/{p-1b60debe.js → p-82a3f92e.js} +30 -29
  113. package/dist/components/{p-921297ba.js → p-84ae0283.js} +1 -1
  114. package/dist/components/{p-fbc69665.js → p-8d3c0b4c.js} +2 -2
  115. package/dist/components/{p-83a2fa2f.js → p-8fbc64e9.js} +72 -55
  116. package/dist/components/{p-761eefa9.js → p-94065def.js} +91 -90
  117. package/dist/components/{p-0e64ccc3.js → p-9bb47a5a.js} +1 -1
  118. package/dist/components/{p-df4ac086.js → p-a3e12c74.js} +2 -2
  119. package/dist/components/{p-6b369b14.js → p-b16c202a.js} +1 -1
  120. package/dist/components/{p-3518350d.js → p-b9034018.js} +4 -4
  121. package/dist/components/{p-b8cd75c0.js → p-b9a18099.js} +56 -46
  122. package/dist/components/{p-8f942993.js → p-bdc03b91.js} +32 -31
  123. package/dist/components/{p-4535a9fd.js → p-c7b00ce6.js} +36 -17
  124. package/dist/components/{p-e4a852b5.js → p-c8fedb4e.js} +7 -6
  125. package/dist/components/{p-0162bdd3.js → p-caa41754.js} +31 -34
  126. package/dist/components/{p-83245875.js → p-cf6ea837.js} +2 -2
  127. package/dist/components/p-da4d4eed.js +1781 -0
  128. package/dist/components/p-ea5954bd.js +4 -0
  129. package/dist/components/{p-1e63fb14.js → p-ec894daf.js} +2 -2
  130. package/dist/components/{p-556596e4.js → p-f72b9c45.js} +1 -1
  131. package/dist/components/{p-a7bbe96b.js → p-f990140a.js} +3 -3
  132. package/dist/components/{p-db4a15fd.js → p-fcad60f5.js} +1 -1
  133. package/dist/components/verdocs-auth.js +4 -4
  134. package/dist/components/verdocs-build.js +93 -115
  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 +56 -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-build-tabs.js +1 -1
  184. package/dist/components/verdocs-template-card.js +1 -1
  185. package/dist/components/verdocs-template-create.js +148 -1
  186. package/dist/components/verdocs-template-document-page.js +1 -1
  187. package/dist/components/verdocs-template-field-properties.js +1 -1
  188. package/dist/components/verdocs-template-fields.js +1 -1
  189. package/dist/components/verdocs-template-role-properties.js +1 -1
  190. package/dist/components/verdocs-template-roles.js +1 -1
  191. package/dist/components/verdocs-template-star.js +1 -1
  192. package/dist/components/verdocs-template-tags.js +2 -2
  193. package/dist/components/verdocs-templates-list.js +11 -11
  194. package/dist/components/verdocs-text-input.js +1 -1
  195. package/dist/components/verdocs-toggle-button.js +1 -1
  196. package/dist/components/verdocs-toggle.js +1 -1
  197. package/dist/components/verdocs-toolbar-icon.js +1 -1
  198. package/dist/components/verdocs-upload-dialog.js +1 -1
  199. package/dist/components/verdocs-view.js +1 -1
  200. package/dist/custom-elements.json +2114 -0
  201. package/dist/esm/Datastore-52fcbac6.js +1781 -0
  202. package/dist/esm/Icons-190fd11d.js +4 -0
  203. package/dist/esm/{index-c8587076.js → index-272d51a4.js} +20 -30
  204. package/dist/esm/loader.js +3 -3
  205. package/dist/esm/{utils-6ecd6558.js → utils-47de6f79.js} +4 -3
  206. package/dist/esm/verdocs-auth.entry.js +1 -1
  207. package/dist/esm/verdocs-build.entry.js +23 -14
  208. package/dist/esm/verdocs-button-panel_2.entry.js +1 -1
  209. package/dist/esm/{verdocs-button_3.entry.js → verdocs-button_2.entry.js} +2 -56
  210. package/dist/esm/{verdocs-checkbox_4.entry.js → verdocs-checkbox_6.entry.js} +115 -26
  211. package/dist/esm/verdocs-contact-picker_2.entry.js +2 -2
  212. package/dist/esm/verdocs-dialog.entry.js +1 -1
  213. package/dist/esm/verdocs-dropdown.entry.js +1 -1
  214. package/dist/esm/verdocs-envelope-document-page.entry.js +2 -2
  215. package/dist/esm/verdocs-envelope-recipient-link_2.entry.js +31 -16
  216. package/dist/esm/verdocs-envelope-recipient-summary.entry.js +33 -18
  217. package/dist/esm/verdocs-envelope-sidebar.entry.js +65 -46
  218. package/dist/esm/verdocs-envelopes-list.entry.js +2 -2
  219. package/dist/esm/verdocs-field-attachment_13.entry.js +105 -156
  220. package/dist/esm/verdocs-field-payment.entry.js +38 -25
  221. package/dist/{components/p-fe2dca8c.js → esm/verdocs-file-chooser.entry.js} +8 -31
  222. package/dist/esm/verdocs-kba-dialog_2.entry.js +27 -5
  223. package/dist/esm/verdocs-ok-dialog.entry.js +1 -1
  224. package/dist/esm/verdocs-organization-card_2.entry.js +1 -1
  225. package/dist/esm/verdocs-pagination_2.entry.js +2 -2
  226. package/dist/esm/{verdocs-preview_9.entry.js → verdocs-preview_5.entry.js} +222 -591
  227. package/dist/esm/verdocs-progress-bar.entry.js +21 -0
  228. package/dist/esm/verdocs-quick-functions.entry.js +1 -1
  229. package/dist/esm/verdocs-radio-button.entry.js +1 -1
  230. package/dist/esm/verdocs-search-box.entry.js +1 -1
  231. package/dist/esm/verdocs-search-tabs.entry.js +1 -1
  232. package/dist/esm/verdocs-sign.entry.js +11 -12
  233. package/dist/esm/verdocs-spinner.entry.js +1 -1
  234. package/dist/esm/verdocs-status-indicator.entry.js +1 -1
  235. package/dist/esm/verdocs-table.entry.js +1 -1
  236. package/dist/esm/verdocs-template-card.entry.js +1 -1
  237. package/dist/{components/p-f9cc62a7.js → esm/verdocs-template-create.entry.js} +15 -69
  238. package/dist/esm/verdocs-template-document-page_2.entry.js +79 -64
  239. package/dist/esm/verdocs-template-role-properties.entry.js +59 -38
  240. package/dist/esm/verdocs-template-star.entry.js +2 -2
  241. package/dist/esm/verdocs-template-tags.entry.js +2 -2
  242. package/dist/esm/verdocs-templates-list.entry.js +1 -1
  243. package/dist/esm/verdocs-toggle.entry.js +1 -1
  244. package/dist/esm/verdocs-web-sdk.js +4 -4
  245. package/dist/esm-es5/Datastore-52fcbac6.js +1 -0
  246. package/dist/esm-es5/Icons-190fd11d.js +1 -0
  247. package/dist/esm-es5/index-272d51a4.js +1 -0
  248. package/dist/esm-es5/loader.js +1 -1
  249. package/dist/esm-es5/{utils-6ecd6558.js → utils-47de6f79.js} +1 -1
  250. package/dist/esm-es5/verdocs-auth.entry.js +1 -1
  251. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  252. package/dist/esm-es5/verdocs-button-panel_2.entry.js +1 -1
  253. package/dist/esm-es5/verdocs-button_2.entry.js +1 -0
  254. package/dist/esm-es5/verdocs-checkbox_6.entry.js +1 -0
  255. package/dist/esm-es5/verdocs-contact-picker_2.entry.js +1 -1
  256. package/dist/esm-es5/verdocs-dialog.entry.js +1 -1
  257. package/dist/esm-es5/verdocs-dropdown.entry.js +1 -1
  258. package/dist/esm-es5/verdocs-envelope-document-page.entry.js +1 -1
  259. package/dist/esm-es5/verdocs-envelope-recipient-link_2.entry.js +1 -1
  260. package/dist/esm-es5/verdocs-envelope-recipient-summary.entry.js +1 -1
  261. package/dist/esm-es5/verdocs-envelope-sidebar.entry.js +1 -1
  262. package/dist/esm-es5/verdocs-envelopes-list.entry.js +1 -1
  263. package/dist/esm-es5/verdocs-field-attachment_13.entry.js +1 -1
  264. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  265. package/dist/esm-es5/verdocs-file-chooser.entry.js +1 -0
  266. package/dist/esm-es5/verdocs-kba-dialog_2.entry.js +1 -1
  267. package/dist/esm-es5/verdocs-ok-dialog.entry.js +1 -1
  268. package/dist/esm-es5/verdocs-organization-card_2.entry.js +1 -1
  269. package/dist/esm-es5/verdocs-pagination_2.entry.js +1 -1
  270. package/dist/esm-es5/verdocs-preview_5.entry.js +1 -0
  271. package/dist/esm-es5/verdocs-progress-bar.entry.js +1 -0
  272. package/dist/esm-es5/verdocs-quick-functions.entry.js +1 -1
  273. package/dist/esm-es5/verdocs-radio-button.entry.js +1 -1
  274. package/dist/esm-es5/verdocs-search-box.entry.js +1 -1
  275. package/dist/esm-es5/verdocs-search-tabs.entry.js +1 -1
  276. package/dist/esm-es5/verdocs-sign.entry.js +1 -1
  277. package/dist/esm-es5/verdocs-spinner.entry.js +1 -1
  278. package/dist/esm-es5/verdocs-status-indicator.entry.js +1 -1
  279. package/dist/esm-es5/verdocs-table.entry.js +1 -1
  280. package/dist/esm-es5/verdocs-template-card.entry.js +1 -1
  281. package/dist/esm-es5/verdocs-template-create.entry.js +1 -0
  282. package/dist/esm-es5/verdocs-template-document-page_2.entry.js +1 -1
  283. package/dist/esm-es5/verdocs-template-role-properties.entry.js +1 -1
  284. package/dist/esm-es5/verdocs-template-star.entry.js +1 -1
  285. package/dist/esm-es5/verdocs-template-tags.entry.js +1 -1
  286. package/dist/esm-es5/verdocs-templates-list.entry.js +1 -1
  287. package/dist/esm-es5/verdocs-toggle.entry.js +1 -1
  288. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  289. package/dist/types/components/controls/verdocs-text-input/verdocs-text-input.d.ts +0 -2
  290. package/dist/types/components/embeds/verdocs-build/verdocs-build.d.ts +8 -32
  291. package/dist/types/components/embeds/verdocs-preview/verdocs-preview.d.ts +6 -8
  292. package/dist/types/components/embeds/verdocs-send/verdocs-send.d.ts +7 -6
  293. package/dist/types/components/embeds/verdocs-sign/verdocs-sign.d.ts +3 -3
  294. package/dist/types/components/embeds/verdocs-view/verdocs-view.d.ts +6 -5
  295. package/dist/types/components/envelopes/verdocs-envelope-recipient-link/verdocs-envelope-recipient-link.d.ts +6 -3
  296. package/dist/types/components/envelopes/verdocs-envelope-recipient-summary/verdocs-envelope-recipient-summary.d.ts +6 -3
  297. package/dist/types/components/envelopes/verdocs-envelope-sidebar/verdocs-envelope-sidebar.d.ts +8 -4
  298. package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +6 -7
  299. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +6 -7
  300. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +6 -7
  301. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +6 -7
  302. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +6 -7
  303. package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +44 -30
  304. package/dist/types/components/fields/verdocs-field-radio/verdocs-field-radio.d.ts +6 -7
  305. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +6 -7
  306. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +6 -7
  307. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +5 -12
  308. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +6 -7
  309. package/dist/types/components/templates/verdocs-template-build-tabs/verdocs-template-build-tabs.d.ts +7 -4
  310. package/dist/types/components/templates/verdocs-template-document-page/verdocs-template-document-page.d.ts +7 -4
  311. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.d.ts +7 -8
  312. package/dist/types/components/templates/verdocs-template-fields/verdocs-template-fields.d.ts +6 -8
  313. package/dist/types/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.d.ts +7 -7
  314. package/dist/types/components/templates/verdocs-template-roles/verdocs-template-roles.d.ts +7 -6
  315. package/dist/types/components.d.ts +176 -409
  316. package/dist/types/utils/Datastore.d.ts +24 -0
  317. package/dist/types/utils/Templates.d.ts +3 -0
  318. package/dist/types/utils/utils.d.ts +1 -1
  319. package/dist/verdocs-web-sdk/{p-efcbb3cf.entry.js → p-0ca1e87c.entry.js} +1 -1
  320. package/dist/verdocs-web-sdk/{p-dc271457.entry.js → p-167e3d7e.entry.js} +1 -1
  321. package/dist/verdocs-web-sdk/p-1efce6e0.entry.js +1 -0
  322. package/dist/verdocs-web-sdk/{p-7bd37bca.entry.js → p-2a1287ec.entry.js} +1 -1
  323. package/dist/verdocs-web-sdk/{p-5381847c.system.js → p-2be751c4.system.js} +1 -1
  324. package/dist/verdocs-web-sdk/{p-cb30f11e.entry.js → p-2f73c9de.entry.js} +1 -1
  325. package/dist/verdocs-web-sdk/p-3364cc13.system.entry.js +1 -0
  326. package/dist/verdocs-web-sdk/{p-03d40eb5.system.entry.js → p-37d747fb.system.entry.js} +1 -1
  327. package/dist/verdocs-web-sdk/p-386d789c.system.entry.js +1 -0
  328. package/dist/verdocs-web-sdk/p-3a1fa556.system.entry.js +1 -0
  329. package/dist/verdocs-web-sdk/{p-0fd57194.entry.js → p-41cbf650.entry.js} +1 -1
  330. package/dist/verdocs-web-sdk/{p-26715b8b.entry.js → p-4b36ca30.entry.js} +1 -1
  331. package/dist/verdocs-web-sdk/{p-98501408.system.entry.js → p-4e9e154f.system.entry.js} +1 -1
  332. package/dist/verdocs-web-sdk/{p-a3778013.system.entry.js → p-511a4ecc.system.entry.js} +1 -1
  333. package/dist/verdocs-web-sdk/{p-65a4e01e.entry.js → p-524f37a0.entry.js} +1 -1
  334. package/dist/verdocs-web-sdk/{p-13fe8650.system.entry.js → p-53f4c7c3.system.entry.js} +1 -1
  335. package/dist/verdocs-web-sdk/p-54f085d1.entry.js +1 -0
  336. package/dist/verdocs-web-sdk/{p-d1e64207.entry.js → p-584113d1.entry.js} +1 -1
  337. package/dist/verdocs-web-sdk/{p-f8cad58e.entry.js → p-5f1a000c.entry.js} +1 -1
  338. package/dist/verdocs-web-sdk/{p-256f07fd.system.entry.js → p-62f15675.system.entry.js} +1 -1
  339. package/dist/verdocs-web-sdk/{p-fae63f89.js → p-650697bd.js} +1 -1
  340. package/dist/verdocs-web-sdk/{p-c06d2604.entry.js → p-65c5398e.entry.js} +1 -1
  341. package/dist/verdocs-web-sdk/p-6a95ce12.system.entry.js +1 -0
  342. package/dist/verdocs-web-sdk/{p-0446030b.entry.js → p-6ced37ed.entry.js} +1 -1
  343. package/dist/verdocs-web-sdk/{p-16619383.entry.js → p-7464b84f.entry.js} +1 -1
  344. package/dist/verdocs-web-sdk/{p-6e3fa0c4.system.entry.js → p-761f6656.system.entry.js} +1 -1
  345. package/dist/verdocs-web-sdk/{p-30bc5986.entry.js → p-76cc40fe.entry.js} +1 -1
  346. package/dist/verdocs-web-sdk/{p-c45dc777.entry.js → p-771c2f92.entry.js} +1 -1
  347. package/dist/verdocs-web-sdk/p-78191329.system.entry.js +1 -0
  348. package/dist/verdocs-web-sdk/p-79f842b4.system.entry.js +1 -0
  349. package/dist/verdocs-web-sdk/{p-f3c995d8.system.entry.js → p-7c8938e7.system.entry.js} +1 -1
  350. package/dist/verdocs-web-sdk/p-7e9c499e.js +1 -0
  351. package/dist/verdocs-web-sdk/p-8221a48f.entry.js +1 -0
  352. package/dist/verdocs-web-sdk/p-860b9f94.system.entry.js +1 -0
  353. package/dist/verdocs-web-sdk/p-89cdecac.system.entry.js +1 -0
  354. package/dist/verdocs-web-sdk/p-8a2ff048.entry.js +1 -0
  355. package/dist/verdocs-web-sdk/{p-921b56fd.system.entry.js → p-914e131c.system.entry.js} +1 -1
  356. package/dist/verdocs-web-sdk/{p-5737f0ae.system.js → p-9186f42e.system.js} +1 -1
  357. package/dist/verdocs-web-sdk/{p-8e233a6b.system.entry.js → p-9227d400.system.entry.js} +1 -1
  358. package/dist/verdocs-web-sdk/p-92ce6180.entry.js +1 -0
  359. package/dist/verdocs-web-sdk/p-9567cb7d.system.entry.js +1 -0
  360. package/dist/verdocs-web-sdk/p-9812e99d.system.entry.js +1 -0
  361. package/dist/verdocs-web-sdk/{p-4b4801ad.system.entry.js → p-982f1b36.system.entry.js} +1 -1
  362. package/dist/verdocs-web-sdk/{p-ed6a5478.system.entry.js → p-9d0b0e36.system.entry.js} +1 -1
  363. package/dist/verdocs-web-sdk/{p-4266e717.system.entry.js → p-a08886c1.system.entry.js} +1 -1
  364. package/dist/verdocs-web-sdk/{p-e25e1dcf.entry.js → p-a165607e.entry.js} +1 -1
  365. package/dist/verdocs-web-sdk/p-a242aa80.system.entry.js +1 -0
  366. package/dist/verdocs-web-sdk/p-a7db9f1f.system.entry.js +1 -0
  367. package/dist/verdocs-web-sdk/{p-5d6a2fda.system.entry.js → p-a9635106.system.entry.js} +1 -1
  368. package/dist/verdocs-web-sdk/p-aebb0cd9.system.entry.js +1 -0
  369. package/dist/verdocs-web-sdk/p-b00ef194.system.entry.js +1 -0
  370. package/dist/verdocs-web-sdk/p-b0b958a0.entry.js +1 -0
  371. package/dist/verdocs-web-sdk/p-b8737f7b.entry.js +1 -0
  372. package/dist/verdocs-web-sdk/{p-49988769.js → p-b9654a5e.js} +2 -2
  373. package/dist/verdocs-web-sdk/p-bb0effe1.entry.js +1 -0
  374. package/dist/verdocs-web-sdk/p-bcc23811.entry.js +1 -0
  375. package/dist/verdocs-web-sdk/{p-281e63e5.entry.js → p-bd7406ae.entry.js} +1 -1
  376. package/dist/verdocs-web-sdk/{p-e8d91957.entry.js → p-bdd7b3d3.entry.js} +1 -1
  377. package/dist/verdocs-web-sdk/{p-c5818330.entry.js → p-c1728f5c.entry.js} +1 -1
  378. package/dist/verdocs-web-sdk/p-c18c718f.system.js +1 -0
  379. package/dist/verdocs-web-sdk/{p-731066de.system.entry.js → p-c6fd3e53.system.entry.js} +1 -1
  380. package/dist/verdocs-web-sdk/p-c7cd6843.entry.js +1 -0
  381. package/dist/verdocs-web-sdk/{p-4f7c72f9.system.entry.js → p-c9f40726.system.entry.js} +1 -1
  382. package/dist/verdocs-web-sdk/p-ca712f40.system.entry.js +1 -0
  383. package/dist/verdocs-web-sdk/p-cbb75c5e.system.entry.js +1 -0
  384. package/dist/verdocs-web-sdk/{p-751b0280.entry.js → p-d475fff3.entry.js} +1 -1
  385. package/dist/verdocs-web-sdk/{p-91c4298b.system.entry.js → p-d5870e33.system.entry.js} +1 -1
  386. package/dist/verdocs-web-sdk/{p-e5126f26.system.entry.js → p-d8dae4e9.system.entry.js} +1 -1
  387. package/dist/verdocs-web-sdk/p-d93c7661.entry.js +1 -0
  388. package/dist/verdocs-web-sdk/{p-93093a7a.system.entry.js → p-d98cbd0f.system.entry.js} +1 -1
  389. package/dist/verdocs-web-sdk/p-da4d4eed.js +1 -0
  390. package/dist/verdocs-web-sdk/{p-2298c22e.entry.js → p-ddb17b3e.entry.js} +1 -1
  391. package/dist/verdocs-web-sdk/p-df04f0ca.entry.js +1 -0
  392. package/dist/verdocs-web-sdk/p-e2b70dfb.system.js +1 -0
  393. package/dist/verdocs-web-sdk/{p-2aea0c7b.system.entry.js → p-e438bd02.system.entry.js} +1 -1
  394. package/dist/verdocs-web-sdk/p-e5044463.entry.js +1 -0
  395. package/dist/verdocs-web-sdk/{p-b066c4f2.system.entry.js → p-e5d291f3.system.entry.js} +1 -1
  396. package/dist/verdocs-web-sdk/{p-7f1e0c5e.entry.js → p-e6dbb0f7.entry.js} +1 -1
  397. package/dist/verdocs-web-sdk/{p-c4d61c66.entry.js → p-e83cd333.entry.js} +1 -1
  398. package/dist/verdocs-web-sdk/p-efd8149f.system.js +1 -0
  399. package/dist/verdocs-web-sdk/p-f4fcf7a5.entry.js +1 -0
  400. package/dist/verdocs-web-sdk/{p-97b951e6.system.entry.js → p-f5d01982.system.entry.js} +1 -1
  401. package/dist/verdocs-web-sdk/p-f65a9b03.entry.js +1 -0
  402. package/dist/verdocs-web-sdk/p-f7abe6e2.entry.js +1 -0
  403. package/dist/verdocs-web-sdk/{p-6e55af26.system.entry.js → p-f9b37af2.system.entry.js} +1 -1
  404. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  405. package/dist/verdocs-web-sdk/verdocs-web-sdk.js +1 -1
  406. package/package.json +3 -3
  407. package/dist/cjs/EnvelopeStore-f1cd9bd3.js +0 -96
  408. package/dist/cjs/Icons-9a6f2f7c.js +0 -86
  409. package/dist/cjs/TemplateFieldStore-7bcc0f7a.js +0 -44
  410. package/dist/cjs/TemplateRoleStore-e8bb00ec.js +0 -51
  411. package/dist/cjs/TemplateStore-db21be4d.js +0 -99
  412. package/dist/cjs/index-2a189d85.js +0 -3721
  413. package/dist/cjs/index-76d03a35.js +0 -196
  414. package/dist/cjs/verdocs-loader.cjs.entry.js +0 -20
  415. package/dist/collection/components/templates/verdocs-template-attachments/verdocs-template-attachments.css +0 -120
  416. package/dist/collection/components/templates/verdocs-template-attachments/verdocs-template-attachments.js +0 -284
  417. package/dist/collection/components/templates/verdocs-template-name/verdocs-template-name.css +0 -0
  418. package/dist/collection/components/templates/verdocs-template-name/verdocs-template-name.js +0 -196
  419. package/dist/collection/components/templates/verdocs-template-visibillity/verdocs-template-visibility.css +0 -86
  420. package/dist/collection/components/templates/verdocs-template-visibillity/verdocs-template-visibility.js +0 -203
  421. package/dist/collection/utils/EnvelopeStore.js +0 -90
  422. package/dist/collection/utils/TemplateFieldStore.js +0 -36
  423. package/dist/collection/utils/TemplateRoleStore.js +0 -41
  424. package/dist/collection/utils/TemplateStore.js +0 -94
  425. package/dist/components/p-00d39dca.js +0 -39
  426. package/dist/components/p-0933fb2d.js +0 -127
  427. package/dist/components/p-09d28afd.js +0 -97
  428. package/dist/components/p-3555cef1.js +0 -122
  429. package/dist/components/p-474b6663.js +0 -1314
  430. package/dist/components/p-821f2345.js +0 -93
  431. package/dist/components/p-9b5a4f9e.js +0 -44
  432. package/dist/components/p-a706bac9.js +0 -3719
  433. package/dist/components/p-b0766439.js +0 -76
  434. package/dist/components/p-ed9a1a21.js +0 -200
  435. package/dist/components/verdocs-template-attachments.d.ts +0 -11
  436. package/dist/components/verdocs-template-attachments.js +0 -6
  437. package/dist/components/verdocs-template-name.d.ts +0 -11
  438. package/dist/components/verdocs-template-name.js +0 -6
  439. package/dist/components/verdocs-template-visibility.d.ts +0 -11
  440. package/dist/components/verdocs-template-visibility.js +0 -6
  441. package/dist/esm/EnvelopeStore-4599b7d3.js +0 -93
  442. package/dist/esm/Icons-faf0377f.js +0 -76
  443. package/dist/esm/TemplateFieldStore-909147d8.js +0 -39
  444. package/dist/esm/TemplateRoleStore-2fef1fdb.js +0 -44
  445. package/dist/esm/TemplateStore-ace14a8b.js +0 -97
  446. package/dist/esm/index-24d8ae6a.js +0 -194
  447. package/dist/esm/index-7588a071.js +0 -3719
  448. package/dist/esm/verdocs-file-chooser_2.entry.js +0 -53
  449. package/dist/esm/verdocs-loader.entry.js +0 -16
  450. package/dist/esm-es5/EnvelopeStore-4599b7d3.js +0 -1
  451. package/dist/esm-es5/Icons-faf0377f.js +0 -1
  452. package/dist/esm-es5/TemplateFieldStore-909147d8.js +0 -1
  453. package/dist/esm-es5/TemplateRoleStore-2fef1fdb.js +0 -1
  454. package/dist/esm-es5/TemplateStore-ace14a8b.js +0 -1
  455. package/dist/esm-es5/index-24d8ae6a.js +0 -1
  456. package/dist/esm-es5/index-7588a071.js +0 -1
  457. package/dist/esm-es5/index-c8587076.js +0 -1
  458. package/dist/esm-es5/verdocs-button_3.entry.js +0 -1
  459. package/dist/esm-es5/verdocs-checkbox_4.entry.js +0 -1
  460. package/dist/esm-es5/verdocs-file-chooser_2.entry.js +0 -1
  461. package/dist/esm-es5/verdocs-loader.entry.js +0 -1
  462. package/dist/esm-es5/verdocs-preview_9.entry.js +0 -1
  463. package/dist/types/components/templates/verdocs-template-attachments/verdocs-template-attachments.d.ts +0 -56
  464. package/dist/types/components/templates/verdocs-template-name/verdocs-template-name.d.ts +0 -41
  465. package/dist/types/components/templates/verdocs-template-visibillity/verdocs-template-visibility.d.ts +0 -42
  466. package/dist/types/utils/EnvelopeStore.d.ts +0 -12
  467. package/dist/types/utils/TemplateFieldStore.d.ts +0 -9
  468. package/dist/types/utils/TemplateRoleStore.d.ts +0 -11
  469. package/dist/types/utils/TemplateStore.d.ts +0 -16
  470. package/dist/verdocs-web-sdk/p-0c51c5be.entry.js +0 -1
  471. package/dist/verdocs-web-sdk/p-194f9f4d.entry.js +0 -1
  472. package/dist/verdocs-web-sdk/p-1ce2f724.system.entry.js +0 -1
  473. package/dist/verdocs-web-sdk/p-2211234d.system.js +0 -1
  474. package/dist/verdocs-web-sdk/p-2305c1e8.system.entry.js +0 -1
  475. package/dist/verdocs-web-sdk/p-261d5b4a.system.entry.js +0 -1
  476. package/dist/verdocs-web-sdk/p-341d540f.system.entry.js +0 -1
  477. package/dist/verdocs-web-sdk/p-368a36ea.system.js +0 -1
  478. package/dist/verdocs-web-sdk/p-36b5d46e.entry.js +0 -1
  479. package/dist/verdocs-web-sdk/p-569434fb.system.js +0 -1
  480. package/dist/verdocs-web-sdk/p-56c1ebd6.entry.js +0 -1
  481. package/dist/verdocs-web-sdk/p-5bf2910c.system.entry.js +0 -1
  482. package/dist/verdocs-web-sdk/p-6bc1b9f4.entry.js +0 -1
  483. package/dist/verdocs-web-sdk/p-6fda3817.js +0 -1
  484. package/dist/verdocs-web-sdk/p-77ec43a3.system.entry.js +0 -1
  485. package/dist/verdocs-web-sdk/p-79e222f8.entry.js +0 -1
  486. package/dist/verdocs-web-sdk/p-7a5b80f8.entry.js +0 -1
  487. package/dist/verdocs-web-sdk/p-7d18cb23.system.entry.js +0 -1
  488. package/dist/verdocs-web-sdk/p-7d593603.system.js +0 -1
  489. package/dist/verdocs-web-sdk/p-9fabdbb1.system.entry.js +0 -1
  490. package/dist/verdocs-web-sdk/p-9ff1be63.entry.js +0 -1
  491. package/dist/verdocs-web-sdk/p-a04aac80.entry.js +0 -1
  492. package/dist/verdocs-web-sdk/p-a1a2c13b.entry.js +0 -1
  493. package/dist/verdocs-web-sdk/p-a706bac9.js +0 -1
  494. package/dist/verdocs-web-sdk/p-b0766439.js +0 -1
  495. package/dist/verdocs-web-sdk/p-b0bc8c15.system.entry.js +0 -1
  496. package/dist/verdocs-web-sdk/p-b17843d9.system.js +0 -1
  497. package/dist/verdocs-web-sdk/p-b1fcc883.entry.js +0 -1
  498. package/dist/verdocs-web-sdk/p-b56793c4.entry.js +0 -1
  499. package/dist/verdocs-web-sdk/p-b84d1a25.system.entry.js +0 -1
  500. package/dist/verdocs-web-sdk/p-bb253149.js +0 -1
  501. package/dist/verdocs-web-sdk/p-bd642df2.js +0 -1
  502. package/dist/verdocs-web-sdk/p-c7115b35.system.entry.js +0 -1
  503. package/dist/verdocs-web-sdk/p-cd546dbe.system.js +0 -1
  504. package/dist/verdocs-web-sdk/p-cde4c155.js +0 -1
  505. package/dist/verdocs-web-sdk/p-d3ddc7c8.system.entry.js +0 -1
  506. package/dist/verdocs-web-sdk/p-d86c8c1a.entry.js +0 -1
  507. package/dist/verdocs-web-sdk/p-dbddb752.system.entry.js +0 -1
  508. package/dist/verdocs-web-sdk/p-dcd3eb1b.js +0 -1
  509. package/dist/verdocs-web-sdk/p-e123f19c.entry.js +0 -1
  510. package/dist/verdocs-web-sdk/p-e294b6c2.system.entry.js +0 -1
  511. package/dist/verdocs-web-sdk/p-e48b387d.system.entry.js +0 -1
  512. package/dist/verdocs-web-sdk/p-e83a163d.entry.js +0 -1
  513. package/dist/verdocs-web-sdk/p-f5064e0c.system.js +0 -1
  514. package/dist/verdocs-web-sdk/p-f79b8537.system.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() {