@verdocs/web-sdk 1.12.44 → 1.13.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 (269) hide show
  1. package/dist/cjs/{templateStore-1862f03c.js → TemplateStore-01ff3237.js} +77 -43
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/verdocs-build.cjs.entry.js +12 -15
  4. package/dist/cjs/verdocs-button-panel_3.cjs.entry.js +32 -31
  5. package/dist/cjs/verdocs-field-attachment.cjs.entry.js +2 -3
  6. package/dist/cjs/verdocs-field-checkbox.cjs.entry.js +3 -4
  7. package/dist/cjs/verdocs-field-date.cjs.entry.js +3 -4
  8. package/dist/cjs/verdocs-field-dropdown.cjs.entry.js +3 -4
  9. package/dist/cjs/verdocs-field-initial.cjs.entry.js +3 -4
  10. package/dist/cjs/verdocs-field-payment.cjs.entry.js +2 -3
  11. package/dist/cjs/verdocs-field-radio-button.cjs.entry.js +3 -4
  12. package/dist/cjs/verdocs-field-signature.cjs.entry.js +3 -4
  13. package/dist/cjs/verdocs-field-textarea.cjs.entry.js +3 -4
  14. package/dist/cjs/verdocs-field-textbox.cjs.entry.js +3 -4
  15. package/dist/cjs/verdocs-field-timestamp.cjs.entry.js +3 -4
  16. package/dist/cjs/verdocs-preview.cjs.entry.js +21 -17
  17. package/dist/cjs/verdocs-send.cjs.entry.js +31 -29
  18. package/dist/cjs/verdocs-template-attachments.cjs.entry.js +20 -11
  19. package/dist/cjs/verdocs-template-create_3.cjs.entry.js +76 -85
  20. package/dist/cjs/verdocs-template-name.cjs.entry.js +28 -20
  21. package/dist/cjs/verdocs-template-properties.cjs.entry.js +14 -15
  22. package/dist/cjs/verdocs-template-reminders.cjs.entry.js +24 -19
  23. package/dist/cjs/verdocs-template-role-properties_2.cjs.entry.js +33 -43
  24. package/dist/cjs/verdocs-template-visibility.cjs.entry.js +29 -22
  25. package/dist/cjs/verdocs-web-sdk.cjs.js +1 -1
  26. package/dist/collection/components/controls/verdocs-button-panel/verdocs-button-panel.js +1 -2
  27. package/dist/collection/components/controls/verdocs-help-icon/verdocs-help-icon.stories.js +1 -1
  28. package/dist/collection/components/controls/verdocs-toolbar-icon/verdocs-toolbar-icon.stories.js +1 -1
  29. package/dist/collection/components/embeds/verdocs-build/verdocs-build.js +12 -13
  30. package/dist/collection/components/embeds/verdocs-preview/verdocs-preview.js +21 -16
  31. package/dist/collection/components/embeds/verdocs-send/verdocs-send.js +31 -28
  32. package/dist/collection/components/embeds/verdocs-view/verdocs-view.js +2 -2
  33. package/dist/collection/components/fields/verdocs-field-attachment/verdocs-field-attachment.js +20 -2
  34. package/dist/collection/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.js +21 -3
  35. package/dist/collection/components/fields/verdocs-field-date/verdocs-field-date.js +21 -3
  36. package/dist/collection/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.js +21 -3
  37. package/dist/collection/components/fields/verdocs-field-initial/verdocs-field-initial.js +21 -3
  38. package/dist/collection/components/fields/verdocs-field-payment/verdocs-field-payment.js +20 -2
  39. package/dist/collection/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.js +21 -3
  40. package/dist/collection/components/fields/verdocs-field-signature/verdocs-field-signature.js +21 -3
  41. package/dist/collection/components/fields/verdocs-field-textarea/verdocs-field-textarea.js +21 -3
  42. package/dist/collection/components/fields/verdocs-field-textbox/verdocs-field-textbox.js +21 -3
  43. package/dist/collection/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.js +21 -3
  44. package/dist/collection/components/templates/verdocs-template-attachments/verdocs-template-attachments.js +20 -15
  45. package/dist/collection/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.js +32 -30
  46. package/dist/collection/components/templates/verdocs-template-fields/verdocs-template-fields.js +32 -32
  47. package/dist/collection/components/templates/verdocs-template-name/verdocs-template-name.js +27 -19
  48. package/dist/collection/components/templates/verdocs-template-properties/verdocs-template-properties.js +13 -15
  49. package/dist/collection/components/templates/verdocs-template-reminders/verdocs-template-reminders.js +25 -20
  50. package/dist/collection/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.js +19 -24
  51. package/dist/collection/components/templates/verdocs-template-roles/verdocs-template-roles.js +46 -56
  52. package/dist/collection/components/templates/verdocs-template-sender/verdocs-template-sender.js +13 -18
  53. package/dist/collection/components/templates/verdocs-template-visibillity/verdocs-template-visibility.js +27 -20
  54. package/dist/collection/utils/TemplateStore.js +77 -0
  55. package/dist/components/{templateStore.js → TemplateStore.js} +76 -43
  56. package/dist/components/Templates.js +65 -45
  57. package/dist/components/verdocs-build.js +12 -13
  58. package/dist/components/verdocs-field-attachment.js +3 -2
  59. package/dist/components/verdocs-field-checkbox.js +4 -3
  60. package/dist/components/verdocs-field-date.js +4 -3
  61. package/dist/components/verdocs-field-dropdown.js +4 -3
  62. package/dist/components/verdocs-field-initial.js +4 -3
  63. package/dist/components/verdocs-field-payment.js +3 -2
  64. package/dist/components/verdocs-field-radio-button.js +4 -3
  65. package/dist/components/verdocs-field-signature.js +4 -3
  66. package/dist/components/verdocs-field-textarea.js +4 -3
  67. package/dist/components/verdocs-field-textbox.js +4 -3
  68. package/dist/components/verdocs-field-timestamp.js +4 -3
  69. package/dist/components/verdocs-preview.js +21 -16
  70. package/dist/components/verdocs-search-activity2.js +1 -1
  71. package/dist/components/verdocs-send.js +31 -28
  72. package/dist/components/verdocs-sign.js +1 -2
  73. package/dist/components/verdocs-template-attachments.js +21 -12
  74. package/dist/components/verdocs-template-create2.js +1 -1
  75. package/dist/components/verdocs-template-field-properties2.js +32 -30
  76. package/dist/components/verdocs-template-fields2.js +32 -32
  77. package/dist/components/verdocs-template-name.js +28 -20
  78. package/dist/components/verdocs-template-properties.js +13 -15
  79. package/dist/components/verdocs-template-reminders.js +25 -20
  80. package/dist/components/verdocs-template-role-properties2.js +19 -24
  81. package/dist/components/verdocs-template-roles2.js +46 -56
  82. package/dist/components/verdocs-template-sender2.js +14 -19
  83. package/dist/components/verdocs-template-visibility.js +28 -21
  84. package/dist/components/verdocs-view2.js +20 -2
  85. package/dist/docs.json +189 -2
  86. package/dist/esm/{templateStore-17c872da.js → TemplateStore-91a71f46.js} +76 -43
  87. package/dist/esm/loader.js +1 -1
  88. package/dist/esm/verdocs-build.entry.js +12 -15
  89. package/dist/esm/verdocs-button-panel_3.entry.js +32 -31
  90. package/dist/esm/verdocs-field-attachment.entry.js +2 -3
  91. package/dist/esm/verdocs-field-checkbox.entry.js +3 -4
  92. package/dist/esm/verdocs-field-date.entry.js +3 -4
  93. package/dist/esm/verdocs-field-dropdown.entry.js +3 -4
  94. package/dist/esm/verdocs-field-initial.entry.js +3 -4
  95. package/dist/esm/verdocs-field-payment.entry.js +2 -3
  96. package/dist/esm/verdocs-field-radio-button.entry.js +3 -4
  97. package/dist/esm/verdocs-field-signature.entry.js +3 -4
  98. package/dist/esm/verdocs-field-textarea.entry.js +3 -4
  99. package/dist/esm/verdocs-field-textbox.entry.js +3 -4
  100. package/dist/esm/verdocs-field-timestamp.entry.js +3 -4
  101. package/dist/esm/verdocs-preview.entry.js +21 -17
  102. package/dist/esm/verdocs-send.entry.js +31 -29
  103. package/dist/esm/verdocs-template-attachments.entry.js +20 -11
  104. package/dist/esm/verdocs-template-create_3.entry.js +76 -85
  105. package/dist/esm/verdocs-template-name.entry.js +26 -18
  106. package/dist/esm/verdocs-template-properties.entry.js +14 -15
  107. package/dist/esm/verdocs-template-reminders.entry.js +24 -19
  108. package/dist/esm/verdocs-template-role-properties_2.entry.js +31 -41
  109. package/dist/esm/verdocs-template-visibility.entry.js +27 -20
  110. package/dist/esm/verdocs-web-sdk.js +1 -1
  111. package/dist/esm-es5/TemplateStore-91a71f46.js +1 -0
  112. package/dist/esm-es5/loader.js +1 -1
  113. package/dist/esm-es5/verdocs-build.entry.js +1 -1
  114. package/dist/esm-es5/verdocs-button-panel_3.entry.js +1 -1
  115. package/dist/esm-es5/verdocs-field-attachment.entry.js +1 -1
  116. package/dist/esm-es5/verdocs-field-checkbox.entry.js +1 -1
  117. package/dist/esm-es5/verdocs-field-date.entry.js +1 -1
  118. package/dist/esm-es5/verdocs-field-dropdown.entry.js +1 -1
  119. package/dist/esm-es5/verdocs-field-initial.entry.js +1 -1
  120. package/dist/esm-es5/verdocs-field-payment.entry.js +1 -1
  121. package/dist/esm-es5/verdocs-field-radio-button.entry.js +1 -1
  122. package/dist/esm-es5/verdocs-field-signature.entry.js +1 -1
  123. package/dist/esm-es5/verdocs-field-textarea.entry.js +1 -1
  124. package/dist/esm-es5/verdocs-field-textbox.entry.js +1 -1
  125. package/dist/esm-es5/verdocs-field-timestamp.entry.js +1 -1
  126. package/dist/esm-es5/verdocs-preview.entry.js +1 -1
  127. package/dist/esm-es5/verdocs-send.entry.js +1 -1
  128. package/dist/esm-es5/verdocs-template-attachments.entry.js +1 -1
  129. package/dist/esm-es5/verdocs-template-create_3.entry.js +1 -1
  130. package/dist/esm-es5/verdocs-template-name.entry.js +1 -1
  131. package/dist/esm-es5/verdocs-template-properties.entry.js +1 -1
  132. package/dist/esm-es5/verdocs-template-reminders.entry.js +1 -1
  133. package/dist/esm-es5/verdocs-template-role-properties_2.entry.js +1 -1
  134. package/dist/esm-es5/verdocs-template-visibility.entry.js +1 -1
  135. package/dist/esm-es5/verdocs-web-sdk.js +1 -1
  136. package/dist/types/components/controls/verdocs-button-panel/verdocs-button-panel.d.ts +1 -2
  137. package/dist/types/components/embeds/verdocs-build/verdocs-build.d.ts +2 -0
  138. package/dist/types/components/embeds/verdocs-preview/verdocs-preview.d.ts +3 -1
  139. package/dist/types/components/embeds/verdocs-send/verdocs-send.d.ts +3 -1
  140. package/dist/types/components/fields/verdocs-field-attachment/verdocs-field-attachment.d.ts +4 -0
  141. package/dist/types/components/fields/verdocs-field-checkbox/verdocs-field-checkbox.d.ts +4 -0
  142. package/dist/types/components/fields/verdocs-field-date/verdocs-field-date.d.ts +4 -0
  143. package/dist/types/components/fields/verdocs-field-dropdown/verdocs-field-dropdown.d.ts +4 -0
  144. package/dist/types/components/fields/verdocs-field-initial/verdocs-field-initial.d.ts +4 -0
  145. package/dist/types/components/fields/verdocs-field-payment/verdocs-field-payment.d.ts +4 -0
  146. package/dist/types/components/fields/verdocs-field-radio-button-group/verdocs-field-radio-button.d.ts +4 -0
  147. package/dist/types/components/fields/verdocs-field-signature/verdocs-field-signature.d.ts +4 -0
  148. package/dist/types/components/fields/verdocs-field-textarea/verdocs-field-textarea.d.ts +4 -0
  149. package/dist/types/components/fields/verdocs-field-textbox/verdocs-field-textbox.d.ts +4 -0
  150. package/dist/types/components/fields/verdocs-field-timestamp/verdocs-field-timestamp.d.ts +4 -0
  151. package/dist/types/components/templates/verdocs-template-attachments/verdocs-template-attachments.d.ts +2 -1
  152. package/dist/types/components/templates/verdocs-template-field-properties/verdocs-template-field-properties.d.ts +2 -0
  153. package/dist/types/components/templates/verdocs-template-fields/verdocs-template-fields.d.ts +2 -0
  154. package/dist/types/components/templates/verdocs-template-name/verdocs-template-name.d.ts +2 -1
  155. package/dist/types/components/templates/verdocs-template-properties/verdocs-template-properties.d.ts +2 -2
  156. package/dist/types/components/templates/verdocs-template-reminders/verdocs-template-reminders.d.ts +2 -1
  157. package/dist/types/components/templates/verdocs-template-role-properties/verdocs-template-role-properties.d.ts +2 -0
  158. package/dist/types/components/templates/verdocs-template-roles/verdocs-template-roles.d.ts +2 -1
  159. package/dist/types/components/templates/verdocs-template-sender/verdocs-template-sender.d.ts +2 -0
  160. package/dist/types/components/templates/verdocs-template-visibillity/verdocs-template-visibility.d.ts +2 -1
  161. package/dist/types/components.d.ts +88 -0
  162. package/dist/types/utils/TemplateStore.d.ts +14 -0
  163. package/dist/verdocs-web-sdk/p-1b21b08d.system.entry.js +1 -0
  164. package/dist/verdocs-web-sdk/p-227d07a2.entry.js +1 -0
  165. package/dist/verdocs-web-sdk/p-2cb414ec.system.entry.js +1 -0
  166. package/dist/verdocs-web-sdk/p-2d39a000.entry.js +1 -0
  167. package/dist/verdocs-web-sdk/p-34d3d150.system.entry.js +1 -0
  168. package/dist/verdocs-web-sdk/p-36a31514.entry.js +1 -0
  169. package/dist/verdocs-web-sdk/p-37dd3108.system.entry.js +1 -0
  170. package/dist/verdocs-web-sdk/p-38d0af92.entry.js +1 -0
  171. package/dist/verdocs-web-sdk/p-47bba747.entry.js +1 -0
  172. package/dist/verdocs-web-sdk/p-4eb829ca.system.entry.js +1 -0
  173. package/dist/verdocs-web-sdk/p-5a3d9d9f.system.entry.js +1 -0
  174. package/dist/verdocs-web-sdk/p-5b4dd6a0.entry.js +1 -0
  175. package/dist/verdocs-web-sdk/p-62e12e8f.system.entry.js +1 -0
  176. package/dist/verdocs-web-sdk/p-650b9205.system.entry.js +1 -0
  177. package/dist/verdocs-web-sdk/p-6a0e0615.system.entry.js +1 -0
  178. package/dist/verdocs-web-sdk/p-6caf1137.system.js +1 -1
  179. package/dist/verdocs-web-sdk/p-6dedf123.entry.js +1 -0
  180. package/dist/verdocs-web-sdk/p-6f511c7b.entry.js +1 -0
  181. package/dist/verdocs-web-sdk/p-7306abd0.system.entry.js +1 -0
  182. package/dist/verdocs-web-sdk/p-7464fd3c.system.entry.js +1 -0
  183. package/dist/verdocs-web-sdk/p-76938033.system.entry.js +1 -0
  184. package/dist/verdocs-web-sdk/p-809947d4.system.entry.js +1 -0
  185. package/dist/verdocs-web-sdk/p-8c9caa8a.system.entry.js +1 -0
  186. package/dist/verdocs-web-sdk/p-8d32078d.entry.js +1 -0
  187. package/dist/verdocs-web-sdk/p-8eca5dd8.entry.js +1 -0
  188. package/dist/verdocs-web-sdk/p-92a2bb47.entry.js +1 -0
  189. package/dist/verdocs-web-sdk/p-a3747387.system.entry.js +1 -0
  190. package/dist/verdocs-web-sdk/p-a5970648.system.entry.js +1 -0
  191. package/dist/verdocs-web-sdk/p-ab6bd525.entry.js +1 -0
  192. package/dist/verdocs-web-sdk/p-ba62a8f6.system.entry.js +1 -0
  193. package/dist/verdocs-web-sdk/p-c25d965d.js +1 -0
  194. package/dist/verdocs-web-sdk/p-c2770861.system.entry.js +1 -0
  195. package/dist/verdocs-web-sdk/p-c35bbaef.entry.js +1 -0
  196. package/dist/verdocs-web-sdk/p-c8901fde.entry.js +1 -0
  197. package/dist/verdocs-web-sdk/p-cc396cda.entry.js +1 -0
  198. package/dist/verdocs-web-sdk/p-ce6780e4.system.entry.js +1 -0
  199. package/dist/verdocs-web-sdk/p-d63fe7e9.system.entry.js +1 -0
  200. package/dist/verdocs-web-sdk/p-d7ca70cc.entry.js +1 -0
  201. package/dist/verdocs-web-sdk/p-db2b75bc.system.entry.js +1 -0
  202. package/dist/verdocs-web-sdk/p-de4c38a1.entry.js +1 -0
  203. package/dist/verdocs-web-sdk/p-e4b56475.entry.js +1 -0
  204. package/dist/verdocs-web-sdk/p-e9751ec7.entry.js +1 -0
  205. package/dist/verdocs-web-sdk/p-e9c9cdf5.entry.js +1 -0
  206. package/dist/verdocs-web-sdk/p-ec81b1f2.entry.js +1 -0
  207. package/dist/verdocs-web-sdk/p-f1edfd5a.system.js +1 -0
  208. package/dist/verdocs-web-sdk/p-f201e410.system.entry.js +1 -0
  209. package/dist/verdocs-web-sdk/p-f23a6019.entry.js +1 -0
  210. package/dist/verdocs-web-sdk/verdocs-web-sdk.esm.js +1 -1
  211. package/package.json +2 -2
  212. package/dist/cjs/Templates-f310df2f.js +0 -49
  213. package/dist/collection/utils/Templates.js +0 -44
  214. package/dist/collection/utils/templateStore.js +0 -46
  215. package/dist/components/Primitives.js +0 -20
  216. package/dist/components/Templates2.js +0 -67
  217. package/dist/esm/Templates-d94fb9d5.js +0 -47
  218. package/dist/esm-es5/Templates-d94fb9d5.js +0 -1
  219. package/dist/esm-es5/templateStore-17c872da.js +0 -1
  220. package/dist/types/utils/Templates.d.ts +0 -2
  221. package/dist/types/utils/templateStore.d.ts +0 -14
  222. package/dist/verdocs-web-sdk/p-02316241.system.js +0 -1
  223. package/dist/verdocs-web-sdk/p-0e727b1c.system.entry.js +0 -1
  224. package/dist/verdocs-web-sdk/p-0fd75d91.system.entry.js +0 -1
  225. package/dist/verdocs-web-sdk/p-1cfb7ff5.entry.js +0 -1
  226. package/dist/verdocs-web-sdk/p-1e35f143.entry.js +0 -1
  227. package/dist/verdocs-web-sdk/p-28976191.system.entry.js +0 -1
  228. package/dist/verdocs-web-sdk/p-2e0980f3.system.entry.js +0 -1
  229. package/dist/verdocs-web-sdk/p-38368af4.system.entry.js +0 -1
  230. package/dist/verdocs-web-sdk/p-3ba4df31.system.entry.js +0 -1
  231. package/dist/verdocs-web-sdk/p-41d9b35b.system.entry.js +0 -1
  232. package/dist/verdocs-web-sdk/p-48eb46ed.system.entry.js +0 -1
  233. package/dist/verdocs-web-sdk/p-519127ef.entry.js +0 -1
  234. package/dist/verdocs-web-sdk/p-552441c6.system.entry.js +0 -1
  235. package/dist/verdocs-web-sdk/p-645e4723.system.entry.js +0 -1
  236. package/dist/verdocs-web-sdk/p-66158f86.system.entry.js +0 -1
  237. package/dist/verdocs-web-sdk/p-667cbdb4.system.entry.js +0 -1
  238. package/dist/verdocs-web-sdk/p-6ec15fc0.entry.js +0 -1
  239. package/dist/verdocs-web-sdk/p-71b8bb54.system.js +0 -1
  240. package/dist/verdocs-web-sdk/p-72b936b3.entry.js +0 -1
  241. package/dist/verdocs-web-sdk/p-73452912.system.entry.js +0 -1
  242. package/dist/verdocs-web-sdk/p-753a6e4a.entry.js +0 -1
  243. package/dist/verdocs-web-sdk/p-7bc337ce.entry.js +0 -1
  244. package/dist/verdocs-web-sdk/p-808f6a46.entry.js +0 -1
  245. package/dist/verdocs-web-sdk/p-81b24500.entry.js +0 -1
  246. package/dist/verdocs-web-sdk/p-89963a6e.system.entry.js +0 -1
  247. package/dist/verdocs-web-sdk/p-8be51136.entry.js +0 -1
  248. package/dist/verdocs-web-sdk/p-8cba983e.entry.js +0 -1
  249. package/dist/verdocs-web-sdk/p-90c71302.entry.js +0 -1
  250. package/dist/verdocs-web-sdk/p-94fa2efb.system.entry.js +0 -1
  251. package/dist/verdocs-web-sdk/p-9e9de6e3.system.entry.js +0 -1
  252. package/dist/verdocs-web-sdk/p-9eb2690b.entry.js +0 -1
  253. package/dist/verdocs-web-sdk/p-a612d29b.system.entry.js +0 -1
  254. package/dist/verdocs-web-sdk/p-b24324f6.entry.js +0 -1
  255. package/dist/verdocs-web-sdk/p-b2c96afc.entry.js +0 -1
  256. package/dist/verdocs-web-sdk/p-b355484e.system.entry.js +0 -1
  257. package/dist/verdocs-web-sdk/p-be25b61f.js +0 -1
  258. package/dist/verdocs-web-sdk/p-bf8cc58c.entry.js +0 -1
  259. package/dist/verdocs-web-sdk/p-c0c4cbe6.entry.js +0 -1
  260. package/dist/verdocs-web-sdk/p-c60c9371.entry.js +0 -1
  261. package/dist/verdocs-web-sdk/p-c83042ac.entry.js +0 -1
  262. package/dist/verdocs-web-sdk/p-c903c4a7.js +0 -1
  263. package/dist/verdocs-web-sdk/p-cae4a96e.system.entry.js +0 -1
  264. package/dist/verdocs-web-sdk/p-ce14f118.system.entry.js +0 -1
  265. package/dist/verdocs-web-sdk/p-cf09e52c.entry.js +0 -1
  266. package/dist/verdocs-web-sdk/p-dca6db47.system.entry.js +0 -1
  267. package/dist/verdocs-web-sdk/p-f3206b9e.system.entry.js +0 -1
  268. package/dist/verdocs-web-sdk/p-f6f1eb46.entry.js +0 -1
  269. package/dist/verdocs-web-sdk/p-fd463970.entry.js +0 -1
@@ -4,8 +4,7 @@ import './Types.js';
4
4
  import { u as updateRole, c as createRole, d as defineCustomElement$3 } from './verdocs-template-role-properties2.js';
5
5
  import { V as VerdocsEndpoint, T as TemplateSenderTypes } from './VerdocsEndpoint.js';
6
6
  import { g as getRGBA } from './Colors.js';
7
- import { s as state } from './templateStore.js';
8
- import { l as loadTemplate } from './Templates.js';
7
+ import { g as getTemplateStore } from './TemplateStore.js';
9
8
  import { a as getRoleIndex } from './utils.js';
10
9
  import { S as SDKError } from './errors.js';
11
10
  import { d as defineCustomElement$a } from './verdocs-button2.js';
@@ -44,15 +43,15 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
44
43
  this.sdkError = createEvent(this, "sdkError", 7);
45
44
  this.templateUpdated = createEvent(this, "templateUpdated", 7);
46
45
  this.sequences = [];
46
+ this.store = null;
47
47
  this.endpoint = VerdocsEndpoint.getDefault();
48
48
  this.templateId = '';
49
49
  this.showingRoleDialog = null;
50
50
  this.showingSenderDialog = false;
51
51
  this.sender = null;
52
- this.forceRerender = 1;
53
52
  }
54
53
  async componentWillLoad() {
55
- var _a, _b, _c, _d, _e, _f;
54
+ var _a, _b, _c;
56
55
  try {
57
56
  this.endpoint.loadSession();
58
57
  if (!this.templateId) {
@@ -63,20 +62,13 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
63
62
  console.log('[ROLES] Unable to start builder session, must be authenticated');
64
63
  return;
65
64
  }
66
- try {
67
- console.log(`[ROLES] Loading template ${this.templateId}`, this.endpoint.session);
68
- await loadTemplate(this.endpoint, this.templateId, true);
69
- }
70
- catch (e) {
71
- console.log('[ROLES] Error loading template', e);
72
- (_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));
73
- }
65
+ this.store = await getTemplateStore(this.endpoint, this.templateId, true);
74
66
  this.sortTemplateRoles();
75
67
  this.renumberTemplateRoles();
76
68
  }
77
69
  catch (e) {
78
70
  console.log('[FIELDS] Error with preview session', e);
79
- (_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));
71
+ (_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));
80
72
  }
81
73
  }
82
74
  componentDidRender() {
@@ -109,7 +101,7 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
109
101
  interact('.dropzone').dropzone({
110
102
  overlap: 0.05,
111
103
  ondrop: function handleDrop(event) {
112
- var _a, _b;
104
+ var _a, _b, _c, _d, _e;
113
105
  event.target.classList.remove('active');
114
106
  // target will be the recipient e.g. <div class="recipient" data-rolename="Buyer" />
115
107
  // relatedTarget will be the drop zone, e.g. <div class="dropzone" data-order="2" data-sequence="1" />
@@ -123,7 +115,7 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
123
115
  const roleName = event.relatedTarget.dataset.rolename;
124
116
  const targetSequence = +event.target.dataset.sequence;
125
117
  const targetOrder = +event.target.dataset.order;
126
- const changingRole = (_a = state.template) === null || _a === void 0 ? void 0 : _a.roles.find(role => role.name === roleName);
118
+ const changingRole = (_c = (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.roles) === null || _c === void 0 ? void 0 : _c.find(role => role.name === roleName);
127
119
  if (changingRole) {
128
120
  // To handle the renumbering, we update the role being moved to the new values, which will be some half-interval e.g.
129
121
  // sequence 1.5 order 1. Then we
@@ -135,14 +127,14 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
135
127
  // We have to update ALL the roles to be sure each gets new proper sequence/order numbers assigned.
136
128
  // TODO: We could optimize this by tracking "dirty" states and only update the roles that have changed. But it's a LOT more
137
129
  // code to do right, and since most workflows will typically only have 2-4 recipients max, it may not be worth it.
138
- Promise.all((_b = state.template) === null || _b === void 0 ? void 0 : _b.roles.map(role => updateRole(this.endpoint, this.templateId, role.name, {
130
+ Promise.all((_e = (_d = this.store) === null || _d === void 0 ? void 0 : _d.state) === null || _e === void 0 ? void 0 : _e.roles.map(role => updateRole(this.endpoint, this.templateId, role.name, {
139
131
  sequence: role.sequence,
140
132
  order: role.order,
141
133
  })))
142
134
  .then(() => {
143
- var _a;
135
+ var _a, _b;
144
136
  console.log('[ROLES] Updated roles');
145
- (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'updated-role', endpoint: this.endpoint, template: state.template });
137
+ (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'updated-role', endpoint: this.endpoint, template: (_b = this.store) === null || _b === void 0 ? void 0 : _b.state });
146
138
  })
147
139
  .catch(e => console.log('[ROLES] Role updates failed', e));
148
140
  }
@@ -170,15 +162,15 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
170
162
  (_a = this.next) === null || _a === void 0 ? void 0 : _a.emit();
171
163
  }
172
164
  sortTemplateRoles() {
173
- var _a;
174
- (_a = state.template) === null || _a === void 0 ? void 0 : _a.roles.sort((a, b) => {
165
+ var _a, _b;
166
+ (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.roles.sort((a, b) => {
175
167
  return a.sequence === b.sequence ? a.order - b.order : a.sequence - b.sequence;
176
168
  });
177
169
  }
178
170
  extractSequenceNumbers() {
179
- var _a;
171
+ var _a, _b;
180
172
  this.sequences = [];
181
- (_a = state.template) === null || _a === void 0 ? void 0 : _a.roles.forEach(role => {
173
+ (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.roles.forEach(role => {
182
174
  if (!this.sequences.includes(role.sequence)) {
183
175
  this.sequences.push(role.sequence);
184
176
  }
@@ -192,8 +184,8 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
192
184
  // If the user dragged an entry from below a row to above it, we end up here like [1,0]. Make sure it's [0,1] for the next operation.
193
185
  this.sequences.sort((a, b) => a - b);
194
186
  this.sequences.forEach((originalSequence, newSequenceIndex) => {
195
- var _a;
196
- (_a = state.template) === null || _a === void 0 ? void 0 : _a.roles.filter(role => role.sequence === originalSequence).forEach((role, newOrderIndex) => {
187
+ var _a, _b;
188
+ (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.roles.filter(role => role.sequence === originalSequence).forEach((role, newOrderIndex) => {
197
189
  if (!renumbered.includes(role.name)) {
198
190
  role.sequence = newSequenceIndex + 1;
199
191
  role.order = newOrderIndex + 1;
@@ -206,19 +198,20 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
206
198
  }
207
199
  // Look for name conflicts, because they're UGC and can be anything, regardless of order.
208
200
  getNextRoleName() {
209
- var _a, _b;
201
+ var _a, _b, _c, _d;
210
202
  let name = '';
211
- let nextNumber = (_a = state.template) === null || _a === void 0 ? void 0 : _a.roles.length;
203
+ let nextNumber = (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.roles.length;
212
204
  do {
213
205
  nextNumber++;
214
206
  name = `Recipient ${nextNumber}`;
215
- } while (!name || ((_b = state.template) === null || _b === void 0 ? void 0 : _b.roles.some(role => role.name === name)));
207
+ } while (!name || ((_d = (_c = this.store) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d.roles.some(role => role.name === name)));
216
208
  return name;
217
209
  }
218
210
  handleAddRole(e, sequence) {
211
+ var _a;
219
212
  e.stopPropagation();
220
213
  // We don't need to look for a unique order number because we're already working with a sorted/renumbered set by now.
221
- const order = state.template.roles.filter(role => role.sequence === sequence).length + 1;
214
+ const order = ((_a = this.store) === null || _a === void 0 ? void 0 : _a.state.roles.filter(role => role.sequence === sequence).length) + 1;
222
215
  const name = this.getNextRoleName();
223
216
  console.log('Will create', name, sequence, order);
224
217
  createRole(this.endpoint, this.templateId, {
@@ -233,12 +226,11 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
233
226
  delegator: false,
234
227
  })
235
228
  .then(r => {
236
- var _a;
229
+ var _a, _b, _c;
237
230
  console.log('Created role', r);
238
- state.template.roles.push(r);
231
+ (_a = this.store) === null || _a === void 0 ? void 0 : _a.state.roles.push(r);
239
232
  this.renumberTemplateRoles();
240
- this.forceRerender++;
241
- (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'created-role', endpoint: this.endpoint, template: state.template });
233
+ (_b = this.templateUpdated) === null || _b === void 0 ? void 0 : _b.emit({ event: 'created-role', endpoint: this.endpoint, template: (_c = this.store) === null || _c === void 0 ? void 0 : _c.state });
242
234
  })
243
235
  .catch(e => {
244
236
  console.log('Error creating role', e);
@@ -248,7 +240,6 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
248
240
  e.stopPropagation();
249
241
  const order = 1;
250
242
  const name = this.getNextRoleName();
251
- console.log('Will create', name, sequence, order);
252
243
  createRole(this.endpoint, this.templateId, {
253
244
  template_id: this.templateId,
254
245
  name,
@@ -261,41 +252,41 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
261
252
  delegator: false,
262
253
  })
263
254
  .then(r => {
264
- var _a;
265
- console.log('Created role', r);
266
- state.template.roles.push(r);
255
+ var _a, _b, _c, _d;
256
+ (_c = (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.roles) === null || _c === void 0 ? void 0 : _c.push(r);
267
257
  this.renumberTemplateRoles();
268
- this.forceRerender++;
269
- (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'created-role', endpoint: this.endpoint, template: state.template });
258
+ (_d = this.templateUpdated) === null || _d === void 0 ? void 0 : _d.emit({ event: 'created-role', endpoint: this.endpoint, template: this.store.state });
270
259
  })
271
260
  .catch(e => {
272
261
  console.log('Error creating role', e);
273
262
  });
274
263
  }
275
264
  render() {
276
- var _a;
265
+ var _a, _b, _c, _d, _e, _f;
277
266
  if (!this.endpoint.session) {
278
267
  return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
279
268
  }
280
- if (state.loading || !state.template) {
281
- return (h(Host, null, h("verdocs-loader", null)));
269
+ if (!((_a = this.store) === null || _a === void 0 ? void 0 : _a.state.isLoaded)) {
270
+ return (h(Host, { class: "loading" }, h("verdocs-loader", null)));
282
271
  }
283
- const roleNames = (((_a = state.template) === null || _a === void 0 ? void 0 : _a.roles) || []).map(role => role.name);
284
- return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off", "data-r": this.forceRerender }, h("h5", null, "Roles and Workflow"), h("div", { class: "participants" }, h("div", { class: "left-line" }), h("div", { class: "row" }, h("div", { class: "icon", innerHTML: startIcon }), h("div", { class: "row-roles" }, h("div", { class: "sender" }, h("span", { class: "label" }, "Sender:"), " ", senderLabels[state.template.sender], ' ', h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingSenderDialog = true), "aria-role": "button" })))), h("div", { class: "row add-sequence", "data-sequence": 0 }, h("div", { class: "icon", innerHTML: plusIcon }), h("div", { class: "row-roles" }, h("div", { class: "dropzone", "data-sequence": 0, "data-order": 1 }, "Add Step"))), this.sequences.map(sequence => (h(Fragment, null, h("div", { class: "row" }, h("div", { class: "icon", innerHTML: stepIcon }), h("div", { class: "row-roles" }, h("div", { class: "dropzone", "data-order": 0.5, "data-sequence": sequence }), state.template.roles
285
- .filter(role => role.sequence === sequence)
286
- .map(role => {
287
- const unknown = !role.email;
288
- return unknown ? (h(Fragment, null, h("div", { class: "recipient", style: { backgroundColor: getRGBA(getRoleIndex(roleNames, role.name)) }, "data-rolename": role.name }, h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover }), role.name, " ", h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" })), h("div", { class: "dropzone", "data-order": role.order + 0.5, "data-sequence": sequence }))) : (h(Fragment, null, h("div", { class: "recipient", style: { borderColor: getRGBA(getRoleIndex(roleNames, role.name)) }, "data-rolename": role.name }, h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover }), role.full_name, " ", h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" })), h("div", { class: "dropzone", "data-order": role.order + 0.5, "data-sequence": sequence })));
289
- }), h("button", { class: "add-role", innerHTML: plusIcon, onClick: e => this.handleAddRole(e, sequence) }))), this.sequences.length > 0 && (h("div", { class: "row add-sequence", "data-sequence": sequence }, h("div", { class: "row-roles" }, h("div", { class: "icon", innerHTML: plusIcon }), h("div", { class: "dropzone", "data-sequence": sequence + 1, "data-order": 1 }, "Add Step"))))))), h("div", { class: "row", "data-sequence": this.sequences.length + 1 }, h("div", { class: "row-roles" }, h("div", { class: "icon", innerHTML: plusIcon }), h("button", { class: "add-step", innerHTML: plusIcon, onClick: e => this.handleAddStep(e, this.sequences.length + 1) }))), h("div", { class: "row" }, h("div", { class: "icon", innerHTML: doneIcon }), h("div", { class: "row-roles" }, h("div", { class: "complete" }, "Document Complete")))), roleNames.length < 1 && (h("div", { class: "empty" }, "You must add at least one Role before proceeding.", h("br", null), " Click the ", h("span", { innerHTML: plusIcon }), " Add button above to get started.")), h("div", { class: "buttons" }, h("div", { class: "flex-fill" }), h("verdocs-button", { variant: "outline", label: "Cancel", size: "small", onClick: () => this.handleCancel() }), h("verdocs-button", { label: "OK", size: "small", onClick: () => this.handleSubmit(), disabled: roleNames.length < 1 }))), this.showingRoleDialog && (h("verdocs-template-role-properties", { endpoint: this.endpoint, templateId: this.templateId, roleName: this.showingRoleDialog, onClose: () => {
272
+ const roleNames = (((_c = (_b = this.store) === null || _b === void 0 ? void 0 : _b.state) === null || _c === void 0 ? void 0 : _c.roles) || []).map(role => role.name);
273
+ return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off", "data-r": (_d = this.store.state) === null || _d === void 0 ? void 0 : _d.updateCount }, h("h5", null, "Roles and Workflow"), h("div", { class: "participants" }, h("div", { class: "left-line" }), h("div", { class: "row" }, h("div", { class: "icon", innerHTML: startIcon }), h("div", { class: "row-roles" }, h("div", { class: "sender" }, h("span", { class: "label" }, "Sender:"), " ", senderLabels[(_f = (_e = this.store) === null || _e === void 0 ? void 0 : _e.state) === null || _f === void 0 ? void 0 : _f.sender], ' ', h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingSenderDialog = true), "aria-role": "button" })))), h("div", { class: "row add-sequence", "data-sequence": 0 }, h("div", { class: "icon", innerHTML: plusIcon }), h("div", { class: "row-roles" }, h("div", { class: "dropzone", "data-sequence": 0, "data-order": 1 }, "Add Step"))), this.sequences.map(sequence => {
274
+ var _a, _b;
275
+ return (h(Fragment, null, h("div", { class: "row" }, h("div", { class: "icon", innerHTML: stepIcon }), h("div", { class: "row-roles" }, h("div", { class: "dropzone", "data-order": 0.5, "data-sequence": sequence }), (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 :
276
+ _b.roles.filter(role => role.sequence === sequence).map(role => {
277
+ const unknown = !role.email;
278
+ return unknown ? (h(Fragment, null, h("div", { class: "recipient", style: { backgroundColor: getRGBA(getRoleIndex(roleNames, role.name)) }, "data-rolename": role.name }, h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover }), role.name, " ", h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" })), h("div", { class: "dropzone", "data-order": role.order + 0.5, "data-sequence": sequence }))) : (h(Fragment, null, h("div", { class: "recipient", style: { borderColor: getRGBA(getRoleIndex(roleNames, role.name)) }, "data-rolename": role.name }, h("span", { class: "type-icon", innerHTML: role.type === 'signer' ? iconSigner : role.type === 'cc' ? iconCC : iconApprover }), role.full_name, " ", h("div", { class: "settings-button", innerHTML: settingsIcon, onClick: () => (this.showingRoleDialog = role.name), "aria-role": "button" })), h("div", { class: "dropzone", "data-order": role.order + 0.5, "data-sequence": sequence })));
279
+ }), h("button", { class: "add-role", innerHTML: plusIcon, onClick: e => this.handleAddRole(e, sequence) }))), this.sequences.length > 0 && (h("div", { class: "row add-sequence", "data-sequence": sequence }, h("div", { class: "row-roles" }, h("div", { class: "icon", innerHTML: plusIcon }), h("div", { class: "dropzone", "data-sequence": sequence + 1, "data-order": 1 }, "Add Step"))))));
280
+ }), h("div", { class: "row", "data-sequence": this.sequences.length + 1 }, h("div", { class: "row-roles" }, h("div", { class: "icon", innerHTML: plusIcon }), h("button", { class: "add-step", innerHTML: plusIcon, onClick: e => this.handleAddStep(e, this.sequences.length + 1) }))), h("div", { class: "row" }, h("div", { class: "icon", innerHTML: doneIcon }), h("div", { class: "row-roles" }, h("div", { class: "complete" }, "Document Complete")))), roleNames.length < 1 && (h("div", { class: "empty" }, "You must add at least one Role before proceeding.", h("br", null), " Click the ", h("span", { innerHTML: plusIcon }), " Add button above to get started.")), h("div", { class: "buttons" }, h("div", { class: "flex-fill" }), h("verdocs-button", { variant: "outline", label: "Cancel", size: "small", onClick: () => this.handleCancel() }), h("verdocs-button", { label: "OK", size: "small", onClick: () => this.handleSubmit(), disabled: roleNames.length < 1 }))), this.showingRoleDialog && (h("verdocs-template-role-properties", { endpoint: this.endpoint, templateId: this.templateId, roleName: this.showingRoleDialog, onClose: () => {
290
281
  this.showingRoleDialog = null;
291
- this.forceRerender++;
292
- }, onDelete: e => {
293
- var _a;
294
- console.log('deleted', e.detail);
282
+ // this.forceRerender++;
283
+ }, onDelete: async () => {
284
+ var _a, _b;
285
+ await getTemplateStore(this.endpoint, this.templateId, true);
295
286
  this.renumberTemplateRoles();
296
287
  this.showingRoleDialog = null;
297
- this.forceRerender++;
298
- (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'deleted-role', endpoint: this.endpoint, template: state.template });
288
+ // this.forceRerender++;
289
+ (_a = this.templateUpdated) === null || _a === void 0 ? void 0 : _a.emit({ event: 'deleted-role', endpoint: this.endpoint, template: (_b = this.store) === null || _b === void 0 ? void 0 : _b.state });
299
290
  } })), this.showingSenderDialog && h("verdocs-template-sender", { endpoint: this.endpoint, templateId: this.templateId, onClose: () => (this.showingSenderDialog = false) })));
300
291
  }
301
292
  get el() { return this; }
@@ -305,8 +296,7 @@ const VerdocsTemplateRoles = /*@__PURE__*/ proxyCustomElement(class extends HTML
305
296
  "templateId": [1, "template-id"],
306
297
  "showingRoleDialog": [32],
307
298
  "showingSenderDialog": [32],
308
- "sender": [32],
309
- "forceRerender": [32]
299
+ "sender": [32]
310
300
  }]);
311
301
  function defineCustomElement() {
312
302
  if (typeof customElements === "undefined") {
@@ -1,9 +1,8 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import './Types.js';
3
- import { u as updateTemplate } from './Templates2.js';
3
+ import { u as updateTemplate } from './Templates.js';
4
4
  import { V as VerdocsEndpoint, T as TemplateSenderTypes } from './VerdocsEndpoint.js';
5
- import { s as state } from './templateStore.js';
6
- import { l as loadTemplate } from './Templates.js';
5
+ import { g as getTemplateStore } from './TemplateStore.js';
7
6
  import { S as SDKError } from './errors.js';
8
7
  import { d as defineCustomElement$3 } from './verdocs-button2.js';
9
8
  import { d as defineCustomElement$2 } from './verdocs-help-icon2.js';
@@ -17,37 +16,30 @@ const VerdocsTemplateSender = /*@__PURE__*/ proxyCustomElement(class extends HTM
17
16
  this.__registerHost();
18
17
  this.close = createEvent(this, "close", 7);
19
18
  this.sdkError = createEvent(this, "sdkError", 7);
19
+ this.store = null;
20
20
  this.endpoint = VerdocsEndpoint.getDefault();
21
21
  this.templateId = '';
22
22
  this.sender = TemplateSenderTypes.EVERYONE;
23
23
  this.saving = false;
24
24
  }
25
25
  async componentWillLoad() {
26
- var _a, _b, _c, _d, _e, _f;
26
+ var _a, _b, _c, _d, _e;
27
27
  try {
28
28
  this.endpoint.loadSession();
29
29
  if (!this.templateId) {
30
- console.log(`[TEMPLATE SENDER] Missing required template ID ${this.templateId}`);
30
+ console.log(`[SENDER] Missing required template ID ${this.templateId}`);
31
31
  return;
32
32
  }
33
33
  if (!this.endpoint.session) {
34
- console.log('[TEMPLATE SENDER] Unable to start builder session, must be authenticated');
34
+ console.log('[SENDER] Unable to start builder session, must be authenticated');
35
35
  return;
36
36
  }
37
- try {
38
- console.log(`[TEMPLATE SENDER] Loading template ${this.templateId}`, this.endpoint.session);
39
- await loadTemplate(this.endpoint, this.templateId);
40
- }
41
- catch (e) {
42
- console.log('[TEMPLATE SENDER] Error loading template', e);
43
- (_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));
44
- }
45
- this.sender = state.template.sender;
46
- console.log('s', this.sender);
37
+ this.store = await getTemplateStore(this.endpoint, this.templateId, false);
38
+ this.sender = (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.sender;
47
39
  }
48
40
  catch (e) {
49
- console.log('[TEMPLATE SENDER] Error with preview session', e);
50
- (_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));
41
+ console.log('[SENDER] Error with preview session', e);
42
+ (_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));
51
43
  }
52
44
  }
53
45
  handleClose() {
@@ -64,8 +56,11 @@ const VerdocsTemplateSender = /*@__PURE__*/ proxyCustomElement(class extends HTM
64
56
  this.saving = true;
65
57
  updateTemplate(this.endpoint, this.templateId, { sender: value })
66
58
  .then(r => {
59
+ var _a;
67
60
  console.log('Update result', r);
68
- state.template.sender = value;
61
+ if ((_a = this.store) === null || _a === void 0 ? void 0 : _a.state) {
62
+ this.store.state.sender = value;
63
+ }
69
64
  this.saving = false;
70
65
  this.sender = value;
71
66
  })
@@ -1,9 +1,8 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import './Types.js';
3
- import { u as updateTemplate } from './Templates2.js';
3
+ import { u as updateTemplate } from './Templates.js';
4
4
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
5
- import { s as state } from './templateStore.js';
6
- import { l as loadTemplate } from './Templates.js';
5
+ import { g as getTemplateStore } from './TemplateStore.js';
7
6
  import { S as SDKError } from './errors.js';
8
7
  import { d as defineCustomElement$4 } from './verdocs-button2.js';
9
8
  import { d as defineCustomElement$3 } from './verdocs-checkbox2.js';
@@ -17,52 +16,61 @@ const VerdocsTemplateVisibility$1 = /*@__PURE__*/ proxyCustomElement(class exten
17
16
  this.__registerHost();
18
17
  this.close = createEvent(this, "close", 7);
19
18
  this.sdkError = createEvent(this, "sdkError", 7);
19
+ this.store = null;
20
20
  this.endpoint = VerdocsEndpoint.getDefault();
21
21
  this.templateId = '';
22
22
  this.dirty = false;
23
- this.loading = true;
24
23
  this.personal = false;
25
24
  this.public = false;
26
25
  }
27
26
  async componentWillLoad() {
28
- var _a, _b, _c;
27
+ var _a, _b, _c, _d, _e, _f, _g;
29
28
  try {
30
29
  this.endpoint.loadSession();
31
- await loadTemplate(this.endpoint, this.templateId);
32
- this.loading = false;
33
- this.personal = state.template.is_personal;
34
- this.public = state.template.is_public;
30
+ if (!this.templateId) {
31
+ console.log(`[VISIBILITY] Missing required template ID ${this.templateId}`);
32
+ return;
33
+ }
34
+ if (!this.endpoint.session) {
35
+ console.log('[VISIBILITY] Unable to start builder session, must be authenticated');
36
+ return;
37
+ }
38
+ this.store = await getTemplateStore(this.endpoint, this.templateId, false);
39
+ this.personal = ((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.is_personal) || true;
40
+ this.public = ((_d = (_c = this.store) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d.is_public) || false;
35
41
  this.dirty = false;
36
42
  }
37
43
  catch (e) {
38
44
  console.log('[TEMPLATE VISIBILITY] Error loading template', e);
39
- this.loading = false;
40
- (_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));
45
+ (_e = this.sdkError) === null || _e === void 0 ? void 0 : _e.emit(new SDKError(e.message, (_f = e.response) === null || _f === void 0 ? void 0 : _f.status, (_g = e.response) === null || _g === void 0 ? void 0 : _g.data));
41
46
  }
42
47
  }
43
48
  handleCancel(e) {
44
- var _a;
49
+ var _a, _b, _c, _d, _e;
45
50
  e.stopPropagation();
46
- this.personal = state.template.is_personal;
47
- this.public = state.template.is_public;
51
+ this.personal = (_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.is_personal;
52
+ this.public = (_d = (_c = this.store) === null || _c === void 0 ? void 0 : _c.state) === null || _d === void 0 ? void 0 : _d.is_public;
48
53
  this.dirty = false;
49
- (_a = this.close) === null || _a === void 0 ? void 0 : _a.emit();
54
+ (_e = this.close) === null || _e === void 0 ? void 0 : _e.emit();
50
55
  }
51
56
  async handleSave(e) {
52
- var _a;
57
+ var _a, _b;
53
58
  e.stopPropagation();
54
59
  await updateTemplate(this.endpoint, this.templateId, { is_personal: this.personal, is_public: this.public });
55
- state.template.is_personal = this.personal;
56
- state.template.is_public = this.public;
60
+ if ((_a = this.store) === null || _a === void 0 ? void 0 : _a.state) {
61
+ this.store.state.is_personal = this.personal;
62
+ this.store.state.is_public = this.public;
63
+ }
57
64
  this.dirty = false;
58
- (_a = this.close) === null || _a === void 0 ? void 0 : _a.emit();
65
+ (_b = this.close) === null || _b === void 0 ? void 0 : _b.emit();
59
66
  }
60
67
  render() {
68
+ var _a, _b;
61
69
  if (!this.endpoint.session) {
62
70
  return (h(Host, null, h("verdocs-component-error", { message: "You must be authenticated to use this module." })));
63
71
  }
64
72
  // This is meant to be a companion for larger visual experiences so we just go blank on errors for now.
65
- if (!this.endpoint.session || !state.template) {
73
+ if (!this.endpoint.session || !((_b = (_a = this.store) === null || _a === void 0 ? void 0 : _a.state) === null || _b === void 0 ? void 0 : _b.isLoaded)) {
66
74
  return h(Host, { class: "empty" });
67
75
  }
68
76
  return (h(Host, null, h("form", { onSubmit: e => e.preventDefault(), onClick: e => e.stopPropagation(), autocomplete: "off" }, h("h5", null, "Visibility"), h("div", { class: "input-row" }, h("label", { htmlFor: "verdocs-is-shared" }, "Shared"), h("verdocs-checkbox", { id: "verdocs-is-shared", name: "is-shared", checked: !this.personal, value: "on", onInput: (e) => {
@@ -78,7 +86,6 @@ const VerdocsTemplateVisibility$1 = /*@__PURE__*/ proxyCustomElement(class exten
78
86
  "endpoint": [16],
79
87
  "templateId": [1, "template-id"],
80
88
  "dirty": [32],
81
- "loading": [32],
82
89
  "personal": [32],
83
90
  "public": [32]
84
91
  }]);
@@ -2,7 +2,6 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host, Fragment } from
2
2
  import { t as throttledGetEnvelope, d as cancelEnvelope } from './Envelopes.js';
3
3
  import { E as EnvelopeStates } from './Types.js';
4
4
  import { V as VerdocsEndpoint } from './VerdocsEndpoint.js';
5
- import { i as integerSequence } from './Primitives.js';
6
5
  import { f as saveEnvelopesAsZip, h as saveCertificate, s as saveAttachment } from './utils.js';
7
6
  import { S as SDKError } from './errors.js';
8
7
  import { d as defineCustomElement$4 } from './verdocs-button2.js';
@@ -29,6 +28,25 @@ var userCanCancelEnvelope = function (session, envelope) {
29
28
  envelope.status !== EnvelopeStates.CANCELED;
30
29
  };
31
30
 
31
+ /**
32
+ * Create an array containing a sequence of integers, e.g. [START, START+1, START+2, ...] This is frequently useful
33
+ * in rendering operations when there is no source array to .map() across.
34
+ */
35
+ var integerSequence = function (start, count) {
36
+ return Array(count)
37
+ .fill(1)
38
+ .map(function (_, index) { return index + start; });
39
+ };
40
+ /**
41
+ * Generate suggested initials for a full name, e.g. "John Doe" will yield "JD".
42
+ */
43
+ var fullNameToInitials = function (name) {
44
+ return name
45
+ .split(' ')
46
+ .map(function (word) { return word[0]; })
47
+ .join('');
48
+ };
49
+
32
50
  const verdocsViewCss = "verdocs-view{display:-ms-flexbox;display:flex;overflow:hidden;min-height:600px;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-direction:column;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:\"Inter\", -apple-system, \"Segoe UI\", \"Roboto\", \"Helvetica Neue\", sans-serif}verdocs-view div,verdocs-view canvas{-webkit-box-sizing:border-box;box-sizing:border-box}verdocs-view .document{-ms-flex:1;flex:1;width:100%;height:100%;display:-ms-flexbox;display:flex;padding:15px;row-gap:15px;min-height:200px;max-width:1200px;position:relative;overflow-y:scroll;-ms-flex-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex-direction:column;flex-direction:column}verdocs-view .document .inner{width:100%;max-width:1028px}#verdocs-view-header{width:100%;color:#fff;display:-ms-flexbox;display:flex;z-index:1000;-ms-flex:0 0 56px;flex:0 0 56px;padding:0 20px;font-size:12px;-webkit-column-gap:15px;-moz-column-gap:15px;column-gap:15px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row;-webkit-transition:all 0.25s;transition:all 0.25s;background-color:#33354c;-webkit-box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12);box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12)}#verdocs-view-header .inner{width:100%;display:-ms-flexbox;display:flex;margin:0 auto;padding:0 20px;max-width:1200px;-ms-flex-align:center;align-items:center;-ms-flex-direction:row;flex-direction:row}#verdocs-view-header .logo{width:80px;display:none;margin:-6px 0 0 0}#verdocs-view-header .title{font-size:18px;font-weight:500;white-space:nowrap;text-overflow:ellipsis}";
33
51
 
34
52
  const VerdocsView = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
@@ -211,4 +229,4 @@ function defineCustomElement() {
211
229
  }
212
230
  defineCustomElement();
213
231
 
214
- export { VerdocsView as V, defineCustomElement as d };
232
+ export { VerdocsView as V, defineCustomElement as d, fullNameToInitials as f, integerSequence as i };